Project

General

Profile

Activity

From 03/28/2023 to 04/03/2023

04/03/2023

11:49 PM Bug #19568 (Third Party's Issue): Windows mingw rust, failures with test/rubygems/test_gem_ext_cargo_builder.rb
This issue is not only `make test-all`. see https://github.com/rubygems/rubygems/actions/runs/4598776839/jobs/8123289961
We should fix this on rubygems repo.
hsbt (Hiroshi SHIBATA)
03:42 PM Bug #19568: Windows mingw rust, failures with test/rubygems/test_gem_ext_cargo_builder.rb
It's my understanding that these tests should not be run, they should be skipped by the method `skip_unsupported_platforms!`, at least they are skipped when I run `make test-all`. Were they being run before?
You can check this with: `...
luke-gru (Luke Gruber)
10:57 PM Revision b2e84819 (git): fix deadlock on `Thread#join`
because of 9720f5ac894566ade2aabcf9adea0a3235de1353
http://rubyci.s3.amazonaws.com/solaris11-sunc/ruby-master/log/20230403T130011Z.fail.html.gz
```
1) Failure:
TestThread#test_signal_at_join [/export/home/chkbuild/chkbuild-sunc/tmp/b...
ko1 (Koichi Sasada)
10:03 PM Misc #19525: DevMeeting-2023-04-13
* [Bug #4040] SystemStackError with Hash[*a] for Large _a_ (jeremyevans0)
* @ko1 fixed this issue for iseq methods accepting splats in Ruby 2.2.
* We fixed this issue for cfunc methods in January.
* I found this issue applies to...
jeremyevans0 (Jeremy Evans)
09:14 PM Misc #19525: DevMeeting-2023-04-13
- [Feature #19571] Add REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO to the GC (peterzhu2118)
- We tested on production traffic on Shopify's [Storefront Renderer](https://shopify.engineering/how-shopify-reduced-storefront-response-t...
peterzhu2118 (Peter Zhu)
11:16 AM Misc #19525: DevMeeting-2023-04-13
* [Feature #18885] End of boot advisory API (byroot)
* I'm about to merge the first optimizations, are we still ok with `Process.warmup` as a name?
* [Feature #19561] ObjectSpace::WeakMap#delete and ObjectSpace::WeakKeyMap#delete (byro...
byroot (Jean Boussier)
09:57 PM Feature #19573 (Rejected): Add Class#singleton_inherited
This would be similar to `Class#inherited`, but would be called with singleton classes of instances instead of subclasses. This could be used to warn or raise on singleton class creation, or modify the instance to change behavior, such a... jeremyevans0 (Jeremy Evans)
09:19 PM Feature #19572 (Closed): Add a new TracePoint event for rescued exceptions
**Summary**
Support a new `rescue` event type in TracePoint. When the event is triggered, `TracePoint#rescued_exception` can be used to access the exception.
**Reason**
Currently, TracePoint supports `raise` events, which can be h...
st0012 (Stan Lo)
09:10 PM Revision 38209ffd (git): YJIT: Add codegen for Array#<< (#7645)
k0kubun (Takashi Kokubun)
09:01 PM Bug #19441: Closing an Tempfile#dup behaviour
I think this is a bug in `Tempfile#{dup,clone}` that we should fix. I submitted a pull request for it: https://github.com/ruby/tempfile/pull/17 jeremyevans0 (Jeremy Evans)
08:50 PM Feature #19571: Add REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO to the GC
> how the new parameter is used and how the current implementation calculate without new parameter
The default value is 0.01 (1%). It's calculated as 1% of the `old_objects` count. You can see the implementation is:
```c
objspace-...
peterzhu2118 (Peter Zhu)
06:36 PM Feature #19571: Add REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO to the GC
Could you make clear the following?
* Please describe how the new parameter is used and how the current implementation calculate without new parameter.
* my understanding is this parameter is used for the major GC condition.
* This ne...
ko1 (Koichi Sasada)
05:52 PM Feature #19571 (Closed): Add REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO to the GC
GitHub PR: https://github.com/ruby/ruby/pull/7577
The proposed PR adds the environment variable `RUBY_GC_HEAP_REMEMBERED_WB_UNPROTECTED_OBJECTS_LIMIT_RATIO` which is used to calculate the `remembered_wb_unprotected_objects_limit` usin...
peterzhu2118 (Peter Zhu)
07:51 PM Bug #17817 (Closed): --jit outputs ./tmp/_ruby_mjit_*.h: No such file or directory on with TMP
jeremyevans0 (Jeremy Evans)
07:50 PM Bug #14826 (Closed): make: *** [.ext/include/sparc-solaris2.10/rb_mjit_min_header-2.6.0.h] Error 1 on Solaris 10 with very old gcc3
jeremyevans0 (Jeremy Evans)
07:41 PM Feature #19545: lp/hp logic parsing inconsistency
Not all Ruby code is allowed directly as a method argument. You can surround the code with parentheses to allow it, so `puts((false or not false))` works. This is a similar issue as `puts(raise rescue false)`, but not exactly the same.... jeremyevans0 (Jeremy Evans)
07:13 PM Bug #19548 (Rejected): Ambiguous and confusing syntax for alias/undef arguments
This isn't a bug, nor does it appear to be introduced by #8851 (that added support for `%s` symbol literals with `alias`/`undef`, other symbol literals were already supported). `undef` and `alias` have always accepted symbols and bare w... jeremyevans0 (Jeremy Evans)
06:23 PM Feature #18368: Range#step semantics for non-Numeric ranges
Ah yes, sorry for that. Whenever I write and review something before posting, it seems fine. And whenever I re-read it a week later it feels too strong. Maybe it's a curse. Please accept my advance apologies if I'm doing the same thing i... Dan0042 (Daniel DeLorme)
05:24 PM Bug #19570 (Closed): `Exception#full_message` raises an `EncodingError` if the exception contains UTF8 characters after a newline and `Exception#cause` contains UTF8 characters
```
e = begin
begin
raise "Übersicht"
rescue => e
raise "\n#{e.message}"
end
rescue => e
e
end
e.full_message
```
will reproduce the error with the exception `incompatible character encodings: ASCII-8BIT and U...
timothy.willard (Timothy Willard)
03:59 PM Revision ba4ff255 (git): Avoid failing test_enable on warnings
This fails on RubyCI due to RJIT warnings too often. It should be enough
to test RJIT feature in test_rjit_version. We only want warnings instead
of test failures when there are warnings, at least for this case.
k0kubun (Takashi Kokubun)
03:44 PM Revision 3cb5e755 (git): Fix a test_rubyoptions failure
k0kubun (Takashi Kokubun)
03:14 PM Feature #19567: Add Oxford Comma Support for better readability
What if there was a `american_english: true` magic comment that allowed this behavior? Then Ruby could support other English idioms and it would be extensible. Also British people could turn it off. luke-gru (Luke Gruber)
03:04 PM Bug #19566: OptionParser::on raises unsupported argument type: URI (ArgumentError) but shouldn't
You need to `require "optparse/uri"`. The docs should probably mention that if they don't already. luke-gru (Luke Gruber)
01:03 PM Bug #19569 (Closed): #map on Enumerator::Lazy block arguments seem to differ from regular #map
A Ruby 2 to 3 upgrade surfaced the following issue:
Ruby 2:
```
irb(main):252:0> [1, 2, 3].to_enum.lazy.zip([:a, :b, :c]).map(&:last).to_a
=> [:a, :b, :c]
```
Ruby 3:
```
irb(main):020:0> [1, 2, 3].to_enum.lazy.zip([:a, :...
TomNaessens (Tom Naessens)
11:24 AM Feature #19435: Expose counts for each GC reason in GC.stat
> Rails calls GC.stat(:total_allocated_objects) on every request
Yes, but it's actually a bit silly because it only works properly with non-threaded servers (e.g. Unicorn).
> ...
It's implemented as many `if (key == XXX) return att...
byroot (Jean Boussier)
09:01 AM Misc #17137 (Assigned): Cooperation on maintaining official docker ruby images
hsbt (Hiroshi SHIBATA)
07:49 AM Revision 46e93ef5 (git): RJIT: Propagate self's type information
k0kubun (Takashi Kokubun)
07:39 AM Revision ca810235 (git): RJIT: Upgrade type on jit_guard_known_class
k0kubun (Takashi Kokubun)
07:02 AM Revision 1d452c2c (git): RJIT: Upgrade type to Fixnum after guard
k0kubun (Takashi Kokubun)
06:54 AM Revision 0abe9d8b (git): RJIT: Upgrade type to String after guard
k0kubun (Takashi Kokubun)
06:49 AM Revision f0b69eb1 (git): RJIT: Upgrade type to Array after guard
k0kubun (Takashi Kokubun)
06:37 AM Revision d876c008 (git): RJIT: Limit the number of versions per block
k0kubun (Takashi Kokubun)
06:24 AM Revision 3bacc387 (git): RJIT: Find a best matching block version
k0kubun (Takashi Kokubun)
06:11 AM Revision eb51248c (git): RJIT: Upgrade type to UnknownHeap after guard
k0kubun (Takashi Kokubun)
06:07 AM Revision be4e16bc (git): RJIT: Update type information on setn insn
k0kubun (Takashi Kokubun)
06:06 AM Revision 50285d28 (git): RJIT: Swap type information on swap insn
k0kubun (Takashi Kokubun)
05:32 AM Revision 0276c1d9 (git): * remove trailing spaces. [ci skip]
git[bot]
05:32 AM Revision d546f8c5 (git): RJIT: Store type information in Context
k0kubun (Takashi Kokubun)
05:20 AM Revision 09ad7e20 (git): Update default gems list at 6fb6d85aeed3ed12cf92ae2af00908 [ci skip]
git[bot]
05:19 AM Revision 6fb6d85a (git): [ruby/fileutils] Bump up v1.7.1
https://github.com/ruby/fileutils/commit/7138d85156 hsbt (Hiroshi SHIBATA)
03:43 AM Revision 27f709aa (git): Rename YAML::VERSION. It's conflict with Psych::VERSION
hsbt (Hiroshi SHIBATA)
03:00 AM Revision b5c8c73f (git): Fixed version detection paths in ruby repository
hsbt (Hiroshi SHIBATA)
02:45 AM Revision 14f442a9 (git): [ruby/base64] Expose Base64::VERSION
https://github.com/ruby/base64/commit/dda85a0839 hsbt (Hiroshi SHIBATA)
02:45 AM Revision ba4f01f0 (git): [ruby/yaml] Expose YAML::VERSION
https://github.com/ruby/yaml/commit/8776bc2634 hsbt (Hiroshi SHIBATA)
02:41 AM Revision 6dcd3999 (git): [ruby/tsort] Expose TSort::VERSION
https://github.com/ruby/tsort/commit/09f2275958 hsbt (Hiroshi SHIBATA)
02:40 AM Revision a70653ca (git): [ruby/find] Expose Find::VERSION
https://github.com/ruby/find/commit/a24124a08a hsbt (Hiroshi SHIBATA)
02:05 AM Feature #19555: Allow passing default options to `Data.define`
To clarify what I mean, this is a (very rough) demonstration:
``` ruby
class Data
def self.with_defaults(*symbols, **defaults, &block)
defaults&.each { |key, value| raise ArgumentError, "#{key} must be immutable" unless Racto...
FlickGradley (Nick Bradley)
01:07 AM Revision 2f1586f6 (git): Check leaked global symbols by default
nobu (Nobuyoshi Nakada)

04/02/2023

11:50 PM Revision 8968b47b (git): RJIT: Refactor getlocal and setlocal
k0kubun (Takashi Kokubun)
10:27 PM Revision 6002b126 (git): RJIT: Support entry with different PCs
k0kubun (Takashi Kokubun)
09:57 PM Bug #4040: SystemStackError with Hash[*a] for Large _a_
I've updated my pull request to include additional optimizations for:
* cfunc: 10-15* for f(*a) and 35-40% for f(*a, **kw) if kw is empty
* send: 5-115% depending on type of call
* symproc: 5-100% depending of type of call
* method...
jeremyevans0 (Jeremy Evans)
09:47 PM Revision 4fc33612 (git): RJIT: Support has_opt ISEQs
k0kubun (Takashi Kokubun)
09:32 PM Revision ad2b719f (git): RJIT: C::FL_TEST_RAW returns RBOOL
k0kubun (Takashi Kokubun)
09:22 PM Revision 57ee6279 (git): RJIT: Lazily guard block arg
to simplify the implementation k0kubun (Takashi Kokubun)
08:58 PM Revision 66f8efc3 (git): RJIT: Simplify cfunc implementation
k0kubun (Takashi Kokubun)
07:28 PM Revision 284a0ff9 (git): RJIT: Remove an unneeded branch
k0kubun (Takashi Kokubun)
07:23 PM Revision 3fe13475 (git): Skip assert_linear_performance for RJIT
k0kubun (Takashi Kokubun)
06:42 PM Revision bf758774 (git): RJIT: Simplify invokesuper implementation
k0kubun (Takashi Kokubun)
06:01 PM Revision 5cc644b1 (git): RJIT: Group blockarg exit reasons
k0kubun (Takashi Kokubun)
05:55 PM Revision cd1cd803 (git): RJIT: Support splat args
k0kubun (Takashi Kokubun)
05:40 PM Revision 6f2535de (git): RJIT: Prefix a constant with C namespace
k0kubun (Takashi Kokubun)
05:27 PM Revision 62188c85 (git): RJIT: Update exit reasons
k0kubun (Takashi Kokubun)
05:26 PM Revision 7778c292 (git): RJIT: Support keyword arguments
k0kubun (Takashi Kokubun)
05:15 PM Bug #19568 (Third Party's Issue): Windows mingw rust, failures with test/rubygems/test_gem_ext_cargo_builder.rb
The Windows ucrt & mingw builds recently started failing tests in:
test/rubygems/test_gem_ext_cargo_builder.rb TestGemExtCargoBuilder
Checking changed files from the last good build showed:
array.c
gems/bundled_gems
iseq.c
lib...
MSP-Greg (Greg L)
03:34 PM Revision cd94bcdc (git): [ruby/irb] Don't check RUBY_ENGINE when deciding whether to accept kargs
Ruby implementations like JRuby and TruffleRuby already indicate their
compatibility target with RUBY_VERSION. We don't need to exclude
them from accepting keyword arguments as long as they target 2.7+.
https://github.com/ruby/irb/commi...
st0012 (Stan Lo)
02:11 PM Revision f2579188 (git): [ruby/irb] Remove dead code (https://github.com/ruby/irb/pull/554)
* Remove unused ATTR_TTY and ATTR_PLAIN constants
They were added in https://github.com/ruby/irb/commit/d7d26b51bf47a52e4e2339e2ad509ace74f0e4c7
But the references were removed in https://github.com/ruby/irb/commit/1c76845cca59635bb0cf...
st0012 (Stan Lo)
01:46 PM Feature #18368: Range#step semantics for non-Numeric ranges
@Dan0042 Can you please elaborate your question (especially considering its extremely strong wording)?
This ticket is about changing the semantics of step to use `+` instead of `succ`, and Matz agreed to give it a try.
How exactly ...
zverok (Victor Shepelev)
09:11 AM Revision 9e1ff246 (git): leaked-globals: check for nm before files under missing [ci skip]
Abort if `nm` is not available, since it is needed by configure.ac to
check for prefix of external symbols.
nobu (Nobuyoshi Nakada)
08:56 AM Revision 3a683964 (git): leaked-globals: colorize skipping file names [ci skip]
nobu (Nobuyoshi Nakada)
06:51 AM Feature #8460: PATCH: optparse: add `keep_unknown` option
Updated on top of master yet again. felipec (Felipe Contreras)
06:09 AM Revision 1b475fcd (git): Remove an unneeded function copy
k0kubun (Takashi Kokubun)
06:07 AM Revision 6c55c3eb (git): RJIT: Fix a leaked-globals failure
k0kubun (Takashi Kokubun)
06:00 AM Revision a077b7e3 (git): RJIT: Support rest args
k0kubun (Takashi Kokubun)
05:39 AM Revision 87dc06ed (git): RJIT: Comment a location for each block
k0kubun (Takashi Kokubun)
04:47 AM Revision bf2617b8 (git): RJIT: Fix has_rest exit conditions
k0kubun (Takashi Kokubun)
04:42 AM Revision ee52255f (git): RJIT: Return CantCompile early for arg0 splat
k0kubun (Takashi Kokubun)
04:34 AM Revision 2ce5cfa2 (git): RJIT: Save PC on String#concat
k0kubun (Takashi Kokubun)
04:30 AM Revision e45ed2da (git): RJIT: Rewind stack_size on CantCompile and side exits
so that we can take an exit whenever we want.
As a starter, this commit also pops blockarg earlier than some
CantCompile exits.
k0kubun (Takashi Kokubun)
04:13 AM Revision 90cdc5b8 (git): RJIT: Let the caller of jit_push_frame handle stack_pop
because we want to do this way earlier for other types of calls. k0kubun (Takashi Kokubun)
04:03 AM Revision 28db75af (git): RJIT: Check stackoverflow earlier for ISEQ
k0kubun (Takashi Kokubun)
02:56 AM Feature #19567: Add Oxford Comma Support for better readability
why not `, or` too? ko1 (Koichi Sasada)
12:24 AM Revision 249fe18e (git): RJIT: Remove unused counters
k0kubun (Takashi Kokubun)
12:17 AM Revision f42cf3fd (git): RJIT: Migrate invokeblock to jit_call_iseq
k0kubun (Takashi Kokubun)
12:03 AM Revision cfea3197 (git): RJIT: Migrate bmethod to jit_call_iseq
k0kubun (Takashi Kokubun)

04/01/2023

11:56 PM Revision 0973b93e (git): RJIT: Start moving away from VM-like ISEQ handling
k0kubun (Takashi Kokubun)
10:13 PM Revision d71db90c (git): Fix a test in typeprof
Revert "Skip typeprof for now"
This reverts commit bdbf663cef31e2194bf87ae5c11dfe5525316ca8.
k0kubun (Takashi Kokubun)
07:05 PM Feature #19555: Allow passing default options to `Data.define`
I'm curious about this as well. Would it make sense to have a separate method `.with_defaults`, that checks the mutability (i.e. `.frozen?`) of its arguments?
If the intention is for Data to be "deeply" immutable, I could see this mak...
FlickGradley (Nick Bradley)
06:04 PM Revision bdbf663c (git): Skip typeprof for now
It started failing probably because ISEQ removed an unused field.
I'll have a look at fixing it on the typeprof side, but let me skip it
until it's fixed.
k0kubun (Takashi Kokubun)
05:22 PM Revision df1b007f (git): Remove unused VM_CALL_BLOCKISEQ flag
k0kubun (Takashi Kokubun)
05:17 PM Revision 175538e4 (git): Improve explanation of FCALL and VCALL
k0kubun (Takashi Kokubun)
01:58 PM Feature #19567: Add Oxford Comma Support for better readability
This looks a lot like perl. Moving towards normal-text-like programming language may be a dangerous way.
Looks nice, but feels scary and unnecessary.
hurricup (Alexandr Evstigneev)
05:27 AM Feature #19567 (Open): Add Oxford Comma Support for better readability
Ruby has regular commas:
```ruby
[a, b, c]
```
Ruby has trailing commas:
```ruby
[
a,
b,
c,
]
```
But I think both of these are hard to read compared to the Oxford comma.
We should introduce the Oxford comma so that...
tenderlovemaking (Aaron Patterson)
01:50 PM Bug #19563: Ripper.tokenize(code).join != code when heredoc and multiline %w[] literal is on the same line
The attached patch fails in an IRB test.
I'm not sure about this prompt transition, should this be fixed as expected?
As the line 004 ends the heredoc `C` but is inside `%W[`, isn't `]` ok here?
```
[25/39] TestIRB::TestRubyLex#tes...
nobu (Nobuyoshi Nakada)
01:08 PM Bug #19563: Ripper.tokenize(code).join != code when heredoc and multiline %w[] literal is on the same line
Similar for Unicode codepoints.
```ruby
p Ripper.tokenize("<<EOS || %[\\u{4a\n""EOS\n\n\n\n""5a}]").join("")
# "<<EOS || %[EOS\n\n\n\n5a}]"
```
nobu (Nobuyoshi Nakada)
10:10 AM Bug #18743: Enumerator#next / peek re-use each others stacktraces
Hello @ko1, let me know if the patch in the current form is acceptable.
Best,
Marcelo
marcper (Marcelo Pereira)
07:35 AM Revision 4ac8d117 (git): `*` in an array pattern should not be parsed as nil in ripper
After 6c0925ba7017efde6091e2ec4f1a6be268166696, it was impossible
to distinguish between the presence or absence of `*`.
# Before the commit
Ripper.sexp('0 in []')[1][0][2][1] #=> [:aryptn, nil, nil, nil, nil]
Ripper.sexp('...
ktsj (Kazuki Tsujimoto)
07:23 AM Revision 3a238eff (git): gdb: Fix a command example
It was actually harder to type `cfp + 1`. `cfp 1` also works and is more
useful.
k0kubun (Takashi Kokubun)
07:19 AM Revision a3074c12 (git): gdb: Fix specval
Somehow my gdb stopped recognizing VM_BLOCK_HANDLER_NONE (macro) today.
Just changing it to a safer code.
k0kubun (Takashi Kokubun)
07:19 AM Revision 1da77539 (git): gdb: Don't dump params and locals for C frames
k0kubun (Takashi Kokubun)
04:43 AM Feature #19559 (Rejected): Introduce `Symbol#+@` and `Symbol#-@`, and eventually replace boolean arguments with symbols
Giving `:"-exception"` symbol (plain) argument a meaning `exception: false` keyword argument is inconsistent. Making a few less strokes does not justify this weirdness.
Matz.
matz (Yukihiro Matsumoto)
01:43 AM Feature #19559: Introduce `Symbol#+@` and `Symbol#-@`, and eventually replace boolean arguments with symbols
rubyFeedback (robert heiler) wrote in #note-5:
> mame may like it
No
mame (Yusuke Endoh)
01:46 AM Feature #19565 (Rejected): Ignore lower-case/upper-case Proposal
Interesting idea. But we reject for several reasons:
* Ruby uses upper/lower case to classify the type of variables/constants
* We already have method/variable names only differ in cases
For those reasons, ignoring cases would int...
matz (Yukihiro Matsumoto)
12:48 AM Revision 9720f5ac (git): use `sleep_forever()` on `thread_join_sleep()`
because it does same thing. ko1 (Koichi Sasada)

03/31/2023

11:03 PM Bug #19566 (Closed): OptionParser::on raises unsupported argument type: URI (ArgumentError) but shouldn't
The documentation says
> OptionParser comes with a few ready-to-use kinds of type coercion. They are
> ...
But when I try to use the class `URI` as a coercion class:
```
op = OptionParser.new
op.on("--uri URI", URI)
```
I g...
jgomo3 (Jesús Gómez)
10:02 PM Revision 23892d95 (git): [ruby/irb] Drop unnecessary pends for truffleruby
https://github.com/ruby/irb/commit/2517039812 st0012 (Stan Lo)
08:12 PM Bug #19564: Range.cover? fails for Range wrapped in SimpleDelegator
I'm not sure if this is a bug. There are many other cases where wrapping an object in a delegate changes behavior (e.g. `if false` vs. `if SimpleDelegator.new(false)`).
If we want to allow this to work, the most likely approach woul...
jeremyevans0 (Jeremy Evans)
05:44 PM Bug #19564 (Rejected): Range.cover? fails for Range wrapped in SimpleDelegator
```ruby
test 'built-in cover? method is broken for SimpleDelegator' do
class TimeRangeDelegator < SimpleDelegator
end
t1 = Time.now
t2 = t1+1.day
t3 = t1+1.week
r_long = t1..t3
r_short = t1..t2
assert r_l...
PeteMichaud (Pete Michaud)
07:19 PM Revision 8938f146 (git): YJIT: Remove unused variable [ci skip]
alanwu (Alan Wu)
06:02 PM Feature #19559: Introduce `Symbol#+@` and `Symbol#-@`, and eventually replace boolean arguments with symbols
I think the idea is interesting; it also helps reduce the number of characters
used. mame may like it for golf code. :)
I do, however had, also think this may create a few issues. One I can think of
the top of the head may be that newco...
rubyFeedback (robert heiler)
07:19 AM Feature #19559: Introduce `Symbol#+@` and `Symbol#-@`, and eventually replace boolean arguments with symbols
One of the benefits or Ruby used to be readability. There were great times when `Integer("2.3", :exception => false)` was standard. Than came the JS hash notation `Integer("2.3", exception: false)` which have not improved the situation a... vo.x (Vit Ondruch)
02:41 AM Feature #19559: Introduce `Symbol#+@` and `Symbol#-@`, and eventually replace boolean arguments with symbols
@austin `-(-:chomp)` would simply be invalid just like when you pass some random symbol there `:some_random_symbol` that is not expected there. And why would you write `+:"-chomp"`? There is no point in doing that. In the first place, as... sawa (Tsuyoshi Sawada)
05:55 PM Feature #19565 (Rejected): Ignore lower-case/upper-case Proposal
So, first april is on the horizon and in-before-we-go (nobu tends
to make quick first april proposals, so let's hurry up!)
It is here proposed to ignore case, that is, lower-case, and upper-case,
at the least for method calls. This ...
rubyFeedback (robert heiler)
04:13 PM Revision a9b6b25d (git): gdb: Visualize register positions on the left
k0kubun (Takashi Kokubun)
02:15 PM Revision 9e678cdb (git): YJIT: Suppress unnecessary `unsafe` block (#7634)
nobu (Nobuyoshi Nakada)
11:47 AM Bug #19563 (Closed): Ripper.tokenize(code).join != code when heredoc and multiline %w[] literal is on the same line
~~~ruby
Ripper.tokenize "<<EOF || %w[hello\nEOF\n\n\n\nworld]"
# actual result
["<<EOF", " ", "||", " ", "%w[", "hello", "\n\n\n\n", "EOF\n", "world", "]"]
# expected result
["<<EOF", " ", "||", " ", "%w[", "hello", "\n", "EOF\n", "...
tompng (tomoya ishida)
10:26 AM Revision 1d19776c (git): cosmetic change
reorder `sleep_forever()` and so on. ko1 (Koichi Sasada)
10:20 AM Revision 185f39df (git): gdb: Always show actual values in cfp
k0kubun (Takashi Kokubun)
10:05 AM Revision 0f368bfb (git): gdb: Show params and locals in cfp
k0kubun (Takashi Kokubun)
09:54 AM Revision 98347c25 (git): gdb: Dump env data in cfp command
k0kubun (Takashi Kokubun)
09:50 AM Revision f803bcfc (git): pass `th` to `thread_sched_to_waiting()`
for future extension ko1 (Koichi Sasada)
09:15 AM Revision 4c0f82eb (git): remove "\n" for `RUBY_DEBUG_LOG()`
because `RUBY_DEBUG_LOG()` add "\n" at the end of message. ko1 (Koichi Sasada)
09:10 AM Revision ad7362db (git): rename `rb_thread_t::locking_native_thread`
to `rb_thread_t::has_dedicated_nt` ko1 (Koichi Sasada)
09:08 AM Revision 95dafb53 (git): relax assertion
`ec` can be NULL in future. ko1 (Koichi Sasada)
09:08 AM Revision 369bdff9 (git): add debug log to `rb_ractor_thread_switch`
ko1 (Koichi Sasada)
09:08 AM Revision fdfd50d0 (git): reorder `thread_pthread.c` functions
ko1 (Koichi Sasada)
08:27 AM Revision 66755164 (git): add `RUBY_DEBUG_LOG` fo `each_machine_stack_value`
ko1 (Koichi Sasada)
07:52 AM Revision a57270a8 (git): Expand tabs in .gdbinit
k0kubun (Takashi Kokubun)
07:20 AM Revision 9f426491 (git): Put misc/gdb.py [experimental]
This works like:
```
(gdb) cfp
CFP (count=3, addr=0x7ffff73fef50):
$1 = {pc = 0x555556bf7818, sp = 0x7ffff72ff078, iseq = 0x7ffff2603270, self = 140737344619296, ep = 0x7ffff72ff058, block_code = 0x0,
__bp__ = 0x7ffff72ff060, jit_retu...
k0kubun (Takashi Kokubun)
06:58 AM Revision f500df09 (git): Fix ivar dump for RVARGC in .gdbinit
It was crashing with:
No symbol "ROBJECT_EMBED_LEN_MAX" in current context.
k0kubun (Takashi Kokubun)
05:23 AM Revision fbc6661a (git): Revert "dump `RUBY_DEBUG_LOG` logs into `/dev/null`"
This reverts commit 83667008b925c32b3ab70fb6ec70f7398e960d1e.
because not stable yet.
ko1 (Koichi Sasada)
03:47 AM Revision bc0a7a64 (git): [ruby/net-http] typofix
https://github.com/ruby/net-http/commit/4d31bde125 hsbt (Hiroshi SHIBATA)
03:22 AM Revision eedcd696 (git): [ruby/net-http] Fix previous commit
https://github.com/ruby/net-http/commit/1b276e2654 U.Nakamura
03:22 AM Revision d8b8294c (git): [ruby/net-http] Limit header length
https://github.com/ruby/net-http/commit/c245f7f9c8 U.Nakamura
02:28 AM Revision 2093e4c2 (git): `nt->serial` for `RUBY_DEBUG_LOG`
Show native thread's serial on `RUBY_DEBUG_LOG`.
`nt->serial` is also stored into `ruby_nt_serial` if the compiler
supports `RB_THREAD_LOCAL_SPECIFIER`.
ko1 (Koichi Sasada)
02:28 AM Revision 83667008 (git): dump `RUBY_DEBUG_LOG` logs into `/dev/null`
to test debug printing. ko1 (Koichi Sasada)
02:11 AM Revision bccdc041 (git): Check if `Bundler::EnvironmentPreserver` is defined
Only `Bundler` might be defined. `EnvironmentPreserver` and its
`BUNDLER_PREFIX` would be defined together in the same file.
nobu (Nobuyoshi Nakada)
01:14 AM Revision 5116e8bd (git): [ruby/rdoc] Read generated files in binary mode
So that fixes crash with "invalid byte sequence in US-ASCII" on
ci.rvm.jp and some RubyCIs.
https://github.com/ruby/rdoc/commit/4b416644f0
nobu (Nobuyoshi Nakada)
01:14 AM Revision cd65e4ad (git): [ruby/rdoc] Use `File.binread`
https://github.com/ruby/rdoc/commit/987c609df9 nobu (Nobuyoshi Nakada)
12:56 AM Revision 8523892d (git): Bump ossf/scorecard-action from 2.1.2 to 2.1.3
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.1.2 to 2.1.3.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md...
dependabot[bot]
12:38 AM Revision 3488eda4 (git): Fix gc_verify_internal_consistency error for pattern_matching in ripper
`gc_verify_internal_consistency` reports "found internal inconsistency"
for "test_pattern_matching.rb".
http://ci.rvm.jp/results/trunk-gc-asserts@ruby-sp2-docker/4501173
Ruby's parser manages objects by two different ways.
1. For pars...
yui-knk (Kaneko Yuichiro)

03/30/2023

11:31 PM Feature #19554: Invalid memory access detected by Valgrind when using Fibers
I'm just here to support Peter's take: Valgrind is a very useful tool for C extension maintainers to find and prevent illegal memory access. It's been an incredibly valuable tool for me over the ~15 years I've been a maintainer, and is a... mdalessio (Mike Dalessio)
10:11 PM Feature #19554: Invalid memory access detected by Valgrind when using Fibers
> It's unlikely that Valgrind will work with CRuby out of the box without Valgrind specific code e.g. for marking stacks, poisoning "freed" memory, etc.
Valgrind (without the memory leak detection feature, so only detecting invalid me...
peterzhu2118 (Peter Zhu)
02:09 AM Feature #19554: Invalid memory access detected by Valgrind when using Fibers
> I haven't looked too much into ASAN, I'll look into it further. My main concern with ASAN is the need for Ruby to be compiled with it turned on and that additional code may need to be added into native extensions to support it. Both of... ioquatix (Samuel Williams)
10:01 PM Revision a8782c45 (git): YJIT: Test more kw and rest cases and change exit name
Jimmy Miller
09:38 PM Revision dabeec80 (git): [ci skip] LLDB: Fix rp for arrays
eightbitraptor (Matt V-H)
09:15 PM Revision 9a617c06 (git): YJIT: Generate side exits as late as possible (#7612)
* YJIT: Generate side exits late as possible
* YJIT: s/for_stack_size/with_stack_size/
* YJIT: s/get_counter/exit_counter/
k0kubun (Takashi Kokubun)
07:29 PM Feature #19559: Introduce `Symbol#+@` and `Symbol#-@`, and eventually replace boolean arguments with symbols
What would be the result of the pathological cases?
```ruby
+:"-chomp"
-(-:chomp)
```
With the proposed implementation, it would be `:"-chomp"` and `:"--chomp"`, but those both feel wrong.
If we wanted to accept non-keyword a...
austin (Austin Ziegler)
05:50 AM Feature #19559: Introduce `Symbol#+@` and `Symbol#-@`, and eventually replace boolean arguments with symbols
While I like the goal of potentially more succinct boolean arguments I think this will be confusing and difficult to locate documentation for. baweaver (Brandon Weaver)
05:23 AM Feature #19559 (Rejected): Introduce `Symbol#+@` and `Symbol#-@`, and eventually replace boolean arguments with symbols
I propose to define `Symbol#+@` and `Symbol#-@`, so that we can add positive or negative polarity to symbols. A possible implementation can be equivalent to what can be achieved by this:
```ruby
class Symbol
def -@; "-#{self}".to_...
sawa (Tsuyoshi Sawada)
04:21 PM Bug #19558: str.dump.undump crashes when str contains both Unicode and ASCII control characters
https://github.com/nobu/ruby/tree/undump-ctrl nobu (Nobuyoshi Nakada)
04:16 PM Revision 339295dd (git): Fix missing receiver [ci sip]
nobu (Nobuyoshi Nakada)
01:19 PM Bug #19562 (Closed): Setting default_(in|ex)ternal encoding after running an Ractor freezes ruby
The following command blocks infinitely and must be killed with "kill -9"
```
ruby -e "Ractor.new{}.take; Encoding.default_external = Encoding::ISO8859_2"
```
Backtrace is:
```
#0 futex_wait (private=0, expected=2, futex_word=...
larskanis (Lars Kanis)
12:41 PM Revision 23a53267 (git): Fix previous commit
U.Nakamura
12:34 PM Revision 1f4d4558 (git): Fix previous commit
U.Nakamura
11:56 AM Feature #19561 (Closed): ObjectSpace::WeakMap#delete and ObjectSpace::WeakKeyMap#delete
I just realized in https://bugs.ruby-lang.org/issues/19560#Ruby-shim that there's no way to remove elements from either WeakMaps.
I think they could both benefit from a `delete` method.
### Use case
For example, to keep track of...
byroot (Jean Boussier)
11:48 AM Revision 648870b5 (git): Support `IO#pread` / `IO#pwrite` using fiber scheduler. (#7594)
* Skip test if non-blocking file IO is not supported. Samuel Williams
11:43 AM Feature #19560 (Open): IO#close_on_fork= and IO#close_on_fork?
### Context
Forking setups are extremely common in the Ruby ecosystem, as they remain the primary way to get parallelism with MRI.
Generally speaking it works very well, however there are two main issues library authors and applica...
byroot (Jean Boussier)
11:10 AM Revision 4ec0bac2 (git): Limit header length
U.Nakamura
11:08 AM Revision 153bdddf (git): Limit header length
U.Nakamura
11:06 AM Revision e51014f9 (git): v3.2.2p53
naruse (Yui NARUSE)
11:05 AM Revision 936b705d (git): v3.2.1p53
naruse (Yui NARUSE)
10:59 AM Revision b427e357 (git): [Backport #19161] merge part of 96d1acfdf6c6b42f2029f44d5b5920961d6efa92
Check for TLS usability
On all platforms using GCC, even other than darwin.
U.Nakamura
10:54 AM Revision 34d5d105 (git): Merge Time-0.2.2 (#7623)
hsbt (Hiroshi SHIBATA)
10:53 AM Revision 957bb7cb (git): Merge Time-0.2.2
hsbt (Hiroshi SHIBATA)
10:49 AM Revision 69f0cafa (git): * 2023-03-30 [ci skip]
git[bot]
10:49 AM Revision 53a7cee6 (git): Merge Time-0.1.1
hsbt (Hiroshi SHIBATA)
10:48 AM Revision 6439ebc4 (git): * 2023-03-30 [ci skip]
git[bot]
10:48 AM Revision e3f18f7d (git): Make RFC2822 regexp linear
https://hackerone.com/reports/1485501 nobu (Nobuyoshi Nakada)
10:48 AM Revision be9026a7 (git): Test for quadratic backtracking on invalid time
https://hackerone.com/reports/1485501 nobu (Nobuyoshi Nakada)
10:48 AM Revision 2cb83060 (git): Fix quadratic backtracking on invalid time
https://hackerone.com/reports/1485501 nobu (Nobuyoshi Nakada)
10:47 AM Bug #19547 (Closed): `RubyVM::AST.parse("\\", keep_tokens: true)` dumps core
Applied in changeset commit:git|6f122965cf8704f019445faead58040e9be2effb.
----------
[Bug #19547] Add token for unescaped backslash
This token is exposed only when `RubyVM::AbstractSyntaxTree` with
`keep_tokens` option.
nobu (Nobuyoshi Nakada)
08:17 AM Bug #19547: `RubyVM::AST.parse("\\", keep_tokens: true)` dumps core
https://github.com/nobu/ruby/tree/backslash-token
https://github.com/ruby/ruby/pull/7622
nobu (Nobuyoshi Nakada)
10:47 AM Revision 6f122965 (git): [Bug #19547] Add token for unescaped backslash
This token is exposed only when `RubyVM::AbstractSyntaxTree` with
`keep_tokens` option.
nobu (Nobuyoshi Nakada)
10:44 AM Revision cbfd0299 (git): [ruby/time] Make RFC2822 regexp linear
https://hackerone.com/reports/1485501
https://github.com/ruby/time/commit/51034bda4c
nobu (Nobuyoshi Nakada)
10:44 AM Revision aa388550 (git): [ruby/time] Fix quadratic backtracking on invalid time
https://hackerone.com/reports/1485501
https://github.com/ruby/time/commit/2444456fc1
nobu (Nobuyoshi Nakada)
10:44 AM Revision 623027bf (git): [ruby/time] Test for quadratic backtracking on invalid time
https://hackerone.com/reports/1485501
https://github.com/ruby/time/commit/b30b7bc6e6
nobu (Nobuyoshi Nakada)
10:07 AM Bug #19551: Backport commits for CI failures
Thank you very much as always for your hard work.
As for your question, I believe there is no problem with merging pull requests that involve obvious fixes, such as fixing CI failures, into stable branches.
nagachika (Tomoyuki Chikanaga)
09:19 AM Revision 53542682 (git): bump patchlevel
nagachika (Tomoyuki Chikanaga)
05:56 AM Revision f5b824c7 (git): show debug log for `ractor_terminal_interrupt_all`
ko1 (Koichi Sasada)
05:56 AM Revision 30b43f4f (git): `rb_ractor_thread_list()` only for current ractor
so that no need to lock the ractor. ko1 (Koichi Sasada)
05:56 AM Revision 94e41822 (git): `rb_current_ractor_raw(b)`
`rb_current_ractor()` expects it has valid `ec` and `r`.
`rb_current_ractor_raw()` with a parameter `false` allows to return
NULL if `ec` is not available.
ko1 (Koichi Sasada)
05:56 AM Revision ba72849a (git): cosmetic change
ko1 (Koichi Sasada)
05:55 AM Revision f89c3482 (git): enable GH actions on `USE_RUBY_DEBUG_LOG=1`
ko1 (Koichi Sasada)
05:53 AM Feature #17290 (Closed): Syntax sugar for boolean keyword argument
jeremyevans0 (Jeremy Evans)
05:35 AM Feature #17290: Syntax sugar for boolean keyword argument
I withdraw this proposal. Please close it. I came up with a better idea #19559. sawa (Tsuyoshi Sawada)

03/29/2023

09:57 PM Revision 1b064227 (git): YJIT: Leave cfp->pc uninitialized for VM_FRAME_MAGIC_CFUNC
C function frames don't need to use the VM-specific pc field to run
properly. When pushing a control frame from output code, save one
instruction by leaving the field uninitialized.
Fix-up rb_vm_svar_lep(), which is used while setting l...
alanwu (Alan Wu)
08:47 PM Feature #19554: Invalid memory access detected by Valgrind when using Fibers
Thanks for the reply @ioquatix!
I haven't looked too much into ASAN, I'll look into it further. My main concern with ASAN is the need for Ruby to be compiled with it turned on and that additional code may need to be added into native ...
peterzhu2118 (Peter Zhu)
08:02 AM Feature #19554: Invalid memory access detected by Valgrind when using Fibers
Supporting Valgrind is a good idea. However, I actually prefer ASAN. But both are good tools.
I recently added ASAN support for fibers/coroutines: https://github.com/ioquatix/ruby/commit/901525b1079ac02da0122a76d8e4c3546a7f80f6
I also ...
ioquatix (Samuel Williams)
06:53 PM Revision a1a4d774 (git): YJIT: code_gc(): Assert self is inline to avoid other_cb()
The derived `&mut` from `other_cb()` overlapped with the parameter
`ocb`.
Use `cfg!()` instead of `#[cfg...]` to avoid unused warnings.
alanwu (Alan Wu)
06:53 PM Revision cdededf2 (git): YJIT: Take VM lock in RubyVM::YJIT.code_gc
Code GC needs synchronization. alanwu (Alan Wu)
06:53 PM Revision 93b69971 (git): YJIT: Fix overlapping &mut in Assembler::code_gc()
Making overlapping `&mut`s triggers Undefined Bahavior. This function
previously had them through `cb` and `ocb` aliasing with `self` or live
references in the caller.
To fix the overlap, take `ocb` as a parameter and don't use `get_inl...
alanwu (Alan Wu)
06:22 PM Feature #19555: Allow passing default options to `Data.define`
Thanks for the explanation @zverok.
That makes sense.
p8 (Petrik de Heus)
06:34 AM Feature #19555: Allow passing default options to `Data.define`
This is not simple as it seems (that's why we abstained of introducing something like that).
Imagine this:
```ruby
Point = Data.define(:x, :y, tags: [])
p1 = Point.new(1, 2)
p1.tags << 'foo'
p2 = Point2.new(3, 4)
p2.tags #...
zverok (Victor Shepelev)
04:31 PM Revision a8c6ba23 (git): YJIT: Rest and keyword (non-supplying) (#7608)
* YJIT: Rest and keyword (non-supplying)
* Update yjit/src/codegen.rs
---------
Co-authored-by: Maxime Chevalier-Boisvert <maximechevalierb@gmail.com>
Jimmy Miller
01:51 PM Revision b168141c (git): [ruby/reline] Drop Dialog#scrollbar_pos as we can store it in a
local variable
(https://github.com/ruby/reline/pull/529)
https://github.com/ruby/reline/commit/d0139975fd
Co-authored-by: tomoya ishida <tomoyapenguin@gmail.com>
st0012 (Stan Lo)
01:47 PM Bug #19558 (Open): str.dump.undump crashes when str contains both Unicode and ASCII control characters
Recently, as a result of a question I asked on Stack Overflow (https://stackoverflow.com/q/75866159), I learned about the existence of String#dump and String#undump. However, I also found what seems like a bug in them, in that apparently... ikaronen-relex (Ilmari Karonen)
10:20 AM Revision 02ecdf85 (git): [ruby/reline] Drop Unicode.take_range's optional arg as it's never
used
(https://github.com/ruby/reline/pull/528)
https://github.com/ruby/reline/commit/428fed4a6a
st0012 (Stan Lo)
09:57 AM Bug #19549: Inconsistency in backref parsing
https://github.com/nobu/ruby/tree/ungettable-string_dvar
https://github.com/ruby/ruby/pull/7615
nobu (Nobuyoshi Nakada)
09:36 AM Revision 3155b76e (git): Added ~\scoop\shims to PATH
hsbt (Hiroshi SHIBATA)
09:36 AM Revision 54ddf58a (git): Don't need to specify YACC name for scoop bison
hsbt (Hiroshi SHIBATA)
09:36 AM Revision a807fa6f (git): Use scoop instead of Chocolatey
chocolatey often returns 503 status. hsbt (Hiroshi SHIBATA)
09:14 AM Bug #19552 (Closed): Time.strftime("%-:::z") behaves differently between 2.7/3.0 v.s. 3.1/3.2
nobu (Nobuyoshi Nakada)
09:13 AM Bug #19552: Time.strftime("%-:::z") behaves differently between 2.7/3.0 v.s. 3.1/3.2
See #17544. nobu (Nobuyoshi Nakada)
01:14 AM Bug #19552 (Third Party's Issue): Time.strftime("%-:::z") behaves differently between 2.7/3.0 v.s. 3.1/3.2
hsbt (Hiroshi SHIBATA)
08:27 AM Bug #19557 (Open): Deadlock on STDOUT(ERR) lock on signal handler
The following Ruby code produces `deadlock; recursive locking (ThreadError)`.
It means some IO operations (`puts`, ...) is not used on trap handlers safely.
```ruby
trap(:USR1){puts 'world'}
Thread.new{loop{Process.kill(:USR1, $$);...
ko1 (Koichi Sasada)
07:44 AM Revision 9a1f6975 (git): RJIT: Propagate a set of args as a CallingInfo
k0kubun (Takashi Kokubun)
07:00 AM Revision f8f15e24 (git): Update bundled gems list at 2023-03-29
git[bot]
06:54 AM Revision e26908dc (git): [ruby/reline] Improve OSC sequence regexp. OSC sequence can end with
ST(ESC\) and it should not to include \a and \e inside.
(https://github.com/ruby/reline/pull/527)
https://github.com/ruby/reline/commit/a88052adec
tompng (tomoya ishida)
06:27 AM Bug #19556: Backport latest versions of URI
merged pull request for ruby_3_1 at 66ad6e533e968cb6a8f54674b1c3a3fd0a316893. nagachika (Tomoyuki Chikanaga)
05:36 AM Bug #19556 (Closed): Backport latest versions of URI
https://www.ruby-lang.org/en/news/2023/03/28/redos-in-uri-cve-2023-28755/ has been published. We should upgrade URI version each stable branch.
* [for Ruby 3.0](https://github.com/ruby/ruby/pull/7607)
* [for Ruby 3.1](https://github....
hsbt (Hiroshi SHIBATA)
06:27 AM Revision bfbf43b9 (git): * 2023-03-29 [ci skip]
git[bot]
06:27 AM Revision 66ad6e53 (git): Added assert_linear_performance for URI tests
hsbt (Hiroshi SHIBATA)
06:27 AM Revision 8db69f68 (git): Merge URI-0.10.2 for bundler
hsbt (Hiroshi SHIBATA)
06:27 AM Revision 8ce4ab14 (git): Merge URI-0.12.1
hsbt (Hiroshi SHIBATA)
05:54 AM Revision 2d99ef4f (git): Merge URI-0.10.2 for Ruby 3.0 (#7607)
* Merge URI-0.10.2
* Merge URI-0.10.0.2 for bundler
* Added assert_linear_performance for URI tests
hsbt (Hiroshi SHIBATA)
04:00 AM Revision 8c8d0680 (git): [ruby/win32ole] Skip test failure with mswin platform
https://github.com/ruby/win32ole/actions/runs/4507614838/jobs/7935550685?pr=18
https://github.com/ruby/win32ole/commit/39ae6c2bc7
hsbt (Hiroshi SHIBATA)
02:20 AM Feature #19458: Expose HEREDOC identifier
zverok (Victor Shepelev) wrote in #note-6:
> My thinking (the proposal I considered submitting but didn't fully form yet) was rather that HEREdocs might create some subclass, like `TaggedString` or something (which might also be able to...
joelhawksley (Joel Hawksley)
01:58 AM Revision 57e7caea (git): * 2023-03-29 [ci skip]
git[bot]
01:57 AM Revision 998fe8ac (git): Historical timezones of Lisbon in tzdata are unstable
nobu (Nobuyoshi Nakada)
01:57 AM Revision 4527440b (git): Skip test_europe_lisbon on macOS
until we figure out why it's failing. k0kubun (Takashi Kokubun)
01:57 AM Revision 78c2e282 (git): Bump up CodeQL v2
hsbt (Hiroshi SHIBATA)
01:57 AM Revision 408d2dbe (git): Skip test-bundler-prallel with macOS. It mixed system bundler path.
https://github.com/ruby/ruby/actions/runs/4061314416/jobs/7033111867 hsbt (Hiroshi SHIBATA)
01:57 AM Revision 57703ba1 (git): Pin Ubuntu 20.04 because Ruby 3.0 didn't support OpenSSL 3
hsbt (Hiroshi SHIBATA)
01:57 AM Revision 6ca5d3cf (git): Ruby 3.0 only supports `--jit-*` options
hsbt (Hiroshi SHIBATA)
01:57 AM Revision 9cb6b7d1 (git): Disable test-all on MJIT CI for now
https://github.com/ruby/ruby/actions/runs/3560006749/jobs/5979749144 k0kubun (Takashi Kokubun)
01:57 AM Revision 54d0a2af (git): .github: use GNUMAKEFLAGS instead of JOBS
A bit readable to me.
See also https://github.com/ruby/ruby/pull/4880
shyouhei (Shyouhei Urabe)
01:57 AM Revision fcab8cf7 (git): Test only --mjit-wait for now
We've disabled MJIT CI on GitHub Actions for a while. It's convenient
that fork repositories need to see failures or disable it.
We should remove unused CI by default instead of silently disabling it.
Since I saw --mjit-wait passed on m...
k0kubun (Takashi Kokubun)
01:57 AM Revision d8b1279d (git): Rename --jit to --mjit (#5248)
* Rename --jit to --mjit
[Feature #18349]
* Fix a few more --jit references
* Fix MJIT Actions
* More s/jit/mjit/ and re-introduce --disable-jit
* Update NEWS.md
* Fix test_bug_reporter_add
k0kubun (Takashi Kokubun)
01:57 AM Revision 332135b9 (git): Ubuntu 18.04 in GHA is retired
hsbt (Hiroshi SHIBATA)
01:57 AM Revision 33c0889c (git): Historical timezones of Lisbon in tzdata are unstable
nobu (Nobuyoshi Nakada)
01:57 AM Revision ab2fabf3 (git): Skip test_europe_lisbon on macOS
until we figure out why it's failing. k0kubun (Takashi Kokubun)
01:57 AM Revision cc705648 (git): Removed fetch-depth
Only the last commit is used, unless creating the ChangeLog file. nobu (Nobuyoshi Nakada)
01:57 AM Revision a57ffec6 (git): .github: use actions/checkout@v2 again
shyouhei (Shyouhei Urabe)
01:57 AM Revision c942a3cf (git): Use `--depth` on pull request
`--shallow-since=yesterday` for COMMIT_NUMBER_OF_DAY of `tool/actions-commit-info.sh`.
COMMIT_NUMBER_OF_DAY is mainly for master branch.
And `--shallow-since=yesterday` may fail on pull request.
So this revert to `--depth` on pull request.
znz (Kazuhiro NISHIYAMA)
01:17 AM Revision f95f5fda (git): * 2023-03-29 [ci skip]
git[bot]
01:17 AM Revision 6fa7e5e0 (git): Added assert_linear_performance for URI tests
hsbt (Hiroshi SHIBATA)
01:17 AM Revision 14f025a7 (git): Merge URI-0.10.0.2 for bundler
hsbt (Hiroshi SHIBATA)
01:17 AM Revision 6855779d (git): Merge URI-0.10.0.2
hsbt (Hiroshi SHIBATA)
12:52 AM Revision f241a8de (git): [ruby/uri] Increase rehearsals
nobu (Nobuyoshi Nakada)

03/28/2023

08:19 PM Feature #19555 (Closed): Allow passing default options to `Data.define`
Defining a subclass of `Data` with default attributes can currently be done by overriding `intialize`:
```ruby
class Point < Data.define(:x, :y, :z)
def initialize(x:, y:, z: 0) = super
end
p Point.new(1, 2)
#=> #<data Point x=...
p8 (Petrik de Heus)
07:21 PM Revision 39a34694 (git): YJIT: Add `--yjit-pause` and `RubyVM::YJIT.resume` (#7609)
* YJIT: Add --yjit-pause and RubyVM::YJIT.resume
This allows booting YJIT in a suspended state. We chose to add a new
command line option as opposed to simply allowing YJIT.resume to work
without any command line option because it allow...
maximecb (Maxime Chevalier-Boisvert)
07:11 PM Feature #19554 (Open): Invalid memory access detected by Valgrind when using Fibers
This issue was originally reported here: https://github.com/Shopify/ruby_memcheck/issues/14
Running the script shown below using `valgrind --trace-children=yes --num-callers=500 ruby test.rb` outputs a lot of invalid memory access err...
peterzhu2118 (Peter Zhu)
06:40 PM Revision 2f8a598d (git): YJIT: Stop using the starting_context pattern (#7610)
k0kubun (Takashi Kokubun)
03:48 PM Revision 250ff4ff (git): gem related automation must run only on master
naruse (Yui NARUSE)
03:47 PM Revision 2488b4dd (git): gem related automation must run only on master
naruse (Yui NARUSE)
01:47 PM Revision 00041131 (git): Skip failing test on MSWin
nobu (Nobuyoshi Nakada)
01:42 PM Feature #19553 (Open): Document thread-safety of OpenSSL related classes such as OpenSSL::PKey::RSA or OpenSSL::Cipher etc
From the ruby documentation it is not clear if these objects can be used (i.e. when assigned to a constant) by multiple threads.
Especially for the respective encrypting/decrypting method after those objects are fully initialized with ...
rupert (Robert Pankowecki)
12:49 PM Revision 1e9a218a (git): [ruby/reline] Expand the scanned array to later case statement more
straightforward
(https://github.com/ruby/reline/pull/526)
* Improve test coverage on Unicode.take_range
* Add test for Unicode.calculate_width
* Expand the scanned array to later case statement more straightforward
st0012 (Stan Lo)
12:20 PM Bug #19550 (Closed): Memory leak in iclass for 32 bit systems
Applied in changeset commit:git|417b1a36447cb2c650de55b433ba623541fb8bb3.
----------
Fix memory leak for iclass
[Bug #19550]
If !RCLASS_EXT_EMBEDDED (e.g. 32 bit systems) then the rb_classext_t is
allocated throug malloc so it must be...
peterzhu2118 (Peter Zhu)
12:20 PM Revision 417b1a36 (git): Fix memory leak for iclass
[Bug #19550]
If !RCLASS_EXT_EMBEDDED (e.g. 32 bit systems) then the rb_classext_t is
allocated throug malloc so it must be freed.
The issue can be seen in the following script:
```
20.times do
100_000.times do
mod = Module.new
...
peterzhu2118 (Peter Zhu)
12:04 PM Revision 18d32235 (git): Use merge_group
naruse (Yui NARUSE)
12:01 PM Revision 6ce6b4d1 (git): Use merge_group
naruse (Yui NARUSE)
11:36 AM Revision c3c461c4 (git): Merge RubyGems-3.4.10 and Bundler-2.4.10 (#7479)
* Merge RubyGems-3.4.7 and Bundler-2.4.7
* Merge RubyGems-3.4.8 and Bundler-2.4.8
* Skip failing test on MSWin
* Merge RubyGems-3.4.9 and Bundler-2.4.9
* Merge RubyGems-3.4.10 and Bundler-2.4.10
---------
Co-authored-by: Nobuyoshi ...
hsbt (Hiroshi SHIBATA)
11:36 AM Revision f8c775cb (git): Use URI-0.12.1 for Ruby 3.2 (#7603)
* Merge URI-0.12.1
* Use URI-0.12.1
* Update core_assertions for using assert_linear_performance
hsbt (Hiroshi SHIBATA)
11:18 AM Bug #19471: Regexp::compile does not handle :timeout argument
ruby_3_2 fb4ffce0dd8cae3b7d0141d3b1ea3f0ab710a45a merged revision(s) 680bd9027f8cb7977bbc216609db2f4e3cf199a8. naruse (Yui NARUSE)
09:52 AM Bug #19552: Time.strftime("%-:::z") behaves differently between 2.7/3.0 v.s. 3.1/3.2
Sorry, I was unaware that the origin is now in `ruby/date`. I re-submitted an Issue at: https://github.com/ruby/date/issues/93 dmikurube (Dai MIKURUBE)
09:38 AM Bug #19552 (Closed): Time.strftime("%-:::z") behaves differently between 2.7/3.0 v.s. 3.1/3.2
``` ruby
puts Time.now.utc.strftime("%-:::z")
```
Until Ruby 3.0 (tested with 2.7.7 and 3.0.5) :
```
+00
```
From Ruby 3.1 (tested with 3.1.3 and 3.2.1)
```
-00
```
dmikurube (Dai MIKURUBE)
09:45 AM Misc #19525: DevMeeting-2023-04-13
* [Bug #19551] Backport commits for CI failures
* Can I merge PR like "Fix CI failure" for stable branches myself from April 2023?
hsbt (Hiroshi SHIBATA)
09:38 AM Bug #19551 (Closed): Backport commits for CI failures
I created PRs to fix CI failure for stable or old stable branches.
* [Fix CI for ruby_2_7](https://github.com/ruby/ruby/pull/7259)
* [Fix CI for ruby_3_0](https://github.com/ruby/ruby/pull/7258)
* [Fix CI for ruby_3_2](https://githu...
hsbt (Hiroshi SHIBATA)
09:02 AM Revision c86ccccb (git): Revert "RBS: Pathname#taint and Pathname#untaint are removed"
This reverts commit 46132e78b7438389bf49a860a0cd8957f685dcb3, in favor
of 298cb57c115e789c021962c758eb734c2d8ee1f6.
nobu (Nobuyoshi Nakada)
08:17 AM Revision 6b05f125 (git): Skip commits only for tools
Get rid of accidents like 67feb782f947046f65951303893713052a19a546. nobu (Nobuyoshi Nakada)
08:17 AM Revision 98b409cb (git): Set FILTER_BRANCH_SQUELCH_WARNING only in child environment
nobu (Nobuyoshi Nakada)
08:17 AM Revision f6adc5be (git): Check if Bundler is defined
nobu (Nobuyoshi Nakada)
08:15 AM Revision a136ca0d (git): Bump actions/checkout from 3.4.0 to 3.5.0
Bumps [actions/checkout](https://github.com/actions/checkout) from 3.4.0 to 3.5.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](http...
dependabot[bot]
08:14 AM Revision 040fab37 (git): Ripper: Add keyword options to `assert_parse_files`
nobu (Nobuyoshi Nakada)
08:02 AM Revision 582aadb3 (git): merge revision(s) 2f916812a9b818b432ee7c299e021ec62d4727fb,ac458f6bc3c520c9f23364c85bfb033acda907a6:
Skip test_europe_lisbon on macOS
until we figure out why it's failing.
---
test/ruby/test_time_tz.rb | 1 +
1 file changed, 1 insertion(+)
Historical timezones of Lisbon in tzdata are unstable
...
naruse (Yui NARUSE)
07:57 AM Revision 9891797a (git): Use 3 way merge for merger.rb
Since --3way insists --index, git diff needs to compare with HEAD. naruse (Yui NARUSE)
07:26 AM Revision d766d534 (git): [rubygems/rubygems] Partly reverted
https://github.com/rubygems/rubygems/pull/6541
https://github.com/rubygems/rubygems/commit/21e07a04a1
hsbt (Hiroshi SHIBATA)
06:27 AM Revision 80be2e6c (git): Use URI-0.12.1
hsbt (Hiroshi SHIBATA)
06:27 AM Revision 1cbb5011 (git): Onboard Rubocop Naming/MemoizedInstanceVariableName rule to RubyGems.
retro (Josef Šimánek)
06:25 AM Revision 2322b189 (git): [rubygems/rubygems] Bump rb-sys
Bumps [rb-sys](https://github.com/oxidize-rb/rb-sys) from 0.9.68 to 0.9.70.
- [Release notes](https://github.com/oxidize-rb/rb-sys/releases)
- [Commits](https://github.com/oxidize-rb/rb-sys/compare/v0.9.68...v0.9.70)
---
updated-depende...
dependabot[bot]
06:25 AM Revision cd4b4ac7 (git): [rubygems/rubygems] Use double-quotes instead of single-quotes in warnings
https://github.com/rubygems/rubygems/commit/c7f1cb9941 hsbt (Hiroshi SHIBATA)
06:25 AM Revision 9cfd8330 (git): [rubygems/rubygems] Onboard Rubocop Naming/MemoizedInstanceVariableName rule to Bundler.
https://github.com/rubygems/rubygems/commit/d768be0c65 retro (Josef Šimánek)
06:25 AM Revision 4d4743f7 (git): [rubygems/rubygems] Fix installing plugins in frozen mode
Plugins don't use a lockfile, so ignore frozen related settings.
https://github.com/rubygems/rubygems/commit/f17a3bb81f
deivid (David Rodríguez)
06:25 AM Revision 674c9605 (git): [rubygems/rubygems] Fix incorrect removal of "ruby" platform from lockfile
When dependencies have changed, we'll be re-resolving, and we can't
really know whether the resolution will be valid or invalid for the Ruby
platform, so skip the removal in that case.
The fix worked, but made some other specs fail, and...
deivid (David Rodríguez)
06:25 AM Revision ed868f9a (git): [rubygems/rubygems] Fix unnecessary downgrade of top level dependency when unlocking
Bundler is very conservative by default, trying to preserve versions
from the lockfile as possible, and never downgrading them. However, when
it runs into a resolution error, it still tries to find a valid
resolution.
This fallback beha...
deivid (David Rodríguez)
06:25 AM Revision eaddd386 (git): [rubygems/rubygems] Also set min locked requirements when not unlocking
https://github.com/rubygems/rubygems/commit/3561ac23d6 deivid (David Rodríguez)
05:25 AM Revision fb4ffce0 (git): merge revision(s) 680bd9027f8cb7977bbc216609db2f4e3cf199a8: [Backport #19471]
[Bug #19471] `Regexp.compile` should handle keyword arguments
As well as `Regexp.new`, it should pass keyword arguments to the
`Regexp#initialize` method.
---
re.c | 2 +-
tes...
naruse (Yui NARUSE)
05:01 AM Revision 298cb57c (git): Update rbs's commit hash to avoid test failure on pathname (#7596)
pocke (Masataka Kuwabara)
04:56 AM Revision 7600e6bc (git): RJIT: Optimize definedivar using shapes
k0kubun (Takashi Kokubun)
03:41 AM Revision 82f46ddb (git): Bump github/codeql-action from 2.2.8 to 2.2.9
Bumps [github/codeql-action](https://github.com/github/codeql-action) from 2.2.8 to 2.2.9.
- [Release notes](https://github.com/github/codeql-action/releases)
- [Changelog](https://github.com/github/codeql-action/blob/main/CHANGELOG.md)
...
dependabot[bot]
02:12 AM Revision c2ea2298 (git): Update default gems list at 120d8d0ae2d6db4756f6d10ebff562 [ci skip]
git[bot]
02:12 AM Revision 120d8d0a (git): [ruby/uri] Bump version to 0.12.1
https://github.com/ruby/uri/commit/5c4f7d04bf hsbt (Hiroshi SHIBATA)
02:12 AM Revision 23f4904f (git): [ruby/uri] Fix quadratic backtracking on invalid URI
https://hackerone.com/reports/1444501
https://github.com/ruby/uri/commit/2f9585de17
nobu (Nobuyoshi Nakada)
02:12 AM Revision 9c687c65 (git): [ruby/uri] Test for quadratic backtracking on invalid URI
https://hackerone.com/reports/1444501
https://github.com/ruby/uri/commit/54abaa739b
nobu (Nobuyoshi Nakada)
01:51 AM Revision 708c4903 (git): RBS: Pathname#taint and Pathname#untaint are removed
nobu (Nobuyoshi Nakada)
01:18 AM Revision 67f37b01 (git): Consider prereleases regardless of whether locked
Prereleases are NOT considered even when the dependency specification
includes a prerelease segment, if the dependency is not locked. To me
that doesn't make sense, because I could create a Gemfile with say gem
"rails", ">= 7.0.0.beta1" ...
Michael Siegfried
01:18 AM Revision b31bd8b8 (git): [rubygems/rubygems] Rewrite GemVersionPromoter specs
Add tests for pre, move more of the setup into a helper method, and
restructure tests.
There seem to be five considerations for these tests (level, pre, strict,
locked, and whether the current version is a prerelease version, though
the...
Michael Siegfried
 

Also available in: Atom