Project

General

Profile

Activity

From 10/19/2023 to 10/25/2023

10/25/2023

11:54 PM Bug #19537 (Closed): Regexp caching algorithm since v3.2.0 causes invalid memory access
Fixed in commit:a1c2c274eebcc2a5275b677ebf94a8dbff380770 jeremyevans0 (Jeremy Evans)
11:36 PM Bug #19753 (Closed): IO::Buffer#get_string can't handle negative offset
This appears to be fixed by commit:a095740fed2a05a04806a1d3827bcaba02e45720, as you now get: `Offset can't be negative! (ArgumentError)` for `b.get_string(-1)` jeremyevans0 (Jeremy Evans)
11:33 PM Bug #19828 (Closed): Segfault when `OpenSSL::X509::Certificate#public_key=` is given a `OpenSSL::PKey::DH` object
In Ruby 3.3.0-preview2, the example code now raises `OpenSSL::PKey::PKeyError: public key missing`. That doesn't appear to meet @postmodern 's expectation, but I think the behavior is expected. If you read the `OpenSSL::PKey::DH#public_... jeremyevans0 (Jeremy Evans)
10:09 PM Bug #19779: `eval "return"` at top level raises `LocalJumpError`
I submitted a pull request to fix this: https://github.com/ruby/ruby/pull/8766 jeremyevans0 (Jeremy Evans)
09:18 PM Revision b5f6e2a7 (git): [PRISM] ScopeNode doesn't need void * anymore
jemmai (Jemma Issroff)
09:18 PM Revision 8f71a5c5 (git): [PRISM] Move scope_node itself to CRuby, create prism_compile.h
jemmai (Jemma Issroff)
09:18 PM Revision 0abf2d86 (git): [PRISM] Move pm_scope_node_init to prism_compile.c
pm_scope_node_init is only used for CRuby, so should not live in the
ruby/prism repo. We will merge the changes here first so they're
not breaking, and will then remove from ruby/prism
jemmai (Jemma Issroff)
08:32 PM Bug #19973 (Closed): Duplicate keyword argument names don't always warn
Calling a method with duplicate keyword arguments doesn't warn when it could:
```ruby
def bar a:, b:
a + b
end
# Warning
bar(a: 1, b: 3, a: 2)
z = { b: 123 }
# No warning
bar(a: 1, **z, a: 2)
```
The first call to ...
tenderlovemaking (Aaron Patterson)
08:27 PM Revision f87c31f3 (git): [PRISM] Add PM_POP macro, cleanup missing macro usage
jemmai (Jemma Issroff)
07:54 PM Feature #19972: Install default/bundled gems into dedicated directories
Eregon (Benoit Daloze) wrote in #note-1:
> Also this might remove the need for `specifications/default` which is a bit odd.
I have PR opened for this for a long time:
https://github.com/rubygems/rubygems/pull/2909
However, now ...
vo.x (Vit Ondruch)
05:57 PM Feature #19972: Install default/bundled gems into dedicated directories
I think this makes sense and would be better/clearer and make it easier if a user wants to remove all user-installed gems.
We should make sure it does not hurt application startup since it might have to look in more places, but probably...
Eregon (Benoit Daloze)
03:30 PM Feature #19972 (Assigned): Install default/bundled gems into dedicated directories
I think that the current situation, where the same directory (lets call it `Gem.default_dir`) is used for default/bundled gems as well as for user installed gems, is suboptimal. During the times, this has caused us quite some issue on Fe... vo.x (Vit Ondruch)
07:51 PM Revision 0a3eba0b (git): Fix few test_prism_eval that snuck in
HParker (Adam Hess)
06:52 PM Revision 3fe2f268 (git): [rubygems/rubygems] Raise exception on unexpected EOF in marshal
Instead of NoMethodError being raised by accidentally trying to use nil
https://github.com/rubygems/rubygems/commit/ac8f812bbf
segiddins (Samuel Giddins)
06:51 PM Revision 7e7d1f06 (git): [rubygems/rubygems] Avoid regexp match on every call to `Gem::Platform.local`
The result of `arch` would be ignored if `@local` is set, so wrap all
the logic in `@local ||=` to short-circuit everything
https://github.com/rubygems/rubygems/commit/b67d39f3e0
segiddins (Samuel Giddins)
06:00 PM Revision b0a97073 (git): Use `assert_prism_eval` over `test_prism_eval` in helper
When we use `test_prism_eval`, failed tests will point to the line
number of the `test_prism_eval` method definition instead of the test
that failed. If we use `assert_prism_eval` instead, failed tests will
properly poin to the test that...
eileencodes (Eileen Uchitelle)
05:24 PM Revision fa3cc4af (git): [rubygems/rubygems] Set file path when eval-ing local specification in EndpointSpecification
Not strictly necessary, but there is no reason not to be helpful and set the path
https://github.com/rubygems/rubygems/commit/894c0303dd
segiddins (Samuel Giddins)
04:31 PM Misc #19925: DevMeeting-2023-11-07
* [Feature #19324] `Enumerator.product` => `Enumerable#product`
* The method introduced is inconsistent with `Array#product` being an instance method, and in general is defined unlike any similar `Enumerable` or `Array` methods;
* ...
zverok (Victor Shepelev)
04:02 PM Revision 8197bbb0 (git): [PRISM] Toggled accepts_no_kwarg to true on NoKeywordsParameterNode
jemmai (Jemma Issroff)
04:02 PM Revision fb0a3016 (git): [PRISM] Add tests for ParametersNode
jemmai (Jemma Issroff)
04:02 PM Revision fe082701 (git): [PRISM] Implement NoKeywordsParameterNode
jemmai (Jemma Issroff)
02:57 PM Revision 4f1adb01 (git): Try newer 2023-10-18 vcpkg [ci skip]
https://github.com/microsoft/vcpkg/issues/33904
This reverts commit 8f1b688177dba412821cbc01ef2cabdce385f7ba, "Revert
vcpkg.exe to previous release [ci skip]".
nobu (Nobuyoshi Nakada)
02:36 PM Bug #19927 (Closed): TestCoverage#test_coverage_suspendable fails on ppc64le
jeremyevans0 (Jeremy Evans)
02:30 PM Bug #19927: TestCoverage#test_coverage_suspendable fails on ppc64le
This is likely resolved by https://github.com/ruby/ruby/pull/8670 vo.x (Vit Ondruch)
02:08 PM Feature #19744: Namespace on read
tagomoris (Satoshi Tagomori) wrote in #note-69:
> `Kernel#load(file, wrap)` doesn't work as you wrote. `class C` defines a new class `C` even when the caller script already defined `C`.
Interesting. So that means with the current POC it...
Eregon (Benoit Daloze)
07:13 AM Feature #19744: Namespace on read
`load file, mod` pushes `mod` to the nesting. The constant lookup issued by the `class/module` keywords checks the first element of the nesting (`Object` if the nesting is empty).
This is a feature I don't personally like very much (sai...
fxn (Xavier Noria)
12:30 AM Feature #19744: Namespace on read
Eregon (Benoit Daloze) wrote in #note-67:
> So mostly I think we should rely on the semantics of `Kernel#load(file, wrap: wrap_module)`.
> ...
`Kernel#load(file, wrap)` doesn't work as you wrote. `class C` defines a new class `C` even ...
tagomoris (Satoshi Tagomori)
12:40 PM Revision 2f8a719b (git): Removed unused argument
Eventually, `read_escape` does not use `encp`. nobu (Nobuyoshi Nakada)
11:37 AM Revision f26d53e9 (git): Reduce the number of times IO is passed in send_io/recv_io test
Since Linux 4.5, sendmsg(2) fails with ETOOMANYREFS if the number of
"in-flight" IOs, which has been sent by sendmsg(2) but has not yet
accepted by recvmsg(2), exceeds the RLIMIT_NOFILE resource limit.
https://rubyci.s3.amazonaws.com/ar...
mame (Yusuke Endoh)
11:04 AM Revision de824392 (git): Do not use pthread_setaffinity_np on s390x
Looks like it randomly causes a segfault
https://rubyci.s3.amazonaws.com/rhel_zlinux/ruby-master/log/20231025T093302Z.fail.html.gz
```
[11186/26148] TestNetHTTP_v1_2#test_set_form/home/chkbuild/build/20231025T093302Z/ruby/tool/lib/webri...
mame (Yusuke Endoh)
09:58 AM Revision 54a5623e (git): Strip trailing spaces [ci skip]
nobu (Nobuyoshi Nakada)
09:49 AM Revision 16494868 (git): Fixup 5461bc18f88
hsbt (Hiroshi SHIBATA)
07:50 AM Revision 526292d9 (git): LLDB: Use `expression` to save the result into the history [ci skip]
nobu (Nobuyoshi Nakada)
07:49 AM Revision bf136230 (git): [Doc] Improve documentation of PP
* Remove mention to `require 'pp'` for `pretty_inspect`
* Mention the need to add `require 'pp'` to customize
`#pretty_print(pp)` method
okuramasafumi (Masafumi OKURA)
07:47 AM Revision 5461bc18 (git): omit failing test at arm64-neoverse-n1
hsbt (Hiroshi SHIBATA)
07:44 AM Bug #19916: URI#to_s can serialize to a value that doesn't deserialize to the original
to_s is not serialize / deserialize
also it is not guarantied that to_s returns a string that is parsable
Hanmac (Hans Mackowiak)
07:34 AM Revision 593de2b0 (git): Add tests for passing nil to Comparable#clamp(min, max)
kyanagi (Kouhei Yanagita)
07:34 AM Revision 55eb0d5c (git): [DOC] Add doc for behavior when passing nil to Comparable#clamp(min, max)
kyanagi (Kouhei Yanagita)
07:32 AM Bug #19632 (Closed): Disable external iterator for frozen enumerator
Applied in changeset commit:git|3e64cf60b5162bb5dad772f300b7f6346e5f83f9.
----------
Fix [Bug #19632]: Disable external iterator for frozen enumerator (#7791)
* Fix [Bug #19632]: Disable external iterator for frozen enumerator
Current...
make_now_just (Hiroya Fujinami)
07:32 AM Revision 3e64cf60 (git): Fix [Bug #19632]: Disable external iterator for frozen enumerator (#7791)
* Fix [Bug #19632]: Disable external iterator for frozen enumerator
Currently, methods to manipulate an external iterator like `#next`
and `#feed` can be called even if a receiver of an enumerator is
frozen. However, these methods chang...
make_now_just (Hiroya Fujinami)
05:36 AM Bug #19970: Eval leaks callcache and callinfo objects on arm32 (linux)
The issue has also been reproduced on master (ruby 3.3.0dev (2023-10-24 master 60196b4780) [armv7l-linux-eabihf]). larsin (Lars Ingjer)
04:10 AM Revision a6a67b05 (git): Do not append latest_date to gems/bundled_gems [ci skip]
znz (Kazuhiro NISHIYAMA)
12:46 AM Revision c5861903 (git): [rubygems/rubygems] Handle CI configuration on ignore list for Gem::Specification#files
https://github.com/rubygems/rubygems/commit/4bb0ef3e55 hsbt (Hiroshi SHIBATA)

10/24/2023

11:12 PM Revision 820957b1 (git): Remove unused macro
`struct RNode_OP_ASGN22` was removed by 37a783a. yui-knk (Kaneko Yuichiro)
10:38 PM Revision a2badf30 (git): Follow up NODE_OP_ASGN2 structure change
yui-knk (Kaneko Yuichiro)
09:23 PM Revision d8cb827f (git): Remove SHAPE_MAX_NUM_IVS
There is no longer a limit on the number of IVs you can store.
SHAPE_MAX_NUM_IVS was used to work around the IV10K problem (the well
known problem where setting 10k instance variables in a row would be too
slow). The redblack tree works...
tenderlovemaking (Aaron Patterson)
09:23 PM Revision 33bebee1 (git): Use available constants
We don't need to intern "initialize" all the time because we already
have `idInitialize` available
tenderlovemaking (Aaron Patterson)
09:23 PM Revision afae8df3 (git): `get_next_shape_internal` should always return a shape
If it runs out of shapes, or new variations aren't allowed, it will
return "too complex"
tenderlovemaking (Aaron Patterson)
09:23 PM Revision cfd7c1a2 (git): Allow the shape tree to be traversed
This commit allows the shape tree to be traversed to locate an existing
shape, but it doesn't necessarily allow you to create new variations.
tenderlovemaking (Aaron Patterson)
09:23 PM Revision 3760bacc (git): Remove new_shape_necessary code
We always create new shapes until we run out! tenderlovemaking (Aaron Patterson)
09:23 PM Revision 702b8e31 (git): golf down ancestor caching
tenderlovemaking (Aaron Patterson)
09:06 PM Misc #19971: Confusing arity of a Proc with implicit rest parameter
Ah, I see. Thanks for clarifying! FWIW, lambdas don't ack the implicit rest either. shan (Shannon Skipper)
08:53 PM Misc #19971: Confusing arity of a Proc with implicit rest parameter
@shan I don't think this documentation definition covers the case described by OP.
`proc { |a,| }` is not the same as `proc { |a| }`, and is semantically equivalent of `proc { |a,*| }`. I think it is reasonable to expect its `arity`—...
zverok (Victor Shepelev)
08:32 PM Misc #19971: Confusing arity of a Proc with implicit rest parameter
Docs say it's intended, since #arity "returns -n-1, where n is the number of mandatory arguments, with the exception for blocks that are not lambdas and have only a finite number of optional arguments; in this latter case, returns n." A ... shan (Shannon Skipper)
01:07 PM Misc #19971 (Open): Confusing arity of a Proc with implicit rest parameter
I've noticed that such proc `proc { |a,| }` has arity `1`:
```ruby
proc { |a,| }.arity # => 1
```
that means only one required parameter, but the proc behaves similar to a proc with explicit rest parameter (`proc { |a, *| }`) tha...
andrykonchin (Andrew Konchin)
08:40 PM Bug #19916: URI#to_s can serialize to a value that doesn't deserialize to the original
I agree this is a bug. There's a few ways to fix it:
1. Convert the relative path to absolute path when host/port is set.
2. Raise if path is relative when setting host/port.
3. Change URI#to_s to add a slash for a relative path if...
jeremyevans0 (Jeremy Evans)
07:35 PM Revision ee829986 (git): Remove erroneous test_code.rb file
jemmai (Jemma Issroff)
07:30 PM Feature #19744: Namespace on read
I see it as @Eregon.
Let me share my point of view more broadly.
First of all, I believe solutions should be given to library authors, not to client code. Bottom up. If client code needs to workaround limitation of the language, you ha...
fxn (Xavier Noria)
02:51 PM Feature #19744: Namespace on read
Since this proposal is not providing full isolation, I think it should be kept as simple and minimal as possible.
If `class String; end` would define `ns::String` then `"abc".class == String` would not hold, that seems pretty bad.
And ...
Eregon (Benoit Daloze)
02:35 PM Feature #19744: Namespace on read
Dan0042 (Daniel DeLorme) wrote in #note-64:
> @tagomoris, have you considered the idea that `::Foo` should refer to the Foo constant within the namespace instead of the top-level?
Yes, but I concluded that it's both almost impossible...
tagomoris (Satoshi Tagomori)
02:12 PM Feature #19744: Namespace on read
@fxn Yes, I know my example was too extreme. I just wanted to say it's not enough reasonable to say "It's not deterministic."
I will propose any feature/limitation/behavior about reopening classes (whitelists? declarations? or something...
tagomoris (Satoshi Tagomori)
01:24 PM Feature #19744: Namespace on read
@tagomoris, have you considered the idea that `::Foo` should refer to the Foo constant within the namespace instead of the top-level? That would mean the namespace is fully isolated and prevented from reaching outside of itself, which ma... Dan0042 (Daniel DeLorme)
01:12 PM Feature #19744: Namespace on read
@tagomoris Regarding the `BasicObject` example, yes, Ruby allows you to re-assign to builtin constants, but it is a different level of lack of guarantee in practice, the way I see it. Perhaps there are _levels_ of determinism? 😅
Nowaday...
fxn (Xavier Noria)
12:57 PM Feature #19744: Namespace on read
fxn (Xavier Noria) wrote in #note-61:
> @tagomoris One tricky part is constant resolution, I believe. For example, consider:
> ...
@fxn Ah, yes. Thank you for pointing it out. That's another problem of having per-namespace `Object`.
I...
tagomoris (Satoshi Tagomori)
09:12 AM Feature #19744: Namespace on read
@tagomoris One tricky part is constant resolution, I believe. For example, consider:
```ruby
class String # (1)
end
class C # (2)
String
end
module M # (3)
String
end
```
If `String` becomes a new class object in (1), because the...
fxn (Xavier Noria)
08:36 AM Feature #19744: Namespace on read
@fxn It depends on whether namespaces have their own `Object` or not (https://bugs.ruby-lang.org/issues/19744#note-51).
If they have (on option A), the superclass is `ns::Object`.
If they don't (on option B), the superclass is `::Objec...
tagomoris (Satoshi Tagomori)
07:32 AM Feature #19744: Namespace on read
> the statement class C; end should define a new class C in the namespace because C is not defined in the namespace
@tagomoris which would be the superclass of that `C` if loaded under a virtual namespace?
fxn (Xavier Noria)
02:31 AM Feature #19744: Namespace on read
@jeremyevans0 That's the point. I agree that it makes things strange if namespaces have their own `Object`.
And, @fxn also pointed out the discussion point - what should `class C; end` in a namespace do when it's already defined in th...
tagomoris (Satoshi Tagomori)
06:34 PM Revision 10756f3d (git): [ruby/prism] Add PostExecutionNode to pm_scope_node_init
https://github.com/ruby/prism/commit/88fe6213af jemmai (Jemma Issroff)
05:52 PM Revision e71f343a (git): Addressing feedback
tenderlovemaking (Aaron Patterson)
05:52 PM Revision 884c3195 (git): Update benchmark/vm_ivar_ic_miss.yml
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Aaron Patterson
05:52 PM Revision dc814324 (git): updating bindgen
tenderlovemaking (Aaron Patterson)
05:52 PM Revision 54230dea (git): Don't cache on platforms without mmap
We're only going to create a redblack tree on platforms that have mmap tenderlovemaking (Aaron Patterson)
05:52 PM Revision a3f66e09 (git): geniv objects can become too complex
tenderlovemaking (Aaron Patterson)
05:52 PM Revision caf6a723 (git): remove IV limit / support complex shapes on classes
tenderlovemaking (Aaron Patterson)
05:52 PM Revision 27c75319 (git): increase the maximum number of ivs
tenderlovemaking (Aaron Patterson)
05:52 PM Revision 84e44534 (git): Use a functional red-black tree for indexing the shapes
This is an experimental commit that uses a functional red-black tree to
create an index of the ancestor shapes. It uses an Okasaki style
functional red black tree:
https://www.cs.tufts.edu/comp/150FP/archive/chris-okasaki/redblack99....
tenderlovemaking (Aaron Patterson)
04:31 PM Revision 5c4978c1 (git): [rubygems/rubygems] Handle empty array
https://github.com/rubygems/rubygems/commit/7c0afdd9af hsbt (Hiroshi SHIBATA)
03:05 PM Bug #19969: Regression of memory usage with Ruby 3.1
So apparently some applications were relying on `Set#dup`/`Hash#dup` to do like C++ [shrink_to_fit](https://en.cppreference.com/w/cpp/container/vector/shrink_to_fit).
Ruby does not have such a method and it feels quite low-level, so it ...
Eregon (Benoit Daloze)
02:59 PM Bug #19969: Regression of memory usage with Ruby 3.1
Right, @nobu's approach seems much better than reintroducing that weird behavior for `.dup`.
Ideally we wouldn't rehash as in calling `key.hash` methods again, but instead just shrink the internal data structure (and same when growing...
Eregon (Benoit Daloze)
11:02 AM Bug #19969: Regression of memory usage with Ruby 3.1
May https://github.com/nobu/ruby/tree/rehash-after-delete help it? nobu (Nobuyoshi Nakada)
09:47 AM Bug #19969 (Closed): Regression of memory usage with Ruby 3.1
Our company that is ANDPAD, Inc. encountered to increase memory usage after upgrading Ruby 3.2 from 3.0 on our Rails application. This increase size is about 20%.
My colleague found this [root cause](https://bugs.ruby-lang.org/issues/...
hsbt (Hiroshi SHIBATA)
01:59 PM Bug #19968 (Closed): make install - RBS gem is not installed
Applied in changeset commit:git|c86c6a84f53a21330702ebd21cc1a65d7776171d.
----------
[Bug #19968] Revert RBS revision to test
This reverts the commits for the master branch of RBS:
- commit f717faac632dd8664d0967f8e639b84d5d032854: "U...
nobu (Nobuyoshi Nakada)
12:58 PM Bug #19968: make install - RBS gem is not installed
I am adding the reverting commit on this PR <https://github.com/ruby/ruby/pull/8739>. The `make install` in Travis arm64, ppc64le and s390x failed by the following error. And the reverting commit fixed the issue.
```
$ make -s instal...
jaruga (Jun Aruga)
12:46 PM Bug #19968: make install - RBS gem is not installed
Reverting this commit for now?
https://github.com/ruby/ruby/commit/f717faac632dd8664d0967f8e639b84d5d032854
jaruga (Jun Aruga)
10:31 AM Bug #19968: make install - RBS gem is not installed
I don't understand why the ruby/ruby's GitHub Actions CI was not able to catch this issue.
jaruga (Jun Aruga)
01:59 PM Revision c86c6a84 (git): [Bug #19968] Revert RBS revision to test
This reverts the commits for the master branch of RBS:
- commit f717faac632dd8664d0967f8e639b84d5d032854: "Update rbs
revision to test"
The target revision to test is in master branch, not for 3.2.x.
- commit 9e93af5329f35092c3d...
nobu (Nobuyoshi Nakada)
12:56 PM Bug #19970 (Open): Eval leaks callcache and callinfo objects on arm32 (linux)
The following script demonstrates a memory leak on arm 32 (linux):
``` ruby
def gcdiff(n)
GC.start
if @last_gc_stat
puts "GC.stat #{n} diff old_objects: #{GC.stat(:old_objects) - @last_gc_stat}"
end

@last_gc_stat ...
larsin (Lars Ingjer)
03:34 AM Revision c44d6542 (git): Bump ossf/scorecard-action from 2.3.0 to 2.3.1
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md...
dependabot[bot]
03:33 AM Feature #19965 (Closed): Make the name resolution interruptible
Applied in changeset commit:git|3dc311bdc8badb680267f5a10e0c467ddd9dfe4c.
----------
Make rb_getaddrinfo interruptible
When pthread_create is available, rb_getaddrinfo creates a pthread and
executes getaddrinfo(3) in it. The caller thr...
mame (Yusuke Endoh)
03:30 AM Revision ccd18d05 (git): Clean up temporary file, wc.input [ci skip]
nobu (Nobuyoshi Nakada)
03:30 AM Revision 92f29349 (git): Use extquote instead of literal tabs [ci skip]
nobu (Nobuyoshi Nakada)
03:22 AM Revision 25c1204f (git): rb_getaddrinfo should return EAI_AGAIN instead of EAGAIN
mame (Yusuke Endoh)
03:22 AM Revision c0802025 (git): Indent critical regions with blocks
Cosmetic change per ko1's preference mame (Yusuke Endoh)
03:22 AM Revision acd77426 (git): Do not use pthread on mingw
mame (Yusuke Endoh)
03:22 AM Revision 16d6a227 (git): Make rb_getnameinfo interruptible
Same as previous commit for rb_getnameinfo. mame (Yusuke Endoh)
03:22 AM Revision 3dc311bd (git): Make rb_getaddrinfo interruptible
When pthread_create is available, rb_getaddrinfo creates a pthread and
executes getaddrinfo(3) in it. The caller thread waits for the pthread
to complete, but detaches it if interrupted. This allows name resolution
to be interuppted by T...
mame (Yusuke Endoh)
03:22 AM Revision efd58f19 (git): Expand macro branches to make them plain
mame (Yusuke Endoh)
03:22 AM Revision 25ef8d26 (git): Refactor GETADDRINFO_IMPL instead of GETADDRINFO_EMU
This is a preparation for introducing cancellable
getaddrinfo/getnameinfo.
mame (Yusuke Endoh)
03:22 AM Revision 9ce607a8 (git): refactor a call to getaddrinfo
mame (Yusuke Endoh)

10/23/2023

10:53 PM Revision 30f5a2bb (git): [ruby/io-nonblock] Don't define nonblock methods if they are defined by core.
https://github.com/ruby/io-nonblock/commit/5d3991859c Samuel Williams
09:05 PM Bug #19909 (Closed): s390x zlib different deflate algorithm producing a different compressed byte stream causing test failures
jeremyevans0 (Jeremy Evans)
08:22 PM Revision 39207b49 (git): [PRISM] Implement compilation for PreExecutionNodes
jemmai (Jemma Issroff)
08:22 PM Revision 5abff9db (git): [PRISM] Add PM_PUTNIL macro
jemmai (Jemma Issroff)
08:15 PM Revision 7c4e3ca2 (git): [PRISM] Fix AssocSplat node
This commit emits the correct instructions for hashes which have
both AssocSplat and Assoc nodes contained within them
jemmai (Jemma Issroff)
07:52 PM Revision 062d6050 (git): [rubygems/rubygems] Ignore non-tar format `.gem` files during search
Previously, `rake install` or `rake update` would fail if there was a non-tar format `.gem` file in the current working directory.
https://github.com/rubygems/rubygems/commit/f562788f1d
dearblue (宗介 相良)
05:05 PM Bug #19921: TestYJIT#test_bug_19316 test failure
> Seeing the commit message, what the "& call checks" mean? What makes the failure?
It's the `a & b` call to `Integer#&` in the test. The failure was from a time-based interrupt, which is used for thread switching and for IO operation...
alanwu (Alan Wu)
01:07 PM Bug #19921: TestYJIT#test_bug_19316 test failure
alanwu (Alan Wu) wrote in #note-18:
> Thanks! The new message confirms the issue. The test should pass now, as of commit:fab70183.
Thanks for the fix! I am glad for that.
https://github.com/ruby/ruby/commit/fab7018346488a693d34ea8...
jaruga (Jun Aruga)
04:59 PM Revision 60196b47 (git): [PRISM] Fix __LINE__ to be 1-indexed by default
jemmai (Jemma Issroff)
04:59 PM Revision f9e122b3 (git): [PRISM] Add several tests
jemmai (Jemma Issroff)
03:37 PM Revision 62c674f9 (git): [PRISM] Fix compilation for IfNode, UnlessNode
This properly implements the branch condition for FlipFlopNodes on
If / UnlessNodes, and also fixes the bug in UnlessNodes
jemmai (Jemma Issroff)
03:30 PM Revision 296da1a2 (git): [PRISM] Add tests for BlockNode, BlockLocalVariableNode, BlockParamet… (#8725)
[PRISM] Add tests for BlockNode, BlockLocalVariableNode, BlockParametersNode jemmai (Jemma Issroff)
02:59 PM Feature #19744: Namespace on read
@tagomoris I feel that for the proposal to be better understood, it needs to explain where are constants defined, and how constant resolution algorithms change.
Please, remember than when you write
```ruby
class C
end
```
the...
fxn (Xavier Noria)
02:38 PM Feature #19744: Namespace on read
tagomoris (Satoshi Tagomori) wrote in #note-52:
> jeremyevans0 (Jeremy Evans) wrote in #note-47:
> ...
I assumed it because you stated `Object.object_id != ns1::Object.object_id`. Seems odd that `Object.superclass == ::Object` in a na...
jeremyevans0 (Jeremy Evans)
02:08 PM Feature #19744: Namespace on read
Sorry I missed that. But I think this idea needs to be "on the table" because duplicating `Object` opens a pretty big rabbit hole of its own. Dan0042 (Daniel DeLorme)
01:44 PM Feature #19744: Namespace on read
@Dan0042 The previous paragraph ends with
> assuming the constants table is not per "virtual namespace"
Did not elaborate on this because it is not on the table, and because it opens its own rabbit hole.
fxn (Xavier Noria)
01:15 PM Feature #19744: Namespace on read
> That is why I believe `Object.equal?(ns::Object)` has to be false to accomplish the wanted isolation.
Not necessarily. `Object.constants` could return a different set of values depending on which Namespace you're in, similar to how ...
Dan0042 (Daniel DeLorme)
06:52 AM Feature #19744: Namespace on read
jeremyevans0 (Jeremy Evans) wrote in #note-47:
> If `Object.object_id != ns1::Object.object_id`, I assume `BasicObject.object_id != ns1::BasicObject.object_id`, but Ruby currently does not allow for copying the root class:
> ...
@jerem...
tagomoris (Satoshi Tagomori)
06:40 AM Feature #19744: Namespace on read
After my last comment and comments from others, I should say I could make a wrong comment about `ns::Object`. I didn't think about it enough. Sorry, guys.
My main concern about `Object` was the owner of top-level methods. My comment (...
tagomoris (Satoshi Tagomori)
02:56 PM Revision f20e91fb (git): [ruby/prism] Avoid String#chars in DedentingHeredoc#to_a
Prefer String#[] directly.
https://github.com/ruby/prism/commit/916f991220
Maumagnaguagno (Mau Magnaguagno)
02:13 PM Revision bf93ceb2 (git): Set date in message to the latest gem date [ci skip]
nobu (Nobuyoshi Nakada)
02:13 PM Revision ef5717d9 (git): Use outputs instead of outcome with continue-on-error [ci skip]
Suppress exit code annotations. nobu (Nobuyoshi Nakada)
12:50 PM Revision f82d0ab5 (git): [ruby/prism] Exclude comments when only serializing semantic fields
https://github.com/ruby/prism/commit/6f4fab362e Eregon (Benoit Daloze)
10:28 AM Revision 42c2c8ca (git): Adjust indent [ci skip]
nobu (Nobuyoshi Nakada)
08:40 AM Revision 839b7631 (git): Use named reference for dyna_push
nobu (Nobuyoshi Nakada)
08:40 AM Revision 7e80f0b5 (git): Extract p_in_kwarg to save and update lexer contexts
nobu (Nobuyoshi Nakada)
08:40 AM Revision 428f9f5d (git): Move push_pvtbl and push_pktbl in nterms
nobu (Nobuyoshi Nakada)
08:40 AM Revision 3b052382 (git): Extract p_assoc and p_in to save lexer contexts
nobu (Nobuyoshi Nakada)
08:28 AM Revision df5bf5bb (git): Removed unnecessary libraries of sync_tool
hsbt (Hiroshi SHIBATA)
08:22 AM Revision 9844371c (git): sync_tool is unnecessary now.
We can use https://github.com/ruby/test-unit-ruby-core for testing the default gems. hsbt (Hiroshi SHIBATA)
08:04 AM Revision e6fcf07a (git): Use `-H` option instead of `-h` option
Follow up: https://github.com/ruby/lrama/pull/139 ydah (Yudai Takada)
07:59 AM Revision 8942c73e (git): [rubygems/rubygems] Disabled Style/HashSyntax for keyword arguments
https://github.com/rubygems/rubygems/commit/9b61b33568 hsbt (Hiroshi SHIBATA)
07:33 AM Revision e5364ea4 (git): rb_shape_transition_shape_capa: use optimal sizes transitions
Previously the growth was 3(embed), 6, 12, 24, ...
With this change it's now 3(embed), 8, 16, 32, 64, ... by default.
However, since power of two isn't the best size for all allocators,
if `malloc_usable_size` is vailable, we use it to...
byroot (Jean Boussier)
05:15 AM Bug #19929: Warnings for `mutex_m`, `drb` and `base64` appears while the gem spec has explicit dependencies
I removed `mutex_m` dependency from minitest at https://github.com/minitest/minitest/pull/973 hsbt (Hiroshi SHIBATA)
04:59 AM Revision e7d845b1 (git): [rubygems/rubygems] Restore using old way of passing Ruby version to resolver
We used `Bundler::RubyVersion.system.gem_version` for a long time, but I
changed this to `Gem.ruby_version` at
https://github.com/rubygems/rubygems/commit/94f96439438e. It's unclear why I did that
though since I believe it was unrelated ...
deivid (David Rodríguez)
04:59 AM Revision 6dcd4e90 (git): [rubygems/rubygems] Handle base64 encoded checksums in lockfile for future compatibility.
Save checksums using = as separator.
https://github.com/rubygems/rubygems/commit/a36ad7d160
martinemde (Martin Emde)
04:59 AM Revision c667de72 (git): [rubygems/rubygems] Improve errors and register checksums reliably
Improve error reporting for checksums, raises a new error class.
Solve for multi-source checksum errors.
Add CHECKSUMS to tool/bundler/(dev|standard|rubocop)26_gems.rb
https://github.com/rubygems/rubygems/commit/26ceee0e76
Co-authore...
martinemde (Martin Emde)
04:59 AM Revision 6362bfdc (git): [rubygems/rubygems] rename Index#== to Index#subset?
https://github.com/rubygems/rubygems/commit/a96a561087 martinemde (Martin Emde)
04:59 AM Revision 92f23a48 (git): [rubygems/rubygems] Refactor Checksum classes and methods to reduce
code.
(https://github.com/rubygems/rubygems/pull/6917)
https://github.com/rubygems/rubygems/commit/2238bdaadc
Martin Emde
04:59 AM Revision c5fd9407 (git): [rubygems/rubygems] Refactor to checksums stored via source
This gets the specs passing, and handles the fact that we expect
checkums to be pinned only to a particular source
This also avoids reading in .gem files during lockfile generation,
instead allowing us to query the source for each resol...
segiddins (Samuel Giddins)
04:59 AM Revision 69d7e9a1 (git): [rubygems/rubygems] Use the server checksum, then calculate from gem on disk if possible
1. Use the checksum provided by the server if provided: provides security
knowing if the gem you downloaded matches the gem on the server
2. Calculate the checksum from the gem on disk: provides security knowing
if the gem has changed b...
Mercedes Bernard
04:59 AM Revision ad08674d (git): [rubygems/rubygems] Add CHECKSUMS for each gem in lockfile
We lock the checksum for each resolved spec under a new CHECKSUMS
section in the lockfile.
If the locked spec does not resolve for the local platform, we preserve
the locked checksum, similar to how we preserve specs.
Checksum locking ...
Thong Kuah
04:14 AM Revision 2d468358 (git): Lrama v0.5.7
yui-knk (Kaneko Yuichiro)
02:54 AM Revision dd9b4851 (git): Bump ruby/setup-ruby from 1.156.0 to 1.157.0
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.156.0 to 1.157.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Commits](https://github.com/ruby/setup-ruby/compare/5cfe23c062c0aac352e765b1b7cc12ea52...
dependabot[bot]
02:48 AM Bug #19968 (Closed): make install - RBS gem is not installed
See failing builds in https://github.com/ruby/ruby-dev-builder/actions/runs/6605670146
Same issue with ruby-loco.
I assume gems/bundled_gems.rb will need an update. Also, https://github.com/ruby/rbs/pull/1579
MSP-Greg (Greg L)

10/22/2023

08:17 PM Revision 11468269 (git): [rubygems/rubygems] Fix spelling of extraneous
https://github.com/rubygems/rubygems/commit/af61829432 martinemde (Martin Emde)
04:03 PM Feature #19744: Namespace on read
Let me clarify the example using `X`, because the integer value and the wording may confuse, perhaps.
If `foo.rb` has
```ruby
X = 1
```
I expect as a Ruby programmer that in the next line `Object.constants` includes `:X`. If c...
fxn (Xavier Noria)
02:32 PM Feature #19744: Namespace on read
@Eregon I understand the patch is a partial implementation of the proposal (also, the author of the ticket said `Object` and `ns::Object` would be different).
It cannot be otherwise, because if `Object` and `ns::Object` where the same o...
fxn (Xavier Noria)
11:12 AM Revision b84e6fe9 (git): [DOC] Mention the omission of a superclass when reopening a class
kyanagi (Kouhei Yanagita)
09:47 AM Revision e721a7ae (git): [DOC] Update documentation for typical implementation of hash
Yuki Tsujimoto
03:18 AM Revision 7578bc35 (git): [ruby/io-console] Intersperse Win32 and termios implementations
So that the both sources appear in RDoc generated HTMLs.
https://github.com/ruby/io-console/commit/beec164a47
nobu (Nobuyoshi Nakada)
02:31 AM Revision 0f02a86a (git): Update default gems list at 8c0c7be65b21dc34156919b04b834e [ci skip]
git[bot]
02:30 AM Revision 8c0c7be6 (git): [ruby/io-console] Start 0.6.1
https://github.com/ruby/io-console/commit/06307a755d nobu (Nobuyoshi Nakada)
02:09 AM Revision c7731b35 (git): [ruby/io-console] [DOC] Split .document files to sync with ruby/ruby
https://github.com/ruby/io-console/commit/13e0bcac9f nobu (Nobuyoshi Nakada)

10/21/2023

11:44 PM Revision 9e93af53 (git): Skip RBS `RbConfig::TOPDIR` test that is `nil` before installation
nobu (Nobuyoshi Nakada)
11:44 PM Revision 0ca5182a (git): RBS no longer has test/stdlib/Prime_test.rb
nobu (Nobuyoshi Nakada)
11:44 PM Revision f717faac (git): Update rbs revision to test
nobu (Nobuyoshi Nakada)
10:58 PM Revision cabf3dac (git): [ruby/io-console] [DOC] Add .document
https://github.com/ruby/io-console/commit/62a677b51a nobu (Nobuyoshi Nakada)
08:35 PM Revision 499e66d0 (git): [rubygems/rubygems] Gem::NameTuple equality ignores Gem::Platform/string platform variation
https://github.com/rubygems/rubygems/commit/49aaa46708 martinemde (Martin Emde)
06:06 PM Revision 745879b5 (git): [ruby/irb] Minor refactors around irb.rb
(https://github.com/ruby/irb/pull/736)
* Remove dead method
* Simplify IRB.version
* Move private Irb methods together
* Centralise @CONF initialization/assignment in init.rb
* Move attr_* calls above initialize method
https://gith...
st0012 (Stan Lo)
03:26 PM Bug #19967 (Closed): Already installed libruby.dylib is used for test on macOS
Applied in changeset commit:git|665b4c5b2a31078d7db0173ad60daad0b463c1fd.
----------
[Bug #19967] Reset `LIBPATHENV` env after started
Not to affect other tools invoked as child processes.
nobu (Nobuyoshi Nakada)
02:47 PM Revision 361bce8d (git): [Bug #19967] Ignore library before build
nobu (Nobuyoshi Nakada)
10:47 AM Revision 38b79b05 (git): Fallback job status to normal if no tty
nobu (Nobuyoshi Nakada)
07:45 AM Revision 54b9b80b (git): [Bug #19967] Delete real path
nobu (Nobuyoshi Nakada)
06:42 AM Revision 5e24a4e3 (git): Strip universal_archnames
nobu (Nobuyoshi Nakada)
05:05 AM Revision 642875e4 (git): [Bug #19967] Revert "configure.ac: LIBPATHENV on macOS"
This reverts commit 1961c786aab243b3eb60e7238224e87975d88056. These
environment variables should no longer propagate to child processes.
nobu (Nobuyoshi Nakada)
05:05 AM Revision 665b4c5b (git): [Bug #19967] Reset `LIBPATHENV` env after started
Not to affect other tools invoked as child processes. nobu (Nobuyoshi Nakada)
05:05 AM Revision 6d1ed3de (git): Avoid duplicate path in library paths
nobu (Nobuyoshi Nakada)
04:30 AM Revision 55d95472 (git): Raise TypeError for bad IO::Buffer.map argument (#8728)
* Raise TypeError when IO::Buffer.map argument is neither IO nor implements #fileno
* Use UNREACHABLE_CODE
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
* Use macro for undef check
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-...
headius (Charles Nutter)
02:00 AM Revision 0e62802c (git): Extract IO::Buffer.for string locking test (#8729)
String locking with locktmp is not really part of the public API,
and the test relies in a side effect of using it to protect the
buffer. On other implementations without locktmp this does not
fail. Separate into its own test so it can b...
headius (Charles Nutter)

10/20/2023

08:20 PM Bug #19921 (Closed): TestYJIT#test_bug_19316 test failure
Thanks! The new message confirms the issue. The test should pass now, as of commit:fab70183. alanwu (Alan Wu)
02:12 AM Bug #19921: TestYJIT#test_bug_19316 test failure
With commit:985370406d2c5150fa3e0f23cdae605ec1a60fdb
```
93) Failure:
TestYJIT#test_bug_19316 [/builddir/build/BUILD/ruby-3.3.0-985370406d/test/ruby/test_yjit.rb:1163]:
Expected no exits, but got:
{:opt_and=>1}
Reasons:
method ...
mtasaka (Mamoru TASAKA)
08:12 PM Revision 8a88172f (git): YJIT: Skip printing stats at exit if --yjit-disable (#8727)
k0kubun (Takashi Kokubun)
07:29 PM Revision 01787d53 (git): [PRISM] Setup encodings in prism compiler
jemmai (Jemma Issroff)
05:38 PM Feature #19744: Namespace on read
> Yes, Object.object_id != ns1::Object.object_id
OK. I did not expect that and the PoC does not do anything like that.
What about `class C; end` when loaded in a namespace, from which Object does it inherit then?
What about instance...
Eregon (Benoit Daloze)
03:57 PM Feature #19744: Namespace on read
If `Object.object_id != ns1::Object.object_id`, I assume `BasicObject.object_id != ns1::BasicObject.object_id`, but Ruby currently does not allow for copying the root class:
```
ruby -e BasicObject.dup
-e:1:in `initialize_copy': can...
jeremyevans0 (Jeremy Evans)
03:06 PM Feature #19744: Namespace on read
@tagomoris got it, thanks!
So, if I have
```ruby
class C
end
```
and client code loads that file under a namespace `ns`, then `ns::Object.constants` includes `:C`?
And `::C` in my required code is locally resolved to `Object::C`, whi...
fxn (Xavier Noria)
02:43 AM Feature #19744: Namespace on read
> If so, yes. It's planned (and it's working on my PoC branch, without the "Gem Namespaces" feature).
Nice. Thanks for taking the time to answer and clarify.
Also, I think that "gem namespaces" are something that are enabled implic...
martinemde (Martin Emde)
01:51 AM Feature #19744: Namespace on read
Dan0042 (Daniel DeLorme) wrote in #note-41:
> Would it be possible to use this features to load a Ractor-incompatible library inside a NameSpace inside a Ractor? Let's say:
> ...
@Dan0042 Currently, in this proposal, it's impossible. N...
tagomoris (Satoshi Tagomori)
01:43 AM Feature #19744: Namespace on read
fxn (Xavier Noria) wrote in #note-38:
> What happens with the top-level constants defined by the interpreter? In particular, is `Object.object_id != ns1::Object.object_id != ns2::Object.object_id`?
@fxn This proposal says: "a new fea...
tagomoris (Satoshi Tagomori)
01:36 AM Feature #19744: Namespace on read
martinemde (Martin Emde) wrote in #note-37:
> ### Patching/plugins
> ...
@martinemde Let me check my understanding of your question: "Does Rack (or ::Rack) work with Oj loaded separately in the namespace for `MyGem` after the `include`...
tagomoris (Satoshi Tagomori)
05:00 PM Revision fab70183 (git): YJIT: On test_bug_19316, only check the result
Because the `&` call checks for interrupts, the test was accidentally
timing dependent. Stop checking for exits.
[Bug #19921]
Reported-by: Vít Ondruch <vondruch@redhat.com>
Reported-by: Mamoru Tasaka <mtasaka@fedoraproject.org>
alanwu (Alan Wu)
02:49 PM Revision 1c48d15d (git): Add tests for all implemented nodes, leave ones that need fixing commented out
jemmai (Jemma Issroff)
02:49 PM Revision 40624d49 (git): Added TODOs on all implemented nodes, matched ordering
jemmai (Jemma Issroff)
02:49 PM Revision a426a230 (git): [PRISM] Fixed StringConcatNode, uncommented tests
jemmai (Jemma Issroff)
12:12 PM Bug #19967 (Closed): Already installed libruby.dylib is used for test on macOS
On macOS, in the case of `--enable-shared` and `--disable-load-relative`, already install libruby.dylib is used during tests if exists.
This is because since [Bug #14992], `DYLD_FALLBACK_LIBRARY_PATH` is used instead of `DYLD_LIBRARY_PA...
nobu (Nobuyoshi Nakada)
09:26 AM Revision 8b3d0440 (git): [DOC] Indentation fix in comments of MatchData#inspect
The old version did not add syntax highlighting to the code block, and
included the "Related:" line in the code block as well.
herwin (Herwin W)
07:33 AM Revision 0061eadd (git): [DOC] `configure -C` tips
nobu (Nobuyoshi Nakada)
06:16 AM Bug #19966 (Closed): Prism defines global method instead of singleton method
Applied in changeset commit:git|9d1940ba3c3bd08a8f2c630e51524186e350fdd5.
----------
[Bug #19966] [PRISM] Fix singleton method definition
nobu (Nobuyoshi Nakada)
02:06 AM Bug #19966: Prism defines global method instead of singleton method
https://github.com/ruby/ruby/pull/8718 nobu (Nobuyoshi Nakada)
12:43 AM Bug #19966 (Closed): Prism defines global method instead of singleton method
The receiver is ignored and compiled to `definemethod` instead of `definesmethod`.
```
$ ./ruby -v -e 'puts RubyVM::InstructionSequence.compile_prism("def a.foo;end").disasm'
ruby 3.3.0dev (2023-10-20T00:12:09Z master 985370406d) [a...
nobu (Nobuyoshi Nakada)
06:16 AM Revision 9d1940ba (git): [Bug #19966] [PRISM] Fix singleton method definition
nobu (Nobuyoshi Nakada)
06:16 AM Revision 84dfa0fa (git): [PRISM] Enclose in the test class
nobu (Nobuyoshi Nakada)
05:34 AM Revision bb849ffd (git): Added explicitly begin-end block for Ruby 2.4.
strscan, ipaddr and some default gems still support Ruby 2.4.
After this, I extract this CoreAssertions to their repositories.
hsbt (Hiroshi SHIBATA)
03:56 AM Revision 9ea1ee66 (git): Stop creating ripper.h because it's not used
yui-knk (Kaneko Yuichiro)
02:37 AM Revision 09764889 (git): [ruby/logger] Bump up required ruby version to 2.5
https://github.com/ruby/logger/commit/ac911eae2b hsbt (Hiroshi SHIBATA)
02:37 AM Revision 13b33b10 (git): [ruby/logger] Use Gemfile instead of Gem::Specification#add_development_dependency
https://github.com/ruby/logger/commit/7b51af263f hsbt (Hiroshi SHIBATA)
12:52 AM Revision 62c1d818 (git): Partly revert a change in #8705
Having this variable actually helps the performance of non-JITed calls.
----- ----------- ---------- ---------- ---------- ------------- ------------
bench before (ms) stddev (%) after (ms) stddev (%) after 1st itr before/af...
k0kubun (Takashi Kokubun)
12:13 AM Revision 1640dbde (git): Sort gem names
hsbt (Hiroshi SHIBATA)
12:13 AM Revision 2a56a6c3 (git): racc is also extracted to bundled gems
hsbt (Hiroshi SHIBATA)
12:12 AM Revision 98537040 (git): Call rb_jit_cont_init() even earlier
To fix https://github.com/ruby/ruby/actions/runs/6581593578/job/17881779994 k0kubun (Takashi Kokubun)
12:06 AM Revision a9d7525f (git): Avoid initializing jit_cont_lock multiple times
Contrary to my initial assumption, rb_threadptr_root_fiber_setup() is
called for each Ractor, not just once at boot. I changed the place to
call rb_jit_cont_init() to avoid calling it multiple times.
k0kubun (Takashi Kokubun)

10/19/2023

11:45 PM Revision 72f97ee0 (git): [DOC] Improve docs for how to generate documentation
It might not be obvious how to get the build directory and the Makefile
set up.
matheusrich (Matheus Richard)
11:37 PM Revision bd2aee67 (git): [DOC] "is now bundled" is ambiguous
I think it meant it's now a bundled "gem", but "is now bundled" implies
it's a new gem that was neither default nor bundled gems. So I changed
wording.
I also want to change the subjects and reorder them so that it will read:
"The follo...
k0kubun (Takashi Kokubun)
11:31 PM Revision a9df1e69 (git): Ignore inputs to tool/update-NEWS-gemlist.rb
generated by check_misc k0kubun (Takashi Kokubun)
11:25 PM Revision c221af2c (git): [DOC] Prism is a new default gem
k0kubun (Takashi Kokubun)
11:10 PM Revision 6d42f4dd (git): Avoid using a system Ruby if possible
in tool/update-NEWS-gemlist.rb k0kubun (Takashi Kokubun)
11:06 PM Revision b93553bb (git): Cirrus CI has been removed [ci skip]
nobu (Nobuyoshi Nakada)
10:56 PM Revision 08e25985 (git): Expand OP_ASGN1 nd_args to nd_index and nd_rvalue
ARGSCAT has been used for nd_args to hold index and rvalue,
because there was limitation on the number of members for Node.
We can easily change structure of node now, let's expand it.
yui-knk (Kaneko Yuichiro)
10:50 PM Revision 7fb909e2 (git): [DOC] Reverse-merge YJIT release note changes
k0kubun (Takashi Kokubun)
10:47 PM Revision 47f950c8 (git): [DOC] Update NEWS.md about RubyVM::YJIT.enable
--yjit-disable, and --yjit-perf k0kubun (Takashi Kokubun)
10:18 PM Revision 34673554 (git): [DOC] Fix typo in docs of Regexp#deconstruct_keys
of => if herwin (Herwin W)
10:15 PM Revision 5bbb6fd6 (git): Add printf format attributes to `rb_parser_config_t`
nobu (Nobuyoshi Nakada)
09:40 PM Revision 205cbc09 (git): [rubygems/rubygems] Reuse Gem::RemoteFetcher instance in bundler
Closes https://github.com/rubygems/rubygems/issues/7076
Bundler will now use the same (shared) remote fetcher instance that
RubyGems uses.
This will allow installs to use a shared connection pool, which
represents a significant perform...
segiddins (Samuel Giddins)
09:09 PM Bug #19921: TestYJIT#test_bug_19316 test failure
Could someone kick off a Koji build with commit:9047fe5ea4e8c989c1081aa10f741a413c546534
"YJIT: Print exit reasons on failure in test_yjit.rb"?
It adds some extra information to the failure message that should resolve this
mystery. This ...
alanwu (Alan Wu)
08:02 PM Revision af222d4d (git): [rubygems/rubygems] Update vendored thor to v1.3.0
See https://github.com/rails/thor/releases/tag/v1.3.0
https://github.com/rubygems/rubygems/commit/3c7165474b
segiddins (Samuel Giddins)
07:29 PM Revision 3e65115c (git): YJIT: remove unused `--yjit-greedy-versioning` command-line option (#8713)
maximecb (Maxime Chevalier-Boisvert)
07:14 PM Revision 9194f489 (git): YJIT: Make test_yjit.rb faster with --yjit-stats=quiet
The for-human stats summaries are not relevant for the children
`test_yjit.rb` spawns. Avoid compiling and running the printing code.
On a -O0 dev build this halves the time for `test_yjit.rb` on my machine.
alanwu (Alan Wu)
07:14 PM Revision 9047fe5e (git): YJIT: Print exit reasons on failure in test_yjit.rb
For <https://bugs.ruby-lang.org/issues/19921>, I suspect the test is
failing due to a timing related interrupt, which on paper could
happen with slow-enough GC runs.
In any case, it's helpful for debugging to have more information when
...
alanwu (Alan Wu)
06:56 PM Revision cdc2a185 (git): YJIT: Return Option from asm.compile() for has_dropped_bytes()
So that we get a reminder to check CodeBlock::has_dropped_bytes().
Internally, asm.compile() already checks it, and this patch just
propagates it out to the caller with a `#[must_use]`.
Code GC logic moved out one level in entry_stub_hi...
alanwu (Alan Wu)
05:54 PM Revision 6beb09c2 (git): YJIT: Add RubyVM::YJIT.enable (#8705)
k0kubun (Takashi Kokubun)
03:57 PM Revision 62e34025 (git): Don't add anonymous locals when ISEQ binary debug is on
eightbitraptor (Matt V-H)
03:50 PM Revision 9d9aa63e (git): YJIT: Enable the dead_code lint and delete some dead code
alanwu (Alan Wu)
08:28 AM Revision c2d4c92a (git): Extract a local variable
nobu (Nobuyoshi Nakada)
07:39 AM Feature #19541: Proposal: Generate frame unwinding info for YJIT code
> b) use the perf map file as a source of symbols.
So this is a post I found with quick googling: https://stackoverflow.com/questions/42739893/force-gdb-to-use-frame-pointer-based-unwinding
They say you can at least define a routin...
k0kubun (Takashi Kokubun)
07:24 AM Feature #19541: Proposal: Generate frame unwinding info for YJIT code
> One question - the perf map file is going to grow without bound for a long-running process, right? I guess there's no real way around this based on how the file is specified though... I'll have a look at that problem when I actually ru... k0kubun (Takashi Kokubun)
06:55 AM Revision 5e5a8cf7 (git): [ruby/ostruct] Use Gemfile instead of Gem::Specification#add_development_dependency
https://github.com/ruby/ostruct/commit/ed49920766 hsbt (Hiroshi SHIBATA)
06:49 AM Misc #19925: DevMeeting-2023-11-07
* [Feature #18980] Re-reconsider numbered parameters: `it` as a default block parameter
* At RubyKaigi 2022, [many attendees preferred `it` over `_1`](https://youtu.be/ajm3lr6Y9yE?si=d6Sry32Zlkvtj-Nc&t=3002), [Matz did not reject `it`...
k0kubun (Takashi Kokubun)
04:57 AM Revision e6675861 (git): Mentioned targeted libraries for warning feature of bundled gems
hsbt (Hiroshi SHIBATA)
04:51 AM Revision 3605c9ae (git): Don't need to refer SINCE constant
hsbt (Hiroshi SHIBATA)
03:34 AM Feature #19430: Contribution wanted: DNS lookup by c-ares library
I have created another ticket for executing `getaddrinfo(3)` in a dedicated pthread: #19965 mame (Yusuke Endoh)
03:34 AM Feature #19965 (Closed): Make the name resolution interruptible
## Problem
Currently, Ruby name resolution is not interruptible.
```
$ cat /etc/resolv.conf
nameserver 198.51.100.1
$ ./local/bin/ruby -rsocket -e 'Addrinfo.getaddrinfo("www.ruby-lang.org", 80)'
^C^C^C^C
```
If you set a ...
mame (Yusuke Endoh)
03:11 AM Feature #18515 (Closed): Add Range#reverse_each implementation
Applied in changeset commit:git|3f5ec5c8661748afb9cc3cbf1aff113d602e1fad.
----------
[DOC] Add NEWS about Range#reverse_each for beginless ranges [Feature #18515]
kyanagi (Kouhei Yanagita)
03:11 AM Revision 3f5ec5c8 (git): [DOC] Add NEWS about Range#reverse_each for beginless ranges [Feature #18515]
kyanagi (Kouhei Yanagita)
01:42 AM Bug #19929 (Closed): Warnings for `mutex_m`, `drb` and `base64` appears while the gem spec has explicit dependencies
Ah, this warning is correct. `mutex_m` is removed from `rails/rails`.
https://github.com/rails/rails/commit/bcdeea5da7657375df21a856135ae7a66a8c3812
hsbt (Hiroshi SHIBATA)
01:28 AM Bug #19929 (Assigned): Warnings for `mutex_m`, `drb` and `base64` appears while the gem spec has explicit dependencies
The redundant warnings still happened.
```
$ RAILS_STRICT_WARNING=1 bin/test test/engine/test_test.rb
/Users/hsbt/.local/share/rbenv/versions/master/lib/ruby/gems/3.3.0+0/gems/minitest-5.20.0/lib/minitest.rb:3: warning: mutex_m whic...
hsbt (Hiroshi SHIBATA)
12:34 AM Feature #19744: Namespace on read
In general I'm against npm-style multiple loading of dependencies, but I think I found a use case for this that I could get behind.
Would it be possible to use this features to load a Ractor-incompatible library inside a NameSpace ins...
Dan0042 (Daniel DeLorme)
12:16 AM Revision 10272b27 (git): Use assert_separately to avoid defining `foo`
When we eval the iseqs generated by prism, they can have side effects
like defining methods. In this case, we were defining the method "foo",
but other tests were expecting that the foo method would _not_ be
defined.
tenderlovemaking (Aaron Patterson)
12:16 AM Revision 10c50637 (git): Address PR comments
jemmai (Jemma Issroff)
12:16 AM Revision 1701b79b (git): Put line change back
jemmai (Jemma Issroff)
12:16 AM Revision 5408ce8c (git): Fixed mistyping
jemmai (Jemma Issroff)
12:16 AM Revision 252b0fc7 (git): Temporarily removed location code on scope nodes
jemmai (Jemma Issroff)
12:16 AM Revision ba3a99ac (git): Remove pm_compile_context_t, move the context onto ScopeNode
We changed ScopeNodes to point to their parent (previous) ScopeNodes.
Accordingly, we can remove pm_compile_context_t, and store all
necessary context in ScopeNodes, allowing us to access locals from
outer scopes.
jemmai (Jemma Issroff)
12:16 AM Revision a9512e80 (git): Revert "Revert "[ruby/prism] Change ScopeNode to point to previous ScopeNode""
This reverts commit fd87372a7482cbf7672c44ef95bc1dc3b00bab7c. jemmai (Jemma Issroff)
12:05 AM Feature #19931: to_int is not for implicit conversion?
Aha! Thank you, now it makes a lot more sense. While I still think that `1 + o` would be nice to have, at least I can see the rhyme and reason.
Dan0042 (Daniel DeLorme)
 

Also available in: Atom