Activity
From 10/30/2024 to 11/05/2024
11/05/2024
-
11:40 PM Bug #20872 (Open): Undefined RUBY_API_VERSION_* macros used in <ruby/backward/cxxanyargs.hpp>
- I just noticed that C++ compilers warn for undefined RUBY_API_VERSION_MAJOR/RUBY_API_VERSION_MINOR macros in `<ruby/backward/cxxanyargs.hpp>` when preprocessing `<ruby.h>`.
```
% cat test.cpp
#include <ruby.h>
% clang++ -Wundef -... -
10:56 PM Bug #20856 (Closed): Incorrect and inconsistent multi-thread eval execution with Prism compiler
-
10:08 PM Revision 4203c70d (git): Allow eval to see top scope
- Fixes [Bug #20856]
Co-Authored-By: Aaron Patterson <tenderlove@ruby-lang.org> -
10:05 PM Feature #20864: Allow `Kernel#warn` to accept `**options` and pass these to `Warning.warn`.
- Thanks for your feedback. The proposal is deliberately thin - as I said, I don't know exactly how we should adjust the internal interface to handle this (actually I don't have a strong opinion about it). The main point is, to allow for a...
-
04:14 PM Feature #20864: Allow `Kernel#warn` to accept `**options` and pass these to `Warning.warn`.
- I think I agree with the general idea but I'm not sure if the proposal is what I think it is. It's a bit thin about what happens with this "error" keyword exactly. So is the idea that this meta-information would be forwarded to another m...
-
03:04 PM Feature #20864: Allow `Kernel#warn` to accept `**options` and pass these to `Warning.warn`.
- > I wonder why error: in particular, and not just warn(text, **any_structured_metadata)?..
I'd be okay with that, in fact I was thinking of making that proposal but I wasn't sure it would be accepted if it was too general.
> ...
Good q... -
01:47 PM Feature #20864: Allow `Kernel#warn` to accept `**options` and pass these to `Warning.warn`.
- Why not include the error directly in the warning message?
It seems that would just work better with the whole `Warning.warn` system and existing handling of warnings. -
12:26 PM Feature #20864: Allow `Kernel#warn` to accept `**options` and pass these to `Warning.warn`.
- I wonder why `error:` in particular, and not just `warn(text, **any_structured_metadata)`?..
-
11:21 AM Feature #20864 (Open): Allow `Kernel#warn` to accept `**options` and pass these to `Warning.warn`.
- ## Background
Structured logging is a practice that organizes log data in a consistent, easily parseable format. Unlike traditional unstructured logs, which often consist of plain text entries, structured logs format information in ke... -
09:49 PM Feature #20855: Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop.
- > Zlib.deflate is a CPU-bound operation right? So it makes sense for Fibers of the same Thread to execute the 10 operations sequentially.
Yes, `Zlib.deflate` with a big enough input can become significantly CPU bound. Yes, executing t... -
04:56 PM Feature #20855: Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop.
- > If rb_nogvl is called in the fiber scheduler, it can introduce latency, as releasing the GVL will prevent the event loop from progressing while nogvl function is executing
I definitely understand the problem here. But… dealing with ... -
04:38 PM Feature #20855: Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop.
- I also don't understand this patch. `Zlib.deflate` is a CPU-bound operation right? So it makes sense for Fibers of the same Thread to execute the 10 operations sequentially. That's what Fibers are about. If you want parallelism you need ...
-
02:20 PM Feature #20855: Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop.
- > I don't introduce blocking_region.
I am not strongly attached to the name, I just used `blocking_region` as it is quite commonly used internally for handling of blocking operations and has existed for 13 years (https://github.com/ruby... -
01:05 PM Feature #20855: Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop.
- In terms of naming, `blocking_region` sounds too internal to me.
I think the C API talks about `blocking_function` (`rb_thread_call_without_gvl`, `rb_blocking_function_t` although that type shouldn't be used) and `unblock_function` (`rb... -
07:51 AM Feature #20855 (Open): Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop.
- I against this proposal because
* I can't understand what happens on this description. I couldn't understand the control flow with a given func for rb_nogvl.
* I'm not sure what is the `work` for `blocking_region()` callback.
* I don't ... -
08:25 PM Bug #20871: Including methods in Enumerable doesn't make them available in Array
- Forgot to mention.
We use the `parallel_tests` gem to speed up our specs in CI.
On my local environment, with synchronous tests, I haven't been able to reproduce the same behaviour either. -
08:09 PM Bug #20871 (Closed): Including methods in Enumerable doesn't make them available in Array
- Today, our CI pipeline started failing after the automatic update from v3.3.5 to v3.3.6.
After researching, it turned out that our core extensions to the `Array` class weren't loaded anymore.
The core-extensions code looks like thi... -
06:11 PM Bug #20865 (Closed): `Stack consistency error` running ActiveSupport test
- Yes, quite certain it's a duplicate of [Bug #20799] that I reported to Aaron a couple weeks back and that he already fixed.
-
04:00 PM Bug #20865: `Stack consistency error` running ActiveSupport test
- Can you try with the latest master? I suspect this is already fixed.
-
02:22 PM Bug #20865: `Stack consistency error` running ActiveSupport test
- And this is shorter reproducer:
~~~
$ ruby -Ilib:test -e 'Dir.glob "./test/**/current_attributes_test.rb", &method(:require)' -- -v
/usr/share/gems/gems/minitest-5.25.1/lib/minitest/mock.rb:33: warning: redefining 'object_id' may cause ... -
02:16 PM Bug #20865: `Stack consistency error` running ActiveSupport test
- Was able to reproduce with debuginfo installed:
~~~
-- C level backtrace information -------------------------------------------
/lib64/libruby.so.3.4(rb_print_backtrace+0x21) [0x7fcf39c5eaf1] /usr/src/debug/ruby-3.4.0~20241016git3d... -
02:08 PM Bug #20865 (Closed): `Stack consistency error` running ActiveSupport test
- Trying to build ActiveSupport package for Fedora Rawhide, I have hit the following error for the second time:
~~~
+ ruby -Ilib:test -e 'Dir.glob "./test/**/*_test.rb", &method(:require)'
/usr/share/gems/gems/minitest-5.25.1/lib/mini... -
06:06 PM Bug #20869: IO buffer handling is inconsistent when seeking
- Just a quick proof of concept that fixes the first case: https://github.com/ruby/ruby/commit/7481a12fef3df934ab0d9db7f8f2d36341a1562e
But I think a lot more codepath would need to consider and update that new offset for the entire cla... -
05:52 PM Bug #20869: IO buffer handling is inconsistent when seeking
- I just looked into this a bit, I'm not quite familiar enough with the code to really propose a fix, but I get what is happening:
ungetbyte just shift the buffer offset, but the FD offset in unchanged.
```c
static void
io_ungetbyte(VALU... -
04:07 PM Bug #20869 (Closed): IO buffer handling is inconsistent when seeking
- When performing any of the seek based operations on IO (IO#seek, IO#pos=, or IO#rewind), the read buffer is inconsistently cleared:
```ruby
require 'tempfile'
Tempfile.open do |f|
f.write('0123456789')
f.rewind
# Callin... -
05:40 PM Feature #20870 (Third Party's Issue): GEM_ROOT -
- I know we can set GEM_HOME. If I have multiple rubies installed I would like GEM_HOME to be GEM_ROOT/#{RUBY_ENGINE}/#{RUBY_VERSION} without requiring an external script or wrappper script to run ruby and change environment variables
-
05:28 PM Bug #20867: bundle and Gem.user_dir with spaces or require_relative dir with spaces
- I don't have RUBYOPT set in my environment -Is bundler setting it?
-
04:30 PM Bug #20867: bundle and Gem.user_dir with spaces or require_relative dir with spaces
- dsisnero (Dominic Sisneros) wrote:
> Trying to run bundle exec rspec or bundle exec hanami. My username on my work computer has space in it "Dominic E Sisneros" (not by choice). When trying to run I get the following output
> ...
It ... -
03:38 PM Bug #20867 (Third Party's Issue): bundle and Gem.user_dir with spaces or require_relative dir with spaces
- Trying to run bundle exec rspec or bundle exec hanami. My username on my work computer has space in it "Dominic E Sisneros" (not by choice). When trying to run I get the following output
```
C:\windows_home\ruby\ruby-3.3.4-1\bin\ru... -
05:00 PM Revision 4120f2ba (git): [ruby/json] Appease ruby/ruby CI
- https://github.com/ruby/json/commit/bc2c970ce4
-
05:00 PM Revision 633f65e4 (git): [ruby/json] Strip whitespaces
- https://github.com/ruby/json/commit/e85107197b
-
05:00 PM Revision 99872986 (git): Update depend files
-
05:00 PM Revision ca8f21ac (git): [ruby/json] Resync
-
05:00 PM Revision e8522f06 (git): [ruby/json] Re-enable passing test
- https://github.com/ruby/json/commit/82d21f01c5
-
05:00 PM Revision f664e7ea (git): [ruby/json] Add tests for the behavior of JSON.generate with base types subclasses
- Ref: https://github.com/ruby/json/pull/674
Ref: https://github.com/ruby/json/pull/668
The behavior on such case it quite unclear, the goal here is to
figure out whatever was the behavior on Cext version of `json 2.7.0`
and get all imple... -
05:00 PM Revision 2f84a02a (git): [ruby/json] Use rb_str_new_frozen
- https://github.com/ruby/json/commit/90c8aaaa6a
-
05:00 PM Revision ed22e683 (git): [ruby/json] JSON::Ext::Parser mark the name cache entries when not on the heap
- This is somewhat dead code as unless you are using `JSON::Parser.new`
direcltly we never allocate `JSON::Ext::Parser` anymore.
But still, we should mark all its reference in case some code out there
uses that.
Followup: #675
https://g... -
05:00 PM Revision 241a0348 (git): Update json gem syncing logic
-
04:07 PM Revision 7fe77569 (git): [rubygems/rubygems] Test with JRuby 9.4.9.0
- https://github.com/rubygems/rubygems/commit/b282668d9d
-
03:55 PM Bug #20868 (Closed): Method#hash changes after compaction
- Fix: https://github.com/ruby/ruby/pull/12004
The hash value of a Method may change after a compaction but must remain constant because otherwise it may not work as the key in a hash table.
For example:
```ruby
def a; end
# N... -
03:52 PM Bug #20753 (Closed): [doc] IO::Buffer examples try to write into readonly buffer returned from IO::Buffer.for
- Thanks for your report, this is now fixed.
-
03:36 PM Bug #20762 (Closed): `make test-basic` with -DRGENGC_FORCE_MAJOR_GC is always failure
- Applied in changeset commit:git|01e509c45bca9ca5800df36690904f4b883d3292.
----------
Remove RGENGC_FORCE_MAJOR_GC flag
[Bug #20762] -
06:33 AM Bug #20762: `make test-basic` with -DRGENGC_FORCE_MAJOR_GC is always failure
- Nobody uses `RGENGC_FORCE_MAJOR_GC` so I'm okay to remove this flag.
-
03:36 PM Revision 01e509c4 (git): Remove RGENGC_FORCE_MAJOR_GC flag
- [Bug #20762]
-
03:15 PM Bug #20866 (Closed): Prism assertion when running simplecov with branch coverage and requiring certain code
- I stumbled upon the following bug report against simplecov: https://github.com/simplecov-ruby/simplecov/issues/1113
I reduced the error down to the following:
```rb
# Gemfile
source "https://rubygems.org"
gem "simplecov"
```
... -
02:04 PM Revision 74fcf437 (git): Use wide character startup
- Mingw crt-git 12.0.0.r369.g0d4221712-1 now prohibits "command line
contains characters that are not supported in the active code page".
https://sourceforge.net/p/mingw-w64/mingw-w64/ci/0d42217123d3aec0341b79f6d959c76e09648a1e/
Already R... -
01:53 PM Revision ed06f018 (git): [ruby/irb] windows does not support Process.kill("TERM", pid)
- (https://github.com/ruby/irb/pull/1026)
https://github.com/ruby/irb/commit/7bbb885163 -
11:19 AM Revision e440268d (git): Get rid of JSON benchmarks
-
11:19 AM Revision 1cb9f9af (git): tool/sync_default_gems.rb: update json rules
- `lib/json/ext/generator/state.rb` should actually be
`ext/json/lib/json/ext/generator/state.rb` -
10:54 AM Misc #20781: DevMeeting-2024-11-07
- - [Bug #20863] `zlib.c` calls `rb_str_set_len` and `rb_str_modify_expand`(and others) without holding the GVL (ioquatix)
- Is the PR (https://github.com/ruby/zlib/pull/88) to zlib acceptable?
- [Feature #20877] Introduce (public) debug... -
06:05 AM Misc #20781: DevMeeting-2024-11-07
- AlexandreMagro (Alexandre Magro) wrote in #note-8:
> * Improves readability by transforming `p(q(r))` into a more natural `r |> q |> p`, matching how we think.
Do you mean `r |> q(_) |> p(_)`? -
10:48 AM Revision 6c5a808b (git): Use rb_fiber_scheduler_get() instead of rb_fiber_scheduler_current()
- rb_fiber_scheduler_current() may return nil depending on whether the
scheduler is being prevented for some reason, e.g., Fiber.blocking{}.
Co-Authored-By: Samuel Williams <samuel.williams@oriontransfer.co.nz> -
10:47 AM Bug #20863 (Closed): `zlib.c` calls `rb_str_set_len` and `rb_str_modify_expand`(and others) without holding the GVL.
- ## Background
I was working on https://bugs.ruby-lang.org/issues/20876 and was investigating some problems with `zlib.c` and GVL, and noticed that `zstream_run_func` is executed without the GVL, but can invoke various `rb_` string fun... -
09:04 AM Revision cb1c79e8 (git): Name dependency checks job
- And run on the latest ubuntu.
-
08:55 AM Revision 7e9c5903 (git): Update dependency
-
08:48 AM Revision 2d2d3630 (git): Let vm_dump show whether the fiber scheduler is enabled or not
- ... just for the case.
-
07:53 AM Feature #20861: Add an environment variable for tuning the default thread quantum
- https://github.com/ivoanjo/gvl-tracing/blob/master/examples/rubykaigi2023/rk-example6.rb (from [here](https://ivoanjo.me/rubykaigi2023/#:~:text=Observing%20the%20GVL%20%236)) is probably a good example without `sleep` -- the thread doing...
-
07:40 AM Feature #20861: Add an environment variable for tuning the default thread quantum
- This example doesn't make sense for the real app because nobody repeat sleeping for the constant.
Do you have any example similar to the example?
But the current 100ms is not based on strong opinion (it equals to Linux time quantum), so... -
07:18 AM Feature #20861: Add an environment variable for tuning the default thread quantum
- I think this is really nice first step and worth having to enable experimentation as well.
Having said that, I'm not sure there's ever going to be a good value single (even per-thread). It may be worth considering on the medium/long-t... -
07:16 AM Bug #20767 (Closed): VM_ASSERT fails on clear_method_entry_by_id_in_class() under a specific situation
- Maybe fixed by commit:783dde2159a3689ad2d3ef6b7d0005a7cf80adba
-
07:14 AM Bug #20813: Segfault in rgengc_check_relation/RVALUE_WB_UNPROTECTED
- https://github.com/ruby/ruby/blob/v3_3_5/gc.c#L7529C1-L7530C1
It seems marking `T_STRUCT` fields.
Marking miss for that? -
06:37 AM Feature #20738 (Rejected): Removing a specific entry from a hash literal
-
06:35 AM Feature #20775 (Closed): Gemify win32-registry, win32-sspi and win32-resolv
-
06:29 AM Bug #20787 (Closed): IO#readline does not check its arguments like IO#gets and will read more data than limit
- Fixed by commit:773d140f65c1c8b726e107915bc003c186f38677
-
06:26 AM Bug #20784 (Closed): `?\` followed by EOF is parsed wrong
-
05:01 AM Revision 348a5341 (git): [ruby/stringio] Copy from the relocated string
- When ungetting the string same as the same buffer string, extending
the buffer can move the pointer in the argument. Reported by manun
Manu (manun) at https://hackerone.com/reports/2805165.
https://github.com/ruby/stringio/commit/95c11... -
04:19 AM Revision 511954dd (git): [ruby/date] Extract Julian calendar epoch literals
- https://github.com/ruby/date/commit/e677e99a86
-
04:19 AM Revision c51feedb (git): [ruby/date] Update `argc` by `rb_scan_args` not to contain keywords
- https://github.com/ruby/date/commit/f277463439
-
04:19 AM Revision e4f5fd8e (git): [ruby/date] Refine assertions
- https://github.com/ruby/date/commit/1970b740d0
- 03:38 AM Revision ee4599db (git): [ruby/date] Fix incorrect argc2 decrement in datetime_s_iso8601 function
- Replace the decrement (argc2--) with an increment (argc2++) for
the correct number of arguments when opt is provided.
https://github.com/ruby/date/commit/b6974b00d8 -
03:15 AM Revision e0611ebd (git): Try macos-15 build
- https://github.com/actions/runner-images/issues/10686
-
02:02 AM Revision ff560644 (git): Fixup b1fc1af4440. Removed benchmark files from ruby/json
-
12:49 AM Revision 75015d4c (git): v3.3.6
-
12:00 AM Revision f72eb702 (git): Skip tests that suddenly started failing for MinGW
- These test failures first appeared on irrelevant changes. It probably
came from changes in GitHub Actions instead of CRuby's.
Until we figure out how to fix these tests, let's skip them to make the
CI usable.
11/04/2024
-
11:58 PM Revision b1fc1af4 (git): Stop syncing json benchmarks.
-
10:52 PM Revision 7237ded9 (git): macos-12 is deprecated and fails on Mondays
- https://github.com/actions/runner-images/issues/10721
-
10:51 PM Revision d6d2c247 (git): macos-12 is deprecated and fails on Mondays
- https://github.com/actions/runner-images/issues/10721
-
10:43 PM Bug #20853: Hash key retrieval after Process.warmup
- ruby_3_3 commit:6db39f4677ff50aacfe54bd9dda052c09e1c6ab0 merged revision(s) commit:29c480dd6fca993590c82078ba797e2c4e876ac7.
-
10:43 PM Revision 6db39f46 (git): merge revision(s) 29c480dd6fca993590c82078ba797e2c4e876ac7: [Backport #20853]
- [Bug #20853] Fix Proc#hash to not change after compaction
The hash value of a Proc must remain constant after a compaction, otherwise
it may not work as the key in a hash table. -
10:43 PM Bug #20716: Different instance_method behavior in Ruby 2.7 and Ruby 3.x
- ruby_3_3 commit:edeb0319f7a95dfe3f9b895bcf32371dd8514726 merged revision(s) commit:6118e8a47394409b53164b60e79fadf348b97db3.
-
10:42 PM Revision edeb0319 (git): merge revision(s) 6118e8a47394409b53164b60e79fadf348b97db3: [Backport #20716]
- Fix method caching bug when including/prepend module A that prepends module B
Fix by always adding the generated iclass to the subclasses list,
otherwise the method cache for the iclass is not cleared when
the me... -
10:42 PM Bug #20797: UTC offset seconds part is not checked
- I feel the same about it. This is gonna be a WONTFIX for `ruby_3_3` too.
-
10:39 PM Bug #20755: IO::Buffer#transfer transfers mutable reference to String's memory but not lock ownership
- ruby_3_3 commit:5ce0ba0d415deb99527c409cc5f1df16ce02ef3e merged revision(s) commit:35e124832e29b65c84d4e0e4e434616859f9bdf5.
-
10:39 PM Revision 5ce0ba0d (git): merge revision(s) 35e124832e29b65c84d4e0e4e434616859f9bdf5: [Backport #20755]
- [Bug #20755] Frozen string should not be writable via IO::Buffer
-
10:38 PM Bug #20752: IO::Buffer#slice creates mutable IO::Buffer instance that points to readonly memory (e.g. fronzen String)
- ruby_3_3 commit:12ea98e8c8af0ed6778aad26e7ec5f95e2c239e5 merged revision(s) commit:637067440f74043c6d79fc649ab8acf1afea25a5.
-
10:38 PM Revision 12ea98e8 (git): merge revision(s) 637067440f74043c6d79fc649ab8acf1afea25a5: [Backport #20752]
- [Bug #20752] Slice of readonly `IO::Buffer` also should be readonly
-
10:37 PM Bug #20719: `Float` converts ASCII-incompatible string
- ruby_3_3 commit:34a0f41d0aaff190f1647a6fa0e905690d0eff98 merged revision(s) commit:c1862cbb89a6bf42dcd07d92fe4f4bfeebca5775.
-
10:37 PM Revision 34a0f41d (git): merge revision(s) c1862cbb89a6bf42dcd07d92fe4f4bfeebca5775: [Backport #20719]
- [Bug #20719] `Float` argument must be ASCII compatible
-
10:36 PM Bug #20704: Windows: `-C` option does not work for multibyte path name
- ruby_3_3 commit:2b713dcb89c620daa55d672d2933ffde333ca5de merged revision(s) commit:d33e3d47b84a73b38644f2a3d41881ce9be6ef18.
-
10:36 PM Revision 2b713dcb (git): merge revision(s) d33e3d47b84a73b38644f2a3d41881ce9be6ef18: [Backport #20704]
- [Bug #20704] Win32: Fix chdir to non-ASCII path
On Windows, `chdir` in compilers' runtime libraries uses the active
code page, but command line arguments in ruby are always UTF-8, since
commit:33ea2646b98adb49ae2... -
10:32 PM Bug #20501: ruby SEGV
- Backporting this patch (https://github.com/ruby/ruby/pull/11554) to `ruby_3_3` causes a lot of conflicts. Please file a PR to `ruby_3_3` branch on GitHub for this ticket to be backported.
-
10:29 PM Bug #20777: 3.3: `RUBY_DESCRIPTION` is corrupt when `--yjit` and `--parser=prism`
- ruby_3_3 commit:e7c939aea1034a463226635e11117ade42cba4e4 merged revision(s) commit:76ea5cde2a0f4834a5228104249b6b3346ddfc94.
-
10:29 PM Revision e7c939ae (git): merge revision(s) 76ea5cde2a0f4834a5228104249b6b3346ddfc94: [Backport #20777]
- Refactor RUBY_DESCRIPTION assertions in test_rubyoptions
-
10:26 PM Bug #13831: error when try to install
- ruby_3_3 commit:7446f7cdd103b129b8b750f577efd29e069176c0 merged revision(s) commit:0d16c36d0ab2afa2ec79b72b229e69c141ebdaba.
-
10:26 PM Revision 7446f7cd (git): merge revision(s) 0d16c36d0ab2afa2ec79b72b229e69c141ebdaba: [Backport #13831]
- [win32/registry] Fallback to UTF-8 for unknown codepages
There are some codepages like cp708 for which no ruby encoding exists:
$ ruby -e "Encoding.find('cp708')"
Traceback (most recent call last):
... -
10:23 PM Bug #20723: `IO#close` is broken on Ruby 3.3+ when using the Fiber scheduler.
- ruby_3_3 commit:5b6009870dff883a8e71a05e60f175cea1d00d55.
-
10:22 PM Bug #20721: Gem executables have a .lock file in Ruby 3.3.5
- rubygems v3.5.19 has been merged to `ruby_3_3` https://github.com/ruby/ruby/pull/11682, which addresses this issue.
-
10:18 PM Bug #20718: Objects created with Data_Make_Struct and the default free function are not freed
- ruby_3_3 commit:55ddfd58dd6e67e88cf9a3e55bf99550affe8b3f.
-
08:03 PM Bug #20856: Incorrect and inconsistent multi-thread eval execution with Prism compiler
- Thanks for the report, it should be fixed by https://github.com/ruby/ruby/pull/11993.
-
05:34 PM Revision 7ae4b858 (git): [ruby/rdoc] Display class ancestors in the sidebar #1183
- https://github.com/ruby/rdoc/commit/50dda13426
-
04:14 PM Revision 478e0fc7 (git): YJIT: Replace Array#each only when YJIT is enabled (#11955)
- * YJIT: Replace Array#each only when YJIT is enabled
* Add comments about BUILTIN_ATTR_C_TRACE
* Make Ruby Array#each available with --yjit as well
* Fix all paths that expect a C location
* Use method_basic_definition_p to detect pa... -
02:32 PM Revision 51ac9301 (git): Fix a typo in a local variable name
-
02:32 PM Revision 4dc120cb (git): Fix Dir.mktmpdir argument
- The temporary directory is the second argument.
-
01:37 PM Revision 1e037108 (git): Precompute hash only once when interning string literals
- When a fake string is interned, use the capa field to store the string
hash. This lets us compute it once for hash lookup and embedding the
hash in the interned string.
Co-authored-by: Jean Boussier <byroot@ruby-lang.org> -
12:12 PM Revision 09874e90 (git): Mingw: Exclude failing tests due to the crt change
- Mingw crt-git 12.0.0.r369.g0d4221712-1 now prohibits "command line
contains characters that are not supported in the active code page".
https://sourceforge.net/p/mingw-w64/mingw-w64/ci/0d42217123d3aec0341b79f6d959c76e09648a1e/
Provision... -
12:12 PM Bug #20506: YJIT build error on aarch64 with Rust 1.78.0
- Thanks for the reply, I appreciate that! It's not urgent or anything, I was just a bit uncertain if musl may be some other issue entirely. I'll follow https://github.com/llvm/llvm-project/issues/114720 and be on the lookout for something...
-
12:06 PM Feature #20859: Make Base64 to core class
- I think these are two separate issues, so maybe better implement/discuss in two separate steps?
* One would be something like "Making `base64` a bundled gem caused too much trouble, let's revert that". This seems straightforward to fi... -
10:18 AM Revision e7518a78 (git): Validate user input encoding
- If the user has the encoding of her system messed up, she may end up
sending us incorrectly encoding input, causing "invalid byte sequence in
UTF-8" errors at random places.
These errors can be forced on a system without encoding issues... -
10:04 AM Revision 9ce1b5e1 (git): [rubygems/rubygems] Fix commands with 2 MFA requests when webauthn is enabled
- If a command requires two MFA authenticated requests, and webauthn is
enabled, then first one will succeed but the second one will fail
because it tries to reuse the OTP code from the first request and that
does not work.
This happens w... -
10:04 AM Revision 1b190b34 (git): [rubygems/rubygems] TermError should inherit from SystemExit
- The `gem owner` command rescues standard errors, but does not rescue
SystemExit errors. If TermError is a standard error, not a system exit,
tests don't behave like realworld for this command.
https://github.com/rubygems/rubygems/commit... -
10:04 AM Revision 7fba517d (git): [rubygems/rubygems] OTP is already added by `rubygems_api_request`
- https://github.com/rubygems/rubygems/commit/15930fe126
-
10:04 AM Revision 50dbe19b (git): [rubygems/rubygems] Fix incompatible encodings error
- https://github.com/rubygems/rubygems/commit/d478ec403f
-
08:11 AM Feature #20861: Add an environment variable for tuning the default thread quantum
- > Thread priority is good because it is more abstract, which gives flexibility on implementation.
Then we should document what it does, even if stated that the behavior may change between version. Because in its current state it's pre... -
04:24 AM Feature #20861: Add an environment variable for tuning the default thread quantum
- I don't think we should expose the quantum per-thread inside Ruby. I worry it will prevent future improvements. The fact that Thread scheduling and priorities are currently done by giving a shorter/longer quantum is an implementation det...
11/03/2024
-
11:28 PM Bug #20506: YJIT build error on aarch64 with Rust 1.78.0
- I tested 1.82.0 from rustup and [rust-lang/rust#125619](https://github.com/rust-lang/rust/issues/125619)
does reproduce when targeting aarch64-unknown-linux-musl. I was under the
impression that we've worked around the issue for all targ... -
03:49 PM Bug #20506: YJIT build error on aarch64 with Rust 1.78.0
- Yes, guilty as charged. I apologize, I only saw the failure for one variant and assumed the same for others.
Can you say if what I wrote above is correct for musl? I guess I'll see when the next version releases regardless.
Edit: Hm, I... -
03:05 PM Bug #20506: YJIT build error on aarch64 with Rust 1.78.0
- @Earlopain Are you using musl through e.g. Alpine Linux? The workaround rust PR is <https://github.com/rust-lang/rust/pull/125999>, it shipped in 1.81.0 and we've seen it [work](https://github.com/Shopify/ruby/issues/559#issuecomment-241...
-
10:36 AM Bug #20506: YJIT build error on aarch64 with Rust 1.78.0
- Small update, I believe https://github.com/rust-lang/rust/pull/131221 will fix this, which is slated for Rust 1.83. Not so sure about that since the actual fix seems to have been applied in llvm https://github.com/llvm/llvm-project/pull/...
-
09:21 PM Misc #20781: DevMeeting-2024-11-07
- * [Feature #20770] (Re)Introduce pipe operator (AlexandreMagro)
* Initially proposed as syntactic sugar for `.then`, and later refined after discussion to work as a statement separator (like `;`) with a variable carrying the LHS expres... -
06:43 PM Revision 21af248f (git): [ruby/prism] Error for def ivar
- https://github.com/ruby/prism/commit/232a02acef
11/02/2024
-
09:25 PM Revision 3e2ee990 (git): Skip TestProc#test_hash_does_not_change_after_compaction if compaction is not supported
-
08:34 PM Feature #20861: Add an environment variable for tuning the default thread quantum
- byroot (Jean Boussier) wrote in #note-6:
> > Are you thinking something different (like specify quantum in time rather than priority?)
> ...
Makes sense, and I agree.
> But perhaps a `Thread.default_quantum = XX` would be needed too... -
08:02 PM Feature #20861: Add an environment variable for tuning the default thread quantum
- > Are you thinking something different (like specify quantum in time rather than priority?)
Yes, quite literally: `Thread.current.quantum = 20` or something like that.
Which IMO is much easier to reason about than priorities. And g... -
07:58 PM Feature #20861: Add an environment variable for tuning the default thread quantum
- ioquatix (Samuel Williams) wrote in #note-2:
> This can be useful, so I agree with adding it.
> ...
Thank you for the feedback, but I think these points should be addressed as a different feature. I do think the default quantum should... -
06:43 AM Feature #20861: Add an environment variable for tuning the default thread quantum
- This was discussed a few times at Kaigi, and IMO a quantum value on a per thread basis would make more sense.
-
03:03 AM Feature #20861: Add an environment variable for tuning the default thread quantum
- Your patch misses pthread_win32.c, and if we add a new environment variable, man/ruby.1 must be updated as well.
-
01:33 AM Feature #20861: Add an environment variable for tuning the default thread quantum
- This can be useful, so I agree with adding it.
For the sake of providing feedback, some thoughts:
1. Does the default value of 100ms make sense? Should we update the default too?
2. Should we mark this as experimental in the first... -
02:34 PM Bug #20862 (Closed): gem install --document=rdoc,ri fails with some gem
- With using commit:24f7829abfd29fc226e38829caaecaa76885afbf , trying `$ gem install --document=rdoc,ri foo.gem` fails with some (not one) gem like:
```
$ gem install -V --document=rdoc,ri tk
...
...
ERROR: While executing gem ... ... -
01:27 PM Revision e2909570 (git): Include windows.h for `LONG` and `Interlocked` functions
-
03:04 AM Revision 24f7829a (git): Fix the conditional macro name [ci skip]
- `RUBY_VM_CRITICAL_SECTION` is not used anywhere.
- 01:44 AM Revision 4031beb0 (git): Add documentation for `RUBY_ASSERT_CRITICAL_SECTION`. (#11982)
-
12:18 AM Bug #20722 (Closed): curious search result order on docs.ruby-lang.org
11/01/2024
-
11:30 PM Feature #20782: Introduction of Happy Eyeballs Version 2 (RFC8305) in TCPSocket.new
- hsbt (Hiroshi SHIBATA) wrote in #note-2:
> @matz I propose @shioimm as a Ruby committer. She is best person to maintain HEv2 and Socket related feature. It's good time to commit https://github.com/ruby/ruby/pull/11653 by herself.
> ...
+1 -
01:57 AM Feature #20782: Introduction of Happy Eyeballs Version 2 (RFC8305) in TCPSocket.new
- @matz I propose @shioimm as a Ruby committer. She is best person to maintain HEv2 and Socket related feature. It's good time to commit https://github.com/ruby/ruby/pull/11653 by herself.
I'll support and mentor her. -
10:44 PM Feature #20861: Add an environment variable for tuning the default thread quantum
- I think I did my math a little wrong. It should be 50ms rather than 500ms, but the measurements are correct. Specifying the 10ms quantum reduces waste by ~3.5 seconds. 😅
-
10:34 PM Feature #20861 (Closed): Add an environment variable for tuning the default thread quantum
- The default thread quantum is currently [hard coded at 100ms](https://github.com/ruby/ruby/blob/c7708d22c33040a74ea7ac683bf7407d3759edfe/thread_pthread.c#L323). This can impact multithreaded systems that are trying to process Ruby level...
-
06:16 PM Misc #20781: DevMeeting-2024-11-07
- * [Feature #20818] Allow passing a block to Hash#store to update current value (furunkel)
* currently, to update a value in a hash we have to call `#[]` followed by `#[]=`
* this calls `#hash` twice (on key), and requires two loo... -
04:18 PM Misc #20781: DevMeeting-2024-11-07
- - [Feature #20860] Merge Optional Experimental Feature MMTk into Ruby
- We are proposing to merge MMTk into the `ruby/mmtk` repository, which will be mirrored into `ruby/ruby`.
- This implementation uses the GC API (introduced ... -
09:01 AM Misc #20781: DevMeeting-2024-11-07
- * [Feature #20859] Make Base64 to core class
* It's useful and helpful for gemification.
-
01:59 AM Misc #20781: DevMeeting-2024-11-07
- * [Feature #20782] Introduction of Happy Eyeballs Version 2 (RFC8305) in TCPSocket.new
* Propose shioimm as a Ruby committer
* How about it?
-
05:42 PM Bug #20858: multiple parallel assignments are inconsistent
- mame (Yusuke Endoh) wrote in #note-1:
> Currently, `a, b = c, d = 3, 4` is interpreted as `a, b = c, (d = 3, 4)`. Whether it is good or not.
Ah - that's a good point. So it can be fixed with: `a, b = (c, d = 3, 4)`
I didn't see t... -
12:42 AM Bug #20858: multiple parallel assignments are inconsistent
- Currently, `a, b = c, d = 3, 4` is interpreted as `a, b = c, (d = 3, 4)`. Whether it is good or not.
-
12:20 AM Bug #20858 (Rejected): multiple parallel assignments are inconsistent
- I may have terminology wrong, so apologies. For this bug I'm going to use "multiple assignment" to refer to using multiple assignment operators in a line, such as:
``` ruby
a = b = c = 1
```
And then parallel assignment to refer... -
05:39 PM Feature #20859: Make Base64 to core class
- I also think the general sentiment about this extraction is that the dependency is too small to justify adding it. For most users it's pretty much a one liner.
That said, is there a problem in just keeping it as a "default gem"? Now t... -
12:26 PM Feature #20859: Make Base64 to core class
- Why make it built-in all at once, rather than moving it back to the standard library?
-
09:39 AM Feature #20859: Make Base64 to core class
- Just FTR, some usage of base64 was already removed, but I think that other projects already added the base64 dependency (or are about to add it [1]).
[1]: https://github.com/cucumber/cucumber-ruby/pull/1762 -
08:53 AM Feature #20859 (Rejected): Make Base64 to core class
- From https://bugs.ruby-lang.org/issues/20857#note-12
I also heard that `base64` gem has some issue for eco-system like https://github.com/ddnexus/pagy/pull/618. My fist intention is simply added `base64` gem into gem dependency by `Ge... -
05:25 PM Bug #20722: curious search result order on docs.ruby-lang.org
- I have reported it here:
https://github.com/ruby/rdoc/issues/1194
This one can probably be closed. -
04:28 PM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- mame (Yusuke Endoh) wrote in #note-12:
> # 8: cucumber?
> ...
Once I have fixed rubygem-cucumber, rpsec-its moved into `backtick` category:
https://github.com/rspec/rspec-its/blob/6dec295173dfd245fd844f76e3908fcc3f84df10/features/it... -
09:42 AM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- mame (Yusuke Endoh) wrote in #note-12:
> # 8: cucumber?
> ...
This seems to be fixed upstream:
https://github.com/cucumber/cucumber-ruby/pull/1757
But something is IMHO wrong if the change needs to explain the formatting.
> ru... -
08:56 AM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- mame (Yusuke Endoh) wrote in #note-12:
> I took a quick look at all the failures of packages starting with "ruby"
Just FTR, all packages in the repository has dependency on Ruby, even those without `ruby` prefix. Some of them might u... -
07:23 AM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- FWIW, I was fine with this change, but it broke some of my tests.
The solution was to not use string equality, but instead do this:
```ruby
# Before
expect(thing).to be == '{"x"=>10}'
# After
expect(thing).to be == {"x"=>10}.to_s
```
... -
03:28 AM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- (Let me change the subject of this thread. It is not only the matter of Hash#inspect anymore.)
-
03:13 AM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- I took a quick look at all the failures of packages starting with "ruby" in https://copr.fedorainfracloud.org/coprs/vondruch/mpb/packages/, and categorized them. Please forgive me if this is not accurate.
* 38 of them seemed to be dep... -
04:10 PM Feature #20860 (Closed): Merge Optional Experimental Feature MMTk into Ruby
- GitHub PR: https://github.com/ruby/ruby/pull/11979
## Summary
In this ticket, we're proposing upstreaming the current MMTk implementation into the `ruby/mmtk` repository. This repository will be mirrored into `ruby/ruby` and adds t... - 03:42 PM Revision 6b3a0b4f (git): Bump REXML to 3.3.9 for Ruby 3.3 (#11972)
-
02:50 PM Bug #20853 (Closed): Hash key retrieval after Process.warmup
- Applied in changeset commit:git|29c480dd6fca993590c82078ba797e2c4e876ac7.
----------
[Bug #20853] Fix Proc#hash to not change after compaction
The hash value of a Proc must remain constant after a compaction, otherwise
it may not work ... -
02:49 PM Revision c7708d22 (git): Improve coverage of TestProc#test_hash_uniqueness
-
02:49 PM Revision 81328676 (git): Add TestProc#test_hash_equal
-
02:49 PM Revision 53b3fac6 (git): Rename test_hash to test_hash_uniqueness
-
02:49 PM Revision 29c480dd (git): [Bug #20853] Fix Proc#hash to not change after compaction
- The hash value of a Proc must remain constant after a compaction, otherwise
it may not work as the key in a hash table. -
07:02 AM Revision 40cd292f (git): Balance omnibus compilations
-
06:02 AM Revision 260d4c7a (git): Balance omnibus compilations
-
06:01 AM Revision c11c99a5 (git): Extract the condition to skip
- 05:05 AM Revision 4cd7e801 (git): Update default gems list at 314b556cc57d93a6e0e2b120fb7e7a [ci skip]
-
05:04 AM Revision 314b556c (git): [ruby/fileutils] Bump up v1.7.3
- https://github.com/ruby/fileutils/commit/c138e67613
- 04:43 AM Revision fcbaaf3d (git): Update default gems list at bb5f28c8f7e692571a30359e08b539 [ci skip]
-
04:42 AM Revision bb5f28c8 (git): [ruby/date] Bump up v3.4.0
- https://github.com/ruby/date/commit/94f8e51e65
- 04:33 AM Revision 8ebca9b4 (git): Update default gems list at 8a768890f7f480b58814f64bbc3ff4 [ci skip]
-
04:32 AM Revision 8a768890 (git): [ruby/win32ole] Bump up v1.9.0
- https://github.com/ruby/win32ole/commit/31bd08aa9c
- 04:10 AM Revision 5e6f0f73 (git): Update default gems list at c866fb7caf3d7921f0ecd1b8a06116 [ci skip]
-
04:09 AM Revision c866fb7c (git): [ruby/etc] Bump up v1.4.4
- https://github.com/ruby/etc/commit/0d2f76ffb4
-
04:04 AM Revision 90eb879d (git): Skip failing test with RBS and JSON
-
04:04 AM Revision ee4fa4cc (git): [ruby/json] json_string_unescape: Use the returned RString as buffer
- Rather than to copy into a buffer to unescape and then copy that
buffer into the final string, we can directly copy into the final
string.
The downside is that if the string contains a lot of escaping, we
end up returning a string that'... -
04:04 AM Revision b85a7a44 (git): [ruby/json] Trigger write barrier when setting Generator::State configs
- Followup: https://github.com/ruby/json/commit/6382c231b0b8
https://github.com/ruby/json/commit/0c797b4a11 -
04:04 AM Revision ef5565f5 (git): JSON.generate: call to_json on String subclasses
- Fix: https://github.com/ruby/json/issues/667
This is yet another behavior on which the various implementations
differed, but the C implementation used to call `to_json` on String
subclasses used as keys.
This was optimized out in e1250... -
04:04 AM Revision b8b33efd (git): [ruby/json] Remove String#-@ check in extconf.rb
- Now that older rubies have been droped, we no longer need to check
for all that.
https://github.com/ruby/json/commit/35cf2b84e0 -
04:04 AM Revision 165cc6cf (git): [ruby/json] json_string_unescape: assume the string doesn't need escaping
- If that assumption holds true, then we don't need to copy the
string into a buffer to unescape it. For small string is just saves
copying, but for large ones it also saves a malloc/free combo.
Before:
```
== Parsing twitter.json (56791... -
04:04 AM Revision 081689b9 (git): [ruby/json] parser.rl: extract `build_string`
- https://github.com/ruby/json/commit/7e557ee291
-
04:04 AM Revision 6412e6f6 (git): [ruby/json] Use String#encode instead of rb_str_conv_enc()
- * rb_str_conv_enc() returns the source string unmodified
if the conversion did not work. But we should be consistent with
the generator here and only accept BINARY or convertible to UTF-8.
https://github.com/ruby/json/commit/1344ad6f66 -
04:04 AM Revision 3782600f (git): [ruby/json] Emit warnings when dumping binary strings
- Because of it's Ruby 1.8 heritage, the C extension doesn't care
much about strings encoding. We should get stricter over time.
https://github.com/ruby/json/commit/42402fc13f -
04:04 AM Revision f2b8829d (git): Deprecate unsafe default options of `JSON.load`
- [Feature #19528]
Ref: https://bugs.ruby-lang.org/issues/19528
`load` is understood as the default method for serializer kind of libraries, and
the default options of `JSON.load` has caused many security vulnerabilities over the
years.
... -
04:04 AM Revision cc2e67a1 (git): Elide Generator::State allocation until a `to_json` method has to be called
- Fix: https://github.com/ruby/json/issues/655
For very small documents, the biggest performance gap with alternatives is
that the API impose that we allocate the `State` object. In a real world app
this doesn't make much of a difference,... -
04:04 AM Revision 88b41146 (git): [ruby/json] Skip test failing on JRuby
- https://github.com/ruby/json/commit/0f0b16b3f5
-
04:04 AM Revision eb19156a (git): [ruby/json] Add test for parsing broken strings
- https://github.com/ruby/json/commit/850bd077c4
-
04:04 AM Revision ebfa178b (git): [ruby/json] Setup ruby_memcheck
- Hoping it might find the leak reported in https://github.com/ruby/json/issues/460
https://github.com/ruby/json/commit/08635312e5 -
04:04 AM Revision 7daa1083 (git): [ruby/json] Move State#configure back into C
- While less nice, this open the door to eluding the State object
allocation when possible.
https://github.com/ruby/json/commit/5c0d428d4c -
04:04 AM Revision 5dc3b15b (git): [ruby/json] generator.c: store pretty strings in VALUE
- Given we expect these to almost always be null, we might as
well keep them in RString.
And even when provided, assuming we're passed frozen strings
we'll save on copying them.
This also reduce the size of the struct from 112B to 72B.
... -
04:04 AM Revision b042d9d9 (git): [ruby/json] Use JSON.generate instead of JSON.dump for benchmarking
- https://github.com/ruby/json/commit/97b61edce1
-
04:04 AM Revision 4a5e4495 (git): [ruby/json] Make fbuffer_inc_capa easier to inline
- With the extra logic added for stack allocation, and especially the
memcpy, it became harder for compilers to inline.
This doesn't fully reclaim the speed lost with the stack allocation,
but it's getting closer.
Before:
```
== Encodin... -
04:04 AM Revision 59eebeca (git): [ruby/json] Allocate the initial generator buffer on the stack
- Ref: https://github.com/ruby/json/issues/655
Followup: https://github.com/ruby/json/issues/657
Assuming the generator might be used for fairly small documents
we can start with a reasonable buffer size of the stack, and if
we outgrow it... -
04:04 AM Revision d329896f (git): [ruby/json] Fix a memory leak in #to_json methods
- Fix: https://github.com/ruby/json/issues/460
The various `to_json` methods must rescue exceptions
to free the buffer.
```
require 'json'
data = 10_000.times.to_a << BasicObject.new
20.times do
100.times do
begin
data.to_js... -
02:50 AM Revision 783dde21 (git): `alias` should not set `defined_class` for Modules
- `me->defined_class` should be 0 for method entries of
Modules.
This patch checks this condition
and fix https://github.com/ruby/ruby/pull/11965#issuecomment-2448291790 -
02:42 AM Revision a8c32ace (git): Removed accidentally sync file
- 01:16 AM Revision 19c93a5c (git): * 2024-11-01 [ci skip]
-
01:16 AM Revision 3713db9a (git): Bump up REXML-3.3.9
10/31/2024
-
07:56 PM Bug #20856: Incorrect and inconsistent multi-thread eval execution with Prism compiler
- It's a bug of 3.4.0-preview2 and specifically of the Prism compiler, 3.3 and earlier and `--parser=parse.y` succeed for all cases.
The order is:
* parse that file:
* execute it
* in that new thread eval is called
* that parses `a == b`,... -
08:30 AM Bug #20856 (Closed): Incorrect and inconsistent multi-thread eval execution with Prism compiler
- Consider example:
```
s = Thread.new {
a = 5
puts eval("a == b")
x = 6
}
s.join
b = 11
```
As far as I see it, it should not work. Because at the moment of eval, b is unknown and not even declared (it can even be in c... -
05:52 PM Revision 645a0c9e (git): Remove vm_assert_env
-
05:52 PM Revision 843b4f49 (git): Fix assertion when envval of proc is Qundef
- The following code crashes with assertions enabled because envval could
be Qundef:
{}.to_proc.dup -
05:33 PM Revision 4bcfff07 (git): Remove debug print
-
05:33 PM Revision eedb9ac7 (git): Tweaks for actions groups
-
05:33 PM Revision 1edc4858 (git): Use net-imap 0.5.0 for tests
-
05:33 PM Revision cc893eda (git): Fetch gem sources to be tested only
-
05:33 PM Revision 0fda818b (git): Make gemspec files for default gems with extensions
- So that rubygems can find them as gems. However, the `--install-dir`
option of `gem install` seems to exclude prerelease gems, even already
installed in that directory, from the dependencies for some reasons;
use the `GEM_HOME` environm... - 05:10 PM Revision 80fd8463 (git): [rubygems/rubygems] Add useful error message for plugin load
- If a plugin has previously been installed, but the path is no longer
valid, `rake setup` will fail with an unexpected error due to the file
not existing.
Instead, we want to present the user with what the issue is and how to
resolve the... -
04:41 PM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- byroot (Jean Boussier) wrote in #note-8:
> I know, that's why I'm always puzzled at why distributions are trying to re-package rubygems... Like most of the failure I'm seeing on your CI are things already fixed upstream. But I suppose t... -
04:10 PM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- vo.x (Vit Ondruch) wrote in #note-9:
> byroot (Jean Boussier) wrote in #note-8:
> ...
I think that we should make such a place, because *in the past* it has caused no small amount of difficulty for upstream maintainers (both in how dis... -
01:18 PM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- byroot (Jean Boussier) wrote in #note-8:
> >This is the repository I am using: https://copr.fedorainfracloud.org/coprs/vondruch/mpb/builds/
> ...
This remark is more in general "compatibility" context the specifically to `Hash#inspect`... -
12:58 PM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- >This is the repository I am using: https://copr.fedorainfracloud.org/coprs/vondruch/mpb/builds/
Thank you. I went over a dozen or so, and couldn't find any other than ASCIIDoctor for which the failure cause was the change in `Hash#in... -
12:48 PM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- byroot (Jean Boussier) wrote in #note-6:
> > there have failed to build 127 out of 528 packages.
> ...
This is the repository I am using:
https://copr.fedorainfracloud.org/coprs/vondruch/mpb/builds/
From there, click on the "Buil... -
12:21 PM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- > there have failed to build 127 out of 528 packages.
Could you share the package names and failures? I think it's an important data point.
Personally as stated on https://bugs.ruby-lang.org/issues/20433 I really love this change, ... -
11:49 AM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- I ran the asciidoctor test and he have already fixed it. Awesome.
To my knowledge, this change has never required any substantive modification other than updating expectation values of test cases. And in principle, you know, it is not... -
11:22 AM Bug #20857 (Assigned): Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
-
10:38 AM Bug #20857: Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- Just FTR, speaking of testing in Fedora, after initial rebuild with Ruby 3.4, there have failed to build 127 out of 528 packages.
-
10:36 AM Bug #20857 (Closed): Ruby 3.4 seems to have backwards compatibility issues more than its predecessors
- Testing Ruby 3.4 in Fedora, I just hit issue like this in AsciiDoctor test suite:
~~~
1) Failure:
Minitest::Test::TestExtensions::TestIntegration#test_should_assign_captures_correctly_for_inline_macros [test/extensions_test.rb:138... -
02:58 PM Revision 66afde9c (git): Fix indentation in TestProc#test_hash [ci skip]
-
01:12 PM Revision abfefd8e (git): Define `VM_ASSERT_TYPE` macros
-
10:05 AM Revision 53df2a3c (git): [ruby/rdoc] Use thicker fonts with high contrast to improve
- readability
(https://github.com/ruby/rdoc/pull/1197)
https://github.com/ruby/rdoc/commit/7fb0e509ec -
08:31 AM Revision 27d77a9c (git): [ruby/openssl] pkcs7: remove default cipher from PKCS7.encrypt
- Require that users explicitly specify the desired algorithm. In my
opinion, we are not in a position to specify the default cipher.
When OpenSSL::PKCS7.encrypt is given only two arguments, it uses
"RC2-40-CBC" as the symmetric cipher al... -
08:28 AM Revision 339a8dd5 (git): [ruby/openssl] ssl: remove redundant ossl_ssl_ex_vcb_idx
- The SSL ex_data index is used for storing the verify_callback Proc. The
only user of it, ossl_ssl_verify_callback(), can find the callback by
looking at the SSLContext object which is always known.
https://github.com/ruby/openssl/commit... - 08:26 AM Revision 772a213a (git): [ruby/openssl] [DOC] better wording for OpenSSL::Config document.
- https://github.com/ruby/openssl/commit/26370636f3
Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com> - 08:26 AM Revision 9d94a3b8 (git): [ruby/openssl] [DOC] Replace removed method in example for OpenSSL::Config#to_s
- https://github.com/ruby/openssl/commit/93c7bf52ac
-
07:21 AM Bug #20854 (Assigned): Some bundled gems are not installed starting with 007c75ce4c66243e41144c6977e5ccbf4ab71c93
-
04:46 AM Feature #20855 (Closed): Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop.
- Merged in https://github.com/ruby/ruby/commit/87fb44dff6409a19d12052cf0fc07ba80a4c45ac
-
01:51 AM Feature #20855 (Closed): Introduce `Fiber::Scheduler#blocking_region` to avoid stalling the event loop.
- The current Fiber Scheduler performance can be significantly impacted by blocking operations that cannot be deferred to the event loop, particularly in high-concurrency environments where Fibers rely on non-blocking operations for effici...
- 04:26 AM Revision 87fb44df (git): Introduce Fiber Scheduler `blocking_region` hook. (#11963)
- 03:44 AM Revision 550ac2f2 (git): [DOC] Fix typos
-
12:30 AM Revision 583587df (git): [ruby/error_highlight] use `instance_method` to get method object
- instead of `method()`.
There is a bug around `define_method`, so this patch is workaround.
https://github.com/ruby/error_highlight/commit/4d04537f58
10/30/2024
-
11:09 PM Revision c3fea180 (git): [rubygems/rubygems] Update `--ext=rust` to support compiling the native extension from source
- https://github.com/rubygems/rubygems/commit/9b0ec807c7
-
10:42 PM Bug #20854 (Closed): Some bundled gems are not installed starting with 007c75ce4c66243e41144c6977e5ccbf4ab71c93
- I noticed in ruby 3.4.0 preview 2 that some bundled gems weren't being installed any more. I'm running in the same environment each time and bundled gems are installed fine with 3.3 or with the mentioned commit reverted.
I bisected t... -
09:00 PM Bug #20853: Hash key retrieval after Process.warmup
- Yes, that appears to have resolved the issue. Thank you for such a quick turnaround.
-
08:45 PM Bug #20853: Hash key retrieval after Process.warmup
- I have a fix available here: https://github.com/ruby/ruby/pull/11966
Please let me know if this fixes your issues. -
07:43 PM Bug #20853: Hash key retrieval after Process.warmup
- Thank you for reporting this bug.
I believe the issue here is that because `Process.warmup` runs a GC compaction, it can cause objects to move. While this is usually not a problem, Proc#hash is calculated using pointer values. Since t... -
06:50 PM Bug #20853 (Closed): Hash key retrieval after Process.warmup
- This was first reported as an issue against the [LaunchDarkly SDK](https://github.com/launchdarkly/ruby-server-sdk/issues/282) and [Sidekiq SDKs](https://github.com/sidekiq/sidekiq/issues/6279) as an issue in Ruby 3.3.1. I can still in R...
-
08:30 PM Revision 22abcce7 (git): Only check RubyVM on CRuby
- Blind use of the RubyVM constant here prevents this test from
running on non-CRuby. This patch guards it with RUBY_ENGINE ==
"ruby" to make sure that doesn't happen. -
07:38 PM Revision 5da1cc6c (git): [rubygems/rubygems] Rely on PATH if Ruby is not installed in the same directory as the binstub
- https://github.com/rubygems/rubygems/commit/ab7d65cc18
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> -
07:38 PM Revision 116d6cbc (git): [rubygems/rubygems] Simplify enable-load-relative prolog script creation
- https://github.com/rubygems/rubygems/commit/f2ed507afe
-
02:22 PM Revision 1e1a3722 (git): [rubygems/rubygems] Fix `gem update --system` leaving old default bundler executables around
- https://github.com/rubygems/rubygems/commit/4b81add54c
-
02:20 PM Revision ec0d0449 (git): [rubygems/rubygems] Remove confusing documentation
- The first paragraph is misleading because command line flags that set
configuration are deprecated.
The second one is unnecessary because configuration precedence is
explained before the different configurations.
https://github.com/rub... -
02:06 PM Revision caa6bcc9 (git): [rubygems/rubygems] Indent github workflow steps for generated gems
- https://github.com/rubygems/rubygems/commit/a1784e2efa
-
09:47 AM Revision 63aeb018 (git): bump teeny
-
05:48 AM Revision eb1e1d99 (git): Detail the failing assertion [ci skip]
- 03:12 AM Revision 8cb0722f (git): Update bundled gems list at 20f483ef362a0d443e1a75ffda9c2c [ci skip]
-
03:11 AM Revision 20f483ef (git): Use https://github.com/ruby/net-imap/commit/898ee6e7878fdb2d0b79a4691fd68b6d8b228426
-
03:11 AM Revision 680053a2 (git): Update bundled_gems
-
01:13 AM Revision e077be11 (git): [ruby/json] Remove double semicolon at end of line in parser
- https://github.com/ruby/json/commit/f6d6ca3c17
-
01:13 AM Revision f2e51146 (git): [ruby/json] Remove dead cases from convert_UTF8_to_* functions
- https://github.com/ruby/json/commit/d54063a790
-
01:13 AM Revision 5d176436 (git): [ruby/json] Allocate the FBuffer struct on the stack
- Ref: https://github.com/ruby/json/issues/655
The actual buffer is still on the heap, but this saves a pair
of malloc/free.
This helps a lot on micro-benchmarks
Before:
```
ruby 3.3.4 (2024-07-09 revision https://github.com/ruby/json/...