Activity
From 02/24/2024 to 03/01/2024
03/01/2024
-
11:30 PM Bug #20321 (Feedback): `require': cannot load such file
- Hi, have this, when i would compile Ruby:
> internal:<RUBY_PATH>/lib/rubygems/core_ext/kernel_require.rb:9:in `require': cannot load such file -- monitor (LoadError) -
11:10 PM Revision 607b86ed (git): Update a stubbed type for RJIT
- cfunc.func is actually used by RJIT
-
11:07 PM Revision 317163c7 (git): Update bindgen for YJIT and RJIT
-
11:02 PM Revision 61fbd29e (git): Skip a redundant check for the rb_obj_hash case
- Also, refactor the cfunc struct to use a new rb_cfunc_t.
-
08:50 PM Feature #20317: Removing the `allocate` method should cause `new` to fail
- jeremyevans0 (Jeremy Evans) wrote in #note-1:
> The current behavior may be what you want if you want to ensure that new instances of the class have `#initialize` called on them. I suppose you could switch to making `allocate` private,... -
12:35 AM Feature #20317: Removing the `allocate` method should cause `new` to fail
- The current behavior may be what you want if you want to ensure that new instances of the class have `#initialize` called on them. I suppose you could switch to making `allocate` private, but that still would allow for `send(:allocate)`...
-
12:18 AM Feature #20317 (Open): Removing the `allocate` method should cause `new` to fail
- When you remove the `allocate` method from a class the you can't allocate the class via the `allocate` method. However, you _can_ allocate the class via the `new` method:
```ruby
class Foo; end
Foo.singleton_class.undef_method(:al... -
08:41 PM Revision 5a3ae06a (git): Remove dead function rb_obj_rgengc_writebarrier_protected_p
-
08:36 PM Revision 99384bac (git): Correctly set anon_kwrest flag for def f(b: 1, **)
- In cases where a method accepts both keywords and an anonymous
keyword splat, the method was not marked as taking an anonymous
keyword splat. Fix that in the compiler.
Doing that broke handling of nil keyword splats in yjit, so
update ... -
07:57 PM Revision 6da8f04e (git): [ruby/irb] Escape closing square brackets in regexp
- Fixes the following warning:
test/irb/test_command.rb:546: warning: regular expression has ']' without escape
https://github.com/ruby/irb/commit/7efadc243b -
07:16 PM Revision 70de3b17 (git): Optimize Hash methods with Kernel#hash (#10160)
-
06:38 PM Revision 6f31dd49 (git): Don't check_rvalue_consistency in is_markable_object
- is_markable_object is called by rb_objspace_markable_object_p, which
may pass a T_NONE object. check_rvalue_consistency will fail if a T_NONE
object is passed in. -
06:03 PM Revision 661f9e6d (git): YJIT: Support opt_invokebuiltin_delegate for leaf builtin (#10152)
-
05:54 PM Revision 88050ec1 (git): YJIT: No need to set cfp->sp when setting escaped locals
- While writing to the env object can add it to the remember set,
it shouldn't trigger a GC run. -
04:26 PM Misc #20320 (Open): Using OSU Open Source Lab native ppc64le/s390x CI services trigged on pull-requests
- We have been using Travis CI to run unit tests the native arm64/ppc64le/s390x in the ruby/ruby, ruby/zlib and ruby/prism repositories in the Ruby project.
One of the challenges is Travis CI's chronic unstable infra issues. To be fair,... -
03:54 PM Misc #20013: Travis CI status
- I found the following information on https://www.traviscistatus.com/ . Travis CI is undergoing a maintenance in a week of 27/Feb - 5/Mar.
> Back-end maintenance 27-Feb to 5-Mar
> ...
Feb 28, 2024 - 12:42 UTC
>
> ...
Feb 28, 2024 -... -
12:33 PM Misc #20013: Travis CI status
- We have observed unstable Travis ppc64le/s390x pipelines. So, I added the allow_failures to the pipelines by the PR <https://github.com/ruby/ruby/pull/10158>.
## ppc64le
We have seen the following errors around 10 or more times in ... -
12:18 PM Misc #20013: Travis CI status
- Eregon (Benoit Daloze) wrote in #note-22:
> FYI mspec has a `--timeout SECONDS` option, which should help identify which spec is hanging/very slow.
OK. Thanks for the tip!
-
03:51 PM Revision 57ca5960 (git): [ruby/irb] Restructure workspace management
- (https://github.com/ruby/irb/pull/888)
* Remove dead irb_level method
* Restructure workspace management
Currently, workspace is an attribute of IRB::Context in most use cases.
But when some workspace commands are used, like `pushws` ... -
03:39 PM Revision 162e13c8 (git): Remove pointer check in vm_ccs_free
- We don't need to check that the object is pointer to the GC heap in
vm_ccs_free because it is called during sweeping, which does not free
pages so it can never point to an object that is not on the GC heap. -
03:33 PM Revision f3af5ae7 (git): Make Struct memory leak test faster
- [Bug #20311]
It times out on some platform, so we can reduce iterations.
On my machine it completes in 250ms and RSS grows 8X. -
03:10 PM Revision 334e4c65 (git): Fix a couple issues noticed by nobu
- Co-authored-by: Nobuyoshi Nakada <[email protected]>
-
03:10 PM Revision f446d68b (git): Add benchmarks for super and zsuper calls of different types
- These show gains from the recent optimization commits:
```
arg_splat
miniruby: 7346039.9 i/s
miniruby-before: 4692240.8 i/s - 1.57x slower
arg_splat_block
mini... -
03:10 PM Revision 73371450 (git): Avoid 1-2 array allocations for zsuper calls with post arguments
- These previously resulted in 2 array allocations, one for newarray
and one for concatarray. This replaces newarray and concatarray
with pushtoarray, and changes splatarray false to splatarray true,
which reduces it to 1 array allocation... -
03:10 PM Revision 32c58753 (git): Fix splatarray false peephole optimization for f(*ary, **kw, &block)
- This optimization stopped being using when the splatkw VM instruction
was added. This change allows the optimization to apply again. This
also optimizes the following cases:
super(*ary, **kw, &block)
f(...)
super(...) -
03:10 PM Revision e484ffaf (git): Perform splatarray false peephole optimization for invokesuper in addition to send
- This optimizes cases such as:
super(arg, *ary)
super(arg, *ary, &block)
super(*ary, **kw)
super(*ary, kw: 1)
super(*ary, kw: 1, &block)
The super(*ary, **kw, &block) case does not use the splatarray false
optimization. This ... -
12:43 PM Feature #15554: warn/error passing a block to a method which never use a block
- One concern if it's verbose-only is it won't help for typical mistakes with blocks like:
```ruby
p foo do
body
end
```
It would need to warn by default to address that. -
01:16 AM Feature #15554: warn/error passing a block to a method which never use a block
- This would be a verbose-only warning right?
- 12:14 PM Revision 54d26221 (git): .travis.yml: Allow failures for ppc64le and s390x.
- Because Travis ppc64le/s390x are unstable.
ppc64le:
* https://app.travis-ci.com/github/ruby/ruby/builds/269211469
* https://app.travis-ci.com/github/ruby/ruby/builds/269204073
s390x:
* https://app.travis-ci.com/github/ruby/ruby/builds/... -
12:04 PM Bug #20319: Singleton class is being frozen lazily in some cases
- Alternatively, I think we could simplify `Kernel#freeze` to always only freeze the direct object and no other object, i.e. no singleton class would be frozen when freezing a singleton object.
State and methods are separate things, so IM... -
11:52 AM Bug #20319 (Open): Singleton class is being frozen lazily in some cases
- I've noticed suspicious behaviour (it doesn't affect anything in practice for me though) when an object becomes frozen only its own singleton class becomes frozen immediately.
A singleton class of the object immediate singleton class ... -
08:20 AM Feature #20318: Pattern matching `case ... in` support for triple-dot arguments
- @ko1 A pretty similar effect can be achieved by combining several recent features:
```ruby
def foo(*, **) = case [*, **]
in name, {}
puts name
in first_name, last_name, {}
puts "Hi there #{first_name} #{last_name}"
in [{greeting:}] ... -
07:46 AM Feature #20318: Pattern matching `case ... in` support for triple-dot arguments
- ko1 (Koichi Sasada) wrote in #note-3:
> I prefer
> ...
Personally this is the syntax I would like to see, as I believe that the intention of this issue is method overloading, and it has been a fairly common request. I also agree that i... -
07:34 AM Feature #20318: Pattern matching `case ... in` support for triple-dot arguments
- I prefer
```ruby
def foo(...)
in [name] # foo('ko1')
puts name
in [first_name, last_name] # foo('ko1', 'ssd')
puts "Hi there #{first_name} #{last_name}"
in {greeting:} ... -
05:40 AM Feature #20318: Pattern matching `case ... in` support for triple-dot arguments
- Personally I find the double ... rather confusing. I understand the benefit of a more succint syntax - e. g. eliminating "(*args, **kwargs, &block)" - but even then I find the dual-triple-dot very strange. It seems rather "un-ruby" to me...
-
05:24 AM Feature #20318: Pattern matching `case ... in` support for triple-dot arguments
- Add array example.
-
03:11 AM Feature #20318 (Open): Pattern matching `case ... in` support for triple-dot arguments
# Premise
Sometimes when I'm creating a method for an API, I'd like to do pattern matching against the arguments. Today I have to do something like this:
```ruby
def foo(*args, **kwargs, &block)
case { args:, kwargs:, block: ...-
07:24 AM Revision c09e5ad1 (git): Clarify C API documentation about pinned classes
- They are not only pinned, but also immortal. Even if the
constant referencing them is removed, they will remain alive.
It's a precision worth noting. -
07:23 AM Bug #20311 (Closed): Struct.new("A") memory leak?
- Applied in changeset commit:git|e626da82eae3d437b84d4f9ead0164d436b08e1a.
----------
Don't pin named structs defined in Ruby
[Bug #20311]
`rb_define_class_under` assumes it's called from C and that the
reference might be held in a C g... -
07:23 AM Bug #20311: Struct.new("A") memory leak?
- > Is there any chance for the same module to be added twice?
Yes, aliasing isn't uncommon.
> ...
Probably this is same for any Ruby-level defined classes/modules.
Yes, my reasoning is that it's not reasonable to expect classes c... -
07:01 AM Bug #20311: Struct.new("A") memory leak?
- byroot (Jean Boussier) wrote in #note-7:
> So maybe a better short term solution that is easy to backport is to just not use these API for naming structs: https://github.com/ruby/ruby/pull/10144
Seems fine, but I'm afraid what can ha... -
06:03 AM Bug #20311: Struct.new("A") memory leak?
- byroot (Jean Boussier) wrote in #note-3:
> So if a module is added twice, you need to remove it from the set if it's removed twice... I'll see if I can do that.
Is there any chance for the same module to be added twice?
-
07:23 AM Revision e626da82 (git): Don't pin named structs defined in Ruby
- [Bug #20311]
`rb_define_class_under` assumes it's called from C and that the
reference might be held in a C global variable, so it adds the
class to the VM root.
In the case of `Struct.new('Name')` it's wasteful and make
the struct imm... -
07:10 AM Revision 5d76fe6b (git): [ruby/optparse] Invoke pager for `--help`
- https://github.com/ruby/optparse/commit/77dccce37c
-
04:56 AM Revision 9b75e5f0 (git): Add an example for fallback to sh
-
04:11 AM Revision 5baee82c (git): [DOC] Mention about executable file and fallback to sh
-
04:11 AM Revision 1a9a20ce (git): Turn `rb_sys_fail_on_write` into a function
-
04:11 AM Revision 452d51ff (git): Use `File.open` and `File.write` instead of `Kernel#open`
- 03:33 AM Revision a465393c (git): Update bundled gems list at 874e9fc34d728f8e2444d15aa6759b [ci skip]
- 03:33 AM Revision 04a1b873 (git): Bump actions/cache from 4.0.0 to 4.0.1
- Bumps [actions/cache](https://github.com/actions/cache) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.co... -
03:32 AM Revision 874e9fc3 (git): Don't need to remove ruby2_keywords dependency from drb
-
03:32 AM Revision 1952c799 (git): Bump up drb-2.2.1
- 03:32 AM Revision b26602f8 (git): Bump github/codeql-action from 3.24.5 to 3.24.6
- Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.24.5 to 3.24.6.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md... - 03:23 AM Revision 8ec9c2dd (git): Bump actions/cache in /.github/actions/setup/directories
- Bumps [actions/cache](https://github.com/actions/cache) from 4.0.0 to 4.0.1.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.co... -
12:38 AM Bug #16297: calling undefined allocator by `Class.instance_method(:allocate)`
- I'm not sure if there's a deeper problem this causes, but it is still possible after this patch to call the allocator on a Rational through defining an arbitrary `allocate` method.
``` ruby
>> def Rational.allocate; end
=> :allocate...
02/29/2024
-
09:42 PM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
- kjtsanaktsidis (KJ Tsanaktsidis) wrote in #note-30:
> That patch just modifies the `configure.ac` file, which is the autoconf macros which generate the `./configure` script. If you patch this file, you need to regenerate the configure s... -
09:41 PM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
- That patch just modifies the `configure.ac` file, which is the autoconf macros which generate the `./configure` script. If you patch this file, you need to regenerate the configure script by calling `./autogen.sh`. (Apologies if you're a...
-
08:48 PM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
- We applied the patch from https://github.com/ruby/ruby/commit/7f97e3540ce448b501bcbee15afac5f94bb22dd9.patch?full_index=1 directly in our `Dockerfile` for the `ruby:3.3-*` images we maintain in https://github.com/docker-library/ruby/pull...
-
08:55 PM Revision 2508a796 (git): [ruby/resolv] Implement CAA resource record
- This patch implements handling of CAA resource records defined by [RFC8659].
- There are no known deployment of CAA records outside of IN (Internet),
but the RFC does not state that CAA records are class-specific.
Thus `CAA` class i... -
07:26 PM Revision d3ae5808 (git): Remove each_machine_stack_value
- The function is only used by rb_gc_mark_machine_stack.
-
07:24 PM Revision d5ae7965 (git): [ruby/prism] Lazily create Location objects in Prism::Serialize::Loader#load_location
- * Following the changes in #2428.
* PRISM_FFI_BACKEND=true ruby -v -Ilib -rprism -rbenchmark -e '10.times { p Benchmark.realtime { Dir.glob("lib/**/*.rb") { |f| Prism.parse_file(f) } } }'
ruby 3.3.0: 0.255 => 0.210
ruby 3.3.0 YJ... -
07:24 PM Revision 6075f67a (git): [ruby/prism] Tweak wording for Prism::BACKEND
- * TruffleRuby does support C extensions but FFI is faster there.
https://github.com/ruby/prism/commit/d211a87691 -
06:30 PM Revision 1a588922 (git): Load iseq name later than other ISEQ references
- previous_insn_index() is crashing:
https://github.com/ruby/ruby/actions/runs/8100712618/job/22139323673
https://github.com/ruby/ruby/actions/runs/8099334388/job/22134848249
but it's probably not the fault of previous_insn_index() itself... -
06:23 PM Revision 3d614779 (git): Remove unused gc_mark_stack_values
-
06:23 PM Revision 6665ec26 (git): Remove check for is_markable_object in gc_mark_stack_values
- gc_mark_and_pin already checks for is_markable_object.
-
06:16 PM Revision 6e2880b3 (git): [wasm-pic] Add `LDSHARED` definition for WASI platform
- We are going to add dynamic linking support for WASI platform. The
`LDSHARED` definition is used to link shared libraries for building ruby
binaries and extensions. -
06:16 PM Revision 57f014b2 (git): Use configured `LD` for linking enc and ext libraries
- "AR" was well propagated to the enc.mk and mkmf, but "LD" was not. This
caused the dynamic libraries to be linked with a linker found in the PATH,
which could be different from the one used in the Ruby build process.
This is especially i... -
05:32 PM Revision 1c0c490a (git): [ruby/prism] Warn on integers in flip-flops
- https://github.com/ruby/prism/commit/500099e896
-
05:21 PM Bug #20316 (Open): Regexp quantifier behavior changes in different syntactic context.
- In the example below, adding a vertical bar to the end of a regular expression changes what is being matched by the preceding regular expression.
```
irb(main):001:0> /(|a){3}b/.match("aab")
=> #<MatchData "aab" 1:"">
irb(main):002... -
05:05 PM Revision f9d5c604 (git): [PRISM] Use new command line option flags
-
05:05 PM Revision 50e999c5 (git): [ruby/prism] Command line options as a bitset
- https://github.com/ruby/prism/commit/369ffbd57e
-
04:59 PM Bug #20315 (Open): Quantifier expansion leads to different results in Regexp.
- Consider the following series of regular expression matches:
```
irb(main):001:0> /(|a)(|a)(|a)(|a)(|a)b/.match("aaaab")
=> #<MatchData "aaaab" 1:"" 2:"a" 3:"a" 4:"a" 5:"a">
irb(main):002:0> /(|a)(|a)(|a)(|a)b/.match("aaab")
=> #<Ma... -
04:29 PM Revision cd8d1018 (git): [ruby/prism] Resync RBI and test it in CI
- https://github.com/ruby/prism/commit/4ef4032774
-
04:08 PM Revision 5891c70b (git): YJIT: Support inlining putself (#10137)
-
04:07 PM Revision 4c0f0b90 (git): Assume that FL_FINALIZE is in finalizer_table
- If FL_FINALIZE is set but not in finalizer_table, then rb_bug.
-
04:06 PM Revision f8dd2342 (git): [ruby/prism] Fix an incorrect parsing for `Prism::Translation::Parser`
- This PR fixes an incorrect parsing for `Prism::Translation::Parser`
when one-line pattern mathing with Ruby 2.7 runtime.
## Expected
Parsing should be done based on the specified Ruby parsing version,
independent of the Ruby runtime ve... -
03:57 PM Revision 8a918b45 (git): Add gc_each_object for walking the heap
-
03:25 PM Bug #20312: Memory leak with BigDecimal::EXCEPTION_OVERFLOW
- Oh right! Sorry, done: https://github.com/ruby/bigdecimal/issues/290
-
05:18 AM Bug #20312 (Third Party's Issue): Memory leak with BigDecimal::EXCEPTION_OVERFLOW
- Hi, @MaxLap . Thank you for report this.
Can you file this to https://github.com/ruby/bigdecimal/? bigdecimal is already extracted from canonical ruby repository.
-
02:59 PM Bug #20311: Struct.new("A") memory leak?
- So https://github.com/ruby/ruby/pull/10143 is turning into a huge yak-shave and will be hard to backport. The reason is a lot of code end up relying on classes defined in C becoming immortal (in addition to being pinned).
So maybe a ... -
12:07 PM Bug #20311: Struct.new("A") memory leak?
- I think https://github.com/ruby/ruby/pull/10143 will do. But a good followup would also be to not pin `Struct.new("A")`.
-
11:47 AM Bug #20311: Struct.new("A") memory leak?
- > But I also wonder why we have this root in the first place, I'd think these get marked from being constants in ::Object.
Nevermind, if I understand correctly, it's not to mark them, it's to pin them. -
11:45 AM Bug #20311: Struct.new("A") memory leak?
- > rb_const_remove needs to take care of it when the removed constant is a class or module?
The problem is that it's a set:
```c
st_insert(vm->defined_module_hash, (st_data_t)module, (st_data_t)module);
```
So if a module is ad... -
02:53 PM Revision cb784082 (git): [ruby/prism] Better hashing between positive/negative integers
- https://github.com/ruby/prism/commit/68ddf08634
-
02:38 PM Revision 950c6062 (git): Delete from finalizer_table before running finalizer
- The finalizer could trigger a GC, which would cause FL_FINALIZE to be
out of sync with the finalizer table. -
02:37 PM Revision d5bca066 (git): Unset FL_FINALIZE before running the finalizer
- The finalizer could trigger a GC, so FL_FINALIZE could get out of sync
with the finalizer table. -
12:32 PM Revision 1a6a7c69 (git): Update RBS (#10121)
- Use an unreleased version of RBS to see if the new commit fixes the `EBADF` error.
-
10:59 AM
Feature #15554: warn/error passing a block to a method which never use a block
- > Regarding the warning message:
+1, these messages are clearer. -
09:15 AM Feature #15554: warn/error passing a block to a method which never use a block
- These results look encouraging to me.
The number of "false positives" seems reasonable.
Also they are not really false positives, because they are cases where a block is given and ignored by a method, but with the same call site also pot... -
08:12 AM Feature #15554: warn/error passing a block to a method which never use a block
- We found issues with this warning system, like: https://github.com/ruby/ruby/commit/8316cb213c
-
08:10 AM Feature #15554: warn/error passing a block to a method which never use a block
- Duck typing case:
```
class C1
def foo = nil
end
class C2
def foo = yield
end
[C1.new, C2.new].each{ _1.foo{ ... } }
```
RDoc's `each_ancestor` method(s) is.
----
Mock cases:
```patch
diff --git a/spec... -
08:05 AM Feature #15554: warn/error passing a block to a method which never use a block
- Retry it on current master 2024.
Summary:
* false positive on several cases:
* intentional cases for duck typing
* making mock cases they want to ignore arguments
* found a few issues by warnings
----
https://gist.gith... -
10:57 AM Revision 3f633e57 (git): [wasm-pic] Remove --pass-arg=asyncify-ignore-imports from POSTLINK
- Before PIC era, we could assume that the stack is not unwound by
imported functions since all imported functions are WASI syscalls and
they don't use Asyncify at all. However, PIC binary can import functions
from other modules and we can... -
09:31 AM Bug #20314: Simultaneous Timeout expires may raise an exception after the block
- I'm not sure how Solution 3 would work.
`Thread#raise` would block until what?
Until the exception started to be raised/thrown on that thread? I think that would not fix that snippet.
It does not seem reasonable to wait until the excepti... -
06:25 AM Bug #20314 (Open): Simultaneous Timeout expires may raise an exception after the block
- Launchable reports `TestTimeout#test_nested_timeout` as a flaky test, and I reproduced it as follows.
```ruby
require "timeout"
class A < Exception
end
class B < Exception
end
begin
Timeout.timeout(0.1, A) do
Tim... -
09:05 AM Revision 114c0b71 (git): Inform failures in parallel tests before retrying
- Displays for each failure which test it actually occurred in. The
output destination follows the --{stdout,stderr}-on-failure option. -
08:30 AM Feature #19979: Allow methods to declare that they don't accept a block via `&nil`
- Actually, I prefer #15554, but my concern is that it causes compatibility issues with false positives.
Matz.
-
07:40 AM Misc #20254 (Closed): Add Launchable into Ruby CI
- @ono-max and @jaruga Thank you for your works. Launchable has been added our repository.
We discovered https://bugs.ruby-lang.org/issues/20314 with this integration.
We should close this and create new ticket each concerns.
-
12:51 AM Misc #20254: Add Launchable into Ruby CI
- Thank you for introducing the feature, @jaruga. Also, I'd like to introduce the page https://app.launchableinc.com/organizations/ruby/workspaces/ruby/insights/unhealthy-tests. This page displays Flaky Tests, Never Failing Tests, Longest ...
-
01:18 AM Bug #20313: Backport RUBY_YJIT_ENABLE PR https://github.com/ruby/ruby/pull/7208
- Merged to ruby_3_2 at https://github.com/ruby/ruby/commit/80112a9847b705b53e17e48540a6d00daa7e59a4. Thanks.
- 01:17 AM Revision 80112a98 (git): Make sure RUBY_YJIT_ENABLE only enables YJIT for truthy values
-
12:57 AM Revision 51e32523 (git): Resolve a warning in `launchable record build` command
02/28/2024
-
11:26 PM Misc #20254: Add Launchable into Ruby CI
- FYI: I'm going to change the GitHub comment feature as follows today:
If a test is executed multiple times, we'll treat it as a single test, and the status of the test will reflect the latest result. By implementing this behavior, retrie... -
03:15 PM Misc #20254: Add Launchable into Ruby CI
- As a reference to see how the results of the Launchable CI look like, below is one example to see the flaky, the most failed, and longest tests.
https://github.com/ruby/ruby/pull/10118#issuecomment-1967550964
-
11:00 PM Revision f05ad373 (git): YJIT: Squash canary before falling back
- Recent flaky canary-related CI failures have all happened while trying
to fall back. It's unclear what is leaving the canary on the stack and
causing gen_send_dynamic() to falsely assume that it should be leaf,
and this patch isn't going... -
08:00 PM Revision 558b58d3 (git): YJIT: Reject keywords hash in -1 arity cfunc splat support
- `test_keyword.rb` caught this issue. Just need to run with `threshold=1`
-
07:54 PM Revision 4b92b60f (git): Use array initialization rather than for loop
-
06:45 PM Revision c5b568ba (git): Migrate auto_request_review back to CODEOWNERS (#10133)
-
06:45 PM Revision 5481dbef (git): Make rb_define_finalizer_no_check private
-
06:30 PM Revision a5bfc251 (git): [ruby/prism] Rewrite logic for CHECK_FIELD_KIND to improve readability
- https://github.com/ruby/prism/commit/f731edcc26
-
06:30 PM Revision 71673464 (git): [ruby/prism] More precise types for NodeListField in prism.rbi
- https://github.com/ruby/prism/commit/b7959295e9
-
06:30 PM Revision 2143789a (git): [ruby/prism] Make NodeKindField subclass NodeKindField
- * To avoid duplication.
https://github.com/ruby/prism/commit/12e5aae0b4 -
06:30 PM Revision 1b0a5bcb (git): [ruby/prism] Add a simple way to check field kinds are correct by setting $CHECK_FIELD_KIND
- https://github.com/ruby/prism/commit/33e987ba3c
-
06:30 PM Revision ea2cb002 (git): [ruby/prism] Give a kind to all node[] fields which can have one more specific than "any Node"
- * Fixes https://github.com/ruby/prism/issues/2058
https://github.com/ruby/prism/commit/f3e3310b5e -
06:30 PM Revision 567d4ee7 (git): [ruby/prism] Set proper types for node[] in Java-generated code
- https://github.com/ruby/prism/commit/322eaea500
-
06:26 PM Bug #20313 (Closed): Backport RUBY_YJIT_ENABLE PR https://github.com/ruby/ruby/pull/7208
-
04:53 PM Bug #20313 (Closed): Backport RUBY_YJIT_ENABLE PR https://github.com/ruby/ruby/pull/7208
- Backporting "Make sure RUBY_YJIT_ENABLE only enables YJIT for truthy values" PR https://github.com/ruby/ruby/pull/7208 to Ruby 3.2
More details here: https://github.com/ruby/ruby/pull/10125 -
06:26 PM Revision a29c0e82 (git): [PRISM] Handle implicit flip-flop bounds checking against $.
-
05:44 PM Revision 16c7144c (git): [PRISM] Only look up encoding once per file
-
05:42 PM Revision f8355e88 (git): [PRISM] Do not load -r until we check if main script can be read
-
05:23 PM Feature #20309: Bundled gems for Ruby 3.5
- Also something I remembered now is YJIT [does not compile singleton methods](https://github.com/Shopify/ruby/issues/552), except singleton methods of modules and classes.
So then that replacement can also be significantly slower. -
05:21 PM Feature #20309: Bundled gems for Ruby 3.5
- @jeremyevans0 One issue with that replacement is it does not name the class of the object, so it's quite unclear if there is an exception with it.
And also no easy way to define constants in that singleton class (and if one does `A = ..... -
03:38 PM Feature #20309: Bundled gems for Ruby 3.5
- Eregon (Benoit Daloze) wrote in #note-6:
> hsbt (Hiroshi SHIBATA) wrote:
> ...
On the other hand, it's almost always better to use a normal constant with a singleton object than the `singleton` library. `singleton`'s only advantage is... -
11:18 AM Feature #20309: Bundled gems for Ruby 3.5
- Eregon (Benoit Daloze) wrote in #note-6:
> > * fcntl
> ...
I misremembered, I thought there was something like `Fcntl.fcntl`, but it's `IO#fcntl`.
So `fcntl` is literally just a bunch of constants:
https://github.com/oracle/truffleru... -
11:14 AM Feature #20309: Bundled gems for Ruby 3.5
- hsbt (Hiroshi SHIBATA) wrote:
> * ostruct
> ...
+1 since ostruct is already kind of deprecated.
> * irb
> ...
Will that break `binding.irb` under `bundle exec`? If so that seems a major problem.
I would think it would break it if `bindi... -
08:46 AM Feature #20309: Bundled gems for Ruby 3.5
- I'm big fan (and user) of `ruby -run -e httpd . -p 1234`, this is also part of "local HTTP server oneliners" like https://gist.github.com/willurd/5720255 and it will break various tutorials online if `un` is not installed with ruby by de...
-
05:21 PM Revision dcc976ad (git): Remove unused rb_gc_id2ref_obj_tbl
-
04:42 PM Revision 49aa8d65 (git): [PRISM] Fix version spec to account for prism
-
04:36 PM Bug #20311: Struct.new("A") memory leak?
- Seems referred from `defined_module_hash`.
`rb_const_remove` needs to take care of it when the removed constant is a class or module? -
01:28 PM Bug #20311: Struct.new("A") memory leak?
- I had a quick look at this using `ObjectSpace.dump_all`, and it appears that these classes are being retained in the VM root:
```ruby
require 'objspace'
3.times do
puts ObjectSpace.dump(Struct.new("A"))
Struct.send(:remove_c... -
12:03 PM Bug #20311 (Closed): Struct.new("A") memory leak?
- The following code gives the impression of a memory leak.
```ruby
10.times do
5000.times do
Struct.new("A")
Struct.send(:remove_const, :A)
end
GC.start
puts `ps -o rss= -p #{$$}`.to_i
end
```
```
27868
... -
04:09 PM Revision 1cef3663 (git): [PRISM] Factor in CLI options for prism
-
03:58 PM Revision 742abbf7 (git): Switch {prism: true} to {parser: :prism} in ISeq.to_a
-
03:46 PM Bug #20312 (Third Party's Issue): Memory leak with BigDecimal::EXCEPTION_OVERFLOW
- The following causes a memory leak.
I left a commented line, both trigger an memory leak. I assume it's the same bug
```
require 'bigdecimal'
BigDecimal.mode(BigDecimal::EXCEPTION_OVERFLOW, true)
10.times do |j|
100000.ti... -
03:41 PM Revision 7b69563b (git): Add check for finalizer in verify_internal_constency
- This adds a check in GC.verify_internal_constency that FL_FINALIZE flags
is set if, and only if it is in finalizer_table. -
03:41 PM Revision 48f433fd (git): Change T_ZOMBIE flag check from an assertion
- Assertions are only enable on debug builds, so it will now check for
flags of T_ZOMBIE objects on all builds in GC.verify_internal_consistency. -
03:36 PM Revision c990cc70 (git): [ruby/prism] Switch static literals to use a hash
- https://github.com/ruby/prism/commit/82e6f36e8f
-
03:36 PM Revision 8b556d39 (git): [ruby/prism] Refactor static literals into hash
- https://github.com/ruby/prism/commit/62382d3967
-
08:53 AM Revision eb6eb1d4 (git): Fix crash report path test on Windows
-
08:12 AM Bug #20310: ASAN fake stacks need to be marked during GC for non-current execution context
- I opened https://github.com/ruby/ruby/pull/10122 as my first attempt at this.
-
04:01 AM Bug #20310 (Closed): ASAN fake stacks need to be marked during GC for non-current execution context
- When ASAN (address sanitizer) is enabled, the compiler does not necessarily store all local variables on the real machine stack; instead, locals can be stored in per-frame heap allocated memory which ASAN uses to detect things like stack...
-
07:09 AM Revision 8316cb21 (git): Fix to use `assert_crash_report` results
-
04:30 AM Revision 05387b59 (git): Update regex patterns with rbinstall.rb
-
04:30 AM Revision 75a4aa20 (git): Support file listing with IO.poepn style
-
04:22 AM Feature #20275: Avoid extra backtrace entries for rescue and ensure
- I am in favor of this change, but I do not plan to write a patch and estimate its impact. Someone who wants this, please do it.
I recommend doing this earlier. Since it is incompatible, it may be too late closer to the upcoming release. -
03:41 AM
Feature #20274 (Closed): Add RubyVM::ASAN.enabled?
- Applied in changeset commit:git|fe0b704df5553bdd59e90650ffbbfac785a2e48a.
----------
Skip assert_no_memory_leak when ASAN is enabled
ASAN greatly increases the memory footprint of Ruby, so these static
thresholds are not appropriate. T... - 03:41 AM Revision fe0b704d (git): Skip assert_no_memory_leak when ASAN is enabled
- ASAN greatly increases the memory footprint of Ruby, so these static
thresholds are not appropriate. There's no real need to run these tests
under ASAN.
[Bug #20274] -
02:14 AM Revision 47b46fd9 (git): Use dummy command for IO.popen
-
02:11 AM Revision e8e2415b (git): Use RB_SPECIAL_CONST_P instead of rb_special_const_p
- rb_special_const_p returns a VALUE (Qtrue or Qfalse), so we shouldn't
assume that Qfalse is 0. We should instead use RB_SPECIAL_CONST_P. -
02:08 AM Revision 95e55e9a (git): Also ignore git ls-files command with IO.popen style for tmpdir.gemspec and tempfile.gemspec
-
01:43 AM Bug #20090: Anonymous arguments are now syntax errors in unambiguous cases
- I confirmed.
@naruse https://github.com/ruby/ruby/commit/f8f0d342e48a38caac6d32b438c145bb581a51e6 seems wrong commit. Should we revert it and apply https://github.com/ruby/ruby/commit/596db9c1f486d6609a4e97d82c8c71b54609fb6f again?
02/27/2024
-
10:39 PM Feature #20309: Bundled gems for Ruby 3.5
- > ruby -run is one of cool feature of Ruby. Should we avoid uninstalling un gem?
I think -run is kind of neat; it's a bit like a mini-DSL for the commandline.
(Having said that, I actually do not use it myself; I instead use a cust... -
10:16 PM Feature #20309 (Closed): Bundled gems for Ruby 3.5
- I propose migrate the following default gems to bundled gems at Ruby 3.5. So, It means users will get warnings if users try to load them.
(Update with 2024/03/14, 2024/06/05, 2024/09/06)
* rdoc(done)
* We need to change build t... -
10:17 PM Misc #20281: DevMeeting-2024-03-14
- * [Feature #20309] Bundled gems for Ruby 3.5
* Let's discuss target gems to migrate bundled gems. -
01:36 PM Misc #20281: DevMeeting-2024-03-14
- * [Feature #19744] Namespace on read
* The branch under development: https://github.com/tagomoris/ruby/pull/2
* I want to demonstrate the current features and behaviors
* I need feedback about what is missing for further discussions -
12:36 PM Misc #20281: DevMeeting-2024-03-14
- * [Feature #14066] Add CAA DNS RR on Resolv (dentarg)
* Proposed patch: https://github.com/ruby/ruby/pull/1732
* Is there anything blocking this from being upstreamed into ruby? CAA is a fairly standard and widely adopted DNS record ... -
10:02 PM Revision 36681185 (git): [DOC] Stop discouraging the use of Array#each (#10119)
-
09:39 PM Feature #20300: Hash: set value and get pre-existing value in one call
- `#get_and_transform` could be a name for the version with the block, if performance is impacted significantly.
-
09:30 PM Feature #20300: Hash: set value and get pre-existing value in one call
- @matheusrich Thanks for putting together that list!
In general, I like the idea of having this method support an optional block, but we would need to benchmark it to ensure it doesn't have an undesired slow down in the `exchange_value(:... -
05:34 PM Feature #20300: Hash: set value and get pre-existing value in one call
- Some other examples from other languages:
- [Java](https://docs.oracle.com/javase/8/docs/api/java/util/HashMap.html#put-K-V-) and [Kotlin](https://kotlinlang.org/api/latest/jvm/stdlib/kotlin.collections/-hash-map/put.html) call this `... -
04:46 PM Feature #20300: Hash: set value and get pre-existing value in one call
- @matheusrich I like that name in general, but it's really similar to the existing [`Hash#store`](https://ruby-doc.org/3.3.0/Hash.html#method-i-store) and the distinction is non-obvious.
Swift calls this [`updateValue(_:forKey:)`](http... -
04:42 PM Feature #20300: Hash: set value and get pre-existing value in one call
- Rust [calls this method `insert`](https://doc.rust-lang.org/std/collections/struct.HashMap.html#method.insert):
> Inserts a key-value pair into the map.
> ...
> ``` -
08:49 PM Revision edc7b73f (git): Remove pointer check in moved_or_living_object_strictly_p
- We don't need to check that the object is pointer to the GC heap in
moved_or_living_object_strictly_p because it is called during reference
updating, which does not free pages so it can never point to an object
that is not on the GC heap. -
08:09 PM Revision 7c4bf61a (git): [ruby/prism] Follow RuboCop's parser engine support
- With the introduction of `Prism::Translation::Parser` to RuboCop (RuboCop AST),
the number of arguments for `RuboCop::AST::ProcessedSource#parser_class` internal API will be changed:
https://github.com/rubocop/rubocop-ast/pull/277
## Be... -
08:05 PM Feature #20298: Introduce `Time()` type-cast / constructor.
- I would like to register a dissenting opinion about the protocol :)
I believe that `ClassName()` convention, while old, is one of the clumsy parts of the Ruby API: it is kinda the only place where two absolutely unrelated things (a me... -
07:52 PM Revision 08731182 (git): Change is_garbage_object to return a bool
-
07:52 PM Revision 3c44f6da (git): Simplify is_garbage_object
-
07:30 PM Feature #20275: Avoid extra backtrace entries for rescue and ensure
- JRuby also does not have a separate frame for rescues and ensures and we support removing these entries from backtraces.
-
03:57 AM Feature #20275: Avoid extra backtrace entries for rescue and ensure
- I agree with removing `ensure in` and `rescue in` entries from backtraces.
Matz.
-
06:00 PM Revision e14a68a1 (git): [ruby/prism] Disallow it implicit in eval
- https://github.com/ruby/prism/commit/6fcb8fc974
-
05:50 PM Revision 11f12136 (git): YJIT: Support splat with C methods with -1 arity
- Usually we deal with splats by speculating that they're of a specific
size. In this case, the C method takes a pointer and a length, so
we can support changing sizes just fine. -
05:10 PM Revision 1f740cd1 (git): Remove is_swept_object
- The name is misleading, as it seems like the function checks whether the
object is swept or not. But the function only checks whether the page is
before or after sweeping. -
04:51 PM Bug #20308 (Closed): `it` and numbered parameters do not work in `eval`
-
04:51 PM Bug #20308: `it` and numbered parameters do not work in `eval`
- Ahh! Thank you @jeremyevans0 and @alanwu I knew there must have been a reason. I'll close this.
-
04:48 PM Bug #20308: `it` and numbered parameters do not work in `eval`
- Looks like it's a known limitation and discussed before in #18837.
-
04:45 PM Bug #20308: `it` and numbered parameters do not work in `eval`
- My understanding is the parse.y behavior is expected, because use of `_1`/`it` inside the block changes the block's arity:
```ruby
lambda{it}.arity
# => 1
lambda{eval('it')}.arity
# => 0
```
So if we supported `eval('it')` in ... -
04:33 PM Bug #20308: `it` and numbered parameters do not work in `eval`
- Interesting behavior. I'd expect that to work since other "kinds of arguments" work:
```rb
def foo(*)
eval "puts(*)"
end
def foo(**)
eval "puts(**)"
end
def foo(...)
eval "puts(...)"
end
``` -
01:35 PM Bug #20308 (Closed): `it` and numbered parameters do not work in `eval`
- I am not sure if this is a purposeful restriction or not, so I apologize if this is not a "bug" per se.
Currently if you use `it` or `_1` (numbered parameters) in `eval` they do not work with `compile.c`:
```
irb(main):001> 1.tap ... -
04:05 PM Revision f67c9d00 (git): [ruby/prism] Switch invalid _1 targeting even on syntax error
- https://github.com/ruby/prism/commit/40dec909b7
-
04:05 PM Revision fc368827 (git): [ruby/prism] Ensure symbol nodes not in interpolated symbol
- https://github.com/ruby/prism/commit/e1a9a1d478
-
03:57 PM Bug #20090: Anonymous arguments are now syntax errors in unambiguous cases
- @nobu I hate to bother you as well, but I just want to make sure someone sees this before Ruby 3.3.1 is cut.
-
03:03 PM Revision 2396b7a6 (git): Change is_live_object to return a bool
-
03:03 PM Revision 9ba53cb6 (git): Simplify is_live_object
- 11:19 AM Revision 5efe386c (git): [DOC] Fix typo in GC documentation
- The documentation for GC.start was incorrect. It said that the
`immediate_sweep` keyword argument would defer sweeping when set to
`true`, but it should have said that it would defer sweeping when set to
`false`.
The commit will also fi... -
10:40 AM Revision d7730d3a (git): Constify `literal_type` unless universal parser
-
05:51 AM Bug #20302 (Closed): Multiple refinements cannot be applied to the same module
- Applied in changeset commit:git|d50f9ca2dd416d92152cd958b5f39496088481b0.
----------
[Bug #20302] Multiple refinements cannot be applied to the same module
In the following code, the iclass tree of refinements in cref should be <iclass... -
05:51 AM Bug #20305 (Closed): commit 1d2d25dcadda0764f303183ac091d0c87b432566 breaks grapheme_clusters
- Applied in changeset commit:git|3a04ea2d0379dd8c6623c2d5563e6b4e23986fae.
----------
[Bug #20305] Fix matching against an incomplete character
When matching against an incomplete character, some `enclen` calls are
expected not to excee... -
05:51 AM Revision d50f9ca2 (git): [Bug #20302] Multiple refinements cannot be applied to the same module
- In the following code, the iclass tree of refinements in cref should be <iclass of Kernel@M2> -> <iclass of Kernel@M1> -> Kernel.
However, the iclass tree was broken because of code for included modules of refinements in rb_using_refine... -
04:58 AM Revision 3a04ea2d (git): [Bug #20305] Fix matching against an incomplete character
- When matching against an incomplete character, some `enclen` calls are
expected not to exceed the limit, and some are expected to return the
required length and then the results are checked if it exceeds. - 04:58 AM Revision 7b56353d (git): Add a failing test for https://bugs.ruby-lang.org/issues/20305.
- This bug demonstrates the issue I reported. It passes on commit
https://github.com/ruby/ruby/commit/114e71d06280f9c57b9859ee4405ae89a989ddb6
but does not pass on commit (the immediate child of the above commit)
https://github.com/ruby/ru... -
04:46 AM Bug #20307: `Hash#update` from compare_by_identity hash can have unfrozen string keys
- https://github.com/ruby/ruby/pull/10099
-
03:33 AM Bug #20307 (Closed): `Hash#update` from compare_by_identity hash can have unfrozen string keys
- I don't think this behavior is expected.
```ruby
i = Hash.new.compare_by_identity
k = "a"
i[k] = 0
h = {}.update(i)
p h.compare_by_identity? # => false
p h["a"] # => 0
k.upcase!
# `k` is still in `h`.
p h.... -
04:22 AM Revision 3ca8b4ae (git): [ruby/prism] Support -p, -n, -a, and -l command line options
- https://github.com/ruby/prism/commit/959eb506ca
-
03:33 AM Revision bfb2dc8a (git): [rubygems/rubygems] Warn on empty or open required_ruby_version specification attribute.
- https://github.com/rubygems/rubygems/commit/e4bb33747a
-
03:17 AM Misc #20035 (Closed): Command-line settings move from parser to compiler
-
02:47 AM Revision 1745dd26 (git): Ignore miss-and-revised commits [ci skip]
-
01:31 AM Revision 316d1e10 (git): [ruby/tmpdir] Fix for environment without git
- https://github.com/ruby/tmpdir/commit/3f1f2260eb
-
01:31 AM Revision cbbb98ba (git): [ruby/tempfile] Fix for environment without git
- https://github.com/ruby/tempfile/commit/f224164979
-
01:25 AM
Bug #5179 (Closed): Complex#rationalize and to_r with approximate zeros
- Applied in changeset commit:git|54a5b829442eb7ed1f4a2794ebb26696cf784e64.
----------
Handle zero-like imaginary part as zero in to_r (#9581)
Fixes [Bug #5179] - 12:37 AM Revision 54a5b829 (git): Handle zero-like imaginary part as zero in to_r (#9581)
- Fixes [Bug #5179]
02/26/2024
-
10:50 PM Revision 89f0c0ce (git): Use `'\n'?` instead of `opt_nl`
-
10:05 PM Revision 78ae6dbb (git): Remove rb_objspace_marked_object_p
- rb_objspace_marked_object_p is no longer used in the objspace module, so
we can remove it. -
10:05 PM Revision 7538703d (git): Make rb_objspace_data_type_memsize private
- rb_objspace_data_type_memsize is not used in the objspace module, so we
can make it private. -
10:04 PM Revision 81dded10 (git): [rubygems/rubygems] Skip to load vendored libraries if it's already loaded
- https://github.com/rubygems/rubygems/commit/3f5093fac9
-
10:04 PM Revision c3427265 (git): [rubygems/rubygems] Keep compatiblity for RG 3.5
- https://github.com/rubygems/rubygems/commit/d004e36c44
-
10:04 PM Revision 8b22198e (git): [rubygems/rubygems] Use wrapper file for vendored tsort
- https://github.com/rubygems/rubygems/commit/93514afa28
-
10:04 PM Revision d220d273 (git): [rubygems/rubygems] Use renamed file on bundler
- https://github.com/rubygems/rubygems/commit/d198ec36f2
-
10:04 PM Revision d2da774f (git): [rubygems/rubygems] Rename wrapper files for vendored libraries with 'vendored_' prefix
- https://github.com/rubygems/rubygems/commit/cfc908c8c1
-
10:03 PM Revision b8572c3f (git): BASERUBY is now >= 3.0
-
08:13 PM Feature #20290 (Closed): Add API for C extensions to free memory
- I opened #20306 to succeed this ticket.
-
03:51 PM Feature #20290: Add API for C extensions to free memory
- > There already is ruby_vm_at_exit(). What's wrong with that?
I didn't know that ruby_vm_at_exit exists. I think ruby_vm_at_exit can do everything in this feature. I might close this ticket in that case. -
08:12 PM Feature #20306 (Closed): Add rb_free_at_exit_p
- GitHub PR: https://github.com/ruby/ruby/pull/10104
From ticket [#20290](https://bugs.ruby-lang.org/issues/20290#note-6), I found that C extensions could use ruby_vm_at_exit to register hooks to free memory at shutdown. However, they c... -
07:34 PM Revision c9b6cd42 (git): Remove unused rb_objspace_each_objects_without_setup
-
07:28 PM Bug #20305: commit 1d2d25dcadda0764f303183ac091d0c87b432566 breaks grapheme_clusters
- I added a failing test to reproduce this issue in this PR: https://github.com/ruby/ruby/pull/10103
-
07:02 PM Bug #20305: commit 1d2d25dcadda0764f303183ac091d0c87b432566 breaks grapheme_clusters
- fablestales (Fable Tales) wrote:
> given a script:
> ...
to clarify: grapheme_clusters used to ignore partial characters from a byteslice, now it does not. -
06:58 PM Bug #20305 (Closed): commit 1d2d25dcadda0764f303183ac091d0c87b432566 breaks grapheme_clusters
- given a script:
```
#script.rb
p "안녕".byteslice(0, 4).grapheme_clusters
```
The commit 1d2d25dcadda0764f303183ac091d0c87b432566 (https://github.com/ruby/ruby/commit/1d2d25dcadda0764f303183ac091d0c87b432566) breaks the grapheme_clu... -
06:29 PM Revision 34bad6d6 (git): [ruby/prism] Triple-check prism encodings
- https://github.com/ruby/prism/commit/ab7f261354
-
05:37 PM Bug #20301: `Set#add?` does two hash look-ups
- I don't mind it @Dan0042, but that's a secondary issue IMO. The block call defeats the benefit of this optimization. It'll even slow down the case where you're looking up pre-existing objects (that's currently net-even perf after these c...
-
03:42 PM Bug #20301: `Set#add?` does two hash look-ups
- @Dan0042 That's related to #17342 then, and also known as `compute_if_absent` in [concurrent-ruby](https://ruby-concurrency.github.io/concurrent-ruby/1.1.5/Concurrent/Map.html#compute_if_absent-instance_method).
-
03:31 PM Bug #20301: `Set#add?` does two hash look-ups
- Now I understand why you proposed #20300 Hash#update_value
However I'd like to suggest an alternative approach for your consideration:
```ruby
def add?(k)
added = false
@hash.add(k){ added = true } #call block only if k not in @has... -
02:42 AM Bug #20301 (Open): `Set#add?` does two hash look-ups
- A common usage of `Set`s is to keep track of seen objects, and do something different whenever an object is seen for the first time, e.g.:
```ruby
SEEN_VALUES = Set.new
def receive_value(value)
if SEEN_VALUES.add?(value)
put... - 05:12 PM Revision f5412236 (git): [rubygems/rubygems] Bump rb-sys
- Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.88 to 0.9.89.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.88...v0.9.89)
---
updated-depende... - 05:12 PM Revision 9c5a91e3 (git): [rubygems/rubygems] Bump rb-sys
- Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.88 to 0.9.89.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.88...v0.9.89)
---
updated-depende... -
04:38 PM Revision 27e3e443 (git): Fix verify_internal_consistency_i for zombie objects
- FL_FINALIZE is now kept for zombie objects.
-
04:21 PM Feature #20300: Hash: set value and get pre-existing value in one call
- In my mind, `get_and_set` is clear as it is in the order the operations are done.
But if you want clearer, `get_then_set` puts emphasis on the order.
Things like `exchange` and `swap` can sound like swapping the value between two k... -
10:38 AM Feature #20300: Hash: set value and get pre-existing value in one call
- Not so sure about these names. Note that get_and_set() may have people wonder why it is not set_and_get(). :D
In regards to .update_value() people could ask why the old value is returned rather than the new one.
I guess **exchange_valu... -
10:16 AM Feature #20300: Hash: set value and get pre-existing value in one call
- FWIW, concurrent-ruby calls this `get_and_set`: https://ruby-concurrency.github.io/concurrent-ruby/master/Concurrent/Map.html#get_and_set-instance_method
`Hash#exchange_value` sounds fine to me too. -
04:18 AM Feature #20300: Hash: set value and get pre-existing value in one call
- The name `update_value` doesn't feel to return the previous value, to me.
What about `Hash#exchange_value`? -
02:42 AM Feature #20300 (Open): Hash: set value and get pre-existing value in one call
- When using a Hash, sometimes you want to set a new value, **and** see what was already there. Today, you **have** to do this in two steps:
```ruby
h = { k: "old value" }
# 1. Do a look-up for `:k`.
old_value = h[:k]
# 2. Do anot... -
03:55 PM Feature #17342: Hash#fetch_set
- It's confusing that this ticket, #17342, is striked out even though the status is "Feedback".
Another name for this could be `Hash#add`; at least that's the terminology used in memcached and I believe some other caching servers. -
03:40 PM Bug #20206 (Closed): PTY.spawn seems to fail to capture the output of "echo foo" once in a while
-
03:34 PM Bug #20206: PTY.spawn seems to fail to capture the output of "echo foo" once in a while
- Changing the command to `"echo 'foo'"` or `"stdbuf -i0 -o0 -e0 echo foo"` doesn't reproduce the failure.
So this could very much be caused by buffering issues on the terminal side and not a bug in ruby. I think we can close this issue. -
03:39 PM Bug #20304: Memory leak when setting Encoding.default_internal
- Ah, thank you! I would have expected that to be in 3.3-head too.
-
02:55 PM Bug #20304 (Closed): Memory leak when setting Encoding.default_internal
- This was fixed in: https://github.com/ruby/ruby/pull/9409
-
02:28 PM Bug #20304 (Closed): Memory leak when setting Encoding.default_internal
- Problem is present in Ruby 3.2.2, 3.2.3, 3.3.0. Didn't check before.
Put this in a file:
```
10.times do
100000.times do
Encoding.default_internal = nil
end
puts `ps -o rss= -p #{$$}`.to_i
end
```
Result:
```... -
02:48 PM Revision 1ce3d9ac (git): [ruby/prism] Fix xstring heredoc parser translator
- https://github.com/ruby/prism/commit/4e0f703975
-
02:35 PM Revision 99d0f687 (git): [ruby/prism] Fix parser translator for pinned expression
- https://github.com/ruby/prism/commit/eeae07193b
-
02:26 PM Revision af3145bb (git): [ruby/prism] Handle negated numeric in parser translation
- https://github.com/ruby/prism/commit/5877a95be4
-
02:20 PM Revision 83e676e5 (git): Don't lookup finalizers if FL_FINALIZE flag not set
- The FL_FINALIZE flag is set when there are finalizers for the object. We
can improver performance by not looking up in the table if the flag is
not set.
Using the following C extension:
#include "ruby/ruby.h"
static void data_... -
01:58 PM Revision 1a57fee7 (git): [ruby/prism] Fix multi write with modifier rescue
- https://github.com/ruby/prism/commit/8ea7a3270f
-
01:45 PM Revision 815db5c0 (git): Update to ruby/spec@3a510bb
-
01:45 PM Revision 40c9a3da (git): Update to ruby/mspec@36e8ed8
- 11:45 AM Revision 1ca3482e (git): Fix compilation for platforms without pthread
- Found when compiling ruby for windows-arm64 using msys2
Missing return type for function Init_lock_native_thread
lock_native_thread.c:45:1: error: type specifier missing, defaults to 'int'; ISO C99 and later do not support implicit int ... -
10:10 AM Bug #20302 (Closed): Multiple refinements cannot be applied to the same module
- If we are using multiple refinements for the Kernel module, it seems that only the last refinement is enabled.
In the following example, we can call `f2` of M2, which is enabled later. but cannot call `f1` of M1.
```ruby
module M1
... -
06:56 AM Revision dddf6242 (git): [ruby/tempfile] Use `IO.popen` to list files
- - Redirect `git ls-files` without shelling out.
- When building by `gem`, `__FILE__` is the path name given in the
command line, or the gemspec file name in the current directory. In
that case, comparison it and expanded path never... -
06:55 AM Revision 38e3ad26 (git): Update gemspec according to the recent bundler template
-
06:54 AM Revision 164e464b (git): [ruby/strscan] Add a method for peeking and reading bytes as
- integers
(https://github.com/ruby/strscan/pull/89)
This commit adds `scan_byte` and `peek_byte`. `scan_byte` will scan the
current byte, return it as an integer, and advance the cursor.
`peek_byte` will return the current byte as an int... -
06:27 AM Revision 7176c186 (git): [rubygems/rubygems] Fix `Fiddle::Handle` leaks
- Windows disallows to unlink opened files.
https://github.com/rubygems/rubygems/commit/e0b63754bf -
06:27 AM Revision 7dd4b30b (git): [rubygems/rubygems] The temporary directory must been removed
- On Windows, open files cannot be removed and `FileUtils.rm_rf` just
silently fails. This means also handle leaks, not only temporary file
leaks.
https://github.com/rubygems/rubygems/commit/80a9c3ec08 -
06:27 AM Revision 65f40967 (git): [rubygems/rubygems] Get rid of too long paths
- This is a fix-up of #7483.
Test method names in Rubygems are often very long, and the path under
the temporary directory generated from them can easily exceed system
limits.
Even without including the method name in the path name, by s... -
06:27 AM Revision 91ec1fc4 (git): Revert "Revert rubygems tempdir check"
- This reverts commit 6aa5067ab970e70693529cde5102fab587158f7f.
-
05:55 AM Feature #20108 (Closed): Introduction of Happy Eyeballs Version 2 (RFC8305) in Socket.tcp
- This proposal has been merged at https://github.com/ruby/ruby/commit/9ec342e07df6aa5e2c2e9003517753a2f1b508fd
-
05:46 AM Feature #20108: Introduction of Happy Eyeballs Version 2 (RFC8305) in Socket.tcp
As previously posted, I was considering a way to avoid name resolution within a thread when the host is single-stack.
However, it's clear that it will take a significant cost to associate with determining whether the host is single-s...-
04:20 AM Revision 45919899 (git): Expand Launchable into ubuntu workflow
-
04:12 AM Revision d4e24021 (git): Revise 9ec342e07df6aa5e2c2e9003517753a2f1b508fd
-
03:29 AM Revision a0f7de81 (git): [Bug #20296] Fix the default assertion message
-
03:23 AM Bug #20299: Tracepoint staying enable after a disable
- And here is a similar problem, using only the block form (no calls to disable):
```
def check_speed(msg = nil)
t1 = Time.now.to_f
a = 0
1000000.times { |i|
a += 10
}
t2 = Time.now.to_f
puts "#{t2-t1} - #{msg}"
... -
01:06 AM Bug #20299 (Open): Tracepoint staying enable after a disable
- Problem is present in Ruby 3.2.2, 3.2.3, 3.3.0. Didn't check before.
It seems that TracePoint can sometime be "stuck" enabled after using disabled once on it.
Here is a reproduction step using a "check speed" method that just does ... - 03:14 AM Revision 9ec342e0 (git): Introduction of Happy Eyeballs Version 2 (RFC8305) in Socket.tcp (#9374)
- * Introduction of Happy Eyeballs Version 2 (RFC8305) in Socket.tcp
This is an implementation of Happy Eyeballs version 2 (RFC 8305) in Socket.tcp.
[Background]
Currently, `Socket.tcp` synchronously resolves names and makes connection a... - 03:02 AM Revision 616b4146 (git): Bump capstone from 0.11.0 to 0.12.0 in /yjit (#10094)
- Bumps [capstone](https://github.com/capstone-rust/capstone-rs) from 0.11.0 to 0.12.0.
- [Release notes](https://github.com/capstone-rust/capstone-rs/releases)
- [Changelog](https://github.com/capstone-rust/capstone-rs/blob/master/CHANGEL... -
02:56 AM Bug #20296 (Closed): Complex(:sym, exception: false) generate exception with weird timing
- Applied in changeset commit:git|dc146babf47a84bbd1f176d766637d4a40327019.
----------
[Bug #20296] Clear errinfo when `exception: false` -
02:56 AM Revision f23d5028 (git): [Bug #20296] Refine the test
-
02:56 AM Revision dc146bab (git): [Bug #20296] Clear errinfo when `exception: false`
- 02:47 AM Revision a1ca96e1 (git): Bump github/codeql-action from 3.24.4 to 3.24.5
- Bumps [github/codeql-action](https://github.com/github/codeql-action) from 3.24.4 to 3.24.5.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md... -
12:34 AM Feature #20298 (Open): Introduce `Time()` type-cast / constructor.
- Many Ruby primitive types have constructors, e.g. `Integer(...)`, `String(...)`, `Float(...)`, etc. These usually convert from some subset of types, e.g. `Float(1) -> 1.0` will convert an Integer to a Float, and `Float("1") -> 1.0` will ...
02/25/2024
-
04:13 PM Misc #20281: DevMeeting-2024-03-14
- * [Feature #13557] Allow to pass Array of `Backtrace::Location` to `Exception#set_backtrace` (byroot)
- Proposed patch: https://github.com/ruby/ruby/pull/10017
- I think this is better than passing an Array of String because with str... -
03:22 PM Revision c976cb52 (git): [ruby/irb] Add help messages to `show_source` and `show_doc`
- commands
(https://github.com/ruby/irb/pull/887)
* Add help message to the show_source command
* Add help message to the show_doc command
https://github.com/ruby/irb/commit/06f43aadb3 -
03:21 PM Revision 898f30f8 (git): [ruby/irb] Refactor IRB::Context#prompting
- (https://github.com/ruby/irb/pull/889)
https://github.com/ruby/irb/commit/7b323ee514 -
12:22 PM Feature #20290: Add API for C extensions to free memory
- There already is `ruby_vm_at_exit()`. What's wrong with that?
-
10:12 AM Revision 3c4d0b13 (git): Exclude `.mailmap` from snapshots [ci skip]
- It is only for old commits, useless without full repository logs.
-
10:03 AM Revision eb661364 (git): Add `.mailmap` file to map SVN IDs [ci skip]
-
09:29 AM Bug #18743: Enumerator#next / peek re-use each others stacktraces
- ruby_3_2 5e4606423da96c2e26b00981c22bddfce0d970bf merged revision(s) f15123c34ce80f3928612befe2a9aaf4c9d27fda.
-
09:29 AM Revision 5e460642 (git): merge revision(s) f15123c34ce80f3928612befe2a9aaf4c9d27fda: [Backport #18743]
- Fix stack trace for rescued StopIteration
---
enumerator.c | 15 +++++++++++++--
test/ruby/test_enumerator.rb | 20 ++++++++++++++++++++
2 files changed, 33 insertions(+), 2 deletions(-) -
08:36 AM Revision c16b5075 (git): [ruby/tmpdir] [DOC] `require` inside each method on Dir
- (https://github.com/ruby/tmpdir/pull/31)
https://github.com/ruby/tmpdir/commit/a1ec977923 -
08:32 AM Revision c0c56d17 (git): [ruby/tmpdir] Use `IO.popen` to list files
- - Redirect `git ls-files` without shelling out.
- When building by `gem`, `__FILE__` is the path name given in the
command line, or the gemspec file name in the current directory. In
that case, comparison it and expanded path never... - 08:07 AM Revision 61089620 (git): Update default gems list at 2c1b7bc51c335d85da994c87dfb37c [ci skip]
-
08:07 AM Revision 2c1b7bc5 (git): [ruby/reline] Bump version to v0.4.3
- (https://github.com/ruby/reline/pull/642)
https://github.com/ruby/reline/commit/5137a3f3af -
07:08 AM Revision 2721a64e (git): [ruby/reline] Use gray and white as the default dialog theme
- (https://github.com/ruby/reline/pull/637)
I think this has a few benefits:
1. Most terminal themes generally don't change or pick similar colors
for their black and white colors, so it's more likely to be consistent
across termi... -
05:04 AM Bug #19973: Duplicate keyword argument names don't always warn
- reverted backport commit at 1b9ff146e38c348519434754e0466352b8b25c50.
it cause CI failures.
http://rubyci.s3.amazonaws.com/ubuntu2204/ruby-3.2/log/20240225T042407Z.fail.html.gz -
02:52 AM Bug #19973: Duplicate keyword argument names don't always warn
- ruby_3_2 24dd529750c08b5603fb418a4f34998b9bf6c8f9 merged revision(s) c8d162c889008028b148437d02f36f4edaa749fd.
-
05:04 AM Revision 7356067b (git): [ruby/tmpdir] Update gemspec according to the recent bundler template
- https://github.com/ruby/tmpdir/commit/4ef7bc4f2a
-
05:03 AM Revision 1b9ff146 (git): Revert "merge revision(s) c8d162c889008028b148437d02f36f4edaa749fd: [Backport #19973]"
- This reverts commit 24dd529750c08b5603fb418a4f34998b9bf6c8f9.
-
04:39 AM Revision 012a0b91 (git): [ruby/resolv] Simplify adding new entries
- https://github.com/ruby/resolv/commit/081b8df705
-
04:39 AM Revision 30b99868 (git): [ruby/resolv] Treat hostname as same as aliases
- https://github.com/ruby/resolv/commit/fa812d6454
-
03:50 AM Revision 2c0cf683 (git): Launchable: Fix the warning of pip
-
02:52 AM Revision 24dd5297 (git): merge revision(s) c8d162c889008028b148437d02f36f4edaa749fd: [Backport #19973]
- [Bug #19973] Warn duplicated keyword arguments after keyword splat
---
parse.y | 11 +++++++----
test/ruby/test_syntax.rb | 6 ++++++
2 files changed, 13 insertions(+), 4 deletions(-)
02/24/2024
-
10:08 PM Bug #20297 (Closed): Segmentation fault with ubuntu 22.04 ,Ruby 2.5.3 and mysql2, when I try to run console query
- This is a likely a bug in the mysql2 gem, you could ask them: https://github.com/brianmario/mysql2
In any case, Ruby 2.5 is end of life and no longer supported. -
09:01 PM Bug #20297 (Closed): Segmentation fault with ubuntu 22.04 ,Ruby 2.5.3 and mysql2, when I try to run console query
- I am trying to run query in rails console, but it gives Segmentation fault error, Ubuntu 22.04, MySql version 8.0,34, ruby 2.5.3, rails, 5.1.7
Here is my error output when I run any query in console,
rails c
User.first
When I run ... -
09:01 PM Bug #20296 (Closed): Complex(:sym, exception: false) generate exception with weird timing
- Happens in Ruby 3.2.2, 3.2.3 and 3.3.0 (didn't test others).
Add this to a file and execute it as-is:
```
3.times { Complex(:sym, exception: false) }
puts "hi"
```
The output will be:
```
$ ruby local2.rb
hi
local2.rb:1... -
07:17 PM Misc #20013: Travis CI status
- FYI mspec has a `--timeout SECONDS` option, which should help identify which spec is hanging/very slow.
-
09:08 AM Misc #20013: Travis CI status
- jaruga (Jun Aruga) wrote in #note-19:
> We are seeing one of s390x build[1] is very slow, exceeding the maximum timeout 50 minutes, totally taking the `make test-all` build time for 1515 seconds (= about 25 minutes) So far this build is... -
09:01 AM Misc #20013: Travis CI status
- jaruga (Jun Aruga) wrote in #note-19:
> We are seeing one of s390x build[1] is very slow, exceeding the maximum timeout 50 minutes, totally taking the `make test-all` build time for 1515 seconds (= about 25 minutes) So far this build is... -
03:23 PM Bug #19967: Already installed libruby.dylib is used for test on macOS
- ruby_3_2 3960d894d98d20540e646a0d6c2186a2d676b96c merged revision(s) 665b4c5b2a31078d7db0173ad60daad0b463c1fd,642875e474b4e6a13770b1dbbc33d466ba5e0718,54b9b80b84760717aadb8bf67f638785ed895a58,361bce8d2c4c90a01eb3b7365a87dec0d93bb2b6.
-
03:23 PM Revision 3960d894 (git): merge revision(s) 665b4c5b2a31078d7db0173ad60daad0b463c1fd,642875e474b4e6a13770b1dbbc33d466ba5e0718,54b9b80b84760717aadb8bf67f638785ed895a58,361bce8d2c4c90a01eb3b7365a87dec0d93bb2b6: [Backport #19967]
- [Bug #19967] Reset `LIBPATHENV` env after started
Not to affect other tools invoked as child processes.
---
common.mk | 3 ++-
template/Makefile.in | 3 +++
template/fake.rb.in | 3 ++... -
10:02 AM Misc #20254: Add Launchable into Ruby CI
- jaruga (Jun Aruga) wrote in #note-5:
> ...
> ...
Note the https://github.com/ruby/ruby/pull/9777 mentioned above was merged and integrated into the GitHub Actions CI yesterday. Everyone can check how the test reports look like on the p... -
04:29 AM Feature #20274: Add RubyVM::ASAN.enabled?
- I opened https://github.com/ruby/ruby/pull/10087 to implement this as an extension in `ext/-test-/` as suggested.
-
04:19 AM Revision e9e752c7 (git): Assert running_iseq before using it
- When running_iseq happens to be 0, it's better to fail on the assertion
rather than referencing the null pointer. -
03:39 AM Revision 804b2a37 (git): [ruby/prism] Rebase against main
- https://github.com/ruby/prism/commit/813e20d449
- 03:39 AM Revision aa884140 (git): [ruby/prism] Less code modifications. More steep:ignore for now
- https://github.com/ruby/prism/commit/7905bdbf83
- 03:39 AM Revision dfee0337 (git): [ruby/prism] Replace awkward code changes with steep:ignore
- Also remove RBS for currently ignored files. Will follow-up when those
check fully in later PRs.
https://github.com/ruby/prism/commit/2cae58f86d -
03:39 AM Revision 66565e36 (git): [ruby/prism] Add documentation for Location#source!
- https://github.com/ruby/prism/commit/467e1cc2c4
-
03:39 AM Revision 8fa18435 (git): [ruby/prism] Relax Location#source to be optional
- https://github.com/ruby/prism/commit/9f00fe7510
-
03:39 AM Revision bfbaafbd (git): [ruby/prism] Make rake check_annotations verify public RBS
- https://github.com/ruby/prism/commit/db78eef6a2
-
03:39 AM Revision ca8a6265 (git): [ruby/prism] Fix my RipperCompat logic mistake from expansion for steep flow analysis
- https://github.com/ruby/prism/commit/f71a390c12
-
03:39 AM Revision 935d4fab (git): [ruby/prism] Remove Ripper from public RBS, type-assert remaining issues
- https://github.com/ruby/prism/commit/5fda7a0760
-
03:39 AM Revision 7556fd93 (git): [ruby/prism] Split private types
- https://github.com/ruby/prism/commit/0209d093ec
-
03:39 AM Revision e03e9c36 (git): [ruby/prism] wip: node unions
- https://github.com/ruby/prism/commit/99a71675d4
-
03:39 AM Revision 46fe3dc7 (git): [ruby/prism] Fix IgnoredNewlineToken comparison of Ripper::Lexer::State
- https://github.com/ruby/prism/commit/8c9502f61b
-
03:39 AM Revision b9b07125 (git): [ruby/prism] Use steep to type check RBS and Ruby files
- https://github.com/ruby/prism/commit/eabed9f4fd
-
03:12 AM Feature #20290: Add API for C extensions to free memory
- Thanks Peter, that all sounds reasonable to me.
> If we want to use this feature for general bound library destruction, it's better that this feature is invoked even when RUBY_FREE_AT_EXIT isn't 1.
Hm. I wonder if extension develop... -
02:43 AM Feature #20290: Add API for C extensions to free memory
- mdalessio (Mike Dalessio) wrote in #note-3:
> I would consider calling libxml2's `xmlCleanupParser` from Nokogiri's `Destruct` function if this feature is made available, because libxml2 keeps some long-lived global state (like charac... -
03:02 AM Bug #20085: Fiber.new{ }.resume causes Segmentation fault for Ruby 3.3.0 on aarch64-linux
- ^ that docker fix unfortunately does not work for the Debian Bookworm image.
Is there anyone reading this that can turn whatever crank will get the 3.3.0 backport to materialize into a binary release? Based on https://github.com/ruby/d... -
02:56 AM Revision fc656ace (git): [PRISM] Sync to latest prism
-
12:21 AM Revision e439419b (git): [DOC] Fix a typo