Project

General

Profile

Activity

From 05/22/2022 to 05/28/2022

05/28/2022

11:06 PM Bug #18765 (Closed): Wrong description introduced by https://github.com/ruby/ruby/pull/4938/files
jeremyevans0 (Jeremy Evans)
07:20 PM Revision 931b013b (git): * 2022-05-29 [ci skip]
git[bot]
07:20 PM Revision 8038d5e4 (git): Revert flawed doc for slice_after, slice_when, and chunk_while (#5952)
Restores doc for the methods that were cited in https://bugs.ruby-lang.org/issues/18765. burdettelamar (Burdette Lamar)
10:22 AM Revision 6e3295e5 (git): [rubygems/rubygems] Make code to find target update version easier to follow
https://github.com/rubygems/rubygems/commit/a7f81cc7ee deivid (David Rodríguez)
10:22 AM Revision e9c4e37f (git): [rubygems/rubygems] Remove unnecessary name and platform filter
It's already done before.
https://github.com/rubygems/rubygems/commit/49d28cfde5
deivid (David Rodríguez)
10:22 AM Revision e78c1ddb (git): [rubygems/rubygems] Fix rubygems update when non default `--install-dir` is configured
https://github.com/rubygems/rubygems/commit/9f3b21192d deivid (David Rodríguez)
06:26 AM Feature #18809: Add Numeric#ceildiv
Julia provides [`cld`](https://docs.julialang.org/en/v1/base/math/#Base.cld) and [`fld`](https://docs.julialang.org/en/v1/base/math/#Base.fld) for the ceiling and flooring division, respectively. They are implemented as aliases of `div`... mrkn (Kenta Murata)
01:50 AM Feature #18809: Add Numeric#ceildiv
I'm positive.
It may be nice to alias `div` as `floordiv` too?
nobu (Nobuyoshi Nakada)
04:20 AM Misc #18689 (Closed): Windows mswin builds, Actions, OpenSSL 3
hsbt (Hiroshi SHIBATA)
04:16 AM Misc #18689: Windows mswin builds, Actions, OpenSSL 3
All of the above has been implemented. Re Actions & Windows builds, using an mswin build (currently only available as a head build, 'mswin') will install all the vcpkg dependencies needed to build Ruby, similar to mingw & ucrt builds. ... MSP-Greg (Greg L)
04:16 AM Bug #18810: Make `Kernel#p` interruptable.
PR: https://github.com/ruby/ruby/pull/5967 ioquatix (Samuel Williams)
03:04 AM Bug #18810 (Closed): Make `Kernel#p` interruptable.
While figuring out https://bugs.ruby-lang.org/issues/18465 I found a test which fails when `rb_io_flush` becomes blocking.: https://github.com/ruby/ruby/commit/fe6b2e20e9f17ed2c2900aa72994e075ffdc7124
It seems unusual to me that `Kern...
ioquatix (Samuel Williams)
04:03 AM Bug #18465: Make `IO#write` atomic.
Merged changes and follow up issue: https://bugs.ruby-lang.org/issues/18810 ioquatix (Samuel Williams)
04:02 AM Bug #18465 (Closed): Make `IO#write` atomic.
ioquatix (Samuel Williams)
02:45 AM Bug #18465: Make `IO#write` atomic.
In some cases, `Kernel#p` can block when calling `rb_io_flush` if the output is a pipe. Because of that, `rb_io_blocking_region` can be interrupted while doing flush. This causes the spec `test_async_interrupt_and_p` to fail, because it ... ioquatix (Samuel Williams)
03:44 AM Revision 6b0131db (git): Make `Kernel#p` completely uninterruptible.
Samuel Williams
03:44 AM Revision 753d3055 (git): Tidy up usage of write_lock.
Samuel Williams
03:44 AM Revision 1589ac62 (git): Improve handling of zero length writes.
Samuel Williams
03:44 AM Revision 4efccd28 (git): Improve consistency of `io_binwritev_internal` implementaiton.
Samuel Williams
03:44 AM Revision ac499bb5 (git): Improve error handling in `finish_writeconv`.
Samuel Williams
03:44 AM Revision c6cd9e18 (git): Better handling of `error`.
Samuel Williams
03:44 AM Revision 585e9714 (git): Always allocate write_lock
machty
03:44 AM Revision 216593f5 (git): Add IO write throughput/locking overhead benchmark.
Samuel Williams
03:44 AM Revision 15ebfe28 (git): Make `io_binwritev` atomic.
Samuel Williams
03:44 AM Revision ce23cfa5 (git): Make `io_binwrite` atomic.
Samuel Williams
02:47 AM Feature #17370 (Closed): Introduce non-blocking `Addrinfo.getaddrinfo` and related methods.
ioquatix (Samuel Williams)
02:47 AM Feature #17370: Introduce non-blocking `Addrinfo.getaddrinfo` and related methods.
This is working as expected, we have implemented it in the async gem. ioquatix (Samuel Williams)

05/27/2022

10:23 PM Feature #18809 (Closed): Add Numeric#ceildiv
pull request: https://github.com/ruby/ruby/pull/5965
I have needed to implement "rounding up division" several times.
("rounding up division" means getting a quotient of division which is rounded up to the nearest integer.)
Typi...
kyanagi (Kouhei Yanagita)
08:45 PM Revision 8a13a2e8 (git): RCLASS uses FLUSER bits 0 through 3
jemmai (Jemma Issroff)
08:45 PM Revision ac405dc2 (git): Add more information to lldb dump_page helper
jemmai (Jemma Issroff)
08:38 PM Revision c3fd2e49 (git): * 2022-05-28 [ci skip]
git[bot]
08:38 PM Revision fc184ca1 (git): Only check class ancestors for ivar in memory_view
rb_class_get_superclass returns the immediate SUPER, including T_ICLASS.
rb_ivar_lookup isn't implemented for T_ICLASS so it uses the default
behaviour, which always returns Qnil.
This commit avoids checking T_ICLASS for ivars.
jhawthorn (John Hawthorn)
11:18 AM Revision 8b4d2a50 (git): [DIC] Fix typo in documentation
kyanagi (Kouhei Yanagita)
10:17 AM Bug #18806: protected methods defined by refinements can't be called
Right, agreed that 1 is best semantically.
I'm not too keen on extra checks, but the checks for protected are already expensive and this won't make it significantly worse.
1 implies 2 BTW in terms of optimizations, i.e., if it's an f...
Eregon (Benoit Daloze)
07:07 AM Bug #18806: protected methods defined by refinements can't be called
protected is for a method call with an explicit receiver, so I prefer 1.
private is enough for fcalls.
shugo (Shugo Maeda)
08:26 AM Revision 6778d321 (git): [rubygems/rubygems] Show better error when previous installation fails to be removed
Instead of guessing on the culprit.
We actually have a helper, `Bundler.rm_rf`, with exactly the behavior
that we want:
* Allow the passed folder to not exist.
* No exception swallowing other than that.
https://github.com/rubygems/rub...
deivid (David Rodríguez)
06:08 AM Revision 45177129 (git): Support old Mac OS X SDK and gcc
Follow up of https://github.com/ruby/ruby/pull/5927
`pthread_threadid_np()` is not even be declared in outdated SDKs.
Also, the `__API_AVAILABLE` macro does not work on gcc, which does not
support the [availability] attribute of clang,...
nobu (Nobuyoshi Nakada)
04:10 AM Bug #18608: `require': cannot load such file -- ripper (LoadError) after `make distclean`
I guess this is because either `bison` is not installed in the build environment or the environment variable `YACC` is not correctly set. Note that `make distclean` among other things removes `ext/ripper/ripper.c` which requires `YACC` (... xtkoba (Tee KOBAYASHI)
12:56 AM Revision 7d9da4c3 (git): Use `$(CHDIR)` so works with symlink [ci skip]
nobu (Nobuyoshi Nakada)
12:54 AM Revision be26f406 (git): Revert "Stop rebuilding miniruby always [ci skip]"
This reverts commit 2f5edfa47d06c9605a5a0aa3ad72d7fef4d44fa3. nobu (Nobuyoshi Nakada)

05/26/2022

10:54 PM Bug #18793 (Rejected): Select and Find behave differently for hashes
jeremyevans0 (Jeremy Evans)
10:45 PM Bug #18769: StringIO#each hangs up on some input with `chomp: true`
I've submitted a pull request to fix this: https://github.com/ruby/stringio/pull/30 jeremyevans0 (Jeremy Evans)
10:40 PM Revision a04d8c95 (git): Remove trailing comma from FL_USER3 (#5958)
jemmai (Jemma Issroff)
10:29 PM Bug #18444: Trapped TSTP causes a locking deadlock in 3.0.3 onward
I tested this on several Linux (GNU/Linux and Android) environments. Sending `Ctrl-Z` from terminal sometimes results in "Received ..." and sometimes "deadlock" but not sticking to one result for each environment. I used the newest relea... xtkoba (Tee KOBAYASHI)
10:16 PM Bug #18768: Inconsistent behavior of IO, StringIO and String each_line methods when return paragraph and chomp: true passed
I agree that the behavior for all of these methods should be the same. I think the IO behavior makes the most sense, and String and StringIO should be changed to match it.
I submitted pull requests to Ruby (https://github.com/ruby/ru...
jeremyevans0 (Jeremy Evans)
09:45 PM Bug #18286: Universal arm64/x86_84 binary built on an x86_64 machine segfaults/is killed on arm64
I don't believe any of those bugs are related.
My suspicion is that, when building on x86 and targeting universal, during `configure` for cross-compilation on arm64 the small test binaries that built cannot be executed on x86, leading...
ccaviness (Clay Caviness)
09:28 PM Bug #18770: Inconsistent behavior of IO/StringIO's each methods when called with nil as a separator, limit and chomp: true
I think both IO#each and StringIO#each behavior is wrong when combining `nil` with `chomp`. My opinion is that a `nil` separator means there is no separator at all, and therefore `chomp` should either raise an error or be ignored if `ni... jeremyevans0 (Jeremy Evans)
07:44 PM Bug #18806: protected methods defined by refinements can't be called
I agree this looks like unintended behavior/a bug.
TruffleRuby already behaves like:
```
:refined
:refined
:refined
:refined
"method"
```
fcalls should ignore visibility, always, so I think 2. is best.
Eregon (Benoit Daloze)
12:28 AM Bug #18806 (Closed): protected methods defined by refinements can't be called
Hello!
The `protected` visibility is a bit unusual, since it depends on where the callee method is considered to be defined. I was looking into making [an optimization](https://github.com/ruby/ruby/pull/5643) to calling `protected` me...
jhawthorn (John Hawthorn)
07:38 PM Bug #18767: IO.foreach hangs up when passes limit=0
I've submitted a pull request to fix this: https://github.com/ruby/ruby/pull/5954 jeremyevans0 (Jeremy Evans)
07:37 PM Bug #18771: IO.foreach/.readlines ignores the 4th positional argument
I've submitted a pull request to fix this: https://github.com/ruby/ruby/pull/5953 jeremyevans0 (Jeremy Evans)
07:09 PM Revision 33fdff3c (git): Remove unused RMODULE_INCLUDED_INTO_REFINEMENT flag
jemmai (Jemma Issroff)
06:54 PM Revision adc709ad (git): Don't attempt to read ivars on T_ICLASS in struct (#5664)
jhawthorn (John Hawthorn)
06:13 PM Bug #18807 (Third Party's Issue): /lib/x86_64-linux-gnu/libruby-2.7.so.2.7 issue
jeremyevans0 (Jeremy Evans)
06:03 PM Bug #18807: /lib/x86_64-linux-gnu/libruby-2.7.so.2.7 issue
Kakcalu13 (Kevin KO) wrote in #note-2:
> xtkoba (Tee KOBAYASHI) wrote in #note-1:
> ...
Wait, how do you close this issue? lol
Kakcalu13 (Kevin KO)
06:03 PM Bug #18807: /lib/x86_64-linux-gnu/libruby-2.7.so.2.7 issue
xtkoba (Tee KOBAYASHI) wrote in #note-1:
> Note that the stack trace shows most recent call last. I guess Ruby Core is not much relevant here because it only calls `runGui` in `libignition-gazebo3-ign.so.3.12.0` through FFI. If anything...
Kakcalu13 (Kevin KO)
05:08 PM Bug #18807: /lib/x86_64-linux-gnu/libruby-2.7.so.2.7 issue
Note that the stack trace shows most recent call last. I guess Ruby Core is not much relevant here because it only calls `runGui` in `libignition-gazebo3-ign.so.3.12.0` through FFI. If anything, then the parameters for `runGui` might hav... xtkoba (Tee KOBAYASHI)
02:49 PM Bug #18807 (Third Party's Issue): /lib/x86_64-linux-gnu/libruby-2.7.so.2.7 issue
Seems like this is the right place for this issue. If this is wrong place, please let me know so I can close it promptly
My computer specs:
OS: MacOS Monetery
CPU/GPU: Apple chip (M1)
Docker: Ubuntu 20.04 Focal
I was able to...
Kakcalu13 (Kevin KO)
05:40 PM Bug #18678: Crash on Mac - vm_call0_cfunc_with_frame
Is `^C` after `irb(main):005:0> a1` intentional?
In my experiment, interruption (`Ctrl-C`) in the middle of evaluation seems to cause `irb` to exit, but I don't know if it is relevant here.
```
$ irb
irb(main):001:0> a1^C
irb(ma...
xtkoba (Tee KOBAYASHI)
05:07 PM Revision c3929b8c (git): * 2022-05-27 [ci skip]
git[bot]
05:06 PM Revision ba887870 (git): Use bindgen to import CRuby constants for YARV instruction bytecodes
Noah Gibbs (and/or Benchmark CI)
02:52 PM Bug #18808 (Closed): Cannot compile ruby 3.1.2 on powerpc64le-linux without disabling the jit features
The system I am trying to compile on is a ppc64el system running RedHat 7 (3.10.0-1160.62.1.el7.ppc64le). I can successfully compile on a x86_64 system running the same version RedHat 7 (3.10.0-1160.62.1.el7.x86_64)
When I configure ...
npn (John Davis)
01:04 PM Revision bd472ef3 (git): Show ASAN_OPTIONS in hacking guide.
Samuel Williams
10:55 AM Revision 46cf3bf3 (git): Using TZMODE_SET_LOCALTIME macro
S_H_ (Shun Hiraoka)
06:26 AM Revision 2f5edfa4 (git): Stop rebuilding miniruby always [ci skip]
nobu (Nobuyoshi Nakada)
04:51 AM Revision 2556e15d (git): Remove unnecessary ignore warnings.
Samuel Williams
02:58 AM Bug #14246: Inconsistent C source code indentation
https://github.com/ruby/ruby/pull/5946 experiment with `clang-format`. ioquatix (Samuel Williams)
02:20 AM Revision 946e3bbd (git): Simplify the autoload require logic.
Samuel Williams

05/25/2022

10:08 PM Revision 982bf726 (git): * 2022-05-26 [ci skip]
git[bot]
10:08 PM Revision 012eb9b7 (git): [ruby/fileutils] [DOC] Enhanced RDoc for copy_entry (https://github.com/ruby/fileutils/pull/76)
https://github.com/ruby/fileutils/commit/27a3c376c7 burdettelamar (Burdette Lamar)
08:00 PM Bug #18560 (Closed): "Compaction isn't available on this platform" error running PG test suite on ppc64le
This seems the same as #18779, which just got fixed. Eregon (Benoit Daloze)
07:34 PM Bug #18753 (Rejected): lineno= is not returning an integer
jeremyevans0 (Jeremy Evans)
07:24 PM Bug #18766 (Rejected): ArgumentError with no backtrace information when requiring openssl/cipher and initializing an OpenSSL::Cipher
I agree that this isn't a bug.
In terms of `openssl/cipher`, requiring individual parts of a library should never be assumed to be supported unless the library is explicitly designed for that. We shouldn't attempt to detect invalid r...
jeremyevans0 (Jeremy Evans)
06:39 PM Bug #18785 (Feedback): RbConfig::MAKEFILE_CONFIG["warnflags"] contains "-Wno-cast-function-type" which is not compatible with clang 13.0.0
dorianmariefr (Dorian Marié) wrote in #note-2:
> Should the fix be backported?
If you can bisect and find the fixing commit, we can mark it for backporting. Whether to backport is always up to the branch maintainer.
jeremyevans0 (Jeremy Evans)
06:07 PM Bug #18801: Dead YARV instructions produced when `branchif` is used
Both of those instructions serve a purpose, but they could also be optimized away.
`next_catch_label` is referenced from the catch table. That catch table may be optimized away, which is why you are seeing the label being omitted from...
dylants (Dylan Thacker-Smith)
12:20 PM Bug #18801: Dead YARV instructions produced when `branchif` is used
My questions aside. I'm not sure this is a bug, and could probably be closed? eightbitraptor (Matt V-H)
12:19 PM Bug #18801: Dead YARV instructions produced when `branchif` is used

I investigated these instructions and whether or not they were dead code and
could be removed.
From the outside it looks like there are two things to note:
* they immediately follow an unconditional jump and so should theoretica...
eightbitraptor (Matt V-H)
01:57 PM Misc #18800: The administrator requires you to enable two-factor authentication.
Oh I see. I thought 2FA was for protecting our accounts, but instead it's to increase barrier to entry for bots (but also for humans). Not sure I agree, but I understand your pain. Dan0042 (Daniel DeLorme)
12:59 PM Bug #18793: Select and Find behave differently for hashes
Yeah, I had noticed the difference, but I assumed that "method missing = bug". But you are right. That would be a breaking change for a lot of projects (I hand't thought of that). brenogazzola (Breno Gazzola)
12:58 PM Bug #18658: Need openssl 3 support for Ubuntu 22.04 (Ruby 2.7.x and 3.0.x)
Having helped several co-workers to install ruby-2.7 and 3.0 on their Ubuntu-22.04, I support backporting the openssl-3.0 gem to these ruby versions, similar to how Ubuntu patched their ruby-3.0 package. While it's preferable to use the ... larskanis (Lars Kanis)
12:45 PM Bug #18805 (Closed): IO::Buffer is inconsistent when returning a string from an empty buffer
I’ve been using `IO::Buffer` and I found it to be slightly inconsistent when it comes to returning empty string for empty buffers.
for example, a slice of an allocated buffer with `size = 0`, returns `""` with `get_string`, as an exampl...
procmarco (Marco Concetto Rudilosso)
12:17 PM Revision d875445e (git): Fix GC race condition in autoload.
Samuel Williams
12:02 PM Feature #14602: Version of dig that raises error if a key is not present
What about simply allowing `fetch` to take multiple arguments?
If there are more than one argument, always interpret the last one as the default value unless when there is a block, in which case, the block is evaluated if a key is missi...
sawa (Tsuyoshi Sawada)
06:45 AM Feature #14602: Version of dig that raises error if a key is not present
I fully agree with @duerst in #14602#note-24:
> maybe we can think it as a combination of `dig` with `fetch`. Then what about `dig_fetch` or `fetch_dig`? These names don't look very natural, but it's easy to understand what they are ...
zverok (Victor Shepelev)
12:04 AM Feature #14602: Version of dig that raises error if a key is not present
My humble suggestion would be `Hash#retrieve`. The operation tries to retrieve a value in the depths of a hash and if it comes back empty handed, that is an error.
```ruby
hash = {
name: {
first: "Ariel",
last: "Caplan"
...
ufuk (Ufuk Kayserilioglu)
10:50 AM Revision cd6f87ee (git): [ruby/timeout] Set the flag surely before return
https://github.com/ruby/timeout/commit/f3a31abdfb nobu (Nobuyoshi Nakada)
10:16 AM Revision 15287707 (git): Remove unexpected rakelib [ci skip]
nobu (Nobuyoshi Nakada)
10:05 AM Revision 8006a15e (git): [ruby/timeout] Add epoch.rake [ci skip]
https://github.com/ruby/timeout/commit/5153ae9cad nobu (Nobuyoshi Nakada)
09:58 AM Revision df7a1377 (git): [ruby/timeout] Update spec files not to include unused files [ci skip]
https://github.com/ruby/timeout/commit/01c44b591f nobu (Nobuyoshi Nakada)
09:50 AM Revision 952ff7fb (git): Fix out of bounds read.
Samuel Williams
09:50 AM Revision 86602484 (git): Ensure we retain the main fiber stack bounds.
Samuel Williams
09:48 AM Revision 983f2688 (git): Hack to avoid leak checker
nobu (Nobuyoshi Nakada)
09:47 AM Revision e77e2339 (git): [ruby/timeout] Hack to avoid leak checker
https://github.com/ruby/timeout/commit/9a9b03b44c nobu (Nobuyoshi Nakada)
09:26 AM Revision cdfb0272 (git): Run find in PATH [ci skip]
nobu (Nobuyoshi Nakada)
09:22 AM Bug #18804 (Open): Invalid line number for putnil instruction
Looks like this is a pretty old bug. Consider example:
```
def foo1
if true
nil
else
1
end
end
def foo2
if true
42
else
1
end
end
foo1_method = method(:foo1)
puts RubyVM::InstructionSequen...
hurricup (Alexandr Evstigneev)
09:09 AM Revision ab7f8e32 (git): Update default gems list at fde4519af8762fccc8488d1972d984 [ci skip]
git[bot]
09:08 AM Revision fde4519a (git): [ruby/timeout] Bump version to 0.3.0
https://github.com/ruby/timeout/commit/f69f954a94 hsbt (Hiroshi SHIBATA)
06:50 AM Bug #18799: Refinement#import_methods vs attr_reader
As eregon stated, it's an intended limitation.
It's possible to allow importing C methods without refinements activation.
It may be helpful for attr_*, but not for define_method.
shugo (Shugo Maeda)
06:06 AM Revision 0114c72d (git): Clean intermediate files for update-deps [ci skip]
nobu (Nobuyoshi Nakada)
03:59 AM Misc #18803 (Closed): DevMeeting-2022-06-16
# The next dev meeting
**Date: 2022/06/16 13:00-17:00** (JST)
Log: https://github.com/ruby/dev-meeting-log/blob/master/DevMeeting-2022-06-16.md
- Dev meeting *IS NOT* a decision-making place. All decisions should be done at the bu...
mame (Yusuke Endoh)
03:59 AM Misc #18747 (Closed): DevMeeting-2022-05-19
mame (Yusuke Endoh)
03:34 AM Bug #18802: Negation of POSIX character class does not work
Thank you! I misunderstood about character classes. cohei (昂平 谷口)
03:02 AM Bug #18802 (Rejected): Negation of POSIX character class does not work
Note that the sentence is written in [the section of character class](https://docs.ruby-lang.org/ja/3.1/doc/spec=2fregexp.html#string). So `[:^ascii:]` must be used in a character class as follows:
```
irb(main):001:0> %w[あああ あ a b :...
mame (Yusuke Endoh)
02:41 AM Bug #18802 (Rejected): Negation of POSIX character class does not work
> https://docs.ruby-lang.org/ja/3.1/doc/spec=2fregexp.html#charclass_posix
> ...
For example, `[:^ascii:]` is the negation of `[:ascii:]` according to the document. But it does not work:
```ruby
irb(main):001:0> RUBY_VERSION
=> "3....
cohei (昂平 谷口)
03:24 AM Revision 9a8fc4e0 (git): Tidy up redundant returns.
Samuel Williams
03:24 AM Revision 42bcc629 (git): Retain reference to blocking fibers.
Samuel Williams
03:24 AM Revision 901525b1 (git): Add support for address sanitizer for amd64 and arm64.
Samuel Williams
12:32 AM Feature #18798: `UnboundMethod#==` with inherited classes
ah, mistake... ko1 (Koichi Sasada)
12:28 AM Feature #18798: `UnboundMethod#==` with inherited classes
Ah, yes, it is a feature request. ko1 (Koichi Sasada)

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
 

Also available in: Atom