Project

General

Profile

Activity

From 11/18/2022 to 11/24/2022

11/24/2022

11:51 PM Revision 1a47521c (git): Use `rb_sprintf` instead of deprecated `sprintf`
nobu (Nobuyoshi Nakada)
11:49 PM Revision bcdfe129 (git): [ruby/erb] Allow requiring erb/escape.so alone
(https://github.com/ruby/erb/pull/37)
Prior to this commit, requiring erb/escape first and then requiring erb
did not work as expected.
k0kubun (Takashi Kokubun)
11:40 PM Revision 8ac4081a (git): [ruby/erb] Split erb.rb into files for each module under ERB
(https://github.com/ruby/erb/pull/36)
https://github.com/ruby/erb/commit/f74833cc07
k0kubun (Takashi Kokubun)
11:34 PM Bug #19130 (Closed): MRI failing when executing shell builtin commands with Errno::ENOENT
Closing as this behavior is by design and not a bug. jeremyevans0 (Jeremy Evans)
11:22 PM Revision c480f589 (git): [ruby/erb] Rename erb.so to erb/escape.so
(https://github.com/ruby/erb/pull/35)
https://github.com/ruby/erb/commit/1280046952
k0kubun (Takashi Kokubun)
11:18 PM Bug #18580 (Closed): Range#include? inconsistency for beginless String ranges
Applied in changeset commit:git|04a92a6764bf678919cf4b68a27496a39d6b886a.
----------
Raise TypeError for endless non-numeric range include?
Beginless ranges previously raised TypeError for this case,
except for string ranges, which had...
jeremyevans (Jeremy Evans)
11:18 PM Revision 04a92a67 (git): Raise TypeError for endless non-numeric range include?
Beginless ranges previously raised TypeError for this case,
except for string ranges, which had unexpected behavior:
('a'..'z').include?('ww') # false
(..'z').include?('ww') # previously true, now TypeError
Use of include? with end...
jeremyevans (Jeremy Evans)
10:55 PM Revision d15de2f0 (git): Add a NEWS entry about erb -S removal [ci skip]
k0kubun (Takashi Kokubun)
10:49 PM Revision 1c0c1c80 (git): [ruby/erb] Drop deprecated -S option from erb command
We attempted to remove things like this and reverted all of them, but I
think nobody relies on this unlike the positional arguments of
`ERB#initialize`.
https://github.com/ruby/erb/commit/92fde7e403
k0kubun (Takashi Kokubun)
10:35 PM Revision e5a0abc5 (git): [ruby/erb] Suppress warnings to fix ruby-head CI
(https://github.com/ruby/erb/pull/34)
There seems to be no way to fix this. It doesn't happen in an installed
directory, so it's likely a false positive and/or a bug in rubygems.
| <internal:/home/runner/.rubies/ruby-head/lib/ruby/3....
k0kubun (Takashi Kokubun)
10:27 PM Revision 1340195e (git): Reduce duplication in pack by sharing code for some cases
s/S, i/I, l/L, and q/Q had the same code in both cases, so
combine the cases.
Alternatively, we could actually the size of the unsigned type,
but I doubt there are any platforms where the unsigned type is
a different size than the signe...
jeremyevans (Jeremy Evans)
10:26 PM Bug #18974 (Closed): Wrong line number in the rescue iseq for the exception matching code
Applied in changeset commit:git|f5d73da8062377e5b93100c6ea109a37bd04b4c1.
----------
Fix the position of rescue clause without exc_list
If the rescue clause has only exc_var and not exc_list, use the
exc_var position instead of the res...
jeremyevans (Jeremy Evans)
10:26 PM Revision f5d73da8 (git): Fix the position of rescue clause without exc_list
If the rescue clause has only exc_var and not exc_list, use the
exc_var position instead of the rescue body position.
This issue appears to have been introduced in
688169fd83b24564b653c03977c168cea50ccd35 when "opt_list" was split
into ...
jeremyevans (Jeremy Evans)
09:37 PM Revision 07169fd8 (git): Update YJIT section of `NEWS.md` (#6803)
* Update YJIT section of `NEWS.md`
* Update NEWS.md
maximecb (Maxime Chevalier-Boisvert)
07:59 PM Misc #19146 (Closed): Failed to activate YJIT for 3.2.0-dev on macOS Ventura (M1: Apple Silicon)
Applied in changeset commit:git|a81c89b7c877cc0ddf40a8d4672ca90090e116c6.
----------
YJIT: Make sure rustc's target matches before enabling (#6804)
For people using Rosetta 2 on ARM Macs, it can happen that the
rustc in the PATH compil...
alanwu (Alan Wu)
06:15 PM Misc #19146: Failed to activate YJIT for 3.2.0-dev on macOS Ventura (M1: Apple Silicon)
Hello @hachi8833.
It seems YJIT is failing to link because you have an x86-64 `rustc` toolchain installed on a Mac M1 arm64. We've made it so YJIT auto-enables when rustc is present, but we're not detecting that the right toolchain is...
maximecb (Maxime Chevalier-Boisvert)
01:01 PM Misc #19146 (Closed): Failed to activate YJIT for 3.2.0-dev on macOS Ventura (M1: Apple Silicon)
(hsbt kindly suggested to open the issue here. Thank you!)
I found that I'm unable to activate YJIT for the latest 3.2.0-dev in rbenv with ruby_build.
Then I tried the build from the freshest 3.2.0-dev source, but the symptom remai...
hachi8833 (Shozo Hatta)
07:58 PM Revision a81c89b7 (git): YJIT: Make sure rustc's target matches before enabling (#6804)
For people using Rosetta 2 on ARM Macs, it can happen that the
rustc in the PATH compiles for x86_64 while clang is targeting
ARM. We were enabling YJIT in these situations because the test
program compiled fine, but caused linking failu...
alanwu (Alan Wu)
06:32 PM Revision 656f2598 (git): [ruby/cgi] Fix test_cgi_cookie_new_with_domain to pass on older rubies
https://github.com/ruby/cgi/commit/05f0c58048 byroot (Jean Boussier)
06:26 PM Misc #19149: Minimal covered tests with the --enable-yjit case?
If you want to thoroughly test everything, you could run make check two times, once with YJIT, and once without.
If you just run:
```
$ make check RUN_OPTS="--yjit"
```
This will run YJIT with its default options, which is what ...
maximecb (Maxime Chevalier-Boisvert)
04:26 PM Misc #19149 (Closed): Minimal covered tests with the --enable-yjit case?
In the [Fedora Ruby's RPM recipe file](https://src.fedoraproject.org/rpms/ruby/blob/rawhide/f/ruby.spec), we were running the commands below.
```
$ ./autogen.sh
$ ./configure ...
$ make
$ make check
```
## What is the minimal ...
jaruga (Jun Aruga)
05:49 PM Bug #19124 (Feedback): Compile with clang: Cannot compile with -flto -fvisibility=hidden
Since the linker hangs, I don't think there is much we can do on our end.
Assuming Clang mimics GCC I think `LD` should be set to `clang` for LTO.
From GCC's man page:
>The important thing to keep in mind is that to enable link-
> ...
alanwu (Alan Wu)
05:09 PM Bug #19143 (Closed): Windows - bundled extension gems compile, but don't copy *.so files to lib folder
alanwu (Alan Wu)
03:49 AM Bug #19143: Windows - bundled extension gems compile, but don't copy *.so files to lib folder
@alanwu
Thanks. A bit of 'multi-tasking brain freeze' going on this morning.
Or, yes they do work **without** a copy in the lib folder.
Please close...
MSP-Greg (Greg L)
02:27 AM Bug #19143: Windows - bundled extension gems compile, but don't copy *.so files to lib folder
Does that mean the native extensions of those gems don't work when one tries to load them after installation? alanwu (Alan Wu)
03:54 PM Feature #19148 (Open): Define Hash#merge_sum as Hash#merge with sum block
To merge two hashes whilst summing any common elements, we currently have to pass a block instructing how to add the elements from each hash:
```ruby
items_1_counts = {:book => 4, :pen => 2, :pencil => 3}
items_2_counts = {:book => 2,...
hgraham (Harry Graham)
03:30 PM Revision d2fa67de (git): YJIT: rename `InsnOpnd` => `YARVOpnd` (#6801)
Rename InsnOpnd => YARVOpnd
Make it more clear this refers to YARV insn/vm operands rather
than backend IR, x86 or ARM insn operands.
maximecb (Maxime Chevalier-Boisvert)
02:37 PM Bug #19145: TestException#test_exception_in_message timeouts
Does this work?
```diff
diff --git a/eval_error.c b/eval_error.c
index 0112dece0d1..7f184691e50 100644
--- a/eval_error.c
+++ b/eval_error.c
@@ -443,6 +443,15 @@ exiting_split(VALUE errinfo, volatile int *exitcode, volatile int *...
nobu (Nobuyoshi Nakada)
11:21 AM Bug #19145: TestException#test_exception_in_message timeouts
I think it has been happening since @nobu tweaked the exit process for https://bugs.ruby-lang.org/issues/19016. mame (Yusuke Endoh)
10:32 AM Bug #19145 (Closed): TestException#test_exception_in_message timeouts
Testing with 66e5200ba4, I observe following error:
~~~
$ make -C redhat-linux-build test-all 'TESTS=-v -n /TestException#test_exception_in_message/' 'MSPECOPT=-fs '
make: Entering directory '/builddir/build/BUILD/ruby-3.2.0-66e5200...
vo.x (Vit Ondruch)
01:53 PM Bug #19147: `TestFileExhaustive#test_expand_path_for_existent_username` and `TestDir#test_home` fails on i686
Maybe some of the recent changes in the string.c might be the reason? vo.x (Vit Ondruch)
01:28 PM Bug #19147 (Closed): `TestFileExhaustive#test_expand_path_for_existent_username` and `TestDir#test_home` fails on i686
Testing with commit:git|66e5200ba4 on Fedora Rawhide, I observe following error just on i686 (other platforms are passing just fine):
~~~
1) Error:
TestFileExhaustive#test_expand_path_for_existent_username:
RuntimeError: can't se...
vo.x (Vit Ondruch)
01:52 PM Revision 6dfa45c4 (git): bump teeny version to 3.1.4.
nagachika (Tomoyuki Chikanaga)
01:43 PM Bug #18166: Windows Ripper test-all failures? bison package?
merged into ruby_2_7 at 168ec2b1e5ad0e4688e963d9de019557c78feed9 usa (Usaku NAKAMURA)
12:42 PM Revision 168ec2b1 (git): Use %printer directive for Bison 3.8 (used release flow)
This is backport of fa05697e4832fbd67a4f91b9bb362471902faab3 U.Nakamura
11:43 AM Revision ee8dc8a2 (git): Fix GitHub Actions error
U.Nakamura
11:06 AM Revision 9308e32a (git): Merge openssl-2.1.4
The changes can be found at:
https://github.com/ruby/openssl/compare/v2.1.3...v2.1.4
rhenium (Kazuki Yamaguchi)
11:04 AM Revision ba5cf0f7 (git): Merge openssl-2.2.2
The changes can be found at:
https://github.com/ruby/openssl/compare/v2.2.1...v2.2.2
rhenium (Kazuki Yamaguchi)
11:02 AM Bug #17583: Segfault on large stack(RUBY_THREAD_VM_STACK_SIZE)
mergerd into ruby_3_0 at 5fb3cf4 usa (Usaku NAKAMURA)
11:01 AM Revision 5fb3cf46 (git): Keep GC disabled until VM bootstrap has done [Bug #17583]
nobu (Nobuyoshi Nakada)
10:42 AM Revision 9eee81bc (git): Bump version
U.Nakamura
10:20 AM Revision 1a6b1675 (git): merge revision(s) 3071a727e081f754e71a9abed8dd19e36bacc785:
Add a comment about confusing code [ci skip]
---
configure.ac | 1 +
1 file changed, 1 insertion(+)
nagachika (Tomoyuki Chikanaga)
09:17 AM Feature #19128 (Rejected): Hash#delete could take a second argument as the default value?
byroot (Jean Boussier)
09:16 AM Feature #19128: Hash#delete could take a second argument as the default value?
You can close this, passing a block is much nicer and provides the functionality I need.
As a side note, I think passing multiple arguments could delete multiple keys from the hash but I don't have the use for it.
dorianmariefr (Dorian Marié)
06:13 AM Revision 66e5200b (git): Relax the timeout of TestRegexp#test_cache_optimization_square
It fails on riscv (QEmu)
http://rubyci.s3.amazonaws.com/debian-riscv64/ruby-master/log/20221124T000021Z.fail.html.gz
```
1) Error:
TestRegexp#test_cache_optimization_square:
Regexp::TimeoutError: regexp match timeout
/home/rubyci/...
mame (Yusuke Endoh)
02:55 AM Bug #19144 (Closed): Ruby should set AI_V4MAPPED | AI_ADDRCONFIG getaddrinfo flags by default
Currently, DNS lookups made with `getaddrinfo` from Ruby (i.e. not from the `Resolv` module) cause both A and AAAA DNS requests to be made, even on systems that don’t actually have an IPv6 address that could possibly make the AAAA respon... kjtsanaktsidis (KJ Tsanaktsidis)
02:21 AM Revision 22ace33a (git): * 2022-11-24 [ci skip]
git[bot]
02:21 AM Revision bdb8980f (git): merge revision(s) 4f1e0bfacd93c28bff549e2f3603c3b4942429a3:
Followed up CVE-2022-39253 for bundler examples
---
spec/bundler/cache/git_spec.rb | 3 +++
spec/bundler/install/gemfile/git_spec.rb | 9 +++++++++
spec/bundler/update/git_spec.rb | 3 ...
nagachika (Tomoyuki Chikanaga)
02:21 AM Revision 3b231086 (git): merge revision(s) 36f297e62108072b9377d927321928b994f66a93:
Use valid tokens as cookie names
---
spec/ruby/library/cgi/cookie/name_spec.rb | 12 ++++++------
spec/ruby/library/cgi/cookie/parse_spec.rb | 10 +++++-----
2 files changed, 11 insertions(+), 11 deleti...
nagachika (Tomoyuki Chikanaga)
02:21 AM Revision 3ff3855b (git): merge revision(s) dae843f6b7502f921a7e66f39e3714a39d860181,86096a91d55f72620e0f8ca8634da5fa342dc35b:
Bypass git submodule add/update with git config
protocol.file.allow=always option.
Co-authored-by: Nobuyoshi Nakada <[email protected]>
---
test/rubygems/test_gem_source_git.rb | 5 +++++
1 fil...
nagachika (Tomoyuki Chikanaga)
02:21 AM Revision cbe2c0cd (git): Merge CGI-0.2.2
hsbt (Hiroshi SHIBATA)
02:21 AM Revision ca07082a (git): * 2022-11-24 [ci skip]
git[bot]
02:20 AM Revision fa7fab95 (git): Removed unnecessary RLIMIT_AS
Even without this limit, these assertions almost certainly cause a
NoMemoryError by removing the fix in 72ad8595f20.
nobu (Nobuyoshi Nakada)
02:20 AM Revision 233634fb (git): merge revision(s) 4f1e0bfacd93c28bff549e2f3603c3b4942429a3:
Followed up CVE-2022-39253 for bundler examples
---
spec/bundler/cache/git_spec.rb | 3 +++
spec/bundler/install/gemfile/git_spec.rb | 9 +++++++++
spec/bundler/update/git_spec.rb | 3 ...
nagachika (Tomoyuki Chikanaga)
02:20 AM Revision 7f1163e9 (git): Use ubuntu-20.04 instead of latest, because Ruby 2.7 didn't support openssl3 on Ubuntu 22.04
hsbt (Hiroshi SHIBATA)
02:20 AM Revision 39f6a33e (git): merge revision(s) 36f297e62108072b9377d927321928b994f66a93:
Use valid tokens as cookie names
---
spec/ruby/library/cgi/cookie/name_spec.rb | 12 ++++++------
spec/ruby/library/cgi/cookie/parse_spec.rb | 10 +++++-----
2 files changed, 11 insertions(+), 11 deleti...
nagachika (Tomoyuki Chikanaga)
02:20 AM Revision 25df68ae (git): merge revision(s) dae843f6b7502f921a7e66f39e3714a39d860181,86096a91d55f72620e0f8ca8634da5fa342dc35b:
Bypass git submodule add/update with git config
protocol.file.allow=always option.
Co-authored-by: Nobuyoshi Nakada <[email protected]>
---
test/rubygems/test_gem_source_git.rb | 5 +++++
1 fil...
nagachika (Tomoyuki Chikanaga)
02:20 AM Revision f33522ba (git): Upgrade zlib_version on AppVeyor
They removed https://zlib.net/zlib1212.zip because
https://zlib.net/zlib1213.zip was released :thinking_face:
Fix CI failures like:
https://ci.appveyor.com/project/ruby/ruby/builds/45064876/job/bb9biogolh0u2595
k0kubun (Takashi Kokubun)
02:20 AM Revision 7cf69717 (git): Merge CGI-0.1.0.2
hsbt (Hiroshi SHIBATA)

11/23/2022

11:00 PM Revision d92054e3 (git): YJIT: Use a Box for branch targets to save memory
We frequently make branches that only have one target but we used to
always allocate space for two branch targets. This patch moves all the
information a branch target has into a struct and refer to them using
Option<Box<BranchTarget>>, ...
alanwu (Alan Wu)
10:18 PM Revision e7882151 (git): Add next_shape_id to vm stats
We need to track this number in CI. It's important to know how changes
to the codebase impact the number of shapes in the system, so lets add
the number to the VM stat hash
tenderlovemaking (Aaron Patterson)
07:55 PM Feature #19078: Introduce `Fiber#storage` for inheritable fiber-scoped variables.
> If it doesn't wait it's not structured concurrency (children outlive the parent).
The problem with being strict is that there are some cases where you need the child to outlive the parent. So, strict structured concurrency is insuff...
ioquatix (Samuel Williams)
10:54 AM Feature #19078: Introduce `Fiber#storage` for inheritable fiber-scoped variables.
ioquatix (Samuel Williams) wrote in #note-17:
> We can already write it like this:
> ...
That doesn't wait for the child tasks at the end of the parent task, does it?
If it doesn't wait it's not structured concurrency (children outliv...
Eregon (Benoit Daloze)
05:14 PM Revision a50aabde (git): YJIT: Simplify Insn::CCall to obviate Target::FunPtr (#6793)
k0kubun (Takashi Kokubun)
05:12 PM Revision 5ee94731 (git): [ruby/net-http] Enhanced RDoc for Net::HTTPHeader
https://github.com/ruby/net-http/commit/86b0514239 burdettelamar (Burdette Lamar)
05:12 PM Revision 4b32ed6e (git): [ruby/net-http] Enhanced RDoc for Net::HTTPHeader
https://github.com/ruby/net-http/commit/ef0ef53b0c burdettelamar (Burdette Lamar)
05:12 PM Revision 79a9280a (git): [ruby/net-http] Enhanced RDoc for Net::HTTPHeader
https://github.com/ruby/net-http/commit/0af9fb94a9 burdettelamar (Burdette Lamar)
05:12 PM Revision c6dc1266 (git): [ruby/net-http] Enhanced RDoc for Net::HTTPHeader
https://github.com/ruby/net-http/commit/995ff356b4 burdettelamar (Burdette Lamar)
05:12 PM Revision 66be0922 (git): [ruby/net-http] Enhanced RDoc for Net::HTTPHeader
https://github.com/ruby/net-http/commit/e924f1205b burdettelamar (Burdette Lamar)
05:02 PM Revision d88adaad (git): YJIT: Use NonNull pointer for CodePtr (#6792)
k0kubun (Takashi Kokubun)
04:59 PM Revision 9c36de3c (git): YJIT: Stop passing target1 to gen_return_branch
k0kubun (Takashi Kokubun)
04:59 PM Revision fe2bed67 (git): YJIT: Simplify code for RB_SPECIAL_CONST_P (#6795)
k0kubun (Takashi Kokubun)
03:48 PM Revision e82b15b6 (git): Fix YJIT backend to account for unsigned int immediates (#6789)
YJIT: x86_64: Fix cmp with number where sign bit is set
Before this commit, we were unconditionally treating unsigned ints as
signed ints when counting the number of bits required for representing
the immediate in machine code. When the...
jemmai (Jemma Issroff)
02:43 PM Bug #19143 (Closed): Windows - bundled extension gems compile, but don't copy *.so files to lib folder
Just finished updating ruby-loco's mswin build to use a system similar to the ucrt & mingw builds.
Confirmed something I noticed previously, and also occurs with the RubyInstaller2 head build.
On Windows, bundled extension gems (de...
MSP-Greg (Greg L)
11:09 AM Feature #19141: Add thread-owned Monitor to protect thread-local resources
chrisseaton (Chris Seaton) wrote in #note-11:
> Maybe `Enumerator` should not use a full fiber - but something less that behaves like the thread it's run on?
It still needs its own stack so it can suspend anywhere.
For Enumerators c...
Eregon (Benoit Daloze)
04:32 AM Revision 9ca4b96f (git): disable remote tests in debug.gem on macOS.
nagachika (Tomoyuki Chikanaga)
02:57 AM Bug #19108: Format routines like pack blindly treat a string as ASCII-encoded
Checking `ascii_only?` would reject non-ascii comments which are fine:
```ruby
p [2, 89].pack(<<~PACK)
C # 🚗
c
PACK
p [2, 89].pack('Cc')
# Same output
```
alanwu (Alan Wu)

11/22/2022

11:14 PM Feature #19138: `SyntaxError#path` for syntax_suggest
`SyntaxError` can have a series of errors.
Before adding `line`, we need to consider how to provide that list.
nobu (Nobuyoshi Nakada)
11:07 PM Feature #19138: `SyntaxError#path` for syntax_suggest
Should we also expose the `line`. Or maybe `source_location`?
Just a suggestion, if we only need `path` I think it's fine to just add `SyntaxError#path`.
Eregon (Benoit Daloze)
10:39 PM Misc #19142 (Open): Run test suites against 'install', based on ENV variable?
Some time ago I believe there was discussion about:
```
make
make test
make install
```
vs
```
make
make install
make test
```
Some people preferred to not have to run install before test (disk space, time, etc).
M...
MSP-Greg (Greg L)
09:54 PM Revision aedf682b (git): Free the IV table after estimation
We need to make sure the name table is freed otherwise we have a memory
leak.
tenderlovemaking (Aaron Patterson)
09:49 PM Revision 003f8ea8 (git): Remove dead code in rb_obj_copy_ivar
The removed code is a duplicate of the code above. peterzhu2118 (Peter Zhu)
09:18 PM Revision c4e99ac4 (git): Update yjit.md
maximecb (Maxime Chevalier-Boisvert)
09:11 PM Feature #19071 (Closed): Add Time#deconstruct, #deconstruct_keys, and #to_h
https://github.com/ruby/ruby/pull/6594 merged. zverok (Victor Shepelev)
09:10 PM Revision eaf2b6c4 (git): Add Time#deconstruct_keys
zverok (Victor Shepelev)
08:57 PM Revision 63f4a7a1 (git): YJIT: Skip padding jumps to side exits on Arm (#6790)
YJIT: Skip padding jumps to side exits
Co-authored-by: Maxime Chevalier-Boisvert <[email protected]>
Co-authored-by: Alan Wu <[email protected]>
Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierbois...
k0kubun (Takashi Kokubun)
08:28 PM Revision 9c5e3671 (git): Increment max_iv_count on class based on number of set_iv in initialize (#6788)
We can loosely predict the number of ivar sets on a class based on the
number of iv set instructions in the initialize method. This should give
us a more accurate estimate to use for initial size pool allocation,
which should in turn giv...
jemmai (Jemma Issroff)
05:32 PM Feature #19078: Introduce `Fiber#storage` for inheritable fiber-scoped variables.
Async already has the concept of structured concurrency.
> I've been reading https://cr.openjdk.java.net/~rpressler/loom/loom/sol1_part2.html#scope-variables again and parts of the JEP.
The inspiration for our model is dynamic binding/...
ioquatix (Samuel Williams)
12:20 PM Feature #19078: Introduce `Fiber#storage` for inheritable fiber-scoped variables.
I've been reading https://cr.openjdk.java.net/~rpressler/loom/loom/sol1_part2.html#scope-variables again and parts of the [JEP](https://openjdk.org/jeps/429).
For that approach to work it really needs structured concurrency (well explai...
Eregon (Benoit Daloze)
05:24 PM Feature #19141: Add thread-owned Monitor to protect thread-local resources
Maybe `Enumerator` should not use a full fiber - but something less that behaves like the thread it's run on? An underlying issue is that the user doesn't know they're using a fiber, and really how can we expect them to? chrisseaton (Chris Seaton)
01:40 PM Feature #19141: Add thread-owned Monitor to protect thread-local resources
I had a call with @byroot about this issue.
First of all, in the cases it's possible it's best to avoid `Enumerator#{next*,peek*}` as that avoids this issue, but also passing extra state to it, etc.
If the Enumerator is used for e.g....
Eregon (Benoit Daloze)
11:26 AM Feature #19141: Add thread-owned Monitor to protect thread-local resources
> How do we address this with Thread::Monitor?
If you are trying to say that one can shoot themselves in the foot with a ThreadMonitor and explicit fibers, then yes that's true.
But these folks had it working for years (and still ...
byroot (Jean Boussier)
11:18 AM Feature #19141: Add thread-owned Monitor to protect thread-local resources
It's not only an issue with Fiber scheduler although that is the most obvious way to illustrate.
After all Fiber scheduler is not the only usage of `resume`/`transfer`/`yield`, any gem or app might use those as well and not always in cle...
Eregon (Benoit Daloze)
08:46 AM Feature #19141: Add thread-owned Monitor to protect thread-local resources
> Based on that I don't think a per-thread Monitor is really a solution
In the case of the original issue they are with Rails connection, they don't use a Fiber scheduler, they just use an enumerator for control flow which happens to ...
byroot (Jean Boussier)
05:10 AM Feature #19141: Add thread-owned Monitor to protect thread-local resources
Why do you need a recursive mutex for this code? Why not just lock inside the enumerator around whatever shared resource you are protecting?
http://www.zaval.org/resources/library/butenhof1.html
> 1) The biggest of all the big prob...
ioquatix (Samuel Williams)
05:23 PM Bug #19108: Format routines like pack blindly treat a string as ASCII-encoded
> I think you want to mean "if the string is not ASCII-compatible".
Can you explain why?
I think a string is only a valid pack format string if it is `ascii_only?` - if it isn't `ascii_only?` then there is a silent warning and the ...
chrisseaton (Chris Seaton)
08:26 AM Bug #19108: Format routines like pack blindly treat a string as ASCII-encoded
chrisseaton (Chris Seaton) wrote in #note-1:
> Possibly we should raise an exception if the string is not `ascii_only?`
I think you want to mean "if the string is not ASCII-compatible".
https://github.com/ruby/ruby/pull/6785
nobu (Nobuyoshi Nakada)
03:37 PM Bug #19140 (Closed): rb_vm_insn_addr2insn: invalid insn address
jeremyevans0 (Jeremy Evans)
08:37 AM Bug #19140: rb_vm_insn_addr2insn: invalid insn address
That's valuable insight! Probably it is a volatile memory fault then. I restarted the physical machine now and I haven't experienced the issue since. turion (Manuel Bärenz)
02:04 PM Revision 16ea2213 (git): Merge CGI-0.3.5
hsbt (Hiroshi SHIBATA)
12:50 PM Revision 14704023 (git): Merge RubyGems-3.3.26 and Bundler-2.3.26
hsbt (Hiroshi SHIBATA)
12:50 PM Revision b102175b (git): Merge RubyGems-3.3.25 and Bundler-2.3.25
hsbt (Hiroshi SHIBATA)
12:50 PM Revision 6f59f0be (git): Merge RubyGems-3.3.24 and Bundler-2.3.24
hsbt (Hiroshi SHIBATA)
11:55 AM Revision 8f2586f1 (git): merge revision(s) 36f297e62108072b9377d927321928b994f66a93:
Use valid tokens as cookie names
---
spec/ruby/library/cgi/cookie/name_spec.rb | 12 ++++++------
spec/ruby/library/cgi/cookie/parse_spec.rb | 10 +++++-----
2 files changed, 11 insertions(+), 11 deleti...
nagachika (Tomoyuki Chikanaga)
05:20 AM Revision 20b9d7b9 (git): Use `enum` over `int`
nobu (Nobuyoshi Nakada)
05:07 AM Revision 8c02084a (git): Use dedicated assertions for warnings
nobu (Nobuyoshi Nakada)
04:58 AM Revision 77f96300 (git): Avoid unnecessary use of global variables
nobu (Nobuyoshi Nakada)
02:32 AM Revision 36f297e6 (git): Use valid tokens as cookie names
nobu (Nobuyoshi Nakada)
02:13 AM Revision 32d202eb (git): Update default gems list at 805d70f716c782e82ec77ca623b217 [ci skip]
git[bot]
02:12 AM Revision 805d70f7 (git): [ruby/cgi] Bump up 0.3.5
https://github.com/ruby/cgi/commit/daf88c2a75 hsbt (Hiroshi SHIBATA)
02:12 AM Revision 58682b69 (git): [ruby/cgi] Relax domain label restrictions
https://github.com/ruby/cgi/commit/b46d41c363 nobu (Nobuyoshi Nakada)
02:01 AM Revision 5304b3bd (git): Update default gems list at 3f960cf445dd387a5497ffad897ea6 [ci skip]
git[bot]
02:00 AM Revision 3f960cf4 (git): [ruby/cgi] Bump up 0.3.4
https://github.com/ruby/cgi/commit/3649a27bf4 hsbt (Hiroshi SHIBATA)
02:00 AM Revision 0e75b2f2 (git): [ruby/cgi] Prevent CRLF injection
Throw a RuntimeError if the HTTP response header contains CR or LF to
prevent HTTP response splitting.
https://hackerone.com/reports/1204695
https://github.com/ruby/cgi/commit/64c5045c0a
mame (Yusuke Endoh)
02:00 AM Revision c05f85f3 (git): [ruby/cgi] Check cookie name/path/domain characters
https://hackerone.com/reports/1204977
https://github.com/ruby/cgi/commit/30107a4797
nobu (Nobuyoshi Nakada)
01:20 AM Bug #19139: Ruby 2.3.8 - 42912 IOT instruction (core dumped) when running rake -v
The fault occurred in /lib/x86_64-linux-gnu/libssl.so.3.
https://gist.github.com/Pauloparakleto/3cef9f75b8dce6215d00f073e6b977ca#file-gistfile1-txt-L224
This file seems from libssl3, and ruby 2.3 has reached the EOL before libssl3 was r...
nobu (Nobuyoshi Nakada)

11/21/2022

10:04 PM Feature #19141: Add thread-owned Monitor to protect thread-local resources
> That means any framework using Monitor is incompatible to be used with Enumerator.
It's only problematic if both the parent Fiber and the Enumerator-using-Fiber try to acquire the same Monitor while the other holds it.
> ...
Whether ...
Eregon (Benoit Daloze)
10:02 PM Feature #19141: Add thread-owned Monitor to protect thread-local resources
@Eregon how does this relate to `Fiber#storage`? byroot (Jean Boussier)
05:50 PM Feature #19141 (Open): Add thread-owned Monitor to protect thread-local resources
### Background
In Ruby v3.0.2, Monitor was modified to be owned by fibers instead of threads [for reasons as described in this issue](https://bugs.ruby-lang.org/issues/17827) and so it is also consistent with Mutex. Before the change...
wildmaples (Maple Ong)
08:52 PM Bug #19140: rb_vm_insn_addr2insn: invalid insn address
Thanks for the report. The stack trace shows that it's crashing
during GC, which means some bytecode object on the heap is corrupt:
Stack trace of thread 1006223:
#0 0x00007f0646646bc7 __pthread_kill_implementation (libc.so...
alanwu (Alan Wu)
03:12 PM Bug #19140 (Closed): rb_vm_insn_addr2insn: invalid insn address
I recently upgraded my mastodon installation to 4.0.2 (and possibly also updated a minor ruby version, not sure) and since then I'm experiencing regular crashes with error messages like:
```
Nov 21 15:25:18 manuelbaerenz puma[1006220...
turion (Manuel Bärenz)
06:52 PM Revision cf05c202 (git): Fixup spec/ruby/optional/capi/rbasic_spec.rb for mswin
MSP-Greg (Greg L)
06:28 PM Bug #19139 (Feedback): Ruby 2.3.8 - 42912 IOT instruction (core dumped) when running rake -v
Ruby 2.3 is out of support. Can you reproduce this issue Ruby 3.0 or 3.1? jeremyevans0 (Jeremy Evans)
01:35 PM Bug #19139 (Feedback): Ruby 2.3.8 - 42912 IOT instruction (core dumped) when running rake -v
https://gist.github.com/Pauloparakleto/3cef9f75b8dce6215d00f073e6b977ca
Above is the link to the backtrack. There it is said "You may have encountered a bug in the Ruby interpreter or extension libraries.
Bug reports are welcome." So...
Paulo.Felipe (Paulo Souza)
06:27 PM Revision 607fb49d (git): YJIT: Lower the required Rust version from 1.58.1 to 1.58.0 (#6780)
k0kubun (Takashi Kokubun)
04:47 PM Bug #19115: RubyGems fails to detect OpenSSL in --with-static-linked-ext builds
I've submitted a [PR](https://github.com/ruby/ruby/pull/6756) to fix this issue and I thought I'd also post some updates.
Here is a script to summarize the mechanics of the bug:
```ruby
puts RUBY_DESCRIPTION # ruby 3.2.0dev (2022-01-20...
alanwu (Alan Wu)
04:26 PM Revision 09423876 (git): Let SHAPE_BITS take 32 bits on debug builds
The ractor_belonging_id has been moved out of the headers, so object
shapes can take the top 32 bits of the flags on debug builds.
peterzhu2118 (Peter Zhu)
04:26 PM Revision 5f95228c (git): Add RVALUE_OVERHEAD and move ractor_belonging_id
This commit adds RVALUE_OVERHEAD for storing metadata at the end of the
slot. This commit moves the ractor_belonging_id in debug builds from the
flags to RVALUE_OVERHEAD which frees the 16 bits in the headers for
object shapes.
peterzhu2118 (Peter Zhu)
04:08 PM Feature #19138: `SyntaxError#path` for syntax_suggest
https://github.com/ruby/ruby/pull/6779 nobu (Nobuyoshi Nakada)
03:18 AM Feature #19138 (Closed): `SyntaxError#path` for syntax_suggest
Currently syntax_suggest searches the path name from the exception message.
But extracting the info from messages for humans is fragile, I think.
So proposing a new method `SyntaxError#path`, similar to `LoadError#path`.
```patch
c...
nobu (Nobuyoshi Nakada)
03:33 PM Revision b7a0ce32 (git): [Bug #19016] `SyntaxError` with parser error messages
Raise a `SyntaxError` with the parser error message, in the case
reading from a file instead of the `-e` option or standard input. So
syntax_suggest can get the message from the caught error.
nobu (Nobuyoshi Nakada)
03:33 PM Revision 5b959e23 (git): [Bug #19016] re-order error handling at cleanup
Build and store the error message with `#detailed_message` before
terminating all Ractors, then show the message later.
nobu (Nobuyoshi Nakada)
03:31 PM Bug #19130: MRI failing when executing shell builtin commands with Errno::ENOENT
nobu (Nobuyoshi Nakada) wrote in #note-5:
> The list in Ruby is based on http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html,
> ...
FYI, this list is here: https://github.com/ruby/ruby/blob/50c6cab/process.c#L2659-...
nobu (Nobuyoshi Nakada)
03:24 PM Bug #19130: MRI failing when executing shell builtin commands with Errno::ENOENT
ifiht (Mikal R) wrote in #note-3:
> Is there a ruby-specific list then of what gets implemented? Seems like `type` is both included in the POSIX spec (https://pubs.opengroup.org/onlinepubs/9699919799/utilities/type.html) and the Bourne ...
nobu (Nobuyoshi Nakada)
03:22 PM Revision 1f0888ab (git): Speed up shape transitions
This commit significantly speeds up shape transitions as it changes
get_next_shape_internal to not perform a lookup (and instead require
the caller to perform the lookup). This avoids double lookups during
shape transitions.
There is a ...
peterzhu2118 (Peter Zhu)
02:58 PM Revision 648927d7 (git): Refactor obj_ivar_set and vm_setivar
obj_ivar_set and vm_setivar_slowpath is essentially doing the same thing,
but the code is duplicated and not quite implemented in the same way,
which could cause bugs. This commit refactors vm_setivar_slowpath to use
obj_ivar_set.
peterzhu2118 (Peter Zhu)
01:53 PM Bug #18899: Inconsistent argument handling in IO#set_encoding
Thank you for your response. How do the changes to the example make a difference? The results with the original example are:
```
args: ["binary:utf-8"] external encoding: #<Encoding:ASCII-8BIT> ...
javanthropus (Jeremy Bopp)
12:22 PM Bug #18899: Inconsistent argument handling in IO#set_encoding
I think your example needs to be as follows:
```ruby
#!/usr/bin/env ruby
def show(io, args)
printf(
"args: %-50s external encoding: %-25s internal encoding: %-25s\n",
args.inspect,
io.external_encoding.inspect,
...
naruse (Yui NARUSE)
01:50 PM Misc #19074: DevMeeting-2022-12-01 (postponed from 11-17)
* [Bug #19108] Format routines like pack blindly treat a string as ASCII-encoded (@eregon)
* Is it OK to make `unknown pack directive` an `ArgumentError`?
* If not is it OK to make it a non-verbose warning (i.e., shown with default...
Eregon (Benoit Daloze)
01:47 PM Bug #19108: Format routines like pack blindly treat a string as ASCII-encoded
Agreed, I think it should be ArgumentError since it's otherwise silently ignoring characters in the pack format string.
A non-verbose warning is better than the current state if ArgumentError is deemed too incompatible.
Here is real cas...
Eregon (Benoit Daloze)
01:16 PM Revision 612aa5c2 (git): Use class methods of `File` over `Kernel.open` and `IO.read`
nobu (Nobuyoshi Nakada)
01:15 PM Revision 116920cf (git): [ruby/un] Use class methods of `File` over `Kernel.open`
https://github.com/ruby/un/commit/13bdd766fe nobu (Nobuyoshi Nakada)
10:54 AM Feature #19089: Load bundler/setup in gem_prelude.rb when "bundle exec" is used
naruse (Yui NARUSE) wrote in #note-12:
> People shouldn't use and recommend others to use --disable-gem as a workaround for a bug. It's only for debugging.
> ...
There is no need for `--disable-gem` here.
`--disable-did-you-mean` / `-...
Eregon (Benoit Daloze)
03:32 AM Feature #19089: Load bundler/setup in gem_prelude.rb when "bundle exec" is used
People shouldn't use and recommend others to use --disable-gem as a workaround for a bug. It's only for debugging.
If people use --disable-gem for such use case widely, we need to remove the option.
naruse (Yui NARUSE)
10:26 AM Revision e2b15461 (git): [ruby/optparse] Use class methods of `File` over `IO`
https://github.com/ruby/optparse/commit/ab5073e4d8 nobu (Nobuyoshi Nakada)
08:46 AM Revision c9fbc779 (git): [ruby/irb] Add commands to start and use the debugger
(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 ...
k0kubun (Takashi Kokubun)
07:35 AM Revision 65e31402 (git): Use double quotes for nmake [ci skip]
nobu (Nobuyoshi Nakada)
07:32 AM Revision 854312ee (git): Refactor to use has_delayed_token macro
yui-knk (Kaneko Yuichiro)
07:21 AM Revision 3071a727 (git): Add a comment about confusing code [ci skip]
k0kubun (Takashi Kokubun)
07:13 AM Revision 730b841f (git): Prevent a "warning: ambiguity between regexp and two divisions"
mame (Yusuke Endoh)
06:10 AM Revision 166598a6 (git): Add outdate-bundled-gems target [ci skip]
nobu (Nobuyoshi Nakada)
05:25 AM Revision 427985c1 (git): Update default gems list at 509f04ca9159d1dd046af4ffb19cfa [ci skip]
git[bot]
05:24 AM Revision 509f04ca (git): [ruby/irb] Version 1.5.0
Asked by ko1 to release https://github.com/ruby/irb/pull/444 for
simplifying https://github.com/ruby/debug/pull/808,
and hsbt made me a gem owner for this.
Stan said 1.4.3 should have been 1.5.0, but now that it's already
released and i...
k0kubun (Takashi Kokubun)
05:23 AM Revision 1753cf59 (git): Fix a broken interpolation #{head}
k0kubun (Takashi Kokubun)
05:17 AM Revision db8ff237 (git): Add a link to Feature #19070 ticket [ci skip]
yui-knk (Kaneko Yuichiro)
05:07 AM Revision 29e6d975 (git): Fix typos (#6775)
* s/Innteger/Integer/
* s/diretory/directory/
* s/Bufer/Buffer/
* s/defalt/default/
* s/covearge/coverage/
Yudai Takada
04:18 AM Misc #19122: Use MADV_DONTNEED instead of MADV_FREE when freeing a Fiber's stack
I don't have a strong opinion about this, but I'm generally against loosing performance.
Maybe it can be controlled using environment variable.
ioquatix (Samuel Williams)
12:01 AM Feature #19070 (Closed): Enhance keep_tokens option for RubyVM::AbstractSyntaxTree parsing methods
Applied in changeset commit:git|d8601621edcf29e3323b90dcf04b774edd9fb45e.
----------
Enhance keep_tokens option for RubyVM::AbstractSyntaxTree parsing methods
Implementation for Language Server Protocol (LSP) sometimes needs token info...
yui-knk (Kaneko Yuichiro)
12:01 AM Revision d8601621 (git): Enhance keep_tokens option for RubyVM::AbstractSyntaxTree parsing methods
Implementation for Language Server Protocol (LSP) sometimes needs token information.
For example both `m(1)` and `m(1, )` has same AST structure other than node locations
then it's impossible to check the existence of `,` from AST. Howev...
yui-knk (Kaneko Yuichiro)

11/20/2022

10:22 PM Revision bbc4cf5f (git): Revert wrong sync in 5958c305e5 [ci skip]
sync_default_gems.rb sometimes syncs too much. k0kubun (Takashi Kokubun)
03:40 PM Bug #4992: finalizer中のThread.newでSEGV
`Thread.new` is prohibited but not `Thread.start`.
```
$ ruby -v --disable=gems -d -e 'class E<StandardError;def detailed_message(...) Thread.start{"<#{super}>"}.value; end; end' -e 'raise E'
ruby 3.2.0dev (2022-11-13T14:54:43Z mast...
nobu (Nobuyoshi Nakada)
01:44 PM Bug #19016 (Closed): syntax_suggest is not working with Ruby 3.2.0-preview2
Applied in changeset commit:git|701dfe4eb741628213e4d701c13ad6d76904ac4f.
----------
[Bug #19016] Handle syntax error in main script like other errors
So that `SyntaxError#detailed_message` will be used also in the case
exiting by such...
nobu (Nobuyoshi Nakada)
11:00 AM Revision 701dfe4e (git): [Bug #19016] Handle syntax error in main script like other errors
So that `SyntaxError#detailed_message` will be used also in the case
exiting by such syntax error.
nobu (Nobuyoshi Nakada)
11:00 AM Revision 12b7b852 (git): Use `enum ruby_tag_type` over `int`
nobu (Nobuyoshi Nakada)
09:51 AM Revision 230c7de2 (git): sync_default_gems.rb: Fix substitution [ci skip]
As there should be no modified files just affter `git cherry-pick`
succeeded in `sync_default_gems_with_commits`, reset to the previous
revision once to pick up the committed files.
nobu (Nobuyoshi Nakada)
08:18 AM Feature #17472 (Rejected): HashWithIndifferentAccess like Hash extension
As far as I understand, after `HashWithIndifferentAccess` is optimized to use `Symbol#name` and avoids to create duplicated string objects, it is not a performance bottleneck now.
If people identify this is a bottleneck again with bench...
naruse (Yui NARUSE)
05:58 AM Revision 779917fc (git): Avoid a timeout on test_cache_optimization_exponential
The timeout seems too short for some CIs.
http://rubyci.s3.amazonaws.com/debian11-aarch64/ruby-master/log/20221120T012840Z.fail.html.gz
k0kubun (Takashi Kokubun)
05:38 AM Revision 66ac288a (git): [ruby/irb] Push an accidentally uncommitted diff
https://github.com/ruby/irb/commit/7e9f27afd7 k0kubun (Takashi Kokubun)
05:34 AM Revision 67034ac7 (git): [ruby/irb] Deal with inconsistency with ruby/ruby
https://github.com/ruby/irb/commit/41d5012849 k0kubun (Takashi Kokubun)
05:32 AM Revision 8512b97d (git): [ruby/irb] Require missing EnvUtil
https://github.com/ruby/irb/commit/9bb1757b02 k0kubun (Takashi Kokubun)
05:31 AM Revision fa2e0cc0 (git): [ruby/irb] Try using a different file name
hoping to address:
https://github.com/ruby/ruby/actions/runs/3506561941/jobs/5873689640
https://github.com/ruby/irb/commit/de9a6b9d00
k0kubun (Takashi Kokubun)
05:19 AM Revision f4725167 (git): [ruby/irb] Require rubygems for ruby/ruby
You can't take rubygems for granted in a default gem.
https://github.com/ruby/ruby/actions/runs/3506561943/jobs/5873689466
https://github.com/ruby/irb/commit/58bb3954d0
k0kubun (Takashi Kokubun)
05:14 AM Revision 1284baec (git): Skip TestDRbSSLAry on mswin
This doesn't seem to stably work on mswin:
https://github.com/ruby/ruby/actions/runs/3505363753/jobs/5871633211
For CI stability, it generally seems like a bad idea to run druby tests
on Windows, given that it's pretty much unstable on ...
k0kubun (Takashi Kokubun)
05:06 AM Revision e0f0367a (git): [ruby/irb] Fix CI failure on ruby/ruby
https://github.com/ruby/irb/commit/ea8c716922 k0kubun (Takashi Kokubun)
04:47 AM Revision 180ed611 (git): [ruby/irb] Add edit command (https://github.com/ruby/irb/pull/453)
* 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 <t...
Stan Lo
03:08 AM Feature #19137 (Open): Numbered parameters are not made available to IRB.
Hello !
It does not look like numbered parameters are available through the Binding that's used by IRB.
```ruby
# repl.rb
[1,2,3].each do
binding.irb
end
```
```
$ irb repl.rb
irb(main):001:0> puts _...
0x1eef (0x 1eef)
02:06 AM Revision 43999031 (git): Avoid warnings on MINGW:
win32/win32.c: In function 'rtc_error_handler':
win32/win32.c:691:5: warning: function 'rtc_error_handler' might be a candidate for 'gnu_printf' format attribute [-Wsuggest-attribute=format]
691 | rb_str_vcatf(str, fmt, ap);
...
Lars Kanis

11/19/2022

11:07 PM Bug #19130: MRI failing when executing shell builtin commands with Errno::ENOENT
I don't think this is a bug. Ruby's behavior for the Kernel backtick method (what `%x` uses) is that a shell is only used if Ruby thinks it is necessary. If Ruby doesn't determine the use of a shell is necessary, it will directly execu... jeremyevans0 (Jeremy Evans)
10:45 PM Bug #19130: MRI failing when executing shell builtin commands with Errno::ENOENT
Is there a ruby-specific list then of what gets implemented? Seems like `type` is both included in the POSIX spec (https://pubs.opengroup.org/onlinepubs/9699919799/utilities/type.html) and the Bourne Shell, but not Ruby:
```
└$ /bin/sh -...
ifiht (Mikal R)
10:14 PM Revision 5958c305 (git): [ruby/irb] Document a full list of commands
(https://github.com/ruby/irb/pull/451)
* Document a full list of commands
* Document debug as well
* Make it less duplicated
k0kubun (Takashi Kokubun)
10:10 PM Revision 23750c86 (git): [ruby/irb] Update documentation about Autocompletion
(https://github.com/ruby/irb/pull/452)
https://github.com/ruby/irb/commit/e6b4917750
k0kubun (Takashi Kokubun)
04:10 PM Revision 01bc2fc5 (git): Update fake.rb for test-spec
spec/ruby/command_line/dash_v_spec.rb needs it. nobu (Nobuyoshi Nakada)
03:33 PM Revision 909ea6b6 (git): [ruby/net-http] About the Examples moved to separate file
https://github.com/ruby/net-http/commit/0512b5bfc9 burdettelamar (Burdette Lamar)
03:25 PM Revision e6162728 (git): [ruby/net-http] Enhanced RDoc for Net::HTTP
burdettelamar (Burdette Lamar)
03:17 PM Revision 2047636a (git): [ruby/net-http] Update lib/net/http/request.rb
https://github.com/ruby/net-http/commit/e3c9011edb
Co-authored-by: Peter Zhu <[email protected]>
burdettelamar (Burdette Lamar)
03:17 PM Revision dbb902fc (git): [ruby/net-http] Enhanced RDoc for Net::HTTP
https://github.com/ruby/net-http/commit/4444e8cea4 burdettelamar (Burdette Lamar)
03:17 PM Revision 951eabdc (git): [ruby/net-http] Enhanced RDoc for Net::HTTP
https://github.com/ruby/net-http/commit/6b30c5310b burdettelamar (Burdette Lamar)
02:38 AM Revision 50c6caba (git): [DOC] Change formatting in the exec docs
The last part of the sentence was accidentally put in enumeration, It
made an impression that it's one of the rules, not the result of
applying the rules.
mjrzasa (Maciek Rząsa)
01:36 AM Revision 574d8498 (git): Run skipped minitest tests that now pass
The mentioned PR was merged. alanwu (Alan Wu)
01:27 AM Revision 6dcb7b92 (git): YJIT: Improve the failure message on enlarging a branch (#6769)
k0kubun (Takashi Kokubun)
01:17 AM Revision 082cfcfd (git): Add test cases for args forwarding after rest argument
yui-knk (Kaneko Yuichiro)
12:42 AM Revision 5c505f4a (git): Rename misleading label
We use this code path when we require the same extension twice, so it's
not necessarily about the feature being statically linked. Removing this
code when there is no statically linked extensions leads to breakage.
alanwu (Alan Wu)

11/18/2022

11:50 PM Revision 7f269a3c (git): Fix io/console test for --with-static-linked-ext
The tests looks for the .so file, which doesn't exist when the extension
is statically linked. In that situation it passes -I to ruby with
nothing after it which ate the -rio/console argument.
alanwu (Alan Wu)
09:58 PM Revision 2185f0ca (git): Update assertion
New T_OBJECT objects will have a T_OBJECT shape tenderlovemaking (Aaron Patterson)
08:19 PM Feature #19000: Data: Add "Copy with changes method" [Follow-on to #16122 Data: simple immutable value object]
I just put up a PR implementing this using the `dup` proposal: https://github.com/ruby/ruby/pull/6766
Here are my objections to other proposals:
1. `point = Point.new(**Origin.to_h, **change)` works but is very verbose and not inte...
ufuk (Ufuk Kayserilioglu)
03:09 AM Feature #19000: Data: Add "Copy with changes method" [Follow-on to #16122 Data: simple immutable value object]
@RubyBugs I cannot understand the following parts of your first motivative example
```
# In loops
movements = [
{ x: +0.5 },
{ x: +0.5 },
{ y: -1.0 },
{ x: +0.5 },
]
# position = Point(x: 1.5, y: -1.0)
position = mo...
mame (Yusuke Endoh)
08:04 PM Revision 9e067df7 (git): 32 bit comparison on shape id
This commit changes the shape id comparisons to use a 32 bit comparison
rather than 64 bit. That means we don't need to load the shape id to a
register on x86 machines.
Given the following program:
```ruby
class Foo
def initialize
...
tenderlovemaking (Aaron Patterson)
08:04 PM Revision 6582f348 (git): rename SHAPE_BITS to SHAPE_ID_NUM_BITS
tenderlovemaking (Aaron Patterson)
08:03 PM Bug #19136: OpenSSL::PKey::EC.check_key is useless when linked against OpenSSL 3
I just realized that `ruby/openssl` takes issue reports on the GitHub. Sorry about that! bannable (Joe Truba)
08:00 PM Bug #19136 (Third Party's Issue): OpenSSL::PKey::EC.check_key is useless when linked against OpenSSL 3
When calling `#check_key` against an `OpenSSL::PKey::EC` instance representing an invalid point for the group, the method always returns true.
I believe this is because OpenSSL 3 deprecated `EC_KEY_check_key`, and the underlying call ...
bannable (Joe Truba)
07:46 PM Bug #19113: Inconsistency in retention of compare_by_identity flag in Hash methods
The way I see it, `Hash[*args]` converts args to a Hash, and args is only considered as key-value pairs. So if `args = [some_Hash]`, it's just one of the representation of key-value pairs but the behavior shouldn't be special with a Hash... Eregon (Benoit Daloze)
06:57 PM Bug #19113: Inconsistency in retention of compare_by_identity flag in Hash methods
headius (Charles Nutter) wrote in #note-6:
> Even though it's a "new Hash", it is supposed to be populated with "the given objects". If losing identity comparison means some keys don't get populated, I would consider that broken.
If ...
jeremyevans0 (Jeremy Evans)
06:37 PM Bug #19113: Inconsistency in retention of compare_by_identity flag in Hash methods
Even though it's a "new Hash", it is supposed to be populated with "the given objects". If losing identity comparison means some keys don't get populated, I would consider that broken. headius (Charles Nutter)
05:32 PM Bug #19113: Inconsistency in retention of compare_by_identity flag in Hash methods
headius (Charles Nutter) wrote in #note-3:
> jeremyevans0 (Jeremy Evans) wrote in #note-1:
> ...
It's explicitly documented as returning a new hash, not a copy: `Returns a new Hash object populated with the given objects`.
The fact ...
jeremyevans0 (Jeremy Evans)
05:03 PM Bug #19113: Inconsistency in retention of compare_by_identity flag in Hash methods
FWIW I ran into this while implementing Ruby 3.1 identhash semantics in JRuby, and then realized this is now one of the few "copy" paths that does not propagate identity comparison. headius (Charles Nutter)
05:02 PM Bug #19113: Inconsistency in retention of compare_by_identity flag in Hash methods
jeremyevans0 (Jeremy Evans) wrote in #note-1:
> I think the following behavior makes the most sense:
> ...
I disagree. The contents of the other hash will have been populated using identity comparison rather than equality comparison. I...
headius (Charles Nutter)
06:03 PM Revision ba3b40a9 (git): [ruby/irb] Discover and load debug.gem even if it's not in Gemfile
(https://github.com/ruby/irb/pull/448)
* Minor fixes on debug command
* Discover and load debug.gem even if it's not in Gemfile
* Eliminate else for rescue
* Discover the latest one from all gem paths
k0kubun (Takashi Kokubun)
05:34 PM Revision b1cbc883 (git): [ruby/irb] Minor fixes on debug command
(https://github.com/ruby/irb/pull/447)
* Minor fixes on debug command
* Update lib/irb/cmd/debug.rb
k0kubun (Takashi Kokubun)
04:31 PM Revision 10788166 (git): Differentiate T_OBJECT shapes from other objects
We would like to differentiate types of objects via their shape. This
commit adds a special T_OBJECT shape when we allocate an instance of
T_OBJECT. This allows us to avoid testing whether an object is an
instance of a T_OBJECT or not,...
tenderlovemaking (Aaron Patterson)
10:01 AM Feature #19072: Reminder: Remove ABI version suffix like "3.2.0+2" from release version
Thanks @nobu
I also confirmed removing +n suffix with building snapshot applied `#define RUBY_PATCHLEVEL 0` to `version.h`.
hsbt (Hiroshi SHIBATA)
09:53 AM Bug #19130: MRI failing when executing shell builtin commands with Errno::ENOENT
I've reproduced it on MRI 2.7.0, but not for all built-ins, just ones that are Bash-specific as per these lists:
* https://www.gnu.org/software/bash/manual/html_node/Bourne-Shell-Builtins.html (these work)
* https://www.gnu.org/softwar...
mjrzasa (Maciek Rząsa)
09:40 AM Bug #19132 (Closed): `**` を引数に指定すると no anonymous keyword rest parameter になる
Applied in changeset commit:git|ddd62fadaf91418cd259593285bc59358fb0b166.
----------
Allow anonymous keyword rest parameter with other keyword parameters
Fixes [Bug #19132]
shugo (Shugo Maeda)
09:25 AM Revision f0ce1186 (git): Make anonymous rest arg (*) and block arg (&) accessible from ARGS node
yui-knk (Kaneko Yuichiro)
09:23 AM Revision ddd62fad (git): Allow anonymous keyword rest parameter with other keyword parameters
Fixes [Bug #19132] shugo (Shugo Maeda)
09:11 AM Revision 00872d12 (git): [ruby/irb] Add debug command (https://github.com/ruby/irb/pull/446)
https://github.com/ruby/irb/commit/30faa13fa3 st0012 (Stan Lo)
08:53 AM Feature #18571 (Closed): Removed the bundled sources from release package after Ruby 3.2
I added build instructions with new options at https://github.com/ruby/ruby/commit/a80b66e7ebf1179964b416cee6fd236048a73dcf hsbt (Hiroshi SHIBATA)
08:51 AM Revision a80b66e7 (git): Added build instructions of psych and fiddle with source files of libyaml and libffi
hsbt (Hiroshi SHIBATA)
07:27 AM Misc #19030: [ANN] Migrate lists.ruby-lang.org to Google Groups
I also migrated ruby-cvs, ruby-ext and ruby-math.
and testing to post ruby-core and its integration of redmine.
hsbt (Hiroshi SHIBATA)
06:39 AM Revision ca1aa7af (git): Prevent a "method redefined" warning
http://rubyci.s3.amazonaws.com/ubuntu2004-arm/ruby-master/log/20221118T033003Z.log.html.gz
```
[21350/22024] TestIRB::ExtendCommandTest#test_show_source_end_finder/home/chkbuild/chkbuild/tmp/build/20221118T033003Z/ruby/test/irb/test_cmd....
mame (Yusuke Endoh)
06:02 AM Feature #19135 (Closed): Support `UNIXSocket` on Windows
It was merged. ioquatix (Samuel Williams)
05:56 AM Revision 417f3cd8 (git): tool/generic_erb.rb: Add a hack to prevent "unused variable" warnings
mame (Yusuke Endoh)
05:45 AM Revision e19afe36 (git): Revert "tool/generic_erb.rb: Use ERB#result_with_hash instead of #result"
This reverts commit bd148a2bdd0c1a4d7679eedcd649171cdb4234d7.
ERB#result_with_hash does not work on Ruby 2.2
https://ci.appveyor.com/project/ruby/ruby/builds/45420170
```
../tool/generic_erb.rb:33:in `block (2 levels) in <main>': undef...
mame (Yusuke Endoh)
05:39 AM Revision 096ffebb (git): Prevent a "warning: assigned but unused variable - s2"
mame (Yusuke Endoh)
05:38 AM Revision bd148a2b (git): tool/generic_erb.rb: Use ERB#result_with_hash instead of #result
to prevent the warnings:
```
./tool/generic_erb.rb:23: warning: assigned but unused variable - output
./tool/generic_erb.rb:24: warning: assigned but unused variable - vpath
```
mame (Yusuke Endoh)
04:17 AM Revision 98e9165b (git): Fix bug involving .send and overwritten methods. (#6752)
@casperisfine reporting a bug in this gist https://gist.github.com/casperisfine/d59e297fba38eb3905a3d7152b9e9350
After investigating I found it was caused by a combination of send and a c_func that we have overwritten in the JIT. For se...
Jimmy Miller
01:55 AM Revision ab4379e0 (git): Refactor RB_SPECIAL_CONST_P (#6759)
Since https://github.com/ruby/ruby/pull/6599, RUBY_IMMEDIATE_MASK also
overlaps RUBY_Qnil. Now RB_SPECIAL_CONST_P seems confusing since both
RB_IMMEDIATE_P and RB_TEST check for RUBY_Qnil while we only need to
check RUBY_Qnil besides RUB...
k0kubun (Takashi Kokubun)
12:47 AM Revision d8202a52 (git): [ruby/irb] Add an option to suppress code_around_binding
(https://github.com/ruby/irb/pull/444)
for debug.gem's `irb` command
k0kubun (Takashi Kokubun)
12:24 AM Feature #16517: mkmf.rb - changes for Windows ?
As we are adding the ability to make gems from rust added in rubygems, can we come back to this and enable this or add some kind of hook to set shell environment - if a hook is added it would work for rubyinstaller and also Ruby MSVC/ by... dsisnero (Dominic Sisneros)
 

Also available in: Atom