Activity
From 01/01/2023 to 01/07/2023
01/07/2023
-
07:22 PM Revision fd98169e (git): [ruby/uri] [DOC] Common rdoc (https://github.com/ruby/uri/pull/52)
- https://github.com/ruby/uri/commit/be8047028f
-
06:55 PM Bug #19005: Ruby interpreter compiled XCode 14 cannot build some native gems on macOS
- Submitted https://github.com/ruby/ruby/pull/7086.
-
06:28 PM Bug #19005: Ruby interpreter compiled XCode 14 cannot build some native gems on macOS
- A possible fix is to squelch this warning via `-no_fixup_chains`:
```diff
diff --git a/configure.ac b/configure.ac
index a2a0c1e387..d653a13bb8 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3104,7 +3104,7 @@ AS_IF([test "$rb_c... -
06:20 PM Bug #19005: Ruby interpreter compiled XCode 14 cannot build some native gems on macOS
-
08:40 AM Bug #19005 (Closed): Ruby interpreter compiled XCode 14 cannot build some native gems on macOS
- Ok, I see this was reported in https://bugs.ruby-lang.org/issues/19082.
-
08:38 AM Bug #19005: Ruby interpreter compiled XCode 14 cannot build some native gems on macOS
-
08:19 AM Bug #19005: Ruby interpreter compiled XCode 14 cannot build some native gems on macOS
- I think this problem was "accidentally" fixed in Ruby 2.7.7 and 3.0.5, but it's not working in Ruby 3.1.3 and up due to a simple removal of a dollar sign (https://github.com/ruby/ruby/commit/667aa81219ca080c0a4b9f97d29bb3221bd08a33).
I... -
02:48 PM Bug #19321: BigDecimal multiplication giving different result since Ruby 3.1
- > The old result was incorrect. The new, correct result is due to a bug fix. I'm going to close this. If you can find a result that is incorrect in Ruby 3.1 or 3.2, please post it.
I see, makes sence. Thanks for the explanation
-
06:43 AM Bug #19321: BigDecimal multiplication giving different result since Ruby 3.1
- JFI: it is https://github.com/ruby/bigdecimal/pull/180, which fixed https://github.com/ruby/bigdecimal/issues/70 and #13331.
-
05:37 AM Bug #19321 (Closed): BigDecimal multiplication giving different result since Ruby 3.1
- The old result was incorrect. The new, correct result is due to a bug fix. I'm going to close this. If you can find a result that is incorrect in Ruby 3.1 or 3.2, please post it.
-
04:25 AM Bug #19321: BigDecimal multiplication giving different result since Ruby 3.1
- The newer result seems arithmetically correct.
-
03:46 AM Bug #19321 (Closed): BigDecimal multiplication giving different result since Ruby 3.1
- I have this math operation 120.to_d * 0.07 and I noticed that since upgrading to Ruby 3.1 I get different results. I would expect to get the same result as in previous versions.
```
rbenv local 3.0.3
➜ irb
require 'bigdecimal/util.r... -
01:35 PM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- It might be interesting to limit the depth or maximum number of fields shown for inspect via some argument/fiber locals (so it'd work to some extent with custom `#inspect`)/etc.
But that should be a separate new proposal then. -
01:31 PM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- zverok (Victor Shepelev) wrote in #note-26:
> Honestly, I would much rather prefer users to be advised "make sure your `#inspect` is efficient" than make everybody suffer.
That's not reasonable to ask. `#inspect` was never meant to b... -
01:23 PM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- > The vast majority of classes out there don't define a custom inspect. So Ruby should do something reasonable for these cases.
+1 My intention with my bug report was to call this out -- `inspect` can get really expensive, and you jus... -
12:20 PM Bug #18518: NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large
- Spec fixed in https://github.com/ruby/ruby/compare/651a098ea1526b363e85fd8d3f30e9783f6c5de1...28cfc0c116b6c6e40bf3b391f026a51b3b208047, so only RangeError for when above the limit.
-
12:06 PM Bug #18518: NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large
- CRuby actually can give NoMemoryError, RangeError but also ArgumentError (seems a bug:
```
$ ruby -e '1 << (2**67-1)'
-e:1:in `<<': integer overflow: 4611686018427387905 * 4 > 18446744073709551615 (ArgumentError)
``` -
12:00 PM Bug #18518: NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large
- nobu (Nobuyoshi Nakada) wrote in #note-8:
> It is a test for the development branch and unrelated to users using released versions.
It might not be clear given the original bug report, but the behavior of NoMemoryError vs RangeError on ... -
01:58 AM Bug #18518 (Rejected): NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large
- It is a test for the development branch and unrelated to users using released versions.
-
12:18 PM Revision 28cfc0c1 (git): Only RangeError on CRuby for shift width >= 2**67
- * It seems a better exception class too than NoMemoryError.
-
12:13 PM Revision 897cf122 (git): Fix Integer#{<<,>>} specs with large shift width
- * The limit depends on the implementation and platform, it seems unavoidable.
* See https://bugs.ruby-lang.org/issues/18518#note-9 -
11:54 AM Feature #19317: Unicode ICU Full case mapping
- Just answering to one part:
noraj (Alexandre ZANNI) wrote:
> ## language-sensitive case mapping
> ...
'turkic' was chosen because it includes both Turkish and Azeri languages (see https://en.wikipedia.org/wiki/Turkic_languages).... -
02:03 AM Feature #19317 (Assigned): Unicode ICU Full case mapping
-
10:48 AM Feature #19314: String#bytesplice should support partial copy
- > That shouldn't cost much compared to copying many bytes.
This proposal shows two use cases: text editor and NAT, which doesn't copy many bytes. -
09:24 AM Feature #19322: Support spawning "private" child processes
- Apologies if I wasn’t clear, but I definitely don’t intend for the proposed interface to be platform specific. It would make use of clone/pdfork if they were available, but the fallback implementation (either the “proxy everything throug...
-
09:16 AM Feature #19322: Support spawning "private" child processes
- I'm not very positive to implement platform specific methods, and rather suggest to create a gem as the first step.
-
09:10 AM Feature #19322: Support spawning "private" child processes
- I did think about something in that shape @nobu for unsupported systems, but I think there are two problems -
- SIGCHLD will still be received, which is undesirable on its own
- if a different thread is running `Process.waitpid2(-1)` co... -
08:59 AM Feature #19322: Support spawning "private" child processes
- Already possible solution would be a daemon process:
```ruby
IO.popen("-", "r+") do |childio|
if childio
# In parent process
Process.wait(childio.pid)
# `Process.wait` no longer consume the returned status code.
... -
07:40 AM Feature #19322 (Open): Support spawning "private" child processes
- ## Background
The traditional Unix process APIs (`fork` etc) are poorly isolated. If a library spawns a child process, this is not transparent to the program using the library. Any signal handler for `SIGCHLD` in the program will be c... - 08:47 AM Revision 651a098e (git): [ruby/did_you_mean] Keep the deprecated API for another year in case this could break 'bundle install'
- https://github.com/ruby/did_you_mean/commit/0f4b0806b7
-
08:41 AM Bug #19082: Recent gRPC gem fails to build from the source in already released versions
- Ok, this is indeed a bug. While Ruby 2.7.7 and 3.0.5 work, Ruby 3.1.3 and up have reintroduced https://bugs.ruby-lang.org/issues/19005. See https://bugs.ruby-lang.org/issues/19005#note-25.
-
08:02 AM Revision e537aa65 (git): [ruby/syntax_suggest] Run with the given ruby command
- Running the file with shebang has a few issues.
* shebang is an OS dependent feature. Many modern UNIX-like OSes
support it, but not all, e.g., Windows.
* `env` command may not be in `/usr/bin`.
* "ruby" command may not be "ruby", whe... -
03:15 AM Revision 69a2687a (git): [ruby/bigdecimal] Fix format specifiers for `size_t`
- https://github.com/ruby/bigdecimal/commit/99db3c9754
-
02:47 AM Revision 41fbcc51 (git): Fix format specifiers for pointer differences
01/06/2023
-
08:09 PM Bug #19318 (Closed): Float#round rounds incorrectly for some cases
-
03:27 PM Bug #19318 (Closed): Float#round rounds incorrectly for some cases
- This was discovered by @aardvark179.
The following spec in `spec/ruby/core/float/round_spec.rb` fails on CRuby:
```ruby
ruby_bug "", ""..."3.3" do
# These numbers are neighbouring floating point numbers round a
# precise... -
07:49 PM Revision 00d58afb (git): YJIT: Make iseq_get_location consistent with iseq.c (#7074)
- * YJIT: Make iseq_get_location consistent with iseq.c
* YJIT: Call it "YJIT entry point"
Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com> -
07:49 PM Revision 311ce917 (git): YJIT: Colorize outlined code differently on --yjit-dump-disasm (#7073)
- * YJIT: Colorize outlined code differently
on --yjit-dump-disasm
* YJIT: Reduce the number of escape sequences -
07:26 PM Bug #19320 (Closed): Crash during compaction while traversing the stack
- Fix PR: https://github.com/ruby/ruby/pull/7081
Applying the following patch to test/erb/test_erb.rb and running that file will cause Ruby to crash on my machine (macOS 13.1 on M1 Pro):
```diff
--- a/test/erb/test_erb.rb
+++ b/tes... -
04:46 PM Bug #19319 (Closed): Crash in rb_str_casemap
- Applied in changeset commit:git|d8ef0a98c670449b20436947f5ebbd327ed5ab0d.
----------
[Bug #19319] Fix crash in rb_str_casemap
The following code crashes on my machine:
```
GC.stress = true
str = "testing testing testing"
puts str.ca... -
03:27 PM Bug #19319 (Closed): Crash in rb_str_casemap
- Fix here: https://github.com/ruby/ruby/pull/7080
The following code crashes on my machine:
```ruby
GC.stress = true
str = "testing testing testing"
puts str.capitalize
```
I can repro this issue on Ruby 2.7.7, 3.0.5, 3.1... -
04:46 PM Revision 66bc6209 (git): Remove unused function `rb_shape_flags_mask`
-
04:37 PM Bug #18518: NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large
- There's no practical reason to support left shift of greater than integer max, so I would support a fast check and RangeError. It would make more sense than just blowing up memory and raising NoMemoryError for something that should never...
-
03:01 PM Bug #18518: NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large
- So on 32-bit platforms it already behaves as I would expect, from the log in https://bugs.ruby-lang.org/issues/19260?next_issue_id=19259&prev_issue_id=19261#note-1
```ruby
1 << (2**40) #=> RangeError (shift width too big)
```
I thi... -
04:36 PM Revision d8ef0a98 (git): [Bug #19319] Fix crash in rb_str_casemap
- The following code crashes on my machine:
```
GC.stress = true
str = "testing testing testing"
puts str.capitalize
```
We need to ensure that the object `buffer_anchor` remains on the stack
so it does not get GC'd. -
03:49 PM Feature #19302 (Closed): Non-destructive String#insert
-
02:28 PM Feature #19302: Non-destructive String#insert
- I think we can close this issue.
-
03:39 PM Bug #19260: ruby/spec is failed with Ruby 3.3
- With `git grep -P '\b3\.3\b'`, I found:
```
lib/did_you_mean.rb:116: # TODO: Remove on 3.3:
lib/did_you_mean.rb:135: # TODO: Remove on 3.3:
```
cc @yuki24
```
re.c:3851: rb_warn_deprecated_to_remove("3.3", "3rd argument... -
03:31 PM Bug #19260 (Closed): ruby/spec is failed with Ruby 3.3
- All good now, thanks for creating this ticket.
-
02:05 PM Bug #19260: ruby/spec is failed with Ruby 3.3
- Going in the order of https://github.com/ruby/ruby/commit/a236661a62dc89173dcdd9e071365929db1201a7
* `Encoding#replicate has been removed FAILED` I'll remove it and adjust guard, it's #18949: https://github.com/ruby/ruby/pull/7079
* `do... -
03:34 PM Bug #19293: The new Time.new(String) API is nice... but we still need a stricter version of this
- > A trustworthy version of ISO8601 parser method perhaps with another name than .new that accepts strict ISO8601-ish String only
Can we improve `Time.iso8601`?
Alternatively we could introduce a method based on https://www.rfc-edit... -
03:28 PM Revision 2b88dbc6 (git): Add bug number
-
03:19 PM Feature #18949: Deprecate and remove replicate and dummy encodings
- This is all done now, only https://github.com/ruby/ruby/pull/7079 left and I'll merge that when it passes CI.
Overall:
* We deprecated and removed `Encoding#replicate`
* We removed `get_actual_encoding()`
* We limited to 256 encodi... -
02:19 PM Feature #18949: Deprecate and remove replicate and dummy encodings
- @ko1 did https://github.com/ruby/ruby/pull/6935, great, thank you!
-
03:05 PM Feature #19317 (Assigned): Unicode ICU Full case mapping
- As announced in [Case Mapping](https://docs.ruby-lang.org/en/master/case_mapping_rdoc.html#label-Default+Case+Mapping), Ruby support for Unicode case mapping is not complete yet.
Unicode supports in Ruby is pretty awesome, it works by... -
03:03 PM Misc #19240: DevMeeting-2023-01-19
- * [Bug #18518] NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large (eregon)
* I would like a decision on this ticket
* I propose to raise `RangeError (shift width too big)` if `shift width` is >= 2**31 (32-bit si... -
12:46 PM Misc #19240: DevMeeting-2023-01-19
- EDIT: I remove #19315 for this meeting's agenda, let's discuss it at a later meeting.
-
11:19 AM Misc #19240: DevMeeting-2023-01-19
- * [Feature #19314] String#bytesplice should support partial copy
* Not only I but also kazuho-san wants this feature: https://twitter.com/kazuho/status/1611279616098070532
* Can the length be omitted in the destination? -
04:52 AM Misc #19240: DevMeeting-2023-01-19
- * [Misc #16671] BASERUBY version policy
* How about my proposal?
-
02:35 PM Bug #19316 (Closed): YJIT crash in 3.2.0
- When I check out this commit from GitHub, https://github.com/jdashton/aoc2022-ruby/tree/5702dac483cd6e95f7be35bfebaf9d4a654796d8 , and run the following command, `RUBYOPT="-v --yjit" bin/rspec spec/aoc2022/puzzles/unstable_diffusion_spec...
-
02:33 PM Bug #8973: Allow to configure archlibdir for multiarch
- Actually, the real intention here is to get rid of the `${arch}` from the paths. The thing is that `--enable-multiarch` used to make it possible, because this is the implementation:
~~~
rubyarchprefix=${multiarch+'${archlibdir}/${RUBY_B... -
01:55 PM Bug #8973: Allow to configure archlibdir for multiarch
- nobu (Nobuyoshi Nakada) wrote in #note-9:
> @vo.x With your patch and `--with-multiarch --with-archlibdir='${libdir}'`, not only libruby.so but also all standard library extensions are placed under `${libdir}` without `${arch}`.
> ...
... -
02:20 PM Revision ddbf7be9 (git): [ruby/uri] [DOC] Enhanced RDoc for common methods
- (https://github.com/ruby/uri/pull/50)
https://github.com/ruby/uri/commit/7ff4fb372b -
01:59 PM Bug #13671: Regexp with lookbehind and case-insensitivity raises RegexpError only on strings with certain characters
- @duerst Could you take a look at this? It's not fixed yet in 3.2.0.
-
01:17 PM Feature #18598: Add String#bytesplice
- shugo (Shugo Maeda) wrote in #note-4:
> > * Do not use String and e.g. use an Array of byte values or a C extension
> ...
The typical approach is to flatten (or convert) the Rope to String before matching (whether the Rope is in Ruby o... -
01:14 PM Feature #19314: String#bytesplice should support partial copy
- Eregon (Benoit Daloze) wrote in #note-5:
> Now that we have IO::Buffer and there is https://docs.ruby-lang.org/en/master/IO/Buffer.html#method-i-copy, why not use that?
So this does what you want I believe:
```ruby
x = "0123456789"... -
01:02 PM Feature #19314: String#bytesplice should support partial copy
- Ah, something I missed though is that with lazy substrings, there would still need to be a copy of the bytes to "unshare" the string when writing to it.
That copy would also be needed if the string was shared before (e.g. with .dup), but... -
12:54 PM Feature #19314: String#bytesplice should support partial copy
- naruse (Yui NARUSE) wrote in #note-3:
> But your proposal: Lazy substrings is not a solution because it also creates an object especially for small strings which is embedded in RVALUE.
Yes it creates a String instance reusing the sam... -
12:41 PM Feature #19314: String#bytesplice should support partial copy
- I agree that this is a workaround and a VM should solve this as an optimization.
But your proposal: Lazy substrings is not a solution because it also creates an object especially for small strings which is embedded in RVALUE.
I agr... -
12:20 PM Feature #19314: String#bytesplice should support partial copy
- I think this is too hard to read and parse for a human and 5 arguments seems way too much for a core method.
It feels like a full memcpy/arraycopy which I don't think in general is a good idea for String.
The implementation complexity ... -
11:06 AM Feature #19314 (Closed): String#bytesplice should support partial copy
- String#bytesplice should support partial copy without temporary String objects.
For example, given `x = "0123456789"`, either of the following replaces the contents of `x` with `"0167856789"`:
```ruby
x.bytesplice(2, 3, x, 6, 3)
... -
12:58 PM Bug #19312 (Closed): SEGV during test_ast.rb: <internal:ast>:76: [BUG] parser_token2id: unknown token -1
- Applied in changeset commit:git|cee5beab1d7bf6f99530957494ab9775696d42ce.
----------
[Bug #19312] Return end-of-input at `__END__` -
11:35 AM Bug #19312: SEGV during test_ast.rb: <internal:ast>:76: [BUG] parser_token2id: unknown token -1
- https://github.com/ruby/ruby/pull/7077
Maybe old versions should use `END_OF_INPUT` instead of 0 and -1. -
12:45 PM Feature #19315: Lazy substrings in CRuby
- `SHARABLE_MIDDLE_SUBSTRING` was introduced circa 2014 in https://github.com/ruby/ruby/commit/a707ab4bc8a by @nobu.
@nobu maybe you have some insights to share on this topic? Is there a reason you remember why this flag was never enabl... -
12:33 PM Feature #19315: Lazy substrings in CRuby
- The documentation of RSTRING_PTR() doesn't specify it returns a \0-terminated `char*`, but it seems assumed in various places and it would likely be a security issue if that's not always \0-terminated.
So RSTRING_PTR() needs to realloc ... -
12:30 PM Feature #19315 (Open): Lazy substrings in CRuby
- CRuby should implement lazy substrings, i.e., "abcdef"[1..3] must not copy bytes.
Currently CRuby only reuse the char* if the substring is until the end of the buffer.
But it should also work wherever the substring starts and ends.
... -
12:13 PM Revision cee5beab (git): [Bug #19312] Return end-of-input at `__END__`
-
11:00 AM Revision d9520bf2 (git): [DOC] Mention `configure` options earlier, not after failure
- The command line arguments to `configure` are stored in `rbconfig.rb`.
Usually these are just useless but harmless after the installation,
however could affect unexpectedly when updating default gems. -
11:00 AM Revision 42820a98 (git): [DOC] Specify `shell` format to shell commands
-
11:00 AM Revision b9465614 (git): mkmf.rb: Refactor splitting configure_args and remove duplicate code
-
11:00 AM Revision cd7e14da (git): Pass options for extensions via `CONFIGURE_ARGS`
-
10:15 AM Misc #16671: BASERUBY version policy
- What we often tend to write frequently are safe navigation operator and indented here-docs.
So I'll be happy it were 2.3 or later. -
04:48 AM Misc #16671: BASERUBY version policy
- How about the Ruby version provided by the stable Ubuntu release?
* https://packages.ubuntu.com/search?keywords=ruby
* bionic (18.04LTS): 2.5.1, standard EOL date is 2023/04
* focal (20.04LTS): 2.7, standard EOL date is 2025/04
... -
08:53 AM Revision bdd35045 (git): Fix typos [ci skip]
-
08:49 AM Feature #19300: Move public methods from Kernel to Object
- Useless history talk. I once asked matz why Kernel exists. If I remember correctly, matz said the following.
* In the beginning, there was a usage distinction of putting global function-like methods (exit, eval, etc.) in Kernel and me... - 07:02 AM Revision 1be669d0 (git): Update bundled gems list at 2023-01-06
-
06:37 AM Revision dcf63b58 (git): [ruby/psych] Strip trailing spaces [ci skip]
- https://github.com/ruby/psych/commit/e07b16ad8b
-
06:33 AM Revision f877805a (git): [ruby/psych] Add msys2 dependencies for windows
- https://github.com/ruby/psych/commit/9a3816d903
-
05:30 AM Bug #19275 (Closed): Bundled gems extensions are not installed with 3.2.0 release tarball
-
05:27 AM Bug #19307 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
- https://github.com/ruby/spec/pull/990 has been merged. I'll close this.
-
03:13 AM Revision dd0b4017 (git): Ensure newline at EOF [ci skip]
- Cf. https://github.com/ruby/ruby/pull/7069
-
01:49 AM Revision 6c618cb7 (git): Use a different name for megamorphic setivar exits
- We should differentiate between set and get for megamorphic exits. This
patch fixes the megamorphic exit name in gen_setinstancevariable so that
we can tell the difference between megamorphic get / set sites -
12:53 AM Feature #18814: Ractor: add method to query incoming message queue size
- I heard from @ko1 in person that _he_ doesn't need this feature to implement his ractor pool. From what I understand he would have a single ruby-level Queue instance for all incoming messages and instead of pushing those messages to eac...
-
12:22 AM Bug #19262 (Closed): Segmentation fault on RubyVM::AbstractSyntaxTree.node_id_for_backtrace_location
- Applied in changeset commit:git|979dd02e2f0a70f3f30d47c6115780d8fac6147e.
----------
Check if the argument is Thread::Backtrace::Location object
[Bug #19262] -
12:22 AM Revision 979dd02e (git): Check if the argument is Thread::Backtrace::Location object
- [Bug #19262]
01/05/2023
-
10:21 PM Bug #19275: Bundled gems extensions are not installed with 3.2.0 release tarball
- Thanks. The patch in https://bugs.ruby-lang.org/issues/19275 is literally the same as the one I posted here as a workaround, which I know works as expected.
I think this issue can be closed now, maybe as a duplicate of #19271. -
07:41 AM Bug #19275: Bundled gems extensions are not installed with 3.2.0 release tarball
- We will fix this issue at https://github.com/ruby/ruby/pull/7066
-
05:54 AM Bug #19275: Bundled gems extensions are not installed with 3.2.0 release tarball
- I could reproduce this with BASERUBY and fresh install with tarball.
`tool/outdate-bundled-gems.rb` will removing `debug.so` and `rbs_extension.so` while `make install`.
-
01:45 AM Bug #19275: Bundled gems extensions are not installed with 3.2.0 release tarball
- Ah sorry, that is not correct. The output before `make install` (right after `make` with no target specified) should read:
```
rm -f ./.bundle/specifications/debug-1.7.1.gemspec
rm -f ./.bundle/specifications/rbs-2.8.2.gemspec
rm -... -
09:00 PM Revision 2056c0a7 (git): Add embedded status to dumps of T_OBJECT
- This commit adds `"embedded":true` in ObjectSpace.dump for T_OBJECTs
that are embedded. -
08:11 PM Bug #18518: NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large
- FWIW on JRuby:
```
$ ruby -v
jruby 9.4.1.0-SNAPSHOT (3.1.0) 2022-12-19 6416265092 OpenJDK 64-Bit Server VM 17.0.5+8 on 17.0.5+8 +jit [x86_64-linux]
$ jruby -e 'p(1 << (2**64))'
RangeError: bignum too big to convert into `long'
$ jruby -e... -
07:56 PM Bug #18518: NoMemoryError + [FATAL] failed to allocate memory for twice 1 << large
- This is still not fixed.
I think CRuby should check if RHS is bigger than 2**31 and if so raise an exception immediately instead of taking a lot of time and run into OOM:
https://github.com/ruby/ruby/commit/5df711844586312891bb466dbc72... -
08:07 PM Revision 53938efd (git): Update to ruby/spec@5e48206
-
07:55 PM Revision 29a5fcd6 (git): Add RBIMPL_ATTR_NORETURN to unknown_directive
- Fixes a compiler warning about the function unknown_directive:
pack.c:160:1: warning: function 'unknown_directive' could be declared with attribute 'noreturn' [-Wmissing-noreturn] -
07:23 PM Revision ec14861f (git): Update to ruby/spec@7e680fa
-
06:56 PM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- > The vast majority of classes out there don't define a custom inspect. So Ruby should do something reasonable for these cases.
That's true.
(I still maintain that it could/should be a good community practice to define better `#in... -
06:49 PM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- > Note that in the example provided in the original issue
I just realized my response was confusing. To clarify I meant `ActionController::Base#inspect`. Which resolve to `Object#inspect`. Controllers simply are the root of a very lar... -
06:46 PM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- > What if #inspect is very inefficient? In this case a) actually, yes, I believe that it is client's code responsibility
Note that in the example provided in the original issue, the slow `#inspect` is simply the default `Object#inspec... -
06:42 PM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- @byroot I am not denying the problem exists or saying it shouldn't be handled (and I acknowledge my Rails remark was inappropriate).
I am just saying that the way of fixing it by replacing the object representation with class name bre... -
01:19 PM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- > As far as I understand, the problem originates in Rails, which (as they do) doesn't try to follow good practices for #inspect (which is honestly frequently irritating)
This absolutely isn't specific to Rails. It can happen with any ... -
10:07 AM Feature #18285: NoMethodError#message uses a lot of CPU/is really expensive to call
- I understand I am late to the party, but I am extremely concerned with how the discussion in this ticket went.
From my understanding:
1. There are many contexts, especially with designing, experimenting, and prototyping with Ruby, wh... -
06:55 PM Bug #19313 (Open): Leaked file descriptors while running test-all
- ```
$ make test-all TESTOPTS="-j8"
Run options:
--seed=25187
"--ruby=./miniruby -I./lib -I. -I.ext/common ./tool/runruby.rb --extout=.ext -- --disable-gems"
--excludes-dir=./test/excludes
--name=!/memory_leak/
-j8
... -
06:26 PM Bug #19312: SEGV during test_ast.rb: <internal:ast>:76: [BUG] parser_token2id: unknown token -1
- I have extra files locally which triggers this and that's why the CI doesn't see it.
Anything with `__END__` dies:
```
$ ruby -e 'RubyVM::AbstractSyntaxTree.parse("p 1\n__END__\nfoobar", keep_tokens: true)'
<internal:ast>:59: [BUG... -
06:19 PM Bug #19312 (Closed): SEGV during test_ast.rb: <internal:ast>:76: [BUG] parser_token2id: unknown token -1
- ```
$ make test-all TESTOPTS="test/ruby/test_ast.rb"
...
# Running tests:
<internal:ast>:76: [BUG] parser_token2id: unknown token -1
ruby 3.3.0dev (2023-01-05T14:24:32Z old 358f325bf8) [x86_64-linux]
-- Control frame informatio... -
06:18 PM Revision 1fb02559 (git): Skip reviews for cruby_bindings-only PRs [ci skip] (#7004)
-
06:16 PM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- I flagged it for backporting so it will be available on Ruby 3.2.1 :)
-
06:14 PM Bug #19248 (Closed): TestGCCompact#test_moving_objects_between_size_pools test failure
- Applied in changeset commit:git|273dca3aed7989120d57f80c789733d4bc870ffe.
----------
Fix undefined behavior in shape.c
Under strict aliasing, writing to the memory location of a different
type is not allowed and will result in undefine... -
05:09 PM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- peterzhu2118 (Peter Zhu) wrote in #note-20:
> @vo.x Do you need this backported to Ruby 3.2 or is it ok to keep it only on the master branch (i.e. it will be part of Ruby 3.3)?
Unfortunately, I have no idea how likely is to hit this ... -
03:40 PM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- @vo.x You might want to consider packaging with `-fno-strict-aliasing`.
I suspect the perf loss should be minimal if noticeable at all and it would
mitigate these type of strict aliasing violations, yielding an artifact more likely to ... -
01:58 PM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- @vo.x Do you need this backported to Ruby 3.2 or is it ok to keep it only on the master branch (i.e. it will be part of Ruby 3.3)?
-
01:56 PM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- Thank you @alanwu for looking into this and @vo.x for confirming the fix. I've also confirmed that this fix does indeed make the tests pass. I've opened a PR here: https://github.com/ruby/ruby/pull/7067
-
11:35 AM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- alanwu (Alan Wu) wrote in #note-17:
> Maybe try this patch to confirm?
The patch helps to mitigate the issue. -
06:14 PM Revision 273dca3a (git): Fix undefined behavior in shape.c
- Under strict aliasing, writing to the memory location of a different
type is not allowed and will result in undefined behavior. This was
happening in shape.c due to `rb_id_table_lookup` writing to the memory
location of `VALUE *` that wa... -
06:11 PM Bug #19150 (Closed): pack/unpack silently ignores unknown directives
- Done in https://github.com/ruby/ruby/commit/03dd37775afb40eef392ae2920d728235af302c8, also needed changes in specs: https://github.com/ruby/spec/commit/9d69b95a7bbac3d89e7218a98bd50ecf173d9c6f
- 06:06 PM Revision 54950a78 (git): * remove trailing spaces, append newline at EOF. [ci skip]
-
06:05 PM Revision bbf54ec3 (git): Update to ruby/spec@9d69b95
-
06:05 PM Revision cd5e6cc0 (git): Update to ruby/mspec@fef9b81
-
06:05 PM Revision 03dd3777 (git): Raise an ArgumentError for unknown pack/unpack directive
- * [Bug #19150]
-
02:24 PM Revision 358f325b (git): [DOC] Fix formatting for GC.stat
-
01:06 PM Revision f9148d15 (git): [ruby/irb] Group command test cases with class
- (https://github.com/ruby/irb/pull/491)
Currently, IRB has 35 test cases for 10 non-debugging commands, with the
rest 10 commands untested. So in the long-term, it could have around 70
test cases for all existing commands.
With this num... -
10:01 AM Bug #19297: Don't download content from internet to execute Ruby test suite
- hsbt (Hiroshi SHIBATA) wrote in #note-5:
> How test `bundler` in Fedora builder?
We don't test Bundler unfortunately (in any automated way). But the Bundler test suite is not executed as part of Ruby `make check`
> ...
If this was... -
09:36 AM Bug #19308 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
-
09:24 AM Bug #19308 (Open): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
- Oh, sorry. I'm working to upgrade redis server for bugs.ruby-lang.org. Now, It works.
-
09:22 AM Bug #19308: Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
- Just FTR, I have received the same error also after closing this ticket ...
-
09:21 AM Bug #19308 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
- Ups, sorry for the duplicates. Redmine is throwing following error when the ticket is created:
~~~
Internal error
An error occurred on the page you were trying to access.
If you continue to experience problems please contact your... -
09:18 AM Bug #19308 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
- CentOS 9 / RHEL 9 requires prohibits SHA1 for signing purposes, therefore these specs fail:
~~~
1)
OpenSSL::X509::Name.verify returns true for valid certificate ERROR
OpenSSL::X509::CertificateError: invalid digest
/builddir/build... -
09:34 AM Bug #19271: irb ignores rbs and debug
- Just FYI. Here is an ad-hoc workaround for ruby 3.2.0 tarball.
```
$ tar xf ruby-3.2.0.tar.gz
$ cd ruby-3.2.0
$ rm tool/outdate-bundled-gems.rb
$ touch tool/outdate-bundled-gems.rb
$ ./configure --prefix=/path/to/ruby/installed/
... -
09:26 AM Bug #19271 (Closed): irb ignores rbs and debug
- Applied in changeset commit:git|4959e01932cf6c4d3e5e90d3e0b4fa780f754fa6.
----------
common.mk: Do not invoke outdate-bundled-gems by default
If baseruby is available (and its version is different from one being
built) when compiling r... -
07:36 AM Bug #19271: irb ignores rbs and debug
- I have created a PR to work around this issue. https://github.com/ruby/ruby/pull/7066
-
05:51 AM Bug #19271: irb ignores rbs and debug
- We have two issues.
* Installation failure of C extension provided by bundled gems.
* https://bugs.ruby-lang.org/issues/19275
* Ignore messages will be displayed despite installation successfully.
* I didn't confirm yet.
-
04:11 AM Bug #19271: irb ignores rbs and debug
- ```
Ignoring debug-1.6.3 because its extensions are not built. Try: gem pristine debug --version 1.6.3
Ignoring rbs-2.7.0 because its extensions are not built. Try: gem pristine rbs --version 2.7.0
```
@k0kubun debug-1.6.3 and rbs-... -
02:41 AM Bug #19271 (Assigned): irb ignores rbs and debug
- I couldn't reproduce this with fresh install of Ruby 3.2.0 from tarball.
If you use `GEM_HOME` and share it with each Ruby versions or builds, you may encounter this (It's known issue). After I removed `GEM_HOME` environmental variabl... -
09:26 AM Revision 4959e019 (git): common.mk: Do not invoke outdate-bundled-gems by default
- If baseruby is available (and its version is different from one being
built) when compiling ruby, tool/outdate-bundled-gems.rb (which is
invoked by `make install`) wrongly deletes debug.so and rbs_extension.so
in .bundle/extension/*.
Th... -
09:22 AM Bug #19311 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
-
09:19 AM Bug #19311 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
- CentOS 9 / RHEL 9 requires prohibits SHA1 for signing purposes, therefore these specs fail:
~~~
1)
OpenSSL::X509::Name.verify returns true for valid certificate ERROR
OpenSSL::X509::CertificateError: invalid digest
/builddir/build... -
09:22 AM Bug #19310 (Closed): Fix "OpenSSL::X509::CertificateError: invalid digest" on CentOS 9 / RHEL 9
-
09:19 AM Bug #19310 (Closed): Fix "OpenSSL::X509::CertificateError: invalid digest" on CentOS 9 / RHEL 9
- CentOS 9 / RHEL 9 requires prohibits SHA1 for signing purposes, therefore these specs fail:
~~~
1)
OpenSSL::X509::Name.verify returns true for valid certificate ERROR
OpenSSL::X509::CertificateError: invalid digest
/builddir/build... -
09:22 AM Bug #19309 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
-
09:19 AM Bug #19309 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
- CentOS 9 / RHEL 9 requires prohibits SHA1 for signing purposes, therefore these specs fail:
~~~
1)
OpenSSL::X509::Name.verify returns true for valid certificate ERROR
OpenSSL::X509::CertificateError: invalid digest
/builddir/build... -
09:21 AM Bug #19158: Ruby 3.1.3 installs wrong gemspec for debug gem
- @deivid @nagachika did backport the installer toolchain like `rbinstall.rb` into `ruby_3_1` branch for releasing Ruby 3.1.3. Maybe, this issue contained its time.
-
08:48 AM Bug #19158 (Assigned): Ruby 3.1.3 installs wrong gemspec for debug gem
-
09:18 AM Bug #19307 (Closed): Fix `OpenSSL::X509::CertificateError: invalid digest` on CentOS 9 / RHEL 9
- CentOS 9 / RHEL 9 requires prohibits SHA1 for signing purposes, therefore these specs fail:
~~~
1)
OpenSSL::X509::Name.verify returns true for valid certificate ERROR
OpenSSL::X509::CertificateError: invalid digest
/builddir/build... -
07:34 AM Misc #19304: Kernel vs Object documentation
- > Fixing this and **describing public and private methods correctly** would not be confusing.
This is option (4) of my initial list, I believe.
Option (2) — the easiest and the least desirable of them — is just to dump everything ... -
12:49 AM Misc #19304: Kernel vs Object documentation
- @zverok The `Kernel` page is entirely broken anyway from its first sentence:
> The `Kernel` module is included by class `Object`, so its methods are available in every Ruby object.
the latter half of which is not true since the introdu... -
07:01 AM Misc #19240: DevMeeting-2023-01-19
- * [Feature #18285] NoMethodError#message uses a lot of CPU/is really expensive to call (mame)
* I have created a PR to change the message of NoMethodError based on @akr 's proposal. https://github.com/ruby/ruby/pull/6950
* Why don'... -
06:01 AM Misc #19240: DevMeeting-2023-01-19
- * [Bug #19260] ruby/spec is failed with Ruby 3.3
* <del>How handles these issues?</del>
* https://bugs.ruby-lang.org/issues/13671 is still open status
* https://bugs.ruby-lang.org/issues/18518#note-8 @nobu ? -
06:16 AM Revision ee6e4d63 (git): Extract only one revision in header [ci skip]
- Both of `$(srcdir)/revision.h` and `revision.h` exist because they are
the same file when in-place build.
01/04/2023
-
11:36 PM Bug #19305: TracePoint#parameters segfaults when certain method creation pattern is used
- Thank you so much for the fix :-)
-
11:06 PM Bug #19305 (Closed): TracePoint#parameters segfaults when certain method creation pattern is used
- Applied in changeset commit:git|837ef8911c638c3e2bdb6af710de7c1fac7b5f90.
----------
Fix crash in TracePoint c_call for removed method
trace_arg->id is the ID of the original method of an aliased method. If
the original method is remov... -
07:11 PM Bug #19305: TracePoint#parameters segfaults when certain method creation pattern is used
- Thank you for reporting this bug. I have a fix in this PR: https://github.com/ruby/ruby/pull/7064
-
11:16 PM Revision b4965787 (git): Skip Test::Unit::AutoRunner logic in ruby/ruby repository
-
11:15 PM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- Looking at `rb_shape_traverse_from_new_root()`, it seems like it's triggering UB
in a way that also failed with LTO in the past. Maybe try this patch to confirm?
```patch
diff --git a/shape.c b/shape.c
index 7580003412..8e75f4a270 ... -
10:02 PM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- Thanks to @mtasaka and @vo.x for debugging this further! Using this information, I think this is a bug in GCC. Here's what I did:
- I can confirm that I can reproduce this bug on Ubuntu 22.04 and GCC 11.3.0 with:
```
CFLAGS='-O2... -
11:14 PM Feature #19302: Non-destructive String#insert
- jeremyevans0 (Jeremy Evans) wrote in #note-3:
> austin (Austin Ziegler) wrote in #note-2:
> ...
You made a point. Creating non-destructive variant of any destructive method seems unnecessary since there is dup that is pretty easy to us... -
11:06 PM Revision 1f2fef1f (git): [ruby/openssl] Stop AutoRunner with test-unit
- https://github.com/ruby/openssl/commit/0d4cd8b9ca
-
07:59 PM Revision 837ef891 (git): Fix crash in TracePoint c_call for removed method
- trace_arg->id is the ID of the original method of an aliased method. If
the original method is removed, then the lookup will fail. We should use
trace_arg->called_id instead, which is the ID of the aliased method.
Fixes [Bug #19305] -
07:59 PM Revision f7243d1a (git): [ruby/uri] [DOC] Common methods rdoc
- (https://github.com/ruby/uri/pull/49)
https://github.com/ruby/uri/commit/02dfc79366 -
05:09 PM Feature #8088: Method#parameters (and friends) should provide useful information about core methods
- One way nowadays to do this is to use the `Primitive.foo` system and define the method in Ruby files.
Another would be to add a new `rb_define_method` variant to which the parameters can be passed.
That could then be used for all core m... -
04:48 PM Feature #8088: Method#parameters (and friends) should provide useful information about core methods
- I've been bitten by this same issue (see #19301) in Ruby 3.2.0 with the introduction of the new [Data](https://www.alchemists.io/articles/ruby_data) class. At the time of opening that issue, I didn't fully realize how *untruthful* `Metho...
-
04:51 PM Bug #19301: Fix Data class to report keyrest instead of rest parameters
- Benoit, thanks. I found what I was looking for in #8088. I've added a comment to that issue referring back to this issue.
Victor, thanks for discussion on this and learning just how far down this C-based implementation problem really ... -
10:42 AM Bug #19301: Fix Data class to report keyrest instead of rest parameters
- bkuhlmann (Brooke Kuhlmann) wrote in #note-7:
> Would it be better if I move this discussion to a new issue where the focus is on asking if `Method#parameters` could properly answer the argument signature for C objects? Maybe that's too... -
03:57 PM Bug #19275: Bundled gems extensions are not installed with 3.2.0 release tarball
- Here it is:
```
rm -f ./.bundle/specifications/debug-1.7.1.gemspec
rm -f ./.bundle/specifications/rbs-2.8.2.gemspec
rm -rf ./.bundle/gems/debug-1.7.1/
rm -rf ./.bundle/gems/rbs-2.8.2/
rm -f .bundle/specifications/debug-1.7.1.gems... -
10:49 AM Bug #19275: Bundled gems extensions are not installed with 3.2.0 release tarball
- Could you show the output from `ruby tool/outdate-bundled-gems.rb -n .`?
-
02:10 PM Revision b8a3f1bd (git): Fix crash in tracing object allocations
- ObjectSpace.trace_object_allocations_start could crash since it adds a
TracePoint for when objects are freed. However, TracePoint could crash
since it modifies st tables while inside the GC that is trying to free
the object. This could c... -
02:10 PM Revision 3bcf92d8 (git): Allow malloc during gc when GC has been disabled
- We should allow malloc during GC when GC has been explicitly disabled
since garbage_collect_with_gvl won't do anything if GC has been disabled. -
01:42 PM Bug #19269: Constant lookup and #instance_eval
- @zverok
Thank you for clarification 🙇. -
11:13 AM Bug #19269 (Closed): Constant lookup and #instance_eval
- This is expected because constant lookup is lexicial, i.e., it's only changed by `module/class` keywords, and by eval'ed strings.
-
01:17 PM Bug #19115: RubyGems fails to detect OpenSSL in --with-static-linked-ext builds
- I built Ruby 3.1.2 that we use in our product with this patch applied, and it worked on our systems. Would be nice to see it backported.
- 01:13 PM Revision 799d805e (git): [rubygems/rubygems] Raise invalid option when bundle open --path is called without a value
- https://github.com/rubygems/rubygems/commit/c242311158
- 01:13 PM Revision 87c17a14 (git): [rubygems/rubygems] Enhance bundle open with --path option
- https://github.com/rubygems/rubygems/commit/3bf8e59304
-
12:14 PM Misc #19304: Kernel vs Object documentation
- @sawa
> Can you expand on why option 2 would be super-confusing? I think that option is the best.
Because those are two different categories of methods (as this and the previous ticket discuss in detail), and having them in one mixe... -
08:21 AM Misc #19304: Kernel vs Object documentation
- Can you expand on why option 2 would be super-confusing? I think that option is the best.
-
06:27 AM Misc #19304: Kernel vs Object documentation
- Is the option 3 like this?
https://github.com/ruby/rdoc/pull/961 -
11:12 AM Bug #19270 (Closed): Constants lookup and a singleton class issue
- @alanwu By `attached_object_class` you mean `a.class` so `A`?
Constant lookup behaves lexically, here the scopes around method `c` are `A` and top-level/Object.
So here it looks in `A`, then `Object`, then ancestors of A. It never lo... -
09:36 AM Misc #19240: DevMeeting-2023-01-19
- * [Feature #19179] Support parsing SCM_CRED(ENTIALS) messages from ancillary messages
* Various UNIX-y OS's support getting the (e)uid, (e)gid, and pid from unix sockets - some with a socket option, some with an ancillary message
* R... -
09:35 AM Revision 3d6500ee (git): [ruby/irb] workspace.rb cleanup
- (https://github.com/ruby/irb/pull/489)
* Remove unnecessary Binding#source_location check
`Binding#source_location` was added in 2.6, which is the minimum supported
version now. So this check is no longer necessary.
* Remove unused IR... -
09:31 AM Bug #19297: Don't download content from internet to execute Ruby test suite
- How test `bundler` in Fedora builder? It needs to download RSpec from rubygems.org since Ruby 2.5.
-
07:56 AM Misc #19276: It is not possible to reply to emails from redmine
- Note: email integration was successfully at https://bugs.ruby-lang.org/issues/16986#note-64. I'm not sure why it works.
-
07:02 AM Feature #19306 (Open): Expand zlib interface
- Introduce some extra methods like `window_size`, `level` (compression/decompression), enhance `inspect` and various other quality of life improvements.
- 06:32 AM Revision e25c173c (git): [ruby/reline] correct Win32API capitalization for JRuby
- JRuby 9.4.0.0 introduced a change in case sensitivity in require statements,
meaning that an inclusion of `win32api` loaded Win32API.rb. With this change,
the require statement needs to be updated to the correct capitalization of the
fil... -
03:56 AM Revision d57148e9 (git): Pin octokit/request-action@v2.1.7
-
03:52 AM Bug #19298: `lib/mjit/instruction.rb` was reintroduced by merge mistake
- Thanks @k0kubun and @vo.x.
I created the backport request at https://github.com/ruby/ruby/pull/7061 - 01:02 AM Revision b8673f8b (git): Bump ruby/setup-ruby from 1.128.0 to 1.133.0
- Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.128.0 to 1.133.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Commits](https://github.com/ruby/setup-ruby/compare/4b2d1d631efa087f8896c15a0c6023dc2f...
01/03/2023
-
11:48 PM Bug #19301: Fix Data class to report keyrest instead of rest parameters
- Yeah, let me respond in order:
1. Correct. No issues there.
2. Correct. My problem was thinking in terms of pure Ruby, not C. That was my source of confusion, originally, but you've resolved my confusion.
3. Correct. However, I thin... -
08:30 PM Bug #19301: Fix Data class to report keyrest instead of rest parameters
- I am a bit lost with what you are expecting, but to clarify a bit:
1. `Data.new` and `Data#initialize` have different signatures
2. If they would be defined in Ruby, the signatures would be: for `.new`: `[[:rest], [:keyrest]]`, for `... -
09:57 PM Bug #19305 (Closed): TracePoint#parameters segfaults when certain method creation pattern is used
- ### Reproduction Steps
1. Create a `test.rb` with:
```
class Foo
attr_reader :bar
alias_method :bar?, :bar
remove_method :bar
end
f = Foo.new
TracePoint.trace(:a_call) do |tp|
puts tp.method_id
puts tp.parame... -
09:35 PM Bug #19299 (Closed): YJIT panicked while holding VM lock acquired at ./yjit/src/core.rs:1693. Aborting...
- Applied in changeset commit:git|43ff0c2c488c80aaf83b486d45bcd4a92ebe3848.
----------
YJIT: Fix `yield` into block with >=30 locals on ARM
It's a register spill issue. Fix by moving the Qnil fill snippet to
after registers are released.... -
08:56 PM Bug #19299: YJIT panicked while holding VM lock acquired at ./yjit/src/core.rs:1693. Aborting...
- Thank you for the report! I was able to reproduce the issue
with the logs you posted, so no worries about reducing your app.
It happens with `yield` and a block with a lot of local variables
and it should be specific to ARM:
```r... -
09:33 PM Revision c240a189 (git): YJIT: Dump spill error to stderr [ci skip]
- Since the panic message is in stderr, better to use the same stream in
case stdout and stderr are not synced due to IO redirection. -
09:17 PM Revision 43ff0c2c (git): YJIT: Fix `yield` into block with >=30 locals on ARM
- It's a register spill issue. Fix by moving the Qnil fill snippet to
after registers are released.
[Bug #19299] - 05:03 PM Revision 1f9b6bfa (git): Bump actions/cache from 3.2.0 to 3.2.2
- Bumps [actions/cache](https://github.com/actions/cache) from 3.2.0 to 3.2.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.co... -
05:02 PM Feature #19244: Windows: USERPROFILE should be preferred over HOMEPATH
- The above patch was incomplete, so that the order of the environment variables was changed in `Dir.home`, but not the order in the startup phase, which sets the `HOME` environment variable. This is fixed in https://github.com/ruby/ruby/p...
-
04:43 PM Revision 184739f1 (git): [ci skip] Remove trailing semicolon in gc.c
-
04:35 PM Misc #19304: Kernel vs Object documentation
- I think that (2) looks promising if sections are used (https://ruby.github.io/rdoc/RDoc/Markup.html#class-RDoc::Markup-label-Sections) in the documentation, although I must admit that I’ve never used those. It would absolutely need to be...
-
02:00 PM Misc #19304 (Assigned): Kernel vs Object documentation
- The restating of the problems raised in #19300, from scratch.
I believe it is rather a topic of **community significance** and would be happy if it is possible to **discuss on dev-meeting**, even if the outcome would probably "let's c... -
04:18 PM Revision 1bb0749c (git): [DOC] Move the internal document for `Init_class_hierarchy`
- It has hidden the document for `Object` class.
-
03:33 PM Revision 59cf9ebf (git): [ruby/uri] [DOC] Enhanced RDoc for common methods
- (https://github.com/ruby/uri/pull/48)
https://github.com/ruby/uri/commit/2bfd848c26 -
02:03 PM Feature #19300: Move public methods from Kernel to Object
- > IMHO this is purely an issue of RDoc, and so best to discuss it there or make a PR there.
I don't think so.
The question is "how the language should be documented", not "how the documentation tool (RDoc) should work".
The outc... -
01:45 PM Feature #19300: Move public methods from Kernel to Object
- > I actually think I'll restart it from scratch in dev-meeting-discussion-ready form :)
IMHO this is purely an issue of RDoc, and so best to discuss it there or make a PR there.
Ruby methods will not have a different module/class t... -
01:41 PM Feature #19300: Move public methods from Kernel to Object
- zverok (Victor Shepelev) wrote in #note-7:
> The mental model of "you look in `Kernel` to see 'global' methods available everywhere without a receiver, you look in `Object` to see generic methods every object has" is of tremendous signif... -
01:35 PM Feature #19300 (Rejected): Move public methods from Kernel to Object
- > The title is pretty confusing, but is a bit clearer with those questions:
Yeah, I actually started to write ticket thinking it is a small docs problem (as many of us, I frequently forget they all belong to Kernel), but then while tr... -
01:28 PM Feature #19300: Move public methods from Kernel to Object
- The title is pretty confusing, but is a bit clearer with those questions:
zverok (Victor Shepelev) wrote:
> So, there are three questions/proposals:
> ...
I believe it's all intended. So `Object` is not special and it's possible and... -
01:26 PM Feature #19300: Move public methods from Kernel to Object
- @nobu OK, I discovered the same while answering to @Eregon.
Do you believe the problem should be handled by
1. **adding** more "edge cases" to RDoc (supporting `kernel.rb`)?
2. **removing** edge cases from RDoc (all methods that pre... -
01:20 PM Feature #19300: Move public methods from Kernel to Object
- To add on that, I have seen many many Rubyists confused due to RDoc showing Kernel methods on Object.html.
They thought all those methods are defined on Object and not on Kernel, but it's all a lie and confusion by RDoc.
So I guess the... -
01:17 PM Feature #19300: Move public methods from Kernel to Object
- Yeah, and moving a method between C and Ruby like that is an implementation detail and should definitely not change on which page of the docs a method appears on.
Hence, it's 100% a bug of RDoc, it was a mistake to show Kernel methods o... -
01:11 PM Feature #19300: Move public methods from Kernel to Object
- @Eregon
> My tip is never trust the docs regarding what method is where
Thanks, as a person that tries to maintain and update the docs for each version, I am well aware of it.
The initial ticket text also mentions this:
> ...
We... -
01:05 PM Feature #19300 (Third Party's Issue): Move public methods from Kernel to Object
- This is an issue of RDoc.
RDoc replaces `rb_mKernel` with `rb_cObject` (= `Object`) internally, but it seems not working in some cases (maybe in `kernel.rb`?).
There is no visibility differences between `Kernel` and `Object`. -
12:39 PM Feature #19300: Move public methods from Kernel to Object
- My tip is never trust the docs regarding what method is where:
```
irb(main):001:0> self.method :clone
=> #<Method: Object(Kernel)#clone(freeze: ...) <internal:kernel>:47>
irb(main):002:0> self.method :dup
=> #<Method: Object(Kernel... -
01:47 PM Revision 0dc989d0 (git): Fix Error in GC Compaction specs
- Previously if any of the tests that move objects between size pools
failed to move anything, then the call to stats.dig would return `nil`
which would then cause assert_operator to error.
This should be a test Failure, rather than an Er... -
12:52 PM Bug #19297: Don't download content from internet to execute Ruby test suite
- > MSpec is a specialized framework that is syntax-compatible with RSpec 2 for basic things like describe, it blocks and before, after actions.
From https://github.com/ruby/mspec/#readme
i.e., not for the rest.
One cannot run a RSpec... -
05:20 AM Bug #19297: Don't download content from internet to execute Ruby test suite
- > MSpec claims that “it is syntax-compatible with RSpec 2”
...and syntax-suggest's specs are written in RSpec **3** which is thoroughly backward incompatible with RSpec 2 that we loved. -
04:56 AM Bug #19297: Don't download content from internet to execute Ruby test suite
- MSpec claims that “it is syntax-compatible with RSpec 2”, but the test of syntax-suggest doesn’t work with MSpec as-is.
Any idea?
I’m ok to revert that commit. -
12:38 PM Bug #19295: Time#wday returns 7
- The patch conflicted with 2.7, but could fix this issue by applying with preceding patches.
-
12:34 PM Feature #19303 (Open): Resolv::IPv4::Regex variant without anchors
- ``` ruby
require 'resolv'
p "match this IP: 10.0.0.1"[/match this IP: (#{Resolv::IPv4::Regex})/, 1]
```
This returns 'nil' because Resolv::IPv4::Regex is anchored with \A and \z.
I would like to have a variant of Resolv::IPv4::R... -
08:15 AM Revision fdac1486 (git): NEWS.md: remove a redundant bundled gems entry. [ci skip]
- 06:47 AM Revision d87cf4cc (git): Update bundled gems list at 2bbf63dd867fe3d349b1758805ad44 [ci skip]
-
01:05 AM Feature #19302: Non-destructive String#insert
- austin (Austin Ziegler) wrote in #note-2:
> Ruby strings are mostly copy-on-write, so `string.dup.insert(3, 'baz')` would solve the issue, and it could be written (I believe) as `-string.insert(3, 'baz')` in modern Ruby.
`-string.ins... -
12:44 AM Feature #19302: Non-destructive String#insert
- Ruby strings are mostly copy-on-write, so `string.dup.insert(3, 'baz')` would solve the issue, and it could be written (I believe) as `-string.insert(3, 'baz')` in modern Ruby.
01/02/2023
-
11:52 PM Feature #14919: Add String#byteinsert
- Yes a grapheme can be composed of several code points.
An example is variant selector:
```ruby
irb(main):001:0> a = "\u2665\n\u2764\n\u2665\ufe0f\n\u2764\ufe0f"
=> "♥\n❤\n♥️\n❤️"
irb(main):002:0> puts a
♥
❤ ... -
11:22 PM Feature #19302 (Closed): Non-destructive String#insert
- It would be nice to have a non-destructive version of String#insert to be able to work with frozen literals.
## Current behavior
There is only a destructive version of `String#insert` that will throw an error if the string is froze... -
11:14 PM Bug #19301: Fix Data class to report keyrest instead of rest parameters
- Hey Victor, thanks. I was aware of #19278 but hadn't noticed #19280.
You are correct, when I used `DemoExample[*argument_array]` earlier, that was a typo. I mean to use `DataExample[*argument_array]`.
Ah, so you are saying this is ... -
10:19 PM Bug #19301 (Rejected): Fix Data class to report keyrest instead of rest parameters
- See discussions in #19278 and #19280.
This is a conscious decision of `Data.new` converting all arguments to keyword ones, made for ease of providing default values or preprocessing of arguments, without caring about the form they wer... -
10:13 PM Bug #19301: Fix Data class to report keyrest instead of rest parameters
- Apologies, I should have used `StructExample = Struct.new :one, :two, keyword_init: true` in the above example. ...but this also highlights a new behavioral change with a `Struct` which doesn't use `keyword_init` but misleadingly accepts...
-
10:05 PM Bug #19301 (Rejected): Fix Data class to report keyrest instead of rest parameters
- ## Overview
Hello and Happy New Year. 👋
With the new `Data` class, I'm seeing a discrepancy in parameter behavior compared to a `Struct`. I understand the original `Data` [feature](https://bugs.ruby-lang.org/issues/16122) request m... -
10:29 PM Bug #19298 (Closed): `lib/mjit/instruction.rb` was reintroduced by merge mistake
- Applied in changeset commit:git|2bbf63dd867fe3d349b1758805ad4421f2d772ab.
----------
Remove lib/mjit/instruction.rb
This was accidentally re-introduced in f6620037ba1477d2c337d7b511f094d6d0fbb69c.
[Bug #19298] -
09:14 PM Bug #19298: `lib/mjit/instruction.rb` was reintroduced by merge mistake
- great catch, fixed it in https://github.com/ruby/ruby/commit/2bbf63dd867fe3d349b1758805ad4421f2d772ab.
-
02:11 PM Bug #19298 (Closed): `lib/mjit/instruction.rb` was reintroduced by merge mistake
- It seems that `lib/mjit/instruction.rb` should not be shipped anymore since commit:git|bb4cbd0803c3297ad036008adc7a01159ce44e1e, but it was re-introduced into the repository by merge mistake commit:git|f6620037ba1477d2c337d7b511f094d6d0f...
-
10:05 PM Feature #19300: Move public methods from Kernel to Object
- In particular, Delegator works in an interesting way by:
1. Inheriting from BasicObject
2. Duping the Kernel module (as k)
3. Undefining some methods from k
4. Including k
So, for this particular purpose, moving methods from Ker... -
09:48 PM Feature #19300 (Rejected): Move public methods from Kernel to Object
- In my understanding, `Kernel` is a container for methods that are perceived as "global", and are available inside every objects as its private methods, like `puts`
```ruby
class A
def foo = puts "foo"
end
a = A.new
a.foo # prin... -
09:13 PM Revision 2bbf63dd (git): Remove lib/mjit/instruction.rb
- This was accidentally re-introduced in f6620037ba1477d2c337d7b511f094d6d0fbb69c.
[Bug #19298] -
07:25 PM Bug #19296 (Closed): Time.new's argument check is incomplete
- Applied in changeset commit:git|5be0d42d2c4dc765230c76738289560f9ee37f09.
----------
[Bug #19296] Precheck bits of time components -
03:25 PM Bug #19296: Time.new's argument check is incomplete
- https://github.com/ruby/ruby/pull/7055
-
01:38 PM Bug #19296 (Closed): Time.new's argument check is incomplete
- `Time.new` seems to be performing some sort of argument checking, but I found some strings that can bypass this validation and craft erroneous Time value.
- month
```
'12'.upto('20').each do |m|
str = "2023-#{m}-01"
puts str
... -
07:25 PM Revision 34f8ca17 (git): [ruby/irb] Fix prompt and code mismatch
- (https://github.com/ruby/irb/pull/386)
* fix prompt and code mismatch
* Add test for prompt and code mismatch bug
https://github.com/ruby/irb/commit/a5765d8177
Co-authored-by: Stan Lo <stan001212@gmail.com> -
03:28 PM Bug #19299 (Closed): YJIT panicked while holding VM lock acquired at ./yjit/src/core.rs:1693. Aborting...
- Attached is the backtrace.
The code is a moderately complex view with partials and translations. The panic happens specifically when i call a translation `t('...')` but if i simplify the view code around that call the panic goes away.... -
03:06 PM Bug #19295: Time#wday returns 7
- nobu (Nobuyoshi Nakada) wrote in #note-2:
> Seems same as #19292.
In #19292 it is said that 3.0 and 2.7 don't need while they do. -
02:22 PM Bug #19295 (Closed): Time#wday returns 7
- Seems same as #19291.
-
12:50 PM Bug #19295 (Closed): Time#wday returns 7
- This issue happens since Ruby 2.7, since `Z` and `UTC` are allowed for a zone.
``` ruby
[1] pry(main)> Time.new(2023, 1,3,0,0,0,"UTC").wday
=> 7
[2] pry(main)> Time.new(2023, 1,3,0,0,0,"Z").wday
=> 7
```
This also breaks all w... -
02:29 PM Revision 5be0d42d (git): [Bug #19296] Precheck bits of time components
-
02:17 PM Revision 291a4098 (git): Add missing assertion
-
01:41 PM Bug #19297 (Open): Don't download content from internet to execute Ruby test suite
- Trying to build Ruby 3.2.0 for Fedora and execute its test suite via `make check` as we always did [1], the test suite suddenly fails (while it was working with commit:git|c5eefb7f37):
~~~
... snip ...
C-API Util function ruby_str... -
12:45 PM Bug #19293: The new Time.new(String) API is nice... but we still need a stricter version of this
- `Kernel#Integer` may be easier (and probably faster) than the Regexp.
```ruby
Time.new(string) unless Integer(string, exception: false)
```
Benchmark.
```
$ ruby time_benchmark.rb
Warming up -------------------------------------... -
12:39 PM Bug #19248: TestGCCompact#test_moving_objects_between_size_pools test failure
- mtasaka (Mamoru Tasaka) wrote in #note-14:
> This seems also due to LTO, adding `%global _lto_cflags %{nil}` to ruby.spec, i.e. removing `-flto=auto -ffat-lto-objects` from compilation flag seems to make this test pass.
Thx a lot for he... -
08:42 AM Bug #19291: Ripper's on_parse_error token has wrong content
- This may be a potential bug since older versions.
-
08:35 AM Bug #19291 (Closed): Ripper's on_parse_error token has wrong content
- Applied in changeset commit:git|3becc4a105bcf873fdc6e83c2a957f73718c5084.
----------
[Bug #19291] Rewind to the previous line
When rewinding looking ahead after newline token, also reset the last
line string, the pointers to it, and th... -
07:12 AM Revision 3becc4a1 (git): [Bug #19291] Rewind to the previous line
- When rewinding looking ahead after newline token, also reset the last
line string, the pointers to it, and the location, not only the line
number. -
07:12 AM Revision 1912bf54 (git): Adjut indent [ci skip]
- 07:04 AM Revision 51021fc7 (git): Update bundled gems list at 2023-01-02
-
03:04 AM Bug #18899 (Closed): Inconsistent argument handling in IO#set_encoding
- Applied in changeset commit:git|0903a251796c2b4086804a94420c231c04e3cea1.
----------
Make IO#set_encoding with binary external encoding use nil internal encoding
This was already the behavior when a single `'external:internal'`
encodin...
01/01/2023
-
07:39 PM Bug #14387: Ruby 2.5 を Alpine Linux で実行すると比較的浅めで SystemStackError 例外になる
- Any update on this?
-
05:56 PM Feature #19294 (Open): Enumerator.product works incorrectly with consuming enumerators
- ```ruby
s = StringIO.new('abc')
Enumerator.product([1, 2, 3], s.each_char).to_a
# Expected: => [[1, "a"], [1, "b"], [1, "c"], [2, "a"], [2, "b"], [2, "c"], [3, "a"], [3, "b"], [3, "c"]]
# Actual: => [[1, "a"], [1, "b"], [1, "c"]]
``... -
05:00 PM Revision 0903a251 (git): Make IO#set_encoding with binary external encoding use nil internal encoding
- This was already the behavior when a single `'external:internal'`
encoding specifier string was passed. This makes the behavior
consistent for the case where separate external and internal
encoding specifiers are provided.
While here, ... -
03:07 PM Bug #19293 (Closed): The new Time.new(String) API is nice... but we still need a stricter version of this
- The Ruby 3.2 style `Time.new(String)` API works very well so far, but since the original `Time.new(Integer, Integer, Integer...)` API actually accepts String objects as its arguments, there's one ambiguous case as follows:
`Time.new('20... - 03:04 PM Revision a4e9606d (git): [rubygems/rubygems] Remove stray word in bundle config man page.
- There was an extra word ("with") in this sentence.
https://github.com/rubygems/rubygems/commit/ad3de5126c -
03:02 PM Revision 44b7fd8d (git): [ruby/net-http] Enhanced RDoc for HTTPHeader
- https://github.com/ruby/net-http/commit/6a282eccdd
-
01:50 PM Bug #19292: Time object's wday, yday, and isdst returns broken value (and so does to_a) when kwarg in: 'UTC' was given
- Confirmed the fix. Thank you, @nobu!
-
08:27 AM Bug #19292 (Closed): Time object's wday, yday, and isdst returns broken value (and so does to_a) when kwarg in: 'UTC' was given
- Applied in changeset commit:git|542e984d82fa25098eb15398d716d907acc52b93.
----------
[Bug #19292] Re-initialize tm when wday or yday is not set -
07:43 AM Bug #19292: Time object's wday, yday, and isdst returns broken value (and so does to_a) when kwarg in: 'UTC' was given
- https://github.com/ruby/ruby/pull/7051
-
01:05 PM Feature #16991 (Closed): Sets: add Set#join
- Implemented in Ruby 3.0
-
01:04 PM Feature #16995 (Closed): Sets: <=> should be specialized
- Implemented in Ruby 3.0:
```ruby
Set[1] <=> Set[1, 2]
# => -1
[Set[1], Set[1, 2]].sort
# => [#<Set: {1}>, #<Set: {1, 2}>]
``` -
10:32 AM Feature #3591: Adding Numeric#divisor? (Have working implementation)
- e8c (Viktor Reznov) wrote in #note-20:
> Two solutions:
3rd:
```ruby
def count_digits(n) = n.digits.count { n.modulo(_1).zero? }
```
-
10:21 AM Feature #3591: Adding Numeric#divisor? (Have working implementation)
- matz (Yukihiro Matsumoto) wrote in #note-19:
> Is it more useful than `n % m == 0`?
Yes, statement `n .has_divisor? m` (or `m .divisor_of? n`) has 3 parts instead of 5, and gives a direct answer to the question.
The "problem": htt... -
07:39 AM Revision 542e984d (git): [Bug #19292] Re-initialize tm when wday or yday is not set
-
05:51 AM Bug #19290 (Closed): Documentation: "produces:" (introducing terminal output) is wrongly formatted in few places
- Applied in changeset commit:git|f527a0911d5ff0476152a3e3c9bcd2247ead5636.
----------
[DOC] [Bug #19290] fix formatting -
05:50 AM Revision f527a091 (git): [DOC] [Bug #19290] fix formatting
-
05:25 AM Bug #19285 (Third Party's Issue): (docs.rlo) Split stdlib and core documents
- It is about monkey patching Kernel and seems an internal document.
I don't think it is useful for users.
https://github.com/rubygems/rubygems/pull/6217
On the other hand, RubyGems has the document about extension of `Kernel#requir...