<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/test/irb/test_ruby_lex.rb, branch v3_3_11</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>[Bug #20511] Update reline-0.5.7 (#10848)</title>
<updated>2024-05-28T22:54:39+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2024-05-28T22:54:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=077558ee2b8dd3ed414b78384f21118f833eb259'/>
<id>077558ee2b8dd3ed414b78384f21118f833eb259</id>
<content type='text'>
* Update reline-0.5.7

* Update irb-1.13.1</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Update reline-0.5.7

* Update irb-1.13.1</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Clear all context usages in RubyLex</title>
<updated>2023-10-04T12:13:33+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan001212@gmail.com</email>
</author>
<published>2023-10-04T12:13:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=b43cc51dcad9859ea6c54cb4f03105c8511582de'/>
<id>b43cc51dcad9859ea6c54cb4f03105c8511582de</id>
<content type='text'>
(https://github.com/ruby/irb/pull/684)

After this change, `RubyLex` will not interact with `Context` directly
in any way. This decoupling has a few benefits:

- It makes `RubyLex` easier to test as it no longer has a dependency on
  `Context`. We can see this from the removal of `build_context` from
  `test_ruby_lex.rb`.
- It will make `RubyLex` easier to understand as it will not be affected
  by state changes in `Context` objects.
- It allows `RubyLex` to be used in places where `Context` is not available.

https://github.com/ruby/irb/commit/d5b262a076
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/684)

After this change, `RubyLex` will not interact with `Context` directly
in any way. This decoupling has a few benefits:

- It makes `RubyLex` easier to test as it no longer has a dependency on
  `Context`. We can see this from the removal of `build_context` from
  `test_ruby_lex.rb`.
- It will make `RubyLex` easier to understand as it will not be affected
  by state changes in `Context` objects.
- It allows `RubyLex` to be used in places where `Context` is not available.

https://github.com/ruby/irb/commit/d5b262a076
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Fix Reline's test failure running with `make test-all</title>
<updated>2023-09-30T17:56:06+00:00</updated>
<author>
<name>tomoya ishida</name>
<email>tomoyapenguin@gmail.com</email>
</author>
<published>2023-09-30T17:56:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=c9e28ea2f9d442f5efd2a2671ff81cd4308dcde2'/>
<id>c9e28ea2f9d442f5efd2a2671ff81cd4308dcde2</id>
<content type='text'>
TESTS='reline irb'`
(https://github.com/ruby/irb/pull/722)

* Specify TestInputMethod in test to avoid RelineInputMethod to be used

* Reset Reline in teardown to avoid test failure of `make test-all TESTS="irb reline"`

https://github.com/ruby/irb/commit/5d67967eb1
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
TESTS='reline irb'`
(https://github.com/ruby/irb/pull/722)

* Specify TestInputMethod in test to avoid RelineInputMethod to be used

* Reset Reline in teardown to avoid test failure of `make test-all TESTS="irb reline"`

https://github.com/ruby/irb/commit/5d67967eb1
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Fix deprecation test when ran multiple times</title>
<updated>2023-08-26T13:56:51+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2023-08-26T13:56:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a97dedf761c6931cbb2b9267faad2395481a3f57'/>
<id>a97dedf761c6931cbb2b9267faad2395481a3f57</id>
<content type='text'>
(https://github.com/ruby/irb/pull/695)

https://github.com/ruby/irb/commit/ae0e5bb80f
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/695)

https://github.com/ruby/irb/commit/ae0e5bb80f
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Deprecate RubyLex and warn about referencing to it</title>
<updated>2023-08-24T15:35:40+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan001212@gmail.com</email>
</author>
<published>2023-08-24T15:35:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=e1d7066a5f612c3f6977443d2b574dab67041ad6'/>
<id>e1d7066a5f612c3f6977443d2b574dab67041ad6</id>
<content type='text'>
(https://github.com/ruby/irb/pull/692)

`RubyLex` has always been a private component of IRB, so we should
explicitly discourage usages of it.
Also, it should be placed under the `IRB` module like other components.

https://github.com/ruby/irb/commit/069b5625f7
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/692)

`RubyLex` has always been a private component of IRB, so we should
explicitly discourage usages of it.
Also, it should be placed under the `IRB` module like other components.

https://github.com/ruby/irb/commit/069b5625f7
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Move IO configuration to IRB::Irb</title>
<updated>2023-08-13T15:23:04+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan001212@gmail.com</email>
</author>
<published>2023-08-13T15:23:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=9099d62ac77cdca548bc4110e2cb03057ef0ac8f'/>
<id>9099d62ac77cdca548bc4110e2cb03057ef0ac8f</id>
<content type='text'>
(https://github.com/ruby/irb/pull/681)

It shouldn't be `RubyLex`'s responsibility to handle IO. So this moves
the configuration to `IRB::Irb`.

https://github.com/ruby/irb/commit/daff750076
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/681)

It shouldn't be `RubyLex`'s responsibility to handle IO. So this moves
the configuration to `IRB::Irb`.

https://github.com/ruby/irb/commit/daff750076
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Remove needless removal of trailing whitespace in</title>
<updated>2023-08-11T18:51:25+00:00</updated>
<author>
<name>tomoya ishida</name>
<email>tomoyapenguin@gmail.com</email>
</author>
<published>2023-08-11T18:51:21+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d42891079f6eac5e086c246b0a937ab44fa11823'/>
<id>d42891079f6eac5e086c246b0a937ab44fa11823</id>
<content type='text'>
check_code_state
(https://github.com/ruby/irb/pull/678)

https://github.com/ruby/irb/commit/4a6af7d1ed
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
check_code_state
(https://github.com/ruby/irb/pull/678)

https://github.com/ruby/irb/commit/4a6af7d1ed
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Move assignment check to RubyLex</title>
<updated>2023-08-11T18:44:52+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan001212@gmail.com</email>
</author>
<published>2023-08-11T18:44:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=0781e55206d94079c15ab315fc082f49bf8bf780'/>
<id>0781e55206d94079c15ab315fc082f49bf8bf780</id>
<content type='text'>
(https://github.com/ruby/irb/pull/670)

Since assignment check relies on tokenization with `Ripper`, it feels like
the responsibility of `RubyLex`. `Irb#eval_input` should simply get the result
when calling `each_top_level_statement` on `RubyLex`.

https://github.com/ruby/irb/commit/89d1adb3fd
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/670)

Since assignment check relies on tokenization with `Ripper`, it feels like
the responsibility of `RubyLex`. `Irb#eval_input` should simply get the result
when calling `each_top_level_statement` on `RubyLex`.

https://github.com/ruby/irb/commit/89d1adb3fd
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Reduce boilerplate code in RubyLexTest</title>
<updated>2023-07-18T15:18:58+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan001212@gmail.com</email>
</author>
<published>2023-07-18T15:18:50+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=d6ad334d6ed55778961b05b1a4fa18912230bf12'/>
<id>d6ad334d6ed55778961b05b1a4fa18912230bf12</id>
<content type='text'>
(https://github.com/ruby/irb/pull/644)

* Avoid initialising Row at every test input

* Extract common assertion patterns into methods

* Remove unnecessary PromptRow strcut and boilerplate code

https://github.com/ruby/irb/commit/1ba586c0c6
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/644)

* Avoid initialising Row at every test input

* Extract common assertion patterns into methods

* Remove unnecessary PromptRow strcut and boilerplate code

https://github.com/ruby/irb/commit/1ba586c0c6
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Indent multiline percent literals</title>
<updated>2023-07-15T18:12:05+00:00</updated>
<author>
<name>tomoya ishida</name>
<email>tomoyapenguin@gmail.com</email>
</author>
<published>2023-07-15T18:12:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=be98bfc4ee3a635315daaac4dae5093ccb107d11'/>
<id>be98bfc4ee3a635315daaac4dae5093ccb107d11</id>
<content type='text'>
(https://github.com/ruby/irb/pull/643)

https://github.com/ruby/irb/commit/18bb4022a9
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/643)

https://github.com/ruby/irb/commit/18bb4022a9
</pre>
</div>
</content>
</entry>
</feed>
