Activity
From 10/12/2023 to 10/18/2023
10/18/2023
-
11:46 PM Revision d2b0c9da (git): YJIT: Add a live ISeq counter
- It's an estimator for application size and could be used as a
compilation heuristic later.
Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisvert@shopify.com>
Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com> -
11:03 PM Feature #19541: Proposal: Generate frame unwinding info for YJIT code
- That's awesome and I'm super looking forward to trying to profile our apps with `perf` once I finally get YJIT enabled! Assuming most of the hot code turns out to be JIT'd, this should definitely give a fairly good picture of the Ruby st...
-
10:16 PM Feature #19541 (Feedback): Proposal: Generate frame unwinding info for YJIT code
- I added `--yjit-perf` on Ruby master https://github.com/ruby/ruby/pull/8697. It does not unwind Ruby frames in a single YJIT frame like DWARF would be able to do. But I think it's similar to how C functions are profiled with `--call-grap...
-
10:05 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- > Just FTR, there is no other Ruby installed in the environment during build, so this is certainly not an issue.
OK, it explains why https://github.com/ruby/ruby/pull/8689 did not help. If that part is fine, I have nothing else to try... -
09:42 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- k0kubun (Takashi Kokubun) wrote in #note-13:
> Subprocess tests like `test_yjit` in test-all generally seem to have a problem of picking a wrong Ruby
Just FTR, there is no other Ruby installed in the environment during build, so this... -
05:27 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- I'm afraid we need a repro from you on CI (or anything I can exactly reproduce, like on Dockerfile) then. Subprocess tests like `test_yjit` in test-all generally seem to have a problem of picking a wrong Ruby, and it could be very much s...
-
07:46 AM Bug #19921: TestYJIT#test_bug_19316 test failure
- I tried commit:6c46ccf226bc6440743b51af713864c062eba27f but I see the same test failure.
-
01:00 AM Bug #19921: TestYJIT#test_bug_19316 test failure
- Can you try the latest master (newer than commit:7a3a98e2be69fd3fa68e6ee1afa43c3160f22254)? https://github.com/ruby/ruby/pull/8689 might help.
- 10:01 PM Revision 0ac6fb22 (git): Add test for many ivars
- Co-authored-by: John Hawthorn <john@hawthorn.email>
- 10:01 PM Revision a7032b80 (git): Revert "shape.h: Make attr_index_t uint8_t"
- This reverts commit e3afc212ec059525fe4e5387b2a3be920ffe0f0e.
-
09:13 PM Revision de076450 (git): [ruby/drb] Support :SSL{Min,Max}Version config options
- These are necessary to get the tests passing with LibreSSL 3.8.1+,
which dropped support for TLSv1.0 and TLSv1.1 for security reasons.
This updates the tests to use TLSv1.2 on OpenBSD. This is only
strictly necessary on OpenBSD 7.4+, b... -
09:07 PM Revision f51b92fe (git): YJIT: Add --yjit-perf (#8697)
- Co-authored-by: Alan Wu <alansi.xingwu@shopify.com>
- 07:34 PM Revision 58ee088b (git): Bump rustix from 0.38.2 to 0.38.19 in /yjit/bindgen
- Bumps [rustix](https://github.com/bytecodealliance/rustix) from 0.38.2 to 0.38.19.
- [Release notes](https://github.com/bytecodealliance/rustix/releases)
- [Commits](https://github.com/bytecodealliance/rustix/compare/v0.38.2...v0.38.19)
... - 07:20 PM Revision c46c529b (git): Update default gems list at 6873f96abc2a924b264b6ed3818b2f [ci skip]
-
07:19 PM Revision 6873f96a (git): [ruby/prism] Bump to version 0.15.1
- https://github.com/ruby/prism/commit/d906a8ceba
-
06:28 PM Feature #19744: Namespace on read
- Thanks @Eregon.
My main concern is that the gem author is not in control. You write your code, assume constants are stored in certain places, assume the nesting you are seeing with your eyes [*], and assume what constant resolution algo... -
05:02 PM Feature #19744: Namespace on read
- @fxn This proposal does not define multiple Object classes.
I think this proposal has limited value because if gems use this functionality they will multiply their memory footprint because each copy of a gem (with the same version) is... -
05:48 PM Feature #19931: to_int is not for implicit conversion?
- > So basically I thought that #to_i was for explicit conversion and #to_int for implicit conversion; is that not the case?
As far as I understand, it is exactly the case for operations that definitely expect an integer:
```ruby
o ... -
05:45 PM Feature #19931: to_int is not for implicit conversion?
- byroot (Jean Boussier) wrote in #note-6:
> I have no idea how much code it would break though.
It can't *break* code. It can only cause broken code (as in my example) to suddenly work.
Eregon (Benoit Daloze) wrote in #note-7:
> ...
I t... -
04:56 PM Feature #19931: to_int is not for implicit conversion?
- I think the coercion semantics are already quite complex, so we would need a convincing real-world use-case to make this more complicated.
-
04:35 PM Feature #19931: to_int is not for implicit conversion?
- To be fair, `+` does it for `to_str`:
```ruby
class Bar
def to_str
"bar"
end
end ... -
04:32 PM Feature #19931: to_int is not for implicit conversion?
- sawa (Tsuyoshi Sawada) wrote in #note-2:
> Your description suggests a contrast between `to_int` and `to_i`, but while you showed a code example using `to_int`, you have not shown anything using `to_i`.
If using `to_i` for explicit c... -
03:13 PM Feature #19931: to_int is not for implicit conversion?
- > 3. try the implicit conversion.
If I understood this correctly, that would allow doing things like
```ruby
1 + "1" # => 2
```
I hope that's not a direction we wanna follow. -
03:18 AM Feature #19931: to_int is not for implicit conversion?
- The order of such calculations is now:
1. known classes (e.g., `Integer#+` knows about `Float`)
2. `coerce` on the RHS.
Otherwise raise an error.
Might consider adding another step there.
3. try the implicit conversion. -
01:10 AM Feature #19931: to_int is not for implicit conversion?
- Your description suggests a contrast between `to_int` and `to_i`, but while you showed a code example using `to_int`, you have not shown anything using `to_i`. Furthermore, actually replacing `to_int` in your code with `to_i` does not se...
- 04:51 PM Revision 4b909bdb (git): Update default gems list at 0f1e040068fac01856c5c4c0ba9530 [ci skip]
-
04:49 PM Revision 0f1e0400 (git): [ruby/prism] Bump to version 0.15.0
- https://github.com/ruby/prism/commit/ee429f8d50
-
04:09 PM Revision 8210cc42 (git): [ruby/prism] Fix lex compat when dedent should be 0
- https://github.com/ruby/prism/commit/41c0e0e06e
-
04:08 PM Revision c82b10bb (git): [ruby/prism] Modify less of the CRuby locals
- https://github.com/ruby/prism/commit/aca24b3a17
-
04:08 PM Revision 5d060436 (git): [ruby/prism] Add * and & to methods with ...
- https://github.com/ruby/prism/commit/e8114a786a
-
04:08 PM Revision 4358dd20 (git): [ruby/prism] Extract out constant pool bucket bits to constants
- https://github.com/ruby/prism/commit/1985a9ba51
-
04:08 PM Revision f5f03229 (git): [ruby/prism] Provide "constant" constants, embedded in the code
- https://github.com/ruby/prism/commit/d469a56e7e
-
04:07 PM Bug #19932: Regexp o modifier freeze interpolation between method calls
- My apologies for my misunderstanding. Thanks for the detailed explanation. I now understand it's hard to do something else than the current behavior.
-
04:03 PM Bug #19932: Regexp o modifier freeze interpolation between method calls
- I don't think the documentation could be made significantly clearer, though potentially it could benefit from an additional example. It's expected that the `o` modifier works the way it does, and does not generate a new regexp with each...
-
02:29 PM Bug #19932: Regexp o modifier freeze interpolation between method calls
- I'm not sure I was clear.
It's not that clear reading the documentation that the "freeze" will continue to live outside the local scope. All examples are always outside a method definition. As for local variables I would expect `myreg... -
02:13 PM Bug #19932 (Closed): Regexp o modifier freeze interpolation between method calls
- It's expected and documented: https://docs.ruby-lang.org/en/master/regexp_rdoc.html#label-Interpolation+Mode
-
01:56 PM Bug #19932 (Closed): Regexp o modifier freeze interpolation between method calls
- Taken the following PoC:
```ruby
def poc(regexp)
hs = [
'azerty',
'azertyui',
'azertyuiop'
]
out = []
hs.each do |h|
out << h if /#{regexp}/.match?('azerty')
end
out
end
p poc('az')
p poc('w... -
02:41 PM Revision 4f401649 (git): Handle `Timeout::Error` reported from workers
-
02:23 PM Revision 9c973f95 (git): [ruby/prism] Use the unescaped regexp to scan for capture groups
- https://github.com/ruby/prism/commit/555551e8f2
-
02:23 PM Revision 2a6f7cd9 (git): [ruby/prism] Index{Operator,And,Or}WriteNode
- Right now, our Call{Operator,And,Or}WriteNode nodes represent two
different concepts:
```ruby
foo.bar += 1
foo[bar] += 1
```
These two statements are different in what they can support. The
former can never have arguments (or an openin... -
10:17 AM Revision ef3f9f1a (git): [rubygems/rubygems] Allow uninstalling multiple versions of same gem
- Currently, you can install multiple versions of the same gem just fine:
```
$ gem install simplecov:0.19.0 simplecov:0.22.0
Fetching simplecov-0.19.0.gem
Successfully installed simplecov-0.19.0
Parsing documentation for simplecov-0.19.0... -
09:52 AM Revision 8e6a2511 (git): Remove unnecessary and misleading casts
-
09:10 AM Revision 46b8846b (git): Show backtraces when failed
- If `assert_equal(backtrace_locations.size, profile_frames.size)` in
`TestProfileFrames#test_matches_backtrace_locations_main_thread`
failed, we do not have enough information about it like that:
```
1) Failure:
TestProfileFrames#t... -
09:01 AM Revision f546fe15 (git): Loosen assertion for flaky weak references test
-
07:10 AM Bug #19231: Integer#step and Float::INFINITY - inconsistent behaviour when called with and without a block
- ```
% docker run -it --rm rubylang/all-ruby env ALL_RUBY_SINCE=ruby-1.3 ./all-ruby -e 'inf = 1.0/0.0; 0.step(inf, 10) { |x| p x; break }'
ruby-1.3 /tmp/rbFgfjB4:1:in `/': divided by 0 (ZeroDivisionError)
... -
06:17 AM Bug #19929 (Closed): Warnings for `mutex_m`, `drb` and `base64` appears while the gem spec has explicit dependencies
- Fixed at https://github.com/ruby/ruby/commit/ac8ece81f26f29dc2f9d77fcdb0620a51ba26f1e
-
05:46 AM Bug #19929: Warnings for `mutex_m`, `drb` and `base64` appears while the gem spec has explicit dependencies
- HEAD version of Bundler didn't install default gems if locked version is same version of default gems.
master of Ruby always uses default gems under the `RbConfig::CONFIG['rubylibdir']` because latest version of default gems installed... -
02:06 AM Bug #19929: Warnings for `mutex_m`, `drb` and `base64` appears while the gem spec has explicit dependencies
- Thanks always. I could reproduce that.
```
$ RAILS_STRICT_WARNING=1 bin/test test/engine/test_test.rb
/Users/hsbt/Documents/github.com/rails/rails/activesupport/lib/active_support/message_encryptor.rb:4: warning: base64 which will b... -
05:51 AM Revision ac8ece81 (git): Tweak the grammar
-
05:51 AM Revision 46766e92 (git): normalize gem name without .so or .bundle
-
05:51 AM Revision 3b690b72 (git): reject bundled gems if they are declared in Gemfile
- 03:24 AM Revision be160859 (git): Bump actions/checkout from 4.1.0 to 4.1.1
- Bumps [actions/checkout](https://github.com/actions/checkout) from 4.1.0 to 4.1.1.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](http... -
03:19 AM Revision ff4c98f1 (git): Fix total count when filters given
-
01:36 AM Revision f13068af (git): Escape method names containing control characters
-
01:19 AM Revision ccd2f8c1 (git): Skip some timeout tests on s390x
- They are too unstable on the machine.
```
1) Failure:
TestRegexp#test_timeout_shorter_than_global [/home/chkbuild/chkbuild/tmp/build/20231018T230003Z/ruby/test/ruby/test_regexp.rb:1788]:
Expected |0.2 - 0.962938869| (0.762938869000000... -
12:57 AM Revision 6c46ccf2 (git): Prefer RbConfig.ruby over the 3.times fallback (#8691)
- It seems saner to use RbConfig.ruby than using ruby in a random ancestor
directory. -
12:47 AM Revision 7a3a98e2 (git): YJIT: Use RbConfig.ruby instead of EnvUtil.rubybin (#8689)
- Some people encounter an issue that test_yjit uses the installed Ruby
instead of the currently-running Ruby. It's fixed when they remove the
installed Ruby.
However, test_yjit should run the currently-running Ruby for testing
YJIT in su...
10/17/2023
-
10:36 PM Revision 36ee5d8c (git): YJIT: Fix clippy::redundant_locals
- > note: `#[deny(clippy::redundant_locals)]` on by default
On Rust 1.73.0. -
07:53 PM Feature #19931: to_int is not for implicit conversion?
- I may be wrong, but my understanding of it is that it's so the right hand side isn't always casted to the left-hand side type.
If `to_int` was invoked when doing `Integer + something`, then `1 + 1.5` would be `1 + (1.5).to_int` and wo... -
05:39 PM Feature #19931 (Open): to_int is not for implicit conversion?
- While reviewing some implicit vs explicit conversion concepts, I discovered that arithmetic operations do not perform the implicit conversion I expected from #to_int
```ruby
o = Object.new
def o.to_int; 1; end
1 + o #TypeError
``... -
07:25 PM Feature #19744: Namespace on read
- What happens with the top-level constants defined by the interpreter? In particular, is `Object.object_id != ns1::Object.object_id != ns2::Object.object_id`?
-
07:24 PM Revision 2abd061e (git): YJIT: Remove call to compile() on empty Assembler
-
05:55 PM Revision 776d4dec (git): Manage parallel test workers after timeout
-
05:55 PM Revision 8b520bd3 (git): Add `jobs` optional keyword argument
-
05:50 PM Revision 5a3e8d2f (git): [ruby/prism] Ensure last encoding flag wins
- You can't encoding a string with more than one encoding so ensure that
the last one wins.
https://github.com/ruby/prism/commit/4182c988c9 -
03:36 PM Revision d458b412 (git): YJIT: Add a few missing counters for send fallback (#8681)
-
03:30 PM Revision 1f7234c0 (git): YJIT: Lookup IDs on boot instead of binding to them
- Previously, the version-controlled `cruby_bindings.inc.rs` file
contained the build-time artifact `id.h`, which nobu mentioned hinders
the goal of having fewer magic numbers in the repository.
Lookup the IDs YJIT needs on boot. It costs... -
03:27 PM Revision 01b5d1d2 (git): YJIT: Add a cargo job for Arm64 and remove .cirrus.yml (#8679)
- * YJIT: Add a cargo job for Arm64
* YJIT: Use command names as job names
They look more consistent with jobs that use the command name as a job
name, such as `make (check)`, `make (test-bundled-gems)`, etc.
* Remove .cirrus.yml -
01:42 PM Feature #19930 (Open): [Documentation] class Regexp: Character Classes ranges
- cf. https://ruby-doc.org/3.2.2/Regexp.html#class-Regexp-label-Character+Classes
> POSIX bracket expressions are also similar to character classes. They provide a portable alternative to the above, with the added benefit that they enco... -
01:07 PM Bug #19929 (Assigned): Warnings for `mutex_m`, `drb` and `base64` appears while the gem spec has explicit dependencies
-
12:58 PM Bug #19929 (Closed): Warnings for `mutex_m`, `drb` and `base64` appears while the gem spec has explicit dependencies
- Running some of Ruby on Rails unit test raises these warnings while it has explicit add_dependency entries https://github.com/rails/rails/blob/ae6fa7a048d0a0f79b0f8dd8566c7d499fd6f616/activesupport/activesupport.gemspec#L42-L45
```... -
12:07 PM Revision 4c544927 (git): Separate `test-precheck` target
- So that the tests can run without updating other than the programs.
-
12:07 PM Revision 03ac1089 (git): Wait for `showflag` to finish to prevent interspersed outputs
-
11:54 AM Bug #19778: mkmf.rb pkg_config() interaction with RbConfig::CONFIG["cflags"]
- ruby_3_1 8563a144fda2fd130b672541a84d8bad0b6c4cd2 merged revision(s) bcb3247072e6973d0f6b50ca5fed238d5824bd28,fe0225ff4d5af8b1f54009727b39d0d9b821eea3.
- 11:51 AM Revision 8563a144 (git): merge revision(s) bcb3247072e6973d0f6b50ca5fed238d5824bd28,fe0225ff4d5af8b1f54009727b39d0d9b821eea3: [Backport #19778]
- [Bug #19778] Pass additional include options to INCFLAGS in common.mk
---
common.mk | 2 +-
configure.ac | 1 +
template/Makefile.in | 1 +
3 files changed, 3 insertions(+), 1 ... -
11:43 AM Bug #19894: Memory leak in complemented method entries
- ruby_3_1 a3e1444663005d3440b56c3a8e1b88bb28935912 merged revision(s) 96c5a4be7b0d72502001734770af0f4a735c544c.
- 11:30 AM Revision a3e14446 (git): merge revision(s) 96c5a4be7b0d72502001734770af0f4a735c544c: [Backport #19894]
- Fix memory leak in complemented method entries
[Bug #19894]
When a copy of a complemented method entry is created, there are two
issues:
1. IMEMO_FL_USER3 is not copied, so the complemented status is not
copied ... -
11:07 AM Revision 2a8ac8ea (git): [ruby/rdoc] Delay DidYouMean until NotFoundError#message is called
- https://github.com/ruby/rdoc/commit/b59ca2f981
-
09:21 AM Revision 7362c484 (git): Use rb_getnameinfo instead of directly using getnameinfo
-
08:43 AM Revision c9990c8d (git): "+MN" in description
- If `RUBY_MN_THREADS=1` is given, this patch shows `+MN` in
`RUBY_DESCRIPTION` like:
```
$ RUBY_MN_THREADS=1 ./miniruby --yjit -v
ruby 3.3.0dev (2023-10-17T04:10:14Z master 908f8fffa2) +YJIT +MN [x86_64-linux]
```
Before this patch, a ... -
06:48 AM Revision aee1bfd8 (git): Get rid of `set` with empty argument which dumps all definitions
-
04:10 AM Revision 908f8fff (git): [rubygems/rubygems] Don't hide original error in `after(:suite)` hook
- For some reason, Windows builds are failing quite consistently now.
However, it seems that errors are happening before this directory is
even created, so removal fails, hiding the original error.
Instead, don't let this removal fail due... -
02:30 AM Revision c782c6fd (git): Fix a typo [ci skip]
-
12:42 AM Revision 9bd99cc1 (git): [ruby/prism] Fix up super with a blockarg
- https://github.com/ruby/prism/commit/0ea19ed823
10/16/2023
-
11:09 PM Revision 448e8b5e (git): Remove duplicated option
- `-d` option is basically same with `-h` (`--header`).
The difference is `-h` accept header file name.
Therefore remove `-d` option. -
10:40 PM Revision 1ae8c624 (git): [ruby/prism] Load magic comments in java
- https://github.com/ruby/prism/commit/5d189ce33e
-
10:40 PM Revision 9f16f07c (git): [ruby/prism] Additionally handle encoding comments in vim mode
- https://github.com/ruby/prism/commit/bf9bdb9d82
-
10:40 PM Revision 5523a234 (git): [ruby/prism] Attach magic comments to the parse result
- https://github.com/ruby/prism/commit/c7ef25a79a
-
10:40 PM Revision 39dd3343 (git): [ruby/prism] Parse all magic comments
- https://github.com/ruby/prism/commit/2b3d59f424
-
10:20 PM Revision fd87372a (git): Revert "[ruby/prism] Change ScopeNode to point to previous ScopeNode"
- This reverts commit 67a987f82bc8a2b7ec15581306873530821fcf9e.
-
09:53 PM Revision 67a987f8 (git): [ruby/prism] Change ScopeNode to point to previous ScopeNode
- Amend ScopeNode to point to previous ScopeNode, and to have void*
pointers to constants and index_lookup_table
https://github.com/ruby/prism/commit/0534324312 -
08:46 PM Feature #19744: Namespace on read
- Besides my position on integrating with RG&B, I wanted to add my thoughts about the feature itself separately and how it might end up being used in gems.
## Usage in gems
I immediately imagine this feature being picked up by gems (... -
06:49 PM Feature #19744: Namespace on read
- From my side, I'm happy if this feature is added because as mentioned by @hsbt it'd be useful for us internally.
But I'm pretty strongly against providing any fuctionality that allows resolving and loading multiple versions of the sam... -
10:15 AM Feature #19744: Namespace on read
- byroot (Jean Boussier) wrote in #note-34:
> > Bundler and RubyGems (RG&B) should be considered in deciding on the acceptance or not of this feature.
> ...
You are absolutely right and maybe my previous statement of:
> Bundler and Ru... -
10:10 AM Feature #19744: Namespace on read
- > Bundler and RubyGems (RG&B) should be considered in deciding on the acceptance or not of this feature.
I'm just as doubtful as you on the desirability of being able to load two distinct versions of a dependency, but it is only one o... -
08:50 AM Feature #19744: Namespace on read
- Here are a few more thoughts from me that may have an impact on this, and I hope David will speak up as well:
Bundler and RubyGems (RG&B) should be considered in deciding on the acceptance or not of this feature. Why? Because the end-... -
08:23 PM Revision 3dec5dc3 (git): [ruby/net-http] Force TLS version to 1.2 when using LibreSSL
- This comment previously specified TLS 1.2, but actually set the
version to TLS 1.0. LibreSSL 3.8.1 (included in OpenBSD 7.4)
dropped support for TLS 1.0/1.1 for security reasons, which
broke this test. Switch the test to use TLS 1.2 as... -
07:00 PM Revision 10d88ec9 (git): [PRISM] Compile AliasGlobalVariableNode (#8675)
-
05:26 PM Misc #19883 (Closed): DevMeeting-2023-10-12
-
04:20 PM Revision 8f33d801 (git): Just skip the job if not on ruby/ruby
- Using the same `runs-os` across all jobs in the same workflow makes it
more likely to pass in case one of these runners is experiencing an
outage.
macos-arm-oss is generally not available outside ruby/ruby, so it's
fair to skip it for f... -
03:12 PM Revision 5b5643ae (git): Remove YJIT --repeat-count=2 job (#8669)
-
02:52 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- vo.x (Vit Ondruch) wrote in #note-9:
> @jaruga could you please help with the reproducer. I think you are the best person 😇
Sure. Let me check this ticket later.
-
01:31 PM Revision 728286d0 (git): [PRISM] Fix more bugs in the compiler (#8658)
- * Fixed ConstantPathWriteNode
* FIxed FlipFlopNode - 12:22 PM Revision 6e88b72d (git): [PRISM] prevent underflow on popped splatarray (#8657)
- prevent underflow on popped splatarray
This only emits the splat array node when not popped -
12:09 PM Revision 06a40119 (git): [ruby/irb] Suppress "Switch to inspect mode" messages
- This message is displayed if STDIN is not a tty. The parallel test is
the case.
https://github.com/ruby/irb/commit/e26e90e3fb - 11:56 AM Revision 598af0e7 (git): Update default gems list at d1f781b0d49f16d996e3ba848f386e [ci skip]
-
11:55 AM Revision d1f781b0 (git): [ruby/psych] Bump up v5.1.1.1
- https://github.com/ruby/psych/commit/51cc86ff3f
-
11:53 AM Revision ab5c1230 (git): Wait on ubuntu [ci skip]
- macos-arm-oss is unavailable for forked reopsitories other than
ruby/ruby. -
10:57 AM Revision f6e2f32a (git): Build `rb_dynamic_description` at runtime
- To avoid creating literals for all combinations.
-
10:39 AM Revision 55a0d2c6 (git): [ruby/prism] Avoid unnecessary delete_prefix in LibRubyParser.resolve_type
- Only remove const prefix from non-pointer types.
https://github.com/ruby/prism/commit/97c9ffeb42 -
09:29 AM Revision fe08839d (git): Fix typos [ci skip]
-
09:06 AM Bug #19928 (Closed): IPV6 nameserver issues: "Protocol not supported - socket(2) - udp"
- I get a similar error message to https://bugs.ruby-lang.org/issues/9477
The error message I see:
```
Errno::EPROTONOSUPPORT: Protocol not supported - socket(2) - udp
```
Similarly:
```
$ ruby -rresolv -e 'puts Resolv::DNS.new.... -
05:27 AM Revision d4ac62f3 (git): Give needed tools via the environment variable [ci skip]
-
05:27 AM Revision cc5a916f (git): Check if any tools needed [ci skip]
- Because of a trap of cmd.exe that `echo something > output` prints not
only "something" also the space before `>`, remove unexpected spaces. -
04:52 AM Revision 77ffa1a7 (git): [rubygems/rubygems] Raise an error when top level dependency does not resolve under all locked platforms
- https://github.com/rubygems/rubygems/commit/25304f3e8d
-
04:52 AM Revision 73ba4b76 (git): [rubygems/rubygems] Automatically remove invalid platforms before re-resolving
- https://github.com/rubygems/rubygems/commit/40989271dd
-
04:52 AM Revision b7ad9eda (git): [rubygems/rubygems] Tweak platform mismatch resolution errors
- https://github.com/rubygems/rubygems/commit/20460bc1ee
-
04:52 AM Revision a1c73f1c (git): [rubygems/rubygems] Consistent usage of `local_platform` in Definition
- https://github.com/rubygems/rubygems/commit/5f28a68d79
-
04:52 AM Revision a05904c8 (git): [rubygems/rubygems] The `lock` command should not be affected by frozen setting
- The `lock` command is specifically designed to manage the lockfile, so
running it should take precedence over any "frozen" setting.
Besides that, "frozen" is not specifically designed as "lockfile cannot
be updated" but as "installation... -
04:52 AM Revision 4dbee36f (git): [rubygems/rubygems] Use instantiated definition directly
- https://github.com/rubygems/rubygems/commit/bc233af4d2
- 04:51 AM Revision f37e9f42 (git): [rubygems/rubygems] [PathSupport] Simplify logic: If `Gem.default_dir` is writable, use it.
- I couldn't find a cross-platform way to check "can I create this directory?"
So I removed that, and went back to the original simpler logic of
"if the directory is writable, use it."
https://github.com/rubygems/rubygems/commit/3aa86a56db - 04:51 AM Revision 45a5ea5a (git): [rubygems/rubygems] Remove kludge that should be unnecessary.
- https://github.com/rubygems/rubygems/commit/f1d44ecb62
- 04:51 AM Revision 724398cc (git): [rubygems/rubygems] Remove outdated/incorrect comment.
- The function is also significantly simpler than it used to be,
to the point I'm not sure it needs a comment.
https://github.com/rubygems/rubygems/commit/29a0551e37 - 04:51 AM Revision 3f5da317 (git): [rubygems/rubygems] Rephrase "Defaulting to user installation" message.
- https://github.com/rubygems/rubygems/commit/b7c531347e
Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net> -
04:49 AM Revision cbf2e133 (git): Re-resolve when lockfile is invalid
- Move the check for unmet dependencies in lockfile just in time to be
able to re-resolve if unmet dependencies are found. -
12:48 AM Revision 7e51cadc (git): Fix method coverage comparisons
- Although Ruby's hashes preserve the insertion order, the ordering of
method coverage results is inherently nondeterministic, because they
are collected using `ObjectSpace`.
10/15/2023
-
09:46 PM Feature #19744: Namespace on read
- In the original proposal you mention:
> Dependencies of required/loaded libraries are also required/loaded in the namespace.
I think this means that any require statements in the required file will also be required within the names... -
02:16 PM Feature #19744: Namespace on read
- If I may.
### `::` scope
Similar to Jeremy, my gems heavily use the top-level reference. Like others, I also have namespaces that collide with the root once. For example, `Karafka::ActiveJob` operates by referencing itself and its ... -
06:58 PM Revision 833c930b (git): Remove unneeded checks
- Follow up of 591336a0f278bf963d01b6e9810cfc86a5b50620
-
04:46 PM Bug #19917: Segmentation fault or lost objects when using Ractor.select with moved exceptions
- I wasn't able to reproduce segmentation fault, but even if segmentation fault is caused by `Marshal`, it doesn't explain lost messages (when `Ractor.select` returns a ractor and `"message got lost"`).
-
01:02 AM Bug #19917: Segmentation fault or lost objects when using Ractor.select with moved exceptions
- I'm not in front of a machine that runs ruby right now, but I don't think this has to do with ractors. I was trying things out in the ruby playground and managed to crash ruby with this as well:
```ruby
100.times do |j|
ractor_cou... -
07:16 AM Revision 606452d1 (git): Remove not used fields from STR
-
07:16 AM Revision 5342dbf0 (git): Check node type before accessing nd_next
- This is also a preparation for removing not_used members from
STR NODE. Current codes work without node type check because NODE_STR
has not_used2 member corresponding to nd_next of NODE_LIST and
NODE_DSTR. However it causes problme once ... -
07:16 AM Revision e7e31d77 (git): Stop updating node type from NODE_STR to NODE_DSTR
- This is a preparation for removing not_used members from STR NODE.
Once not_used members are removed from STR NODE, STR NODE is smaller than
DSTR NODE. Therefore allocate NODE_DSTR instead of reusing NODE_STR. -
07:16 AM Revision a4e3d595 (git): Remove not used fields from XSTR
-
07:16 AM Revision cab67d22 (git): Remove not used fields from LIT
-
07:16 AM Revision dc8742f5 (git): Remove not used fields from MATCH
-
06:35 AM Revision 591336a0 (git): Avoid the pointer hack in RCLASS_EXT
- ... because GCC 13 warns it.
```
In file included from class.c:24:
In function ‘RCLASS_SET_ALLOCATOR’,
inlined from ‘class_alloc’ at class.c:251:5,
inlined from ‘rb_module_s_alloc’ at class.c:1045:17:
internal/class.h:159:43: wa... -
06:27 AM Revision 985b0244 (git): Revert an unneeded if on check_misc
- nobu says he wants to run this on [DOC] commits as well.
- 05:43 AM Revision 13dafb21 (git): [DOC] testing_ruby.md: Add spec/ for the explanation of the `make check`.
- 05:43 AM Revision df188741 (git): [DOC] testing_ruby.md: Remove the command prompt '$ ` aligning with other parts.
- Remove the command prompt '$ ` aligning with other parts in the document.
-
05:33 AM Revision ddd5be9e (git): Use the same if: guard for all jobs
-
05:24 AM Revision 341d2ad9 (git): Use unique names for result jobs
- If these jobs have the same name, GitHub allows merging a pull request
as soon as one of these jobs finishes.
We want to wait for all these jobs, so we have to use different names.
Since we don't skip this result job on [DOC], it's okay... -
05:24 AM Revision 222c4b85 (git): Add result job for required status checks
- We've been using matrix jobs as required status checks. However, when
[DOC] pull requests are created, the matrix content and templated
variables are not executed, which results in changing the name of the
matrix jobs. Then required stat... -
05:06 AM Revision 28bd3a96 (git): The needs != '' check is broken
-
04:53 AM Revision 259747e1 (git): Fix typo in steps references [ci skip]
-
04:47 AM Revision 5cb76754 (git): [DOC] Fix the argument name in the Numeric#step doc
-
04:46 AM Revision 83f92931 (git): [rubygems/rubygems] Fix force_ruby_platform: when the lockfile only locks the ruby platform
- https://github.com/rubygems/rubygems/commit/7c50064c3c
-
04:00 AM Revision 48c6cea3 (git): YJIT: Count cold_iseq_entry by default (#8654)
10/14/2023
-
07:35 PM Revision 55c5ebe0 (git): disable MN threads on s390s-linux
- I check the s390s-linux/Ubuntu system and I found that MN threads
doesn't work with:
* function inlining (-O0 doesn't repro)
* Thread local specifier (`_Thread_local`.
With `pthread_get_specific works)
(it is not an issue of `__tls_... - 04:46 PM Revision 7865cebf (git): [ruby/cgi] doc: fix method name
- there was probably a copy paste mistake in the example of unescapeURIComponent (copied from unescape)
https://github.com/ruby/cgi/commit/f8fb627e90 -
03:02 PM Revision 75fb3cf4 (git): [ruby/irb] Restore encoding in InputCompletor test
- (https://github.com/ruby/irb/pull/732)
https://github.com/ruby/irb/commit/ef77c232cf - 02:43 PM Revision eb3be1df (git): Update default gems list at 177d8ee056636511379f6971a6c4e4 [ci skip]
-
02:42 PM Revision 177d8ee0 (git): [ruby/irb] Bump version to 1.8.3
- (https://github.com/ruby/irb/pull/731)
https://github.com/ruby/irb/commit/de79375ac1 -
02:15 PM Revision 8e477af1 (git): [ruby/prism] Put names on back reference read nodes
- https://github.com/ruby/prism/commit/10a6403293
-
02:12 PM Revision 4e5c505b (git): [ruby/irb] Restore IRB::InputCompletor for compatibility
- (https://github.com/ruby/irb/pull/730)
https://github.com/ruby/irb/commit/77265efc5f -
11:57 AM Feature #18822: Ruby lack a proper method to percent-encode strings for URIs (RFC 3986)
- I just want to complete what was said before.
URI.escape and URI.unescape were deprecated but they were replaced by URI::Parser.new.escape and URI::Parser.new.unescape that implements RFC 2396. In fact this is calling URI::RFC2396_Par... -
10:03 AM Feature #16294: Make MatchData frozen and forbid MatchData.allocate
- nobu (Nobuyoshi Nakada) wrote in #note-8:
> At the latest dev-meeting, there was a suggestion that whereas `MatchData` cannot be dumped, `Regexp.allocate` might be used by serializer libraries.
That does not seem used in practice.
Truff... -
02:30 AM Feature #16294: Make MatchData frozen and forbid MatchData.allocate
- At the latest dev-meeting, there was a suggestion that whereas `MatchData` cannot be dumped, `Regexp.allocate` might be used by serializer libraries.
-
09:38 AM Revision 96cd73d7 (git): Ignore symbols even in empty shared library
- On some platforms, such as FreeBSD and Oracle Linux, symbols defined
in the crt0 setup routine are exported from shared libraries. So
ignore the symbols that would be exported even in an empty shared
library. -
05:57 AM Misc #18984: Doc for Range#size for Float/Rational does not make sense
- I created a PR: https://github.com/ruby/ruby/pull/8663
What should we do about `Range#count`?
```
(..0).count # => Infinity
(nil..nil).count # => Infinity
``` -
04:26 AM Revision eb79b031 (git): release sched_lock before VM lock
- to avoid deadlock
```ruby
r = Ractor.new do
obj = Thread.new{}
Ractor.yield obj
rescue => e
e.message
end
p r.take
```
```
(lldb) bt
* thread #1, name = 'miniruby', stop reason = signal SIGSTOP
* frame #0: 0x0000ffff44881410 li... -
03:53 AM Revision 16d14f42 (git): Avoid using MATZBOT_GITHUB_TOKEN for pull requests
-
03:15 AM Bug #19926 (Closed): Range#size returns an incorrect result for ranges with a Rational endpoint
- Applied in changeset commit:git|b28c1d2c5644c726bba60cd35ce9313da6e86a4f.
----------
[Bug #19926] Fix Range#size for ranges with a Rational endpoint -
02:22 AM Revision b28c1d2c (git): [Bug #19926] Fix Range#size for ranges with a Rational endpoint
-
02:12 AM Revision 25072d2e (git): Fix node type casts
- Use new node type set by nd_set_type.
-
02:08 AM Revision a405b28e (git): Delete heredoc line mark references
-
02:08 AM Revision 5fc9810b (git): Shorten `rb_strterm_literal_t` members
-
02:08 AM Revision a075c55d (git): Manage `rb_strterm_t` without imemo
-
02:08 AM Revision cb06b663 (git): Remove unions in `rb_strterm` structs for alignment
10/13/2023
-
11:59 PM Bug #19926: Range#size returns an incorrect result for ranges with a Rational endpoint
- I made a fix: https://github.com/ruby/ruby/pull/8660
-
06:10 AM Bug #19926 (Closed): Range#size returns an incorrect result for ranges with a Rational endpoint
- ```
% ~/tmp/ruby-master/bin/ruby -e '(1...3.1r).each { p _1 }'
1
2
3
```
```
% ~/tmp/ruby-master/bin/ruby -e 'p (1...3.1r).size'
2
```
```
% ~/tmp/ruby-master/bin/ruby -e 'p (1...3.1).size'
3
``` -
11:33 PM Revision 82c8f22a (git): Use the variable to skip the checkout
-
11:31 PM Revision 9d6ff9c1 (git): Skip a duplicated checkout
- 11:19 PM Revision d67880ab (git): Update default gems list at 0950f22cc0c848a73f1b80d0e63fcd [ci skip]
-
11:19 PM Revision d7f8c1ee (git): Just reorder the checkout
-
11:18 PM Revision 0950f22c (git): secrets cannot be templated in a shared action
-
11:14 PM Revision 563ba5a6 (git): Give a token to the shared checkout as well
-
11:12 PM Revision 275c1852 (git): Allow `NON_SCALAR_THREAD_ID` machines
- s390x (Ubuntu) still fails tests with 62dfaeec2c.
-
10:21 PM Revision 5b08e9ef (git): Use matzbot's token to push misc commits
- to bypass status checks of branch protection
-
09:11 PM Revision f6564fdd (git): [ruby/prism] Simplify DedentingHeredoc#to_a
- Move common ``results << token`` outside case-when.
https://github.com/ruby/prism/commit/84d0722ee9 -
07:48 PM Revision 81fbacb5 (git): [ruby/prism] Make PM_NODE_FLAG_COMMON_MASK into a constant
- https://github.com/ruby/prism/commit/ec66feb595
-
07:45 PM Revision e700582d (git): [ruby/prism] Bump version to 0.14.0
- https://github.com/ruby/prism/commit/1731bf4520
-
07:38 PM Revision 42484d12 (git): [ruby/prism] Move common flags to top bits
- Moves the common flag bits to the top. This lets us eliminate the `COMMON`
constant, and also allows us to group encoding flags on a nibble so we
can more easily mask them.
https://github.com/ruby/prism/commit/895508659e -
07:34 PM Revision 17697c96 (git): [prism] Remove unused make target
-
07:31 PM Revision b5ee570e (git): [prism] Remove unescape targets
-
07:31 PM Revision 11e946da (git): [ruby/prism] Fix up PR failings
- https://github.com/ruby/prism/commit/11255f636e
-
07:31 PM Revision d06523bc (git): [ruby/prism] Remove now-defunct semantic_field from nodes
- https://github.com/ruby/prism/commit/c82a9dad64
-
07:31 PM Revision 2de02998 (git): [ruby/prism] Final unescapes cleanup
- https://github.com/ruby/prism/commit/bfcd8262a4
-
07:31 PM Revision 10e7e5bc (git): [ruby/prism] Refactor unescape test to simplify
- https://github.com/ruby/prism/commit/4392775898
-
07:31 PM Revision 37d958ea (git): Remove old unescaping code
-
07:31 PM Revision fa76cddc (git): [ruby/prism] Properly handle unescaping in regexp
- https://github.com/ruby/prism/commit/abf9fd6863
-
07:31 PM Revision e4f1c06a (git): [ruby/prism] Use current_string to handle :" symbols
- https://github.com/ruby/prism/commit/eedeec8f9a
-
07:31 PM Revision a1de7629 (git): [ruby/prism] Use current_string for :' symbols
- https://github.com/ruby/prism/commit/fadb5be520
-
07:31 PM Revision 8bf0d381 (git): [ruby/prism] Use current_string for %s symbol literals
- https://github.com/ruby/prism/commit/52504f8911
-
07:31 PM Revision d0614b52 (git): [ruby/prism] Split up lines in tilde heredocs
- https://github.com/ruby/prism/commit/21fad0c2ce
-
07:31 PM Revision ad46fc09 (git): [ruby/prism] Calculate heredoc common whitespace while lexing
- https://github.com/ruby/prism/commit/c3f43b64a3
-
07:31 PM Revision d6424453 (git): [ruby/prism] Enable remaining heredoc unescape tests
- https://github.com/ruby/prism/commit/c7ea4941c5
-
07:31 PM Revision 24768d8a (git): [ruby/prism] Use current_string for escapes in heredocs
- https://github.com/ruby/prism/commit/fc49acfc59
-
07:31 PM Revision 1a7364b3 (git): [ruby/prism] Use create_unescaped functions for empty heredocs
- https://github.com/ruby/prism/commit/acec5a13cb
-
07:31 PM Revision da47a713 (git): [ruby/prism] Use current_string for x string escape sequences
- https://github.com/ruby/prism/commit/66ce9280bb
-
07:31 PM Revision a7f71e46 (git): [ruby/prism] Use token buffer for string lexing
- https://github.com/ruby/prism/commit/087cd8f28b
-
07:31 PM Revision 973ecf68 (git): [ruby/prism] Extract out a couple more token buffer functions
- https://github.com/ruby/prism/commit/341e027d23
-
07:31 PM Revision af8484bc (git): [ruby/prism] Capture the token buffer logic into its own struct and functions
- https://github.com/ruby/prism/commit/4334f0775b
-
07:31 PM Revision ef1e5b65 (git): [ruby/prism] Use current_string to handle escapes in string literals
- https://github.com/ruby/prism/commit/d912d48104
-
07:31 PM Revision f64a0434 (git): [ruby/prism] Use current_string to handle %I
- https://github.com/ruby/prism/commit/831d5f4b45
-
07:31 PM Revision 5fc34f1c (git): [ruby/prism] Use current_string for handling %W lists
- https://github.com/ruby/prism/commit/edb1674725
-
07:31 PM Revision 41ac8ddc (git): [ruby/prism] Extract out string handling for %W lists
- https://github.com/ruby/prism/commit/dba9bd6b1f
-
07:31 PM Revision 3c743445 (git): [ruby/prism] Use current_string to handle %i escapes
- https://github.com/ruby/prism/commit/9c90d0a777
-
07:31 PM Revision 4e3013f4 (git): [ruby/prism] Use current_string to handle %w escapes
- https://github.com/ruby/prism/commit/b8420ea7ae
-
07:31 PM Revision 3dba3ab4 (git): [ruby/prism] Strip out old char unescaping
- https://github.com/ruby/prism/commit/27ca207ab3
-
07:31 PM Revision dd398687 (git): [ruby/prism] Handle remaining escape sequences for character literals
- https://github.com/ruby/prism/commit/ba33607034
-
07:31 PM Revision 1a941c70 (git): [ruby/prism] Track current_string to pass forward for character literals
- https://github.com/ruby/prism/commit/be1d8ae8bb
-
07:31 PM Revision e179e62b (git): [ruby/prism] Skip tests that are currently failing
- https://github.com/ruby/prism/commit/23b2336148
-
07:31 PM Revision a0a0cd0c (git): [ruby/prism] Fix escaped 8 and escaped 9
- https://github.com/ruby/prism/commit/c3a46e2de5
-
07:31 PM Revision 8e223366 (git): [ruby/prism] More thoroughly test unescapes
- https://github.com/ruby/prism/commit/e86196dde6
-
07:24 PM Revision d7058852 (git): [PRISM] Add --dump=prism mode (#8643)
-
06:35 PM Feature #18915: New error class: NotImplementedYetError or scope change for NotImplementedError
- > I wouldn't expect a test framework to rescue OutOfMemoryError for example,
Well Minitest does rescue Exception:
https://github.com/minitest/minitest/blob/6719ad8d8d49779669083f5029ea9a0429c49ff5/lib/minitest/test.rb#L196
Pretty ... -
06:27 PM Feature #18915: New error class: NotImplementedYetError or scope change for NotImplementedError
- byroot (Jean Boussier) wrote in #note-10:
> > since NotImplementedError doesn't inherit from StandardError I kind of wish there was a new exception class
> ...
It is something I would like rescued broadly. For example if I'm test driv... -
05:06 PM Feature #18915: New error class: NotImplementedYetError or scope change for NotImplementedError
- > since NotImplementedError doesn't inherit from StandardError I kind of wish there was a new exception class
Could you elaborate? For this use case I think not inheriting from `StandardError` is better, as it's not something you'd wa... -
04:32 PM Feature #18915: New error class: NotImplementedYetError or scope change for NotImplementedError
- tenderlovemaking (Aaron Patterson) wrote in #note-8:
> I'm guilty of using `NotImplementedError` for abstract classes. I like the idea of changing the documentation, but on the other hand, since `NotImplementedError` doesn't inherit fr... -
04:19 PM Feature #18915: New error class: NotImplementedYetError or scope change for NotImplementedError
- I'm guilty of using `NotImplementedError` for abstract classes. I like the idea of changing the documentation, but on the other hand, since `NotImplementedError` doesn't inherit from StandardError I kind of wish there was a new exceptio...
-
05:59 PM Revision 34add1e5 (git): [PRISM] Compile fixes (#8644)
- * Fix compiling UndefNodes
* Fix compiling super on ClassNode
* Fix compile popped for ModuleNode
* Add checks for NULL nodes
* Only add newhash if not popped -
05:17 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- @jaruga could you please help with the reproducer. I think you are the best person 😇
-
04:30 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- I don't see anything that stands out in your build logs, so I'm still not sure if I can reproduce the issue myself. Since you seem to know how to reproduce this, could you consider reproducing the same issue on GitHub Actions (by modifyi...
-
11:59 AM Bug #19921: TestYJIT#test_bug_19316 test failure
- Trying to reproduce this, I have hit this on x86_64 as well as on aarch64, while it passed on other architectures. The build is here:
https://koji.fedoraproject.org/koji/taskinfo?taskID=107436987
You can go into the architecture sp... -
03:07 AM Bug #19921: TestYJIT#test_bug_19316 test failure
- Replying to the comment I can do quickly for now:
k0kubun (Takashi Kokubun) wrote in #note-5:
> > 94) Failure:
> ...
Actually the other 93 tests are "Skipped". So build log shows something like:
```
Finished tests in 557.802217s... -
04:40 PM Revision 92bdc375 (git): Ignore the failures of CodeQL
- It randomly fails like this:
https://github.com/ruby/ruby/actions/runs/6510372995/job/17683918027
and we don't want to pay for and use a larger runner for the job that
only generates false positives most of the time. -
04:16 PM Misc #19925: DevMeeting-2023-11-07
- * [Feature #18915] Change documentation for `NotImplementedError` or introduce new exception
* People use `NotImplementedError` for abstract classes, but documentation says it's only for "a feature is not implemented on the current pl... -
03:31 AM Misc #19925 (Closed): DevMeeting-2023-11-07
- # The next dev meeting
**Date: 2023/11/07 13:00-17:00** (JST)
Log: *TBD*
- Dev meeting *IS NOT* a decision-making place. All decisions should be done at the bug tracker.
- Dev meeting is a place we can ask Matz, nobu, nurse and o... -
03:52 PM Revision 62dfaeec (git): disable MN schedulers for some platforms
- * on `__EMSCRIPTEN__` provides epoll* declarations, but no implementations.
* on `NON_SCALAR_THREAD_ID`, now we can not debug issues on x390s/Ubuntu so skip it.
x390s/RHEL works fine, so I think we can remove second limitation but
I cou... -
03:52 PM Revision 5808999d (git): YJIT: Fallback opt_getconstant_path for const_missing (#8623)
- * YJIT: Fallback opt_getconstant_path for const_missing
* Fix a comment [ci skip]
* Remove a wrapper function -
03:44 PM Bug #19927: TestCoverage#test_coverage_suspendable fails on ppc64le
- I have not looked into the code, but it seems that the `:method` hash display order is different.
-
03:32 PM Bug #19927 (Closed): TestCoverage#test_coverage_suspendable fails on ppc64le
- Testing on Fedora Rawhide, I am facing the following test error on ppc64le:
~~~
94) Failure:
TestCoverage#test_coverage_suspendable [/builddir/build/BUILD/ruby-3.3.0-35edc14ee1/test/coverage/test_coverage.rb:870]:
pid 192974 exit ... -
02:41 PM Revision 0bf1749e (git): YJIT: Fix argument clobbering in some block_arg+rest_param calls (#8647)
- Previously, for block argument callsites with some specific argument
count and callee local variable count combinations, YJIT ended up
writing over arguments that are supposed to be collected into a rest
parameter array unmodified.
Dete... -
02:21 PM Revision 511571b5 (git): Only ruby/ruby repository runs on macos-arm-oss [ci skip]
-
02:00 PM Bug #19885: Invalid Warning for Default Gems That Will Move to Bundled Gems
- Thank you, that's much clearer.
If you want to make it perfect maybe just tweak the grammar:
"webrick is not part of the default gems since Ruby 3.0.0"
"webrick will no longer be part of the default gems in Ruby 3.0.0" -
08:28 AM Bug #19885 (Closed): Invalid Warning for Default Gems That Will Move to Bundled Gems
- I changed this warning feature only for `LoadError` at https://github.com/ruby/ruby/pull/8636.
The current behavior is here:
```
$ ruby -v -r bigdecimal -e ''
ruby 3.3.0dev (2023-10-13T07:22:09Z master 35edc14ee1) +YJIT [arm64-da... -
01:00 PM Feature #18573: Object#pack1
- If we introduce a new method for this, I think it would be better to design a more descriptive API instead of reusing a hacky pack format directive, such as `0x1234.to_binary_string(4, endian: :big) #=> "\x00\x00\x12\x34"`.
-
12:30 PM Bug #19923 (Closed): Ractor / YJIT failures on PPC64LE
-
12:22 PM Bug #19923: Ractor / YJIT failures on PPC64LE
- ko1 (Koichi Sasada) wrote in #note-4:
> could you try with 10ba3fc302 (current master)?
Testing with commit:git|35edc14ee1 it seems the issue has bee fixed. Thx -
07:22 AM Revision 35edc14e (git): Ignore duplicated warning with native extension
-
07:22 AM Revision c6728cae (git): Fix wrong gem name
-
07:22 AM Revision fe5329f0 (git): Ignore warning on LoadError when running under Bundler
-
07:22 AM Revision 62eea99a (git): Added recovery instructions for RubyGems
-
07:22 AM Revision fdf0589a (git): Surpressing double warnings
-
07:22 AM Revision b49346ee (git): Warn only LoadError without Bundler environment
-
07:22 AM Revision ba4fed47 (git): Removed examples for warning bundled gems
-
07:22 AM Revision 57c2ae20 (git): Move additional warnings for Gem author under Gem::BUNDLED_GEMS.
-
07:22 AM Revision ea05ddbe (git): Move path normalization into Gem from Bundler class
-
07:22 AM Revision c2bdb198 (git): Dont't handle inline Gemfile
-
07:22 AM Revision 75644f98 (git): Use Gem::BUNDLED_GEMS.warning? at Bundler.setup
-
06:59 AM Revision d8a74207 (git): use `uint32_t` instead of `__uint32_t`
-
04:42 AM Bug #19910: Set#delete_if behavior inconsistent with Array/Hash
- Took a stab at it in https://github.com/ruby/ruby/pull/8642
-
03:29 AM Feature #19839: Need a method to check if two ranges overlap
- Just FYI: Documentation has been added at commit:c23b25f75f6180b7428f9650e063b1e50fc161e2 for the corner cases of minimum value.
-
03:21 AM Misc #18984: Doc for Range#size for Float/Rational does not make sense
- Discussed at the dev meeting. @matz said that he wanted to try to fix the behavior of Range#size instead of changing the document. If the incompatibilty is found significant, it will be reconsidered.
```ruby
(0.51..5.quo(2)).size #=>... -
03:18 AM Bug #18903: Stack overflow signal handling seems to be triggered once and then not working after
- Discussed at the dev meeting. @nobu said he would investigate if he could fix it with M2.
Recovering from a stack overflow in C is not portable and complete, but it is a fact that they work almost well in Linux, which is the main prod... -
03:10 AM Bug #19866 (Rejected): Future of `readline.rb`
- Discussed at the dev meeting, and agreed that the current status be maintained.
* Dependency on external libraries is not very happy, but not a problem itself. Actually, set.rb had longly depended on rbtree gem.
* As long as it is na... -
12:30 AM Revision 842d9c0a (git): Remove paths-ignore from required status checks (#8646)
-
12:19 AM Bug #19919 (Closed): Variable assignments in condition are warned however class variable assignment and constant declaration are not warned
- Applied in changeset commit:git|2794a8fef65eb16767c2f46f8f5058c10b4591b9.
----------
[Bug #19919] Warn class variable assignment and constant declaration in condition -
12:19 AM Revision cdb36dfe (git): fix `native_thread_destroy()` timing
- With M:N thread scheduler, the native thread (NT) related resources
should be freed when the NT is no longer needed. So the calling
`native_thread_destroy()` at the end of `is will be freed when
`thread_cleanup_func()` (at the end of Rub...
10/12/2023
-
10:35 PM Revision 2794a8fe (git): [Bug #19919] Warn class variable assignment and constant declaration in condition
-
10:15 PM Revision dcee3cc6 (git): Avoid duplicating a --repeat-count=2 job
- --repeat-count=2 jobs are generally too slow for no good reason.
It doesn't seem related to testing the universal parser either. - 09:37 PM Revision b2808cc4 (git): Update default gems list at 3aba21511b37723b5212e44429f5e8 [ci skip]
-
09:36 PM Revision 3aba2151 (git): [ruby/irb] Bump version to 1.8.2
- https://github.com/ruby/irb/commit/47693a2213
-
09:25 PM Bug #19921 (Feedback): TestYJIT#test_bug_19316 test failure
- I cannot reproduce your problem in my x86_64-linux environment (Ubuntu 22.04). It also seems to succeed on Ruby CI's Fedora 38 x86_64 and all other CIs. It might be specific to how you build Ruby. Can you provide a way to reproduce your ...
-
03:49 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- mtasaka (Mamoru Tasaka) wrote in #note-2:
> This is failing (for me) since https://github.com/ruby/ruby/commit/492e9437dd33f64e283a9de21f49c65d3195c1f0
Interesting. Thx for looking into this. I saw this commit, but ruled it out initi... -
03:34 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- This is failing (for me) since https://github.com/ruby/ruby/commit/492e9437dd33f64e283a9de21f49c65d3195c1f0
-
12:43 PM Bug #19921: TestYJIT#test_bug_19316 test failure
- Just FTR, previously I was testing with 904413997f and everything worked just fine.
-
12:41 PM Bug #19921 (Closed): TestYJIT#test_bug_19316 test failure
- Testing with 52709a4862 on Fedora Rawhide, I observe following failure:
~~~
94) Failure:
TestYJIT#test_bug_19316 [/builddir/build/BUILD/ruby-3.3.0-52709a4862/test/ruby/test_yjit.rb:1126]:
Expected no exits, but got
{:opt_and=>1}
... -
07:11 PM Feature #18573: Object#pack1
- matz (Yukihiro Matsumoto) wrote in #note-7:
> Array.pack1 is unlikely because there is no connection between the responsibilities of the method and the Array class. I also disagree with String.pack1 for the same reason.
> ...
Feature #... -
04:21 AM Feature #18573: Object#pack1
- Array.pack1 is unlikely because there is no connection between the responsibilities of the method and the Array class. I also disagree with String.pack1 for the same reason.
The most natural candidate is Object#pack1, but I question the... -
06:30 PM Bug #19924 (Closed): Character literal escaped \xFF stops parsing
- Applied in changeset commit:git|17b0643392749f45b7aacb64fc1c1bd704d42b4c.
----------
[Bug #19924] Source code should be unsigned char stream
Use `peekc` or `nextc` to fetch the next character, instead of reading
from `lex.pcur` directl... -
03:50 PM Bug #19924 (Closed): Character literal escaped \xFF stops parsing
- When you have a character literal, you can have an escaped character. For things that don't actually need escaping, this works out to just returning the character itself. For example:
``` ruby
?\d # => "d"
```
This works for ever... -
06:19 PM Bug #19923: Ractor / YJIT failures on PPC64LE
- could you try with 10ba3fc302 (current master)?
-
04:39 PM Bug #19923: Ractor / YJIT failures on PPC64LE
- The likely suspect would be N:M threads. cc @ko1
-
03:44 PM Bug #19923: Ractor / YJIT failures on PPC64LE
- Just FTR, previously I was testing with 904413997f and everything worked just fine.
-
03:44 PM Bug #19923 (Closed): Ractor / YJIT failures on PPC64LE
- Let me share snippet of the log:
~~~
... snip ...
+ DISABLE_TESTS=
+ MSPECOPTS=
+ DISABLE_TESTS=' -n !/TestYJIT#test_bug_19316/'
+ make -C redhat-linux-build check 'TESTS=-v --show-skip -n !/TestYJIT#test_bug_19316/' 'MSPECOPT... -
05:32 PM Revision 81399a5c (git): Use `lex_eol` macros
-
05:28 PM Revision 17b06433 (git): [Bug #19924] Source code should be unsigned char stream
- Use `peekc` or `nextc` to fetch the next character, instead of reading
from `lex.pcur` directly, for compilers that plain char is signed. -
05:11 PM Revision 2dca02e2 (git): disable MN scheduler on !`USE_MN_THREADS`
-
04:54 PM Revision 1126bd8c (git): [ruby/irb] Fix require path completion disturbing string method
- completion
(https://github.com/ruby/irb/pull/726)
https://github.com/ruby/irb/commit/e42dc74ce0 -
04:09 PM Revision 10ba3fc3 (git): Use `sysconf()` to get PAGE_SIZE
- Some systems use not 4096 page size (64KB for example).
- 04:01 PM Revision 4387af1b (git): [ruby/prism] Fix parsing symbols in strings after labels
- https://github.com/ruby/prism/commit/e16531650d
-
03:26 PM Revision 5c876447 (git): [ruby/prism] Increase the depth for the For node index variable
- In CRuby's parser locals in for nodes appear deeper in the ast than they
do in Prism, but we can fix that with a transparent scope
https://github.com/ruby/prism/commit/460187f41e -
03:00 PM Revision c23b25f7 (git): describe the assumption for Range#overlap?.
- Range#overlap? assumes that there is no minimum value.
This assumption makes
+(...-Float::INFINITY).overlap?((...-Float::INFINITY))+ returns true
while +(...-Float::INFINITY)+ is empty. -
02:05 PM Revision b2e1ddff (git): YJIT: port call threshold logic from Rust to C for performance (#8628)
- * Port call threshold logic from Rust to C for performance
* Prefix global/field names with yjit_
* Fix linker error
* Fix preprocessor condition for rb_yjit_threshold_hit
* Fix third linker issue
* Exclude yjit_calls_at_interv from... -
02:03 PM Revision 0c42c285 (git): Test YJIT on macOS Arm64 GitHub Actions (#8633)
- * cp macos.yml yjit-macos.yml
* Test YJIT on macOS Arm64 GitHub Actions
* Add a non-YJIT macOS Arm64 job as well -
01:55 PM Revision cf21c72c (git): [ruby/irb] Fix test runner exit bug
- (https://github.com/ruby/irb/pull/728)
* Remove useless test setup and teardown that sets MAIN_CONTEXT to nil
* Avoid adding command methods to main object in test
https://github.com/ruby/irb/commit/f204829a08 -
12:56 PM Bug #19922 (Open): ObjectSpace.dump_all in multiple threads in parallel causes SEGV
- `ObjectSpace.dump_all` in multiple threads in parallel causes SEGV.
The reproduce code is here:
```
$ ruby -robjspace -e 'def dump; 10.times { ObjectSpace.dump_all } end; Thread.new { dump }; dump'
/home/wanabe/.rbenv/versions/master... -
12:53 PM Revision e029375a (git): [ruby/irb] Decouple RubyLex from prompt and line_no
- (https://github.com/ruby/irb/pull/701)
* Remove instance variable prompt and line_no from RubyLex
* Fix prompt test
* Rename prompt generating method and make it private
https://github.com/ruby/irb/commit/1ceb97fe2e -
11:52 AM Bug #19920: Ruby 3.1 fails to build with --enable-shared on macos-arm64: is an incompatible architecture (have 'arm64', need '')
- Proof that it fails without ruby-build: https://github.com/ruby/ruby-builder/actions/runs/6494853372/job/17638623490
With:
```yml
steps:
- run: curl -O https://cache.ruby-lang.org/pub/ruby/3.1/ruby-3.1.4.tar.gz
- run: ta... -
11:02 AM Bug #19920 (Closed): Ruby 3.1 fails to build with --enable-shared on macos-arm64: is an incompatible architecture (have 'arm64', need '')
- See https://github.com/ruby/ruby-builder/actions/runs/6494296018/job/17636968796#step:18:9
```
installing bundled gems: /Users/runner/hostedtoolcache/Ruby/3.1.4/arm64/lib/ruby/gems/3.1.0
... -
11:37 AM Feature #19422 (Closed): Make `--enabled-shared` mandatory on macOS
- Applied in changeset commit:git|9694445051c4192c8f659529133acab253bd0bc3.
----------
[Feature #19422] Enable shared by default on macOS -
09:02 AM Feature #19422: Make `--enabled-shared` mandatory on macOS
- We discuss this at dev meeting.
We only change default configuration to `--enable-shared` for macOS. If user want to use `--disable-shared` explicitly, we accept it. -
10:26 AM Revision 96944450 (git): [Feature #19422] Enable shared by default on macOS
-
08:46 AM Revision 52709a48 (git): Fix `dir_config` cache for -include and -lib options
- Set to "--with-" options, not "--without-" keys.
-
08:46 AM Revision 1cef5f59 (git): Include default values in `dir_config` cache keys
- The extconf.rb in mysql2 gem repeats `dir_config('mysql')`, without
and with the default path. The third call returns the former results
even with the default path. Since it does not check the results of
the third call, that `nil` is p... -
08:36 AM Revision 2cd9aae4 (git): Fix unused-function warning for 'ruby_ppoll' [ci skip]
-
08:34 AM Revision 769f53eb (git): Add benchmarks for Range#reverse_each
-
08:34 AM Revision 66fabefa (git): Add Range#reverse_each implementation for performance
-
08:30 AM Feature #13933 (Rejected): Add Range#empty?
- One drawback of `Range#empty?` is that we have several corner cases that cannot determine emptiness correctly (e.g., regarding exclude_end ranges or infinity).
Upon the fact we don't see the real-world use-case yet, we reject the propos... -
08:22 AM Revision 1c871c08 (git): Switch mid dump to dump_append_string_value
- I don't think it's possible to create a CI with a mid which would need
escaping to be in a JSON string, but I think we might as well not rely
on that assumption. -
08:22 AM Revision 635b9209 (git): Fix ObjectSpace.dump with super() callinfo
- super() uses 0 as mid for its callinfo, so we need to check for that to
avoid a segfault when using dump_all. -
07:59 AM Feature #18515: Add Range#reverse_each implementation
- I accept this as a performance improvement.
Matz.
-
06:07 AM Revision 9859dbc7 (git): Fix leaked symbols on FreeBSD [ci skip]
-
05:58 AM Feature #19842 (Closed): Introduce M:N threads
- Applied in changeset commit:git|be1bbd5b7d40ad863ab35097765d3754726bbd54.
----------
M:N thread scheduler for Ractors
This patch introduce M:N thread scheduler for Ractor system.
In general, M:N thread scheduler employs N native threa... -
05:58 AM Revision feac15c1 (git): [ruby/securerandom] Extract `assert_uuid_v7`
- https://github.com/ruby/securerandom/commit/029677584d
-
05:47 AM Revision be1bbd5b (git): M:N thread scheduler for Ractors
- This patch introduce M:N thread scheduler for Ractor system.
In general, M:N thread scheduler employs N native threads (OS threads)
to manage M user-level threads (Ruby threads in this case).
On the Ruby interpreter, 1 native thread is ... -
04:54 AM Bug #16927 (Rejected): String#tr won't return the expected result for some sign with diacritics
-
04:53 AM Bug #16927: String#tr won't return the expected result for some sign with diacritics
- As nobu says, since String#tr is for codepoints, so this proposal is rejected.
Maybe though a dedicated method for this use case can be reasonable, the current use case is not enough to design it. -
04:49 AM Bug #19919: Variable assignments in condition are warned however class variable assignment and constant declaration are not warned
- This should be addressed.
Matz.
- 03:31 AM Revision 096ee064 (git): Bump ruby/setup-ruby from 1.155.0 to 1.156.0
- Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.155.0 to 1.156.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Commits](https://github.com/ruby/setup-ruby/compare/d37167af451eb51448db3354e1057b75c4... -
02:41 AM Feature #5825: Sweet instance var assignment in the object initializer
- Maybe a different proposal, but if the `def initialize(@a, @b)` is ugly, how about a new method similar to `attr_{reader,writter}` like
```rb
class User
init_with :name, :age
# or maybe
attributes :name, :age
end
User....