Activity
From 10/23/2024 to 10/29/2024
10/29/2024
-
11:26 PM Feature #20805 (Feedback): Allow Ractor#send from a signal trap Proc
-
11:25 PM Bug #20767 (Open): VM_ASSERT fails on clear_method_entry_by_id_in_class() under a specific situation
- Reopening since the assert failed again on CI:
http://ci.rvm.jp/logfiles/brlog.trunk-repeat20-asserts.20241029-211036#L2453 -
07:20 PM Revision 926b4e2f (git): Remove double semicolon at end of line in weakmap.c [ci skip]
-
05:40 PM Revision a9f509e6 (git): [ruby/error_highlight] Redefine in the module context
- https://github.com/ruby/error_highlight/commit/0048bd0285
-
05:02 PM Revision e22d5c25 (git): Fix method definition owners
-
03:29 PM Misc #20013: Travis CI status
- I sent the following PRs to enable Travis CI for ruby/prism and ruby/zlib again.
* https://github.com/ruby/prism/pull/3193
* https://github.com/ruby/zlib/pull/87
-
07:56 AM Revision 21b3dfa0 (git): [ruby/error_highlight] Suppress smaller `max_snippet_width` warning
- https://github.com/ruby/error_highlight/commit/9cd14c5b9a
-
07:33 AM Feature #20852 (Rejected): Anonymous HEREDOC blocks
Consider the following code.
```ruby
# Consider the following code.
Markdown.render <<~MARKDOWN
# Hello there
This is a Markdown file. See?
1. This is a list
2. With items
3. And more items
MARKDOWN
```
T...-
07:30 AM Revision 7889b888 (git): We can't install simplecov-json because this depends C ext gem.
- Revert "net-imap 0.5.0 needs simplecov-json"
This reverts commit bafcbfe363ef05fe570c96abce316e2f2c7f3589. -
07:25 AM Revision bafcbfe3 (git): net-imap 0.5.0 needs simplecov-json
- https://github.com/ruby/ruby/actions/runs/11568717336/job/32201133125#step:13:258
-
06:34 AM Revision 7eeabccf (git): Fix TestParallel#test_hungup when RUBY_TEST_TIMEOUT_SCALE is set
- When RUBY_TEST_TIMEOUT_SCALE is set, the timeout increases by the multiple
specified. However, the test in test4test_hungup.rb does not scale, so
if RUBY_TEST_TIMEOUT_SCALE is a large number like 10, then the test will
not time out causi... -
04:52 AM Revision cd4b45ab (git): [ruby/strscan] [DOC] doc/strscan/strscan.md - fix triple backtick
- (https://github.com/ruby/strscan/pull/112)
See current doc, search for '## Target Substring', notice the backtick
that isn't visible to the GitHub md parser.
https://github.com/ruby/strscan/blob/843e931d134b0a8f0284296250454374e3f8a6aa... -
04:40 AM Misc #20814: iseq optimizations on constant condition
- nobu (Nobuyoshi Nakada) wrote in #note-1:
> To disable optimizations, see the document of `RubyVM::InstructionSequence.compile_option=`.
> ...
My question is more about the runtime. E.g I want to run a ruby program with optimizations d... -
04:26 AM Revision d5bc4b81 (git): Revert "No longer needed ext/json/extconf.rb"
- This reverts commit 58797b7f74737b8896583c9bfa6546ef6756681a.
-
04:25 AM Revision 2e436218 (git): [ruby/json] Optimize `fbuffer_append_long`
- Ref: https://github.com/ruby/json/issues/655
Rather than to write the number backward, and then reverse
the buffer, we can start from the back of the buffer and write
the number in the proper direction.
Before:
```
== Encoding integer... -
04:25 AM Revision b094ee3f (git): Handle all formatting configs potentially being `nil`.
- Fix: https://github.com/ruby/json/issues/653
I don't think this was really fully supported in the past, but
it kinda worked with some of the implementations.
10/28/2024
-
08:38 PM Revision 3c9be02a (git): [ruby/prism] Only read from buffer if `size` is greater than 0
- It looks like we can possibly do an out of bounds read if size is equal
to 0. This commit adds a conditional to ensure size is actually greater
than 0 before looking backwards in the buffer
https://github.com/ruby/prism/commit/2031b626e6 -
02:39 PM Revision 83568a41 (git): Install simplecov for net-imap 0.5.0 test
-
02:39 PM Revision e994015c (git): Update test-bundled-gems.rb
- - Fix filtering by ARGV
- Adjust top library names from gem names
- Skip if no tests found -
02:08 PM Bug #20819 (Open): IO#readline does not process newlines correctly for wide character encodings
- When not performing character conversion, IO#readline only processes newline characters as ASCII when reading paragraphs. However, when character conversion is involved, even when converting between 2 ASCII incompatible encodings, newli...
-
02:05 PM Revision a8f220ed (git): [DOC] Tweaks for Array#uniq (#11949)
-
01:54 PM Feature #20818 (Feedback): Allow passing a block to Hash#store (to update current value)
- I would like to propose a block form for `Hash#store`. In addition to passing a value, it should also be allowed to pass a block.
If passed a block instead of a value, the block is called with the current value or, if unset, the hash's ... -
12:38 PM Revision 90ef28f5 (git): [DOC] Tweaks for windows.md
-
08:27 AM Revision 4f467c3f (git): Win32: [DOC] Update about program name configurations
-
08:27 AM Revision a3bfddf9 (git): Win32: Refactor configurations
- Pass configure options to the generated Makefile as-is.
-
08:27 AM Revision a687b2ec (git): Win32: [DOC] Mention `vcvarall*.bat`
-
08:27 AM Revision f6bd8f2d (git): Win32: [DOC] No extlibs file, no patch is needed
-
04:31 AM Revision d09b47dd (git): merge revision(s) 70d20ce473952e3a2e5b0aa4a6884886517ee3cc:
- Update bundled gems list
-
03:29 AM Revision 70d20ce4 (git): Update bundled gems list
10/27/2024
-
11:44 AM Misc #20781: DevMeeting-2024-11-07
- * [Feature #20811] `warning: in a**b, b may be too big` is really helpful? (mame)
* I think the warning is not useful. Can we remove the warning?
10/26/2024
-
04:32 PM Feature #20815 (Closed): Fetch for nested hash
- Closing because it's a duplicate.
-
01:20 PM Revision 484ea00d (git): [ruby/stringio] An empty string should be converted to empty in any encoding
- https://github.com/ruby/stringio/commit/ef03f9368d
-
12:55 PM Revision f513863c (git): [ruby/stringio] Unreachable after an invalid argument exception
- https://github.com/ruby/stringio/commit/a2aab4721c
-
12:55 PM Revision 393c5df0 (git): [ruby/stringio] Remove `SafeStringValue`
- In Ruby 2.7 and later, it is the same as `StringValue`.
https://github.com/ruby/stringio/commit/561ea67ea8 -
10:16 AM Bug #20816: Potential regression in Ruby 3.3.x (compared with 3.1 and 3.2) regarding fast syscalls and multi-threading.
- I can also repro on macOS. Comparing profiles between 3.2 and 3.3, in both case the overwhelming majority of the time is spent in the thread scheduler.
The one big difference I can see is that 3.2 seem to use `poll` to wait on threads... -
09:50 AM Bug #20816: Potential regression in Ruby 3.3.x (compared with 3.1 and 3.2) regarding fast syscalls and multi-threading.
- Thanks, these numbers are slightly more "expected" than mine (Ubuntu 24.04), especially for 2 threads, but other that that it looks like the "regression" is also visible on MacOS.
For the record I also tested with ruby master (3.4.0 as ... -
09:28 AM Bug #20816: Potential regression in Ruby 3.3.x (compared with 3.1 and 3.2) regarding fast syscalls and multi-threading.
- The result on my machine (Apple M2 Pro, 12 processors).
Note that N=5_000_000, a half of your example.
|Threads\Ruby| 3.1.4 | 3.2.5 | 3.3.5 | 3.4.0 |
|-----------:|-------:|-------:|-------:|-------:|
| 1 | 8.818 | 5... - 09:45 AM Revision 519f5591 (git): Update default gems list at caa946f2deba24b26e92aae50441ca [ci skip]
-
09:44 AM Revision caa946f2 (git): Restore ext/json/extconf.rb
-
09:44 AM Revision 58797b7f (git): No longer needed ext/json/extconf.rb
-
09:44 AM Revision e136e552 (git): [ruby/json] Instantiate Parser with a kwsplat
- Prior to 2.7.3, `JSON::Ext::Parser` would only take kwargs.
So if json_pure 2.7.4 is loaded with `json <= 2.7.2` (or stdlib)
it blows up.
Ref: https://github.com/ruby/json/issues/650
Fix: https://github.com/ruby/json/issues/651
https:/... -
09:44 AM Revision 8018a312 (git): [ruby/json] Workaround being loaded alongside a different `json_pure` version
- Fix: https://github.com/ruby/json/issues/646
Since both `json` and `json_pure` expose the same files, if the
versions don't match, the native extension may be loaded with Ruby
code that don't match and is incompatible.
By doing the `re... -
09:44 AM Revision a5bd0c63 (git): [ruby/json] Workaround rubygems $LOAD_PATH bug
- Ref: https://github.com/ruby/json/issues/647
Ref: https://github.com/rubygems/rubygems/pull/6490
Older rubygems are executing `extconf.rb` with a broken `$LOAD_PATH`
causing the `json` gem native extension to be loaded with the stdlib
v... -
09:44 AM Revision 3daf16e5 (git): [ruby/json] Cleanup test_helper.rb
- https://github.com/ruby/json/commit/49de571dd8
-
09:44 AM Revision 73142755 (git): json_pure: fix ractor compatibility
- This actually never worked, because the test was always testing
the ext version from the stdlib, never the pure version nor the
current ext version. -
09:44 AM Revision a3c21756 (git): [ruby/json] Use smaller types for JSON_Parser boolean fields
- https://github.com/ruby/json/commit/7f079b25be
-
09:44 AM Revision b1d417dc (git): [ruby/json] Cleaner .encode / .force_encoding
- https://github.com/ruby/json/commit/cecf04fdfc
-
09:44 AM Revision 1045b9f8 (git): [ruby/json] Modernize heredocs
- https://github.com/ruby/json/commit/fb25e94aea
-
09:44 AM Revision bfdf02ea (git): pretty_generate: don't apply object_nl / array_nl for empty containers
- Fix: https://github.com/ruby/json/issues/437
Before:
```json
{
"foo": {
},
"bar": [
]
}
```
After:
```json
{
"foo": {},
"bar": []
}
``` -
09:44 AM Revision 1d470856 (git): Set Ruby 2.7 as the required version
-
09:44 AM Revision 7d37ae67 (git): [ruby/json] Start 2.8.0 development
- https://github.com/ruby/json/commit/937c8d2e65
-
09:44 AM Revision 9d3fd50c (git): [ruby/json] Release 2.7.3
- https://github.com/ruby/json/commit/7a3b482013
-
09:44 AM Revision 89d4bbac (git): [ruby/json] Release 2.7.3.rc1
- https://github.com/ruby/json/commit/a48be35825
-
09:44 AM Revision 92513107 (git): Merge json and json-java gemspecs
-
09:44 AM Revision fc9f0cb8 (git): [ruby/json] JSON.dump / String#to_json: raise on invalid encoding
- This regressed since 2.7.2.
https://github.com/ruby/json/commit/35407d6635 -
09:44 AM Revision 2c6e3bc7 (git): Raise the correct exception in fast_serialize_string
- * Related to https://github.com/ruby/json/issues/344
-
09:44 AM Revision 1cf1bf95 (git): [ruby/json] Add lib/json/ext/generator/state.rb to the gemspec
- * Otherwise the gem always uses the pure-Ruby backend
as it's missing that file and rescuing the LoadError.
https://github.com/ruby/json/commit/1e2809b0b0 -
09:44 AM Revision 70f554ef (git): [ruby/json] raise_parse_error: avoid UB
- Fix: https://github.com/ruby/json/pull/625
Declaring the buffer in a sub block cause bugs on some compilers.
https://github.com/ruby/json/commit/90967c9eb0 -
09:44 AM Revision 00aa1f9a (git): [ruby/json] Encoding benchmark updates
- Remove `rapidjson` as it's 2x slower most benchmarks, and on
par on a couple of them, so it's not telling us much here.
Configure `Oj` in compat mode so it generate the same JSON
on the `many to_json` benchmark.
```
== Encoding small n... -
09:44 AM Revision 44aef5e8 (git): [ruby/json] Drop compatibility for missing Array#permutation (Ruby <= 1.8.6)
- https://github.com/ruby/json/commit/b02091ed44
Co-authored-by: Jean Boussier <jean.boussier@gmail.com> -
09:44 AM Revision 82f7550f (git): Use frozen string literals
- Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
-
09:44 AM Revision 5f974689 (git): [ruby/json] Drop compatibility for missing Time#tv_nsec (Ruby 1.8)
- https://github.com/ruby/json/commit/b240bde402
Co-authored-by: Jean Boussier <jean.boussier@gmail.com> -
09:44 AM Revision 11348c58 (git): Use Encoding constants, String#b
- Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
-
09:44 AM Revision a052d961 (git): [ruby/json] Compile with std=c99
- https://github.com/ruby/json/commit/d4968d2e48
-
09:44 AM Revision cbd933bc (git): [ruby/json] convert_UTF8_to_ASCII_only_JSON: apply the same optimization pass
- https://github.com/ruby/json/commit/42edaf7f17
-
09:44 AM Revision e52b4768 (git): [ruby/json] Reduce encoding benchmark size
- Profiling revealed that we were spending lots of time growing the buffer.
Buffer operations is definitely something we want to optimize, but for
this specific benchmark what we're interested in is UTF-8 scanning performance.
Each iterat... -
09:44 AM Revision 97713ac9 (git): [ruby/json] convert_UTF8_to_JSON: repurpose the escape tables into size tables
- Since we're looking up the table anyway, we might as well store the
UTF-8 char length in it. For single byte characters that don't need
escaping we store `0`.
This helps on strings with lots of multi-byte characters:
Before:
```
== En... -
09:44 AM Revision 9f300d05 (git): [ruby/json] Optimize convert_UTF8_to_JSON for mostly ASCII strings
- If we assume that even UTF-8 strings are mostly ASCII, we can implement a
fast path for the ASCII parts.
Before:
```
== Encoding mixed utf8 (20012001 bytes)
ruby 3.4.0dev (2024-10-18T15:12:54Z master https://github.com/ruby/json/commit... -
09:44 AM Revision 07fc21cf (git): [ruby/json] Ext::Parser avoid costly check on decimal_class when it is nil
- Closes: https://github.com/ruby/json/pull/512
https://github.com/ruby/json/commit/d882a45d82
Co-Authored-By: lukeg <luke.gru@gmail.com> -
09:44 AM Revision 18cc663a (git): [ruby/json] Add test coverage for JSON.load with a Proc
- Fix: https://github.com/ruby/json/issues/438
https://github.com/ruby/json/commit/9dd89eaac8 -
09:44 AM Revision 9045258c (git): [ruby/json] Limit the size of ParserError exception messages
- Fix: https://github.com/ruby/json/issues/534
Only include up to 32 bytes of unparseable the source.
https://github.com/ruby/json/commit/f44995cfb6 -
09:44 AM Revision 7dfc1f3d (git): [ruby/json] parser.c: refactor raise_parse_error
- https://github.com/ruby/json/commit/09e1df2643
-
09:44 AM Revision 618085f4 (git): [ruby/json] Get rid of the remaining tabs.
- https://github.com/ruby/json/commit/1a9af430d2
-
09:44 AM Revision e0f87320 (git): Reduce allocations in `parse` and `load` argument handling
- Avoid needless hash allocations and such that degrade performance
significantly on micro-benchmarks. -
09:44 AM Revision 8e7e6382 (git): Add more precise documentation for `object_class` and `array_class`
- Fix: https://github.com/ruby/json/issues/419
-
09:44 AM Revision aed01149 (git): [ruby/json] Annotate the encoding benchmark
- Note where we currently stand, what the current bottlencks are
and what could or can't be done.
```
== Encoding small nested array (121 bytes)
ruby 3.3.4 (2024-07-09 revision https://github.com/ruby/json/commit/be1089c8ec) [arm64-darwin... -
09:44 AM Revision 5fa491b4 (git): Normalize lockfile platforms
-
09:44 AM Revision e61bb75a (git): [ruby/strscan] [JRuby] Optimize `scan()`: Remove duplicate `if
- (restLen() < patternsize()) return context.nil;` checks in
`!headonly`.
(https://github.com/ruby/strscan/pull/110)
- before: #109
## Why?
https://github.com/ruby/strscan/blob/d31274f41b7c1e28f23d58cf7bfea03baa818cb7/ext/jruby/org/jrub... -
09:44 AM Revision e73f35dd (git): [ruby/strscan] [CRuby] Optimize `strscan_do_scan()`: Remove
- unnecessary use of `rb_enc_get()`
(https://github.com/ruby/strscan/pull/108)
- before: #106
## Why?
In `rb_strseq_index()`, the result of `rb_enc_check()` is used.
-
https://github.com/ruby/ruby/blob/6c7209cd3788ceec01e504d99057f9d3b... -
09:44 AM Revision d6046bcc (git): [ruby/strscan] Use C90 as far as supporting 2.6 or earlier
- (https://github.com/ruby/strscan/pull/101)
https://github.com/ruby/strscan/commit/d31274f41b - 09:44 AM Revision e7f06402 (git): Bump version
- 09:44 AM Revision 2ec2051f (git): [ruby/fiddle] Don't use mkmf to generate dummy Makefile
- (https://github.com/ruby/fiddle/pull/155)
GitHub: fix https://github.com/ruby/fiddle/pull/153
mkmf requires fileutils. JRuby doesn't like it.
https://github.com/ruby/fiddle/commit/df4bd21fc3 -
09:44 AM Revision a51007fc (git): [ruby/fiddle] Suppress -Wundef warnings
- (https://github.com/ruby/fiddle/pull/157)
The GCC warning puts undefined macro names in double quotes while clang
puts them in single quotes.
https://github.com/ruby/fiddle/commit/7dcb40bccb -
09:44 AM Revision 346085ea (git): [ruby/fiddle] Fix Fiddle::Handle.new for a missing library in the
- FFI backend
(https://github.com/ruby/fiddle/pull/156)
* From https://github.com/ruby/reline/issues/766#issuecomment-2422135968
https://github.com/ruby/fiddle/commit/eea9fd0cc4 -
09:40 AM Bug #20817: Ruby 3.4.0dev emits `warning: possibly useless use of + in void context` while Ruby 3.3.5 does not
- This seems the case that the recovery works wrongly.
When no syntax error, also the "useless use" warning occurs inside `eval`.
Not in `eval`, the warning is emitted regardless the syntax error. -
06:54 AM Bug #20817: Ruby 3.4.0dev emits `warning: possibly useless use of + in void context` while Ruby 3.3.5 does not
- Related to https://bugs.ruby-lang.org/issues/20736
-
03:47 AM Bug #20817: Ruby 3.4.0dev emits `warning: possibly useless use of + in void context` while Ruby 3.3.5 does not
- Using parse.y parser works as Ruby 3.3.5 does. No warnings emitted.
```
$ RUBYOPT=--parser=parse.y ruby -v
ruby 3.4.0dev (2024-10-25T11:52:32Z master 9c8c140d73) [x86_64-linux]
$ RUBYOPT=--parser=parse.y ruby -w foo.rb
lib/file.rb... -
03:47 AM Bug #20817: Ruby 3.4.0dev emits `warning: possibly useless use of + in void context` while Ruby 3.3.5 does not
- Here is the original Rails CI log file.
https://buildkite.com/rails/rails-nightly/builds/1214#0192c57b-b994-43cb-9f48-63b1b41e6f4e/1177-1185
"(eval at lib/file.rb:42):2: warning: possibly useless use of + in void context"
### How ... -
03:45 AM Bug #20817 (Rejected): Ruby 3.4.0dev emits `warning: possibly useless use of + in void context` while Ruby 3.3.5 does not
- Ruby 3.4.0dev emits `warning: possibly useless use of + in void context` while Ruby 3.3.5 does not
This issue is based on Rails Action Pack test case against Ruby 3.4.0dev.
Here is the minimum script to reproduce it.
### Steps to ... -
12:46 AM Revision 9838c443 (git): Make builtin init ifdefs consistent
10/25/2024
-
10:05 PM Bug #20816 (Assigned): Potential regression in Ruby 3.3.x (compared with 3.1 and 3.2) regarding fast syscalls and multi-threading.
- Ok I'm sorry in advance if this is not really a regression (maybe it's the cost to pay for other improvements) but it still showed as a 30% performance drop in my benchmark so I think it may be worth a look.
For the full story about h... -
07:36 PM Revision 990a5382 (git): Remove useless freelist unlock/lock in gc_ref_update
-
02:52 PM Revision 05f894ab (git): [DOC] Tweaks for Array#uniq! (#11950)
-
02:41 PM Feature #20805: Allow Ractor#send from a signal trap Proc
- It works if you make `shutdown_ractor` a constant:
```ruby
p Process.pid
SHUTDOWN_RACTOR = Ractor.new do
Ractor.recv # Wait for a signal
puts "goodbye"
exit!
end
# Signal trap for SIGTERM
Signal.trap("TERM") do
pu... -
02:40 PM Misc #20013: Travis CI status
- We enabled Travis CI again (enabling the allow_failures) by the PR <https://github.com/ruby/ruby/pull/11948> solving <https://bugs.ruby-lang.org/issues/20810>.
-
02:32 PM Feature #20815: Fetch for nested hash
- ```ruby
data => user: {profile: {name:}}
p name #=> "Alice"
data => user: {profile: {age:}} #=> NoMatchingPatternKeyError
```
-
01:46 PM Feature #20815: Fetch for nested hash
- I think this might have been suggested in the past as `deep_fetch`. Could it be `dig!` maybe?
-
11:48 AM Feature #20815 (Closed): Fetch for nested hash
- I propose adding a `fetch_nested` method to Ruby’s Hash class, allowing developers to fetch values deeply nested within a hash, with an error raised if any key in the provided path is missing. The method would be similar to dig, but with...
-
02:26 PM Misc #20814 (Feedback): iseq optimizations on constant condition
- Because of the dynamic feature of Ruby, the optimization on ISeq is very limited.
For instance, elimination of unreachable branch because of a simple always-true/false condition expression, in your example.
> - is there way to disabl... -
11:20 AM Misc #20814 (Feedback): iseq optimizations on constant condition
- ruby 3.4-preview2 seems optimizes out some stuff when building iseq and this may lead to user unexpected behavior when debugging, because some lines just optimized out.
Example:
```ruby
def foo1
if true
nil
else
1
... -
01:32 PM Revision 5c1e4327 (git): Remove rb_ary_new for parser
- rb_ary_new function was not used by the parser and could be removed.
-
01:26 PM Revision d278d352 (git): Introduce inline_primary rule
- Introduce inline_primary rule to merge the same BNF pattern
-
11:52 AM Revision 9c8c140d (git): Avoid dangling pointer on cygwin
-
07:39 AM Revision f1e92363 (git): [ruby/reline] Add completion_append_character test
- (https://github.com/ruby/reline/pull/773)
https://github.com/ruby/reline/commit/5f5a0aa78c -
07:12 AM Revision 10e0ebc7 (git): [ruby/rdoc] Remove details markers in HTML documents
- `summary {list-style: none;}` still does not work in Safari 18.
https://github.com/ruby/rdoc/commit/c6a0a6a0d5 -
05:25 AM Misc #20810 (Closed): Re-enable s390x CI Builds on Master Branch in Travis CI
- Travis CI including the s390x was reenabled on the ruby/ruby master branch by the above PR.
-
05:05 AM Revision 0d7f7460 (git): .travis.yml: Skip document only commit and merge for bot
- Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
- 05:05 AM Revision d089826c (git): .travis.yml: Drop arm32-linux case.
- In the Arm64 Ubuntu jammy (22.04) instance in Travis, we saw the following
error related to the `setarch` failing to run on the 32-bits architecture,
though the linux32 was included in the output of the `setarch --list`.
https://app.tra... -
05:05 AM Revision e6ddbf18 (git): [Misc #20810] Reenable Travis CI.
- There was a report that the Travis CI's long-term infra issue was addressed by
the Travis team on the Ruby Bug ticket 20810.
We especially want to test the s390x (big-endian case) on the pull-request.
Revert ".travis.yml: Drop all the ...
10/24/2024
-
11:12 PM Bug #20804 (Closed): Stop reserving stack ahead-of-time in on Linux
- Applied in changeset commit:git|dcf3add96bd6e117435c568e78be59bb7ecad701.
----------
Delete reserve_stack code
This code was working around a bug in the Linux kernel. It was
previously possible for the kernel to place heap pages in a r... -
09:25 PM Revision 2b985456 (git): [DOC] Tweaks for Array#union
-
09:23 PM Revision 2078ba19 (git): [DOC] Tweaks for Array#transpose
-
09:07 PM Bug #20813 (Open): Segfault in rgengc_check_relation/RVALUE_WB_UNPROTECTED
- We're seeing this segfault consistently crop up in CI on Ruby 3.3.5 (details below). I'm working on getting a core dump but in the mean time, I was told the console output might be a good starting point to debug.
I thought it might be... -
04:36 PM Revision 979e447d (git): [ruby/reline] nonprinting_start and nonprinting_end should be
- removed
(https://github.com/ruby/reline/pull/771)
https://github.com/ruby/reline/commit/e36441652a -
04:17 PM Misc #20810: Re-enable s390x CI Builds on Master Branch in Travis CI
- I sent the following PR to reenable Travis CI including s390x on the rury/ruby master branch.
https://github.com/ruby/ruby/pull/11948
-
03:03 AM Misc #20810: Re-enable s390x CI Builds on Master Branch in Travis CI
- On ruby_3_2, recently all the Travis-CI pipelines are dropped.
https://github.com/ruby/ruby/commit/4873bbd6cc25311fb477bb8fe823d2ea16299717
-
03:08 PM Revision 1634280e (git): Fix shared GC with -DRUBY_DEBUG
- RUBY_DEBUG enables ractor assertions, which sets up some space at the
end of each RVALUE to store the associated ractor ID. We need to make
sure the function that does this is visible to shared GC libraries. -
03:08 PM Revision 84ec0653 (git): Fix shared-gc build task
- include CPPFLAGS, and the correct CFLAGS
-
02:16 PM Misc #20013: Travis CI status
- I received the following email from Travis support on 19th October.
> Could you please try to trigger a build once again when you are ready and let us know if this issue now appears to be resolved?
> ...
I am starting to test Travis ... - 02:12 PM Revision 78378cae (git): append completion_append_character only when continous completion is … (#764)
- * append completion_append_character only when continous completion is not possible
* refactoring
* remove debug puts -
01:45 PM Revision c1ca331c (git): Fix potential issue in wmap_cmp for dead entries
- wmap_cmp will always return true for dead entries since dead entries have
a Qundef value. When the keys have a hash collision, this may cause the
wrong entry to be returned.
This commit changes wmap_cmp to compare by weakmap_entry point... -
01:26 PM Feature #20812 (Closed): Proposal for Safe Include Method in Ruby
-
01:19 PM Feature #20812: Proposal for Safe Include Method in Ruby
- jeremyevans0 (Jeremy Evans) wrote in #note-1:
> rogerconsul (Roger Consul) wrote:
> ...
Well... After you mentioned it, I realized we were using version 2.7.5 🥲
Error didn't reproduce on newer versions. We can close this thread.
Th... -
01:10 PM Feature #20812: Proposal for Safe Include Method in Ruby
- rogerconsul (Roger Consul) wrote:
> The current `include?` method raises an error when passed `nil` as an argument.
Are you sure?
```ruby
# No Error
[1, 2].include?(nil)
[Object.new].include?(nil)
# Error, but due to custom ... -
12:57 PM Feature #20812 (Closed): Proposal for Safe Include Method in Ruby
- # Proposal for Safe Include Method in Ruby
## Description
Add a new method `include_safe?` to Ruby's `Enumerable` module that safely handles nil arguments in inclusion checks.
## Problem Statement
The current `include?` metho... -
11:33 AM Feature #15381: Let double splat call `to_h` implicitly
- Regarding `**@`, I'm not a big fan because `**` on the caller side is very much syntax a bit like a keyword, and it has the meaning the pass the Hash/expression as keyword arguments and not as a position argument.
Of course you could ha... -
10:30 AM Revision 4755d28f (git): [ruby/zlib] Reduce `ensure` nesting
- https://github.com/ruby/zlib/commit/5a02eac37f
-
10:18 AM Revision ae67325d (git): [ruby/zlib] Tell gcc-14 that `Qnil` is not passed to `gzfile_calc_crc`
- Suppress false positive warnings due to a bug in gcc-14 optimizer.
https://github.com/ruby/zlib/commit/eb1cf426c2 -
10:12 AM Feature #20811: `warning: in a**b, b may be too big` is really helpful?
- Agreed it should just compute it.
It should still be interruptible by Ctrl+C though, but it probably already is. -
07:40 AM Feature #20811: `warning: in a**b, b may be too big` is really helpful?
- Agreed. Either Ruby can't do it and should raise some sort of error, or just do it even if it uses gigabytes of memory.
That warning isn't helping anyone, and returning `Infinity` is a huge gotcha and totally unexpected. -
07:25 AM Feature #20811 (Closed): `warning: in a**b, b may be too big` is really helpful?
- I tried to calculate the largest prime number recently discovered. However, it did not work. I was a bit disappointed.
```
$ ruby -e 'p 2**136279841-1'
-e:1: warning: in a**b, b may be too big
Infinity
```
I know this is not a ... - 02:47 AM Revision 4df0038d (git): Bump actions/checkout in /.github/actions/setup/directories
- Bumps [actions/checkout](https://github.com/actions/checkout) from 4.2.1 to 4.2.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](http... - 12:55 AM Revision a24cb8ac (git): [rubygems/rubygems] [SpecFetcher tests] Use >3 character long fake gem name.
- https://github.com/rubygems/rubygems/commit/ce06b8f0d9
- 12:55 AM Revision 5549dd2c (git): [rubygems/rubygems] [SpecFetcher] Change < to <= like it should be.
- https://github.com/rubygems/rubygems/commit/3d5135e69b
-
12:29 AM Revision 0b3d518e (git): [ruby/error_highlight] Rename the `ErrorHighlight::DefaultFormatter` setting to `max_snippet_width` for clarity
- https://github.com/ruby/error_highlight/commit/e13cbd4335
10/23/2024
-
10:36 PM Revision 60c0c324 (git): [ruby/rdoc] Red-based darkfish color scheme
- (https://github.com/ruby/rdoc/pull/1191)
* Cleanup rdoc.css
* Use red as the highlight color
* Use the same red as ruby-lang.org
* Make main section links stand out more
* Remove scrollbar styling
https://github.com/ruby/rdoc/commi... - 08:03 PM Revision 60d84354 (git): [rubygems/rubygems] [SpecFetcher] Avoid unneeded string allocation.
- https://github.com/rubygems/rubygems/commit/1024505d8e
- 08:03 PM Revision ab7c800e (git): [rubygems/rubygems] [SpecFetcher] Bail before calling available_specs()
- https://github.com/rubygems/rubygems/commit/0719921af4
- 08:03 PM Revision 0f5941a5 (git): [rubygems/rubygems] Replace .map{...}.compact with .filter_map {...}
- https://github.com/rubygems/rubygems/commit/18c4ea7d00
- 08:03 PM Revision 65fd8606 (git): [rubygems/rubygems] Add another bail-early condition to suggest_gems_from_name(), with test.
- https://github.com/rubygems/rubygems/commit/7bb7c0ac2d
- 08:03 PM Revision ff749d99 (git): [rubygems/rubygems] Optimize when suggest_gems_from_name finds an exact match.
- https://github.com/rubygems/rubygems/commit/6c67298584
- 08:03 PM Revision fe66eee1 (git): [rubygems/rubygems] Document suggest_gems_from_name()
- https://github.com/rubygems/rubygems/commit/8f9983cc21
- 08:03 PM Revision 35f0b7c8 (git): [rubygems/rubygems] [suggest_gems_from_name] Bail early if the value is guaranteed to be rejected.
- https://github.com/rubygems/rubygems/commit/56262a9384
-
05:18 PM Revision 5460d5b1 (git): Move error handling for GC.stat_heap to gc.c
-
05:18 PM Revision d3aaca97 (git): Make rb_gc_impl_stat_heap return a VALUE instead of size_t
-
05:18 PM Revision c0b50d05 (git): Move error handling for GC.stat to gc.c
-
05:18 PM Revision 9dea0fae (git): Make rb_gc_impl_stat return a VALUE instead of size_t
-
05:18 PM Revision c2af84b2 (git): Move error handling for GC.latest_gc_info to gc.c
-
04:17 PM Misc #20810 (Feedback): Re-enable s390x CI Builds on Master Branch in Travis CI
-
04:16 PM Misc #20810: Re-enable s390x CI Builds on Master Branch in Travis CI
- > However, the s390x builds are successfully running on other branches( ruby_3_3, ruby_3_2) on Travis CI, which were previously experiencing timeouts.
The latest result of ruby_3_3 is a timeout https://app.travis-ci.com/github/ruby/ruby... -
01:08 PM Misc #20810 (Closed): Re-enable s390x CI Builds on Master Branch in Travis CI
- Description: Currently, the Travis CI has been temporarily disabled on the master branch via Pr(https://github.com/ruby/ruby/pull/11509). However, the s390x builds are successfully running on other branches( ruby_3_3, ruby_3_2) on Travis...
-
02:20 PM Revision 8e509380 (git): YJIT: Make PendingBranch::set_target `must_use` [ci skip]
-
02:17 PM Revision cb661d7d (git): YJIT: Check when gen_branch() fails
- We got some core dumps in the wild where a PendingBranch had everything
as None, leading to a panic unwrapping in PendingBranch::into_branch().
This happened while compiling a `branchif`.
It seems that the only way this can happen is wh... -
02:06 PM Bug #20803 (Closed): Windows intermittent spec failure - ObjectSpace.memsize_of(:abc)
-
01:00 PM Bug #20803: Windows intermittent spec failure - ObjectSpace.memsize_of(:abc)
- https://github.com/ruby/ruby/pull/11942
-
12:56 PM Bug #20803: Windows intermittent spec failure - ObjectSpace.memsize_of(:abc)
- I've seen this sort of failures happen in the past, the root cause generally is that there is another test that runs first an create that symbol in a dynamic way: `"abc".to_sym`.
The solution is to use a more unique symbol value to av... -
02:04 PM Revision a6c4a842 (git): Harden the ObjectSpace.memsize_of spec
- [Bug #20803]
`abc` is used a lot across the ruby spec suite, if another test runs before
this spec is loaded and create this symbol dynamically (`"abc".to_sym`)
the spec will fail.
So it's preferable to use a symbol name that is very u... -
02:02 PM Revision 68131387 (git): CI: Test with gcc-14 on macOS
-
02:02 PM Revision baae3657 (git): Extract common code as a function
-
02:02 PM Revision 7d1011d3 (git): Fix false warning by gcc 14 for aarch64
- gcc 14 for aarch64 with `-O3` may emit a false positive warning for a
pointer access of `RB_BUILTIN_TYPE` called from `RB_TYPE_P`. `Qfalse`
shouldn't get there because of `RB_SPECIAL_CONST_P`, but the optimizer
seems to ignore this cond... -
02:02 PM Revision 47f6ba34 (git): Check if -pipe option works
- With `-pipe` option, gcc of Homebrew on macOS results in a mysterious
error.
```
$ command -v gcc-14
/opt/homebrew/bin/gcc-14
$ gcc-14 --version
gcc-14 (Homebrew GCC 14.2.0) 14.2.0
Copyright (C) 2024 Free Software Foundation, Inc.
This... -
01:53 PM Revision 1e59fa2b (git): YJIT: Count compiled_branch_count when branch is finalized [ci skip]
-
11:16 AM Revision 438d36eb (git): [rubygems/rubygems] Print a proper error when there's a previous empty installation path with bad permissions
- https://github.com/rubygems/rubygems/commit/07e7f0bf5e
-
08:53 AM Revision f2380081 (git): [rubygems/rubygems] Improve Bundler errors when trying to install to a protected folder in macOS
- ### Before
```
$ GEM_HOME=/System/Library/Frameworks/Ruby.framework/Versions/2.6/usr/lib/ruby/gems/2.6.0/ bundle
Fetching gem metadata from https://rubygems.org/.
Source rubygems repository https://rubygems.org/ or installed locally is ... -
08:53 AM Revision 055ed5f5 (git): [rubygems/rubygems] Improve `Bundler::GenericSystemCall` error message
- https://github.com/rubygems/rubygems/commit/ccd7e084a8
-
08:53 AM Revision cc29d737 (git): [rubygems/rubygems] Consistently use `:create` action when creating directories
- It gives better errors.
https://github.com/rubygems/rubygems/commit/bedae080ef -
08:53 AM Revision 88b969cd (git): [rubygems/rubygems] Fix out of date spec description
- https://github.com/rubygems/rubygems/commit/71fd896041
-
08:52 AM Revision b843d4ee (git): [rubygems/rubygems] Fix running `bundler` (with a final `r`) in a `bundle exec` context
- https://github.com/rubygems/rubygems/commit/ad95a1dfaa
-
08:52 AM Revision 4790ecc8 (git): [rubygems/rubygems] Do what the comment says, it's simpler
- https://github.com/rubygems/rubygems/commit/0511d2c08d
-
08:52 AM Revision ffd51926 (git): [rubygems/rubygems] Remove the need for some bundler monkeypatches
- https://github.com/rubygems/rubygems/commit/f530f8686d
-
08:52 AM Revision ad853544 (git): Clarify bundler inline’s `install` parameter
-
07:57 AM Feature #15381: Let double splat call `to_h` implicitly
- > I think that would be awesome. If I do `other_method(**model)` and that model is representable as a hash, passing it as keyword arguments is beautiful.
...until you passed it erroneously, and it was never meant to be, and the error ... - 04:07 AM Revision 19747c1c (git): [ruby/ipaddr] Drop support for Ruby 2.3
- https://github.com/ruby/ipaddr/commit/4685fca13d
- 03:31 AM Revision 0de8b533 (git): Bump github/codeql-action from 3.26.13 to 3.27.0
- Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.26.13 to 3.27.0.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.m... -
03:03 AM Bug #20807: String#gsub fails when called from string subclass with a block passed
- Regexp.last_match and other regexp-related pseudo globals do not work across more than one stack frame. Since you override #gsub, they are set only inside MyString#gsub
You can confirm with this:
```ruby
def test(klass)
p klass
... - 02:48 AM Revision 25adcddc (git): Bump actions/cache in /.github/actions/setup/directories
- Bumps [actions/cache](https://github.com/actions/cache) from 4.1.1 to 4.1.2.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.co... -
12:58 AM Revision e9ba6c2e (git): [ruby/error_highlight] Adjust truncation, add opt-out mechanism, rename methods, and prepare error highlighting to render on extremely small screens
- https://github.com/ruby/error_highlight/commit/c565340958
-
12:58 AM Revision e7c9dfb3 (git): [ruby/error_highlight] Handle very long lines with errors in the middle of the line
- https://github.com/ruby/error_highlight/commit/0657bc1afa
-
12:58 AM Revision 5aa8b9e3 (git): [ruby/error_highlight] Handle very long lines
- https://github.com/ruby/error_highlight/commit/383490a4b4