Project

General

Profile

Activity

From 05/18/2022 to 05/24/2022

05/24/2022

11:34 PM Feature #14602: Version of dig that raises error if a key is not present
amcaplan (Ariel Caplan) wrote in #note-23:
> We can think of this as either a variation of `fetch` or a variation of `dig`. Ultimately it's both, of course, just depends how you look at it.
Or maybe we can think it as a combination o...
duerst (Martin Dürst)
10:02 PM Feature #14602: Version of dig that raises error if a key is not present
We can think of this as either a variation of `fetch` or a variation of `dig`. Ultimately it's both, of course, just depends how you look at it.
If we think of it as `fetch`-based, `deep_fetch` would be OK but we also might go with so...
amcaplan (Ariel Caplan)
09:56 PM Feature #14602: Version of dig that raises error if a key is not present
Considering `dig` as an operation that can be done manually (with fingers) and address exceptional situations (unexpected objects) more subtly, I would suggest `shovel` which is a more blunt instrument which tends to raise a notable exce... olivierlacan (Olivier Lacan)
08:19 PM Feature #14602: Version of dig that raises error if a key is not present
Maybe:
``` ruby
fetch_each(:name, :first)
fetch_all(:name, :first)
fetch_tail(:name, :first)
fetch_end(:name, :first)
# or with dig_
dig_each(:name, :first)
dig_tail(:name, :first)
dig_all(:name, :first)
dig_end(:name, :first)
dig_bot...
p8 (Petrik de Heus)
07:16 PM Feature #14602: Version of dig that raises error if a key is not present
Some ideas:
reveal
uncover
unfold
dive
enlight
scoop
reel
mollemoll (Jonas Molander)
06:16 PM Feature #14602: Version of dig that raises error if a key is not present
How about `dig_for`? If we’re digging for something, it kinda makes sense to raise an exception if it’s not there. st0012 (Stan Lo)
05:50 PM Feature #14602: Version of dig that raises error if a key is not present
A couple other ideas I had:
- `lookup`
- `pick`
- `traverse`
byroot (Jean Boussier)
10:52 PM Misc #18800 (Rejected): The administrator requires you to enable two-factor authentication.
Unfortunately, I have no plan to disable it.
We are always attacked by spammers and crackers. I have no idea to prevent our place from them.
hsbt (Hiroshi SHIBATA)
01:11 PM Misc #18800 (Rejected): The administrator requires you to enable two-factor authentication.
Can we please disable mandatory two-factor authentication in this tracker? Offering 2fa is great, but being mandatory is not. For my part I find it completely overblown and superfluous for a site such as this. (And if it's mandatory why ... Dan0042 (Daniel DeLorme)
10:45 PM Bug #18791: Unexpected behavior of Socket#connect_nonblock
The document does mention the returned value of `0`, but I'm not sure if I should also check for `EISCONN` by calling it one more time in such a case. midnight (Sarun R)
10:27 PM Bug #18791: Unexpected behavior of Socket#connect_nonblock
@jeremyevans0
The example is overly simplified, and it does lead to confusion in practice when you put it in context.
Realistically speaking, no one would use a single value in `IO.select`; at least, in the worst-case scenario.
So...
midnight (Sarun R)
07:51 PM Bug #18791 (Rejected): Unexpected behavior of Socket#connect_nonblock
This doesn't look like a bug. If the `connect` system call returns `0`, then you were able to connect, and `connect_nonblock` in Ruby returns `0` as well. Yes, you should treat `0` as indicating the connection was successful. The docu... jeremyevans0 (Jeremy Evans)
09:34 PM Revision d020334e (git): [ruby/reline] Workaround libncurses.so as a linker script
This maybe isn't probably isn't the best approach, but it will allow
`Fiddle::Terminfo.curses_dl` to work. I documented more details about
this in an issue on fiddle: https://github.com/ruby/fiddle/issues/107
It is probably better to d...
nevans (Nicholas Evans)
07:53 PM Bug #18799: Refinement#import_methods vs attr_reader
> is not defined with Ruby code
It means the method's body is not Ruby code. And indeed, `attr_*` defines methods which are not defined in/with Ruby code.
So this seems expected.
Same for define_method, which has some internal w...
Eregon (Benoit Daloze)
01:59 AM Bug #18799: Refinement#import_methods vs attr_reader
UPD: looks like `define_method` is not supported, too:
```ruby
module M
define_method(:fuu) { }
end
module R
refine Object do
import_methods M
end
end
#=> Can't import method which is not defined with Ruby code:...
palkan (Vladimir Dementyev)
01:56 AM Bug #18799 (Closed): Refinement#import_methods vs attr_reader
Currently, it's not possible to import methods defined as attr_{reader, accessor,writer}:
```ruby
module M
attr_reader :fuu
end
module R
refine Object do
import_methods M
end
end
#=> Can't import method which is...
palkan (Vladimir Dementyev)
07:50 PM Feature #18798: `UnboundMethod#==` with inherited classes
Regarding Method#==, I think it should also respects the simple rule "point to a same method definition" + ensure the receiver is the same object for both Method instances. Eregon (Benoit Daloze)
07:49 PM Feature #18798: `UnboundMethod#==` with inherited classes
+1. @ko1 I guess you meant this as a feature request? Eregon (Benoit Daloze)
07:17 PM Feature #18798: `UnboundMethod#==` with inherited classes
I'm not against this change (for UnboundMethod, I think Method should remain different), but it seems more like a feature request than a bug fix to me. jeremyevans0 (Jeremy Evans)
06:40 AM Feature #18798: `UnboundMethod#==` with inherited classes
Did you mean:
```ruby
p $mc.owner == $md.owner #=> true
p $mc.source_location == $md.source_location #=> true
```
I think the proposal is a good idea.
sawa (Tsuyoshi Sawada)
01:55 AM Feature #18798 (Closed): `UnboundMethod#==` with inherited classes
Now `UnboundMethod` for a same method from a superclass and an inherited class are not `==`.
```ruby
class C
def foo = :C
$mc = instance_method(:foo)
end
class D < C
$md = instance_method(:foo)
end
p $mc == $md #=> f...
ko1 (Koichi Sasada)
07:31 PM Bug #18793: Select and Find behave differently for hashes
I don't think this is a bug. The behavior difference is because `Hash#each` yields an array of `[key, value]` and not `key` and `value` separately, unlike `Hash#select`.
You can get the behavior you want by using explicit block varia...
jeremyevans0 (Jeremy Evans)
07:14 PM Bug #18801: Dead YARV instructions produced when `branchif` is used
wildmaples (Maple Ong) wrote:
> It seems there are unused YARV instructions produced when the snippet contains a `branchif` instruction.
> ...
I'm not sure this is `branchif` related. It looks like `while true; end` generates the same ...
eightbitraptor (Matt V-H)
05:39 PM Bug #18801 (Rejected): Dead YARV instructions produced when `branchif` is used
# Description
It seems there are unused YARV instructions produced when the snippet contains a `branchif` instruction.
In the following example, the instructions numbers 0002 to 0004 won't ever be executed:
```
irb(main):003:0...
wildmaples (Maple Ong)
05:06 PM Bug #18786 (Closed): Rescuing NotImplementedError from `GC.verify_compaction_references` can lead to infinite loop on platforms
Fixed via [Bug #18779] byroot (Jean Boussier)
05:05 PM Bug #18779 (Closed): `GC.compact` and other compaction related methods should be defined as rb_f_notimplement on non supported platforms.
The PR was merged so we can now close this.
I'm marking 3.0 and 3.1 for backport. The two commits are:
- `0de1495f358e9b892dfa63d4b74f59b1d2903703`
- `0c36ba53192c5a0d245c9b626e4346a32d7d144e`
byroot (Jean Boussier)
04:40 PM Revision 0c36ba53 (git): Define unsupported GC compaction methods as rb_f_notimplement
Fixes [Bug #18779]
Define the following methods as `rb_f_notimplement` on unsupported
platforms:
- GC.compact
- GC.auto_compact
- GC.auto_compact=
- GC.latest_compact_info
- GC.verify_compaction_references
This change allows users to ...
mdalessio (Mike Dalessio)
04:40 PM Revision 0de1495f (git): Move compaction-related methods into gc.c
These methods are removed from gc.rb and added to gc.c:
- GC.compact
- GC.auto_compact
- GC.auto_compact=
- GC.latest_compact_info
- GC.verify_compaction_references
This is a prefactor to allow setting these methods to
`rb_f_notimpleme...
mdalessio (Mike Dalessio)
04:17 PM Revision 9fdef286 (git): [rubygems/rubygems] Show exception cause in bug report template
https://github.com/rubygems/rubygems/commit/84b163e804 deivid (David Rodríguez)
03:53 PM Bug #18781: MJIT tests failing with Ubuntu focal with gcc-11 and some flags
I sent the PR, https://github.com/ruby/ruby/pull/5938 .
jaruga (Jun Aruga)
03:37 PM Bug #18781: MJIT tests failing with Ubuntu focal with gcc-11 and some flags
On the latest master `633608ebd4cbdeea562dc4c608495134965a19a9`, I am testing.
```
$ ./configure --enable-shared --enable-mkmf-verbose --with-gcc="gcc -O2 -fcf-protection" ldflags=-Wl,-z,now
$ make V=1 2>&1 | tee make.log
```
Th...
jaruga (Jun Aruga)
01:16 PM Bug #18781: MJIT tests failing with Ubuntu focal with gcc-11 and some flags
> Could you take a look at fixing your configuration of GitHub Actions?
@k0kubun Thanks for the investigation! Sure. I will fix the GitHub Actions configuration file to use your suggested case `--with-gcc="gcc -O2 -fcf-protection" ldf...
jaruga (Jun Aruga)
03:38 PM Revision c603f897 (git): * 2022-05-25 [ci skip]
git[bot]
03:38 PM Revision ae09fffb (git): [ruby/fileutils] [DOC] Enhanced RDoc for ::cp_r (https://github.com/ruby/fileutils/pull/75)
https://github.com/ruby/fileutils/commit/a4da433443 burdettelamar (Burdette Lamar)
12:24 PM Revision 633608eb (git): [rubygems/rubygems] Fix crash when printing resolution conflicts on metadata requirements
https://github.com/rubygems/rubygems/commit/b69e1e9374 deivid (David Rodríguez)
08:50 AM Revision 08cee2bf (git): altstack is native thread's attr
Move th->altstack to th->nt->altstack. ko1 (Koichi Sasada)
08:23 AM Revision 78785fb9 (git): [ruby/date] Constify gperf-generated table
https://github.com/ruby/date/commit/6d7ab08ffc nobu (Nobuyoshi Nakada)
07:28 AM Revision 62e08d4b (git): remove `DEBUG_OUT()` macro
This macro is no longer used ([GH-5933]). ko1 (Koichi Sasada)
03:17 AM Revision d2033d0f (git): [WASM] System initialization has no stack rewinding code to Asyncify
nobu (Nobuyoshi Nakada)
01:06 AM Revision 2d1e7dfc (git): remove `-DTHREAD_DEBUG` rule
(but it was already commented out) ko1 (Koichi Sasada)
01:06 AM Revision 4111028a (git): use `RUBY_DEBUG_LOG` instead of `thread_debug`
`thread_debug()` was introduced to print debug messages
on `THREAD_DEBUG > 0` but `RUBY_DEBUG_LOG()` is more controllable.
ko1 (Koichi Sasada)
01:06 AM Revision f3235ac0 (git): add `rb_th_serial()`
`rb_th_serial(th)` returns th's serial for debug print purpose. ko1 (Koichi Sasada)
01:06 AM Revision d9984f39 (git): remove `NON_SCALAR_THREAD_ID` support
`NON_SCALAR_THREAD_ID` shows `pthread_t` is non-scalar (non-pointer)
and only s390x is known platform. However, the supporting code is
very complex and it is only used for deubg print information.
So this patch removes the support of `N...
ko1 (Koichi Sasada)
01:06 AM Revision 741ac503 (git): `native_tls_get()`' should not check results
caller should check the result of `native_tls_get()`. ko1 (Koichi Sasada)

05/23/2022

10:57 PM Revision 9c9c2170 (git): [ruby/fileutils] [DOC] Enhanced RDoc for ::cp (https://github.com/ruby/fileutils/pull/74)
https://github.com/ruby/fileutils/commit/956b345ceb burdettelamar (Burdette Lamar)
10:54 PM Bug #18779: `GC.compact` and other compaction related methods should be defined as rb_f_notimplement on non supported platforms.
I've submitted a pull request that addresses this behavior in the way @byroot described above:
https://github.com/ruby/ruby/pull/5934
mdalessio (Mike Dalessio)
06:04 PM Revision 80ad0e75 (git): Remove unnecessary module flag, add module assertions to other module flags
jemmai (Jemma Issroff)
05:22 PM Revision 37ccf91b (git): cleanup by `RUBY_DEBUG_LOG2` and `VM_ASSERT`
ko1 (Koichi Sasada)
04:17 PM Revision d270d984 (git): * 2022-05-24 [ci skip]
git[bot]
04:17 PM Revision 08b2f22c (git): [ruby/fileutils] Enhanced RDoc for ::ln_sf and ::link_entry (https://github.com/ruby/fileutils/pull/73)
https://github.com/ruby/fileutils/commit/ff49055f8a burdettelamar (Burdette Lamar)
01:34 PM Revision bc7f5995 (git): Make internal function `rb_main` static
nobu (Nobuyoshi Nakada)
01:00 PM Revision 479884d5 (git): [ruby/fileutils] [DOC] Enhanced RDoc for ::ln_s (https://github.com/ruby/fileutils/pull/72)
https://github.com/ruby/fileutils/commit/db612c5e22 burdettelamar (Burdette Lamar)
11:51 AM Revision 663915dd (git): [rubygems/rubygems] Support the change of did_you_mean about Exception#detailed_message
I am asking did_you_mean to use Exception#detailed_message to add
"Did you mean?" suggestion instead of overriding #message method.
https://github.com/ruby/did_you_mean/pull/177
Unfortunately, the change will affect Gem::UnknownCommand...
mame (Yusuke Endoh)
11:01 AM Misc #18761: provide an example wasm project
grosser (Michael Grosser) wrote:
> Neither the release notes nor the wasm/README.md include any runnable examples.
> ...
I assume the final release will have an official .wasm file that ships with it.
Note that the current approach ...
rkh (Konstantin Haase)
10:17 AM Feature #18788: Support passing Regexp options as String to Regexp.new
@nobu
Thank you for the explanation regarding symbols!
> we'll need migration period to warn anything other than inter and valid string
I think the optional third argument should be also deprecated as described in #18797. Otherw...
janosch-x (Janosch Müller)
10:11 AM Bug #18797 (Closed): Third argument to Regexp.new is a bit broken
## Situation
'n' or 'N' can be passed as a third argument to `Regexp.new`. However, the behavior is not the same as the literal `n`-flag or the `Regexp::NOENCODING` option, and it makes the `#encoding` of `Regexp` and `Regexp#source` ...
janosch-x (Janosch Müller)
09:50 AM Bug #18786: Rescuing NotImplementedError from `GC.verify_compaction_references` can lead to infinite loop on platforms
I was able to investigate a bit more.
This problem is Ruby 3.1 specific.
I tested the following rubies built from git: 3.0, 3.2preview1, and master branch. Neither of which went into the infinite loop.
I found that if the `gc_veri...
jprokop (Jarek Prokop)
09:39 AM Feature #14602: Version of dig that raises error if a key is not present
It seems to be a nice idea. But is `deep_fetch` is the best name for it?
Matz.
matz (Yukihiro Matsumoto)
09:23 AM Revision 4cf155e0 (git): [ruby/net-http] [DOC] Get rid of a RDoc bug
RDoc overrides class name by the assigned name unexpectedly when
assigned using a qualified class path.
https://github.com/ruby/net-http/commit/a7bded0407
nobu (Nobuyoshi Nakada)
08:33 AM Revision 0293f8ca (git): Prevent a warning: `*' interpreted as argument prefix
mame (Yusuke Endoh)
03:13 AM Revision 907b1b61 (git): * 2022-05-23 [ci skip]
git[bot]
02:04 AM Revision 9134e761 (git): Support old Mac OS X
`pthread_threadid_np` is available since Mac OS X 10.6, use
`pthread_mach_thread_np` on older systems.
nobu (Nobuyoshi Nakada)
01:49 AM Bug #18795: Verbose GC debug output with -DRGENGC_DEBUG=5 causes a crash
I had another think about this - the newobj tracepoint is _also_ called in similar circumstances, where the ivar table for a new T_CLASS won't be initialized yet (if using variable length RVALUEs). Thus, calling rb_obj_memsize_of() on an... kjtsanaktsidis (KJ Tsanaktsidis)
12:24 AM Bug #12590 (Closed): Error compiling parse.c on cygwin
This error occurs when lex.c is broken (typically empty). nobu (Nobuyoshi Nakada)
12:05 AM Bug #18796 (Closed): GC compaction gets stuck on Mac OS when a debugger is attached
The GC compaction mechanism uses a kind of read barrier to detect attempts to read objects from pages that have already been moved from (or, at least, I _think_ that's what it does). This is implemented by marking the OS pages as unreada... kjtsanaktsidis (KJ Tsanaktsidis)

05/22/2022

01:55 PM Feature #18788: Support passing Regexp options as String to Regexp.new
```ruby
Regexp.new("(?#{options}:#{code})")
```
```ruby
Regexp.new(code, eval("//#{options}").options)
```
nobu (Nobuyoshi Nakada)
07:45 AM Feature #18788: Support passing Regexp options as String to Regexp.new
I agree that symbols should be disallowed.
The examples uses arbitrary combinations of flags and the order of the flags doesn't have meanings.
In other words, it is a set of chars and OK for a string.
But a symbol is not such thing.
For...
nobu (Nobuyoshi Nakada)
07:49 AM Revision 218e8bdc (git): Disable usage of TLS unless available
Thread-local storage is supported since Mac OS X 10.7. Enable TLS
only when the target version is enough.
nobu (Nobuyoshi Nakada)
07:27 AM Bug #18795 (Closed): Verbose GC debug output with -DRGENGC_DEBUG=5 causes a crash
I was trying to debug an (unrelated) issue in the GC, and wanted to turn on the trace-level GC output by compiling it with -DRGENGC_DEBUG=5. Unfortunately, this actually causes a crash in newobj_init() because the code there tries to lo... kjtsanaktsidis (KJ Tsanaktsidis)
06:26 AM Revision e79983a4 (git): Check if thread-local storage is supported on macOS
We need thread-local storage on Clang, since 319afed20fba. nobu (Nobuyoshi Nakada)
05:18 AM Revision 009a5146 (git): Revert broken thread_pthread.c in 539459abda3
nobu (Nobuyoshi Nakada)
03:02 AM Revision 539459ab (git): Ruby31: add support for Darwin ppc/ppc64 (#5927)
* add coroutines for ppc & ppc64
* fix universal coroutine to include ppc & ppc64
* add powerpc*-darwin to configure.ac
* fix thread_pthread for older systems
Sergey Fedorov

05/21/2022

04:12 PM Revision 84257244 (git): * 2022-05-22 [ci skip]
git[bot]
01:58 PM Revision 7e525331 (git): No fallback to default values
nobu (Nobuyoshi Nakada)
09:41 AM Bug #18785: RbConfig::MAKEFILE_CONFIG["warnflags"] contains "-Wno-cast-function-type" which is not compatible with clang 13.0.0
Should the fix be backported? dorianmariefr (Dorian Marié)
09:33 AM Bug #18785: RbConfig::MAKEFILE_CONFIG["warnflags"] contains "-Wno-cast-function-type" which is not compatible with clang 13.0.0
This is fixed in ruby 3.2.0-preview1 dorianmariefr (Dorian Marié)
07:07 AM Revision 6ba394ce (git): Update bundled gems list at 2022-05-21
git[bot]
04:34 AM Revision 8b2ff2ac (git): Make the test class naming consistent
forgot to commit this in ead96e7b44b98bef4896d836239345012821f1d2 k0kubun (Takashi Kokubun)
04:32 AM Revision ead96e7b (git): Rename test_jit to test_mjit
to avoid confusion with YJIT k0kubun (Takashi Kokubun)

05/20/2022

11:55 PM Revision aef36bb9 (git): [ruby/fileutils] Enhanced RDoc for #cp_lr (https://github.com/ruby/fileutils/pull/71)
https://github.com/ruby/fileutils/commit/39772bccca burdettelamar (Burdette Lamar)
11:47 PM Revision 6c7e2617 (git): [ruby/optparse] Fix typo in documentation
- "hypnen" -> "hyphen"
- "hadler" -> "handler"
https://github.com/ruby/optparse/commit/e70e689ded
ydah (Yudai Takada)
11:39 PM Revision 50bad715 (git): Special-case jit_guard_known_class for strings. This can remove (#5920)
runtime guard-checks for String#to_s, making some blocks too
short to invalidate later. Add NOPs in those cases to reserve space.
Noah Gibbs
11:35 PM Revision a97fbc10 (git): extend `RUBY_DEBUG_LOG_FILTER` to reject words
support reject words with `-word` like
RUBY_DEBUG_LOG_FILTER=-foo,-bar,baz,boo`.
ko1 (Koichi Sasada)
09:45 PM Revision 3bceae0f (git): Fix typo in README (#5925)
"iteretor" -> "iterator" Yudai Takada
07:25 PM Bug #16829: Exceptions raised from within an enumerated method lose part of their stacktrace
> is it feasible to improve stacktraces raised within fibers?
As a more general solution, I'm wondering if exceptions could have not just a single stack trace, but an append-only list of stack traces that gets appended every time the ...
KyleFromKitware (Kyle Edwards)
06:32 PM Feature #18595 (Closed): Alias `String#-@` as `String#dedup`
Thank you Matz!
Merged as 65122d09d515c9183e643d5f7f31d24251b149ed
byroot (Jean Boussier)
12:33 PM Feature #18595: Alias `String#-@` as `String#dedup`
It sounds OK. The name `dedup` seems reasonable too.
Matz.
matz (Yukihiro Matsumoto)
06:31 PM Revision 65122d09 (git): [Feature #18595] Alias String#-@ as String#dedup
byroot (Jean Boussier)
05:19 PM Bug #18794 (Open): Windows - intermittent SEGV TestObjSpace#test_reachable_objects_during_iteration
Test runs in retry, generates the following (removed path from x64-ucrt-ruby320.dll). mswin build runs it as a single test, I don't believe it's failed.
```
1) Failure:
TestObjSpace#test_reachable_objects_during_iteration Li...
MSP-Greg (Greg L)
05:06 PM Bug #18779: `GC.compact` and other compaction related methods should be defined as rb_f_notimplement on non supported platforms.
After working through this in https://github.com/sparklemotion/nokogiri/pull/2532#issuecomment-1121302762 I agree that Ruby should provide an easier mechanism for discovering whether compaction is supported. mdalessio (Mike Dalessio)
04:30 PM Bug #18793 (Rejected): Select and Find behave differently for hashes
It seems that Hash implements select but not find, which uses the Enumerable version.
``` ruby
irb(main):009:0> { 1..10 => :a, 11 .. 20 => :b }.select { _1 === 12 }
=> {11..20=>:b}
irb(main):010:0> { 1..10 => :a, 11 .. 20 => :b }...
brenogazzola (Breno Gazzola)
03:42 PM Revision 11336c7d (git): * 2022-05-21 [ci skip]
git[bot]
03:41 PM Revision 8fa9e168 (git): [ruby/net-http] Make the recommended name formal
`HTTPServerException` is the name deprecated since years ago.
https://github.com/ruby/net-http/commit/b3028fef5a
nobu (Nobuyoshi Nakada)
03:12 PM Bug #18792 (Rejected): Socket.tcp throws `getaddrinfo': no implicit conversion of Hash into String
Yes, it's a keyword argument, not an option hash. byroot (Jean Boussier)
01:47 PM Bug #18792: Socket.tcp throws `getaddrinfo': no implicit conversion of Hash into String
It's the Ruby 3 things. They don't try to match method parameters for you anymore.
You have to do it explicitly:
~~~Ruby
Socket.tcp(host, port, **socket_opts)
~~~
midnight (Sarun R)
11:30 AM Bug #18792 (Rejected): Socket.tcp throws `getaddrinfo': no implicit conversion of Hash into String
Hello,
I was using ruby 2.5.3 for a while, but now it's EOL, trying to port my code to ruby 3.0.4.
Same piece of code is throwing error on below code snippet.
Below piece of code works fine on ruby 2.5.3, but throws error on ruby...
rahulroot (Rahul Gupta)
10:48 AM Revision 4146fd28 (git): Rewrite with assert_ractor for multiple ractor environment
hsbt (Hiroshi SHIBATA)
10:05 AM Revision a080651f (git): Disable GMP by -DUSE_GMP=0
nobu (Nobuyoshi Nakada)
09:53 AM Revision b6649797 (git): Picked the missing test file from https://github.com/ruby/did_you_mean/commit/8faba54b2d3ec9aa570691775f143801308c5b2f
hsbt (Hiroshi SHIBATA)
09:45 AM Revision bcc9451b (git): Merge JRuby implementation for stringio and io-wait
hsbt (Hiroshi SHIBATA)
09:36 AM Revision c83ec3ab (git): Merge https://github.com/ruby/pathname/pull/8 for pathname
hsbt (Hiroshi SHIBATA)
09:02 AM Revision e3434118 (git): Update default gems list at bcdbfe4b6e09c0076571addd1d0dd3 [ci skip]
git[bot]
08:49 AM Revision bcdbfe4b (git): [ruby/reline] Require Ruby >= 2.6
fix https://github.com/ruby/reline/pull/428
https://github.com/ruby/reline/commit/dae9eca323
ima1zumi (Mari Imaizumi)
08:49 AM Revision 1d9f2a45 (git): [ruby/racc] Show diffs
https://github.com/ruby/racc/commit/0b679e2f69 nobu (Nobuyoshi Nakada)
08:49 AM Revision 104fb83c (git): [ruby/io-nonblock] Remove unnecessary files from the gem
https://github.com/ruby/io-nonblock/commit/3850a4c7ac nobu (Nobuyoshi Nakada)
08:49 AM Revision 0dfd5d19 (git): [ruby/io-nonblock] Rename `io_nonblock_mode` and extract `set_fcntl_flags`
https://github.com/ruby/io-nonblock/commit/22f08574df nobu (Nobuyoshi Nakada)
08:49 AM Revision 589f1c1d (git): [ruby/tempfile] Enhanced RDoc for ::new and ::create (https://github.com/ruby/tempfile/pull/10)
https://github.com/ruby/tempfile/commit/a5e53aa82a burdettelamar (Burdette Lamar)
08:49 AM Revision 6923dd93 (git): [ruby/tempfile] Drop unused gemspec directives
This gem exposes no executables.
https://github.com/ruby/tempfile/commit/07fde5fe14
olleolleolle (Olle Jonsson)
08:49 AM Revision 9245b28d (git): [flori/json] Bump version to 2.6.2
https://github.com/flori/json/commit/5de358f655 flori (Florian Frank)
08:49 AM Revision a15d0e26 (git): [flori/json] Fix parser bug for empty string allocation
When `HAVE_RB_ENC_INTERNED_STR` is enabled it is possible to
pass through a null pointer to `rb_enc_interned_str` resulting
in a segfault
Fixes #495
https://github.com/flori/json/commit/b59368a8c2
Andrew Bromwich
08:49 AM Revision 767f3904 (git): [flori/json] Doc: Improve documentation on JSON#parse and JSON#parse!
https://github.com/flori/json/commit/75ada77b96
Co-authored-by: Bruno Gomes da Silva <brunojabs@gmail.com>
hsbt (Hiroshi SHIBATA)
08:49 AM Revision a37051ef (git): [flori/json] Remove unknown keyword arg from DateTime.parse
This snuck in while addding tests for the `create_additions`
feature. Caught by JRuby when we added the `limit` option to the
Date/DateTime parsing methods, which causes this to be rejected as
an unknown keyword.
https://github.com/flor...
headius (Charles Nutter)
08:37 AM Revision 37ea07d5 (git): setup vm->main_ractor before `Init_native_thread()`
ko1 (Koichi Sasada)
08:37 AM Revision eab99b1d (git): `rb_thread_t::serial` for debug
`rb_thread_t::serial` is auto-incremented serial number for
threads and it can overflow, it means the serial is not a ID
for each thread, it is only for debug print.
`RUBY_DEBUG_LOG` shows this information.
Also skip EC related informa...
ko1 (Koichi Sasada)
08:32 AM Revision aeea8817 (git): Merge RubyGems and Bundler HEAD
https://github.com/rubygems/rubygems/commit/125415593ead9ab69a9f0bb5392c9d7ec61b1f51 hsbt (Hiroshi SHIBATA)
08:32 AM Revision bd8df25c (git): [ruby/did_you_mean] Fix `frozen_string_literal is ignored after any tokens` warning. (https://github.com/ruby/did_you_mean/pull/172)
```
did_you_mean/formatters/verbose_formatter.rb:5: warning: `frozen_string_literal' is ignored after any tokens
```
https://github.com/ruby/did_you_mean/commit/531760f323
Jean byroot Boussier
08:30 AM Bug #18407: Behavior difference between integer and string flags to File creation
I guess, yeah, and because I was dealing with opening a file, so `File::` constants seemed appropriate to set the open mode, right? deivid (David Rodríguez)
08:28 AM Bug #18407: Behavior difference between integer and string flags to File creation
BTW, why do you use `File::` instead of `IO::`?
Because the documents in io.c use the former?
nobu (Nobuyoshi Nakada)
08:15 AM Bug #18407: Behavior difference between integer and string flags to File creation
I created https://github.com/ruby/ruby/pull/5923. deivid (David Rodríguez)
08:09 AM Bug #18407: Behavior difference between integer and string flags to File creation
Thanks! The documentation seems much better now (master) than on 3.1, but I will try a PR to clarify a bit more! deivid (David Rodríguez)
08:23 AM Revision ec7b42eb (git): [DOC] Add a note to clarify binary flags to `IO.new`
Try to make it more clear that the `File::BINARY` integer flag, and the
`b` string suffix are not equivalent.
deivid (David Rodríguez)
02:38 AM Bug #18791: Unexpected behavior of Socket#connect_nonblock
Should I treat `0` as a successful connection?
Does anyone have an insight on this?
Does anyone want me to try something on my side?
midnight (Sarun R)
12:27 AM Feature #18774: Add Queue#pop(timeout:)
matz (Yukihiro Matsumoto) wrote in #note-10:
> You may consider adding timeout_value keyword argument. But it should be a different issue.
A supplimental explanation. We discussed this ticket at the dev meeting, and someone suggested...
mame (Yusuke Endoh)

05/19/2022

11:56 PM Bug #18407: Behavior difference between integer and string flags to File creation
deivid (David Rodríguez) wrote in #note-6:
> I still think at least the documentation should be updated to mention this
Suggestions for improvement are of course welcome.
Note that the current document says that `"b"` means "setti...
mame (Yusuke Endoh)
09:08 AM Bug #18407: Behavior difference between integer and string flags to File creation
Thanks @mame!
I still think at least the documentation should be updated to mention this, because the current wording makes me think the alternatives I tried should be equivalent and both work: https://ruby-doc.org/core-3.1.2/IO.html#...
deivid (David Rodríguez)
09:00 AM Bug #18407: Behavior difference between integer and string flags to File creation
@deivid This should work
```
$ ruby -ropen-uri -EUTF-8:UTF-8 -e 'f = File.new("foo", File::WRONLY | File::TRUNC | File::BINARY, encoding: "BINARY"); f.write URI.open("https://rubygems.org/gems/rake-13.0.6.gem").read'
```
mame (Yusuke Endoh)
07:27 AM Bug #18407 (Closed): Behavior difference between integer and string flags to File creation
`IO::BINARY` is for `O_BINARY` which comes from underlying runtimes, and unrelated to ruby encodings.
The second form is for specifying such flags in a fine-grained manner, so it needs an encoding explicitly unlike the shorthand `"wb"`.
nobu (Nobuyoshi Nakada)
10:05 PM Revision 6850e3c4 (git): [rubygems/rubygems] Fix locale dependent spec failure
https://github.com/rubygems/rubygems/commit/1fd818743e deivid (David Rodríguez)
08:05 PM Bug #16829: Exceptions raised from within an enumerated method lose part of their stacktrace
For anyone looking for a workaround, this seems to work pretty well:
``` ruby
# assume `enum` is an `Enumerator`
begin
enum.next
rescue StopIteration
raise
rescue
$!.set_backtrace($!.backtrace + caller)
raise
end
```
This will ...
KyleFromKitware (Kyle Edwards)
05:07 PM Bug #16829: Exceptions raised from within an enumerated method lose part of their stacktrace
Came here to say that I ran into this same issue and found it very frustrating. I had to go over a lot of code to find the function that called `Enumerator#next`. Would love to see better stack traces in the future. KyleFromKitware (Kyle Edwards)
07:22 PM Bug #18791 (Rejected): Unexpected behavior of Socket#connect_nonblock
I followed an example of [Socket#connect_nonblock](https://ruby-doc.org/stdlib-3.1.2/libdoc/socket/rdoc/Socket.html#method-i-connect_nonblock) on the document.
Waiting for multiple Socket connections at once.
~~~Ruby
# Pull down Goo...
midnight (Sarun R)
03:53 PM Revision cbfce40e (git): * 2022-05-20 [ci skip]
git[bot]
03:52 PM Revision b8a268e2 (git): YJIT: Add opt_succ (#5919)
k0kubun (Takashi Kokubun)
08:44 AM Feature #18749: Strangeness of endless inclusive ranges
@janosch-x (Janosch Müller) That seems to be a good idea. That is a possible compromise. Thank you for the idea. sawa (Tsuyoshi Sawada)
08:15 AM Revision 3d6fd162 (git): Undefine RUBY_DLN_CHECK_ABI on cygwin
fd0 (Daisuke Fujimura)
08:13 AM Feature #18618 (Closed): no clobber def
See [#18742](https://bugs.ruby-lang.org/issues/18742#note-4)
Matz.
matz (Yukihiro Matsumoto)
08:09 AM Feature #18742 (Rejected): Introduce a way to tell if a method invokes the `super` keyword
First, I am afraid that no_clobber checks using `super` would not work well. People would override methods without using `super` more often that you may expect. Some may copy code from the parent methods, some may just reimplement method... matz (Yukihiro Matsumoto)
08:07 AM Revision 61a54d51 (git): [DOC] Re-markup as Markdown
nobu (Nobuyoshi Nakada)
07:46 AM Revision 72fc3b1b (git): Fold too long lines, etc [ci skip]
nobu (Nobuyoshi Nakada)
07:46 AM Revision a7252918 (git): Suppress unused-function [ci skip]
nobu (Nobuyoshi Nakada)
07:37 AM Feature #18774: Add Queue#pop(timeout:)
I accept the original proposal Queue.pop(timeout: sec). You may consider adding timeout_value keyword argument. But it should be a different issue.
Matz.
matz (Yukihiro Matsumoto)
06:48 AM Revision ee3b61a4 (git): Removed subversion section because there is no active branch for svn.
hsbt (Hiroshi SHIBATA)
05:03 AM Bug #18781: MJIT tests failing with Ubuntu focal with gcc-11 and some flags
@jaruga It seems like the problem is that you're passing a linker flag, `-Wl,-z,now`, through `--with-gcc`. To make MJIT's build work, it has to use the same linker flags as ones used for building the interpreter, and it fails that way w... k0kubun (Takashi Kokubun)
04:43 AM Bug #18790 (Closed): cannot load such file -- digest (LoadError)
I got asked by @hsbt to file this.
## Backtrace
```
configuring psych
/home/k0kubun/src/github.com/ruby/ruby/tool/extlibs.rb:7:in `require': cannot load such file -- digest (LoadError)
from /home/k0kubun/src/github.com/...
k0kubun (Takashi Kokubun)
12:15 AM Bug #18783: OptionParser should recognize "-" as an optional argument
Any thoughts on this?
I created a PR: https://github.com/ruby/ruby/pull/5918
konsolebox (K B)

05/18/2022

10:19 PM Revision 13c60e65 (git): * 2022-05-19 [ci skip]
git[bot]
10:19 PM Revision 75fcfb14 (git): [ruby/timeout] Remove redundant done? check
* It's already checked inside #interrupt.
https://github.com/ruby/timeout/commit/5f43254f81
Eregon (Benoit Daloze)
10:19 PM Revision 240ac9ea (git): [ruby/timeout] Synchronize all accesses to @done
* So it is trivially correct.
* Performance seems the same overall.
https://github.com/ruby/timeout/commit/5e0d8e1637
Eregon (Benoit Daloze)
10:19 PM Revision 354cd6f2 (git): [ruby/timeout] Handle Timeout + fork and add test for it
https://github.com/ruby/timeout/commit/4baee63b9b Eregon (Benoit Daloze)
10:19 PM Revision 89fbec22 (git): [ruby/timeout] Reimplement Timeout.timeout with a single thread and a Queue
https://github.com/ruby/timeout/commit/2bafc458f1 Eregon (Benoit Daloze)
09:22 PM Bug #18782: Race conditions in autoload when loading the same feature with multiple threads.
"ioquatix (Samuel Williams)" <noreply@ruby-lang.org> wrote:
> @normalperson I've attached patch files. If you have time, I'd really appreciate your feedback on this. Specifically, patch 5 - freeing this unconditionally causes the Ruby ...
normalperson (Eric Wong)
02:21 PM Bug #18782: Race conditions in autoload when loading the same feature with multiple threads.
@ioquatix indeed, my bad. byroot (Jean Boussier)
07:17 AM Bug #18782: Race conditions in autoload when loading the same feature with multiple threads.
@byroot Does this align up with what you are saying?
```ruby
features = $LOADED_FEATURES.dup
path = "./sleepy.rb"
File.write(path, "sleep 5")
thread = Thread.new do
require path
end
sleep 1
thread.kill
thread.joi...
ioquatix (Samuel Williams)
03:30 AM Bug #18782: Race conditions in autoload when loading the same feature with multiple threads.
> Consider multiple threads trying to require a feature which is slow to load. Let's say it's a web sever, and the first thread is cancelled because the request is cancelled. Should this cause all subsequent attempts to use the constant ... byroot (Jean Boussier)
04:39 PM Feature #18749: Strangeness of endless inclusive ranges
Maybe a simple, non-breaking solution would be to make endless Ranges exclude the end regardless of how they are written?
```ruby
1..nil # => 1...
1...nil # => 1...
# as a result:
1..nil == 1...nil # => true
(1..nil).co...
janosch-x (Janosch Müller)
12:59 PM Bug #18061: Execshield test: libruby.so.N.N.N: FAIL: property-note test because no .note.gnu.property section found
> I will try to test make annocheck on Mac.
I sent the PR here. It's working in progress.
https://github.com/ruby/ruby/pull/5916
jaruga (Jun Aruga)
11:25 AM Bug #18787 (Closed): Use correct make rules
Merged at https://github.com/ruby/ruby/commit/c478a3c0a9179298b5ae332268e1e94ff9c912bd hsbt (Hiroshi SHIBATA)
08:21 AM Feature #18788: Support passing Regexp options as String to Regexp.new
> Please don't allow symbols. It may look cute (in some cases), but the options are essentially a set of single letters, and that's not what Symbols are about.
My reasoning for supporting them was not cuteness but avoiding confusion.
I...
janosch-x (Janosch Müller)
04:03 AM Feature #18788: Support passing Regexp options as String to Regexp.new
Please don't allow symbols. It may look cute (in some cases), but the options are essentially a set of single letters, and that's not what Symbols are about.
If you really want symbols, please make it something like
```
Regexp.new('...
duerst (Martin Dürst)
05:33 AM Revision 97c12c5f (git): Clean intermediate object files
nobu (Nobuyoshi Nakada)
05:33 AM Revision 9a0f5a8e (git): Verbose mode on libyjit merge
nobu (Nobuyoshi Nakada)
05:33 AM Revision 9b3ed5a2 (git): Extract YJIT_LIBS directly without copying
nobu (Nobuyoshi Nakada)
05:33 AM Revision 3db8db8a (git): `AR` does not need the absolute path
Still use `find` to get rid of potential ARGV limit overflow, since
rustc-genrated object file names are mangled and very long.
nobu (Nobuyoshi Nakada)
02:32 AM Revision c478a3c0 (git): [DOC] Use `make gdb-ruby` and `make lldb-ruby` in doc/contributing/building_ruby.md
kaiquekandykoga (Kaíque Koga)
02:28 AM Revision aab683af (git): Write skipping instead of skiping [ci skip]
https://www.lexico.com/en/definition/skip kaiquekandykoga (Kaíque Koga)
01:27 AM Bug #18751: Regression on master for Method#== when comparing public with private method
jeremyevans0 (Jeremy Evans) wrote in #note-10:
> you would have to make it so the `rb_method_entry_t*` points to the ZSUPER method.
Yes. I meant it by "we determined to allow a Method object for ZSUPER method entry".
> ...
I think...
mame (Yusuke Endoh)
01:04 AM Revision 093c516c (git): Update default gems list at 6b6d7df39db2447dd675b2558aab69 [ci skip]
git[bot]
01:03 AM Revision 6b6d7df3 (git): [ruby/psych] Prepare to develop 5.0.0
https://github.com/ruby/psych/commit/c3b5183f42 hsbt (Hiroshi SHIBATA)
01:03 AM Revision 3ec06633 (git): [ruby/psych] [CI] Add/update 'rake install', update Psych version for Ruby 3.1 gem install
https://github.com/ruby/psych/commit/2fa5e190b5 MSP-Greg (Greg L)
01:02 AM Revision c7bbed29 (git): Merge RubyGems-3.3.13 and Bundler-2.3.13
hsbt (Hiroshi SHIBATA)
01:02 AM Revision 14e4055a (git): [Actions] mingw - use ruby/setup-ruby@v1 again
MSP-Greg (Greg L)
01:02 AM Revision 42355187 (git): Try previous ruby-setup-ruby
The commits between db14f2dde9ceeaa8acbcd31884475a7ce97ae9d3 and
11cc84264a91d42bc873f39d70678e44042322d2 seems breaking
OpenSSL::TestConfig#test_s_parse_include.
nobu (Nobuyoshi Nakada)
01:02 AM Revision 04d3a841 (git): Merge Psych-4.0.4
hsbt (Hiroshi SHIBATA)
01:02 AM Revision 86ca4b3f (git): Ignore rubyspec_temp fot Git
hsbt (Hiroshi SHIBATA)
01:02 AM Revision 71929805 (git): [rubygems/rubygems] Skip test for cargo builder
https://github.com/rubygems/rubygems/commit/60ca4ad9c6 hsbt (Hiroshi SHIBATA)
01:02 AM Revision 7e580d41 (git): [rubygems/rubygems] Move testing_ruby_repo into test helper
https://github.com/rubygems/rubygems/commit/6590debe55 hsbt (Hiroshi SHIBATA)
01:02 AM Revision 2e291e3f (git): Merge RubyGems-3.3.12 and Bundler-2.3.12
hsbt (Hiroshi SHIBATA)
01:02 AM Revision 8ba584ff (git): Merge RubyGems-3.3.11 and Bundler-2.3.11
hsbt (Hiroshi SHIBATA)
01:02 AM Revision ec5dae0d (git): Merge RubyGems-3.3.10 and Bundler-2.3.10
hsbt (Hiroshi SHIBATA)
01:02 AM Revision 1a0c76f4 (git): Merge RubyGems-3.3.9 and Bundler-2.3.9
hsbt (Hiroshi SHIBATA)
01:02 AM Revision b61f3a91 (git): backport the latest version of sync_default_gems
hsbt (Hiroshi SHIBATA)
01:02 AM Revision c5432bee (git): Bump cgi version to 0.3.2
hsbt (Hiroshi SHIBATA)
01:02 AM Revision b5ef64a8 (git): Merge RubyGems-3.3.8 and Bundler-2.3.8
hsbt (Hiroshi SHIBATA)
01:02 AM Revision 1a6a608a (git): [ruby/securerandom] Bump up v0.2.0
https://github.com/ruby/securerandom/commit/62ca2828f3 hsbt (Hiroshi SHIBATA)
01:01 AM Revision 81a8661e (git): bump patchlevel
nagachika (Tomoyuki Chikanaga)
01:01 AM Bug #18789 (Feedback): make test-bundled-gems failed after make install
On snapshot-master CI, `make test-bundled-gems` failed.
https://github.com/ruby/actions/runs/6476724416?check_suite_focus=true#step:17:118
```
./tool/test-bundled-gems.rb:10:in `realpath': No such file or directory @ realpath_rec - ...
znz (Kazuhiro NISHIYAMA)
 

Also available in: Atom