Project

General

Profile

Activity

From 07/22/2022 to 07/28/2022

07/28/2022

11:26 PM Feature #18930: Officially deprecate class variables
In the Ruby communities on IRC and Slack we frequently have to convince new Rubyists to just treat class variables as deprecated rather than wasting time learning all about them to find they'll never use them or get them through a code r... shan (Shannon Skipper)
12:07 PM Feature #18930: Officially deprecate class variables
> If you don't want that to be public API it could be :nodoc: or made private + using send.
Yes that's what I say in my comment, and I see how some users may find this unsatisfactory.
byroot (Jean Boussier)
09:57 AM Feature #18930: Officially deprecate class variables
For such a case it seems fine to use instance variables on the class and expose e.g. `SomeThingNeverInherited#some_config?`.
If you don't want that to be public API it could be `:nodoc:` or made private + using `send`.
```ruby
class...
Eregon (Benoit Daloze)
07:21 AM Feature #18930: Officially deprecate class variables
Even though I don't remember adding any new class variable in the last half decade, I'm not sure we can deprecate them, as IMO deprecations should be actionable, and some of these may not be.
I think the main use case for class variab...
byroot (Jean Boussier)
11:12 PM Revision 0d68286b (git): Revert "Try reproducing the MinGW hang on time command (#6168)"
This reverts commit bee5089d6789401f265f87b2f23f1bd7ec63cec8.
Looking at https://github.com/ruby/ruby/runs/7564065637?check_suite_focus=true,
we concluded that the ruby process for test-all is stuck before exit
when this issue reproduce...
k0kubun (Takashi Kokubun)
10:52 PM Bug #18945 (Closed): node_id is not initialized but it is used leading to UB
I am trying to compile ruby in a reproducible way, but libruby always has a
different hash. After two days of digging I've reached the conclusion that
node_id is used when not initialized, leading to an undefined behaviour. In my
case...
graywolf (Gray Wolf)
09:37 PM Revision c348f5a9 (git): [ruby/date] [DOC] Enhanced RDoc for <=> (https://github.com/ruby/date/pull/65)
https://github.com/ruby/date/commit/0cdbaa92e9 burdettelamar (Burdette Lamar)
04:06 PM Revision c56e957d (git): [ruby/rdoc] Link from RDoc::Markup to RDoc::MarkupReference (https://github.com/ruby/rdoc/pull/906)
Recently new RDoc::MarkupReference replaces Markup Reference in RDoc::Markup (which was always the goal).
https://github.com/ruby/rdoc/commit/825be7eaf4
burdettelamar (Burdette Lamar)
03:38 PM Revision 68655c62 (git): * 2022-07-29 [ci skip]
git[bot]
03:38 PM Revision ab08a43e (git): YJIT: Teach getblockparamproxy to handle the no-block case without exiting (#6191)
Teach getblockparamproxy to handle the no-block case without exiting
Co-authored-by: John Hawthorn <john@hawthorn.email>
Co-authored-by: John Hawthorn <john@hawthorn.email>
matthewd (Matthew Draper)
02:50 PM Revision 18b1e5e6 (git): [ruby/rdoc] [DOC] Add some links in intro; delimit rendered HTML output. (https://github.com/ruby/rdoc/pull/904)
https://github.com/ruby/rdoc/commit/c02645364f burdettelamar (Burdette Lamar)
02:46 PM Revision 90cf767d (git): Fix format-pedantic warnings
nobu (Nobuyoshi Nakada)
02:46 PM Revision 94c3d528 (git): Fix conversion of `rb_ractor_id()`
nobu (Nobuyoshi Nakada)
02:46 PM Revision c38ad2ae (git): Fix format specifier for `rb_ractor_id()`
nobu (Nobuyoshi Nakada)
02:41 PM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
Without any additional patches by Nobu here are the known limitations:
- Does not work with streaming code from STDIN (i.e. `echo 'def bad' | ruby` )
- Does not work when executing a file directly (i.e. `ruby bad.rb`)
- Does not wor...
schneems (Richard Schneeman)
06:24 AM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
Can we merge `syntax_suggest` into ruby/ruby now? Is there any blocker? hsbt (Hiroshi SHIBATA)
02:02 PM Revision 229cf263 (git): Lock the VM for rb_gc_writebarrier_unprotect
When using Ractors, rb_gc_writebarrier_unprotect requries a VM lock
since it modifies the bitmaps.
peterzhu2118 (Peter Zhu)
02:02 PM Revision 1c166452 (git): Make array slices views rather than copies
Before this commit, if the slice fits in VWA, it would make a copy
rather than a view. This is slower as it requires a memcpy of the
contents.
peterzhu2118 (Peter Zhu)
02:02 PM Revision 2375afb8 (git): Refactor gc_ref_update_array
peterzhu2118 (Peter Zhu)
01:03 PM Feature #18910: Improve maintainability of LLDB helpers
ianks (Ian Ker-Seymer) wrote in #note-1:
> On a related note, I’ve often found myself wanting access to these helpers when developing native extensions. I’ve copy-pasta’d them in the past, but I wonder if Ruby could support including th...
eightbitraptor (Matt V-H)
12:01 PM Bug #18912: Build failure with Xcode 14 and macOS 13 (Ventura) Beta
@hsbt Thanks for the logs. Some symbols are
indeed not found due to link errors. For example,
`rb_complex_real()` is provided but not found.
The linker error contradicts itself:
```
have_func: checking for rb_complex_real() in r...
alanwu (Alan Wu)
09:43 AM Bug #18912: Build failure with Xcode 14 and macOS 13 (Ventura) Beta
@katei Thanks! I will test your patch when it's complete.
FYI: Xcode 14 beta 3 with macOS 13.0 public beta is still same results.
hsbt (Hiroshi SHIBATA)
09:04 AM Bug #18912: Build failure with Xcode 14 and macOS 13 (Ventura) Beta
I've made a patch to address the linking failure issue by replacing `-undefined dynamic_lookup` with `-bundle_loader`.
https://github.com/ruby/ruby/pull/6193
The patch has been tested with Xcode 14 beta2 toolchain on macOS 12.4 Monte...
katei (Yuta Saito)
08:32 AM Bug #18912: Build failure with Xcode 14 and macOS 13 (Ventura) Beta
@alanwu full log is here https://gist.github.com/hsbt/293250f86a2731b4f76ceea4d903bd64
hsbt (Hiroshi SHIBATA)
11:57 AM Bug #18933: Dir.tmpdir implemented in non-Ractor-safe manner
Attached is a possible solution for this kreynolds (Kelley Reynolds)
10:45 AM Revision 3eade599 (git): Skip randomly failing tests with FreeBSD 12
hsbt (Hiroshi SHIBATA)
10:25 AM Revision d448ecc7 (git): Fix the missing brackets
hsbt (Hiroshi SHIBATA)
10:14 AM Revision 202ce7de (git): test_io_console.rbL399 is also randomly failing same as bfc697f1e26f1406c45ec7309ca0d4c0b5ecedd6
hsbt (Hiroshi SHIBATA)
10:10 AM Revision 98e01c99 (git): Also skip the failing test similar with a343952d195a324dd4563318d8f88b167316ce5d
hsbt (Hiroshi SHIBATA)
07:31 AM Feature #18774: Add Queue#pop(timeout:)
I created https://bugs.ruby-lang.org/issues/18944 byroot (Jean Boussier)
07:31 AM Feature #18944 (Closed): Add SizedQueue#push(timeout:)
While implementing [Feature #18774] It appeared to me that adding this timeout was quite obvious.
And @matz explicitly asked for a separate ticket to be opened for that feature if someone wanted it: https://github.com/ruby/dev-meeting...
byroot (Jean Boussier)
07:05 AM Revision 2b937476 (git): `RUBY_DEBUG_LOG2` should filter against the given `file`
nobu (Nobuyoshi Nakada)
04:29 AM Revision bee5089d (git): Try reproducing the MinGW hang on time command (#6168)
to see if it really exits correctly.
GitHub Support asked me to confirm the command is exiting correctly.
k0kubun (Takashi Kokubun)
12:22 AM Misc #18942 (Closed): String splitting handling of empty fields is incorrect or insufficiently documented (SOLVED)
znz (Kazuhiro NISHIYAMA)
12:15 AM Feature #18943 (Closed): New constant caching instruction: opt_getconstant_path
I'd like to propose the change to the bytecode for constant caching.
I've submitted this improvement via pull request at https://github.com/ruby/ruby/pull/6187 and also attached a patch to this issue.
Previously YARV bytecode impleme...
jhawthorn (John Hawthorn)
12:06 AM Revision 5d5c1d0f (git): Suppress use-after-free warning by gcc-12
nobu (Nobuyoshi Nakada)
12:02 AM Revision 431fdc92 (git): [DOC] Cross references for `ARGF`
nobu (Nobuyoshi Nakada)

07/27/2022

10:31 PM Bug #18920 (Closed): Documentation on ARGF.inplace_mode and ARGF.inplace_mode= is wrong
Applied in changeset commit:git|4ad69899b7db1e384665dec090d5cdc0c3b3c9b2.
----------
Fix documentation for ARGF.inplace_mode{,=}
The value affects the name of the backup file created, not the
name of the file modified (as the file is m...
jeremyevans (Jeremy Evans)
10:29 PM Revision 4ad69899 (git): Fix documentation for ARGF.inplace_mode{,=}
The value affects the name of the backup file created, not the
name of the file modified (as the file is modified in place).
Fixes [Bug #18920]
jeremyevans (Jeremy Evans)
09:23 PM Bug #18939 (Third Party's Issue): pod install error
jeremyevans0 (Jeremy Evans)
06:42 PM Misc #18942: String splitting handling of empty fields is incorrect or insufficiently documented (SOLVED)
austin (Austin Ziegler) wrote in #note-1:
> scub8040 (Saverio M.) wrote:
> ...
Uh, ok! Thanks.
EDIT: I've tried to close the issue, but couldn't.
scub8040 (Saverio M.)
06:25 PM Misc #18942: String splitting handling of empty fields is incorrect or insufficiently documented (SOLVED)
scub8040 (Saverio M.) wrote:
> There are other cases though, which I think are either incorrectly handled, or at least, they should documented.
> ...
This is neither a behaviour bug nor a documentation bug.
From `ri String#split`:
...
austin (Austin Ziegler)
06:11 PM Misc #18942 (Closed): String splitting handling of empty fields is incorrect or insufficiently documented (SOLVED)
Hello!
The string splitting needs to deal with some edge cases when it comes to empty strings/fields, for example, an emptry string always returns an empty array.
There are other cases though, which I think are either incorrectly h...
scub8040 (Saverio M.)
05:41 PM Feature #18774: Add Queue#pop(timeout:)
@mame thanks for bringing this out, I definitely missed it. I'll open another ticket tomorrow then. byroot (Jean Boussier)
05:40 PM Feature #18774: Add Queue#pop(timeout:)
According to the dev meeting log, @matz said "Create another ticket for SizedQueue#push if someone wants it".
https://github.com/ruby/dev-meeting-log/blob/master/DevMeeting-2022-05-19.md#feature-18774-add-queuepoptimeout-eregon
mame (Yusuke Endoh)
10:29 AM Feature #18774: Add Queue#pop(timeout:)
> I think it'd be fine to add, and I don't think that needs to be discussed in a dev meeting again since it's so similar.
Agreed. Also `SizedQueue#push` already has `non_block=false` like `Queue#pop`, so it makes perfect sense. I'll i...
byroot (Jean Boussier)
10:23 AM Feature #18774: Add Queue#pop(timeout:)
byroot (Jean Boussier) wrote in #note-12:
> So I started to implement `Queue#pop(timeout:)` and `SizedQueue#pop(timeout:)` https://github.com/ruby/ruby/pull/6185
Thanks!
> ...
I think it'd be fine to add, and I don't think that ne...
Eregon (Benoit Daloze)
09:06 AM Feature #18774: Add Queue#pop(timeout:)
So I started to implement `Queue#pop(timeout:)` and `SizedQueue#pop(timeout:)` https://github.com/ruby/ruby/pull/6185
As pointed by @ioquatix, I believe that `SizedQueue#push` should have a timeout as well.
byroot (Jean Boussier)
04:55 PM Feature #18885: End of boot advisory API for RubyVM
Another optimization that could be invoked from this method is `malloc_trim`. byroot (Jean Boussier)
03:24 PM Revision 708d06f3 (git): * 2022-07-28 [ci skip]
git[bot]
03:18 PM Revision 6582df26 (git): Update to ruby/spec@cbfaf51
Eregon (Benoit Daloze)
03:18 PM Revision 44f42413 (git): Update to ruby/mspec@290e36a
Eregon (Benoit Daloze)
02:51 PM Feature #18159: Integrate functionality of syntax_suggest gem into Ruby
I've rebased to change the name of the project from `DeadEnd` to `SyntaxSuggest`. All checks are passing except for "Code scanning results / CodeQL" which doesn't appear to be related to my code change.
I've got no other pending chan...
schneems (Richard Schneeman)
01:55 PM Revision 9b9704f9 (git): merge revision(s) 456e1d1eaa9bb11adaed1acde488d7da3c88704b:
Try the tag without "v" prefix to checkout upstream repositories
---
gems/bundled_gems | 4 ++--
tool/fetch-bundled_gems.rb | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)
nagachika (Tomoyuki Chikanaga)
01:16 PM Revision 70a9328b (git): [ci-skip]Document how to run an individual bootstrap test
eightbitraptor (Matt V-H)
12:05 PM Revision 64c8291c (git): [ruby/pathname] Fix `autoload` of `FileUtils`
Should not be `Pathname::FileUtils`.
https://github.com/ruby/pathname/commit/d1eb366e73
nobu (Nobuyoshi Nakada)
09:42 AM Revision f42230ff (git): Adjust styles [ci skip]
nobu (Nobuyoshi Nakada)
09:25 AM Revision 8b9d4b2c (git): Append semicolons [ci skip]
nobu (Nobuyoshi Nakada)
08:45 AM Revision 852ac26e (git): Make indents and newlines consistent [ci skip]
nobu (Nobuyoshi Nakada)
08:36 AM Revision 464f73a5 (git): Do not load library files from repository only for test
What we want to test should be the bundled and to be installed files,
but not the upstream.
nobu (Nobuyoshi Nakada)
06:11 AM Bug #18941: Endless loop with a memory leak in FileUtils::mkpath
Thank you for your report. The behavior was indeed changed between 3.0 and 3.1: https://github.com/ruby/fileutils/pull/60 mame (Yusuke Endoh)
05:49 AM Bug #18941 (Closed): Endless loop with a memory leak in FileUtils::mkpath
On Windows 10 with Ruby `3.1.2p20 (2022-04-12 revision 4491bb740a) [x64-mingw-ucrt]`,
an attempt to create a path on the offline external drive stuck with a memory leak:
``` ruby
require 'fileutils'
FileUtils.mkpath 'W:/new_dir'
```...
inversion (Yura Babak)
05:17 AM Revision 8154b176 (git): Manually sync with https://github.com/ruby/date/pull/64
hsbt (Hiroshi SHIBATA)

07/26/2022

10:14 PM Bug #18810: Make `Kernel#p` interruptable.
> My concern is that inserting p(...) changes a program behavior unintentionally (except that the p writes something to stdout, of course).
There are so many ways it can do this. If the fiber scheduler is active it is a totally differ...
ioquatix (Samuel Williams)
08:34 AM Bug #18810: Make `Kernel#p` interruptable.
My concern is that inserting `p(...)` changes a program behavior unintentionally (except that the p writes something to stdout, of course).
When debugging, we often insert `p(...)` and run the program to reproduce the bug being debugg...
mame (Yusuke Endoh)
08:39 PM Revision c3d9849d (git): [rubygems/rubygems] Add ignore_funding_requests config flag
https://github.com/rubygems/rubygems/commit/ab302f72c9 moe
08:06 PM Revision 64f9f7d8 (git): [ruby/rdoc] [DOC] Clarifications for directives (https://github.com/ruby/rdoc/pull/903)
- Former section "Directives in Trailing Comments" is reworked. The important thing about a directive is what it does, not whether it's trailing or stand-alone. Therefore I've worked the directives in the former section into the appropr... burdettelamar (Burdette Lamar)
07:56 PM Revision b4ae144e (git): [rubygems/rubygems] Don't use Pathname for creating extension dir
Not sure why, but I run into the following flaky test failure
````
(...)
Invoking `/Users/deivid/.asdf/installs/ruby/3.1.2/bin/ruby -I/Users/deivid/Code/rubygems/rubygems/bundler/spec -r/Users/deivid/Code/rubygems/rubygems/bundler/spec...
deivid (David Rodríguez)
06:33 PM Bug #18940 (Closed): Ruby Ractor fails with IOError when handling higher concurrency
Reproduction server:
```
require 'socket'
# Set based on CPU count
CONCURRENCY = 8
server = TCPServer.new(8080)
workers = CONCURRENCY.times.map do
Ractor.new do
loop do
# receive TCPSocket
session = Ract...
brodock (Gabriel Mazetto)
06:21 PM Bug #18816: Ractor segfaulting MacOS 12.4 (aarch64 / M1 processor)
I don't get a ruby segfault anymore. It works fine when using no concurrency:
```
hey -n 20000 http://localhost:8080/
Summar...
brodock (Gabriel Mazetto)
04:49 PM Bug #18816: Ractor segfaulting MacOS 12.4 (aarch64 / M1 processor)
Can we backport this to 3.0 and 3.1? brodock (Gabriel Mazetto)
06:08 PM Revision 6a698075 (git): [rubygems/rubygems] Completely drop base parameter from index
This parameter was coupling the concept of lockfile with the index. I
don't think it's necessary.
Also I believe it's causing some flaky test failures, which might leak
into realworld issues. They are like this:
````
Invoking `/opt/hos...
deivid (David Rodríguez)
04:40 PM Feature #18926: Ractor should support mutexes and treat the block as critical section across ractors
> In the example, allowing to mutate @map in a Ractor is fundamentally unsafe...
The proposal is for mutex blocks to synchronize across ractors, thereby making it safe. This would IMO make for a better default than the current one, wh...
chucke (Tiago Cardoso)
04:40 PM Revision 3b1ed03d (git): * expand tabs. [ci skip]
Tabs were expanded because the file did not have any tab indentation in unedited lines.
Please update your editor config, and use misc/expand_tabs.rb in the pre-commit hook.
git[bot]
04:39 PM Revision 36d0c71a (git): Refactored poisoning and unpoisoning freelist to simpler API
jemmai (Jemma Issroff)
04:31 PM Revision 33f9e8f4 (git): Add doc/rdoc directory to .document
Adding the doc/rdoc directory to .document will allow files in that
directory to be included in the documentation.
peterzhu2118 (Peter Zhu)
04:04 PM Revision 457170e5 (git): * 2022-07-27 [ci skip]
git[bot]
04:04 PM Revision 163e3f07 (git): [rubygems/rubygems] Use main as default branch for Bundler specs
https://github.com/rubygems/rubygems/commit/482077d185 deivid (David Rodríguez)
02:27 PM Feature #18784: `FileUtils.rm_f` and `FileUtils.rm_rf` should not mask exceptions
Thanks @mame! deivid (David Rodríguez)
12:46 PM Feature #18784: `FileUtils.rm_f` and `FileUtils.rm_rf` should not mask exceptions
> In my opinion, the current behavior is hardly useful for anyone
Personally, I agree. I want `FileUtils.rm_rf` to report an error if it fails to delete a file/directory passed as an argument. In the dev meeting, @knu and @naruse had ...
mame (Yusuke Endoh)
01:39 PM Bug #18937: Inconsistent definitions of Complex#<=> and Numeric#<=> with others
@mame
I have a motivation to create a "quaternion" class which is highly interoperable with other built-in numeric classes. (gem: [quaternion_c2](https://rubygems.org/gems/quaternion_c2))
I recently noticed that there was `Complex#...
msnm (Masahiro Nomoto)
08:05 AM Bug #18937: Inconsistent definitions of Complex#<=> and Numeric#<=> with others
> However, neither Complex#<=> nor Numeric#<=> satisfies that definition.
`Complex#<=>` is a different method from `Object#<=>`, so I don't see that as a problem in itself. Some Ruby core methods don't necessarily follow the Liskov Su...
mame (Yusuke Endoh)
01:12 PM Revision 4325e902 (git): Use rb_ary_hidden_new for rb_ary_hidden_new_fill
peterzhu2118 (Peter Zhu)
01:12 PM Revision efb91ff1 (git): Rename rb_ary_tmp_new to rb_ary_hidden_new
rb_ary_tmp_new suggests that the array is temporary in some way, but
that's not true, it just creates an array that's hidden and not on the
transient heap. This commit renames it to rb_ary_hidden_new.
peterzhu2118 (Peter Zhu)
01:12 PM Revision 3f70aa65 (git): Remove ary_discard
ary_discard should not be used as it should be handled by the GC. The
only user of ary_discard is rb_ary_product, which doesn't neeed to use
ary_discard.
peterzhu2118 (Peter Zhu)
12:12 PM Revision 456e1d1e (git): Try the tag without "v" prefix to checkout upstream repositories
nobu (Nobuyoshi Nakada)
09:33 AM Revision 2d1cf658 (git): Adjust indent [ci skip]
nobu (Nobuyoshi Nakada)
09:07 AM Bug #18939: pod install error
It's third party's issue. You may want to try this solution: https://github.com/ffi/ffi/issues/800#issuecomment-1008308614 mame (Yusuke Endoh)
09:02 AM Bug #18939 (Third Party's Issue): pod install error
Ruby version:
ruby 2.6.8p205 (2021-07-07 revision 67951) [universal.arm64e-darwin21]
Ruby script:
-------------------------------------
Translated Report (Full Report Below)
-------------------------------------
Process: ...
dgarcia93 (David Garcia)
08:37 AM Bug #18907: rb_profile_frames output includes dummy main Thread frame
Awesome, thank you! :) ivoanjo (Ivo Anjo)
01:47 AM Bug #18907: rb_profile_frames output includes dummy main Thread frame
I talked with @ko1 about this issue. It seems to be fine, so I have merged it, thanks! mame (Yusuke Endoh)
01:44 AM Bug #18907 (Closed): rb_profile_frames output includes dummy main Thread frame
Applied in changeset commit:git|649bfbe00d8032fa2c0536e596a284f69926e87f.
----------
Fix `rb_profile_frames` output includes dummy main thread frame
The `rb_profile_frames` API did not skip the two dummy frames that
each thread has at ...
ivoanjo (Ivo Anjo)
08:30 AM Feature #18919: Ractor: can't share #Method objects
Indeed, I didn't mean "to-proc", Method objects, as per the usage example, is the one I meant. chucke (Tiago Cardoso)
07:03 AM Revision 9a8f6e39 (git): Cheaply derive code range for String#b return value
The result of String#b is a string with an ASCII_8BIT/BINARY encoding. That encoding is ASCII-compatible and has no byte sequences that are invalid for the encoding. If we know the receiver's code range, we can derive the resulting strin... Kevin Menard
05:38 AM Revision 9e6d07f3 (git): Merge rubygems/bundler HEAD
Merge from https://github.com/rubygems/rubygems/commit/2af2520b4a7ab1c6eb1fdc3d2ef4d8c062d96ad7 hsbt (Hiroshi SHIBATA)
04:42 AM Revision b404a5f1 (git): 8fa66467de is broken with rubygems/rubygems and flori/json.
Revert "Fix sync_default_gems.rb to use absolute path"
This reverts commit 8fa66467de82f787ead9dd901ad06694c79d88dc.
hsbt (Hiroshi SHIBATA)
01:43 AM Revision 649bfbe0 (git): Fix `rb_profile_frames` output includes dummy main thread frame
The `rb_profile_frames` API did not skip the two dummy frames that
each thread has at its beginning. This was unlike `backtrace_each` and
`rb_ec_parcial_backtrace_object`, which do skip them.
This does not seem to be a problem for non-m...
ivoanjo (Ivo Anjo)

07/25/2022

09:31 PM Revision cc29b43c (git): [ruby/rdoc] Move section Directives into section Blocks (https://github.com/ruby/rdoc/pull/901)
https://github.com/ruby/rdoc/commit/e48e07ef53 burdettelamar (Burdette Lamar)
08:29 PM Revision d7868c79 (git): * append newline at EOF. [ci skip]
git[bot]
08:29 PM Revision ba098fa1 (git): Sync RDoc
peterzhu2118 (Peter Zhu)
08:29 PM Revision 8fa66467 (git): Fix sync_default_gems.rb to use absolute path
peterzhu2118 (Peter Zhu)
07:58 PM Revision 43c11f6c (git): For rdoc, copy doc/rdoc to doc/ (#6181)
burdettelamar (Burdette Lamar)
07:56 PM Revision 382cde96 (git): [rubygems/rubygems] Bump rb-sys
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.20 to 0.9.26.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.20...v0.9.26)
---
updated-depende...
dependabot[bot]
07:08 PM Revision 63330ae4 (git): Change ROBJECT_TRANSIENT_FLAG to use FL_USER2
jemmai (Jemma Issroff)
04:53 PM Revision 17534f3e (git): * 2022-07-26 [ci skip]
git[bot]
04:53 PM Revision fab5a0e6 (git): [rubygems/rubygems] Bump rb-sys in /test/rubygems/test_gem_ext_cargo_builder/custom_name
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.20 to 0.9.26.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.20...v0.9.26)
---
updated-depende...
dependabot[bot]
02:22 PM Feature #12607: Ruby needs an atomic integer
Yes, I think a few low-level concurrency primitives should move from Concurrent Ruby to core. As we add more concurrency to Ruby, and add JIT compilers, ideally the VM should understand these primitives, rather than being opaque extensio... chrisseaton (Chris Seaton)
01:14 PM Feature #12607: Ruby needs an atomic integer
It'd be good to revisit this (e.g. see https://twitter.com/_byroot/status/1550580128723476480).
Ractor has little need for this. But with Thread there is a clear need for this.
Also the STM work was not merged, so that's not a replac...
Eregon (Benoit Daloze)
12:37 PM Revision 979368b4 (git): [rubygems/rubygems] Bundler: add deprecation notice of viz to man
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
https://github.com/rubygems/rubygems/commit/0e1cbfa598
Takuya Noguchi
12:18 PM Revision 31a5586d (git): rb_str_buf_append: add a fast path for ENC_CODERANGE_VALID
If the RHS has valid encoding, and both strings have the same
encoding, we can use the fast path.
However we need to update the LHS coderange.
```
compare-ruby: ruby 3.2.0dev (2022-07-21T14:46:32Z master cdbb9b8555) [arm64-darwin21]
bu...
byroot (Jean Boussier)
11:39 AM Revision 9733f4d0 (git): merge revision(s) edf01d4e82d8e44ee30ec41fbcb7f802bc8b8c5d: [Backport #18772]
Treat NULL fake string as an empty string
And the NULL string must be of size 0.
---
string.c | 5 +++++
1 file changed, 5 insertions(+)
U.Nakamura
09:50 AM Revision f61dd38e (git): Wait the test thread to sleep
Revert "Synchronize the test thread sleep"
This reverts commit 307835fe314fea6e946a8c9b25bb3912680ed7d1.
nobu (Nobuyoshi Nakada)
07:58 AM Bug #18938 (Closed): Backport cf7d07570f50ef9c16007019afcff11ba6500d70
Please backport https://github.com/ruby/ruby/commit/cf7d07570f50ef9c16007019afcff11ba6500d70 which fixes a bug in `ObjectSpace.dump` for Ruby 3.0 and Ruby 3.1
Ref: https://github.com/ruby/ruby/pull/6166
cc @nobu
byroot (Jean Boussier)
03:01 AM Revision 307835fe (git): Synchronize the test thread sleep
nobu (Nobuyoshi Nakada)
12:53 AM Feature #18668: Merge `io-nonblock` gems into core
ianks (Ian Ker-Seymer) wrote in #note-21:
> IMO, we really do need to support this use case. Even if it were just fir testing purposes, it would *still* be worthwhile if it makes developing non-blocking gems easier.
What precisely is...
shyouhei (Shyouhei Urabe)
12:18 AM Revision b30b727c (git): Fix format specifier
`uintptr_t` is not always `unsigned long`, but can be casted to void
pointer safely.
nobu (Nobuyoshi Nakada)

07/24/2022

11:50 PM Revision 1c4aaa3e (git): * 2022-07-25 [ci skip]
git[bot]
11:50 PM Revision 91c05b34 (git): Bundled gems test needs `prepare-gems`
`prepare-gems` downloads and extracts the bundled gems, and these gems
are built by `build-exts` now.
nobu (Nobuyoshi Nakada)
11:50 PM Revision b291c972 (git): Use built bundled gems in test-bundled-gems
nobu (Nobuyoshi Nakada)
01:32 PM Revision 6af72120 (git): Make extensions under `Gem.extension_api_version` directory
nobu (Nobuyoshi Nakada)
07:36 AM Revision e0a7e5e1 (git): Kill bundled gem tests when interrupted
nobu (Nobuyoshi Nakada)
03:49 AM Bug #18937: Inconsistent definitions of Complex#<=> and Numeric#<=> with others
I fix the last code as follows:
```ruby
class Complex
def <=>(other)
return (self == other ? 0 : nil) if self.imag != 0
if other.kind_of?(Complex)
if other.imag == 0
return self.real <=> other.real
...
msnm (Masahiro Nomoto)
03:06 AM Bug #18937 (Closed): Inconsistent definitions of Complex#<=> and Numeric#<=> with others
Object#<=> says "Returns 0 if `obj` and `other` are the same object or `obj == other`" .
https://ruby-doc.org/core-3.1.2/Object.html#method-i-3C-3D-3E
However, neither Complex#<=> nor Numeric#<=> satisfies that definition.
```ruby...
msnm (Masahiro Nomoto)

07/23/2022

11:57 PM Revision 114f85ec (git): * 2022-07-24 [ci skip]
git[bot]
11:57 PM Revision 1cd487d7 (git): [DOC] IO#eof
Use IO#eof? instead of I#eof? kaiquekandykoga (Kaíque Koga)
06:07 PM Bug #18936 (Closed): Backport 261753249996d46e00c2549fff2527816bf387db
Please backport commit [261753249996d46e00c2549fff2527816bf387db](https://github.com/ruby/ruby/commit/261753249996d46e00c2549fff2527816bf387db), which fixes a leak of mark stack chunks during shutdown.
It's causing [false positives to...
peterzhu2118 (Peter Zhu)
12:42 PM Revision 721d154e (git): Remove duplicate code for internal arrays
Internal arrays are now created hidden from the start. nobu (Nobuyoshi Nakada)
11:40 AM Feature #18926: Ractor should support mutexes and treat the block as critical section across ractors
In the example, allowing to mutate `@map` in a Ractor is fundamentally unsafe, because there could be another reference to `@map` which is accessed concurrently without the Mutex.
In fact there are two in that example, `@map.key?` and `...
Eregon (Benoit Daloze)
02:34 AM Feature #18926: Ractor should support mutexes and treat the block as critical section across ractors
With all due respect for Ractor’s incredible technical achievements so far, I unfortunately think that the “honeymoon phase” for Ractor may be complete. The community was incredibly bullish about its potential and the problems it could s... ianks (Ian Ker-Seymer)
02:19 AM Feature #18668: Merge `io-nonblock` gems into core
IMO, we really do need to support this use case. Even if it were just fir testing purposes, it would *still* be worthwhile if it makes developing non-blocking gems easier.
Ruby should move towards better async support, not away from i...
ianks (Ian Ker-Seymer)
02:08 AM Feature #18910: Improve maintainability of LLDB helpers
On a related note, I’ve often found myself wanting access to these helpers when developing native extensions. I’ve copy-pasta’d them in the past, but I wonder if Ruby could support including them for debug builds?
ianks (Ian Ker-Seymer)

07/22/2022

07:44 PM Revision 98a8a496 (git): Use rb_ary_tmp_new only for internal arrays
rb_ary_tmp_new sets the klass to 0, so it should only be used for
internal arrays.
peterzhu2118 (Peter Zhu)
06:42 PM Revision 244bda7e (git): [rubygems/rubygems] Display mfa warnings on gem signin
https://github.com/rubygems/rubygems/commit/4dc77b7099
Co-authored-by: Jenny Shen <jenny.shen@shopify.com>
Ashley Ellis Pierce
05:48 PM Feature #18773: deconstruct to receive a range
@nevans I think that's a _really_ good idea. It has the advantage of being backward-compatible as well. @mame, @ktsj what do you think about allowing Enumerable to be returned from deconstruct and using that to match instead? kddnewton (Kevin Newton)
05:29 PM Revision e199ae3e (git): Remove reference counting for all frozen arrays
The RARRAY_LITERAL_FLAG was added in commit
5871ecf956711fcacad7c03f2aef95115ed25bc4 to improve CoW performance for
array literals by not keeping track of reference counts.
This commit reverts that commit and has an alternate implementa...
peterzhu2118 (Peter Zhu)
05:19 PM Bug #18935 (Feedback): Binary search reference not found
ruby-doc.org is not official documentation. Please use docs.ruby-lang.org instead. It works fine there: https://docs.ruby-lang.org/en/3.1/Array.html#method-i-bsearch peterzhu2118 (Peter Zhu)
04:56 PM Bug #18935 (Feedback): Binary search reference not found
This method says "See binary searching" but I can't find anything relevant on the page. I would like to see an example or two of how to use bsearch.
https://ruby-doc.org/core-3.1.2/Array.html#method-i-bsearch
mperham (Mike Perham)
03:24 PM Revision 203de45b (git): * 2022-07-23 [ci skip]
git[bot]
03:24 PM Revision d77633a6 (git): [rubygems/rubygems] Bundler: update command example in bundle-exec(1)
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
https://github.com/rubygems/rubygems/commit/28bf5c8b33
Takuya Noguchi
02:34 PM Revision b3be0307 (git): [ruby/reline] Rename dialog_pointer_* to dialog_highlight_*
"Pointer" is not what we usually use to describe a selected item.
"Highlight" is a more common word for the scenario so we should use it instead.
https://github.com/ruby/reline/commit/b4279d1557
st0012 (Stan Lo)
02:10 PM Revision 8f7e1888 (git): Add "rb_" prefixes to toplevel enum definitions
... as per ko1's request. mame (Yusuke Endoh)
02:10 PM Revision e763b111 (git): Move enum definitions out of struct definition
mame (Yusuke Endoh)
12:59 PM Revision c7fd015d (git): Update .indent.pro [ci skip]
nobu (Nobuyoshi Nakada)
12:59 PM Revision 92c7417d (git): Adjust indents [ci skip]
nobu (Nobuyoshi Nakada)
12:10 PM Bug #18780: Incorrect binding receiver for C API rb_eval_string()
Yes, it is a typo. Thank you. shyouhei (Shyouhei Urabe)
10:00 AM Bug #18780: Incorrect binding receiver for C API rb_eval_string()
Nice story :)
Probably a typo: `s/old table/old tale/`
Eregon (Benoit Daloze)
12:24 AM Bug #18780: Incorrect binding receiver for C API rb_eval_string()
Updating the header document.
```patch
From b968f277386649b7531a8999be54eacf3c599cdb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E5=8D=9C=E9=83=A8=E6=98=8C=E5=B9=B3?=
<shyouhei@ruby-lang.org>
Date: Thu, 21 Jul 2022 18:00:04 +0900
Subject...
shyouhei (Shyouhei Urabe)
12:01 PM Revision c6734edc (git): [rubygems/rubygems] Remove bundle show from obsolete commands
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com>
https://github.com/rubygems/rubygems/commit/6c07c9427b
Takuya Noguchi
12:01 PM Revision a4e890b9 (git): [rubygems/rubygems] Use `SystemExit#status` as `exit_code`
No reasons to manage separately.
https://github.com/rubygems/rubygems/commit/8ede5c886e
nobu (Nobuyoshi Nakada)
09:56 AM Bug #18810: Make `Kernel#p` interruptable.
mame (Yusuke Endoh) wrote in #note-2:
> Since `Kernel#p` is a method for debugging, I think this spec would be useful. If it is made interruptable, it will be difficult to use `Kernel#p` in a block of `Thread.handle_interrupt(TimeoutErr...
Eregon (Benoit Daloze)
05:51 AM Bug #18810: Make `Kernel#p` interruptable.
@mame I understand the discussion and I'm okay with the outcome, but I still don't understand why being uninterruptible matters in practice. I'm still a little concerned this can hang the interpreter, but I don't know for sure - because ... ioquatix (Samuel Williams)
09:12 AM Bug #18907: rb_profile_frames output includes dummy main Thread frame
Update: I've rebased the PR to fix a conflict caused by the tabs-vs-spaces fix :) ivoanjo (Ivo Anjo)
09:10 AM Bug #18911: Process._fork hook point is not called when Process.daemon is used
I've just opened https://github.com/ruby/ruby/pull/6170 to add the comment.
Thanks @mame for going above and beyond in helping me with this :)
ivoanjo (Ivo Anjo)
07:24 AM Revision 55c771c3 (git): [rubygems/rubygems] rubygems.rb is required by gem_runner.rb
https://github.com/rubygems/rubygems/commit/503f763865 hsbt (Hiroshi SHIBATA)
07:24 AM Revision fe770716 (git): [rubygems/rubygems] Removed needless value assignment
https://github.com/rubygems/rubygems/commit/5825c4c2e8 hsbt (Hiroshi SHIBATA)
03:23 AM Revision f081e1fe (git): Revive .indent.pro with adding `-nut`(`--no-tabs`) [ci skip]
nobu (Nobuyoshi Nakada)
03:09 AM Revision 5904895c (git): Add .git-blame-ignore-revs
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> Takuya Noguchi
03:07 AM Revision d7ffd3fe (git): RubyGems: Enable Style/StringLiterals cop
Signed-off-by: Takuya Noguchi <takninnovationresearch@gmail.com> Takuya Noguchi
03:06 AM Revision 388c4e10 (git): Make Gem::SystemExitException properly exit with a given code
The cause was in how Gem::SystemExitException initializes itself. It
didn't pass an exit code to the super method. See the document of
SystemExit.new() for details.
Akinori MUSHA
03:06 AM Revision 6b749968 (git): bin/gem: remove initial empty line
kenyon (Kenyon Ralph)
03:06 AM Revision b4876c8e (git): Removed needless condition for old versions of Ruby.
hsbt (Hiroshi SHIBATA)
03:06 AM Revision 1ed7ab29 (git): Enable Style/MultilineIfThen in Rubocop
bronzdoc
03:06 AM Revision 3b67c161 (git): Remove trailing blank lines
deivid (David Rodríguez)
03:06 AM Revision 030c41bf (git): Improve user-facing messages by consistent casing of Ruby/RubyGems
(when it referred to the general concept and not a path), single-spacing
between sentences, and a few other small issues.
John Labovitz
01:41 AM Revision c6aa6543 (git): Get rid of magic numbers
nobu (Nobuyoshi Nakada)
01:41 AM Misc #18888: Migrate ruby-lang.org mail services to Google Domains and Google Workspace
To all the old-time commuters,
Though we have to reduce the mail aliases for a technical reason, this does NOT mean that we will reject your contributions. Just send us a PR to add your email address to https://github.com/ruby/ruby-co...
mame (Yusuke Endoh)
01:20 AM Misc #18888: Migrate ruby-lang.org mail services to Google Domains and Google Workspace
I've sent the following E-mail to adresses to be removed:
```
Subject: youraddress@ruby-lang.org will be removed on 2022-09-30
Hello,
We are going to migrate the mail server of ruby-lang.org to Google Domains and Google Workspa...
shugo (Shugo Maeda)
12:56 AM Revision cf7d0757 (git): Dump non-ASCII char as unsigned
Non-ASCII code may be negative on platforms plain char is signed. nobu (Nobuyoshi Nakada)
 

Also available in: Atom