Project

General

Profile

Activity

From 11/23/2024 to 11/29/2024

11/29/2024

11:53 PM Feature #20770: A *new* pipe operator proposal
austin (Austin Ziegler) wrote in #note-53:
> I don't entirely agree. The ambiguity still exists because there is (more or less) an implicit block behaviour. If `_` already exists in the current scope, *both* the use of a pipe operator an...
AlexandreMagro (Alexandre Magro)
07:25 PM Feature #20770: A *new* pipe operator proposal
AlexandreMagro (Alexandre Magro) wrote in #note-52:
> austin (Austin Ziegler) wrote in #note-50:
> ...
Not necessarily. I don't know much about how the parser works to produce the AST, but if it is able to do a *small* bit of backtrack...
austin (Austin Ziegler)
06:19 PM Feature #20770: A *new* pipe operator proposal
austin (Austin Ziegler) wrote in #note-50:
> As I said, I don't think Ruby needs a pipe operator, but I wonder if a *different* approach might be taken. In irb, `_` is automatically assigned the result of the previous expression (well, ...
AlexandreMagro (Alexandre Magro)
05:55 PM Feature #20770: A *new* pipe operator proposal
lpogic (Łukasz Pomietło) wrote in #note-49:
> I wanted _str_, _a_simple_json_ and _a_ to be treated as variables, maybe method arguments but impossible to reduce to one line.
If these variables need to be explicit and cannot be reduc...
AlexandreMagro (Alexandre Magro)
05:27 PM Feature #20770: A *new* pipe operator proposal
lpogic (Łukasz Pomietło) wrote in #note-49:
> The notation `a |>= b` could be considered syntactic sugar for `a = a |> b`. Please remember that most binary operators in Ruby have similar syntactic sugar (including `||` and `&&`). I do...
austin (Austin Ziegler)
03:52 PM Feature #20770: A *new* pipe operator proposal
AlexandreMagro (Alexandre Magro) wrote in #note-47:
> The pipe operator is well-known, but this type of operation with assignment is something I haven’t seen before, and I’m not sure of its precedence. The examples also don’t illustrate...
lpogic (Łukasz Pomietło)
11:42 PM Bug #20915 (Closed): Segfault with `TracePoint#parameters` and aliased C method
Applied in changeset commit:git|660b995365f719fa59ed6f2809bb1527e6470d14.
----------
[Bug #20915] Fix SEGV with `TracePoint#parameters` and aliased C method
The following snippet results with a SEGV:
```ruby
C = Class.new do
alias_m...
viralpraxis (Iaroslav Kurbatov)
11:42 PM Revision 660b9953 (git): [Bug #20915] Fix SEGV with `TracePoint#parameters` and aliased C method
The following snippet results with a SEGV:
```ruby
C = Class.new do
alias_method :new_to_s, :to_s
end
TracePoint.new(:c_call, &:parameters).enable { C.new.new_to_s }
```
at MRI 3.3.6 and ruby 3.4.0dev
The root cause of the issue li...
viralpraxis (Iaroslav Kurbatov)
11:33 PM Revision 88764dde (git): [DOC] Rewrite docs for rb_sym2str()
Explaining this by reference to rb_id2str() obscures a few important
details because IDs and symbols don't map to each other perfectly (you
can have a dynamic symbol without an ID!) Also, it used to take 2
redirections to get to concrete...
alanwu (Alan Wu)
11:33 PM Revision 2a0006c1 (git): [DOC] Mention that rb_id2str() returns a frozen string
alanwu (Alan Wu)
09:45 PM Revision 2fc357c1 (git): YJIT: Avoid std::ffi::CString with rb_intern2() during boot
Fewer allocations on boot, too.
Suggested-by: https://github.com/ruby/ruby/pull/12217
alanwu (Alan Wu)
07:29 PM Revision 36a98307 (git): [rubygems/rubygems] make pretty_print tests whitespace agnostic
https://github.com/rubygems/rubygems/commit/23e9396d22 Durable Programming Team
07:07 PM Revision 7e02410b (git): [ruby/reline] Don't skip start_with check on encoding-incompatible
candidates
(https://github.com/ruby/reline/pull/787)
https://github.com/ruby/reline/commit/8588be652f
tompng (tomoya ishida)
06:15 PM Revision c06dcba9 (git): [ruby/reline] Fix RELINE_TEST_ENCODING
(https://github.com/ruby/reline/pull/743)
* Fix RELINE_TEST_ENCODING
It was not working because it was not environment variable.
* Fix Encoding::CompatibilityError: Shift_JIS is not compatible with UTF-8
Error: test_completion_append...
ima1zumi (Mari Imaizumi)
06:15 PM Revision 7f34c75b (git): Use `RSTRING_PTR` instead of `StringValuePtr`
... since it is certain to be a String in this context.
Also, I want to avoid the anxious use of `StringValuePtr(str)` and
`RSTRING_LEN(str)` as arguments in the same function call.
mame (Yusuke Endoh)
04:35 PM Bug #20924: IO#readline ignores the limit argument when the encoding is UTF-32LE and the limit would split a character
Note that replacing `#readline` with `#gets` in the examples causes the issue to be seen in all Ruby versions, including 3.3.6. javanthropus (Jeremy Bopp)
04:07 PM Bug #20924 (Closed): IO#readline ignores the limit argument when the encoding is UTF-32LE and the limit would split a character
```ruby
require 'tempfile'
Tempfile.open(binmode: true, encoding: 'utf-32le') do |f|
f.write('0123456789')
f.rewind
# A limit that would truncate a character becomes completely ignored
f.readline(3).bytesize # => 40; s...
javanthropus (Jeremy Bopp)
03:46 PM Bug #20921 (Closed): Use-after-free in constant cache
Applied in changeset commit:git|f65a6c090c229de1665af49f2e51fc1d6397ab72.
----------
Fix use-after-free in constant cache
[Bug #20921]
When we create a cache entry for a constant, the following sequence of
events could happen:
- vm_t...
peterzhu2118 (Peter Zhu)
03:46 PM Revision f65a6c09 (git): Fix use-after-free in constant cache
[Bug #20921]
When we create a cache entry for a constant, the following sequence of
events could happen:
- vm_track_constant_cache is called to insert a constant cache.
- In vm_track_constant_cache, we first look up the ST table for th...
peterzhu2118 (Peter Zhu)
03:29 PM Revision 73c4023c (git): [rubygems/rubygems] Enable pending exec spec
This is how Ruby works, and it's not going to change. So let's run the
test since it makes no sense to keep it pending.
https://github.com/rubygems/rubygems/commit/5f78d3c737
deivid (David Rodríguez)
03:29 PM Revision d2e59941 (git): [rubygems/rubygems] Improve heredoc indentation in exec specs
https://github.com/rubygems/rubygems/commit/abb658757f deivid (David Rodríguez)
03:29 PM Revision 8b751643 (git): [rubygems/rubygems] Unify specs testing Bundler.setup failing behavior
They had slightly different behavior in Bundler 2 and Bundler 3 because
Bundler 3 will auto-clean after `bundle install`, so one of them system
installed gems won't be present when `Bundler.setup` fails.
We can unify the specs by moving...
deivid (David Rodríguez)
03:27 PM Revision ee7ff4a1 (git): [rubygems/rubygems] Backwards compatibility for 2.5.17-2.5.23 caches
https://github.com/rubygems/rubygems/commit/9dbfce76cf deivid (David Rodríguez)
03:27 PM Revision 9a4d91fa (git): [rubygems/rubygems] Restore previous application cache format for git sources
And make sure `bundle install --local` can install from it without git.
https://github.com/rubygems/rubygems/commit/7d6b631620
deivid (David Rodríguez)
03:27 PM Revision 2a8437a1 (git): [rubygems/rubygems] Check feature flag earlier
https://github.com/rubygems/rubygems/commit/33536aa61c deivid (David Rodríguez)
03:27 PM Revision 68c7e753 (git): [rubygems/rubygems] Remove unnecessary early return
These are never equal.
https://github.com/rubygems/rubygems/commit/69e369da74
deivid (David Rodríguez)
03:27 PM Revision 34f6334b (git): [rubygems/rubygems] Improve naming in git sources
The "revision" attribute is actually getting the revision from the
Gemfile.lock file. So I think "locked" is a better term here to avoid
confusion with the revision checked out in `vendor/cache`.
https://github.com/rubygems/rubygems/com...
deivid (David Rodríguez)
03:15 PM Misc #20923 (Closed): Add builds for existing shared GC's to CI
eightbitraptor (Matt V-H)
03:15 PM Misc #20923: Add builds for existing shared GC's to CI
@peterzhu2118 has brought to my attention that CI builds for the shared GC's, specifically MMTk were already proposed and approved as part of the discussion of #20860 providing they are non-blocking.
Closing this ticket as a duplicate.
eightbitraptor (Matt V-H)
02:41 PM Misc #20923 (Closed): Add builds for existing shared GC's to CI
## Summary
I'd like to add CI builds that exercise the GC API implementation with the currently supported known GC modules.
Implemented in [[GH-#12212]](https://github.com/ruby/ruby/pull/12212)
## Background
Ruby now ships w...
eightbitraptor (Matt V-H)
03:03 PM Revision 8aeb67de (git): Remove a useless condition expression
`len` is always at least 1 here. mame (Yusuke Endoh)
02:19 PM Revision 705714be (git): prefer ruby_memerror instead
This could be out of GVL shyouhei (Shyouhei Urabe)
02:19 PM Revision 25ad7e8e (git): rb_gc_impl_malloc can return NULL
Let there be rooms for each GC implementations how to handle multi
threaded situations. They can be totally reentrant, or can have
their own mutex, or can rely on rb_thread_call_with_gvl.
In any ways the allocator (has been, but now of...
shyouhei (Shyouhei Urabe)
11:47 AM Feature #20922: Should not we omit parentheses in assert calls?
I generally agree, and this change would be welcome, but there's still a common case that is an error:
```ruby
assert_equal {}, something
```
byroot (Jean Boussier)
07:30 AM Feature #20922: Should not we omit parentheses in assert calls?
FYI:
https://github.com/ruby/ruby/commit/6a39e6fc2d0db590ad605f7af9c99d32c64c6a22
https://github.com/ruby/ruby/commit/fc67091fc8dc4c7122499cd0d287cd34ff01bf30
https://github.com/ruby/ruby/commit/5b146eb5a15cce4c7a6ce279bd53e75a61d4a...
mame (Yusuke Endoh)
06:59 AM Feature #20922 (Rejected): Should not we omit parentheses in assert calls?
I often see the style of omitting parentheses in assert calls, but it leads to annoying warnings in the following case:
```
assert_equal -1, val #=> warning: ambiguous first argument; put parentheses or a space even after `-` oper...
mame (Yusuke Endoh)
10:28 AM Revision 5067a465 (git): Update default gems list at ae85fc72717c5b6d13be101781d41a [ci skip]
git[bot]
10:27 AM Revision ae85fc72 (git): [ruby/set] Bump VERSION to 1.1.1
https://github.com/ruby/set/commit/1c3cded76a Akinori MUSHA
09:49 AM Revision 49d2e79f (git): Ensure to close pipes when `TCPSocket.new` finishes processing (#12181)
`TCPSocket.new` with HEv2 uses three threads.
The last of these threads to exit closed pipes.
However, if pipes were open at the end of the main thread, they would leak.
This change avoids this by closing pipes at the end of the main thr...
Misaki Shioi
08:38 AM Bug #20506: YJIT build error on aarch64 with Rust 1.78.0
I tested with the recent 1.84 beta and it seems resolved with that version. Earlopain (Earlopain _)
08:25 AM Feature #20912: Add warning when redefining __id__ as well as object_id
I am strongly discourage redefining `object_id`, so we should keep the warning. I am not against warning `__id__` redefinition.
Matz.
matz (Yukihiro Matsumoto)
05:18 AM Revision 22e1a8c4 (git): Allow disable to `fast_fallback` of `TCPSocket.new` (#12210)
with `Socket.tcp_fast_fallback=`
The functions that `Socket.tcp` had are now also available in `TCPSocket.new`.
Misaki Shioi
03:38 AM Revision f9d0bc22 (git): Remove a useless check if fd is negative
If `slave` is negative, neither `dup2(slave,0)` or `close(slave)` should
be executed. I believe this check is completely useless.
mame (Yusuke Endoh)
03:27 AM Revision a32981b6 (git): Remove a useless check
Here `nb` should never be NULL. If it were, the following
`nb->buffer_list` would be strange.
A follow-up to ddd8da4b6ba3dfcca21ca710e7cef2fa3b9632d7
mame (Yusuke Endoh)
02:48 AM Revision 43dd9c72 (git): [ruby/date] Fix mixed declarations and code
This still support ruby 2.6 which does not require C99.
https://github.com/ruby/date/commit/61d849758f
nobu (Nobuyoshi Nakada)
02:48 AM Revision b910de64 (git): [ruby/date] Suppress compound-token-split-by-macro warnings
It was used intentionally.
https://github.com/ruby/date/commit/291b40f939
nobu (Nobuyoshi Nakada)
01:39 AM Revision ad773b5e (git): [ruby/time] [DOC] Make RDoc coverage 100%
https://github.com/ruby/time/commit/c668704413 nobu (Nobuyoshi Nakada)
12:49 AM Revision 84b14c03 (git): Dont't need to run nmake test
hsbt (Hiroshi SHIBATA)
12:49 AM Revision c392bec8 (git): Use only -j option for test option
hsbt (Hiroshi SHIBATA)
12:49 AM Revision 60fa8ec7 (git): nmake check is working now with Windows platform
hsbt (Hiroshi SHIBATA)
12:13 AM Revision a1500eef (git): Remove document file needless for ruby core
This reverts commit 743a31d639d4c96827b1b17f59c829c1ec31abc3,
"[ruby/date] [DOC] Make document coverage 100%". This file is only
for rdoc coverage in the date gem, and useless when the built-in Time
is documented.
nobu (Nobuyoshi Nakada)

11/28/2024

08:38 PM Feature #20265: Deprecate and remove rb_newobj and rb_newobj_of
> That does not have too long history, seeing this NEWS entry:
You can implement a polyfill [such as this one in io-console](https://github.com/ruby/io-console/blob/b152f5b681895e53fce10e02ced43e6d35c19e82/ext/io/console/console.c#L15...
peterzhu2118 (Peter Zhu)
03:19 PM Feature #20265: Deprecate and remove rb_newobj and rb_newobj_of
That does not have too long history, seeing this NEWS entry:
~~~
$ grep -R -A 1 rb_io_open_descriptor
doc/NEWS/NEWS-3.3.0.md: * `rb_io_open_descriptor()` is introduced to make an IO object from a file
doc/NEWS/NEWS-3.3.0.md- d...
vo.x (Vit Ondruch)
08:04 PM Revision a5119a3f (git): YJIT: Add missing prepare before calling str_dup
jhawthorn (John Hawthorn)
07:25 PM Bug #20921 (Closed): Use-after-free in constant cache
GitHub PR: https://github.com/ruby/ruby/pull/12203
When we create a cache entry for a constant, the following sequence of events could happen:
- vm_track_constant_cache is called to insert a constant cache.
- In vm_track_constant_...
peterzhu2118 (Peter Zhu)
06:57 PM Bug #20920 (Assigned): When loading a file, __FILE__ gets relative paths expanded only when they start with "./"
```
$ cat foo.rb
puts __FILE__
$ ruby foo.rb
foo.rb
$ ruby ./foo.rb
./foo.rb
$ ruby -e 'load "foo.rb"'
foo.rb
$ ruby -e 'load "./foo.rb"'
/full/path/to/foo.rb
```
More than an issue, this...
deivid (David Rodríguez)
06:01 PM Revision 50a34637 (git): Avoid illegal pointer
When loading a crafted marshal data of Random, a pointer to an illegal
address was created. I don't think there is any harm since the data is
normalized before access, but just to be safe, I add a check to make it
an error.
mame (Yusuke Endoh)
05:25 PM Feature #20914 (Closed): Constructor Parameter Shortcuts
mame (Yusuke Endoh)
04:56 PM Feature #20914: Constructor Parameter Shortcuts
Thank you! This appears to be literally the same proposal, so it can be closed.
I will review #5825 and follow for updates.
artemb (Artem Borodkin)
09:45 AM Feature #20914: Constructor Parameter Shortcuts
> What do you think about this option:
Then this proposal is almost the same as #5825.
mame (Yusuke Endoh)
05:57 AM Feature #20914: Constructor Parameter Shortcuts
You’re absolutely right; this part does seem ambiguous. I initially added it as an empty block, modeled after the short syntax, like this:
```ruby
def initialize(name, age, email = nil) = (@name, @age, @email = name, age, email)
```
Wh...
artemb (Artem Borodkin)
02:25 AM Feature #20914: Constructor Parameter Shortcuts
```ruby
def initialize(@name, @age, @email = nil) =
```
What is the equal sign at the end?
`nil` is missed?
nobu (Nobuyoshi Nakada)
04:35 PM Revision 803eed69 (git): Add commit 2da9238 to .git-blame-ignore-revs [ci skip]
peterzhu2118 (Peter Zhu)
04:34 PM Revision 2da92388 (git): Expand tabs in addr2line.c
.git-blame-ignore-revs will be updated after this commit is merged. peterzhu2118 (Peter Zhu)
03:52 PM Revision bd88cffd (git): [rubygems/rubygems] Test with Ruby 3.4
https://github.com/rubygems/rubygems/commit/23d06195fa deivid (David Rodríguez)
03:23 PM Revision 3e308971 (git): Update default gems list at afea58a0ef07b05846dbb24ca8afbf [ci skip]
git[bot]
03:22 PM Revision afea58a0 (git): [ruby/reline] Bump version to 0.5.12
(https://github.com/ruby/reline/pull/786)
https://github.com/ruby/reline/commit/d4f6741e7e
ima1zumi (Mari Imaizumi)
01:45 PM Bug #20869: IO buffer handling is inconsistent when seeking
@nobu, I just checked with a fresh build of the master branch, and the second failure case I mentioned in my previous message still exists. I opened #20919 to cover it. javanthropus (Jeremy Bopp)
01:45 PM Bug #20919 (Open): IO#seek and IO#pos= do not clear the character buffer in some cases while transcoding
When transcoding characters, `IO#seek` and `IO#pos=` only clear the internal character buffer if `IO#getc` is called first:
```ruby
require 'tempfile'
Tempfile.open(encoding: 'utf-8:utf-16le') do |f|
f.write('0123456789')
f....
javanthropus (Jeremy Bopp)
01:39 PM Revision 47f8a552 (git): Ensure to free fast_fallback_getaddrinfo_shared with single family (#12199)
With https://github.com/ruby/ruby/pull/12156,
the memory of the `struct fast_fallback_getaddrinfo_shared`
is now allocated even if there is only one address family.
This change will always free it when `TCPSocket.new` finishes.
Misaki Shioi
12:38 PM Revision 3af1a047 (git): [ruby/prism] Fix a copy-paste error
This is not important because of the path of `assert(false)`, but just
in case.
Coverity Scan found this issue.
https://github.com/ruby/prism/commit/7335c62f9d
mame (Yusuke Endoh)
12:18 PM Revision 36ed9c2f (git): [ruby/rdoc] Improve how gemspec's files are defined
(https://github.com/ruby/rdoc/pull/1212)
Currently, the gemspec's files are defined by hand, which is error-prone.
For example: https://github.com/ruby/rdoc/pull/1211
This commit uses `Dir.glob` where possible to reduce the risk of th...
st0012 (Stan Lo)
11:55 AM Bug #20917: redo/next in nested begin block causes wrong order of execution
Indeed, it seems like a bug, I think as well the "redo jump/unwind/exception" should run ensure's and get to the "break jump/unwind/exception" which should override the `redo` like when a Ruby exception overrides another.
FWIW, this i...
Eregon (Benoit Daloze)
03:26 AM Bug #20917 (Open): redo/next in nested begin block causes wrong order of execution
It seems that `redo`/`next` in a nested `begin` block can cause the wrong order of execution.
For example:
```ruby
for _ in [0]
puts 0
begin
puts 1
begin
puts 2
redo
ensure
puts 3
end
...
hoshiumiarata (Arata Hoshiumi)
11:55 AM Feature #20912: Add warning when redefining __id__ as well as object_id
> It seems used a lot, yes:
I meant in context where it is called on an unknown object where `object_id` may have been redefined and cause the "serious problem" the warning hints at. I've dealt with tons of meta-programing messes over...
byroot (Jean Boussier)
11:48 AM Feature #20912: Add warning when redefining __id__ as well as object_id
mame (Yusuke Endoh) wrote in #note-5:
> I think it's a good idea to warn against redefining `__id__`, but I think we should keep warning against redefining `object_id` as well.
> ...
I agree and I think this a well thought out argument.
...
Eregon (Benoit Daloze)
10:02 AM Revision de89bff1 (git): `INIT_ANCHOR` no longer needed usually
nobu (Nobuyoshi Nakada)
09:53 AM Revision b8f248ee (git): Initialize `LINK_ANCHOR` totally
nobu (Nobuyoshi Nakada)
09:19 AM Revision 31a3e877 (git): [DOC] typo fix in NEWS.md
follow up: https://github.com/ruby/ruby/pull/12196/files#r1861730753 ydah (Yudai Takada)
08:36 AM Revision da2c083f (git): add a NEWS entry about extra rescue/ensure frames
from backtraces. ko1 (Koichi Sasada)
08:36 AM Revision 2f870b65 (git): add NEWS entries about Ractor related changes.
ko1 (Koichi Sasada)
07:48 AM Feature #20875: Atomic initialization for Ractor local storage
@matz how about `Ractor.local_storage_once(key){ ... }`? It is from [pthread_once](https://man7.org/linux/man-pages/man3/pthread_once.3p.html).
`Ractor.once(key){ ... }` seems too short?
```ruby
def inc
Ractor.local_storage_once(:mtx...
ko1 (Koichi Sasada)
06:13 AM Revision 319ac315 (git): Assert that non-empty LINK_ANCHOR does not loop
After any `LINK_ELEMENT` sequence is added, `LINK_ANCHOR` must not
loop.
nobu (Nobuyoshi Nakada)
05:56 AM Revision 84bf0b37 (git): Always declared gems that are test failures on Windows to allowed failures list
hsbt (Hiroshi SHIBATA)
05:56 AM Revision 03d9dfa6 (git): Exclude successful gems from TEST_BUNDLED_GEMS_ALLOW_FAILURES
hsbt (Hiroshi SHIBATA)
05:56 AM Revision 54c8265d (git): Skip test-all on nmake test-bundled-gems
hsbt (Hiroshi SHIBATA)
05:56 AM Revision 227791ac (git): Try to run nmake test-bundled-gems in Windows platform
hsbt (Hiroshi SHIBATA)
05:49 AM Revision 38f76cb5 (git): Avoid an operation on a pointer after free
A follow-up to ef59175a68c448fe334125824b477a9e1d5629bc. That commit
uses `&body->local_table[...]` but `body->local_table` is already freed.
I think it is an undefined behavior to calculate a pointer that exceeds
the bound by more than ...
mame (Yusuke Endoh)
04:38 AM Bug #20918 (Closed): Prism error indicates line number of `-e` that does not exist
```
$ ruby -e 'foo('
-e: -e:2: syntax error found (SyntaxError)
1 | foo(
> 2 |
| ^ unexpected end-of-input; expected a `)` to close the arguments
```
It says `-e:2`, but there is no line 2 in `-e 'foo('`.
`eval("foo(")`...
mame (Yusuke Endoh)
04:26 AM Revision c0e607ce (git): Fix a possible leak of a file descriptor
The same issue as https://github.com/ruby/prism/pull/3246
Coverity Scan found this issue.
mame (Yusuke Endoh)
03:25 AM Revision d94ae8b8 (git): Update bundled gems list at e0b68b2dc93da31f93232fe0b545ba [ci skip]
git[bot]
03:24 AM Revision e0b68b2d (git): Bump up test-unit 3.6.4
Co-authored-by: Sutou Kouhei <[email protected]> hsbt (Hiroshi SHIBATA)
03:24 AM Revision f90f4735 (git): Update bundled_gems
hsbt (Hiroshi SHIBATA)
03:23 AM Revision 1a8f1379 (git): Skip failure tests with Windows platform
hsbt (Hiroshi SHIBATA)
02:50 AM Bug #20916 (Closed): Prism compiler should support ** in Ractor constant
The Prism compiler raises an exception against the following code.
```
$ ./miniruby -e '# shareable_constant_value: experimental_everything
C = { **{ } }'
-e:2: Ractor constant writes do not support **
-e: node type not implement...
mame (Yusuke Endoh)
02:15 AM Revision 29e90a59 (git): [ruby/prism] Fix a possible leak of a file descriptor
When mmap fails for any reason, the fd must be closed.
Coverity Scan found this issue.
https://github.com/ruby/prism/commit/c06e9c400f
mame (Yusuke Endoh)
01:12 AM Bug #20915 (Closed): Segfault with `TracePoint#parameters` and aliased C method
I'm getting a segfault in the following example
```ruby
C = Class.new do
alias_method :new_to_s, :to_s
end
TracePoint.new(:c_call, &:parameters).enable { C.new.new_to_s }
```
Proposed fix: https://github.com/ruby/ruby/pull...
viralpraxis (Iaroslav Kurbatov)
01:08 AM Misc #20913: Proposal: Adding Jeremy Evans and Burdette Lamar to www.ruby-lang.org's English Editorial Team
I would also like to be added to both. zenspider (Ryan Davis)

11/27/2024

10:20 PM Feature #20914 (Closed): Constructor Parameter Shortcuts
# Constructor Parameter Shortcuts
I propose adding a new syntax to simplify the constructor definition in the classes. Defining a constructor often involves repetitive assignments of parameters to instance variables. This pattern is v...
artemb (Artem Borodkin)
08:54 PM Misc #20879: DevMeeting-2024-12-12

* [Misc #20913] Proposal: Adding Jeremy Evans and Burdette Lamar to www.ruby-lang.org's English Editorial Team
* They have expressed enthusiasm for improving the website during recent discussions at RubyConf in Chicago.
* Adding ...
st0012 (Stan Lo)
08:46 PM Misc #20913 (Closed): Proposal: Adding Jeremy Evans and Burdette Lamar to www.ruby-lang.org's English Editorial Team
Hi everyone, I'd like to propose that we invite @jeremyevans0 and @burdettelamar to join the editorial team for [ruby-lang.org](https://ruby-lang.org)'s English content. Specifically, this means giving them permission to merge English co... st0012 (Stan Lo)
07:40 PM Feature #20912: Add warning when redefining __id__ as well as object_id
Is `object_id` really called that much? I can't really think of something that really depend on it from the top of my head. byroot (Jean Boussier)
06:34 PM Feature #20912: Add warning when redefining __id__ as well as object_id
I think it's a good idea to warn against redefining `__id__`, but I think we should keep warning against redefining `object_id` as well.
The reason is that it is relatively well known that "we should use `__send__` instead of `send` f...
mame (Yusuke Endoh)
03:16 PM Feature #20912: Add warning when redefining __id__ as well as object_id
> do you want to redefine it?
Shopify has case like this where one of the GraphQL attribute is `object_id` and that cause a warning to be emitted. I also know the Facebook API has (or used to have) an `object_id` field.
Overall, it...
byroot (Jean Boussier)
05:58 AM Feature #20912: Add warning when redefining __id__ as well as object_id
nobu (Nobuyoshi Nakada) wrote in #note-2:
> As for `object_id`, do you want to redefine it?
I think it's best not to redefine, but a warning is probably more severe than is needed. I don't think it causes "serious problems", especial...
jhawthorn (John Hawthorn)
03:53 AM Feature #20912: Add warning when redefining __id__ as well as object_id
Agree that `__id__` should be warned.
As for `object_id`, do you want to redefine it?
nobu (Nobuyoshi Nakada)
01:56 AM Feature #20912: Add warning when redefining __id__ as well as object_id
https://github.com/ruby/ruby/pull/12177 jhawthorn (John Hawthorn)
01:54 AM Feature #20912 (Closed): Add warning when redefining __id__ as well as object_id
Currently if you create a class and redefine or remove either `object_id` or `__send__` it will issue a warning. There's no such warning on `__id__`.
```
❯ ruby -we 'class << Object.new; def object_id = 1; end'
-e:1: warning: redefi...
jhawthorn (John Hawthorn)
07:36 PM Revision 7dd2afbe (git): Fix global-buffer-overflow when outputting C backtrace
fill_lines is passed -1 for offset, which causes it to read the -1 index
of traces. This is not valid memory as -1 is reading before the trace
global variable in rb_print_backtrace. This code comes from commit
99d1f5f88b9b6de3124e3101990...
peterzhu2118 (Peter Zhu)
06:51 PM Revision 34a43d59 (git): [ruby/reline] Fix io_gate.encoding raises IOError in ruby <= 3.0
(https://github.com/ruby/reline/pull/785)
https://github.com/ruby/reline/commit/85e20f0031
tompng (tomoya ishida)
06:36 PM Revision 33c6bbca (git): [ruby/reline] fix/omit test that fail in encoding=US_ASCII
(https://github.com/ruby/reline/pull/784)
https://github.com/ruby/reline/commit/a6d1ac54e6
tompng (tomoya ishida)
05:12 PM Revision 0af2eafc (git): Fix C level backtrace info on macOS clang 16
macOS clang 16 generates DWARF5, which have Mach-O section names that
are limited to 16 characters, which causes sections with long names to
be truncated and not match above.
See: https://wiki.dwarfstd.org/Best_Practices.md#Mach-2d-O
peterzhu2118 (Peter Zhu)
05:04 PM Revision 3354324c (git): Move `Kernel#with_yjit` to `Module#with_yjit`
nobu (Nobuyoshi Nakada)
04:32 PM Revision 14ce2443 (git): Make rb_bug_without_die static
It's not used outside of error.c. peterzhu2118 (Peter Zhu)
04:26 PM Feature #20265: Deprecate and remove rb_newobj and rb_newobj_of
> Just FTR, there are also project which are using NEWOBJ, such as:
> ...
That code is using internal data structures which are subject to change. It should use an API such as `rb_io_open_descriptor` instead.
peterzhu2118 (Peter Zhu)
04:14 PM Feature #20265: Deprecate and remove rb_newobj and rb_newobj_of
Just FTR, there are also project which are using `NEWOBJ`, such as:
https://github.com/search?q=repo%3Ahparra%2Fruby-serialport%20NEWOBJ&type=code
So what is recommended instead?
vo.x (Vit Ondruch)
02:35 PM Revision 209f8ba7 (git): [ruby/json] Prevent a warning of "a candidate for gnu_printf format attribute"
GCC 13 prints the following warning.
https://rubyci.s3.amazonaws.com/ubuntu/ruby-master/log/20241127T001003Z.log.html.gz
```
compiling generator.c
generator.c: In function ‘raise_generator_error’:
generator.c:91:5: warning: function ‘ra...
mame (Yusuke Endoh)
01:50 PM Revision 26d020cb (git): Optimize `rb_must_asciicompat`
While profiling `strscan`, I noticed `rb_must_asciicompat` was quite
slow, as more than 5% of the benchmark was spent in it: https://share.firefox.dev/49bOcTn
By checking for the common 3 ASCII compatible encoding index first,
we can sk...
byroot (Jean Boussier)
12:03 PM Revision 43b059b6 (git): [DOC] Fix a link and sort links in NEWS.md
znz (Kazuhiro NISHIYAMA)
09:11 AM Bug #20910: leaked-globals not happy about dtrace related symbols
Hi. Yes, this works as well. Kulikjak (Jakub Kulik)
05:23 AM Bug #20910: leaked-globals not happy about dtrace related symbols
Or does this help?
```diff
diff --git a/tool/leaked-globals b/tool/leaked-globals
index 05ce02658b7..6118cd56e81 100755
--- a/tool/leaked-globals
+++ b/tool/leaked-globals
@@ -90,6 +90,7 @@
next if !so and n.start_with?("___a...
nobu (Nobuyoshi Nakada)
08:31 AM Revision 87fc9f4a (git): [DOC] Add more links to maintainers
nobu (Nobuyoshi Nakada)
07:45 AM Revision ac7b63e3 (git): Fixed test condition for specified bundled gems
hsbt (Hiroshi SHIBATA)
07:45 AM Revision 26aebdb6 (git): Added --env option to mspec for test-bundled-gems
hsbt (Hiroshi SHIBATA)
07:45 AM Revision 671e6eb6 (git): Run only specified bundled gems with BUNDLED_GEMS
hsbt (Hiroshi SHIBATA)
07:45 AM Revision 9349e98b (git): Allow to run 'make test-bundled-gems BUNDLED_GEMS=csv,rexml' for only testing csv and rexml
hsbt (Hiroshi SHIBATA)
07:45 AM Revision 24889e44 (git): Rename environment name to more descriptive
hsbt (Hiroshi SHIBATA)
03:19 AM Revision c41af37e (git): [ruby/io-console] Read errno before calling rb_io_path()
Possible fix for recent crashes seen on CI.
[BUG] rb_sys_fail_str(<STDIN>) - errno == 0
rb_io_path() calls rb_obj_dup(), which could call initialize_dup in Ruby
and clobber errno before rb_sys_fail_str() gets to read errno. So
sav...
alanwu (Alan Wu)
02:43 AM Revision 3face42d (git): Revert "Add a temporal debugging code"
This reverts commit 5bd144c1bb20e22e4d9f5e5e0264820fd3ef8137. mame (Yusuke Endoh)
01:47 AM Revision 42b1eaf2 (git): Mark `fiber_entry` no-return
nobu (Nobuyoshi Nakada)
12:24 AM Revision d5de1a57 (git): [ruby/strscan] Implement #scan_integer to efficiently parse Integer
(https://github.com/ruby/strscan/pull/115)
Fix: https://github.com/ruby/strscan/issues/113
This allows to directly parse an Integer from a String without needing
to first allocate a sub string.
Notes:
The implementation is limited by...
byroot (Jean Boussier)
12:24 AM Revision a041a6c1 (git): [ruby/strscan] Add scan and search benchmark
(https://github.com/ruby/strscan/pull/111)
# Why?
To improve the parsing process, I would like to add benchmarks for all
parsing processes.
## scan
- scan_full(regexp, false, true) == StringScanner#check
- scan_full(regexp, false, fals...
naitoh (Jun NAITOH)

11/26/2024

10:04 PM Revision 092a48de (git): [rubygems/rubygems] [SpecFetcher] If candidates include {name}-ruby or ruby-{name}, recommend those.
https://github.com/rubygems/rubygems/commit/d7d33172c1 Ellen Marie Dash
09:49 PM Revision 8f9b9aec (git): YJIT: Implement opt_reverse insn (#12175)
Randy Stauner
09:40 PM Revision 33f15ce8 (git): Sync the main branch of `ruby/mmtk`
The sync script defaults to `master` when analysing which commits to
pick, but the default for new repos now is `main`.
eightbitraptor (Matt V-H)
07:31 PM Revision 1dd40ec1 (git): Optimize instructions when creating an array just to call `include?` (#12123)
* Add opt_duparray_send insn to skip the allocation on `#include?`
If the method isn't going to modify the array we don't need to copy it.
This avoids the allocation / array copy for things like `[:a, :b].include?(x)`.
This adds a BOP ...
Randy Stauner
06:28 PM Bug #20911 (Rejected): Array#max doesn't take block if using &:
`Array#max` accepts a block that compares two values.
```
p ["1", "2", "3"].max {|i, j| i.to_i <=> j.to_i } #=> "3"
```
You may want to use `Array#max_by`.
```
p ["1", "2", "3"].max_by(&:to_i) #=> "3"
```
mame (Yusuke Endoh)
06:09 PM Bug #20911 (Rejected): Array#max doesn't take block if using &:
```
["1","2","3"].max { |i| i.to_i }
=> "3"
["1","2","3"].max(&:to_i)
(irb):6:in `to_i': no implicit conversion of String into Integer (TypeError)
["1","2","3"].max(&:to_i)
^^^^^^
from (irb):6:in `max'...
[email protected] (Andrew Vitovitch)
05:58 PM Revision c1dcd1d4 (git): [ruby/reline] KeyStroke handles multibyte character
(https://github.com/ruby/reline/pull/713)
https://github.com/ruby/reline/commit/5a8da85f2b
tompng (tomoya ishida)
05:50 PM Revision def68450 (git): [ruby/irb] Fix indentation of xstring literal
(https://github.com/ruby/irb/pull/1038)
Fixes indent calculation of this input
```
if false
p `ls`
end
```
https://github.com/ruby/irb/commit/4217a46f5d
tompng (tomoya ishida)
05:07 PM Feature #17566: Tune thread QoS / efficiency on macOS
I just ran across this article that touches on the sordid history of Thread priority and on how Apple Silicon is using QoS dispatch, and thought it might be nice to add here for context. https://blog.xoria.org/macos-tips-threading/
Th...
shan (Shannon Skipper)
12:27 PM Bug #20910 (Closed): leaked-globals not happy about dtrace related symbols
I am not sure if this is Solaris specific, but when I build Ruby 3.3.6 with dtrace enabled and run its test suite, the leaked-globals checker fails with the following:
```
Checking leaked global symbols...48 un-prefixed symbols leaked
...
Kulikjak (Jakub Kulik)
11:59 AM Revision c192d688 (git): Add Modular GC and MMTk to NEWS
eightbitraptor (Matt V-H)
10:46 AM Revision 796d3159 (git): Add NEWS.md entry about `Hash.new(capacity:)`
[Feature #19236]
Ref: https://github.com/ruby/ruby/pull/10357
byroot (Jean Boussier)
10:36 AM Revision ffbfec39 (git): [MinGW] - Fix NET_LUID check
Raed Rizqie
10:25 AM Revision ad28f3a7 (git): Remove `Kernel.with_yjit` class method
nobu (Nobuyoshi Nakada)
10:06 AM Revision 9508cf86 (git): Clear shared_gc directory
nobu (Nobuyoshi Nakada)
10:06 AM Revision d0575032 (git): Use extmk.rb to configure shared GC
Since mkmf.rb is for extension libraries after installation, it cannot
work alone in build directory and needs to run from extmk.rb.
nobu (Nobuyoshi Nakada)
10:06 AM Revision 9a5f6a45 (git): Fix up gc/extconf_base.rb
- Add flags to appropriate variables.
- Use `append_cflags` to append a flag safely, instead of appending
blindly.
nobu (Nobuyoshi Nakada)
10:06 AM Revision c5d31cb9 (git): Shell dependent command should be in Makefile.in
As common.mk is used by nmake.exe, the commands there need to be
accepted also by cmd.exe.
nobu (Nobuyoshi Nakada)
10:02 AM Revision 16d98dc3 (git): [ruby/uri] Suppress deprecate warning of test class (retry)
(https://github.com/ruby/uri/pull/140)
A follow-up to https://github.com/ruby/uri/commit/bd2e4be9d0fa
Also, leave a comment that the use of `URI::REGEXP` is intentional
https://github.com/ruby/uri/commit/bdf765e44a
mame (Yusuke Endoh)
09:41 AM Feature #13820: Add a nil coalescing operator
Here are my 2 cents regarding this subject, if it can help moving forward with this feature.
Wkipedia has a great article explaining and listing null coalescing operators in other languages: https://en.wikipedia.org/wiki/Null_coalesci...
genezys (Vincent Robert)
06:11 AM Revision 5471f284 (git): Skip failing rbs tests with latest HEAD of ruby/json
```
NoMethodError: undefined method 'flush' for an instance of JsonWrite
```
hsbt (Hiroshi SHIBATA)
06:11 AM Revision 2b91a56d (git): [rubygems/rubygems] Remove no longer necessary code
https://github.com/rubygems/rubygems/commit/9ea1539b08 deivid (David Rodríguez)
06:11 AM Revision 10de74b7 (git): [rubygems/rubygems] Avoid needing a second pass to ignore unlocked gems
When converging locked specifications to select the ones that should be
preserved while resolving, we can avoid having to do a second pass to
ignore the ones that have been explicitly unlocked.
https://github.com/rubygems/rubygems/commi...
deivid (David Rodríguez)
06:11 AM Revision 44ad2e3f (git): [rubygems/rubygems] Allow some materialized specs to be missing
As long as some spec in the materialization is complete.
https://github.com/rubygems/rubygems/commit/9a673b0bbb
deivid (David Rodríguez)
06:11 AM Revision 36fb7994 (git): [rubygems/rubygems] Deprecate `check` parameter to `Bundler::SpecSet#for`
https://github.com/rubygems/rubygems/commit/3041b3d784 deivid (David Rodríguez)
06:11 AM Revision c76b1ea2 (git): [rubygems/rubygems] Keep track of materializations in the original resolve
This gives more flexibility to allow further improvements.
https://github.com/rubygems/rubygems/commit/f11a890f5e
deivid (David Rodríguez)
06:11 AM Revision e15921c6 (git): [rubygems/rubygems] Create LazySpecifications directly with most_specific_locked_platform
So there's no need to pass it around in so many places.
https://github.com/rubygems/rubygems/commit/784ab7481b
deivid (David Rodríguez)
06:11 AM Revision 963f98a9 (git): [rubygems/rubygems] Enable `Performance/MapCompact` cop
https://github.com/rubygems/rubygems/commit/0c3a65871a deivid (David Rodríguez)
06:11 AM Revision 4addaaf4 (git): [rubygems/rubygems] More aggressive `Performance/FlatMap` cop configuration
https://github.com/rubygems/rubygems/commit/d8d68cc00e deivid (David Rodríguez)
06:11 AM Revision 11e522b9 (git): [rubygems/rubygems] Fix installs of subdependencies of unlocked dependencies to be conservative
When converging specification to pass the set of versions that should be
preserved from the lockfile during resolution, we should make sure all
top level gems are considered, and only exclude those gems themselves
(and not their dependen...
deivid (David Rodríguez)
06:11 AM Revision dd400ba6 (git): [rubygems/rubygems] Filter out gems to unlock inside `converge_specs`
https://github.com/rubygems/rubygems/commit/d0f789970f deivid (David Rodríguez)
06:11 AM Revision 91995d0a (git): [rubygems/rubygems] Remove unnecessary `verbose` parameter
For consistency with other specs.
https://github.com/rubygems/rubygems/commit/a5b2449896
deivid (David Rodríguez)
06:11 AM Revision d63eeafe (git): [rubygems/rubygems] Remove unnecessary `let` and nesting
https://github.com/rubygems/rubygems/commit/c519830d4d deivid (David Rodríguez)
06:11 AM Revision 6386d49f (git): [rubygems/rubygems] Fix development dependencies considered unnecessarily sometimes
When used with `LazySpecification` objects, `SpecSet#for` was
incorrectly considering development dependencies. This did not cause any
issues because all usages of this method with `LazySpecification`'s are
not strict, meaning the pass `...
deivid (David Rodríguez)
06:11 AM Revision 7c934603 (git): [rubygems/rubygems] Simplify more
https://github.com/rubygems/rubygems/commit/a2bb68a29b deivid (David Rodríguez)
06:11 AM Revision d6a0e575 (git): [rubygems/rubygems] Don't bother sorting if there's a single element
https://github.com/rubygems/rubygems/commit/6dc64f9851 deivid (David Rodríguez)
06:11 AM Revision 83ce2351 (git): [rubygems/rubygems] Remove no longer necessary code
https://github.com/rubygems/rubygems/commit/e1caeecdf8 deivid (David Rodríguez)
06:11 AM Revision 631908d9 (git): [rubygems/rubygems] Use `platform` local variable
https://github.com/rubygems/rubygems/commit/6a6041d073 deivid (David Rodríguez)
06:11 AM Revision 6916999f (git): [rubygems/rubygems] This is about locked_platforms
https://github.com/rubygems/rubygems/commit/df2c9eb52f deivid (David Rodríguez)
06:11 AM Revision 7b66aee0 (git): [rubygems/rubygems] Set instance variables in consistent order
https://github.com/rubygems/rubygems/commit/c382b606bd deivid (David Rodríguez)
06:11 AM Revision 693a7935 (git): JSON::GeneratorError expose invalid object
Fix: https://github.com/ruby/json/issues/710
Makes it easier to debug why a given tree of objects can't
be dumped as JSON.
Co-Authored-By: Étienne Barrié <[email protected]>
byroot (Jean Boussier)
06:11 AM Revision 6805e889 (git): [ruby/json] Stop using `rb_gc_mark_locations`
It's using `rb_gc_mark_maybe` under the hood, which isn't what
we need.
https://github.com/ruby/json/commit/e10d0bffcd
byroot (Jean Boussier)
06:11 AM Revision ee0de3fd (git): [ruby/json] JSON.dump: write directly into the provided IO
Ref: https://github.com/ruby/json/issues/524
Rather than to buffer everything in memory.
Unfortunately Ruby doesn't provide an API to write into
and IO without first allocating a string, which is a bit
wasteful.
https://github.com/rub...
byroot (Jean Boussier)
05:11 AM Bug #20908: Ruby extension builds fail with GCC 15 which defaults to -std=gnu23
Ah, that could be a nice idea. Not sure if that breaks other parts though. shyouhei (Shyouhei Urabe)
05:04 AM Bug #20908: Ruby extension builds fail with GCC 15 which defaults to -std=gnu23
Can't we prioritize the condition `defined(rb_define_method)` for `RUBY_METHOD_FUNC`? nobu (Nobuyoshi Nakada)
04:51 AM Bug #20908 (Third Party's Issue): Ruby extension builds fail with GCC 15 which defaults to -std=gnu23
The extension library is confusing our C level API. `rb_define_singleton_method()` and friends do not intend to take `RUBY_METHOD_FUNC`. That had accidentally worked because of the past C specifications you described, but not any longer... shyouhei (Shyouhei Urabe)
05:00 AM Revision 51970165 (git): Update NEWS.md for Bug #20620
jeremyevans (Jeremy Evans)
04:09 AM Revision aa5b1d8d (git): [Feature #20293] Add `Warning.categories` to NEWS
nobu (Nobuyoshi Nakada)
04:00 AM Bug #20909 (Closed): Backport String indexing bug fixes
commit:02b70256b5171d4b85ea7eeab836d3d7cfb3dbfc
commit:6b4f8945d600168bf530d21395da8293fbd5e8ba
nobu (Nobuyoshi Nakada)
03:32 AM Revision 8655b9f7 (git): [ruby/uri] Suppress deprecate warning of test class and use EnvUtil.suppress_warning.
https://github.com/ruby/uri/commit/bd2e4be9d0 hsbt (Hiroshi SHIBATA)
03:32 AM Revision 1d9dc4c5 (git): [ruby/uri] Revert "Prevent a warning: URI::REGEXP is obsolete
(https://github.com/ruby/uri/pull/138)"
This reverts commit https://github.com/ruby/uri/commit/c00726a20a00.
https://github.com/ruby/uri/commit/22f5a7a790
hsbt (Hiroshi SHIBATA)
03:12 AM Revision 22c1ba94 (git): NEWS.md: Fix a typo
mame (Yusuke Endoh)
03:10 AM Revision 92cf8a57 (git): Add NEWS entries temporarily
https://bugs.ruby-lang.org/issues/20108
https://bugs.ruby-lang.org/issues/20564
https://bugs.ruby-lang.org/issues/20705
https://bugs.ruby-lang.org/issues/20782
https://bugs.ruby-lang.org/issues/20811
mame (Yusuke Endoh)
03:08 AM Revision c60cac50 (git): NEWS.md: sort the entries alphabetically
mame (Yusuke Endoh)
02:47 AM Misc #20879: DevMeeting-2024-12-12
* [Feature #20884] reserve "Ruby" toplevel module for Ruby language
* It's better to reserve this at Ruby 3.4, not 3.5.
hsbt (Hiroshi SHIBATA)
02:46 AM Revision 6b4f8945 (git): Many of Oniguruma functions need valid encoding strings
nobu (Nobuyoshi Nakada)
02:46 AM Revision 02b70256 (git): Check negative integer underflow
nobu (Nobuyoshi Nakada)
02:44 AM Revision c08e1f33 (git): [ruby/resolv] Omit Windows and MinGW platforms with with_udp_and_tcp
https://github.com/ruby/resolv/actions/runs/12021339854/job/33511655994?pr=64
```
=> 705: with_udp_and_tcp('127.0.0.1', 0) do |u1, t1|
706: with_udp_and_tcp('127.0.0.1', 0) do |u2,t2|
707: u2.close # XXX: u...
hsbt (Hiroshi SHIBATA)
02:13 AM Revision 4e59ae6e (git): Add news about MatchData#bytebegin and MatchData#byteend
shugo (Shugo Maeda)
01:29 AM Revision 56fbf64a (git): Fix vm_objtostring optimization for Symbol
Co-authored-by: John Hawthorn <[email protected]> Maximillian Polhill
12:28 AM Revision 36f67f6b (git): [ruby/resolv] _1 is not provided in Ruby 2.5
https://github.com/ruby/resolv/commit/83f18e2a49 hsbt (Hiroshi SHIBATA)

11/25/2024

10:31 PM Revision 7be0d505 (git): [ruby/logger] include license texts in gem
https://github.com/ruby/logger/commit/1a64cb552f Mike Linksvayer
08:38 PM Revision 544d6844 (git): Use footnote links instead
Stan Lo
08:38 PM Revision 96766517 (git): Update maintainer GH handles and add links when possible
Stan Lo
08:38 PM Revision c3144e4f (git): Escape Module in the header
Stan Lo
08:38 PM Revision 7c200a46 (git): Add new lines after headers
Stan Lo
08:38 PM Revision 9362753d (git): Update RDoc's maintainers list
Stan Lo
07:32 PM Revision 081bdc51 (git): YJIT: fix small typo in command line options help (#12167)
maximecb (Maxime Chevalier-Boisvert)
06:35 PM Revision cdd47436 (git): [rubygems/rubygems] Bump the rb-sys group across 2 directories with 1 update
Bumps the rb-sys group with 1 update in the /test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib directory: [rb-sys](https://github.com/oxidize-rb/rb-sys).
Bumps the rb-sys group with 1 update in the /test/rubygems/t...
dependabot[bot]
06:14 PM Revision 62b9da70 (git): [rubygems/rubygems] Fix `bundle lock --add-checksums`
Due to a typo in the spec, the issue was not caught initially. If
Bundler does not need to re-resolve, `bundle lock` is a noop so Bundler
does not add checksums.
To fix the issue, we do something similar to what `bundle install` does,
j...
deivid (David Rodríguez)
06:14 PM Revision e7bb5051 (git): [rubygems/rubygems] Make installer code more clear
I always found the `resolve_if_necessary` method pretty confusing
because by reading it, it suggests that resolution always happens, and
the point is whether that needs to be local or remote. This commit tries
to make that more clear.
h...
deivid (David Rodríguez)
06:14 PM Revision c215e955 (git): [rubygems/rubygems] Most of the times, eagerly resolving is not necessary
All we need is to setup remote or local sources appropriately.
https://github.com/rubygems/rubygems/commit/3ceff46a2a
deivid (David Rodríguez)
05:56 PM Bug #20906: Segmentation Fault in compile_keyword_arg
Not sure if this is the same, but here's a shorter one that also crashes in 3.3.5.
*a[a:]=0
masterleep2 (Bill Lipa)
05:38 PM Revision 0f41cc44 (git): [ruby/reline] Fix tab completion appending quote
(https://github.com/ruby/reline/pull/782)
https://github.com/ruby/reline/commit/cbf213291c
tompng (tomoya ishida)
05:18 PM Revision cedcf2d6 (git): error.c: call `va_end` before jumping
The man page is clear that every `va_start` call MUST be succeeded by
the corresponding `va_end` call.
So `rb_raise` can't call `rb_exc_raise` before `va_end`, otherwise
`va_end` is never called.
Co-Authored-By: Étienne Barrié <etienne...
byroot (Jean Boussier)
04:40 PM Bug #20908: Ruby extension builds fail with GCC 15 which defaults to -std=gnu23
cc @shyouhei who made other C23 porting changes thesamesam (Sam James)
04:35 PM Bug #20908 (Third Party's Issue): Ruby extension builds fail with GCC 15 which defaults to -std=gnu23
Hi!
Upcoming GCC 15 defaults to C23 (`-std=gnu23`). One thing C23 changes is removing unprototyped functions, so `void foo()` now means `void foo(void)`, rather than "any arguments".
Ruby extensions fail to build as a result with G...
thesamesam (Sam James)
04:20 PM Revision 1d510a95 (git): [rubygems/rubygems] Fix test task name on generated readme when using test-unit
* bundler/lib/bundler/templates/newgem/README.md.tt (Development): Use the
test_task value to get the correct test task name ("test", not "test-unit").
* bundler/spec/commands/newgem_spec.rb (README.md): Add tests for test task
names for...
gemmaro
02:57 PM Revision e1de5a6e (git): [rubygems/rubygems] Fix gemfury credentials getting written to logs in verbose mode
https://github.com/rubygems/rubygems/commit/585a6a89d4 deivid (David Rodríguez)
02:57 PM Revision eb87147b (git): [rubygems/rubygems] Improve index fetcher specs
https://github.com/rubygems/rubygems/commit/09e0971ab8 deivid (David Rodríguez)
02:56 PM Revision 77990f67 (git): [rubygems/rubygems] Remove comment about oldest supported version
That's indeed the ideal behavior but it's a mess to maintain because the
version of RubyGems shipped with each patchlevel of Ruby changes. We
could try looking at the `VERSION` constant in `
RbConfig::CONFIG["rubylibdir"` but for now I c...
deivid (David Rodríguez)
02:56 PM Revision 4e6ada3a (git): [rubygems/rubygems] Remove unnecessary and out of date ruby version check
We already do this check in `setup.rb` itself, which is run earlier.
https://github.com/rubygems/rubygems/commit/160cc3f1c5
deivid (David Rodríguez)
02:56 PM Revision d2acc71d (git): [rubygems/rubygems] Remove now dead code
https://github.com/rubygems/rubygems/commit/31fadaf2d2 deivid (David Rodríguez)
01:05 PM Revision f127bcb8 (git): define rb_current_ec_set in all cases
eightbitraptor (Matt V-H)
01:05 PM Revision 551be821 (git): Place all non-default GC API behind USE_SHARED_GC
So that it doesn't get included in the generated binaries for builds
that don't support loading shared GC modules
Co-Authored-By: Peter Zhu <[email protected]>
eightbitraptor (Matt V-H)
01:05 PM Revision d61933e5 (git): Use extconf to build external GC modules
Co-Authored-By: Peter Zhu <[email protected]> eightbitraptor (Matt V-H)
11:18 AM Revision 92585898 (git): Prevent memory leak
```
for (int i = 0; i < arg->family_size; i++) {
arg->getaddrinfo_entries[i] = allocate_fast_fallback_getaddrinfo_entry();
if (!(arg->getaddrinfo_entries[i])) rb_syserr_fail(errno, "calloc(3)");
```
If the allocation fails in th...
mame (Yusuke Endoh)
10:58 AM Bug #20790: Syntax acceptance of `*x = p rescue p 1` is different between parse.y and prism
I checked if it is feasible with parse.y: https://github.com/ydah/ruby/commit/50100c136ac4bbe379b2c360994b739227610e17
I have been able to confirm that the following are feasible with the modifications shown above.
```ruby
...
ydah (Yudai Takada)
10:13 AM Revision 6ab76a62 (git): [rubygems/rubygems] Prevent a warning: net/http: Content-Type did not set
`make test-all RUBYOPT=-w` in the ruby/ruby repo printed the warning.
This change prevents the warning by specifying the content-type
explicitly.
A follow-up to https://github.com/rubygems/rubygems/commit/b70c1bb1503d
https://github.co...
mame (Yusuke Endoh)
08:40 AM Revision 4d8c793b (git): Fix initialization of `struct wait_fast_fallback_arg::cancelled`
nobu (Nobuyoshi Nakada)
08:00 AM Revision a355f7d3 (git): [ruby/open-uri] Use `ENV.update`
https://github.com/ruby/open-uri/commit/04067e54b9 nobu (Nobuyoshi Nakada)
07:28 AM Revision da8f5540 (git): [ruby/uri] Prevent a warning: URI::REGEXP is obsolete
(https://github.com/ruby/uri/pull/138)
https://github.com/ruby/uri/commit/c00726a20a
mame (Yusuke Endoh)
06:46 AM Revision 73cc312e (git): Skip flaky tests of rbs in macOS 15.x
hsbt (Hiroshi SHIBATA)
06:45 AM Revision f78f1e92 (git): Prevent a warning: setting Encoding.default_external
mame (Yusuke Endoh)
05:10 AM Revision ff5fc4b5 (git): Do not save the last error without sockets in the connection attempt (#12153)
* Do not save the last_error if there are no sockets waiting to be connected
In this implementation, the results of both name resolution and connection attempts are awaited using select(2).
When it returned, the implementation attempted...
Misaki Shioi
02:02 AM Feature #20861: Add an environment variable for tuning the default thread quantum
byroot (Jean Boussier) wrote in #note-6:
> Yes, quite literally: `Thread.current.quantum = 20` or something like that.
> ...
What happened to this idea? According to the latest comments it seems we're back to the idea of an environment...
Dan0042 (Daniel DeLorme)
01:58 AM Revision b305df8c (git): Skip sync failure when we specified old version
hsbt (Hiroshi SHIBATA)

11/24/2024

11:16 PM Revision 30fda411 (git): Removed redundant argument at Reline::LineEditor::CompletionBlockTest
hsbt (Hiroshi SHIBATA)
03:45 PM Revision bf47b1b5 (git): [ruby/reline] Fix completion quote, preposing and target calculation
bug
(https://github.com/ruby/reline/pull/763)
https://github.com/ruby/reline/commit/d3ba7216eb
tompng (tomoya ishida)
09:34 AM Revision c6ca3399 (git): Fix `--empty` option of `ifchange`
nobu (Nobuyoshi Nakada)
08:47 AM Revision 3826019f (git): Fix a build failure with musl
```
compiling gc.c
In file included from gc.c:80:
/usr/include/sys/prctl.h:88:8: error: redefinition of 'struct prctl_mm_map'
88 | struct prctl_mm_map {
| ^~~~~~~~~~~~
In file included from gc.c:79:
/usr/include/linux/prc...
Earlopain (Earlopain _)
08:26 AM Bug #20904: 3.4.0-preview2: Building miniruby.exe fails for mswin32
nobu (Nobuyoshi Nakada) wrote in #note-1:
> jun66j5 (Jun Omae) wrote:
> ...
Thanks for the fix!
> > Also, adding temporarily `-w24013` to `WARNFLAGS` in `win32/Makefile.sub`, the following warning is received.
> ...
Weird. I get th...
jun66j5 (Jun Omae)

11/23/2024

11:54 PM Bug #20907 (Closed): Fiber scheduler does not correctly re-lock mutex if `Mutex#sleep` is interrupted.
Applied in changeset commit:git|a8c2d5e7bee5fad0965baeb58d312ddc5932ec26.
----------
Ensure fiber scheduler re-acquires mutex when interrupted from sleep. (#12158)
[Bug #20907]
Anonymous
11:26 PM Bug #20907 (Closed): Fiber scheduler does not correctly re-lock mutex if `Mutex#sleep` is interrupted.
The following test fails with a `ThreadError` instead of a `RuntimeError`:
```ruby
def test_condition_variable
condition_variable = ::Thread::ConditionVariable.new
mutex = ::Thread::Mutex.new
error = nil
thr...
ioquatix (Samuel Williams)
11:54 PM Revision a8c2d5e7 (git): Ensure fiber scheduler re-acquires mutex when interrupted from sleep. (#12158)
[Bug #20907] Samuel Williams
03:44 PM Revision 31997661 (git): UBF is also required for synchronous name resolution (#12156)
`rb_thread_call_without_gvl2` is used to wait for the results of name resolution and connection attempts.
When there is only one address family to resolve, the necessary resources were not being passed to the UBF.
With this change, the h...
Misaki Shioi
02:04 PM Revision 8d575e49 (git): Save the error that occurred during name resolution (#12155)
even if a system call error happens after the name resolution failure in the child thread.
pipe and write(2) are used to notify the main thread of the name resolution results from the child thread.
After name resolution is completed in ...
Misaki Shioi
11:31 AM Bug #20904 (Feedback): 3.4.0-preview2: Building miniruby.exe fails for mswin32
jun66j5 (Jun Omae) wrote:
> Investigating it, Windows 8 is required after #20563 but `NTVER` is still `0x0600` in `win32/Makefile.sub`. I think it should be `0x0602`. Workaround is to invoke `win32\configure.bat` with `--with-ntver=0x06...
nobu (Nobuyoshi Nakada)
09:16 AM Revision 34e36a72 (git): Ensure global variable traces are freed at exit
ASAN_OPTIONS="detect_leaks=1" RUBY_FREE_AT_EXIT=1 ./miniruby -e 'trace_var(:$x){}' jhawthorn (John Hawthorn)
03:25 AM Revision a8ebc596 (git): Free parse result under -c
jhawthorn (John Hawthorn)
 

Also available in: Atom