<feed xmlns='http://www.w3.org/2005/Atom'>
<title>ruby.git/test/ruby/test_rubyoptions.rb, branch v3_4_9</title>
<subtitle>The Ruby Programming Language</subtitle>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/'/>
<entry>
<title>merge revision(s) 190b017fc6c21ff7b61c2b5ece0294785e4a4ca2: [Backport #21703]</title>
<updated>2025-12-08T22:24:18+00:00</updated>
<author>
<name>Takashi Kokubun</name>
<email>takashikkbn@gmail.com</email>
</author>
<published>2025-12-08T22:24:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a2ba1478e8c6a810c0fa08695a48f95ef5c29c45'/>
<id>a2ba1478e8c6a810c0fa08695a48f95ef5c29c45</id>
<content type='text'>
	[PATCH] Don't use non blocking pipes for RUBY_CRASH_REPORT

	[Bug #21703]

	RUBY_CRASH_REPORT does not work in some cases when shelling out on Linux.
	For example, given the following shell script dump.sh:

	    #!/usr/bin/env bash
	    cat &gt; /tmp/crash

	And we see it fails like this:

	    $ RUBY_CRASH_REPORT="|dump.sh" ruby -rfiddle -e "Fiddle::Pointer.new(1, 10)[0]"
	    cat: -: Resource temporarily unavailable
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
	[PATCH] Don't use non blocking pipes for RUBY_CRASH_REPORT

	[Bug #21703]

	RUBY_CRASH_REPORT does not work in some cases when shelling out on Linux.
	For example, given the following shell script dump.sh:

	    #!/usr/bin/env bash
	    cat &gt; /tmp/crash

	And we see it fails like this:

	    $ RUBY_CRASH_REPORT="|dump.sh" ruby -rfiddle -e "Fiddle::Pointer.new(1, 10)[0]"
	    cat: -: Resource temporarily unavailable
</pre>
</div>
</content>
</entry>
<entry>
<title>[Backport #21638] Mark ractor-local `$VERBOSE` and `$DEBUG`</title>
<updated>2025-11-06T18:23:58+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2025-10-14T03:38:52+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=f2fd5b3bc23bce7527192057d4b4b11fa179170f'/>
<id>f2fd5b3bc23bce7527192057d4b4b11fa179170f</id>
<content type='text'>
https://github.com/sampersand/blog/blob/master/the%20-s%20flag.md#the-segfault
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
https://github.com/sampersand/blog/blob/master/the%20-s%20flag.md#the-segfault
</pre>
</div>
</content>
</entry>
<entry>
<title>[Feature #20884] Reserve "Ruby" toplevel name</title>
<updated>2024-12-12T08:45:06+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2024-12-12T06:59:25+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=4d86f3bf6d1fe7bf7d4b25fc42f7aba9f401bbb4'/>
<id>4d86f3bf6d1fe7bf7d4b25fc42f7aba9f401bbb4</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Standardize on the name "modular GC"</title>
<updated>2024-12-05T15:33:26+00:00</updated>
<author>
<name>Peter Zhu</name>
<email>peter@peterzhu.ca</email>
</author>
<published>2024-12-04T19:29:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ce1ad1b816f912d0750669c57211d72ea723e28d'/>
<id>ce1ad1b816f912d0750669c57211d72ea723e28d</id>
<content type='text'>
We have name fragmentation for this feature, including "shared GC",
"modular GC", and "external GC". This commit standardizes the feature
name to "modular GC" and the implementation to "GC library".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
We have name fragmentation for this feature, including "shared GC",
"modular GC", and "external GC". This commit standardizes the feature
name to "modular GC" and the implementation to "GC library".
</pre>
</div>
</content>
</entry>
<entry>
<title>Include the currently active GC in RUBY_DESCRIPTION</title>
<updated>2024-11-14T10:46:36+00:00</updated>
<author>
<name>Matt Valentine-House</name>
<email>matt@eightbitraptor.com</email>
</author>
<published>2024-10-08T20:30:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ee290c94a3dd0327f3407edb02272d37470edc95'/>
<id>ee290c94a3dd0327f3407edb02272d37470edc95</id>
<content type='text'>
This will add +MOD_GC to the version string and Ruby description when
Ruby is compiled with shared gc support.

When shared GC support is compiled in and a GC module has been loaded
using RUBY_GC_LIBRARY, the version string will include the name of
the currently active GC as reported by the rb_gc_active_gc_name function
in the form

+MOD_GC[gc_name]

[Feature #20794]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This will add +MOD_GC to the version string and Ruby description when
Ruby is compiled with shared gc support.

When shared GC support is compiled in and a GC module has been loaded
using RUBY_GC_LIBRARY, the version string will include the name of
the currently active GC as reported by the rb_gc_active_gc_name function
in the form

+MOD_GC[gc_name]

[Feature #20794]
</pre>
</div>
</content>
</entry>
<entry>
<title>macOS 15 is the stable version today</title>
<updated>2024-11-06T06:45:32+00:00</updated>
<author>
<name>Hiroshi SHIBATA</name>
<email>hsbt@ruby-lang.org</email>
</author>
<published>2024-11-06T06:45:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=a2dd471d9e00868c31fcb94901c11a3cc67a6920'/>
<id>a2dd471d9e00868c31fcb94901c11a3cc67a6920</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>`Warning[:strict_unused_block]`</title>
<updated>2024-11-06T02:06:18+00:00</updated>
<author>
<name>Koichi Sasada</name>
<email>ko1@atdot.net</email>
</author>
<published>2024-11-05T18:41:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=ab7ab9e4508c24b998703824aa9576fb2e092065'/>
<id>ab7ab9e4508c24b998703824aa9576fb2e092065</id>
<content type='text'>
to show unused block warning strictly.

```ruby
class C
  def f = nil
end

class D
  def f = yield
end

[C.new, D.new].each{|obj| obj.f{}}
```

In this case, `D#f` accepts a block. However `C#f` doesn't
accept a block. There are some cases passing a block with
`obj.f{}` where `obj` is `C` or `D`. To avoid warnings on
such cases, "unused block warning" will be warned only if
there is not same name which accepts a block.
On the above example, `C.new.f{}` doesn't show any warnings
because there is a same name `D#f` which accepts a block.

We call this default behavior as "relax mode".

`strict_unused_block` new warning category changes from
"relax mode" to "strict mode", we don't check same name
methods and `C.new.f{}` will be warned.

[Feature #15554]
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
to show unused block warning strictly.

```ruby
class C
  def f = nil
end

class D
  def f = yield
end

[C.new, D.new].each{|obj| obj.f{}}
```

In this case, `D#f` accepts a block. However `C#f` doesn't
accept a block. There are some cases passing a block with
`obj.f{}` where `obj` is `C` or `D`. To avoid warnings on
such cases, "unused block warning" will be warned only if
there is not same name which accepts a block.
On the above example, `C.new.f{}` doesn't show any warnings
because there is a same name `D#f` which accepts a block.

We call this default behavior as "relax mode".

`strict_unused_block` new warning category changes from
"relax mode" to "strict mode", we don't check same name
methods and `C.new.f{}` will be warned.

[Feature #15554]
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix Dir.mktmpdir argument</title>
<updated>2024-11-04T14:32:25+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2024-11-04T11:25:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=4dc120cb7ff51eb56caec43b6f61cee9cdf59ff2'/>
<id>4dc120cb7ff51eb56caec43b6f61cee9cdf59ff2</id>
<content type='text'>
The temporary directory is the second argument.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The temporary directory is the second argument.
</pre>
</div>
</content>
</entry>
<entry>
<title>Show where mutated chilled strings were allocated</title>
<updated>2024-10-21T10:33:02+00:00</updated>
<author>
<name>Étienne Barrié</name>
<email>etienne.barrie@gmail.com</email>
</author>
<published>2024-10-14T09:28:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=257f78fb671151f1db06dcd8e35cf4cc736f735e'/>
<id>257f78fb671151f1db06dcd8e35cf4cc736f735e</id>
<content type='text'>
[Feature #20205]

The warning now suggests running with --debug-frozen-string-literal:

```
test.rb:3: warning: literal string will be frozen in the future (run with --debug-frozen-string-literal for more information)
```

When using --debug-frozen-string-literal, the location where the string
was created is shown:

```
test.rb:3: warning: literal string will be frozen in the future
test.rb:1: info: the string was created here
```

When resurrecting strings and debug mode is not enabled, the overhead is a simple FL_TEST_RAW.
When mutating chilled strings and deprecation warnings are not enabled,
the overhead is a simple warning category enabled check.

Co-authored-by: Jean Boussier &lt;byroot@ruby-lang.org&gt;
Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;
Co-authored-by: Jean Boussier &lt;byroot@ruby-lang.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
[Feature #20205]

The warning now suggests running with --debug-frozen-string-literal:

```
test.rb:3: warning: literal string will be frozen in the future (run with --debug-frozen-string-literal for more information)
```

When using --debug-frozen-string-literal, the location where the string
was created is shown:

```
test.rb:3: warning: literal string will be frozen in the future
test.rb:1: info: the string was created here
```

When resurrecting strings and debug mode is not enabled, the overhead is a simple FL_TEST_RAW.
When mutating chilled strings and deprecation warnings are not enabled,
the overhead is a simple warning category enabled check.

Co-authored-by: Jean Boussier &lt;byroot@ruby-lang.org&gt;
Co-authored-by: Nobuyoshi Nakada &lt;nobu@ruby-lang.org&gt;
Co-authored-by: Jean Boussier &lt;byroot@ruby-lang.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>Add predicates for platforms</title>
<updated>2024-09-10T07:50:21+00:00</updated>
<author>
<name>Nobuyoshi Nakada</name>
<email>nobu@ruby-lang.org</email>
</author>
<published>2024-09-10T06:37:32+00:00</published>
<link rel='alternate' type='text/html' href='https://git.ruby-lang.org/ruby.git/commit/?id=2d12fbc4db7d1501d8f2a6b464af165ec40f7f3c'/>
<id>2d12fbc4db7d1501d8f2a6b464af165ec40f7f3c</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
</feed>
