<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/ruby.git/lib/irb/cmd, branch ruby_3_2</title>
<subtitle>github.com: ruby/ruby.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/'/>
<entry>
<title>[ruby/irb] Respect DLEXT to force-load debug.so</title>
<updated>2022-12-20T17:07:54+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2022-12-20T17:05:58+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=cf0b413ef8b794ef6e7436f22fd5a998050dada9'/>
<id>cf0b413ef8b794ef6e7436f22fd5a998050dada9</id>
<content type='text'>
(https://github.com/ruby/irb/pull/481)

Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;

Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/481)

Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;

Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] `show_doc` command should take non-string argument too</title>
<updated>2022-12-12T17:35:48+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan.lo@shopify.com</email>
</author>
<published>2022-12-12T17:35:43+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=223d4448c827b9daeb6a61312777e67405e66379'/>
<id>223d4448c827b9daeb6a61312777e67405e66379</id>
<content type='text'>
(https://github.com/ruby/irb/pull/478)

Given that `show_doc` already supports syntax like `String#gsub`, it
should be able to take it in non-string form too, like `edit` and
`show_source` do. This ensures users can have a consistent syntax on
argument between different commands.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/478)

Given that `show_doc` already supports syntax like `String#gsub`, it
should be able to take it in non-string form too, like `edit` and
`show_source` do. This ensures users can have a consistent syntax on
argument between different commands.</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Fix step command (https://github.com/ruby/irb/pull/477)</title>
<updated>2022-12-09T23:39:17+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan.lo@shopify.com</email>
</author>
<published>2022-12-09T23:39:12+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=381e128c135e491689714cb69353d11e782f5994'/>
<id>381e128c135e491689714cb69353d11e782f5994</id>
<content type='text'>
The current `next` pre-command workaround on IRB source stepping
moves the location by 1 extra line. A better way is to make `debug`
skip IRB frames completely, which is what this commit does.

It also fixes the step command's test. The `|` in regexp was not escaped
so it was always incorrectly matched.</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The current `next` pre-command workaround on IRB source stepping
moves the location by 1 extra line. A better way is to make `debug`
skip IRB frames completely, which is what this commit does.

It also fixes the step command's test. The `|` in regexp was not escaped
so it was always incorrectly matched.</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Gracefully handle missing command argument</title>
<updated>2022-12-08T21:05:37+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan.lo@shopify.com</email>
</author>
<published>2022-12-08T21:05:33+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=12b7c129bf8ed3a113e2cc73f817868507504268'/>
<id>12b7c129bf8ed3a113e2cc73f817868507504268</id>
<content type='text'>
(https://github.com/ruby/irb/pull/473)

* Handle file loading commands' argument error gracefully

Currently, if users don't provide an argument to `source`,
`irb_load`, and `irb_require`, IRB raises `ArgumentError` with full
stacktrace. This is confusing because it looks similar to when IRB has
internal issues. The message also isn't helpful on helping users avoid
the error.

So in this commit, I add a new `CommandArgumentError` for commands to
raise explicitly when users' input doesn't satisfy a command's argument
requirement.

* Gracefully handle `fg` command's argument requirement</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/473)

* Handle file loading commands' argument error gracefully

Currently, if users don't provide an argument to `source`,
`irb_load`, and `irb_require`, IRB raises `ArgumentError` with full
stacktrace. This is confusing because it looks similar to when IRB has
internal issues. The message also isn't helpful on helping users avoid
the error.

So in this commit, I add a new `CommandArgumentError` for commands to
raise explicitly when users' input doesn't satisfy a command's argument
requirement.

* Gracefully handle `fg` command's argument requirement</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Add "show_cmds" command to list all commands'</title>
<updated>2022-12-08T19:10:23+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan.lo@shopify.com</email>
</author>
<published>2022-12-08T19:10:19+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=3956bb859c2442d34ea171db8f92f3e5895c43d9'/>
<id>3956bb859c2442d34ea171db8f92f3e5895c43d9</id>
<content type='text'>
descriptions
(https://github.com/ruby/irb/pull/463)

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

https://github.com/ruby/irb/commit/7e857655ac
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Lazily load the multi-irb extension</title>
<updated>2022-12-07T23:30:00+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan.lo@shopify.com</email>
</author>
<published>2022-12-07T23:29:55+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=a2d3f5606a241999feda113f7331cf1a637bcaf0'/>
<id>a2d3f5606a241999feda113f7331cf1a637bcaf0</id>
<content type='text'>
(https://github.com/ruby/irb/pull/472)

* Lazily load the multi-irb extension

We now have plan to implement a command that prints all commands'
information, which will need to load all command files without actually
running them.

But because the `multi-irb` extension patches IRB's top-level methods,
loading it would cause unintentional side-effects.

So this commit moves related requires into command execution to avoid the problem.

* Make extend_irb_context private

Co-authored-by: Takashi Kokubun &lt;takashikkbn@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/472)

* Lazily load the multi-irb extension

We now have plan to implement a command that prints all commands'
information, which will need to load all command files without actually
running them.

But because the `multi-irb` extension patches IRB's top-level methods,
loading it would cause unintentional side-effects.

So this commit moves related requires into command execution to avoid the problem.

* Make extend_irb_context private

Co-authored-by: Takashi Kokubun &lt;takashikkbn@gmail.com&gt;</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Make sure ls doesn't return an array</title>
<updated>2022-11-30T04:52:33+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2022-11-30T04:52:29+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=9a84971315f39e3fabd382fd35728eb254333fe2'/>
<id>9a84971315f39e3fabd382fd35728eb254333fe2</id>
<content type='text'>
(https://github.com/ruby/irb/pull/461)

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

https://github.com/ruby/irb/commit/367797bb05
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Fix the debug.gem force-loader for Ruby 3.2</title>
<updated>2022-11-28T18:42:59+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2022-11-28T18:42:54+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=c5279db75f3e00b5c7df4d16bc38f6446f394260'/>
<id>c5279db75f3e00b5c7df4d16bc38f6446f394260</id>
<content type='text'>
(https://github.com/ruby/irb/pull/458)

* Fix the debug.gem force-loader for Ruby 3.2

* Support 1.7.0dev format as well</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(https://github.com/ruby/irb/pull/458)

* Fix the debug.gem force-loader for Ruby 3.2

* Support 1.7.0dev format as well</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Add commands to start and use the debugger</title>
<updated>2022-11-21T08:46:27+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2022-11-21T08:46:22+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=c9fbc779a680f3e1fd884ec80722cd32a990e0e9'/>
<id>c9fbc779a680f3e1fd884ec80722cd32a990e0e9</id>
<content type='text'>
(https://github.com/ruby/irb/pull/449)

* Seamlessly integrate a few debug commands

* Improve the break command support

* Utilize skip_src option if available

* Add step and delete commands

* Write end-to-end tests for each debugger command

* Add documentation

* Add backtrace, info, catch commands

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

* Seamlessly integrate a few debug commands

* Improve the break command support

* Utilize skip_src option if available

* Add step and delete commands

* Write end-to-end tests for each debugger command

* Add documentation

* Add backtrace, info, catch commands

https://github.com/ruby/irb/commit/976100c1c2
</pre>
</div>
</content>
</entry>
<entry>
<title>[ruby/irb] Add edit command (https://github.com/ruby/irb/pull/453)</title>
<updated>2022-11-20T04:47:54+00:00</updated>
<author>
<name>Stan Lo</name>
<email>stan.lo@shopify.com</email>
</author>
<published>2022-11-20T04:47:51+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/ruby.git/commit/?id=180ed611b238db48db9feb1449c4e3b563d2dce0'/>
<id>180ed611b238db48db9feb1449c4e3b563d2dce0</id>
<content type='text'>
* Add edit command

* Make find_source a public singleton method

* Add document for the edit command

* Make find_end private

* Remove duplicated private

https://github.com/ruby/irb/commit/4321674aa7
Co-authored-by: Takashi Kokubun &lt;takashikkbn@gmail.com&gt;</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* Add edit command

* Make find_source a public singleton method

* Add document for the edit command

* Make find_end private

* Remove duplicated private

https://github.com/ruby/irb/commit/4321674aa7
Co-authored-by: Takashi Kokubun &lt;takashikkbn@gmail.com&gt;</pre>
</div>
</content>
</entry>
</feed>
