Project

General

Profile

Activity

From 02/14/2022 to 02/20/2022

02/20/2022

04:06 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
@mame, I think you convinced me, I'll remove it. byroot (Jean Boussier)
03:56 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
What is `#size` method needed for? It may be error-prune to depend on a return value of the method because the size m... mame (Yusuke Endoh)
03:44 PM Revision 1abd0684 (git): * 2022-02-21 [ci skip]
git[bot]
03:44 PM Revision 1f3fe380 (git): Fix links [ci skip]
znz (Kazuhiro NISHIYAMA)
01:21 PM Feature #18481: Porting YJIT to Rust (request for feedback)
jeremyevans0 (Jeremy Evans) wrote in #note-7:
> maximecb (Maxime Chevalier-Boisvert) wrote in #note-6:
> > > believ...
zw963 (Wei Zheng)
01:05 PM Feature #18481: Porting YJIT to Rust (request for feedback)

> I think Rust should be treated like OpenSSL. If you build Ruby without OpenSSL, Ruby doesn't download OpenSSL f...
zw963 (Wei Zheng)
12:39 PM Feature #16295: Chainable aliases for String#-@ and String#+@
Exactly, and so `+@` is already good enough for `buffer = +"literal"`, and `buffer = "literal".dup` is fine too.
Th...
Eregon (Benoit Daloze)
01:49 AM Feature #16295: Chainable aliases for String#-@ and String#+@
zverok (Victor Shepelev) wrote in #note-21:
> > `+@` seems very rarely useful
>
> No opinion on the rest of the t...
phluid61 (Matthew Kerwin)
11:40 AM Revision 9f3b6caf (git): * 2022-02-20 [ci skip]
git[bot]
11:39 AM Revision ed8776f9 (git): [MSWin] Tentative measure for a bug of VS2022 [Misc #18362]
Disable the use of `__assume()`, when combinations of `isnan()`,
`isinf()` and `__assume()` will be wrongly optimized...
nobu (Nobuyoshi Nakada)
11:39 AM Revision 32af1a3b (git): [MSWin] Try VS2022
nobu (Nobuyoshi Nakada)
11:39 AM Revision 71388f9d (git): [MSWin] Reduce duplicate configurations
nobu (Nobuyoshi Nakada)

02/19/2022

11:44 PM Feature #16295: Chainable aliases for String#-@ and String#+@
> `+@` seems very rarely useful
No opinion on the rest of the ticket, but I thought `buffer = +""` is a quite wide...
zverok (Victor Shepelev)
08:39 PM Feature #16295: Chainable aliases for String#-@ and String#+@
To make progress on this issue I'd suggest to simplify it to only add `dedup` as an alias for `-@`.
That seems agree...
Eregon (Benoit Daloze)
08:34 PM Feature #16295: Chainable aliases for String#-@ and String#+@
> .dup is not quite as good, as it always allocates a copy.
It creates a new String instance, which is what one ne...
Eregon (Benoit Daloze)
02:32 PM Revision 74707800 (git): Check if `__assume` is supported
nobu (Nobuyoshi Nakada)
02:32 PM Revision 131154f8 (git): Define `HAVE___BUILTIN_UNREACHABLE` instead of `UNREACHABLE`
`UNREACHABLE` in ruby/internal/has/builtin.h is only used as just
a flag now, and redefined in ruby/backward/2/assume...
nobu (Nobuyoshi Nakada)
02:19 PM Feature #13110 (Closed): Byte-based operations for String
Applied in changeset commit:git|c8817d6a3ebc9bbc151625bca198b8f327d1d68f.
----------
Add String#byteindex, String#by...
shugo (Shugo Maeda)
02:18 PM Revision 6e6ee1e6 (git): Replace and Using METACLASS_OF macro
S_H_ (Shun Hiraoka)
10:59 AM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
I prepared the patch for this: https://github.com/ruby/ruby/pull/5571
If there is no objections I'd like to merge ...
byroot (Jean Boussier)
10:10 AM Revision c8817d6a (git): Add String#byteindex, String#byterindex, and MatchData#byteoffset (#5518)
* Add String#byteindex, String#byterindex, and MatchData#byteoffset [Feature #13110]
Co-authored-by: NARUSE, Yui <na...
shugo (Shugo Maeda)
10:06 AM Feature #18585 (Closed): Promote find pattern to official feature
Applied in changeset commit:git|db6b23c76cbc7888cd9a9912790c2068703afdd0.
----------
Find pattern is no longer exper...
ktsj (Kazuki Tsujimoto)
09:45 AM Revision db6b23c7 (git): Find pattern is no longer experimental [Feature #18585]
ktsj (Kazuki Tsujimoto)
09:45 AM Revision 3200d97e (git): Fix location of NODE_LIT in p_kw
ktsj (Kazuki Tsujimoto)
06:33 AM Revision 4641abf0 (git): Use symbols for clock IDs if `clockid_t` is not numeric
nobu (Nobuyoshi Nakada)
06:33 AM Revision b3de25df (git): Set static IDs to same name variables
nobu (Nobuyoshi Nakada)
06:33 AM Revision 2ae35ad7 (git): RUBY_REPLACE_TYPE: check if the target type is a pointer
nobu (Nobuyoshi Nakada)
06:15 AM Bug #18358: zlib crashes when in progress
ruby_3_0 951e1377c18f84b52fbd3aab048da8536a3bbdb0 merged revision(s) c51b92c18deb850d2cea3a7c9020db23b364ab72. nagachika (Tomoyuki Chikanaga)
06:15 AM Revision 951e1377 (git): merge revision(s) c51b92c18deb850d2cea3a7c9020db23b364ab72: [Backport #18358]
[ruby/zlib] [Bug #18358] Fix crash in zlib when in progress
When Zlib::Inflate#inflate or Zlib::Deflate#defl...
nagachika (Tomoyuki Chikanaga)
06:14 AM Revision dfa17f46 (git): [DOC] prefer rdoc references over generated URLs
nobu (Nobuyoshi Nakada)
05:55 AM Bug #10961: Zlib corrupts data when receive signal
ruby_3_0 5c15cecfbfe61f9d46f45c949829c79cb7f162a9 merged revision(s) 0c5f8c62766afe4605172800063e63fe36996658. nagachika (Tomoyuki Chikanaga)
05:53 AM Bug #17803: Segmentation fault during deflate
ruby_3_0 49ed412060f48d3b9343b8b90d73e6fcb02b3354 merged revision(s) b3d62a77d928eff01268ca7fa1c1c0966702926d. nagachika (Tomoyuki Chikanaga)
05:36 AM Revision 49ed4120 (git): merge revision(s) b3d62a77d928eff01268ca7fa1c1c0966702926d: [Backport #17803]
[ruby/zlib] Synchronize access to zstream to prevent segfault in
multithreaded use
I'm not sure whe...
nagachika (Tomoyuki Chikanaga)
05:33 AM Revision ebbe2fc9 (git): merge revision(s) cf831f49189c4a890da6845e39199a5dfaf4fb48,3260602fa3d905ba310b9afbc5365ee52cb53d62:
zlib: fix Gzip{Writer,Reader}.new fails with a O_TMPFILE file
---
ext/zlib/zlib.c | 18 +++++...
nagachika (Tomoyuki Chikanaga)
05:25 AM Revision 4868d4b4 (git): merge revision(s) fa7a712d460dc904f8a836bb22b54d457d95ba8e:
Fix -Wundef warnings for HAVE_RB_EXT_RACTOR_SAFE
* See [Feature #17752]
---
ext/cgi/escape/...
nagachika (Tomoyuki Chikanaga)
05:19 AM Revision 5c15cecf (git): merge revision(s) 0c5f8c62766afe4605172800063e63fe36996658: [Backport #10961]
[ruby/zlib] Resume zstream if available [Bug #10961]
---
ext/zlib/zlib.c | 6 ++++++
1 file...
nagachika (Tomoyuki Chikanaga)

02/18/2022

10:48 PM Feature #16295: Chainable aliases for String#-@ and String#+@
@Eregon how is `-@` different from `.freeze` ? The meaning of these seems very much the same. danh337 (Dan H)
10:41 PM Feature #16295: Chainable aliases for String#-@ and String#+@
Eregon (Benoit Daloze) wrote in #note-16:
> `+@` is rarely safe to use (only if you know what allocated it and that i...
danh337 (Dan H)
10:17 PM Revision bec3a1f1 (git): Enhanced RDoc for io.c (#5573)
Links to options doc added/improved; in particular, new links to new section "Encoding Options" in encoding.rdoc. Mi... burdettelamar (Burdette Lamar)
07:45 PM Feature #18593: Add back URI.escape
`URI.escape` has been deprecated since Ruby 1.9. Unfortunately, the deprecation warnings were only emitted in verbos... jeremyevans0 (Jeremy Evans)
07:33 PM Feature #18593 (Open): Add back URI.escape
It seems like there should have been a compatibility call left in place for the removal of URI escape between stdlib ... kallisti5 (Alexander von Gluck)
07:33 PM Revision 344f775e (git): * 2022-02-19 [ci skip]
git[bot]
07:33 PM Revision 883fe55c (git): New doc about encoding (#5572)
This is the beginning of an extended explication of Ruby encoding.
One of its more important jobs is to provide link...
burdettelamar (Burdette Lamar)
02:30 PM Revision 82513c7d (git): Remove unused function declaration in dln.c
getenv is no longer used in dln.c. peterzhu2118 (Peter Zhu)
02:10 PM Feature #18589: Finer-grained constant invalidation
> It increased total retained memory from 1.23Gb to 1.3Gb (about a 0.7% increase).
1.3 / 1.23 is a 5.7% increase,...
Dan0042 (Daniel DeLorme)
08:47 AM Feature #18589: Finer-grained constant invalidation
I have a fix for `open-uri`: https://github.com/ruby/open-uri/pull/8 byroot (Jean Boussier)
02:01 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
I took a stab at implementing the current spec: https://github.com/ruby/ruby/pull/5570
### Methods
- `ObjectSpa...
byroot (Jean Boussier)
01:13 PM Revision cda5aee7 (git): LONG2NUM() should be used for rmatch_offset::{beg,end}
https://github.com/ruby/ruby/pull/5518#discussion_r809645406 shugo (Shugo Maeda)
12:46 PM Revision e9a2b307 (git): Enhanced RDoc concerning command injection (#5537)
Clarifies security vulnerabilities for commands.
Treats:
Kernel.system
Kernel.` (backtick)
IO.popen
...
burdettelamar (Burdette Lamar)
12:44 PM Revision 542a38f6 (git): gen-mail.rb: support markdown file path
naruse (Yui NARUSE)
12:25 PM Bug #18592 (Closed): RPATH of bundled native extensions is incorrect
Hi, when building Ruby 3.1.0 on Solaris, one of our lint checks found out that RPATH/RUNPATH of bundled native extens... Kulikjak (Jakub Kulik)
09:42 AM Revision 53f5fc42 (git): teenyup
naruse (Yui NARUSE)
09:28 AM Revision dff70b50 (git): [wasm] vm.c: stop unwinding to main for every vm_exec call by setjmp
the original rb_wasm_setjmp implementation always unwinds to the root
call frame to have setjmp compatible interface,...
katei (Yuta Saito)
04:41 AM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
>Reinstalling pure-Ruby gems is extremely fast compared to installing C extensions (which must rebuilt, otherwise sig... hsbt (Hiroshi SHIBATA)
04:00 AM Feature #13110: Byte-based operations for String
@austin I don't vote for it. Byte-based operations are not for beginners, and I don't think it's worth migration pain... matz (Yukihiro Matsumoto)
02:57 AM Feature #16989 (Open): Sets: need ♥️
knu (Akinori MUSHA)
02:56 AM Feature #16989 (Closed): Sets: need ♥️
Applied in changeset commit:git|dd3501bb9580951623a9aa7c2f86f7c98f9d6b9c.
----------
Make Set a builtin feature [Fea...
Anonymous
02:56 AM Revision ac32b702 (git): Mention Set as a new builtin class to NEWS
Akinori MUSHA
02:56 AM Revision dd3501bb (git): Make Set a builtin feature [Feature #16989]
Akinori MUSHA
02:31 AM Misc #18591 (Closed): DevMeeting-2022-03-17
# The next dev meeting
**Date: 2022/03/17 13:00-17:00** (JST)
Log: https://github.com/ruby/dev-meeting-log/blob/m...
mame (Yusuke Endoh)
02:30 AM Misc #18557 (Closed): DevMeeting-2022-02-17
mame (Yusuke Endoh)

02/17/2022

10:52 PM Bug #18487: Kernel#binding behaves differently depending on implementation language of items on the stack
matz (Yukihiro Matsumoto) wrote in #note-6:
> Okay, `binding` should raise an exception when called from a C defined...
jeremyevans0 (Jeremy Evans)
01:04 PM Bug #18487: Kernel#binding behaves differently depending on implementation language of items on the stack
FWIW TruffleRuby currently raises one of these 2 errors when trying to call a Ruby method which needs a direct Ruby f... Eregon (Benoit Daloze)
07:55 AM Bug #18487: Kernel#binding behaves differently depending on implementation language of items on the stack
Okay, `binding` should raise an exception when called from a C defined method.
Matz.
matz (Yukihiro Matsumoto)
01:17 AM Bug #18487: Kernel#binding behaves differently depending on implementation language of items on the stack
To simplify the semantics and implementation, we could make Kernel#binding
raise when the direct caller is not Ruby....
alanwu (Alan Wu)
10:49 PM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
> We've seen many instances of gems breaking on JRuby & TruffleRuby over the years due to new default gems
We (JRu...
headius (Charles Nutter)
06:26 PM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
@eregon sorry I was not talking about default gems; by "stdlib" I meant the libraries that have not (yet) been gemifi... Dan0042 (Daniel DeLorme)
05:39 PM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
@Dan0042 One issue is some people want the dependency on default gems to be in the Gemfile.lock, which e.g. enables t... Eregon (Benoit Daloze)
05:28 PM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
Here's one idea: what if there was a list of all standard libraries in a given ruby version, such as `RbConfig::STDLI... Dan0042 (Daniel DeLorme)
11:14 AM Bug #18567: Depending on default gems in stdlib gems when not needed considered harmful
Another instance of this issue: https://github.com/mikel/mail/pull/1472#discussion_r808927322
I think new default ...
Eregon (Benoit Daloze)
07:29 PM Feature #18585: Promote find pattern to official feature
ktsj (Kazuki Tsujimoto) wrote in #note-2:
> > Is this request related to the whole feature (as described at https://...
retro (Josef Šimánek)
08:49 AM Feature #18585: Promote find pattern to official feature
Accepted. Congratulations.
Matz.
matz (Yukihiro Matsumoto)
05:45 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
The problem with that approach though is it's frequent to not run CI before pushing in CRuby, and then `master` could... Eregon (Benoit Daloze)
05:44 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
FWIW in TruffleRuby there is both a pre-commit hook and a check in CI: [code](https://github.com/eregon/truffleruby/c... Eregon (Benoit Daloze)
04:39 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
I'm not sure if I agree with the approach of using a pre-commit hook. AFAIK pre-commit hooks are not automatically in... peterzhu2118 (Peter Zhu)
04:20 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
It could be a mix of both approaches. As a pre-commit hook, compute the checksum/hash of header files and, if differe... Dan0042 (Daniel DeLorme)
02:13 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
I don't think there's a way for us reinstall C extension gems through make in Ruby. I think this would be the respons... peterzhu2118 (Peter Zhu)
12:51 PM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
@hsbt Isn't `gem pristine`/`bundle install` (with Bundler path set) or similar good enough?
Reinstalling pure-Ruby g...
Eregon (Benoit Daloze)
09:06 AM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
I agreed to check ABI breakage on dev branch. But I'm bit of against re-install or re-build all of gems each ABI vers... hsbt (Hiroshi SHIBATA)
05:59 AM Bug #18249: The ABI version of dev builds of CRuby does not correspond to the ABI
I am against ABI based on SHA1 hash. We should bump API version manually, I think.
If you can provide make target t...
matz (Yukihiro Matsumoto)
04:54 PM Feature #16663 (Closed): Add block or filtered forms of Kernel#caller to allow early bail-out
Applied in changeset commit:git|4c366ec9775eb6acb3fcb3b88038d051512c75a2.
----------
Add Thread.each_caller_location...
jeremyevans (Jeremy Evans)
07:56 AM Feature #16663: Add block or filtered forms of Kernel#caller to allow early bail-out
I accept `each_caller_location`.
Matz.
matz (Yukihiro Matsumoto)
04:54 PM Revision 7757ccb5 (git): * 2022-02-18 [ci skip]
git[bot]
04:54 PM Revision 4c366ec9 (git): Add Thread.each_caller_location
This method takes a block and yields Thread::Backtrace::Location
objects to the block. It does not take arguments, a...
jeremyevans (Jeremy Evans)
03:34 PM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
Ok, so I went over all 71 matches after filtering vendored code: https://gist.github.com/casperisfine/5a26c7b85f7d15c... byroot (Jean Boussier)
02:00 PM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
> Will you?
I'd like to champion this. I already started opening pull requests on the affected gems.
byroot (Jean Boussier)
01:58 PM Feature #18576 (Open): Rename `ASCII-8BIT` encoding to `BINARY`
Making `Encoding#name` to return the name different from the encoding name is unacceptable.
Besides that, in general...
matz (Yukihiro Matsumoto)
01:30 PM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
Link to the gem-codesearch results from @ko1: https://hackmd.io/koJLPz4eRXKzaaDvVqji7w#Feature-18576-Rename-ASCII-8BI... Eregon (Benoit Daloze)
09:27 AM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
> Does this counter-proposal solve the original problem?
I believe so because the main way users are exposed to `A...
byroot (Jean Boussier)
09:24 AM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
Does this counter-proposal solve the original problem?
It seems it introduces another inconsistency (and possible co...
matz (Yukihiro Matsumoto)
09:16 AM Feature #18576: Rename `ASCII-8BIT` encoding to `BINARY`
Can I make a counter proposal?
We could keep `Encoding#name` as `"ASCII-8BIT"`, but change `Encoding#inspect` and ...
byroot (Jean Boussier)
09:14 AM Feature #18576 (Rejected): Rename `ASCII-8BIT` encoding to `BINARY`
I don't object to the proposal itself. But as @ko1 searched, there are so many gems that compare `Encoding#name` and ... matz (Yukihiro Matsumoto)
03:22 PM Feature #13110: Byte-based operations for String
matz (Yukihiro Matsumoto) wrote in #note-24:
> Regarding names, I accept `byteindex`, `byterindex`, `byteoffset`.
>...
austin (Austin Ziegler)
06:02 AM Feature #13110: Byte-based operations for String
Regarding names, I accept `byteindex`, `byterindex`, `byteoffset`.
I am against `byte_rindex` since I consider the n...
matz (Yukihiro Matsumoto)
01:57 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
Thank you Matz!
> I vote for putting it under ObjectSpace
I think it's fine. It's an advanced class, no need to...
byroot (Jean Boussier)
01:16 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
I agree with introducing a map (hash) with each key referenced weakly. It should be in the core since weak reference... matz (Yukihiro Matsumoto)
01:47 PM Bug #18504 (Closed): configure prints a warning when cross-compiling
Applied in changeset commit:git|4113862c0068a8a95d752f5fdf14980f92cd41d7.
----------
Do not search for commands with...
nobu (Nobuyoshi Nakada)
01:47 PM Revision 4113862c (git): Do not search for commands with double tool prefixes [Bug #18504]
The `CC` found by `AC_CHECK_TOOL` is prefixed by the host triplet
when cross compiling. To search for commands with ...
nobu (Nobuyoshi Nakada)
01:05 PM Feature #18571: Removed the bundled sources from release package after Ruby 3.2
Accepted, for the record.
Matz.
matz (Yukihiro Matsumoto)
11:25 AM Feature #18571 (Assigned): Removed the bundled sources from release package after Ruby 3.2
We decided on the following policy.
* We will remove the bundled sources from ruby repo.
* @hsbt is working now...
hsbt (Hiroshi SHIBATA)
12:30 PM Feature #18589: Finer-grained constant invalidation
Amusingly enough, this discussion led me to instrument our production environment to see what is bumping the cache, a... byroot (Jean Boussier)
12:13 PM Feature #16989: Sets: need ♥️
I agree with merging the pull request above, and see how it goes.
Matz.
matz (Yukihiro Matsumoto)
10:12 AM Feature #16989: Sets: need ♥️
I've prepared a PR: https://github.com/ruby/ruby/pull/5563 knu (Akinori MUSHA)
12:11 PM Feature #12962 (Rejected): Feature Proposal: Extend 'protected' to support module friendship
I revisited this issue at the developer meeting and concluded to reject this proposal.
I understand OP's need for th...
matz (Yukihiro Matsumoto)
11:39 AM Bug #18578: Hash#shift を繰り返していると ruby が無応答になる。
ruby_3_1 7fe0ebc4e7abd78501094cbb2d47918c8ff29f60 merged revision(s) 496591de96b261b8789332c7f8b2bfbd17658955. naruse (Yui NARUSE)
11:29 AM Revision 992bdfea (git): Refine the load error message
Show the linked ruby library name when failed to load extension
built against different ruby library.
nobu (Nobuyoshi Nakada)
11:29 AM Revision 5952a1f2 (git): Check running macOS version at runtime
nobu (Nobuyoshi Nakada)
11:12 AM Revision c8b414b3 (git): Reuse `-v` option result as `target_platform`
Backticks method invokes `/bin/sh` when the command contains
quotes, and `sh` clears some environment variables set i...
nobu (Nobuyoshi Nakada)
11:02 AM Bug #18590 (Closed): String#downcase and CAPITAL LETTER I WITH DOT ABOVE
Downcasing for "İ" character works in an unexpected way:
```ruby
'İ'.downcase
=> "i̇"
```
Expected result - ...
andrykonchin (Andrew Konchin)
10:04 AM Revision dfe7faa6 (git): exclude name must be Regexp or Symbol
https://github.com/ruby/ruby/blob/fdf0f8d81487560f5837dc7e3888a96f7c2b4ec9/tool/lib/test/unit.rb#L1273-L1290 znz (Kazuhiro NISHIYAMA)
09:58 AM Revision fdf0f8d8 (git): btest-ruby OPTS=-v should disable quiet
`make btest-ruby` is run with -q (quiet) option and -v should
remove -q option.
ko1 (Koichi Sasada)
07:15 AM Feature #18568: Explore lazy RubyGems boot to reduce need for --disable-gems
Lazy loading RubyGems sounds great. Ping us if you need support from the core.
Matz.
matz (Yukihiro Matsumoto)
06:03 AM Feature #18513 (Closed): Hide patchlevel from `ruby -v`
Merged at https://github.com/ruby/ruby/commit/9f81d9f92d hsbt (Hiroshi SHIBATA)
04:47 AM Feature #18513: Hide patchlevel from `ruby -v`
Agreed.
Matz.
matz (Yukihiro Matsumoto)
05:36 AM Revision 9f81d9f9 (git): Hide patchlevel from release build
hsbt (Hiroshi SHIBATA)
03:19 AM Revision 7fe0ebc4 (git): merge revision(s) 496591de96b261b8789332c7f8b2bfbd17658955: [Backport #18578]
st.c: Do not clear entries_bound when calling Hash#shift for empty
hash
tab->entries_bound is used ...
naruse (Yui NARUSE)
12:02 AM Misc #18587: What was the reason behind Ruby choosing SipHash for Hash?
JFYI this thread can be something related: https://bugs.ruby-lang.org/issues/13017 shyouhei (Shyouhei Urabe)

02/16/2022

07:34 PM Feature #18589: Finer-grained constant invalidation
During startup, global invalidation for constants also causes a lot of extra lookups, and with a JIT it throws away a... Eregon (Benoit Daloze)
07:10 PM Feature #18589: Finer-grained constant invalidation
At the moment on Shopify's core monolith we're seeing around 1 in 30 requests invalidate the global cache. We're stil... kddnewton (Kevin Newton)
06:45 PM Feature #18589: Finer-grained constant invalidation
Current design is the global counter doesn't change frequently.
Do you have measurements about it on some apps?
ko1 (Koichi Sasada)
05:32 PM Feature #18589 (Closed): Finer-grained constant invalidation
This is related to https://github.com/ruby/ruby/pull/5433.
## Current behavior
Caches depend on a global counte...
kddnewton (Kevin Newton)
05:36 PM Misc #18557: DevMeeting-2022-02-17
* [Feature #18589] Finer-grained constant invalidation (Kevin Newton)
* We want to trade a very small memory incre...
kddnewton (Kevin Newton)
05:16 PM Misc #18587: What was the reason behind Ruby choosing SipHash for Hash?
One concern which might have been considered is what if someone writes their own hash table in pure-Ruby using `#hash... Eregon (Benoit Daloze)
04:12 PM Misc #18587: What was the reason behind Ruby choosing SipHash for Hash?
I misread a point related to extra carefulness.
They don't suggest a rehash on collision, but on hash map grow; sinc...
midnight (Sarun R)
03:42 PM Misc #18587 (Open): What was the reason behind Ruby choosing SipHash for Hash?
Hello
I am digging into the history behind Ruby using SipHash for its Hash.
I found that in 2012 there were CVE-2...
midnight (Sarun R)
04:43 PM Revision 5f01fba0 (git): yjit_codegen.c: Prevent a possible out-of-bound access
The code attempts to read `C_ARG_REGS[leaf_builtin->argc + 1]`, and the
size of `C_ARG_REGS` is `NUM_C_ARG_REGS`. So...
mame (Yusuke Endoh)
03:52 PM Bug #18588 (Closed): ruby -e 'p gets' with japanese charactors gets additional invalid leading chars and caught Encoding::InvalidByteSequenceError
### Input a line starting with japanese charactor from console, almost every time ruby gets additional invalid leadin... YO4 (Yoshinao Muramatsu)
03:34 PM Revision fabf60c9 (git): * 2022-02-17 [ci skip]
git[bot]
03:34 PM Revision 797e8f54 (git): Fix -Wsign-compare when -DRUBY_DEBUG=1
Sizes for darray are size_t now. CC @peterzhu2118 alanwu (Alan Wu)
02:50 PM Revision 969ad580 (git): Change feature_index from fake Array to darray
Using a fake (malloc) RArray is not friendly for the garbage
collector. Fake RArray does not have a heap page, so it ...
peterzhu2118 (Peter Zhu)
02:50 PM Revision 71afa816 (git): Change darray size to size_t and add functions that use GC malloc
Changes size and capacity of darray to size_t to support more
elements.
Adds functions to darray that use GC allocat...
peterzhu2118 (Peter Zhu)
02:43 PM Revision f9abb286 (git): Parenthesize a macro expression
The modulo in `rb_yjit_code_page_alloc` seems interpreted wrongly. nobu (Nobuyoshi Nakada)
08:57 AM Revision 00c7a0d4 (git): fix parallel test timeout retrying
On the parallel test, workers can be killed because of timeout
and the information for the retrying can be inconsiste...
ko1 (Koichi Sasada)
07:32 AM Revision b9851c7e (git): lib/securerandom.rb: Fix the check of availability of Random.urandom
Random.urandom raises a RuntimeError if it is unavailable.
[Bug #13885]
mame (Yusuke Endoh)
05:19 AM Bug #13885: Random.urandom と securerandom について
いまは Random.urandom は利用できない環境で RuntimeError を投げるようになっているはずなのですが、securerandom.rb で Random.urandom が利用可能かをチェックするコードが古いまま... mame (Yusuke Endoh)
04:32 AM Bug #18586 (Closed): ObjectSpace::WeakMap#each seems to leak a broken object
Applied in changeset commit:git|1ae630db2682831cc0f2d381ff46e7b8cd3c2174.
----------
`wmap#each` should check livene...
ko1 (Koichi Sasada)
04:32 AM Revision e7d76fe2 (git): * 2022-02-16 [ci skip]
git[bot]
04:31 AM Revision 1ae630db (git): `wmap#each` should check liveness of keys
`ObjectSpace::WeakMap#each*` should check key's liveness.
fix [Bug #18586]
ko1 (Koichi Sasada)

02/15/2022

08:17 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
> I can't imagine a use case where you'd want to share metadata for objects that are eql.
As you certainly know, ...
byroot (Jean Boussier)
07:40 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
byroot (Jean Boussier) wrote in #note-8:
> Then yes. But it's rarely convenient.
Can you elaborate? Because the D...
Dan0042 (Daniel DeLorme)
02:42 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
> as long as you use non-GC-able values only
Then yes. But it's rarely convenient.
byroot (Jean Boussier)
02:08 PM Feature #18498: Introduce a public WeakKeysMap that compares by equality
If ObjectSpace::WeakMap had a #compare_by_identity that could be set to false, wouldn't this be equivalent to this We... Dan0042 (Daniel DeLorme)
08:13 AM Feature #18498: Introduce a public WeakKeysMap that compares by equality
> Do you think this Hash compatible? For example, default_proc (I think it is too much)?
Yes, I'd rather not ask f...
byroot (Jean Boussier)
04:49 AM Feature #18498: Introduce a public WeakKeysMap that compares by equality
ko1 (Koichi Sasada) wrote in #note-4:
> Do you think this `Hash` compatible? For example, `default_proc` (I think it ...
ko1 (Koichi Sasada)
04:46 AM Feature #18498: Introduce a public WeakKeysMap that compares by equality
Do you think this `Hash` compatible? For example, `default_proc` (I think it is too much)? ko1 (Koichi Sasada)
05:20 PM Bug #18586 (Closed): ObjectSpace::WeakMap#each seems to leak a broken object
```
h = ObjectSpace::WeakMap.new
GC.disable
s = "a"
10000.times do
h[s] = true
s = s.succ
end
GC.en...
mame (Yusuke Endoh)
03:19 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
p8 (Petrik de Heus) wrote in #note-11:
> I can imagine having a `protected_send` just like we have a `public_send` a...
Eregon (Benoit Daloze)
03:14 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
matthewd (Matthew Draper) wrote in #note-10:
> The trouble with using `send` in this [general] situation is that it m...
Eregon (Benoit Daloze)
02:53 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
I can imagine having a `protected_send` just like we have a `public_send` and `send` (which is basically `private_sen... p8 (Petrik de Heus)
01:25 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
The trouble with using `send` in this [general] situation is that it makes it too equally-easy to reach into _all_ in... matthewd (Matthew Draper)
02:32 PM Feature #18585: Promote find pattern to official feature
> Is this request related to the whole feature (as described at https://docs.ruby-lang.org/en/3.1/doc/syntax/pattern_... ktsj (Kazuki Tsujimoto)
11:22 AM Bug #18504: configure prints a warning when cross-compiling
What about this?
```diff
diff --git a/configure.ac b/configure.ac
index 4feefb57915..01e87c0a9b4 100644
--- a/con...
nobu (Nobuyoshi Nakada)
08:11 AM Feature #18339: GVL instrumentation API
> Could you write a picture (or flow) what happens on GVL hooks with GVL acquire/release?
I'm sorry, I don't under...
byroot (Jean Boussier)
05:52 AM Feature #18339: GVL instrumentation API
* Could you write a picture (or flow) what happens on GVL hooks with GVL acquire/release?
* It seems it doesn't use ...
ko1 (Koichi Sasada)
07:30 AM Feature #18490 (Closed): MakeMakefile.pkg_config should accept multiple options
nobu (Nobuyoshi Nakada)
05:10 AM Feature #18571: Removed the bundled sources from release package after Ruby 3.2
@tenderlovemaking's comment for psych and libffi: https://github.com/ruby/psych/issues/535 mame (Yusuke Endoh)

02/14/2022

03:30 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
For this Net::HTTP example IMHO it'd be better to use `send`, that would make it a private method and be explicit tha... Eregon (Benoit Daloze)
03:02 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
> Calling "private/protected" methods on another object feels rather wrong to me.
The whole point of `protected` i...
matthewd (Matthew Draper)
02:23 PM Feature #12962: Feature Proposal: Extend 'protected' to support module friendship
Do you have an example in Rails?
This sounds like it can be solved by moving such private-but-shared method to `In...
Eregon (Benoit Daloze)
03:24 PM Misc #18557: DevMeeting-2022-02-17
* [Feature #18576] Rename `ASCII-8BIT` encoding to `BINARY`
- The `ASCII-8BIT` name is very confusing for beginners...
byroot (Jean Boussier)
02:15 PM Misc #18557: DevMeeting-2022-02-17
* [Misc #18362] mswin builds & vs2022
* What can we do for the bug?
nobu (Nobuyoshi Nakada)
02:08 PM Misc #18557: DevMeeting-2022-02-17
* [Feature #18585] Promote find pattern to official feature (ktsj)
* Is it OK to to promote find pattern to offi...
ktsj (Kazuki Tsujimoto)
02:35 PM Revision 26187a85 (git): Use RARRAY_SHARED_ROOT_FLAG for checking re-enter
RARRAY_SHARED_ROOT_FLAG is defined as FL_USER5, but we should use
RARRAY_SHARED_ROOT_FLAG instead of depending on tha...
peterzhu2118 (Peter Zhu)
02:29 PM Feature #18585: Promote find pattern to official feature
Hello! Is this request related to the whole feature (as described at https://docs.ruby-lang.org/en/3.1/doc/syntax/pat... retro (Josef Šimánek)
02:05 PM Feature #18585 (Closed): Promote find pattern to official feature
"Find pattern" has introduced in 3.0 and it is still marked as an experimental.
I don't see any problems, so it is t...
ktsj (Kazuki Tsujimoto)
08:17 AM Revision 76e594d5 (git): fix GC event synchronization
(1) gc_verify_internal_consistency() use barrier locking
for consistency while `during_gc == true` at the end
...
ko1 (Koichi Sasada)
06:38 AM Misc #18362: mswin builds & vs2022
Visual Studio 2022 version 17.0.6 released at February 8 seems still unfixed.
I wonder how we deal with this issue (...
nobu (Nobuyoshi Nakada)
05:57 AM Bug #18582: Hash.group_by not grouping correctly with SortedSets
Ah, I had tried method_defined?, but it returns true (for inherited Kernel#eql?)
I did not realized that method_de...
[email protected] (Mike Carlton)
05:52 AM Revision 83803117 (git): * 2022-02-14 [ci skip]
git[bot]
05:52 AM Revision 8e089991 (git): extend timeout for mjit
1 seconeds is not enough on an specific (busy) machine w/ mjit.
http://ci.rvm.jp/results/trunk-mjit@phosphorus-docker...
ko1 (Koichi Sasada)
04:57 AM Revision 8a0dfd4a (git): * 2022-02-14 [ci skip]
git[bot]
04:56 AM Revision c8b5d703 (git): Merge RubyGems-3.3.7 and Bundler-2.3.7 (#5543)
hsbt (Hiroshi SHIBATA)
 

Also available in: Atom