Project

General

Profile

Activity

From 02/07/2024 to 02/13/2024

02/13/2024

09:12 PM Revision dc5191d6 (git): [ruby/prism] Fix KOI-8 char width check
https://github.com/ruby/prism/commit/06d3747c5b kddnewton (Kevin Newton)
08:57 PM Bug #20151: Can't build Ruby 3.1 on FreeBSD 14.0
shyouhei (Shyouhei Urabe) wrote in #note-1:
> This has to be related: https://github.com/freebsd/freebsd-src/commit/af3c78886fd8d4ca5eebdbe581a459a6f6d29d6a
> ...
I beg your pardon, but based on this, we'll need at least 3.2.0 to run o...
taq (Eustaquio Rangel)
08:54 PM Revision a5869e5d (git): [PRISM] Replace assert with RUBY_ASSERT
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:54 PM Revision 83c158fd (git): [PRISM] Replace assert with rb_bug
peterzhu2118 (Peter Zhu)
08:35 PM Revision a96110f7 (git): [ruby/prism] Convert more error messages to match specs
https://github.com/ruby/prism/commit/7987b7aa20 kddnewton (Kevin Newton)
08:30 PM Revision 4d3fc96b (git): Change dsymbol_alloc to use NEWOBJ_OF
peterzhu2118 (Peter Zhu)
08:25 PM Misc #20260: ISEQ flag for prism compiler
Ahh sorry again, but actually if we introduce `Thread::Backtrace::Location#iseq`, all of this can be done in Ruby, because we could make it:
```ruby
return nil unless Thread::Backtrace::Location === loc
if loc.iseq.to_a[4][:prism]...
kddnewton (Kevin Newton)
08:13 PM Misc #20260: ISEQ flag for prism compiler
Sorry to respond again, but in thinking about it, I think `Prism.node_for` might not be right. Maybe it should be `RubyVM::PrismSyntaxTree.of`, or something else under `RubyVM` because it is specific to CRuby. kddnewton (Kevin Newton)
06:58 PM Misc #20260: ISEQ flag for prism compiler
Yes, the user-facing part for iseq is only changing `RubyVM::InstructionSequence.to_a` to include `prism: true/false`.
For error highlight to know, we will either need to change `RubyVM::AST.of` to know that it is coming from prism or...
kddnewton (Kevin Newton)
06:30 PM Misc #20260: ISEQ flag for prism compiler
I'm okay to change the internal data structure because we can change them in future.
How to change the user facing interface? Changing only `to_a` format?
For example, errror_highlight needs to know the code which comes from.
Endo...
ko1 (Koichi Sasada)
08:10 PM Revision b1964a92 (git): [ruby/prism] Add code unit APIs to location
LSPs need this because the protocol dictates that you return code
units for offsets. None of our existing APIs provided that
information, and since we hid the source it's not nearly as useful
for them. Now they can pass an encoding direc...
kddnewton (Kevin Newton)
07:49 PM Revision 6261d4b4 (git): Fix use-after-move in Symbol#inspect
The allocation could re-embed `orig_str` and invalidate the data
pointer from RSTRING_GETMEM() if the string is embedded.
Found on CI, where the test introduced in 7002e776944 ("Fix
Symbol#inspect for GC compaction") recently failed.
S...
alanwu (Alan Wu)
07:49 PM Revision 5add999d (git): Comment about not marking RSYMBOL(obj)->fstr [ci skip]
alanwu (Alan Wu)
07:35 PM Bug #20237: Unable to unshare(CLONE_NEWUSER) in Linux because of timer thread
Making the timer thread lazily is in tasklist but not sure when we can make it.
ko1 (Koichi Sasada)
07:31 PM Bug #20090: Anonymous arguments are now syntax errors in unambiguous cases
@naruse Hi - I'm new around here. I was poking around this bug as it affects our codebase at work, and I think the wrong commit may have been flagged as the backport for this bug? Checking the Git tree, I don't see 596db9c1f486d6609a4e97... eliotp123 (Eliot Partridge)
07:29 PM Bug #20111: `defined?` returns `expression` for assignment operators combined with fully qualified constants
Just curious, who cares the difference? ko1 (Koichi Sasada)
07:08 PM Misc #20238: Use prism for mk_builtin_loader.rb
kddnewton (Kevin Newton) wrote in #note-8:
> You can pass `Prism.parse(code, version: "3.3.0")` and it will parse as if it were 3.3.0. I'm fine supporting older Ruby versions for this purpose.
(off-topic)
Oh, Prism supports multi-...
ko1 (Koichi Sasada)
07:02 PM Misc #20238: Use prism for mk_builtin_loader.rb
> Using prism gem it can be newer than the source code (prism gem for ruby 3.5 syntax to build ruby 3.4, for example)
You can pass `Prism.parse(code, version: "3.3.0")` and it will parse as if it were 3.3.0. I'm fine supporting older ...
kddnewton (Kevin Newton)
06:23 PM Misc #20238: Use prism for mk_builtin_loader.rb
I'm not negative to use Prism (or using parse.y) to make it to support newest syntax in builtins.
There are some concerns.
* Installing prism.gem requires bundler for BASERUBY (already commented)
* Using prism gem it can be newer than ...
ko1 (Koichi Sasada)
07:05 PM Feature #19905: Introduce `Queue#peek`
I feel it is natural that `to_a` returns `[]` immediately if there is no enqueued item.
(`#peek` is not clear on it)
ko1 (Koichi Sasada)
05:22 PM Feature #19905: Introduce `Queue#peek`
Seems like all the use cases so far would be as well if not better handled by `to_a`. Which I admit I hoped existed a few times when debugging code that uses `Queue`. Should also be relatively straightforward to implement. byroot (Jean Boussier)
02:59 PM Feature #19905: Introduce `Queue#peek`
I would like to provide another use case for `Queue#peek`. I'm using `Queue` in a project that's running commands prone to failures. I have a queue of commands, a worker and a monitor threads. The worker pops the commands, runs them in s... sidonath (Damir Zekic)
06:51 PM Feature #20249: Introduce a backtrace-only mode for rb_bug()
* As a MRI developer, I don't need loaded features (LF) and memory maps (MM) and it interrupts me to see the backtraces. In many cases they are not needed.
* Because it is easy to repro, in many cases.
* As a bug report receiver, it ca...
ko1 (Koichi Sasada)
03:54 PM Feature #20249: Introduce a backtrace-only mode for rb_bug()
I've received feedback that if we switch the default, no one would really use the full output mode, so we shall keep the current behavior for better bug reports. I agree that Ruby users (non-CRuby/C ext developers) won't run into crashes... osyoyu (Daisuke Aritomo)
06:49 PM Revision 21297293 (git): [DOC] Doc compliance (#9944)
burdettelamar (Burdette Lamar)
06:37 PM Bug #20230 (Closed): Fix crash when passing large keyword splat to method accepting keywords and keyword splat
Fixed by commit:c20e819e8b04e84a4103ca9a036022543459c213 jeremyevans0 (Jeremy Evans)
06:26 PM Feature #20257: Rearchitect Ripper
Do you think the proposal has impact for user code? ko1 (Koichi Sasada)
06:26 PM Revision 29d04bb0 (git): [ruby/prism] Introduce `version: "3.4.0"`
This is effectively an alias for "latest" right now. In the future
it will change to be its own enum value.
https://github.com/ruby/prism/commit/2c86036022
kddnewton (Kevin Newton)
06:15 PM Revision 246005f5 (git): [ruby/prism] Fix an error when specifying the parsing version `latest`
This PR fixes following error when using `version: latest` argument.
```console
$ ruby -rprism -e "p Prism.parse('-> { it }', version: 'latest')"
-e:1:in `parse': invalid version: latest (ArgumentError)
p Prism.parse('-> { it }', versi...
koic (Koichi ITO)
06:14 PM Feature #19117: Include the method owner in backtraces, not just the method name
Oops, indeed.
It seems a bit easier to me to read with the quotes:
```
/Users/byroot/.gem/ruby/3.2.2/gems/activerecord-7.1.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:30:in 'ActiveRecord::Foo::Bar#checkin': wro...
Eregon (Benoit Daloze)
06:02 PM Feature #19117: Include the method owner in backtraces, not just the method name
It should be:
```
/Users/byroot/.gem/ruby/3.2.2/gems/activerecord-7.1.2/lib/active_record/connection_adapters/abstract/connection_pool.rb:30:in ActiveRecord::Foo::Bar#checkin: wrong number of arguments (given 0, expected 1) (Argument...
ko1 (Koichi Sasada)
10:58 AM Feature #19117: Include the method owner in backtraces, not just the method name
I think without quotes, while it looks clean for a simple example of all short paths it can be slower/harder to find the method name with more realistic cases.
For example in the case in https://bugs.ruby-lang.org/issues/19117#note-32, ...
Eregon (Benoit Daloze)
10:28 AM Feature #19117: Include the method owner in backtraces, not just the method name
> Do we need quotes?
I'm not attached to them, and I suppose removing them would also solve https://bugs.ruby-lang.org/issues/16495 / https://bugs.ruby-lang.org/issues/17107.
byroot (Jean Boussier)
09:42 AM Feature #19117: Include the method owner in backtraces, not just the method name
Do we need quotes?
From comment #28
```
./test.rb:10:in `Integer#+': String can't be coerced into Integer (TypeError)
from ./test.rb:10:in `block in Concrete.oops'
from ./test.rb:3:in `Abstract#oops'
from ./test.rb:16:in `...
ko1 (Koichi Sasada)
06:10 PM Revision a93f4e3d (git): byteslice can return nil so we have to push an "unknown" value
tenderlovemaking (Aaron Patterson)
05:16 PM Revision fdaef7a7 (git): YJIT: Fixup kwrest stack base
I was a little rushed and didn't notice that it was still using the
final stack size even though we don't grow the stack before kwrest
handling anymore. Oh well, we got a new test out of it.
Fix: cbdabd5890
alanwu (Alan Wu)
04:53 PM Bug #20234: Segfault parsing begin statement inside method definition receiver
I made an attempt to fix this at https://github.com/ruby/ruby/pull/9948. I added all the tests mentioned here. I'm not familiar with this code so I'm not 100% that this is right but in looking at `lldb` I noticed that the `expr` returned... eileencodes (Eileen Uchitelle)
04:20 PM Revision c35fea85 (git): Specialize String#byteslice(a, b) (#9939)
* Specialize String#byteslice(a, b)
This adds a specialization for String#byteslice when there are two
parameters.
This makes our protobuf parser go from 5.84x slower to 5.33x slower
```
Comparison:
decode upstream (53738 bytes): ...
tenderlovemaking (Aaron Patterson)
04:05 PM Revision a71d1ed8 (git): Fix memory leak when parsing invalid hash symbol
For example:
10.times do
100_000.times do
eval('{"\xC3": 1}')
rescue EncodingError
end
puts `ps -o rss= -p #{$$}`
end
Before:
32032
48464
66112
84192
100592
117520
1...
peterzhu2118 (Peter Zhu)
04:05 PM Revision e4272fd2 (git): Avoid allocation when passing no keywords to anonymous kwrest methods
Thanks to the new semantics from [ruby-core:115808], `**nil` is now
equivalent to `**{}`. Since the only thing one could do with anonymous
keyword rest parameter is to delegate it with `**`, nil is just as good
as an empty hash. Using ni...
alanwu (Alan Wu)
04:05 PM Misc #20193: DevMeeting-2024-02-14
* [Feature #20249] Introduce a backtrace-only mode for rb_bug() (osyoyu)
* The current crash report printed by rb_bug() is extremely long
* Terminals get quickly cluttered when developing C exts or CRuby itself
* Introduce a swit...
osyoyu (Daisuke Aritomo)
06:51 AM Misc #20193: DevMeeting-2024-02-14
* [Feature #20244] Show the conflicting another chdir block
* `Dir.chdir` is warning when in another chdir block.
```
$ ruby -e 'Dir.chdir {' -e 'Dir.chdir("/")' -e '}'
-e:2: warning: conflicting chdir during another ...
nobu (Nobuyoshi Nakada)
01:50 AM Misc #20193: DevMeeting-2024-02-14
* [Bug #20225] Inconsistent behavior of regex matching for a regex has a null loop (makenowjust)
* Onigmo has strange behavior for null (empty) loops with captures.
* Null-loop check depends on capture status.
* This behavior cau...
make_now_just (Hiroya Fujinami)
04:04 PM Bug #20264: Segfault in Enumerator#next while installing RMagick on M1 Mac
seems like
https://github.com/ruby/ruby/pull/9385
https://bugs.ruby-lang.org/issues/20085
sorah (Sorah Fukumori)
01:27 PM Bug #20264: Segfault in Enumerator#next while installing RMagick on M1 Mac
Coincidentally, I'm pretty sure that code is useless: https://github.com/ruby-gnome/pkg-config/pull/25. byroot (Jean Boussier)
01:12 PM Bug #20264: Segfault in Enumerator#next while installing RMagick on M1 Mac
The interesting parts from the upstream ticket:
```
Segmentation fault at 0x0067ffffb37006c0
ruby 3.3.0 (2023-12-25 revision 5124f9ac75) [aarch64-linux]
-- Control frame information -----------------------------------------------...
byroot (Jean Boussier)
11:39 AM Bug #20264 (Feedback): Segfault in Enumerator#next while installing RMagick on M1 Mac
I raised a bug at RMagick, they said to go to pkg-config. I raised a bug there, and they said to raise it here. Hopefully this is the right place...
https://github.com/ruby-gnome/pkg-config/issues/24
Simplest reproduction steps (al...
andy@andyjeffries.co.uk (Andy Jeffries)
03:26 PM Revision 4e481c77 (git): [PRISM] Refactors to use more locations
kddnewton (Kevin Newton)
03:26 PM Revision fe31b682 (git): [PRISM] Stop passing parser around so much
kddnewton (Kevin Newton)
03:26 PM Revision e967e062 (git): [PRISM] Switch to locations for PM_ALIAS_GLOBAL_VARIABLE_NODE, PM_ALIAS_METHOD_NODE, and PM_AND_NODE
kddnewton (Kevin Newton)
03:26 PM Revision 76ab017f (git): [PRISM] Brace style in prism_compile.c
kddnewton (Kevin Newton)
02:39 PM Revision d357d50f (git): [PRISM] Fix lambda start column number
Co-Authored-By: Kevin Newton <kddnewton@gmail.com> Nikita Vasilevsky
02:37 PM Revision b662edf0 (git): [PRISM] Combine hash compilation between hashes and keywords
kddnewton (Kevin Newton)
02:37 PM Revision c0e12142 (git): [PRISM] Fix compilation of hash with multiple merges
kddnewton (Kevin Newton)
02:09 PM Revision dedca318 (git): [ruby/prism] Fix `full_name` for constant path targets
https://github.com/ruby/prism/commit/84c10f3a2d Vinicius Stock
01:36 PM Revision 2f0f9523 (git): [ruby/irb] Fix SourceFinder's constant evaluation issue
(https://github.com/ruby/irb/pull/869)
Currently, if the signature's constant part is not defined, a NameError
would be raised.
```
irb(main):001> show_source Foo
(eval):1:in `<top (required)>': uninitialized constant Foo (NameError)
...
st0012 (Stan Lo)
01:33 PM Revision ec26786b (git): [ruby/irb] Refactor eval_path and `SourceFinder::Source`
(https://github.com/ruby/irb/pull/870)
* Assign `@eval_path` through `irb_path=` method
This simplifies the original caching logic for the `eval_path` method
and makes it easier to understand.
* Refactor SourceFinder::Source
https://...
st0012 (Stan Lo)
11:11 AM Revision b5327647 (git): extract-gems before nmake in Visual Studio workflow
* BTW this workflow is the only one doing extract-extlibs before building.
It seems building with Visual Studio and nmake has significant differences.
Eregon (Benoit Daloze)
11:11 AM Revision 9204416b (git): Revert "Try `nmake install` before `nmake test-spec`"
This reverts commit d4a6c6521aa1a5208939a2cd981a13ca01a07d2a. Eregon (Benoit Daloze)
10:04 AM Bug #20263 (Closed): Backport https://github.com/ruby/ruby/pull/9498 to Ruby 3.3
mame (Yusuke Endoh)
09:09 AM Bug #20263 (Closed): Backport https://github.com/ruby/ruby/pull/9498 to Ruby 3.3
Pull request: https://github.com/ruby/ruby/pull/9805 anton-stepanof (Anton Stepanov)
09:57 AM Revision e848848b (git): [ruby/reline] C for vi mode
(https://github.com/ruby/reline/pull/472)
https://github.com/ruby/reline/commit/d197be7c44
Otávio Schwanck dos Santos
09:38 AM Misc #20254: Add Launchable into Ruby CI
Some more background:
1, I heard the introduction of Launchable service with some committers by my former colleague (as described in #5) in closed meeting.
2. On the meeting, we've learn the service and we found the task is enough sm...
ko1 (Koichi Sasada)
09:01 AM Bug #19991: rb_register_postponed_job async-signal-unsafety causes crash in GC
I've also documented how to workaround this issue in the Datadog Ruby profiler in https://docs.datadoghq.com/profiler/profiler_troubleshooting/ruby/#segmentation-faults-in-gc_finalize_deferred-in-ruby-versions-26-to-32 although we're sti... ivoanjo (Ivo Anjo)
07:11 AM Revision 01d4d5b8 (git): Remove duplicate path-ignore entries [ci skip]
nobu (Nobuyoshi Nakada)
06:47 AM Bug #20183 (Closed): `erb/escape.so` cannot be loaded when `--with-static-linked-ext`
nobu (Nobuyoshi Nakada)
06:28 AM Bug #20262: Regex mismatch between Ruby 3.2.2 and 3.3.0
I accidentally left the "()\1" in the original post, but it should not be there and I don't see a way to change it. The code example should be:
```ruby
str = "------------abcdefg------------#3895912"
re = /\b\w*[a-zA-Z-]*\d+[\w-]{3,}\w+...
weilandia (Nick Weiland)
06:28 AM Bug #20262 (Closed): Regex mismatch between Ruby 3.2.2 and 3.3.0
This might be a duplicate of https://bugs.ruby-lang.org/issues/20098, but I cannot make it match with the backref so maybe not.
Below example matches in 3.2.2 but not in 3.3.0
``` ruby
str = "------------abcdefg------------#389591...
weilandia (Nick Weiland)
06:19 AM Bug #20098: Wrong regexp match in ruby 3.2 and 3.3
Looks to be the same bug, but I cannot make it match with the backref. Below example matches in 3.2.2 but not in 3.3.0
``` ruby
str = "------------abcdefg------------#3895912"
re = /()\1\b\w*[a-zA-Z-]*\d+[\w-]{3,}\w+\b/
re.match?(st...
weilandia (Nick Weiland)
01:56 AM Revision 038189b6 (git): Use dedicated parser_string hash function
Define and use `rb_parser_str_hash` for `rb_parser_string_t`
instead of `rb_str_hash` to remove dependency on `rb_str_hash`.
yui-knk (Kaneko Yuichiro)
01:27 AM Revision 785aa47c (git): [rubygems/rubygems] Update SPDX license list as of 2024-02-08
https://github.com/rubygems/rubygems/commit/ec3de95d79 License Update
01:07 AM Revision 1f0fa318 (git): Fix typo in asan section of building_ruby.md docs
s/copmiler-rt/compiler-rt/ kjtsanaktsidis (KJ Tsanaktsidis)
12:53 AM Bug #20246 (Closed): Unexpected behavior for Regexp in Subexpression Calls on Ruby 3.3.0
Applied in changeset commit:git|4a6384ed9358e8fb8464f6e37efb5477182f01db.
----------
Fix [Bug #20246]: Don't set next_head_exact if a capture is called (#9897)
make_now_just (Hiroya Fujinami)
12:53 AM Revision 4a6384ed (git): Fix [Bug #20246]: Don't set next_head_exact if a capture is called (#9897)
make_now_just (Hiroya Fujinami)

02/12/2024

11:40 PM Revision 8a345860 (git): Warn duplication of `__ENCODING__` on the hash
```
$ ruby -e 'h = { __ENCODING__ => 1, __ENCODING__ => 2 }'
-e:1: warning: key #<Encoding:UTF-8> is duplicated and overwritten on line 1
```
yui-knk (Kaneko Yuichiro)
09:52 PM Revision f41d8f38 (git): Comply with doc guide
burdettelamar (Burdette Lamar)
09:39 PM Revision cbdabd58 (git): YJIT: Fix kwrest calls setting SP with uninit values
We did stack_push() and then saved the SP without writing to the slots
of the new values first, which caused the GC to mark uninitialized
values. Should fix crashes like
https://github.com/ruby/ruby/actions/runs/7877298133/job/21493179294
alanwu (Alan Wu)
08:34 PM Feature #20261 (Assigned): Add symbol synonyms for '' and nil for IO method line separator arguments
[Feature 20261] For IO's line-oriented read methods, there are two special values for the line-separator argument `sep`; I'm proposing to add (user-friendlier) symbol synonyms for those values:
- `:paragraph` as synonym for `''` (rea...
burdettelamar (Burdette Lamar)
08:08 PM Misc #20193: DevMeeting-2024-02-14
* [Misc #20260] ISEQ flag for prism compiler (kddnewton)
* Would it be alright to add a flag to iseqs to say it came from the prism compiler? We need this to support error highlight.
kddnewton (Kevin Newton)
04:07 AM Misc #20193: DevMeeting-2024-02-14
* [Feature #20257] Rearchitect Ripper
* I want to have a chance to explain new Ripper's architecture.
* In short, Ripper uses semantic value stack to manage Ruby Object returned by Ripper callback methods then Ripper can't execute ...
yui-knk (Kaneko Yuichiro)
08:07 PM Revision 0536b2ce (git): Replace assert with RUBY_ASSERT in weakmap.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 80700f45 (git): Replace assert with RUBY_ASSERT in thread_sync.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 9a2b6922 (git): Replace assert with RUBY_ASSERT in rational.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 3ed59627 (git): Replace assert with RUBY_ASSERT in range.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision fd87259a (git): Replace assert with RUBY_ASSERT in numeric.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 5644d90d (git): Replace assert with RUBY_ASSERT in load.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision ea92374b (git): Replace assert with RUBY_ASSERT in id_table.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 436191ab (git): Replace assert with RUBY_ASSERT in enum.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 11ffee88 (git): Replace assert with RUBY_ASSERT in darray.h
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 7256e38f (git): Replace assert with RUBY_ASSERT in complex.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision de7a29ef (git): Replace assert with RUBY_ASSERT in compile.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 6906e502 (git): Replace assert with RUBY_ASSERT in bignum.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision 1228751a (git): Replace assert with RUBY_ASSERT in array.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Revision ac38f259 (git): Replace assert with RUBY_ASSERT in string.c
assert does not print the bug report, only the file and line number of
the assertion that failed. RUBY_ASSERT prints the full bug report, which
makes it much easier to debug.
peterzhu2118 (Peter Zhu)
08:07 PM Misc #20260: ISEQ flag for prism compiler
The PR for this work is here: https://github.com/ruby/ruby/pull/9934. kddnewton (Kevin Newton)
08:06 PM Misc #20260 (Closed): ISEQ flag for prism compiler
In order to support error highlight, there's needs to be a way to tell which compiler generated an instruction sequence (compile.c or prism_compile.c). That's because when the file is reparsed to find the node based on the node id, we ne... kddnewton (Kevin Newton)
08:03 PM Revision bb845ae8 (git): [ruby/prism] Fix typo in class variable name error
https://github.com/ruby/prism/commit/5f6c45f6fb kddnewton (Kevin Newton)
08:01 PM Revision 4f1a4665 (git): More on auto-link (#9907)
burdettelamar (Burdette Lamar)
07:51 PM Misc #20254: Add Launchable into Ruby CI
Conflict of interest: I work at Red Hat, being paid by Red Hat. I am a committer in the Ruby project. In the project, one of my interests and caring is about maintaining the CI services and infra, because the downstream Ruby RPM pakcage ... jaruga (Jun Aruga)
07:51 PM Revision 84d8dbe7 (git): Enable redefinition check for rbinc methods
nobu (Nobuyoshi Nakada)
07:48 PM Revision 1395838e (git): [PRISM] Check full lines for invalid UTF-8
kddnewton (Kevin Newton)
06:57 PM Revision 2131d04f (git): YJIT: Add support for `**kwrest` parameters
Now that `...` uses `**kwrest` instead of regular splat and
ruby2keywords, we need to support these type of methods to
support `...` well.
alanwu (Alan Wu)
06:48 PM Misc #20259 (Open): Proposal to add "ruby --irb" and / or "ruby --start-irb" to start irb (interactive ruby) via ruby (bin/ruby), via the commandline
This issue proposes to add:
a) a commandline flag to bin/ruby that allows the user to start irb,
and
b) allow the user to make use of ruby to start irb, via the commandline (thus, the
proposal's a) and b) are naturally connecte...
rubyFeedback (robert heiler)
06:38 PM Revision 7af97dc7 (git): [ruby/irb] Powerup show_source by enabling RubyVM.keep_script_lines
(https://github.com/ruby/irb/pull/862)
* Powerup show_source by enabling RubyVM.keep_script_lines
* Add file_content field to avoid reading file twice while show_source
* Change path passed to eval, don't change irb_path.
* Encapsula...
tompng (tomoya ishida)
06:02 PM Revision e878bbd6 (git): Allow `foo(**nil, &block_arg)`
Previously, `**nil` by itself worked, but if you add a block argument,
it raised a conversion error. The presence of the block argument
shouldn't change how keyword splat works.
See: <https://bugs.ruby-lang.org/issues/20064>
alanwu (Alan Wu)
06:01 PM Revision e08c1284 (git): [ruby/prism] Error messages closer to CRuby
https://github.com/ruby/prism/commit/19ffa0b980 kddnewton (Kevin Newton)
05:56 PM Revision e4d3e652 (git): YJIT: Prefer an overloaded cme if available (#9913)
YJIT: Prefer an overloaded cme if applicable k0kubun (Takashi Kokubun)
05:54 PM Revision 94bc5ad3 (git): [ruby/prism] ruby_parser translator
https://github.com/ruby/prism/commit/1925b970c7 kddnewton (Kevin Newton)
05:31 PM Bug #20253 (Closed): `Proc.dup` and `Proc#clone` don't preserve finalizers
Applied in changeset commit:git|de1a586ecc2ee7f465f0c0a69291054136a3a819.
----------
proc.c: get rid of `CLONESETUP`
[Bug #20253]
All the way down to Ruby 1.9, `Proc`, `Method`, `UnboundMethod`
and `Binding` always had their own speci...
byroot (Jean Boussier)
11:30 AM Bug #20253: `Proc.dup` and `Proc#clone` don't preserve finalizers
https://github.com/ruby/ruby/pull/9926 fixes all the issues above and a few others. byroot (Jean Boussier)
11:28 AM Bug #20253: `Proc.dup` and `Proc#clone` don't preserve finalizers
We just found yet another issue with @etienne:
```ruby
>> Proc.new { }.freeze.clone
(irb):1:in `initialize_copy': can't modify frozen Proc: #<Proc:0x000000011e3a96b0 (irb):1> (FrozenError)
from (irb):1:in `initialize_clone'
from...
byroot (Jean Boussier)
05:31 PM Revision de1a586e (git): proc.c: get rid of `CLONESETUP`
[Bug #20253]
All the way down to Ruby 1.9, `Proc`, `Method`, `UnboundMethod`
and `Binding` always had their own specific clone and dup routine.
This caused various discrepancies with how other objects behave
on `dup` and `clone. [Bug #...
byroot (Jean Boussier)
04:56 PM Revision c04782c2 (git): YJIT: Adjust the padding size of counts automatically (#9912)
k0kubun (Takashi Kokubun)
04:55 PM Revision b9f25b10 (git): YJIT: Fix insufficient type guards (#9911)
k0kubun (Takashi Kokubun)
04:53 PM Bug #20258: Socket::IPV6_RECVERR for IPv6
I have created a PR to fix the error: https://github.com/ruby/ruby/pull/9930 marek22k (Marek Küthe)
12:04 PM Bug #20258 (Closed): Socket::IPV6_RECVERR for IPv6
Hello,
I am currently trying to receive ICMP error messages in Ruby. For IPv4 there is the `Socket::IP_RECVERR` flag, which can be set, but not for IPv6 (not found unter https://docs.ruby-lang.org/en/3.2/Socket/Constants.html for exam...
marek22k (Marek Küthe)
04:27 PM Revision c3886c12 (git): [ruby/prism] Fix unary not location
https://github.com/ruby/prism/commit/861689f6d1 kddnewton (Kevin Newton)
03:57 PM Revision 16b39072 (git): [ruby/prism] Move Prism::RipperCompat to Prism::Translation::Ripper
https://github.com/ruby/prism/commit/c0331abe4f noahgibbs (Noah Gibbs)
03:57 PM Revision 78deba1a (git): [ruby/prism] Unary not name location
https://github.com/ruby/prism/commit/78190d2999 kddnewton (Kevin Newton)
03:48 PM Revision 739eec04 (git): [DOC] `:stopdoc:` directive must be on its own line (#9916)
nobu (Nobuyoshi Nakada)
02:43 PM Revision 190a55d2 (git): Drill newobj cache instead of ractor
peterzhu2118 (Peter Zhu)
01:31 PM Revision d4a6c652 (git): Try `nmake install` before `nmake test-spec`
Eregon (Benoit Daloze)
12:54 PM Feature #16828: Introduce find patterns
An easy way to understand the "backtracking" of find pattern is it works like `each_slice(n)` and doesn't actually backtrack.
So its performance is linear to the number of elements of the array being matched.
https://github.com/ruby/ru...
Eregon (Benoit Daloze)
11:28 AM Revision 06995eb4 (git): [ruby/irb] Fix exit! command warning and method behavior
(https://github.com/ruby/irb/pull/868)
* Fix exit! command warning and method behavior
* Remove arg(0) from Kernel.exit and Kernel.exit!
https://github.com/ruby/irb/commit/372bc59bf5
tompng (tomoya ishida)
10:33 AM Revision 39788e58 (git): Try prepare-gems instead of extract-gems
* `make install` uses prepare-gems. Eregon (Benoit Daloze)
10:33 AM Revision ffe1a68b (git): Skip spec failing on i686
Eregon (Benoit Daloze)
10:05 AM Revision d15301d4 (git): Exclude a problematic spec when run in CRuby via make test-spec until fixed
Eregon (Benoit Daloze)
09:56 AM Revision b19d2409 (git): Update to ruby/spec@ce834ad
Eregon (Benoit Daloze)
09:55 AM Revision 90a746d2 (git): Always extract bundled gems before running ruby/spec
* Fixes https://github.com/ruby/ruby/commit/44d74f22c8da3c13aa5363769418e2f5fd29f65a#r138276491 Eregon (Benoit Daloze)
09:27 AM Misc #20242: `--parser=prism_without_warning`
Oh right, that makes a lot more sense.
I wonder if it could be a configure flag or so to disable that warning, until it's stable enough to remove the warning entirely.
Eregon (Benoit Daloze)
08:46 AM Revision 7fc89a92 (git): Use Node for `warn_duplicate_keys` st_table keys
yui-knk (Kaneko Yuichiro)
07:50 AM Revision 4f7de1dc (git): Adjust styles [ci skip]
nobu (Nobuyoshi Nakada)
06:48 AM Revision c20e819e (git): Fix crash when passing large keyword splat to method accepting keywords and keyword splat
The following code previously caused a crash:
```ruby
h = {}
1000000.times{|i| h[i.to_s.to_sym] = i}
def f(kw: 1, **kws) end
f(**h)
```
Inside a thread or fiber, the size of the keyword splat could be much smaller
and still cause a cra...
jeremyevans (Jeremy Evans)
05:49 AM Revision 93accfdf (git): Fix [BUG] unknown node for NODE_ENCODING
It should be `return` instead of `break`, otherwise
`[BUG] dump_node: unknown node: NODE_ENCODING` happens.
yui-knk (Kaneko Yuichiro)
03:29 AM Bug #19970: Eval leaks callcache and callinfo objects on arm32 (linux)
I suspect this is the same underlying issue as #19907, but on wider platforms it only occurs with kwargs. jhawthorn (John Hawthorn)
12:46 AM Feature #20257 (Closed): Rearchitect Ripper
# Abstract
Rearchitect Ripper to provide whole semantic analysis support for Ripper and improve maintainability of Ripper.
This rearchitecture is achieved by modifying Lrama parser generator.
# Background and problem
Ripper is ...
yui-knk (Kaneko Yuichiro)

02/11/2024

11:57 PM Bug #20248 (Closed): Ruby does not build with ASAN support with clang
I updated the ASAN docs in https://github.com/ruby/ruby/commit/697ade7bda5942e372c8d6ba450dd534f0cf186f
I'm sorry for causing you to waste your time on this! Also, thanks again for the tip r.e. clang head - I included that in the docs...
kjtsanaktsidis (KJ Tsanaktsidis)
11:52 PM Revision 697ade7b (git): Update ASAN docs to reflect the current state of things
I don't really think ASAN works well at all on any version of Ruby from
before https://bugs.ruby-lang.org/issues/20001 was landed. Update the
docs to clarify what works, and what does not work.
Also there's no need to compile at `-O0`; ...
KJ Tsanaktsidis
11:51 PM Bug #20256 (Closed): Make required ASAN settings "built in" without the need for ASAN_OPTIONS env var
Applied in changeset commit:git|1d467f2255112f9e712d5d9aa6f2cd0a102fb56e.
----------
Burn default ASAN options into the built Ruby
* We always need use_sigaltstack=0 because Ruby registers sigaltstack
handlers
* We also need to disab...
Anonymous
10:25 PM Bug #20256 (Closed): Make required ASAN settings "built in" without the need for ASAN_OPTIONS env var
Currently, to compile Ruby head with ASAN, you need to export the env var `ASAN_OPTIONS=use_sigaltstack=0:detect_leaks=0`. We require `use_sigaltstack=0` because Ruby registers signal handlers with its own sigaltstack, and we require `de... kjtsanaktsidis (KJ Tsanaktsidis)
11:51 PM Revision 1d467f22 (git): Burn default ASAN options into the built Ruby
* We always need use_sigaltstack=0 because Ruby registers sigaltstack
handlers
* We also need to disable leak detection (unless RUBY_FREE_AT_EXIT is
set - I might experiment later with automatically enabling leak
detection if RUBY_...
KJ Tsanaktsidis
04:55 PM Revision c9006ddb (git): [ruby/optparse] [DOC] Add description of OptionParser#define_by_keywords
https://github.com/ruby/optparse/commit/451dea51a0 nobu (Nobuyoshi Nakada)
04:09 PM Revision a63a0c24 (git): Win32: Include stdio.h for `printf`
nobu (Nobuyoshi Nakada)
04:08 PM Revision bbccabe6 (git): [ruby/optparse] [DOC] Add missing documents
https://github.com/ruby/optparse/commit/33956ce93f nobu (Nobuyoshi Nakada)
02:41 PM Revision a3ceb691 (git): [PRISM] Fix error handling in `pm_parse_prism`
Following changes made in ruby/prism#2365 this implements error handling
for when `pm_string_mapped_init` returns `false`.
Related: ruby/prism#2207
eileencodes (Eileen Uchitelle)
01:00 PM Revision 90fe1b44 (git): Win32: Use `TARGET_OS` for word-size
It is derived from `_WIN64` pre-defined macro, at `-osname-` in
win32/setup.mak.
nobu (Nobuyoshi Nakada)
11:55 AM Revision 603392b8 (git): Win32: Use prototype
nobu (Nobuyoshi Nakada)
11:03 AM Revision ea2ea74a (git): Win32: Copy coroutine no longer exists
At 42130a64f02294dc8025af3a51bda518c67ab33d, it has been replaced with
pthread implementation.
nobu (Nobuyoshi Nakada)
10:43 AM Revision c77f736b (git): Win32: Fix pre-defined macros for platforms
Use `_WIN64` for word-size, `_M_AMD64` for CPU-specific feature. nobu (Nobuyoshi Nakada)
10:34 AM Revision aa36e44c (git): Win32: Define `HAVE_INTTYPES_H`
Suppress redefinition warnings, inttypes.h has been provided as well
as stdint.h since `_MSC_VER` 1600 (= Visual C++ 10.0 = Visual Studio
2010).
```
C:\Program Files (x86)\Windows Kits\10\include\10.0.14393.0\ucrt\inttypes.h(123): warni...
nobu (Nobuyoshi Nakada)
05:17 AM Revision 5c4657f8 (git): [ruby/irb] Polish the exit! command and its tests
(https://github.com/ruby/irb/pull/867)
* Remove IRB.irb_exit! method
It's not necessary to introduce a new method just for the exit! command
at this moment.
* Rename ExitForcedAction to ForceExit
* Move force exit tests to a dedicate...
st0012 (Stan Lo)
02:08 AM Bug #20252 (Closed): Incompatibility with the `-h` option in optparse on Ruby 3.4.0dev
nobu (Nobuyoshi Nakada)

02/10/2024

10:07 PM Revision 429eeb09 (git): [ruby/irb] Introduce exit! command
(https://github.com/ruby/irb/pull/851)
* Added failing test for when writing history on exit
* Save history on exit
* Exit early when calling Kernel.exit
* use status 0 for kernel.exit
* Added test for nested sessions
* Update lib/...
Ignacio Chiazzo Cardarello
05:40 PM Bug #20255: Embedded arrays aren't moved correctly across ractors
I sent a PR here: https://github.com/ruby/ruby/pull/9918 luke-gru (Luke Gruber)
05:31 PM Bug #20255 (Closed): Embedded arrays aren't moved correctly across ractors
`ractor.send(ary, move: true)` works incorrectly because if `ary` is embedded, the new moved object doesn't populate its own embedded space, it uses the MovedObject's embedded space.
example:
```ruby
r = Ractor.new {
inner_ary = ...
luke-gru (Luke Gruber)
03:47 PM Revision f960fbc1 (git): [ruby/optparse] Search exactly when `require_exact`
To work with options defined as `--[no]-something`.
Fix https://bugs.ruby-lang.org/issues/20252
Fix https://github.com/ruby/optparse/pull/60
https://github.com/ruby/optparse/commit/78afdab307
nobu (Nobuyoshi Nakada)
09:58 AM Revision fdd92c2d (git): Fix the variable to be checked
It should check the result of `rb_parser_search_nonascii`. yui-knk (Kaneko Yuichiro)
08:27 AM Misc #20254: Add Launchable into Ruby CI
In short, Launchable is willing to provide us their service for free. I feel it convenient to see the test results formatted, instead of the log of GitHub Actions.
As the CI results are already public information, I don't see any proble...
mame (Yusuke Endoh)
07:21 AM Misc #20254 (Closed): Add Launchable into Ruby CI
I’m a software engineer who works at Launchable, Inc.
Some Ruby CI maintainers have granted me (Naoto Ono) the permission to integrate our service, [Launchable](https://www.launchableinc.com/) into ruby/ruby. This decision was made duri...
ono-max (Naoto Ono)
05:24 AM Revision 6cafbd35 (git): YJIT: Remove unused variables
nobu (Nobuyoshi Nakada)
05:20 AM Bug #20248: Ruby does not build with ASAN support with clang
> What optimizations do you mean?
I mean it shouldn't be necessary to build with `-O0`; `-O2` or `-O3` should work (well, as much as `-O0` does) on current master.
> ...
Thanks for this. I should have done this when I first reali...
kjtsanaktsidis (KJ Tsanaktsidis)
12:23 AM Revision ea91ab69 (git): Fix constant name of `Ractor::IsolationError` message
`dest` of `const_decl_path` is `NODE_COLON2` or `NODE_COLON3` in some cases.
For example, `B::C ||= [“Not ” + “shareable”]` passes `NODE_COLON2`
and `::C ||= [“Not ” + “shareable”]` passes `NODE_COLON3`.
This commit fixes `Ractor::Isolat...
yui-knk (Kaneko Yuichiro)
12:23 AM Revision bf72cb84 (git): Include the first constant name into `Ractor::IsolationError` message
If lhs of assignment is top-level constant reference, the first
constant name is omitted from error message.
This commit fixes it.
```
# shareable_constant_value: literal
::C = ["Not " + "shareable"]
# Before
# => cannot assign unshare...
yui-knk (Kaneko Yuichiro)

02/09/2024

10:12 PM Revision e7b0a010 (git): YJIT: Add top ISEQ call counts to --yjit-stats (#9906)
k0kubun (Takashi Kokubun)
10:01 PM Revision f7467e70 (git): Split line_no and node_id before new_insn_body
Before this commit, there were many places where we had to generate
dummy line nodes to hold both the line number and the node id that
would then immediately get pulled out from the created node. Now
we pass them explicitly so that we do...
kddnewton (Kevin Newton)
09:43 PM Misc #20242: `--parser=prism_without_warning`
I think you misunderstood what I'm asking for. Right now CRuby warns with:
```
The compiler based on the Prism parser is currently experimental and compatibility with the compiler based on parse.y is not yet complete. Please report a...
kddnewton (Kevin Newton)
09:30 PM Revision e96c838c (git): [PRISM] Fix flaky memory in scope nodes
kddnewton (Kevin Newton)
08:43 PM Bug #20251: Wrong ArgumentError raised for hash as last parameter before keyword aguments
phillipp (Phillipp Röll) wrote in #note-3:
> I know and unserstand that, but still, is the raised exception not wrong? Should that not be `ArgumentError: unknown keyword: :name`?
Positional argument arity is checked before keyword ar...
jeremyevans0 (Jeremy Evans)
08:29 PM Bug #20251: Wrong ArgumentError raised for hash as last parameter before keyword aguments
I know and unserstand that, but still, is the raised exception not wrong? Should that not be `ArgumentError: unknown keyword: :name`? phillipp (Phillipp Röll)
02:15 PM Bug #20251 (Feedback): Wrong ArgumentError raised for hash as last parameter before keyword aguments
You need `{`/`}` to make the argument a `Hash` instead of a keyword argument.
```ruby
post("/persons", {name: "John Doe"})
```
The semantics around keyword arguments has been changed at 3.0.
Ruby 2.7 or earlier worked like as yo...
nobu (Nobuyoshi Nakada)
01:29 PM Bug #20251 (Feedback): Wrong ArgumentError raised for hash as last parameter before keyword aguments
Suppose we have the following method as part of an API client:
```
def post(path, params, timeout: 30)
end
```
The method is then called like this:
```
post("/persons", name: "John Doe")
```
This leads to an error messag...
phillipp (Phillipp Röll)
07:49 PM Revision 86882565 (git): [ruby/prism] Update lib/prism/ripper_compat.rb
https://github.com/ruby/prism/commit/2c53e017c1
Co-authored-by: Kevin Newton <kddnewton@gmail.com>
noahgibbs (Noah Gibbs)
07:49 PM Revision f635b4dd (git): [ruby/prism] RipperCompat: add array-refs, assigns, symbols, strings
https://github.com/ruby/prism/commit/b771c7f2ec noahgibbs (Noah Gibbs)
07:34 PM Feature #20249: Introduce a backtrace-only mode for rb_bug()
byroot wrote:
> I don't remember ever been asked to provide the full report.
Probably because e. g. a full stacktrace is a bit spammy and does not always carry the
most important information "everywhere". To explain that: I often have ...
rubyFeedback (robert heiler)
12:04 PM Feature #20249: Introduce a backtrace-only mode for rb_bug()
> I think that bug reports from the general public won't be the full version. Is that okay?
In my opinion it is. Most of the time I strip the bug report when posting it here (for example: https://bugs.ruby-lang.org/issues/20016), and ...
byroot (Jean Boussier)
11:40 AM Feature #20249: Introduce a backtrace-only mode for rb_bug()
Thank you for your comment!
byroot (Jean Boussier) wrote in #note-2:
> So I'm supportive to such change. What we could do it to default to the more complete report if Ruby is compiled with `RUBY_DEBUG=1`.
As the majority of Ruby ...
osyoyu (Daisuke Aritomo)
11:21 AM Feature #20249: Introduce a backtrace-only mode for rb_bug()
I agree that the crash reports are very long and some very long part aren't really that useful. 99% of the time only the C-level backtrace and Ruby backtrace is all you need.
So I'm supportive to such change. What we could do it to de...
byroot (Jean Boussier)
06:58 AM Feature #20249: Introduce a backtrace-only mode for rb_bug()
I've created a PoC in https://github.com/ruby/ruby/pull/9900. osyoyu (Daisuke Aritomo)
06:37 AM Feature #20249 (Open): Introduce a backtrace-only mode for rb_bug()
## Background
When a segfault or some unexpected situation occurs, `rb_bug()` is called and prints some few hundred to thousands of lines.
The most helpful parts are (arguably) "Ruby level backtrace information" and "C-level backtr...
osyoyu (Daisuke Aritomo)
05:54 PM Bug #20248: Ruby does not build with ASAN support with clang
kjtsanaktsidis (KJ Tsanaktsidis) wrote in #note-1:
> Yeah I know asan is broken. I’m currently working on fixing it.
> ...
Also, can you see if you're still stuck on a fix if you build LLVM from head? [eugenis](https://github.com/eugen...
JasonLunn (Jason Lunn)
02:22 PM Bug #20248: Ruby does not build with ASAN support with clang
kjtsanaktsidis (KJ Tsanaktsidis) wrote in #note-1:
> Yeah I know asan is broken. I’m currently working on fixing it.
> ...
What optimizations do you mean?
In the meantime, since this is known issue, I've opened https://github.com/ru...
JasonLunn (Jason Lunn)
01:02 AM Bug #20248: Ruby does not build with ASAN support with clang
Yeah I know asan is broken. I’m currently working on fixing it.
If you build the latest master branch and with optimisations enabled, it will get further than that.
The current thing I’m stuck on is that asan can cause a deadlock w...
kjtsanaktsidis (KJ Tsanaktsidis)
05:12 PM Revision 717adb56 (git): YJIT: Fallback megamorphic opt_case_dispatch (#9894)
k0kubun (Takashi Kokubun)
05:08 PM Revision 80490acf (git): More on IO doc (#9842)
burdettelamar (Burdette Lamar)
04:59 PM Bug #20253: `Proc.dup` and `Proc#clone` don't preserve finalizers
While looking at this, it appears that instance variables are also not copied over in `Proc#dup`, but somehow are in `Proc#clone`:
```ruby
def ivar_dup(obj)
obj.instance_variable_set(:@foo, 1)
p [:dup, obj.dup.instance_variable...
byroot (Jean Boussier)
04:47 PM Bug #20253 (Closed): `Proc.dup` and `Proc#clone` don't preserve finalizers
While reviewing the fix for [Bug #20250] @peterzhu2118 pointed that `FL_FINALIZE` should probably also be cleared.
However after some extra testing, it appears `Object#dup` and `Object#clone` do copy over the finalizer (which makes se...
byroot (Jean Boussier)
04:39 PM Bug #20250 (Closed): Crash with "Object ID seen, but not in mapping table: proc" error
Applied in changeset commit:git|d19d683a354530a27b4cbb049223f8dc70c75849.
----------
rb_obj_setup: do not copy RUBY_FL_SEEN_OBJ_ID
[Bug #20250]
We're seting up a new instance, so it never had an associated
object_id.
byroot (Jean Boussier)
01:31 PM Bug #20250: Crash with "Object ID seen, but not in mapping table: proc" error
Patch: https://github.com/ruby/ruby/pull/9903
Also this bug affect all Ruby versions since the new `object_id` implementation back in 2.7, I got all of them to crash on it.
byroot (Jean Boussier)
12:42 PM Bug #20250: Crash with "Object ID seen, but not in mapping table: proc" error
Alright, it's a bug in `#clone`, I managed to reduce it to:
```ruby
proc = Proc.new { }
proc.object_id
proc.clone
GC.start
```
Shouldn't be too hard to figure out. IIRC `Proc#clone` was modified recently, the flag that indicat...
byroot (Jean Boussier)
12:30 PM Bug #20250: Crash with "Object ID seen, but not in mapping table: proc" error
I had a quick look and this is very interesting. As far as I can tell `cached_object_id` for this Proc, so the most likely explanation is that some other part of the codebase is messing with the object flags.
I'll try to dig deeper.
byroot (Jean Boussier)
10:11 AM Bug #20250 (Closed): Crash with "Object ID seen, but not in mapping table: proc" error

Hello, I experienced a crash which I was able to reliably reproduce with the following:
``` ruby
require 'bundler/inline'
gemfile(true) do
source 'https://rubygems.org'
gem 'activesupport', '7.1.3'
end
require 'act...
zetter (Chris Zetter)
04:38 PM Revision d19d683a (git): rb_obj_setup: do not copy RUBY_FL_SEEN_OBJ_ID
[Bug #20250]
We're seting up a new instance, so it never had an associated
object_id.
byroot (Jean Boussier)
04:36 PM Bug #20252 (Closed): Incompatibility with the `-h` option in optparse on Ruby 3.4.0dev
An incompatibility has arisen when using optparse with Ruby 3.4.0dev. Below are the steps to reproduce:
```ruby
# example.rb
require 'optparse'
OptionParser.new do |opts|
opts.on('--[no-]foo')
end.parse!
```
## Expected (...
koic (Koichi ITO)
04:27 PM Revision cf1cd215 (git): [ruby/prism] Significantly faster offset cache for parser
https://github.com/ruby/prism/commit/8cd92eef79 kddnewton (Kevin Newton)
04:26 PM Revision 5c2d96df (git): [PRISM] Implement opt_case_dispatch
kddnewton (Kevin Newton)
04:26 PM Revision a4ba62b6 (git): [PRISM] Refactor case nodes for only one pass through when
kddnewton (Kevin Newton)
03:16 PM Misc #20222 (Closed): Dedup-ing clarification
Thank you! This helps explain it. kddnewton (Kevin Newton)
11:25 AM Misc #20222: Dedup-ing clarification
For the full context see [Feature #8992].
It's true that it's a bit questionable that it's treated as an optimization, but realistically speaking no-one is compiling code without optimizations, it's just for MRI developers.
Also `e...
byroot (Jean Boussier)
12:28 PM Revision 08b77dd6 (git): Remove unused bind argument from eval_make_iseq
eightbitraptor (Matt V-H)
10:58 AM Revision db73226b (git): [ruby/optparse] Adjust arguments for lambda-callbacks
Rake uses [lambda] as callbacks.
Calling it without omitted argument raises an `ArgumentError`.
lambda: https://github.com/ruby/rake/blob/master/lib/rake/application.rb#L543
https://github.com/ruby/optparse/commit/213cb03b59
nobu (Nobuyoshi Nakada)
10:58 AM Revision 2c6767b7 (git): [ruby/optparse] Respect default values in block parameters
Fix https://github.com/ruby/optparse/pull/55
https://github.com/ruby/optparse/commit/9d53e74aa4
nobu (Nobuyoshi Nakada)
09:59 AM Misc #20238: Use prism for mk_builtin_loader.rb
That means that `ruby` package on FreeBSD 13 can also not use any bundled gem, e.g. bigdecimal when 3.4 comes out. So it's very clearly an incomplete Ruby installation.
A complete Ruby installation includes RubyGems and bundled gems (in...
Eregon (Benoit Daloze)
06:30 AM Misc #20238: Use prism for mk_builtin_loader.rb
Ex. System ruby didn't contain `Bundler` in `ruby` package of FreeBSD 13. `rubygem-bundler` is separated package from ruby.
```
[hsbt@freebsd13 /usr/home/hsbt]$ ruby -v -rrubygems -rbundler -e "puts Bundler::VERSION"
ruby 3.1.4p223 (202...
hsbt (Hiroshi SHIBATA)
08:52 AM Revision 5e12b757 (git): Remove unavailable filters for merge_group event
actionlint says:
- "branches" filter is not available for merge_group event. it is only for push, pull_request, pull_request_target, workflow_run events [events]
- "paths" filter is not available for merge_group event. it is only for pus...
znz (Kazuhiro NISHIYAMA)
05:40 AM Revision 007c75ce (git): Skip to install bundled gems that is C extension and build failed.
Ex. We can't build syslog gem in Windows platform. We should skip install
syslog as bundled gems.
hsbt (Hiroshi SHIBATA)
05:20 AM Revision 33c1e082 (git): Remove ruby object from string nodes
String nodes holds ruby string object on `VALUE nd_lit`.
This commit changes it to `struct rb_parser_string *string`
to reduce dependency on ruby object.
Sometimes these strings are concatenated with other string
therefore string concate...
yui-knk (Kaneko Yuichiro)
03:31 AM Revision f7a407ca (git): [ruby/optparse] Fix `require_exact` to work with options defined as `--[no]-something`
https://github.com/ruby/optparse/commit/4e346ad337 fatkodima (Dima Fatko)
03:21 AM Revision 50bcaa62 (git): [ruby/optparse] Escape backslashes
https://github.com/ruby/optparse/commit/b14c2c644d nobu (Nobuyoshi Nakada)
02:09 AM Revision 0923a988 (git): Move clean-up after table rebuilding
Suppress a false positive alert by CodeQL. nobu (Nobuyoshi Nakada)
01:08 AM Revision 76f0eec2 (git): Fix a benchmark to avoid leaving a garbage file
k0kubun (Takashi Kokubun)
01:07 AM Revision 2a57e6e6 (git): [ruby/rdoc] Don't document aliases with trailing `:nodoc` directive
Attribute readers and writers can be marked as `:nodoc` to keep them
undocumented:
```ruby
attr_reader :name # :nodoc:
```
For aliases this behaviour should be the same:
```ruby
alias_method :old :new # :nodoc:
```
https://github.com...
p8 (Petrik de Heus)
12:53 AM Revision 5d32e328 (git): YJIT: Refactor recv_known_class to Option (#9895)
k0kubun (Takashi Kokubun)
12:41 AM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
Replying to kjtsanaktsidis, I tried building our docker image using ruby-install as suggested here:
https://github.com/ruby/ruby/pull/9371#issuecomment-1893851123
and that caused problems with permissions, requiring sudo for instal...
navels (Lee Nave)
12:30 AM Bug #20246: Unexpected behavior for Regexp in Subexpression Calls on Ruby 3.3.0
This is a bug in regex optimization.
Some optimizations have been disabled for memoization since 3.3.0. Therefore, another optimization was enabled, and that bug has surfaced.
By complicating the content of the first loop, we can confi...
make_now_just (Hiroya Fujinami)

02/08/2024

11:52 PM Revision e2aa00ca (git): YJIT: Remove unnecessary casts for chain_depth (#9893)
k0kubun (Takashi Kokubun)
11:47 PM Revision 5cbca911 (git): YJIT: Allow tracing a counted exit (#9890)
* YJIT: Allow tracing a counted exit
* Avoid clobbering caller-saved registers
k0kubun (Takashi Kokubun)
11:03 PM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
https://github.com/ruby/ruby/pull/9371 is already backported into `ruby_3_3`.
https://github.com/ruby/ruby/commit/7f97e3540ce448b501bcbee15afac5f94bb22dd9
hsbt (Hiroshi SHIBATA)
08:39 PM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
To everyone saying they’re blocked by this bug: how are you installing your Ruby? The workaround in https://bugs.ruby-lang.org/issues/20085#note-5 should be pretty straightforward and get you unblocked.
Of course we need to fix the co...
kjtsanaktsidis (KJ Tsanaktsidis)
04:18 PM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
I can't deploy apps with Kamal (e.g. Docker) because of this crash dorianmariefr (Dorian Marié)
11:01 PM Bug #20248 (Closed): Ruby does not build with ASAN support with clang
The [instructions](https://github.com/ruby/ruby/blob/master/doc/contributing/building_ruby.md) for building Ruby with ASAN enabled do not work when using clang to build.
Given a trivial Dockerfile such as:
```
FROM gcr.io/clang-dock...
JasonLunn (Jason Lunn)
10:27 PM Bug #20247: net/http/header limits are too low
The upstream repo didn't have info for bug reports in the README, so I looked at the main ruby/ruby instructions instead.
I have filed the same issue with upstream: https://github.com/ruby/net-http/issues/173
dpsi (Darien Imai)
09:58 PM Bug #20247: net/http/header limits are too low
This should be reported upstream: https://github.com/ruby/net-http and can be found at https://github.com/ruby/net-http/commit/c245f7f9c845f1e7534b4e50b69e94ca9d083ca7.
Based on my reading (https://www.geekersdigest.com/max-http-reque...
austin (Austin Ziegler)
09:33 PM Bug #20247 (Closed): net/http/header limits are too low
Hello, some of my HTTP tests are failing on Ruby 3.3 due to ArgumentError too long. I am trying to update from Ruby 2.7. I did not see any mention of this change in the net/http changelog, but looking at git history, the limit was added... dpsi (Darien Imai)
07:36 PM Revision 4a40364c (git): [PRISM] Run opt init before parsing
kddnewton (Kevin Newton)
07:36 PM Revision 3ecfc3e3 (git): [PRISM] Support the DATA constant
kddnewton (Kevin Newton)
06:18 PM Misc #20238: Use prism for mk_builtin_loader.rb
> It seems not working if BASERUBY is system ruby on Linux distribution because these environment is separated ruby, rubygems and bundler packages.
I tried it on Ubuntu 22.04, and it worked. We already use ERB of baseruby, so it should ...
k0kubun (Takashi Kokubun)
05:03 PM Revision 19362784 (git): YJIT: Maintain MapToLocal that is just upgraded (#9876)
k0kubun (Takashi Kokubun)
04:53 PM Revision 3e03981f (git): [PRISM] Compile constant paths with optimizations
kddnewton (Kevin Newton)
04:53 PM Revision 54295ba5 (git): [PRISM] Compile constant reads using opt_getconstant_path
kddnewton (Kevin Newton)
04:53 PM Revision b2d468fc (git): [PRISM] Refactor call opts to only check for specific ids
kddnewton (Kevin Newton)
04:03 PM Revision 33974498 (git): YJIT: Report invalidation counts in non-stats mode (#9878)
The `invalidation_count` and `invalidate_*` counters are all incremented
using `incr_counter!` without a guard on stats mode, so they can be made
always available.
This could be to helpful in investigating where, how often, and what
typ...
jhawthorn (John Hawthorn)
04:03 PM Revision 50b4ef29 (git): YJIT: Use jit_prepare_call_with_gc as much as possible (#9874)
* YJIT: Use jit_prepare_call_with_gc as much as possible
* Stop assuming vm_defined doesn't make a call
k0kubun (Takashi Kokubun)
04:02 PM Revision 19839498 (git): [ruby/prism] Looks like Symbol#name wasn't a thing in 2.7, so need to switch back to to_s
https://github.com/ruby/prism/commit/0b90c9a398 noahgibbs (Noah Gibbs)
04:02 PM Revision 0c735530 (git): [ruby/prism] Add Kevin's visit_all change and change the parent class to Compiler.
https://github.com/ruby/prism/commit/bbdba3f42d
Co-Authored-By: Kevin Newton <kddnewton@gmail.com>
noahgibbs (Noah Gibbs)
04:02 PM Revision f8b8a678 (git): [ruby/prism] Update lib/prism/ripper_compat.rb
https://github.com/ruby/prism/commit/03addf2d3d
Co-authored-by: Kevin Newton <kddnewton@gmail.com>
noahgibbs (Noah Gibbs)
04:02 PM Revision 3f0aa554 (git): [ruby/prism] Update lib/prism/ripper_compat.rb
https://github.com/ruby/prism/commit/5eac08f699
Co-authored-by: Kevin Newton <kddnewton@gmail.com>
noahgibbs (Noah Gibbs)
04:02 PM Revision c1aba5d9 (git): [ruby/prism] Update lib/prism/ripper_compat.rb
https://github.com/ruby/prism/commit/8271ce5ec9
Co-authored-by: Kevin Newton <kddnewton@gmail.com>
noahgibbs (Noah Gibbs)
04:02 PM Revision 70bc4ce3 (git): [ruby/prism] Update lib/prism/ripper_compat.rb
https://github.com/ruby/prism/commit/6e2bf9c8cd
Co-authored-by: Kevin Newton <kddnewton@gmail.com>
noahgibbs (Noah Gibbs)
04:02 PM Revision 6aceb91d (git): [ruby/prism] Update lib/prism/ripper_compat.rb
https://github.com/ruby/prism/commit/bce0a5c916
Co-authored-by: Kevin Newton <kddnewton@gmail.com>
noahgibbs (Noah Gibbs)
04:02 PM Revision 366af467 (git): [ruby/prism] RipperCompat: support for more features.
* add bin/prism ripper to compare Ripper output
* block arg handling is quirky, do it per-call-site
* block required params
* boolean values
* various assign-operator support
* breaks, early fragile begin/rescue/end
* more fixtures being...
noahgibbs (Noah Gibbs)
03:49 PM Revision c6b39121 (git): [DOC] Improve flags of string
peterzhu2118 (Peter Zhu)
03:22 PM Revision b74c8abd (git): YJIT: Skip pushing a frame for Hash#empty? (#9875)
k0kubun (Takashi Kokubun)
03:13 PM Bug #20245 (Closed): Crash when checking symbol encoding
Applied in changeset commit:git|01fd262e62076277a41af72ea13f20deb1b462a2.
----------
Fix crash when checking symbol encoding
[Bug #20245]
We sometimes pass in a fake string to sym_check_asciionly. This can crash
if sym_check_asciionly...
peterzhu2118 (Peter Zhu)
03:12 PM Revision 01fd262e (git): Fix crash when checking symbol encoding
[Bug #20245]
We sometimes pass in a fake string to sym_check_asciionly. This can crash
if sym_check_asciionly raises because it creates a CFP with the fake
string as the receiver which will crash if GC tries to mark the CFP.
For exampl...
peterzhu2118 (Peter Zhu)
02:17 PM Revision 6756dbf3 (git): Update bundled gems list at 443c5c06ac2be84059a7c4435c37de [ci skip]
git[bot]
02:17 PM Revision 443c5c06 (git): Bundle rbs-3.4.4 (#9883)
soutaro (Soutaro Matsumoto)
09:19 AM Bug #20246 (Closed): Unexpected behavior for Regexp in Subexpression Calls on Ruby 3.3.0
Hello! A few days ago, after migration on 3.3.0 I have faced with issue inside subexpression calls.
An expected result on Ruby up to 3.3.0:
```ruby
'1.2.3'[/(\d+)(\.\g<1>){2}/] # => "1.2.3"
```
An actual result on Ruby 3.3.0:
...
bestwebua (Vladislav Trotsenko)
09:08 AM Revision 34581410 (git): Extract `RBIMPL_VA_OPT_ARGS`
Similar to splat argument in Ruby, which be expanded to `__VA_ARGS__`
with a leading comma if any arguments given, otherwise empty.
nobu (Nobuyoshi Nakada)
09:08 AM Revision f3cc1f9a (git): Show actual imemo type when unexpected type
nobu (Nobuyoshi Nakada)
09:08 AM Revision d31a12a2 (git): Optional detail info at assertion failure
nobu (Nobuyoshi Nakada)
08:28 AM Revision 0292d1b7 (git): Update bundled gems list as of 2024-02-07
git[bot]
08:19 AM Bug #20184: Ruby segfaults on Fly.io with 256 MB RAM
Backport PR for 3.3: https://github.com/ruby/ruby/pull/9805 anton-stepanof (Anton Stepanov)
08:15 AM Revision 482b82ae (git): Bump typeprof to 0.21.10
mame (Yusuke Endoh)
06:29 AM Revision 908cedf7 (git): Removed accidentally commit for lockfile
hsbt (Hiroshi SHIBATA)
06:27 AM Revision 70bb9cf0 (git): [rubygems/rubygems] rake vendor:install
https://github.com/rubygems/rubygems/commit/c38a96ceae hsbt (Hiroshi SHIBATA)
06:27 AM Revision 75c5e1a1 (git): [rubygems/rubygems] Removed unnecessary disabling of Style/RedundantParentheses
https://github.com/rubygems/rubygems/commit/2361527c45 hsbt (Hiroshi SHIBATA)
06:07 AM Revision 43af2060 (git): Update default gems list at a35cade79125d2ae99cea01914939d [ci skip]
git[bot]
05:43 AM Revision a35cade7 (git): [rubygems/rubygems] Improve assertion
https://github.com/rubygems/rubygems/commit/7f2f2b898c
Co-authored-by: Martin Emde <martin.emde@gmail.com>
deivid (David Rodríguez)
05:43 AM Revision c2362126 (git): [rubygems/rubygems] Use deprecation helper for deprecation warning
https://github.com/rubygems/rubygems/commit/d1963bf1a6 deivid (David Rodríguez)
05:43 AM Revision 0c71fb4b (git): [rubygems/rubygems] Run definition specs in an isolated location
And consistently pass Pathname's to `Definition.new` like production
code does.
https://github.com/rubygems/rubygems/commit/660def5b68
deivid (David Rodríguez)
05:43 AM Revision 5500f880 (git): [rubygems/rubygems] Fix incorrect 4th parameter to Definition.new
https://github.com/rubygems/rubygems/commit/54948e428d deivid (David Rodríguez)
05:43 AM Revision e0412077 (git): [rubygems/rubygems] Move `subject` to top level context
https://github.com/rubygems/rubygems/commit/331c415af0 deivid (David Rodríguez)
05:43 AM Revision 24d5e717 (git): [rubygems/rubygems] Refactor lockfile generation
https://github.com/rubygems/rubygems/commit/6a0c03c77f deivid (David Rodríguez)
05:43 AM Revision debc5aae (git): [rubygems/rubygems] Remove unused parameter
https://github.com/rubygems/rubygems/commit/085eda7147 deivid (David Rodríguez)
05:43 AM Revision ce2618c6 (git): [ruby/strscan] Bump version
https://github.com/ruby/strscan/commit/ba338b882c Sutou Kouhei
05:43 AM Revision 39f2e37f (git): [ruby/strscan] Don't add begin to length for new string slice
(https://github.com/ruby/strscan/pull/87)
Fixes https://github.com/ruby/strscan/pull/86
https://github.com/ruby/strscan/commit/c17b015c00
headius (Charles Nutter)
05:43 AM Revision 5afae77c (git): [ruby/strscan] Bump version
https://github.com/ruby/strscan/commit/842845af1f Sutou Kouhei
05:43 AM Revision e1834cdf (git): [ruby/fiddle] Set changelog_uri gem metadata
(https://github.com/ruby/fiddle/pull/138)
See https://guides.rubygems.org/specification-reference/#metadata for changelog_uri metadata.
https://github.com/ruby/fiddle/commit/0bd8e96adc
Masato Nakamura
03:06 AM Revision ce6054a6 (git): Move an embedded directive outside macro arguments
Suppress warnings/errors by -Wembedded-directive with `-std=c99` on
macOS.
nobu (Nobuyoshi Nakada)
02:28 AM Revision 9f1afefa (git): Now we can use ruby analysis with large runner
hsbt (Hiroshi SHIBATA)
01:17 AM Misc #20222: Dedup-ing clarification
Seems like a valid optimization to me and is similar to identity of small integers versus heap allocated bignums. alanwu (Alan Wu)
12:36 AM Revision 04d42650 (git): Remove obsoleted rb_vm_opt_cfunc_p
That was added for MJIT's inlining decisions, but we no longer have MJIT. k0kubun (Takashi Kokubun)

02/07/2024

09:26 PM Revision 0e1f22ac (git): [ruby/prism] Dev-only CLI
We keep adding more scripts to /bin that are doing the same kinds
of processing. Instead, this commit consolidates them all into a
single CLI that shares the same logic so that we can consistently
read files in the same way.
It keeps ar...
kddnewton (Kevin Newton)
07:42 PM Revision 1b68b459 (git): [ruby/prism] Commit Kevin's suggestion to simplify grabbing the operator.
https://github.com/ruby/prism/commit/874ba7a1f4
Co-Authored-By: Kevin Newton <kddnewton@gmail.com>
noahgibbs (Noah Gibbs)
07:42 PM Revision 5b7baa04 (git): [ruby/prism] More different block-call syntaxes, support more types of method calls
https://github.com/ruby/prism/commit/40cf114a24 noahgibbs (Noah Gibbs)
07:42 PM Revision 73d222e1 (git): [ruby/prism] Support &. calls and calling with blocks, test with fixtures
https://github.com/ruby/prism/commit/e346fa583a noahgibbs (Noah Gibbs)
07:42 PM Revision b1310940 (git): [ruby/prism] RipperCompat: support more kinds of method calls and operators.
Add tests. Start parsing some simpler fixture code.
https://github.com/ruby/prism/commit/997f4191d8
noahgibbs (Noah Gibbs)
06:37 PM Revision a5c871e2 (git): Update default gems list at fcc8df622a47a99c3df9889ec7efaf [ci skip]
git[bot]
06:36 PM Revision fcc8df62 (git): Bump prism version
kddnewton (Kevin Newton)
05:48 PM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
Getting closer...backport merged to 3.3.0. Anyone familiar with the release process know when the new binaries will land? navels (Lee Nave)
05:15 PM Revision b2392c6b (git): Fix memory leak when parsing invalid pattern matching
If the pattern matching is invalid, then the pvtbl would get leaked. For
example:
10.times do
100_000.times do
eval(<<~RUBY)
case {a: 1}
in {"a" => 1}
end
RUBY
rescue SyntaxE...
peterzhu2118 (Peter Zhu)
04:59 PM Revision f741b05d (git): Update default gems list at 0b7f51683446c81d7352d7d2eab9f4 [ci skip]
git[bot]
04:57 PM Revision 0b7f5168 (git): [ruby/irb] Bump version to v1.11.2
(https://github.com/ruby/irb/pull/865)
https://github.com/ruby/irb/commit/afe1f459cc
st0012 (Stan Lo)
04:55 PM Misc #20238: Use prism for mk_builtin_loader.rb
hsbt (Hiroshi SHIBATA) wrote in #note-1:
> It seems not working if BASERUBY is system ruby on Linux distribution because these environment is separated ruby, rubygems and bundler packages. It should be using repository version of prism.
...
Eregon (Benoit Daloze)
03:15 PM Misc #20238: Use prism for mk_builtin_loader.rb
I tried to get that working, but it seems like the extensions are built too late. We need prism earlier in the process to build the core files first. Maybe there's a way, but @k0kubun and I couldn't find it. kddnewton (Kevin Newton)
04:54 PM Revision aad3c36b (git): [ruby/prism] Support for Ruby 2.7
https://github.com/ruby/prism/commit/1a15b70a8e kddnewton (Kevin Newton)
04:38 PM Bug #20245 (Closed): Crash when checking symbol encoding
GitHub PR: https://github.com/ruby/ruby/pull/9871
We sometimes pass in a fake string to sym_check_asciionly. This can crash if sym_check_asciionly raises because it creates a CFP with the fake string as the receiver which will crash i...
peterzhu2118 (Peter Zhu)
04:35 PM Feature #20244 (Closed): Show the conflicting another chdir block
`Dir.chdir` is warning when in another `chdir` block.
```sh-session
$ ruby -e 'Dir.chdir {' -e 'Dir.chdir("/")' -e '}'
-e:2: warning: conflicting chdir during another chdir block
```
If two `chdir`s are far apart, it can be diff...
nobu (Nobuyoshi Nakada)
03:42 PM Revision aed052ce (git): [PRISM] Revert incorrect frozen string literal handling
kddnewton (Kevin Newton)
02:59 PM Revision 5f4245e7 (git): [ruby/irb] Polish tracer integration and tests
(https://github.com/ruby/irb/pull/864)
* Remove useless ivar
* Simplify tracer test setup
* Treat tracer like a normal development dependency
* Only require ext/tracer when value is truthy
* Make tracer integration skip IRB traces
...
st0012 (Stan Lo)
02:44 PM Revision 164c18af (git): [ruby/prism] Correct handle recover parameters on tokenize for parser translation
https://github.com/ruby/prism/commit/63979de21d kddnewton (Kevin Newton)
01:46 PM Bug #20237: Unable to unshare(CLONE_NEWUSER) in Linux because of timer thread
kjtsanaktsidis (KJ Tsanaktsidis) wrote in #note-6:
> Is this enough to meet your needs? If so, I can close this out.
Maybe, yes. It's unfortunate for me to rewrite a few lines of Ruby into 100~200 lines of C++, though.
I wonder whet...
hanazuki (Kasumi Hanazuki)
09:44 AM Bug #20237: Unable to unshare(CLONE_NEWUSER) in Linux because of timer thread
> It looks something like this works:
Won't win any awards for beauty perhaps, but gets the job done!
Is this enough to meet your needs? If so, I can close this out. Otherwise, perhaps a good next step would be to open a new featur...
kjtsanaktsidis (KJ Tsanaktsidis)
12:13 PM Misc #20242: `--parser=prism_without_warning`
Do you have an example? That could help to clarify the need for this.
Is it problematic to modify these tests/specs to accept Prism warnings too? I think that would be best (since it would be needed longer-term anyway).
For compatibili...
Eregon (Benoit Daloze)
11:34 AM Revision 9ebaf7a8 (git): Run CodeQL using macos-arm-oss only on ruby/ruby
nobu (Nobuyoshi Nakada)
11:03 AM Revision e965c5a1 (git): Keep cpp build with ubuntu-latest
hsbt (Hiroshi SHIBATA)
09:33 AM Revision 78898c53 (git): Refer gmp to macOS build
hsbt (Hiroshi SHIBATA)
09:33 AM Revision 5d5d27a6 (git): readline-ext is extracted bundled gems at Ruby 3.3
hsbt (Hiroshi SHIBATA)
09:28 AM Bug #20243: M:N threading VM_ASSERT failure in rb_current_execution_context with clang 17 (on Linux)
yeah you definitely can't tell the compiler you're clobbering `%fs`
```
../thread_pthread.c:1166:20: error: unknown register name 'fs' in asm
1166 | __asm__("" ::: "fs", "memory");
| ^
1 error generat...
kjtsanaktsidis (KJ Tsanaktsidis)
09:18 AM Bug #20243 (Open): M:N threading VM_ASSERT failure in rb_current_execution_context with clang 17 (on Linux)
When building with Clang 17 and `-DVM_CHECK_MODE=1` (with the following configure)
```
optflags="-ggdb3 -fno-omit-frame-pointer -fno-optimize-sibling-calls -O3" cflags="-DVM_CHECK_MODE=1" CC=clang ../configure --prefix=/home/kj/ruby...
kjtsanaktsidis (KJ Tsanaktsidis)
09:04 AM Feature #9113: Ship Ruby for Linux with jemalloc out-of-the-box
We've been using jemalloc since 2018 and it cut our memory use to 1/5, it also stopped us needing to restart our app every 3-4 days as the memory slowly leaked. It is staggering to me why this isn't the default, until we discovered jemal... hackeron (Roman Gaufman)
08:42 AM Bug #20221 (Closed): ASAN: make test-basic: un-prefixed symbol leakage
Applied in changeset commit:git|565ef06e917c6f326f8d528dc8fa6c6de88a8753.
----------
Ignore _odr_asan symbols in leaked-globals
ASAN includes these to detect violations of the ODR rule.
[Bug #20221]
Anonymous
08:42 AM Revision 565ef06e (git): Ignore _odr_asan symbols in leaked-globals
ASAN includes these to detect violations of the ODR rule.
[Bug #20221]
KJ Tsanaktsidis
08:27 AM Revision 42c36269 (git): The default ram size is 13GB at macos runner
hsbt (Hiroshi SHIBATA)
08:27 AM Revision 66d6695f (git): Try to run with large runner
hsbt (Hiroshi SHIBATA)
08:27 AM Revision 84070443 (git): Update latest version of CodeQL
hsbt (Hiroshi SHIBATA)
07:06 AM Revision d95d3484 (git): omit tests related legacy provider
It failed with recent update of FreeBSD
https://rubyci.s3.amazonaws.com/freebsd13/ruby-master/log/20240207T023002Z.fail.html.gz
hsbt (Hiroshi SHIBATA)
06:44 AM Bug #20239 (Closed): Segmentation fault when using Regex on a large String
Applied in changeset commit:git|75aaeb35b82da26359b9418d2963384d0c55839c.
----------
[Bug #20239] Fix overflow at down-casting
nobu (Nobuyoshi Nakada)
06:14 AM Revision 75aaeb35 (git): [Bug #20239] Fix overflow at down-casting
nobu (Nobuyoshi Nakada)
05:46 AM Revision 8bd83bb1 (git): [rubygems/rubygems] fix flaky tests
https://github.com/rubygems/rubygems/commit/0e87ae032d Kim Emmanuel
05:46 AM Revision 0edf5a71 (git): [rubygems/rubygems] #to_spec must fallback for prereleases always
https://github.com/rubygems/rubygems/commit/6302798a32 Kim Emmanuel
05:46 AM Revision aaef443a (git): [rubygems/rubygems] release requirement may load prerelease when sole option
https://github.com/rubygems/rubygems/commit/7990771939 Kim Emmanuel
05:46 AM Revision 5ddf4f5c (git): [rubygems/rubygems] fix Gem::Dependency#to_spec returning nil when prerelease is the only available version
https://github.com/rubygems/rubygems/commit/a7dcc7214b Kim Emmanuel
03:21 AM Revision 2dba4413 (git): [ruby/prism] Even more ripper compat
https://github.com/ruby/prism/commit/47a602dc1c kddnewton (Kevin Newton)
01:59 AM Revision 64b6a018 (git): Fix test session reuse but expire (#9824)
* OpenSSL 3.2.1 30 Jan 2024 is also broken
Import 45064610725ddd81a5ea3775da35aa46985bc789 from ruby_3_3 branch
tentatively.
NARUSE, Yui
01:49 AM Revision e34505c6 (git): [ruby/prism] More visitors and tests for RipperCompat
Part of issue #2354
https://github.com/ruby/prism/commit/cb28edae34
noahgibbs (Noah Gibbs)
01:38 AM Revision ae13f853 (git): Add test-all to prism
kddnewton (Kevin Newton)
 

Also available in: Atom