Activity
From 08/20/2023 to 08/26/2023
08/26/2023
-
03:12 PM Revision 5c98ee02 (git): Define bounds-checking interfaces macro for each file
-
01:56 PM Revision a97dedf7 (git): [ruby/irb] Fix deprecation test when ran multiple times
- (https://github.com/ruby/irb/pull/695)
https://github.com/ruby/irb/commit/ae0e5bb80f -
09:54 AM Feature #18440: YJIT is enabled if any YJIT tuning options are set
- For what it's worth, I would expect `--yjit-*` options not to turn on YJIT. I agree that it's surprising, I would expect only `--yjit` or `RUBY_YJIT_ENABLE=1` to actually enable it.
-
09:48 AM Bug #19784: String#delete_prefix! problem
- Note that we have the same issue with `end_with?` and `delete_suffix`.
-
12:16 AM Bug #19784 (Closed): String#delete_prefix! problem
- Applied in changeset commit:git|b054c2fe06598f1141fdc337b10046f41f0e227c.
----------
[Bug #19784] Fix behaviors against prefix with broken encoding
- String#start_with?
- String#delete_prefix
- String#delete_prefix! -
01:51 AM Feature #19785 (Closed): Deprecate `RUBY_GC_HEAP_INIT_SLOTS`
- Applied in changeset commit:git|9ea9f992487711fa1a66637edcaf1327d0cd5099.
----------
[Feature #19785] Deprecate RUBY_GC_HEAP_INIT_SLOTS
This environment variable is replaced by
`RUBY_GC_HEAP_INIT_SIZE_%d_SLOTS`, so it doesn't make sens... -
01:50 AM Revision 9ea9f992 (git): [Feature #19785] Deprecate RUBY_GC_HEAP_INIT_SLOTS
- This environment variable is replaced by
`RUBY_GC_HEAP_INIT_SIZE_%d_SLOTS`, so it doesn't make sense to keep it. - 12:22 AM Revision 487d91fd (git): Update default gems list at e2b8eac767d41734520377b5cf6f44 [ci skip]
-
12:20 AM Revision e2b8eac7 (git): [ruby/yarp] Bump to version 0.9.0
- https://github.com/ruby/yarp/commit/b327e39527
08/25/2023
-
11:58 PM Revision b054c2fe (git): [Bug #19784] Fix behaviors against prefix with broken encoding
- - String#start_with?
- String#delete_prefix
- String#delete_prefix! -
11:58 PM Revision 808b0670 (git): Split string tests
-
11:58 PM Revision 00ac3a64 (git): Introduce `at_char_boundary` function
-
11:45 PM Revision cfdbbd67 (git): kw_rest_arg nd_cflag has not been used since 9720136
-
10:32 PM Revision 96a809f6 (git): Use require_relative in JSON tests
- to prevent them from conflicting with yarp/test_helper
-
10:27 PM Revision 480aee43 (git): Add Missing Counters to `rb_debug_counter_type` enum (#8297)
- Add missing counters to rb_debug_counter_type enum
On master we have calls to the RB_DEBUG_COUNTER_INC macro
for counters that are not getting defined in the
rb_debug_counter_type enum.
This commit adds those that are missing in order ... -
10:20 PM Revision 00ec8ded (git): Update deps
-
10:20 PM Revision 293959a7 (git): Remove config.h from targets necessary for YARP
-
10:20 PM Revision ca9a4479 (git): Remove version templating in YARP
-
10:20 PM Revision aea7e918 (git): Fix sync script for YARP
- 09:59 PM Revision b2d1c720 (git): Add documentation regarding how to build Ruby for debugging. (#8290)
- Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
-
09:15 PM Revision 439f069b (git): [ruby/yarp] Move tests from test/* to test/yarp/* to match CRuby
- This should make it easier on the sync to determine what changed
and hopefully result in fewer merge conflicts that have to be
manually resolved.
https://github.com/ruby/yarp/commit/17d82afbfc -
09:10 PM Revision 9b8602dd (git): [ruby/yarp] Introduce parse_lex instead of asking for a block
- https://github.com/ruby/yarp/commit/7e70339fe1
-
09:10 PM Revision 76512d78 (git): [ruby/yarp] Rename Location#to to Location#join, include checks
- https://github.com/ruby/yarp/commit/de8924e3ec
-
09:10 PM Revision 48138876 (git): [ruby/yarp] Accept a block to parse and parse_file to get lexer output as well
- https://github.com/ruby/yarp/commit/40fbf61a8d
-
09:10 PM Revision 0c1a749e (git): [ruby/yarp] Fix nested multi assignment locations
- https://github.com/ruby/yarp/commit/9a65f002dc
-
09:10 PM Revision 20cf9e3a (git): [ruby/yarp] Add a Location#to method for combining them
- https://github.com/ruby/yarp/commit/1db2de98ac
-
09:10 PM Revision 55a8add3 (git): [ruby/yarp] Fix rational parsing
- https://github.com/ruby/yarp/commit/c8f31eb5b6
-
09:10 PM Revision a31b069a (git): [ruby/yarp] Track block opening and closing locations
- https://github.com/ruby/yarp/commit/7984e4ddc7
-
09:10 PM Revision b9a2c967 (git): [ruby/yarp] Ensure interpolated symbols converted to regular symbols get opening and closing
- https://github.com/ruby/yarp/commit/386655d54f
-
09:10 PM Revision b112e89b (git): [ruby/yarp] Add closing_loc to WhileNode
- https://github.com/ruby/yarp/commit/b4132b876d
-
09:10 PM Revision df11a08d (git): [ruby/yarp] Add closing_loc to UntilNode
- https://github.com/ruby/yarp/commit/4362cecc2c
-
09:10 PM Revision 74780c3e (git): [ruby/yarp] Call shorthand should not result in a message location
- https://github.com/ruby/yarp/commit/ad0f9d35e3
-
08:27 PM Bug #18789 (Feedback): make test-bundled-gems failed after make install
- @znz I tried with current Ruby master and I could not reproduce the issue. Is it still a problem in your environment?
-
07:53 PM Revision 85c8e8b9 (git): Fix VPATH for yarp/version.h
-
07:48 PM Revision 93455261 (git): [ruby/yarp] Fix relative require for version in YARP gemspec
- https://github.com/ruby/yarp/commit/ca8e8cfa0d
-
07:47 PM Revision a7c7cd11 (git): Update sync script to handle yarp/version.h
-
07:43 PM Revision 2e29bd6c (git): [ruby/yarp] Use .rb suffix to find version file
- https://github.com/ruby/yarp/commit/7c530c79c2
-
07:43 PM Revision d2392e1c (git): [ruby/yarp] Fix relative require in template script
- https://github.com/ruby/yarp/commit/dea9eb5a12
-
07:37 PM Revision f6034971 (git): [ruby/yarp] Use templating to avoid duplicating the YARP version in many places
- https://github.com/ruby/yarp/commit/9c359fd92e
-
07:33 PM Revision dd07b702 (git): Fix mutation visitor build for YARP templating
-
07:31 PM Revision 0df515c0 (git): [ruby/yarp] Mark local variable targets in pattern matching
- https://github.com/ruby/yarp/commit/6c6700a001
-
07:31 PM Revision 7898b8e1 (git): [ruby/yarp] Provide target node versions
- https://github.com/ruby/yarp/commit/a026564d38
-
07:31 PM Revision aeef7091 (git): [ruby/yarp] Split up parse_target and parse_write
- https://github.com/ruby/yarp/commit/75d8bb93ea
-
07:31 PM Revision 2ebaf077 (git): [ruby/yarp] Provide a desugar visitor
- https://github.com/ruby/yarp/commit/9fad513089
-
07:31 PM Revision a38ca45b (git): [ruby/yarp] Split up AndWriteNode, OrWriteNode, OperatorWriteNode
- https://github.com/ruby/yarp/commit/6d3b3b5776
-
07:31 PM Revision 649aba28 (git): [ruby/yarp] Add Node#copy and MutationVisitor
- https://github.com/ruby/yarp/commit/3693091661
-
07:11 PM Revision 3b9085ad (git): [ruby/yarp] Lambda params should not accept blocks
- https://github.com/ruby/yarp/commit/706daae0ac
-
07:11 PM Revision f84690c6 (git): [ruby/yarp] ignore state on embexpr_end
- Ripper state can carry over from the previous node type making coparison less useful
https://github.com/ruby/yarp/commit/74509728d4 -
07:00 PM Revision 4825600d (git): Update NEWS.md for YJIT [ci skip]
- Reverse-merge Maxime's release notes changes to NEWS.md and added a
couple of things that are not in release notes. - 06:20 PM Revision 3525c460 (git): [ruby/yarp] fix: regexes and strings with escaped newline around a heredoc
- Found via the fuzzer.
https://github.com/ruby/yarp/commit/501757135a
Co-authored-by: Kevin Newton <kddnewton@gmail.com> -
06:19 PM Bug #19852 (Closed): Can't require bigdecimal - bundled_gems.rb error
- Applied in changeset commit:git|7d32011399cbc3aa7e4b728a440e13635a39f2ed.
----------
[Bug #19852] Use gem name without suffix -
04:48 PM Bug #19852: Can't require bigdecimal - bundled_gems.rb error
- See https://github.com/ruby/ruby/pull/8294
assumes that rb file is loaded before so file... -
03:22 PM Bug #19852 (Closed): Can't require bigdecimal - bundled_gems.rb error
- Running the following:
```ruby
ruby -rbigdecimal -e "puts BigDecimal::VERSION"
```
A warning is shown when bigdecimal.rb is loaded, when bigdecimal.so is loaded, an error is thrown:
```
/usr/local/lib/ruby/3.3.0+0/bundled_gems.rb... -
06:19 PM Revision bf3d48e1 (git): [ruby/yarp] Allow whitespace after "(en)coding" before ":", as in "encoding :"
- https://github.com/ruby/yarp/commit/d39a998182
-
06:16 PM Bug #17925: Pattern matching syntax using semicolon one-line
- This is interesting. It surfaces an incompatibility we have. I didn't realize Ruby didn't allow this, so YARP allows `case expression in 42; end` to parse as expected by the OP here. If `parse.y` can't support this, I will need to explic...
-
03:57 AM Bug #17925: Pattern matching syntax using semicolon one-line
- I thought it a trade-off.
To allow the statement, one-line pattern matching is not allowed there.
But it returns `true`/`false` only and may be useless for `case`. -
06:15 PM Feature #18440 (Feedback): YJIT is enabled if any YJIT tuning options are set
-
06:14 PM Feature #18812 (Closed): Add ability to trace exit locations for YJIT
- https://github.com/ruby/ruby/pull/5970 has already been merged.
-
06:13 PM Bug #18080: Syntax error on one-line pattern matching
- As Mike said, there's no issue with this for YARP.
-
05:23 PM Bug #18080: Syntax error on one-line pattern matching
- Looks like YARP already supports this.
```
"> YARP.parse <<~EOF
"> p 1 do
"> end in a
"> p 1 do
"> end => a
>> EOF
=>
#<YARP::ParseResult:0x00007f0f326c5280
@comments=[],
@errors=[],
@source=#<YARP::Source:0x00007f0f328c35a0... -
04:52 PM Bug #18080: Syntax error on one-line pattern matching
- @kddnewton Is this possible to support in YARP?
@yui-knk Is this possible to support in parse.y/lrama? -
06:07 PM Bug #18783 (Closed): OptionParser should recognize "-" as an optional argument
- Merged at commit:419ad1e13e6287d0b7a6ba1dfeb485d2f889bf9e
-
05:56 PM Bug #18651 (Closed): oob access in CP51932 -> CP50220 transcoder
-
05:49 PM Bug #18601: Invalid byte sequences in Big5 encodings
- @duerst ping.
-
05:48 PM Bug #18454: YJIT slowing down key Discourse benchmarks
- Yeah, this issue should be fine since they published this https://blog.discourse.org/2023/05/running-ruby-3-2s-yjit-in-production-at-discourse/.
-
05:35 PM Bug #18454 (Closed): YJIT slowing down key Discourse benchmarks
- YJIT in Ruby 3.2 was significantly improved from Ruby 3.1, and has further been improved. If YJIT in current Ruby master is still resulting in a slowdown for Discourse, please post an update.
-
05:47 PM Revision 7d320113 (git): [Bug #19852] Use gem name without suffix
-
05:44 PM Bug #18472 (Closed): rb_w32_map_errno is not found on Ruby-3.1.0
-
05:43 PM Bug #18457 (Closed): ruby 2.7.5 fiddle/types.rb use uint32_t but fiddle/cparser.rb lacks uint32_t
- I tested and confirmed this was fixed in Ruby 3.0.
-
05:37 PM Bug #18456 (Closed): rdoc non-determinism: module includes can be added once or twice to generated .ri
- If this is still an issue, can you please file it upstream: https://github.com/ruby/rdoc/issues
-
05:32 PM Bug #18429 (Feedback): Configure ruby-3.0.3 on Solaris 10 Unknown keyword 'URL' in './ruby.tmp.pc'
- @dklein Are you still having problems building Ruby 3.1 or 3.2 on Solaris?
-
05:28 PM Bug #18413 (Closed): Segfault in `ripper/lexer.rb`
-
05:26 PM Bug #18393 (Closed): TestReadline#test_interrupt_in_other_thread fails on armv7hl
- Closing as Readline was removed in commit:59fd67fc3d405e529e038172e769ff20a8fb5535
-
05:25 PM Bug #18381 (Closed): Default vs Bundled gems
- This has been documented in doc/standard_library.rdoc.
-
05:23 PM Bug #18379 (Closed): [CI] Windows mingw/ucrt - test-all timeout failures
-
05:19 PM Bug #18269 (Closed): trace_opt_not and trace_opt_regexpmatch2 insns are indistinguishable
-
05:17 PM Bug #18257 (Feedback): rb_mRubyVMFrozenCore is broken by GC run
- @vo.x This may have been fixed by commit:813a5f4fc46a24ca1695d23c159250b9e1080ac7, can you see if this is still a problem?
-
05:12 PM Bug #18186 (Closed): SEGV with system command - MinGW?
-
05:09 PM Bug #19851 (Closed): Ripper returns an extra block argument for :params with :args_forward
- Applied in changeset commit:git|40efbc7e406699a7a5c56802233d6748bf30805b.
----------
[Bug #19851] Ripper: Hide internal block argument ID -
04:10 PM Bug #19851: Ripper returns an extra block argument for :params with :args_forward
- https://github.com/ruby/ruby/pull/8293
-
02:19 PM Bug #19851 (Closed): Ripper returns an extra block argument for :params with :args_forward
- ```ruby
require 'ripper'
class BasicParser < Ripper
EVENTS.each do |event|
module_eval(<<~RUBY, __FILE__, __LINE__ + 1)
def on_#{event}(*args)
puts "#{event}(\#{args.inspect})"
args.unshift :#{event}
... -
05:08 PM Revision 40efbc7e (git): [Bug #19851] Ripper: Hide internal block argument ID
-
05:06 PM Bug #18144 (Closed): Timeout not working while regular expression match is running
- This issue appears fixed in Ruby 3.2, due to regexp optimizations by @makenowjust. If there are regexps that are still experiencing this issue, please report them and we can reopen.
-
05:02 PM Revision 61c5c2f1 (git): [ruby/yarp] Add names to classes and modules
- This should hopefully make it easier to compile these nodes, and
also for static analysis tools for having a quick label.
https://github.com/ruby/yarp/commit/f086662144 -
04:56 PM Bug #18119: Ractor crashes when instantiating classes
- I can reproduce this with current Ruby master on OpenBSD/amd64:
```
ruby(14812) in free(): write after free 0x64d22481cc0
Abort trap (core dumped)
```
The backtrace is slightly different than the one in the initial report, but s... -
04:48 PM Bug #18073 (Closed): test/ruby/test_jit.rb: "error: invalid use of '__builtin_va_arg_pack ()'" on Ruby 2.7.4 on gcc 4.8.5
- These failures look related to MJIT, which has been removed.
-
04:29 PM Bug #17678: Ractors do not restart after fork
- I updated https://github.com/ruby/ruby/pull/8283 to mark non-main ractors as terminated after fork.
-
03:29 PM Bug #17678: Ractors do not restart after fork
- Ack, that seems a reasonable way of looking at this, having a way to detect that the ractor is dead would be enough to write some auto-restart code after fork (Erlang supervisor trees here we go :D).
-
02:35 PM Bug #17678: Ractors do not restart after fork
- Thanks for that information. It looks like ractors contain information about their state (shown in `inspect`), but that state is not updated on fork, unlike threads. So I think there is a bug, and it's that non-main ractors do not have...
-
08:12 AM Bug #17678: Ractors do not restart after fork
- > The addition of Ractor#alive? and/or Ractor#status makes sense to me. Even in non-forked processes such methods could be useful. Note that you can get what you want already, by calling Ractor#inspect, so these methods would only need t...
-
03:30 PM Misc #19772: API naming for YARP compiler
- kddnewton (Kevin Newton) wrote in #note-19:
> We already have two copies of the C code. We have the vendored one that is copied into CRuby/JRuby/TruffleRuby, and we have the one that is inside the gem. The symbols are purposefully hidde... -
02:01 PM Misc #19772: API naming for YARP compiler
- We already have two copies of the C code. We have the vendored one that is copied into CRuby/JRuby/TruffleRuby, and we have the one that is inside the gem. The symbols are purposefully hidden so that they can be matched up with the corre...
-
01:31 PM Misc #19772: API naming for YARP compiler
- @kddnewton
> There are a couple of technical hurdles we will need to overcome if we introduce additional fields between versions, but I believe these will be easily overcome.
How? That seems near impossible to me, without having 2 ve... -
12:37 PM Misc #19772: API naming for YARP compiler
- Thank you @k0kubun, I didn't fully understand that requirement until you wrote it out here.
I would like to suggest we go with a combination of #2 and #4. I don't think we need to duplicate all of the constants. I think we could use t... -
02:34 PM Revision fe73f9f2 (git): Replace only use of `snprintf` in parser
-
02:33 PM Feature #19850: Get thread creation time
- In the process of debugging a stuck process on production (Sidekiq), we've been dumping all the threads' backtraces. We can see a thread that's sleeping at `net/http.rb`. (I've filed an issue here: https://github.com/ruby/net-http/issues...
-
04:59 AM Feature #19850 (Feedback): Get thread creation time
- It is unclear what you expect from `Thread#creation_time`. Could you please explain your use case in more detail and how it is useful for the case?
-
02:33 PM Bug #17516: forking in a ractor causes Ruby to crash
- I submitted a pull request to disallow fork from inside a ractor: https://github.com/ruby/ruby/pull/8283
-
01:25 PM Bug #17926 (Closed): spec/ruby/core/file/atime_spec.rb: a random failing test on Travis ppc64le
- jeremyevans0 (Jeremy Evans) wrote in #note-5:
> @jaruga We haven't been seeing this error on the ppc64le RubyCI server recently. Is this OK to close?
@jeremyevans0 Yeah, it's ok to close. -
01:01 PM Feature #19783 (Closed): Weak References in the GC
- Applied in changeset commit:git|bfb395c620b811b4b3cb7d535d58721268af285d.
----------
Implement weak references in the GC
[Feature #19783]
This commit adds support for weak references in the GC through the
function `rb_gc_mark_weak`. U... -
01:01 PM Revision f5c8bdaa (git): Implement WeakKeyMap using weak references
-
01:01 PM Revision ee9cc8e3 (git): Implement WeakMap using weak references
-
01:01 PM Revision 2091bf94 (git): Expose stats about weak references
- [Feature #19783]
This commit adds stats about weak references to `GC.latest_gc_info`.
It adds the following two keys:
- `weak_references_count`: number of weak references registered during
the last GC.
- `retained_weak_references_cou... -
01:01 PM Revision bfb395c6 (git): Implement weak references in the GC
- [Feature #19783]
This commit adds support for weak references in the GC through the
function `rb_gc_mark_weak`. Unlike strong references, weak references
does not mark the object, but rather lets the GC know that an object
refers to ano... -
01:01 PM Revision 63324395 (git): Add _without_gc functions to darray
- These functions manipulate darray without the possibility of triggering
GC, which is used for places that cannot trigger GC. These functions
crash when the allocation fails. -
01:00 PM Revision 7002d44c (git): Fix merge conflict in lib/yarp/lex_compat.rb
-
12:49 PM Revision ec7a2fdc (git): [ruby/yarp] Fix up lex compat on Ruby HEAD
- https://github.com/ruby/yarp/commit/7710cee248
-
12:39 PM Revision b8cab92a (git): [ruby/yarp] fix: unterminated regular expression with a heredoc
- Previously this snippet would track the same newline twice, leading to
a failed assertion in yp_newline_list_append.
https://github.com/ruby/yarp/commit/1d3fe19a94 -
12:38 PM Revision 90103f5d (git): [ruby/yarp] Add the ability to serialize shared strings
- https://github.com/ruby/yarp/commit/8d18c7ae29
-
11:19 AM Bug #19848 (Closed): Ripper BOM behavior
- Applied in changeset commit:git|1f76e42b85be4031bdedcc3e457e8fa949195304.
----------
[Bug #19848] Flush BOM
The token just after BOM needs to position at column 0, so that the
indentation matches closing line. -
11:07 AM Revision fe8f6dfe (git): Remove yarp hack for BOM
-
11:07 AM Revision 1f76e42b (git): [Bug #19848] Flush BOM
- The token just after BOM needs to position at column 0, so that the
indentation matches closing line. -
09:34 AM Revision 023b8ddd (git): [rubygems/rubygems] Don't use full indexes unnecessarily on legacy Gemfiles
- On legacy Gemfiles with multiple remote sources, where all of them
support the compact index API, we were still falling back to full
indexes.
Fixing this also allows to simplifying the code.
https://github.com/rubygems/rubygems/commit/... - 09:34 AM Revision b5d03746 (git): [ruby/openssl] Fix LIBRESSL_VERSION_NUMBER document mistake.
- * Fix the wrong man reference.
* According to the LIBRESSL_VERSION_NUMBER(3), the value always ends with 00f.
```
$ man -M /home/jaruga/.local/libressl-6650dce/share/man/ 3 LIBRESSL_VERSION_NUMBER
...
DESCRIPTION
OPENSSL_VERSION_NU... -
09:23 AM Revision 503f98eb (git): Remove SCRIPT_LINES__ related member functions
-
09:23 AM Revision 6aa16f9e (git): Move SCRIPT_LINES__ away from parse.y
-
08:30 AM Bug #17676: Accessing ENV from Ractor raises IsolationError
- Thank you Jeremy! :)
-
08:27 AM Revision d9cba2fc (git): include missing header
-
08:27 AM Revision a736420c (git): define back snprintf
-
08:27 AM Revision 26cb3b56 (git): config.h has to be the very beginning
- This header defines several essential macros.
-
08:27 AM Revision 140daab5 (git): #include <stdarg.h> for va_list
-
08:27 AM Revision fa327472 (git): snprintf could be defined
- include/ruby/subst.h has `#define snprintf` which breaks here.
-
08:27 AM Revision 1614e5eb (git): C structs cannot have two definitions
- Not allowed even the definitions are identical.
-
08:27 AM Revision 81620ed9 (git): needless duplicated typedef deleted
-
08:27 AM Revision ddc5c204 (git): VALUE is already defined
- This header is needed only when outside of the project
-
08:27 AM Revision 197e91f3 (git): build matrix for universal parser
-
08:27 AM Revision 12ec1fb2 (git): use configure-detected sanity of _Alignof
- This is actually already checked in (Ruby's) configure.
-
08:27 AM Revision fa54406f (git): empty initializer is a C++ ism
- C99 does not allow this syntax.
-
08:27 AM Revision eec85a63 (git): tool/update-deps --fix
-
08:27 AM Revision 097b766b (git): do not redefine a typedef
- duplicated typedef declaration was not allowed in C99.
-
08:27 AM Revision c914382d (git): do not redefine a typedef
- duplicated typedef declaration was not allowed in C99.
-
08:27 AM Revision fa271298 (git): workaround clang-17 -Wc2x-extensions
- cf: https://github.com/llvm/llvm-project/commit/874217f99b99ab3c9026dc3b7bd84cd2beebde6e
-
08:27 AM Revision b88bdf1e (git): direct use of CFLAGS
- Autoconf 2.71's `AC_PROG_CC` nukes `CC` variable, which we don't
want. For instance a user could specify `--with-gcc="gcc -std=c99"`
to _force_ C99 mode; but `AC_PROG_CC` just nulifies that `-std=c99`
part.
`AC_PROG_CC` is called every... -
08:27 AM Revision eb57b6ba (git): [CI]: LLVM 18 begun
-
08:16 AM Feature #19843: Promote bigdecimal as bundled gems at Ruby 3.4
- It would be appreciate if this decicions is reconsideed because adding the bigdecimal to the gemspec will install the same version, like 3.1.4 as of today, for all users regardless of which Ruby versions are used.
1. The Rails main br... -
08:10 AM Revision 5b407450 (git): Skip push by dependabot [ci skip]
- Would be pull-requested soon.
-
08:09 AM Feature #19846 (Closed): Extend warnings message of bundled gems for gem author
- Applied in changeset commit:git|f7359e112a2834e7360dcee3836508d2031b7e72.
----------
Suggest to add bundled gems into gemspec if 3rd party gem try to load gem from Gem::BUNDLED_GEMS::SINCE
[Feature #19846] -
06:57 AM Revision f7359e11 (git): Suggest to add bundled gems into gemspec if 3rd party gem try to load gem from Gem::BUNDLED_GEMS::SINCE
- [Feature #19846]
-
06:44 AM Bug #19784: String#delete_prefix! problem
- > Do you mean that if the argument or if the receiver String is not `String#valid_encoding?`, then we compare byte-by-byte, and otherwise we compare character-by-character ?
No.
> ...
I think it's this way. In the case of `"\xFF\xC... -
04:28 AM Bug #17263 (Closed): Fiber context switch degrades with number of fibers, limit on number of fibers
- My current conclusion is this:
Based on the `perf` `cpu-cycles:k`, we see proportional increase in overhead related to the number of fibers, despite ultimately having the same total number of context switches. This is unfortunate, but n... -
03:39 AM Bug #17263: Fiber context switch degrades with number of fibers, limit on number of fibers
- 1 million fibers is causing ~600GiB of virtual address space to be consumed. That seems like quite a lot:

I'm not surprised if this is causing the the OS to thrash/have issues. -
03:16 AM Bug #17263: Fiber context switch degrades with number of fibers, limit on number of fibers
- I ran some profiles to try and identify why it was so slow. What I found was `vm_push_frame` becomes slow.

vs

It's quite a big difference. I believe ... -
12:13 AM Bug #17263: Fiber context switch degrades with number of fibers, limit on number of fibers
- It looks like roughly 3 page faults per fiber. If I run `x` fibers, I get `3x` page faults. It's proportional to the number of fibers, but I'm not sure how expensive this is.
The CPU time is also costly, for `x` fibers, I get `50000x`... -
12:13 AM Bug #17263: Fiber context switch degrades with number of fibers, limit on number of fibers
- The difference is negligible but there did appear to be some improvement. We obviously need better benchmark tools, because this is total eye-ball statistics, but it's expected that less memory dependency between instructions should be b...
-
04:11 AM Revision 70272ca6 (git): Warn for bigdecimal.so case too
-
03:56 AM Revision 3a70afad (git): prime is bundled gems since Ruby 3.1.0. We should warn it under the bundler environment
-
03:52 AM Revision 28b2cb10 (git): We should also warn when loading 'bigdecimal/*' libraries
-
03:52 AM Revision bdd535ea (git): Decorate Hash syntax for Gem::BUNDLED_GEMS::EXACT
-
03:47 AM Bug #17646 (Closed): Check for `__builtin_mul_overflow` with `long long` arguments
- Applied in changeset commit:git|b635388a900206b673fc23b5442345236b84cd75.
----------
Check that __builtin_mul_overflow can handle long long
Fixes [Bug #17646]
Patch from xtkoba (Tee KOBAYASHI) -
03:47 AM Revision b635388a (git): Check that __builtin_mul_overflow can handle long long
- Fixes [Bug #17646]
Patch from xtkoba (Tee KOBAYASHI) - 03:08 AM Revision 945e79c9 (git): Bump actions/checkout from 3.5.3 to 3.6.0
- Bumps [actions/checkout](https://github.com/actions/checkout) from 3.5.3 to 3.6.0.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](http... -
01:48 AM Revision eb5eeb6f (git): [DOC] Fix link in NEWS.md
- I forgot to commit the second part in
775df74feb597555f0944ace2d59d10a24d4421e. -
01:46 AM Revision 6f1dfa74 (git): Resurrect srcs dependency for YARP templates (#8285)
-
01:45 AM Revision 775df74f (git): [DOC] Fix link in NEWS.md
-
01:43 AM Feature #19057: Hide implementation of `rb_io_t`.
- @naruse Here is the compatibility fix that will allow `kgio`, `unicorn` and so on to compile with no changes: https://github.com/ruby/ruby/pull/8286
Please feel free to merge that before doing the preview 2 release, if @normalperson h... -
01:07 AM Feature #19057: Hide implementation of `rb_io_t`.
- I'll release Ruby 3.3.0 preview 2 soon.
I'm concerning that those three projects don't support the preview yet.
A preview release is to allow people to test their applications, but without support of those foundational projects it's ha... - 01:28 AM Revision 40d774be (git): Avoid memory dependency between instructions. (#8284)
-
12:01 AM Bug #18036 (Closed): Pthread fibers become invalid on fork - different from normal fibers.
- I tested the example in https://bugs.ruby-lang.org/issues/18036#note-3 in my environment, and since Ruby 3.0, it doesn't fail (it does segfault on Ruby 2.7). I tested with Ruby master and the behavior is the same with both the amd64 cor...
08/24/2023
-
10:24 PM Feature #19850 (Rejected): Get thread creation time
- I was debugging some threads hanging issue and thought it would be nice to know how long a thread has been around for. Would there be interest in a `Thread#creation_time` (or some other name) that returns the time when the thread was cre...
-
10:05 PM Revision 97a97d6d (git): mv test/bom_test.rb test/yarp/
- This sync 0e3dc5a056abf51363070ad94de4a8097bc80197 wasn't successful.
-
09:48 PM Bug #17926 (Feedback): spec/ruby/core/file/atime_spec.rb: a random failing test on Travis ppc64le
- @jaruga We haven't been seeing this error on the ppc64le RubyCI server recently. Is this OK to close?
-
09:41 PM Revision f9aea757 (git): [DOC] RDoc for Process (#8282)
-
09:38 PM Bug #17925: Pattern matching syntax using semicolon one-line
- @kddnewton Is this possible to fix in YARP?
@yui-knk Is this possible to fix in parse.y/lrama? -
09:37 PM Revision ebb90347 (git): Remove cfp parameter from hook_before_rewind()
- It's only used once, and it has to equal `ec->cfp`, so just use that.
-
09:37 PM Revision 05e82742 (git): Make cfp constant and use it more in vm_exec_handle_exception()
- For writing THROW_DATA_VAL, being able to see that it's writing to the
same frame after modifying PC and SP is nice. -
09:35 PM Revision 5937a0da (git): YJIT: Refactor to use Option<BlockHandler> in SpecVal
- We pass block around as `Option<BlockHandler>` having SpecVal
match that simplifes code matching for the `None` case. -
09:35 PM Revision f61e620c (git): YJIT: Move block handler SpecVal variants into BlockHandler
- A refactor so that the variants correspond to
branches in vm_caller_setup_arg_block(). -
09:32 PM Bug #17826 (Closed): Ractor#take hangs if used in multiple Threads
- This appears fixed in Ruby 3.3.0-preview1, though it doesn't work in Ruby 3.2.2.
-
09:30 PM Revision 0e3dc5a0 (git): [ruby/yarp] Fix lex compat with BOM
- * BOM should not impact looking for the encoding string
* We should re-encode tokens when the encoding changes
* BOM should change the column of comments only
https://github.com/ruby/yarp/commit/119fc2d7b2 -
09:27 PM Bug #17799 (Feedback): Seg fault in rb_class_clear_method_cache
- @stanhu Have you had any similar failures with Ruby 3.2?
-
09:18 PM Bug #17722 (Closed): define_method with shareable results in "defined in a different Ractor"
-
09:12 PM Bug #17678: Ractors do not restart after fork
- As Ractors always use separate OS threads, and fork only runs the current thread in the forked process, I don't see a way for Ractors to continue where they left off after fork. I think auto-starting would likely be a bad idea, because ...
-
08:59 PM Bug #17676 (Closed): Accessing ENV from Ractor raises IsolationError
- This was fixed in commit:3aab870761ff0138ffd29e0a08b6cdf151e2acb4
-
08:56 PM Bug #17667 (Closed): Module#name needs synchronization
- This appears to have been fixed between Ruby 3.1 and 3.2. Ruby 3.0 and 3.1 both instantly crash with the given example, whereas Ruby 3.2 does not crash even if given a minute.
-
08:34 PM Bug #17543 (Closed): Ractor isolation broken by `self` in shareable proc
- This was fixed in commit:cce331272b07636d536c8227288ab3fbcf24e2aa
-
08:30 PM Bug #17531 (Closed): `did_you_mean` not Ractor friendly
- This was fixed, did_you_mean is now Ractor-friendly: https://github.com/ruby/did_you_mean/commit/8faba54b2d3ec9aa570691775f143801308c5b2f
-
08:01 PM Bug #17478 (Closed): Ruby3.0 is slower than Ruby2.7.2 when parsing a large CSV file
- I did some testing with the CSV example given in the original post repeated 400k times. Note that Ruby 2.7 ships with CSV 3.1.2 and Ruby 3.2 ships with CSV 3.2.6.
* 2.7: 49 seconds
* 3.2: 77 seconds
* 3.2 --yjit: 59 seconds
* 3.2 ... -
07:42 PM Feature #19842: Introduce M:N threads
- byroot (Jean Boussier) wrote in #note-21:
> @tenderlovemaking this issue was envisioned initially, I had a PR to pass such thread idea, but I guess it got forgotten about https://github.com/ruby/ruby/pull/6189.
> ...
Great! Yes, I wou... -
07:40 PM Feature #19842: Introduce M:N threads
- @tenderlovemaking this issue was envisioned initially, I had a PR to pass such thread idea, but I guess it got forgotten about https://github.com/ruby/ruby/pull/6189.
We could just merge that PR (which I think has value even aside fro... -
06:28 PM Feature #19842: Introduce M:N threads
- Since Ractors will time share on one native thread, I think that means multiple _live_ Ruby threads could also possibly share the same native thread.
We currently have some thread related event hooks like `RUBY_INTERNAL_THREAD_EVENT_R... -
07:38 PM Bug #17383 (Closed): 3.0 recursion memory|speed issues
- I tested the example:
* 2.7: 1178 seconds
* 3.2: 1315 seconds
* 3.2 --yjit: 1012 seconds
3.2 with --yjit is ~15% faster than 2.7, so whatever performance has been lost since 2.7 has been more than regained by --yjit.
-
07:27 PM Revision 90048241 (git): [ruby/yarp] A couple small stylistic updates for yp_scope_node
- * Ensure the node gets initialized in case of failure with no assertions
* Include lambda and top-level nodes for scopes
* Small indentation fixes
https://github.com/ruby/yarp/commit/be29e07391 -
07:06 PM Revision 90ff30e5 (git): [ruby/yarp] Requested changes
- https://github.com/ruby/yarp/commit/eb01ea17c1
-
07:06 PM Revision 82d84d74 (git): [ruby/yarp] Added BlockNode case to ScopeNode, fixed ScopeNode to have body
- https://github.com/ruby/yarp/commit/8bd3f59621
-
07:06 PM Revision ef82054b (git): [ruby/yarp] Added ModuleNode
- https://github.com/ruby/yarp/commit/29754d818b
-
07:06 PM Revision 82e1434e (git): [ruby/yarp] Pulled scope node out of config.yml, added necessary void returns
- https://github.com/ruby/yarp/commit/926e6bdd88
-
07:06 PM Revision d81634d3 (git): [ruby/yarp] Add a ScopeNode and a way to create scope nodes from existing nodes
- This commit creates a scope node, and exposes a method to get
ScopeNodes from other existing nodes. It still has TODOs around
creating ScopeNodes for other types of nodes, which will be
done in future commits.
https://github.com/ruby/ya... -
06:27 PM Bug #19848: Ripper BOM behavior
- https://github.com/ruby/ruby/pull/8281
-
04:31 PM Bug #19848: Ripper BOM behavior
- Apologies, I think I was wrong about the last part, it's part of the string but it doesn't show up on inspect. So this is just about the column information then.
-
04:21 PM Bug #19848 (Closed): Ripper BOM behavior
- When there is a byte-order mark in a file, the first token in the file usually begins at -3. For example:
```ruby
Ripper.lex("\xEF\xBB\xBF[]")
# => [[[1, -3], :on_lbracket, "[", BEG|LABEL], [[1, 1], :on_rbracket, "]", END]]
```
... -
06:24 PM Bug #17373 (Closed): Ruby 3.0 is slower at Discourse bench than Ruby 2.7
- It looks like the slowdown for refined methods was fixed by @ko1 in commit:cfd7729ce7a31c8b6ec5dd0e99c67b2932de4732. Even without that, I'm guessing with yjit, Ruby 3.2 is now faster than Ruby 2.6/2.7. If that is not the case, please re...
-
06:21 PM Feature #19849 (Open): Requiring file with autoload results in confusing error if file doesn't exist
- Given the following file that calls the `Example` constant:
```ruby
# example.rb
require_relative 'autoload_example.rb'
Example.new
```
and an autoload to define the `Example` constant, with an unknown path:
```ruby
# autoloa... -
05:53 PM Bug #17289 (Feedback): Time#strftime occurs Segmentation Fault on ruby-2.7.2p137
- @joker1007 Can you reproduce this issue with Ruby 3.2 or the master branch? Can you reproduce this issue without the strptime gem?
-
05:47 PM Bug #17196 (Closed): Segmentation Fault with Socket#close in Ractors
-
05:46 PM Revision 75c9c2c4 (git): [DOC] Process doc (#8279)
-
05:43 PM Misc #19772: API naming for YARP compiler
- > Going forward, the only people that will be using the Ruby API of the parser will be tool developers. (For example, formatters like Syntax Tree, linters like Rubocop, static analysis tools like Steep.)
Template engines like Haml that ... -
02:21 PM Misc #19772: API naming for YARP compiler
- I can also discuss multi-version support.
Starting in December, we will release YARP version `3.3`. In this version, the C parser itself will be frozen so that developers can always have access to the same behavior as Ruby version `3.... -
02:12 PM Misc #19772: API naming for YARP compiler
- > In summary the main thing I would like to keep in mind is that the Ruby API will be used by tool developers, and we should make it as easy as possible for them to maintain the tools.
Exactly. I believe for this reason the best and sim... -
01:41 PM Misc #19772: API naming for YARP compiler
- Thank you all for taking the time to discuss this issue at the meeting! I'm sorry I wasn't able to be there this time.
I have a couple of concerns about the naming, which I'd like to discuss further.
Going forward, the only people ... -
01:00 PM Misc #19772: API naming for YARP compiler
- Why introduce `Ruby::Parser` as a different namespace if it does the same as `YARP`?
It doesn't seem a good idea to have 2 APIs for the same thing (memory overhead, defining every node class twice, etc) and in fact it is problematic on ... -
10:54 AM Misc #19772: API naming for YARP compiler
- Supplemental information about "mutli-version support":
The parser gem supports multiple versions of Ruby grammars: `Parser::Ruby30`, `Parser::Ruby31`, `Parser:Ruby32`, `Parser::CurrentRuby`, ....
I guess the same functionality is re... -
10:52 AM Misc #19772: API naming for YARP compiler
- We discussed How to merge YARP to Ruby 3.3 at the dev meeting. Here is what @matz approved:
* MRI will use parse.y by default. Using an option (not concretely decided yet), it will use the built-in YARP.
* We introduce `::Ruby` modul... -
05:31 PM Bug #18622: const_get still looks in Object, while lexical constant lookup no longer does
- @matz This was reviewed during the June 2023 developer meeting and is still waiting for your response: https://github.com/ruby/dev-meeting-log/blob/master/2023/DevMeeting-2023-06-08.md#bug-18622-const_get-still-looks-in-object-while-lexi...
-
05:20 PM Bug #16920 (Closed): TestThread#test_signal_at_join fails on aarch64
- I reviewed every recent RubyCI arm/aarch64 failure, and this test did not fail in any of them. So failures must be rare. I'm going to close this. If this is still an issue and someone can come up with a reproducible test case, that wou...
-
05:06 PM Bug #16493 (Closed): TestThreadQueue#test_thr_kill is flaky on AArch64
-
04:05 PM Revision 58ca0cfa (git): [ruby/yarp] Fix backslash-r (CR) delimited strings
- now CR can be used as a string delimiter
https://github.com/ruby/yarp/commit/3d27bad797 -
04:05 PM Revision 791d572b (git): [ruby/yarp] A couple of small stylistic changes
- * `le_len` to `eol_length`
* Braces on the same line as switch case
* `peek_addr` -> `peek_at`
* `peek_at` -> `peek_offset`
* `match_line_ending_addr` -> `match_eol_at`
* `match_line_ending_at` -> `match_eol_offset`
https://github.com/r... -
03:56 PM Revision 432702a4 (git): [ruby/yarp] Encoding-dependent escapes
- https://github.com/ruby/yarp/commit/36a5b801c4
-
03:56 PM Revision 9aba46c6 (git): Sync YARP to c175f712522cc315f45cd2da308768b90f324dd0
-
03:35 PM Revision e1d7066a (git): [ruby/irb] Deprecate RubyLex and warn about referencing to it
- (https://github.com/ruby/irb/pull/692)
`RubyLex` has always been a private component of IRB, so we should
explicitly discourage usages of it.
Also, it should be placed under the `IRB` module like other components.
https://github.com/ru... -
03:08 PM Bug #19784: String#delete_prefix! problem
- mame (Yusuke Endoh) wrote in #note-5:
> Note that encoding validity is checked on a position-by-position basis:
That's not clear to me.
Do you mean that if the argument or if the receiver String is not `String#valid_encoding?`, then... -
11:48 AM Bug #19784: String#delete_prefix! problem
- Discussed at the dev meeting.
We agreed that both `start_with?` and `delete_prefix` should compare character by character if valid, and byte by byte for invalid.
```ruby
"\xFF\xFE".start_with?("\xFF") #=> true # not changed
"\x... -
01:45 PM Revision 20927a89 (git): [ruby/yarp] Improve handling of line endings
- Introduce three new inline helper functions:
- `match_line_ending`
- `match_line_ending_at`
- `match_line_ending_addr`
These functions are similar in signature to the `peek*` functions, but
return the length of the line ending being in... -
01:41 PM Feature #19057: Hide implementation of `rb_io_t`.
- Status of several projects that are affected by this change:
- `cool.io` has since been fixed and released.
- `unicorn` has merged a fix but it is not released: https://yhbt.net/unicorn.git/63c85c4282d15e22bd32a905883d2d0e149619d1/s/
- ... -
12:52 PM Bug #19847 (Feedback): Cannot install Ruby 3.2.2 on Windows using Visual Studio 2019
- I am attempting to build/install Ruby 3.2.2 open-source code on Windows using Visual Studio 2019. These are the steps I followed:
Using an x64 Native Tools Command Prompt (for Visual Studio 2019)..
1. `cd C:\tmp\ruby-3.2.2`
2. `wi... -
12:12 PM Revision 5ec1fc52 (git): Escape non-ascii characters in prelude C comments
- Non-ASCII code are often warned by localized compilers.
-
12:12 PM Revision 554b370b (git): Generate sources before checks
-
11:49 AM Feature #19777: Make `Kernel#lambda` raise when called without a literal block
- Discussed at the dev meeting. @matz said go ahead.
- 10:09 AM Revision 84a12d65 (git): Fix compile error on older systems without clock_get*
-
09:18 AM Feature #19790: Optionally write Ruby crash reports into a file rather than STDERR
- > I accept this proposal
Thank you!
> ...
Unless I'm misreading it, POSIX says `open(2)` should be async signal safe: https://man7.org/linux/man-pages/man7/signal-safety.7.html so we should be good.
Either way, I think the crash... -
09:10 AM Feature #19790: Optionally write Ruby crash reports into a file rather than STDERR
- I accept this proposal, at least we can experiment.
I am a bit worried about calling open(2) in other functions/system calls from the signal handler.
Matz.
-
09:07 AM Bug #19829 (Closed): Enumerator.product called with keyword arguments raises exception with not precise message
- I see no benefit from the proposed change, other than you cannot tell the method takes any keyword argument or not at all from the error message.
In that case, I advise reading the document.
Matz.
-
09:03 AM Misc #19740 (Closed): Block taking methods can't differentiate between a non-local return and a throw
- Unlike other languages e.g., C++ or Java, Ruby's `throw` is for non-local **return**, so that there's no reason to treat `return` and `throw` differently.
Use exceptions to represent failures. I understand this issue was caused by `time... -
08:59 AM Feature #19846 (Closed): Extend warnings message of bundled gems for gem author
- This is my task reminder. The current warnings feature of bundled gems only notice for Gemfile.
Like this:
```
$ cat Gemfile
# frozen_string_literal: true
source "https://rubygems.org"
gem "activesupport"
```
```
$ bun... -
08:40 AM Bug #19779: `eval "return"` at top level raises `LocalJumpError`
- Since we allow top-level return (from 2.4), it is nice to allow this too. But to be frank, it is low priority.
Matz.
-
07:06 AM Revision e777064e (git): Revert "Re-apply "Ruby 3.2 - Speed up rebuilding the loaded feature index and realpath cache (#8023)" (#8252)"
- This reverts commit 788b03d5ba82fd8b35ce1fe2618ce6bacc648333.
-
05:14 AM Revision fbe7962b (git): [ruby/open-uri] Close leaked files
- https://github.com/ruby/open-uri/commit/c52ee9e430
-
03:21 AM Revision 7e0d2c61 (git): [DOC] RDoc for Process (#8253)
-
03:20 AM Bug #19845 (Closed): `Fiber[key] = value` fails if key is not interned.
-
03:20 AM Bug #19845: `Fiber[key] = value` fails if key is not interned.
- Fixed in <https://github.com/ruby/ruby/commit/d4c720a91bc7bb9ff31810e1720acffb939f7a2f>.
-
01:33 AM Bug #19845 (Closed): `Fiber[key] = value` fails if key is not interned.
- See https://github.com/ruby/ruby/pull/8273 for the fix.
- 03:19 AM Revision d4c720a9 (git): Fix support for dynamic keys. (#8273)
- * Skip RBS test.
-
02:54 AM Bug #14543 (Closed): `make commit` show error of `common-srcs`
- svn.ruby-lang.org is already retired.
08/23/2023
-
11:46 PM Bug #12500 (Closed): TestProcess#test_aspawn_too_long_path fails on mips with "argument too big"
- Applied in changeset commit:git|bd22bb259c183b91656bea72899fe91c31aeb44e.
----------
Handle Array#* raising ArgumentError in test
Treat ArgumentError as NoMemoryError, so it will resize the array
and try again.
Fixes [Bug #12500] -
08:16 PM Bug #12500: TestProcess#test_aspawn_too_long_path fails on mips with "argument too big"
- I submitted a pull request to handle this ArgumentError: https://github.com/ruby/ruby/pull/8270
-
11:46 PM Revision bd22bb25 (git): Handle Array#* raising ArgumentError in test
- Treat ArgumentError as NoMemoryError, so it will resize the array
and try again.
Fixes [Bug #12500] -
11:35 PM Bug #16492 (Closed): TestBugReporter#test_bug_reporter_add test failures
- I checked all recent ruby-master failures in the RHEL 7.1 s390 CI (http://rubyci.s3.amazonaws.com/rhel_zlinux/ruby-master/recent.html), and none show this issue. Considering this error was occuring in 90% of cases, since it hasn't happe...
-
11:23 PM Bug #14480: miniruby crashing when compiled with -O2 or -O1 on aarch64
- I submitted a pull request to disable `__builtin_setjmp` for Linux aarch64: https://github.com/ruby/ruby/pull/8272
-
11:22 PM Bug #16288 (Closed): Segmentation fault with finalizers, threads
- davidw (David Welton) wrote in #note-7:
> ```
> ...
I checked and now we have `vm_check_ints_blocking(th->ec);` in that spot, so I think this is fixed. -
10:54 PM Bug #15428 (Feedback): Refactor Proc#>> and #<<
-
10:47 PM Revision ce79887d (git): The first arg of NEW_KW_ARG macro is always 0
-
10:38 PM Bug #14971 (Closed): error: implicit declaration of function ‘rb_vm_call0
-
10:38 PM Bug #14957 (Closed): MinGW, gcc 8.2.0, bootstraptest test_thread.rb - failure ?
-
10:30 PM Bug #14906 (Closed): MinGW failure - TestIO#test_copy_stream_no_busy_wait
-
10:27 PM Bug #19792: arm の alpine 上でネストしたハッシュに長い文字列を入れると segmentation fault が発生する
- ご丁寧にありがとうございます。
-
10:16 PM Bug #19792 (Closed): arm の alpine 上でネストしたハッシュに長い文字列を入れると segmentation fault が発生する
- Applied in changeset commit:git|2214bcb70d9f9120f1f3790ca340236c8f080991.
----------
Fix premature string collection during append
Previously, the following crashed due to use-after-free
with AArch64 Alpine Linux 3.18.3 (aarch64-linux-... -
10:10 PM Bug #14679 (Closed): StdLib gems should properly specify their dependencies
-
10:10 PM Bug #16951 (Closed): Consistently referer dependencies
-
10:07 PM Revision 2214bcb7 (git): Fix premature string collection during append
- Previously, the following crashed due to use-after-free
with AArch64 Alpine Linux 3.18.3 (aarch64-linux-musl):
```ruby
str = 'a' * (32*1024*1024)
p({z: str})
```
32 MiB is the default for `GC_MALLOC_LIMIT_MAX`, and the crash
could be d... -
09:32 PM Revision d7f1ea71 (git): Quarantine a very flaky spec
- https://github.com/ruby/ruby/actions/runs/5956398507/job/16157091112
This has been extremely flaky on macOS GitHub Actions.
Benoit suggested to quarantine it if it's too problematic (it is) and
there's no reasonable fix in a short time ... -
09:30 PM Bug #19238 (Closed): URI.open fails for file path when second argument is a hash
- Applied in changeset commit:git|43c2c1ed4814c6e1f0d0d0ec88641e12bf5aa290.
----------
[ruby/open-uri] Make URI.open pass keywords
Fixes [Bug #19238]
https://github.com/ruby/open-uri/commit/f636d01b85 -
09:30 PM Revision 43c2c1ed (git): [ruby/open-uri] Make URI.open pass keywords
- Fixes [Bug #19238]
https://github.com/ruby/open-uri/commit/f636d01b85 -
09:22 PM Revision 544488f1 (git): Improve comments in sync_default_gems
-
09:16 PM Revision cdbc70d0 (git): [ruby/yarp] Match EOF after newline behavior
- in Ripper EOL after whitespace is returned as a on_nl node with the whitespace as the content
k0kubun: This is a resync of 9aca3528aa1a1545468a508b02b77bc922bb7321.
git.ruby-lang.org had an old git version and the diff was wrong.
It now... -
08:56 PM Revision 455297d6 (git): Use https for remotes by default
- I was testing this script on git.ruby-lang.org to use its git version,
but it did not work because the server's default user doesn't have SSH
keys.
https works for everyone, so it's a safer default. You shouldn't need to
push to that re... -
08:43 PM Revision c6a07cc3 (git): Ignore more files for other gems as well
- e.g. bin/ for reline that was included in its last commit.
-
08:35 PM Revision eb795b03 (git): Avoid sync rule duplication between YARP and others
-
08:11 PM Bug #14474 (Closed): skip "TestException#test_thread_signal_location" as known bug
- This test has not been skipped since commit:5ec3450438150e7cb05422c04dc18901161a13ea in January 2022, and I don't think this has been a problem since, so I'm closing this.
-
08:07 PM Bug #14422 (Closed): Ruby configuration options should not be reused for gem builds
- vo.x (Vit Ondruch) wrote in #note-8:
> Unfortunately, this does not address the original issue. So is there any hope this will be improved upstream? I would like to avoid some rbconfig.rb hacks to remove the configuration flags in quest... -
07:32 PM Bug #14418 (Closed): ruby 2.5 slow regexp execution
- Thanks to very impressive work by @makenowjust, this issue has been fixed in Ruby 3.2.
-
07:28 PM Bug #14064 (Closed): test-all with and without -j - incorrect assertions and missing test methods
- It looks like a fix for this was committed in commit:dd3851d2786412de019350a11e749c56fa5a07cc
-
07:22 PM Bug #14049 (Closed): SEGV svn 60401 require_relative
-
07:20 PM Bug #13644 (Closed): Windows - Setting Time.now
-
07:19 PM Bug #13571 (Closed): Script arguments, encoding, windows / MinGW
- Starting in Ruby 3.0, arguments provided to Ruby (in `ARGV`) are now in correct UTF-8 encoding.
-
07:07 PM Bug #13542 (Closed): MinGW trunk Builds - Summary of Issues
-
07:06 PM Misc #12595 (Closed): Documentation
-
07:06 PM Bug #13500 (Closed): MinGW TestArity#test_proc_err_mess stops testing
-
07:03 PM Bug #13269 (Closed): test/readline/test_readline.rb and mingw
- The readline extension was removed in commit:59fd67fc3d405e529e038172e769ff20a8fb5535. If this is still an issue, please file it upstream: https://github.com/ruby/readline-ext
-
06:29 PM Revision f33c412e (git): [ruby/yarp] Constant paths followed by an & should be lexed as a call
- https://github.com/ruby/yarp/commit/b0a2ba2c4d
-
06:20 PM Revision cedb3330 (git): Stop incrementing `jit_entry_calls` once threshold is hit
- Otherwise the ISeq page will constantly be written
into preventing it from being shared. -
06:06 PM Revision 24bcd494 (git): [ruby/yarp] Fix first method param lex failures
- When Ripper encounters a method parameter that is the first
parameter and is an identifier and it shadows a local scope, it
incorrectly marks it as END|LABEL (because it think it's a local).
We need to account for that in the lex compat... -
05:59 PM Revision 5766fb72 (git): Fix gdb.py for C frames [ci skip]
-
05:52 PM Bug #12473 (Closed): Test failure on fedora with TestTimeExtension#test_huge_precision
-
05:23 PM Revision 9aca3528 (git): [ruby/yarp] Match EOF after newline behavior
- in Ripper EOL after whitespace is returned as a on_nl node with the whitespace as the content
https://github.com/ruby/yarp/commit/be16d1deed -
05:20 PM Revision 77484528 (git): Change yjit stats list to be a unordered list
- Without using a list, this show as a single paragraph with all stats descriptions being in one single line
-
04:07 PM Revision c837e1ad (git): [ruby/yarp] Add LABEL lex state when lexing a keyword params
- https://github.com/ruby/yarp/commit/422bcd0ebf
-
03:42 PM Revision 9c43ec62 (git): [ruby/yarp] fix: newline tracking for a comment at EOF
- https://github.com/ruby/yarp/commit/62fb0bddf5
-
03:40 PM Revision 8f0a8e57 (git): [ruby/yarp] Remove unnecessary loop
- https://github.com/ruby/yarp/commit/86e8741ee3
-
03:10 PM Revision b4bc047f (git): YJIT: Implement VM_CALL_ARGS_BLOCKARG with Proc for ISeq calls
- Rack uses this. Speculate that the `obj` in `the_call(&obj)`
will be a proc when the compile-time sample is a proc.
Co-authored-by: Takashi Kokubun <takashikkbn@gmail.com>
Co-authored-by: Maxime Chevalier-Boisvert <maxime.chevalierboisv... -
03:08 PM Revision f902df12 (git): [ruby/yarp] refactor: extract `peek_addr()`
- In many places in the code we use the idiom:
x < parser->end && *x == 'y'
which is essentially an extension of an existing pattern:
- `peek()` looks at `parser->current.end`
- `peek_at()` looks at `(parser->current.end + offset)`
... -
02:34 PM Revision 58c1ebb6 (git): Fix guard-heap upgrades (#8264)
- * Fix guard-heap upgrades
`getinstancevariable` was generating more heap guards than I thought.
It turns out that the upgrade code has a bug in it.
Given the following Ruby code:
```ruby
class Foo
def initialize
@a = 1
@b = ... -
02:20 PM Bug #19436: Call Cache for singleton methods can lead to "memory leaks"
- This bug is unrelated to YJIT, it happens with or without YJIT enabled. It thus cannot explain what you are seeing.
As for memory usage with YJIT, what you are describing isn't out of the ordinary. The default `--yjit-exec-mem-size` i... -
01:48 PM Bug #19436: Call Cache for singleton methods can lead to "memory leaks"
- Hi,
Will this be backported to 3.2?
I'm currently seeing this in production on a large Rails app: when YJIT is enabled, after usual initial warmup, unicorn workers memory usage continue to grows linearly until reaching a significant ... -
02:09 PM Revision 448ff162 (git): [DOC] Adding font usage to doc guide (#8255)
-
10:40 AM Revision 129663c4 (git): tool/lib/output.rb: Make `--color` option like GNU coreutils
-
10:40 AM Revision de4a1ca7 (git): tool/lib/output.rb: Add `--create-only` and `--overwrite` options
-
10:40 AM Revision f1c6da65 (git): tool/lib/output.rb: Add `--no-color` option
-
08:28 AM Feature #19785: Deprecate `RUBY_GC_HEAP_INIT_SLOTS`
- > RUBY_GC_HEAP_INIT_PAGES will allocate pages to size pools based on the distribution of objects at boot, and I worry that it will be a different distribution than serving requests.
Unless the GC become capable of reusing an empty pag... -
01:44 AM Feature #19785: Deprecate `RUBY_GC_HEAP_INIT_SLOTS`
- > How to know %d part?
The `%d` part is the sizes returned from `GC.stat_heap`. On 64-bit systems, it's 40, 80, 160, 320, 640. On 32-bit systems it's 20, 40, 80, 160, 320.
> ...
You use `RUBY_GC_HEAP_INIT_SIZE_40_SLOTS=4000000` to ... -
01:11 AM Feature #19785: Deprecate `RUBY_GC_HEAP_INIT_SLOTS`
- Sorry I didn't know about `RUBY_GC_HEAP_INIT_SIZE_%d_SLOTS`
* How to know `%d` part?
* How to tune the value?
* it seems difficult to set it compare with setting 1 init value.
Another idea is to introduce `RUBY_GC_HEAP_INIT_PAG... -
07:12 AM Bug #10416: Create mechanism for updating of Unicode data files downstreams when we want
- The next version of Unicode (15.1) will be released in about 3 weeks. I'll check at that point, and close if no longer relevant.
-
04:56 AM Revision e89150b1 (git): Render YARP templates into the build directory (#8266)
-
04:56 AM Bug #19005 (Closed): Ruby interpreter compiled XCode 14 cannot build some native gems on macOS
-
04:49 AM Bug #19005: Ruby interpreter compiled XCode 14 cannot build some native gems on macOS
- We can close this now that XCode 14.3, which ships with clang 14.0.3, now fixes this issue: https://github.com/python/cpython/issues/97524#issuecomment-1458855301
-
04:45 AM Bug #11269 (Closed): ruby_init_setproctitle() should be called before require_libraries()
- Applied in changeset commit:git|347993e95c4604d6c9460b64bb28c9b4f442531c.
----------
Call ruby_init_setproctitle before process_options
Fixes [Bug #11269] -
04:45 AM Revision 347993e9 (git): Call ruby_init_setproctitle before process_options
- Fixes [Bug #11269]
-
04:09 AM Revision b92d599e (git): Fix typo in anonymous class string
- If anonymous was shorted it should be `anon` not `annon`. Fixes typo in
APPEND_S for anonymous classes. -
01:36 AM Feature #19783: Weak References in the GC
- I ran the benchmark you wrote in #19436. On my machine it looks like this branch is a little bit slower:
Branch:
```
ruby 3.3.0dev (2023-08-18T19:42:54Z weak-ref-gc 21d00dd558) [arm64-darwin22]
10.663139 4.448306 15.111445 ( ... -
01:22 AM Feature #19783: Weak References in the GC
- > [Bug #19436] is fixed by checking inline method cache data structures.
Thank you for fixing the bug.
An issue that was brought up to me by the [MMTk team](https://www.mmtk.io/) (the people who are working on implementing alternat... -
01:06 AM Feature #19783: Weak References in the GC
- * [Bug #19436] is fixed by checking inline method cache data structures.
* So the rest motivation is to support weak reference natively and I don't against about it.
* I have two concerns.
1. memory allocation during GC
Allocat... -
12:19 AM Feature #19842: Introduce M:N threads
- byroot (Jean Boussier) wrote in #note-18:
> > `Thread#lock_native_thread` may be what you want.
> ...
A locked NT (DNT) is not counted.
> We named locked NT as dedicated native threads (DNT) and other NT as shared native threads (SN...
08/22/2023
-
10:59 PM Revision 00054de6 (git): Remove nd_entry from NODE_GASGN and NODE_GVAR
- After a0f12a0258e4020bd657ee80b7d8f22bd33ea223 NODE_GASGN and
NODE_GVAR hold same value on both nd_vid and nd_entry.
This commit stops setting value to nd_entry and makes to use only
nd_vid. -
10:43 PM Revision ff552389 (git): YJIT: x64: Split mem-to-mem Insn::Store like Insn::Mov
- The ARM backend allows for this so let's make x64 consistent.
-
10:35 PM Feature #14579: Hash value omission
- Has it been considered to ever expand this feature to allow instance variables and global variables. Or was it strictly reserved for local variables intentionally, to avoid incompatible or dangerous behavior?
Thanks for adding this r... -
10:33 PM Bug #12725: Trying to use ./miniruby before it exists
- @duerst Have you seen this issue reoccur since it was initially posted? If not, do you think this can be closed?
-
10:29 PM Bug #11526: Streaming HTTP requests are not idempotent and should not be retried
- A fix for this has been submitted as an upstream pull request: https://github.com/ruby/net-http/pull/87
-
10:05 PM Bug #11174 (Closed): threads memory leak
-
10:01 PM Bug #10580 (Closed): TestProcess#test_deadlock_by_signal_at_forking fails on ARM
-
09:58 PM Bug #10416: Create mechanism for updating of Unicode data files downstreams when we want
- @duerst Do you think this can be closed?
-
09:50 PM Bug #9507 (Closed): Ruby 2.1.0 is broken on ARMv5: tried to create Proc object without a block
-
09:47 PM Bug #9955 (Closed): issue building dll on mingw, library not found
-
09:36 PM Revision c23e2e19 (git): YJIT: add code_region_overhead stat output (#8262)
-
09:19 PM Revision 2d750697 (git): [ruby/yarp] Use require_relative for yarp/ffi
- https://github.com/ruby/yarp/commit/c0598f8805
-
09:12 PM Bug #9435 (Rejected): Kernel.system problem
- I don't think this is a bug in Ruby, it is a general issue with Windows. As @nobu mentioned, you shouldn't use quotes in `PATH`. See https://serverfault.com/questions/349179/path-variable-and-quotation-marks-windows/349216#349216
-
09:05 PM Bug #8782 (Closed): Don't set rl_getc_function on editline
- Readline support was removed in commit:59fd67fc3d405e529e038172e769ff20a8fb5535. If this is still an issue, please file it upstream https://github.com/ruby/readline-ext
-
08:44 PM Bug #7859 (Closed): Readline: Incorrect arrow key behavior in vi_editing_mode insert mode with Readline 6.2
- Readline was removed from Ruby in commit:59fd67fc3d405e529e038172e769ff20a8fb5535. If this is still an issue, please file it upstream: https://github.com/ruby/readline-ext/issues
-
08:43 PM Bug #7840 (Closed): -Wdeclaration-after-statement is valid for C/ObjC but not for C++
- Looking at recent Ruby versions:
* `-Wimplicit-function-declaration` is in `warnflags`
* `warnflags` is included in `cflags`
* `cflags` is included in `CFLAGS` but not `CXXFLAGS`
* C++ compilation rules use `CXXFLAGS` and not `CFLA... -
08:31 PM Revision 837c12b0 (git): Use STR_EMBED_P instead of testing STR_NOEMBED
-
07:13 PM Bug #19844 (Feedback): Ruby 3.2 fails to build with openssl version 3
- Ruby version 3.2 code base: https://github.com/ruby/ruby/tree/1c7624469880bcb964be09a49e4907873f45b026
openssl v3 is installed under /usr/local_ssl_3.0.0.
```
./configure --with-openssl-dir=/usr/local_ssl_3.0.0
```
I get the f... -
06:04 PM Revision 9b373fb4 (git): [ruby/yarp] Fix small typo in templating to specify where template comes from
- https://github.com/ruby/yarp/commit/96d69ceef6
-
02:46 PM Revision 7127f39b (git): Add notes and name a magic number
-
01:43 PM Feature #19842: Introduce M:N threads
- > `Thread#lock_native_thread` may be what you want.
Well, it depends if locked thread are counted as part of `RUBY_MAX_PROC` or not. If not then yes that would be what I want.
> ...
Ah, I indeed missed that. Thank you. The idea wou... -
08:53 AM Feature #19842: Introduce M:N threads
- byroot (Jean Boussier) wrote in #note-16:
> Another question I have is around being able to opt-out of N:M for a specific thread.
> ...
may be what you want.
> > how to switch the behavior
> ...
You can try your application with:
... -
08:40 AM Feature #19842: Introduce M:N threads
- > `rb_thread_local_aref`
Ah, I totally missed that API, thank you.
Another question I have is around being able to opt-out of N:M for a specific thread.
e.g if you have something like:
```ruby
$background_check = Thread.new ... -
07:00 AM Feature #19842: Introduce M:N threads
- byroot (Jean Boussier) wrote in #note-14:
> > Thread Local Storage issue
> ...
```C
VALUE rb_thread_local_aref(VALUE thread, ID key);
VALUE rb_thread_local_aset(VALUE thread, ID key, VALUE val);
```
are exposed.
Anyway I bel... -
06:26 AM Feature #19842: Introduce M:N threads
- > Thread Local Storage issue
Is there any plan to expose a c API to store data on the Ruby thread to replace the native APIs?
Locking to a native thread is fine for making old code compatible, but if we wish to upgrade that code to... -
01:01 AM Feature #19842: Introduce M:N threads
- > Ok. So Ruby Threads and Ractors will both share time on native threads. The difference being that Ractors can run in parallel and Ruby Threads that belong to the same Ractor cannot. I guess we kind of have that with cached pthreads rig...
-
12:55 AM Feature #19842: Introduce M:N threads
- > Hoping my guess was correct, I'm not quite sure what "2 level scheduling" means though. Is it just that the single-ractor mode applies some optimization (what is it?) instead of reusing the scheduler for the multi-ractor mode? To me, i...
-
12:50 AM Feature #19842: Introduce M:N threads
- > Ruby threads of a Ractor is managed by 1:N threads
is also typo (updated)
"Ruby threads of a Ractor is managed by M:1 threads" -
12:47 AM Feature #19842: Introduce M:N threads
- > We can run N ractors on N native threads simultaneously if the machine has N cores.
Sorry it was typo (updated).
"We can run M ractors on N native threads simultaneously if the machine has N cores."
-
12:45 AM Feature #19842: Introduce M:N threads
- tenderlovemaking (Aaron Patterson) wrote in #note-2:
> ko1 (Koichi Sasada) wrote:
> ...
You are right.
The reason is:
> On the multiple Ractors, N (+ alpha) native threads run M ractors. Now there is no way to disable M:N threads... -
12:21 AM Feature #19842: Introduce M:N threads
- k0kubun (Takashi Kokubun) wrote in #note-3:
> > when M:N is enabled, threads become green threads, and Ractors are truly parallel (but CPU time is divided among N threads)
> ...
Ok. So Ruby Threads and Ractors will both share time on n... -
12:10 AM Feature #19842: Introduce M:N threads
- > when M:N is enabled, threads become green threads, and Ractors are truly parallel (but CPU time is divided among N threads)
I thought he used `[num_ractors]:[num_native_threads]` for "1:N threads" as well (neither 1 nor N is the numbe... -
01:38 PM Misc #19772: API naming for YARP compiler
- I think `YARP` is already too widely used and talked about to be renamed without causing significant confusion and downsides.
In fact the gem already has [multiple releases](https://rubygems.org/gems/yarp).
> I don't think "YA-" name... -
05:06 AM Misc #19772: API naming for YARP compiler
- If the motivation of this API is testing YARP compilation to ISeq, I agree to introduce `ISeq.compile_yarp` to Ruby 3.3 and remove it from Ruby 3.4.
(Note that the name `YARP` is renaming one)
Because if YARP is introduced as the MRI... -
12:50 PM Feature #19777: Make `Kernel#lambda` raise when called without a literal block
- The ship has sailed, but I should at least mention I am disappointed at this turn of things. Again deprecating things for no concrete benefit. How ironic that #15973 started with "change Kernel#lambda so it always returns a lambda" and e...
-
11:01 AM Revision 0ed3624c (git): Wrap nd_head in node dump message with brackets
-
05:36 AM Feature #19843 (Closed): Promote bigdecimal as bundled gems at Ruby 3.4
- Applied in changeset commit:git|1c93288f8bbf667cb95eb7137b2fe64213894b77.
----------
Added bigdecimal to warning targets for the bundled gems.
[Bug #19843] -
03:17 AM Feature #19843: Promote bigdecimal as bundled gems at Ruby 3.4
- @hsbt I agree with you. I've wanted to make bigdecimal a bundled gem for a long time but I didn't have much time to work for it. Thank you very much.
-
03:10 AM Feature #19843 (Closed): Promote bigdecimal as bundled gems at Ruby 3.4
- I triaged target list for bundled gems at https://bugs.ruby-lang.org/issues/19351.
After that, I resolved bigdecimal dependency from our test suite at https://github.com/ruby/ruby/commit/3ef6364a988ab24ca7fdbb7d1b6840b2a40f1466
I p... -
05:35 AM Revision 1c93288f (git): Added bigdecimal to warning targets for the bundled gems.
- [Bug #19843]
-
05:04 AM Feature #19790: Optionally write Ruby crash reports into a file rather than STDERR
- I would say only a file if the environment variable is set, with perhaps just a message on stderr saying the report was written into that path.
But I don't have a strong opinion about this, if others think it should be written in both... -
05:02 AM Feature #19790: Optionally write Ruby crash reports into a file rather than STDERR
- Does it print to both STDERR and a file? or only to a file?
-
04:46 AM Revision ceafdb5a (git): Place -a in the correct location [ci skip]
- It doesn't use optparse, so the location is not flexible.
- 04:46 AM Revision ccc80043 (git): Update default gems list at eec7a3f9ee0a40f4f5e22e0131c3ac [ci skip]
-
04:45 AM Revision eec7a3f9 (git): [ruby/erb] Version 4.0.3
- https://github.com/ruby/erb/commit/c594f2fb86
-
04:45 AM Revision be889b6d (git): Add a forgotten default value for ignored_paths
- 04:41 AM Revision 0955ca34 (git): [ruby/erb] Enable frozen_string_literal in all files
- (https://github.com/ruby/erb/pull/49)
I was surprised to see erb show up when I was using memory_profiler on
my app. ERB::Compiler#compile has a blank string literal, and it
ended up allocating some 41532 blank strings for a relatively ... -
03:12 AM Misc #19766: DevMeeting-2023-08-24
- * [Bug #19843] Promote bigdecimal as bundled gems at Ruby 3.4
* mrkn: Is it okay? - 01:25 AM Revision 4a8d7246 (git): zlib 1.2.13 is gone from zlib.net
08/21/2023
-
11:50 PM Feature #19842: Introduce M:N threads
- ko1 (Koichi Sasada) wrote:
> This ticket proposes to introduce M:N threads to improve Threads/Ractors performance.
> ...
Should this be "M ractors on N native threads"? It sounds like Ractors are not 1:1 with threads in this design.
... -
08:41 PM Feature #19842 (Closed): Introduce M:N threads
- This ticket proposes to introduce M:N threads to improve Threads/Ractors performance.
## Background
Ruby threads (RT in short) are implemented from old Ruby versions and they have the following features:
* Can be created with si... -
11:36 PM Bug #19246: Rebuilding the loaded feature index much slower in Ruby 3.1
- Applied at https://github.com/ruby/ruby/commit/788b03d5ba82fd8b35ce1fe2618ce6bacc648333.
-
11:33 PM Revision 788b03d5 (git): Re-apply "Ruby 3.2 - Speed up rebuilding the loaded feature index and realpath cache (#8023)" (#8252)
- * Re-apply "Ruby 3.2 - Speed up rebuilding the loaded feature index and realpath cache (#8023)"
* [CI] mingw.yml - remove IBM437 encoding for test-all, use cmd shell for test & test-all
* Skip failing test on mingw with readline.so
Co... -
08:43 PM Misc #19766: DevMeeting-2023-08-24
- * [Feature #19842] Introduce M:N threads (ko1)
* Do you have any questions about it?
-
08:30 PM Revision 925ce3f4 (git): Skip commits that are empty after conflict resolution
-
08:24 PM Revision eee83af3 (git): Update yjit.md, document `--yjit-stats=quiet`
-
08:17 PM Revision 2502821a (git): Exclude docs/ from YARP sync
- 08:14 PM Revision b9ef8191 (git): [rubygems/rubygems] Support `ruby file: ".tool-versions"` in Gemfile
- (https://github.com/rubygems/rubygems/pull/6898)
Supports .tool-versions (ASDF) by checking for a line starting with "ruby"
before falling back to reading the entire file, as in .ruby-version.
https://github.com/rubygems/rubygems/commi... -
07:00 PM Revision 95e29b04 (git): [ruby/yarp] fix: avoid invalid memory read when CR is present without LF
- https://github.com/ruby/yarp/commit/2296c037de
-
07:00 PM Revision 461f8eab (git): [ruby/yarp] fix: parsing a '%' expression with a CR but not a newline
- Previously this failed an assertion and aborted.
https://github.com/ruby/yarp/commit/a037d942a8 -
06:23 PM Revision ca6db02c (git): [ruby/irb] Avoid overriding user's `irb_name` setting in debugger
- integration
(https://github.com/ruby/irb/pull/688)
* Avoid overriding user's irb_name setting in debugger integration
Instead of always setting `irb_name` to `irb:rdbg`, it should respect
the user's setting and only append `:rdbg` to i... -
05:45 PM Revision 7d26c032 (git): Manually resync YARP
- YARP commits were synced out of order. We are doing this reset
commit to ensure that all files are currently correct and we can
proceed with monitoring syncs so this doesn't happen again. -
05:43 PM Revision 2cecd3c8 (git): [ruby/yarp] fix: newline tracking for nl-terminated % %q %Q
- https://github.com/ruby/yarp/commit/1e4940864b
-
05:43 PM Revision 9ca547b9 (git): [ruby/yarp] prefactor: extract yp_newline_list_check_append
- https://github.com/ruby/yarp/commit/149c74291b
-
05:43 PM Revision 926857eb (git): [ruby/yarp] fix: support newline-terminated regular expressions
- Previously, parsing a snippet like this:
%r\nfoo\n
would result in tracking the second newline twice, resulting in a
failed runtime assertion.
Fixing that issue reveals another bug, which is that the _first_
newline was not being ... -
05:43 PM Revision e63bac31 (git): [ruby/yarp] Rename statements to body where appropriate
- https://github.com/ruby/yarp/commit/0aa7d9d10c
-
05:43 PM Revision a7f40fc2 (git): [ruby/yarp] Change AndWriteNode, OrWriteNode, OperatorWriteNode to contain write nodes
- It makes it more difficult to find all locations where a variable
is written to if they're just read nodes. To keep things consistent
we should make them write nodes.
https://github.com/ruby/yarp/commit/840e094045 -
05:43 PM Revision 988b0108 (git): [ruby/yarp] Consolidate OperatorAndWrite and OperatorOrWrite nodes
- https://github.com/ruby/yarp/commit/9e680a7598
-
05:43 PM Revision 339b34be (git): [ruby/yarp] handle missing HEREDOC endline at start of heredoc
- https://github.com/ruby/yarp/commit/7b72493b6d
-
05:43 PM Revision 4fb2b3b6 (git): [ruby/yarp] Ensure correct location with if/elsif, allow FOCUS env var, fix newlines on __END__
- https://github.com/ruby/yarp/commit/9da0bc4452
-
05:43 PM Revision 0fd57ee0 (git): [ruby/yarp] Handle interpolated regular expressions with the o flag for locals checking
- https://github.com/ruby/yarp/commit/db95191207
-
05:43 PM Revision 524d99da (git): [ruby/yarp] Update to latest unparser
- https://github.com/ruby/yarp/commit/5ba7394261
-
05:43 PM Revision 289c0da5 (git): [ruby/yarp] Update to latest whitequark
- https://github.com/ruby/yarp/commit/3607efb01d
-
05:33 PM Revision 05c59995 (git): [ruby/yarp] fix: newline tracking for nl-terminated % %q %Q
- https://github.com/ruby/yarp/commit/1e4940864b
-
05:33 PM Revision dcc8afe9 (git): [ruby/yarp] prefactor: extract yp_newline_list_check_append
- https://github.com/ruby/yarp/commit/149c74291b
-
05:32 PM Revision 67cd60ed (git): Manually move files from test/snapshots to test/yarp/snapshots
-
04:52 PM Revision 817ffa8e (git): YJIT: Remove unnecessary roundtrip conversion
-
04:42 PM Misc #19772: API naming for YARP compiler
- We have reflected on the name YARP and would like to propose Prism as a new name for the external API. The parser is similar to a prism because it takes Ruby code as input and returns it “refracted” into an AST. Also, [the existing prism...
-
04:22 PM Revision ac819f4d (git): [ruby/yarp] fix: support newline-terminated regular expressions
- Previously, parsing a snippet like this:
%r\nfoo\n
would result in tracking the second newline twice, resulting in a
failed runtime assertion.
Fixing that issue reveals another bug, which is that the _first_
newline was not being ... -
04:20 PM Revision f83c1d62 (git): [ruby/yarp] Update to latest seattlerb
- https://github.com/ruby/yarp/commit/d5365f08d0
-
04:20 PM Revision 0c614063 (git): Fix YARP sync
-
03:42 PM Revision 86ac17ef (git): [ruby/irb] Move input processing out of RubyLex
- (https://github.com/ruby/irb/pull/683)
* Add a test case for Ctrl-C handling
* Test symbol aliases with integration tests
There are a few places that also need to check symbol aliases before
`Irb#eval_input`. But since the current com... -
03:25 PM Revision 2929c472 (git): [ruby/yarp] Add a convenience value method for numeric literals
- https://github.com/ruby/yarp/commit/a328f27d8f
-
01:13 PM Revision 196116e5 (git): Refactor rb_ensure_iv_list_size
- We don't really need obj_ivar_heap_alloc and obj_ivar_heap_realloc since
they're just one liners. -
04:46 AM Revision 8326bf1a (git): [rubygems/rubygems] Confirm verification warnings
- Fix up https://github.com/rubygems/rubygems/pull/6882
https://github.com/rubygems/rubygems/commit/71c73ac6d9
08/20/2023
-
05:32 PM Revision 55f930aa (git): [ruby/yarp] Use node kind for Ruby types
- * For example in ProgramNode:
# attr_reader statements: Node
=>
# attr_reader statements: StatementsNode
https://github.com/ruby/yarp/commit/ffed35238c -
05:22 PM Revision 725ca2f9 (git): [ruby/irb] Support `VISUAL` env var, and prefer it over `EDITOR`
- (https://github.com/ruby/irb/pull/686)
* Support `VISUAL` env var, and prefer it over `EDITOR`
* Update test/irb/test_cmd.rb
---------
https://github.com/ruby/irb/commit/399b872c31
Co-authored-by: Stan Lo <stan001212@gmail.com> - 05:17 PM Revision 5c75dc51 (git): Update default gems list at 314ccdd60c5fe3dfa90651d271209e [ci skip]
-
05:16 PM Revision 314ccdd6 (git): [ruby/reline] Bump version to 0.3.8
- (https://github.com/ruby/reline/pull/582)
https://github.com/ruby/reline/commit/3840d1f958 -
05:03 PM Revision 405c295a (git): [ruby/reline] Use fdiv for keyseq_timeout msec to sec conversion
- (https://github.com/ruby/reline/pull/583)
https://github.com/ruby/reline/commit/a6504acd63 -
04:17 PM Bug #19841: Marshal.dump stack overflow with recursive Time
- https://github.com/nobu/ruby/tree/marshal-recursive-userdef
-
02:24 PM Bug #19794: Ruby 3.2.2 fails to build on macOS Sonoma betas
- Thanks for the analysis. I've reported this as FB13016123 in Apple's feedback system.
Diagnosing situations like this would be easier if the configure script did a better job of surfacing the LD warnings. The "something wrong with LDFL... -
05:56 AM Bug #19794: Ruby 3.2.2 fails to build on macOS Sonoma betas
- > ld maintains a list of directories to search for a library or framework to use. The default library search path is /usr/lib then /usr/local/lib. The -L option will add a new library search path. The default framework search path is ...
-
11:12 AM Revision 812272bd (git): Tempfile is not needed
-
11:12 AM Revision f0923164 (git): Align the type of `num_entries` to `st_table`
-
10:40 AM Revision 7c226291 (git): [ruby/reline] Remove Timeout usage
- (https://github.com/ruby/reline/pull/580)
Timeout's implementation relies on Thread, which would conflict with
`ruby/debug`'s thread-freezing implementation and has casued issues like
- ruby/debug#877
- ruby/debug#934
- ruby/debug#1000... - 09:07 AM Revision 35442005 (git): [rubygems/rubygems] fix lint
- https://github.com/rubygems/rubygems/commit/75c0f27b7e
- 09:07 AM Revision 7c4431e6 (git): [rubygems/rubygems] use a one-liner
- https://github.com/rubygems/rubygems/commit/46745885e8
- 09:07 AM Revision e5efa01c (git): [rubygems/rubygems] handle removing `BUNDLE_`, since using start_with? would still include that
- https://github.com/rubygems/rubygems/commit/235d9b38d8
- 09:06 AM Revision f0bf9391 (git): [rubygems/rubygems] Don't rely on globals when not matching regexp for "local."
- https://github.com/rubygems/rubygems/commit/e79ccdafd8
- 09:06 AM Revision b5a0630c (git): [rubygems/rubygems] Use ! methods once we have a new copy of the string. Use .prepend to avoid allocating a new string.
- https://github.com/rubygems/rubygems/commit/2ac35a661f
- 09:06 AM Revision 29aab66e (git): [rubygems/rubygems] call key.to_s once instead of multiple times to save when it's a symbol
- https://github.com/rubygems/rubygems/commit/535feb817c
- 09:06 AM Revision 239e3525 (git): [rubygems/rubygems] Use value.match? only on Strings, which avoids allocating a matchdata, which is not used
- https://github.com/rubygems/rubygems/commit/cbf9ac93d7
- 09:06 AM Revision 598048e3 (git): [rubygems/rubygems] Use .to_s once in the beginning to save allocations if it's a symbol.
- https://github.com/rubygems/rubygems/commit/f8167db8a2
- 09:06 AM Revision e921efa4 (git): [rubygems/rubygems] name is often a symbol, so only to_s once to avoid allocating it multiple times
- https://github.com/rubygems/rubygems/commit/8eac49c429
- 09:06 AM Revision 7cb6cbee (git): [rubygems/rubygems] String#start_with? is faster than regex with beginning boundaries
- https://github.com/rubygems/rubygems/commit/d7cde68034
- 09:06 AM Revision b97e45d0 (git): [rubygems/rubygems] Use ! methods on the array, since it is brand new. The individual keys are also new, so we can use ! methods on each individual one as well.
- https://github.com/rubygems/rubygems/commit/f2e912b9bb
- 09:06 AM Revision 2a61e1dc (git): [rubygems/rubygems] Use Array#union to join these, instead of with | multiple times. This saves allocating 2 arrays
- https://github.com/rubygems/rubygems/commit/48c03b33b7
- 09:06 AM Revision 79b187a4 (git): [rubygems/rubygems] config is a new Hash, and config.values is a new Array. that means we can use bang methods to avoid allocating new copies
- https://github.com/rubygems/rubygems/commit/8bc13fa55f
- 09:05 AM Revision 921c2bba (git): [rubygems/rubygems] ENV.to_h returns a new hash, so we can `select!` it to avoid allocating another hash.
- `String#start_with?` is faster than regex that is bound to the start of
a string.
https://github.com/rubygems/rubygems/commit/9b2006ef09 -
09:05 AM Revision 7e5c3ec5 (git): Update specification.rb
- Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
-
09:05 AM Revision b68be40e (git): [rubygems/rubygems] Use assert_raise instead of assert_raises
- For ruby-core compat
https://github.com/rubygems/rubygems/commit/83aa7b794e -
09:05 AM Revision 1935433f (git): [rubygems/rubygems] Ensure that loading multiple gemspecs with legacy YAML class references does not warn
- Before this, you would get constant redefinition warnings on Psych::DefaultKey
Additionally, ensure the retries wont continue infinitely in the case of the ArgumentError not being caused by Marshal trying to load the undefined classes
... -
09:04 AM Revision f69f775f (git): [rubygems/rubygems] choose_from_list may return nil index since
- https://github.com/rubygems/rubygems/commit/abacb0cb34cd
https://github.com/rubygems/rubygems/commit/5e2e9d6e50 -
04:29 AM Revision d5ffbca5 (git): Move `MKSTR` markers for fake.rb into coments
-
04:26 AM Revision e517ba2e (git): Bump up syntax_suggest-1.1.0
-
03:37 AM Bug #19761: AddressSanitizer fails with Thread and Process
- For `70ce3c8947c7f95897e56b397270c061dd50f280`, I did a fresh build with `-fsanitize=address` CFLAGS, not reproduced. (using M1 macOS 14.0 beta and Xcode 15 beta toolchain) Maybe x86_64 specific issue?
-
12:28 AM Bug #19246: Rebuilding the loaded feature index much slower in Ruby 3.1
- @MSP-Greg Thank you for investigations and providing patches! I will handle it soon.