Project

General

Profile

Activity

From 10/24/2023 to 10/30/2023

10/30/2023

09:07 PM Revision f0b78956 (git): [PRISM] Implement all argument types for CallNodes
jemmai (Jemma Issroff)
08:00 PM Feature #19979: Allow methods to declare that they don't accept a block via `&nil`
> Is this a frequent error?
I would not say that it is frequent but for the case where it happens the resulting behaviour is confusing and misleading. I have caught some instances in Shopify's code base, most of them in tests for mock...
ufuk (Ufuk Kayserilioglu)
01:56 PM Feature #19979: Allow methods to declare that they don't accept a block via `&nil`
> Is this a frequent error?
> ...
Personally I never saw such an error and can not recall having made
such an error either. I also never had a need to prevent passing of
blocks, but I also agree that there may be situations where on...
rubyFeedback (robert heiler)
11:45 AM Feature #19979: Allow methods to declare that they don't accept a block via `&nil`
> Is this a frequent error?
I saw some, but most of them were about mistaking one method for another, or mis-guessing what the method should do without reading docs.
The example of the former is using `Time.freeze { some code }` in ...
zverok (Victor Shepelev)
10:26 AM Feature #19979: Allow methods to declare that they don't accept a block via `&nil`
Regarding #15554 I think that has the significant advantage that it does not require any changes in gems to be useful. It just automatically knows if a method accepts a block or not. Eregon (Benoit Daloze)
10:25 AM Feature #19979: Allow methods to declare that they don't accept a block via `&nil`
> This leads to subtle user errors, where the author of some code assumes a method call uses a block, but the block passed to the method call is silently ignored.
Is this a frequent error?
I think the only times I saw it is due to confu...
Eregon (Benoit Daloze)
07:44 PM Revision b17b0336 (git): Document TEMP_CONSTANT_IDENTIFIER
eightbitraptor (Matt V-H)
07:44 PM Revision 9249b862 (git): Move constant indexing into rb_translate_prism
eightbitraptor (Matt V-H)
07:44 PM Revision 91fba0a3 (git): [Prism] Add ForNode tests
eightbitraptor (Matt V-H)
07:44 PM Revision 5dfba84c (git): [Prism] Compile ForNode
Fixes ruby/prism#1648 eightbitraptor (Matt V-H)
07:44 PM Revision b0f715fa (git): More accurate functions documentation
eightbitraptor (Matt V-H)
06:22 PM Revision 85beca6e (git): [ruby/irb] Use IRB's own doc for doc dialog tests
(https://github.com/ruby/irb/pull/743)
* Use IRB's own doc for doc dialog tests
* Run doc dialog tests for older Rubies too
* Remove unnecessary CI setups
https://github.com/ruby/irb/commit/97a2b86f0a
st0012 (Stan Lo)
04:37 PM Revision 83911002 (git): Update default gems list at b413760d66e4de5670148b01a6a207 [ci skip]
git[bot]
04:35 PM Revision b413760d (git): [prism] Update prism to latest
kddnewton (Kevin Newton)
04:27 PM Revision a7a70bce (git): rm prism type templates
kddnewton (Kevin Newton)
04:21 PM Revision 674db715 (git): [ruby/rdoc] test/rdoc/test_rdoc_generator_json_index.rb: Use assert_equal instead of assert.
It's better because assert_equal prints the values when it fails.
https://github.com/ruby/rdoc/commit/91d40ce8f8
Jun Aruga
04:19 PM Revision 3a21da95 (git): [ruby/prism] Faster lex_identifier
https://github.com/ruby/prism/commit/e44a9ae742 Haldun Bayhantopcu
03:56 PM Revision 2ab247d2 (git): Missing format string
Do not use a variable as a format string. Also we usually don't
expect non-ascii data in C string literals.
nobu (Nobuyoshi Nakada)
03:53 PM Revision 7bf3d934 (git): [ruby/prism] parse_inline_comments -> parse_comments
https://github.com/ruby/prism/commit/bd4d248fd6 kddnewton (Kevin Newton)
03:44 PM Revision 7d8cfa0a (git): Update to ruby/spec@d56bd0f
Eregon (Benoit Daloze)
03:44 PM Revision b09618e5 (git): Update to ruby/mspec@d03ad9c
Eregon (Benoit Daloze)
03:44 PM Revision 58d1fbcf (git): Revert "OpenSSL::KDF.scrypt needs EVP_PBE_scrypt()"
This reverts commit d434765faead1583ca9008bb579067a288085b93. Eregon (Benoit Daloze)
03:31 PM Revision d434765f (git): OpenSSL::KDF.scrypt needs EVP_PBE_scrypt()
nobu (Nobuyoshi Nakada)
03:08 PM Revision 9d147249 (git): [ruby/prism] Remove newlines from magic comment test
https://github.com/ruby/prism/commit/4a7be1fc50 kddnewton (Kevin Newton)
02:28 PM Bug #19976: test/fiber/test_queue.rb stuck tests in Ubuntu ppc64le
It seems that this issue was gone by removing the `optflags=-O1` in Travis ppc64le on this PR's 2nd commit https://github.com/ruby/ruby/commit/ca7296767b5db9a401bc64738984f35880061a73 .
jaruga (Jun Aruga)
02:23 PM Revision ebb8da54 (git): .travis.yml: Refactor.
* Add notes.
* When you see Travis issue, please check the link below.
https://github.com/ruby/ruby/wiki/CI-Servers#travis-ci
* Added the following random failure.
The ppc64le failure has been happening randomly in Travis foc...
Jun Aruga
02:23 PM Revision 753b1ab1 (git): .travis.yml: Disable s390x allow_failures.
To avoid unintentional new failures. Feel free to enable it again when the case
is unstable.
Jun Aruga
02:23 PM Revision ca729676 (git): .travis.yml: Remove optflags=-O1 except arm32.
We want to align the used build flags with RubyCI ppc64le Ubuntu jammy server
as much as possible to avoid Travis specific issues.
Still keep the -O1 for only arm32 due to the following issue.
https://bugs.ruby-lang.org/issues/19981
Jun Aruga
02:23 PM Revision 5d7904ff (git): .travis.yml: Upgrade the Ubuntu ppc64le to 22.04 (Jammy).
Seeing the recent successes on RubyCI ppc64le Ubuntu jammy servers, it's time
to upgrade Travis ppc64le to jammy.
http://rubyci.s3.amazonaws.com/ppc64le/ruby-master/recent.html
Upgrade the gcc version to the latest version 11.4.0 to al...
Jun Aruga
02:15 PM Revision 1d51e4ca (git): [ruby/prism] Improve comment generation in templates
The existing comment generation was hard to read and was making a lot of string manipulation. However, ERB files are already designed to do string manipulation, so we can use that instead.
So, instead of doing a split and a map, I opted...
Ufuk Kayserilioglu
12:50 PM Bug #19981 (Closed): bootstraptest/test_ractor.rb: Segmentation fault on arm32
I faced the following segmentation fault on Ubuntu jammy arm32 (emulated environment by `SETARCH='setarch linux32 --verbose --32bit'`) in both Travis CI arm64 [log](https://app.travis-ci.com/github/ruby/ruby/jobs/612418476#L2422
) and R...
jaruga (Jun Aruga)
12:49 PM Revision ab4781b6 (git): Update to ruby/spec@bd7017f
Eregon (Benoit Daloze)
09:27 AM Revision 14fa5e39 (git): [ruby/net-http] fix no_proxy behaviour
https://github.com/ruby/net-http/commit/f4951dc42a Christian van Rensen
09:27 AM Revision f109269a (git): [ruby/net-http] fix a false-negative test
* no_proxy is meant to operate on the destination address, not on the name of the proxy
* if both end with `'.example'`, the test does not nail down the behaviour
https://github.com/ruby/net-http/commit/bb9a5cfa3d
Christian van Rensen
08:35 AM Revision f757a5d3 (git): [ruby/yaml] Compatibility for Psych 4
https://github.com/ruby/yaml/commit/b4b72ae0b4 hsbt (Hiroshi SHIBATA)
06:38 AM Misc #19925: DevMeeting-2023-11-07
* [Bug #19969] Regression of memory usage with Ruby 3.1
* Revert or enable `rehash` with only large Hash?
* [www.ruby-lang.org needs a Privacy Policy page](https://github.com/ruby/www.ruby-lang.org/issues/3134)
* https://www.php.net/...
hsbt (Hiroshi SHIBATA)
06:25 AM Revision 18b7c768 (git): * 2023-10-30 [ci skip]
git[bot]
06:25 AM Revision 992f3956 (git): Relax matching pattern for rake version for Ruby 3.1 (#8798)
[rubygems/rubygems] Relax matching pattern for rake version
https://github.com/rubygems/rubygems/commit/a89f74c27e
hsbt (Hiroshi SHIBATA)
04:46 AM Revision 5c1b7633 (git): [rubygems/rubygems] Relax matching pattern for rake version
https://github.com/rubygems/rubygems/commit/a89f74c27e hsbt (Hiroshi SHIBATA)
04:10 AM Revision 34cb1748 (git): Optimize regexp matching for look-around and atomic groups (#7931)
make_now_just (Hiroya Fujinami)

10/29/2023

10:27 PM Bug #19977: (nil..nil) === x can raise an exception, differing from Range#cover?
Matz had taken the decision to make `(nil..nil) === any_object #=> true` in DevMeeting-2023-04-11.
Therefore, we can conclude that this behavior is a bug.
https://github.com/ruby/dev-meeting-log/blob/master/2023/DevMeeting-2023-04-11...
kyanagi (Kouhei Yanagita)
06:39 AM Bug #19977: (nil..nil) === x can raise an exception, differing from Range#cover?
The fix will likely be https://github.com/kyanagi/ruby/tree/bug_19977. kyanagi (Kouhei Yanagita)
06:46 PM Misc #19980 (Closed): Is the Ruby 3.3 ABI frozen?
I'm a co-maintainer of [rake-compiler-dock](https://github.com/rake-compiler/rake-compiler-dock) which is used to build precompiled native packages for some gems, including nokogiri, sqlite3, grpc, re2, and ruby-magic.
In the past, pr...
mdalessio (Mike Dalessio)
03:19 PM Revision 13c9cbe0 (git): Embed `rb_args_info` in `rb_node_args_t`
nobu (Nobuyoshi Nakada)
12:27 PM Revision fbd55120 (git): Cast up before multiplication
nobu (Nobuyoshi Nakada)
12:09 PM Feature #19979 (Open): Allow methods to declare that they don't accept a block via `&nil`
## Abstract
This feature proposes new syntax to allow methods to explicitly declare that they don't accept blocks, and makes passing of a block to such methods an error.
## Background
In #15554, it was proposed to automatically ...
ufuk (Ufuk Kayserilioglu)
11:38 AM Bug #18743: Enumerator#next / peek re-use each others stacktraces
Hi @nobu, and @ko1. The change was merged in July. Shouldn't this issue be closed? marcper (Marcelo Pereira)
07:16 AM Revision 7f2809b0 (git): Update default gems list at 88f1d380ea431bc807e221fa07f4ac [ci skip]
git[bot]
07:15 AM Revision 88f1d380 (git): [ruby/etc] Start 1.4.3
https://github.com/ruby/etc/commit/a9e4d4730d nobu (Nobuyoshi Nakada)
06:01 AM Feature #19978 (Closed): NoMethodError and large objects should not create unwieldy error messages
The behavior will be changed at Ruby 3.3. See #18285. mame (Yusuke Endoh)
05:51 AM Feature #19978: NoMethodError and large objects should not create unwieldy error messages
If displaying the instance is not important for a NoMethodError, then getting rid of it entirely may make it simpler.
```rb
-e:1:in `<main>': undefined method `/' for Array instance (NoMethodError)
(1..1e3).to_a/=3
^...
sawa (Tsuyoshi Sawada)
05:42 AM Feature #19978: NoMethodError and large objects should not create unwieldy error messages
Do you intend the elided inspect form to be defined for each class, or should it be a result of simple string ellipsis on a fully expanded inspect string (e.g., take the first ten and last seventeen characters from inspection, as in your... sawa (Tsuyoshi Sawada)
04:07 AM Feature #19978 (Closed): NoMethodError and large objects should not create unwieldy error messages
# Description
Currently, in the error message for `NoMethodError`, the object in question is inspected and displayed to the user. This results in unwieldy error messages for large objects. This comes up most often for me when working wi...
ConorOBR (Conor O'Brien)
01:52 AM Feature #19744: Namespace on read
Eregon (Benoit Daloze) wrote in #note-24:
> @deivid @hsbt and other RubyGems/Bundler maintainers:
Hello, Josef (https://github.com/simi) from RubyGems team here.
> ...
Even I do like the basic idea of the proposal (and I do see be...
retro (Josef Šimánek)

10/28/2023

02:49 PM Revision f082ccf4 (git): Fix a typo [ci skip]
nobu (Nobuyoshi Nakada)
02:47 PM Revision db7a4be8 (git): [ruby/irb] Easter egg for autocomplete mode
(https://github.com/ruby/irb/pull/737)
* Show easter-egg inside document dialog in autocomplete mode
* Show more easter_egg(dancing or logo) when Alt+d is pressed in autocomplete mode
https://github.com/ruby/irb/commit/a8e5cc7354
tompng (tomoya ishida)
01:18 PM Revision a447a6d1 (git): Extract transcoding assertions
- Prefix `check_both_ways` with `assert_` to show proper failure
lines.
- Extract dedicated assertions for Encoding::UndefinedConversionError
and Encoding::InvalidByteSequenceError.
nobu (Nobuyoshi Nakada)
01:17 PM Bug #19977 (Closed): (nil..nil) === x can raise an exception, differing from Range#cover?
I investigated Range#=== and Range#cover?, and found that the only difference in behavior between them would be that
`(nil..nil) === x` could throw an exception.
```
% ~/tmp/ruby-master/bin/ruby -v
ruby 3.3.0dev (2023-10-27T03:13:1...
kyanagi (Kouhei Yanagita)
10:06 AM Bug #19976 (Closed): test/fiber/test_queue.rb stuck tests in Ubuntu ppc64le
I have seen the `test_pop_with_timeout` and `test_pop_with_timeout_and_value` are stuck/hang on GCC compilers on ruby's master branch in RubyCI ppc64le server Focal/Jammy and Travis CI ppc64le.
This ticket is to manage this issue.
O...
jaruga (Jun Aruga)
09:12 AM Revision 83ecdd1d (git): Revert ".travis.yml: Drop s390x temporarily." (#8792)
It seems the Travis s390x is recovered again now.
This reverts commit 95cc0f946eb641be8dea4b7118598be77d993183.
Jun Aruga
09:10 AM Revision 3eaae728 (git): test/fiber/test_queue.rb: Make the stuck test fail. (#8791)
test/fiber/test_queue.rb: Make the stuck tests fail.
We observed the 2 tests in the `test/fiber/test_queue.rb` getting stuck
in some GCC compilers in Ubuntu ppc64le focal/jammy, even when the timeout
`queue.pop(timeout: 0.0001)` is set ...
Jun Aruga
07:01 AM Revision f7605db8 (git): Update bundled gems list at 6589af52d22e1b5976295adc7968c5 [ci skip]
git[bot]
05:12 AM Revision 6589af52 (git): Print the date to STDERR if STDIN is a part of input [ci skip]
nobu (Nobuyoshi Nakada)
03:20 AM Bug #19754: `IO::Buffer#get_string` raises unsuitable exception for too large offset
ruby_3_2 8bbf909bb561732057b533cee1618b14886e07ba merged revision(s) 19346c2336053b351673da030b00c704138252d8. nagachika (Tomoyuki Chikanaga)
02:57 AM Revision 8bbf909b (git): merge revision(s) 19346c2336053b351673da030b00c704138252d8: [Backport #19754]
[Bug #19754] Make `IO::Buffer#get_string` check `offset` range
(#8016)
---
io_buffer.c | 3 +++
test/ruby/test_io_buffer.rb | 8 ++++++++
2 files changed, 11 insertions(+)
nagachika (Tomoyuki Chikanaga)
01:44 AM Revision 7e6204dd (git): Windows: Add libffi as a build dependency
Otherwise the fiddle extension isn't build. larskanis (Lars Kanis)

10/27/2023

10:14 PM Revision 2714d750 (git): [rubygems/rubygems] Update SPDX license list as of 2023-10-05
https://github.com/rubygems/rubygems/commit/e69a43ac9f License Update
07:56 PM Revision 49d44211 (git): .travis.yml: Disable allow_failures for arm32.
I want to disable allow_failures if possible to avoid unintentional new
failures. It seems that the arm32 case is stable.
Feel free to enable allow_failures again when you see the case is unstable.
Jun Aruga
07:56 PM Revision ddf5a33c (git): .travis.yml: Upgrade the Ubuntu arm32 to 22.04 (Jammy).
Upgrade the gcc version to the latest version 11.4.0 to align the gcc
version used in the RubyCI arm64 server.
Jun Aruga
07:09 PM Revision 4aee6931 (git): Make get_next_shape_internal idempotent
Since the check for MAX_SHAPE_ID was done before even checking
if the transition we're looking for even exists, as soon as the
max shape is reached, get_next_shape_internal would always return
`TOO_COMPLEX` regardless of whether the tran...
byroot (Jean Boussier)
06:28 PM Revision d654d580 (git): Revert "Add debug info for flaky test_warmup_frees_pages"
This reverts commit db3b814cb0ff6ffe83fe0c4f66cd6ce8951c3ca7.
This debugging information is no longer needed.
peterzhu2118 (Peter Zhu)
06:09 PM Revision c201dbc0 (git): [ruby/prism] Prism.parse_inline_comments
https://github.com/ruby/prism/commit/5b72f84480 kddnewton (Kevin Newton)
06:09 PM Revision df10e103 (git): [ruby/prism] Parse inline comments
https://github.com/ruby/prism/commit/44090d9f26 kddnewton (Kevin Newton)
05:16 PM Revision 95cc0f94 (git): .travis.yml: Drop s390x temporarily.
The s390x pipeline is unstable with the error "No output has been received"
or doesn't start. See <https://travis-ci.community/t/13811>.
Jun Aruga
05:16 PM Revision a0b7574e (git): .travis.yml: Simplify Travis CI.
* Remove CI functions for make test-all.
I want to simplify the `.travis.yml` for us to maintain it easily. When we
need to skip a test, we can fix the test file directly.
I removed the `tool/ci_functions.sh` too. I confirmed the f...
Jun Aruga
03:00 PM Revision 7979c009 (git): Fix bug for removed weak references
rb_darray_foreach gives a pointer to the entry, so we need to deference
it to read the value.
peterzhu2118 (Peter Zhu)
02:23 PM Revision 26a05c42 (git): [ruby/prism] Use printf attribute and then fix warnings
https://github.com/ruby/prism/commit/3193902c43 kddnewton (Kevin Newton)
01:53 PM Revision 15ee9c7c (git): [DOC] README.md: Remove Cirrus CI badge image. (#8785)
We removed the `.cirrus.yml` at the commit
<01b5d1d2ff6ca91b2909dfa67295f59b53e6f065>.
Let's remove the badge image too.
Jun Aruga
01:45 PM Revision 7e4d2bb8 (git): [ruby/prism] Move static annotations into _static files
https://github.com/ruby/prism/commit/9a6d735890 Vinicius Stock
01:45 PM Revision 06173a41 (git): [ruby/prism] Add rbi_class to fields
https://github.com/ruby/prism/commit/568fb39e2c Vinicius Stock
01:45 PM Revision 544f6407 (git): [ruby/prism] Add RBI and RBS templates for Prism
https://github.com/ruby/prism/commit/b62305ff3e
Co-authored-by: Stan Lo <st0012@users.noreply.github.com>
Vinicius Stock
01:40 PM Revision a8af5d38 (git): [ruby/prism] Use MatchWriteNode on split InterpolatedREN
https://github.com/ruby/prism/commit/ee54244800 kddnewton (Kevin Newton)
08:49 AM Feature #19972: Install default/bundled gems into dedicated directories
I also like the overall idea - aka to have more fine-tuned control. While I don't run
into the same issues described by vo.x, I do have to work in restricted areas every
now and then; university campus sites are a good example, where I t...
rubyFeedback (robert heiler)
08:01 AM Revision 9c5b084c (git): Adjust indent [ci skip]
nobu (Nobuyoshi Nakada)
07:57 AM Revision 934beac1 (git): Select the destination for the latest date by whether inplace mode
nobu (Nobuyoshi Nakada)
06:17 AM Revision bba94659 (git): Let bundled_gems use matzbot's token for git push
k0kubun (Takashi Kokubun)
03:13 AM Revision f9f0cfe7 (git): Bump ruby/setup-ruby from 1.158.0 to 1.159.0
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.158.0 to 1.159.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Commits](https://github.com/ruby/setup-ruby/compare/cd48c8e22733480b66887b42bfeb6c0b88...
dependabot[bot]
02:24 AM Revision 8b3a2d56 (git): Update gem version in NEWS [ci skip]
ref 77d7ac7c066e281b9c41d04b7fc3315e41aa6485 znz (Kazuhiro NISHIYAMA)
02:09 AM Revision a40e2b8e (git): [ruby/prism] Fix parsing lone assoc splat within hash patterns
https://github.com/ruby/prism/commit/1da5e05672 kddnewton (Kevin Newton)
01:40 AM Bug #18886: Struct aref and aset don't trigger any tracepoints.
I submitted a pull request to fix this: https://github.com/ruby/ruby/pull/8782 jeremyevans0 (Jeremy Evans)
01:16 AM Feature #19244 (Closed): Windows: USERPROFILE should be preferred over HOMEPATH
Applied in changeset commit:git|9a618b95cdee82b64257a248c31d49ae9f066fea.
----------
[Feature #19244] Windows: Prefer USERPROFILE over HOMEPATH on startup as well
larskanis (Lars Kanis)
01:16 AM Revision 9a618b95 (git): [Feature #19244] Windows: Prefer USERPROFILE over HOMEPATH on startup as well
larskanis (Lars Kanis)

10/26/2023

11:41 PM Revision 77d7ac7c (git): Update bundled_gems [ci skip]
znz (Kazuhiro NISHIYAMA)
09:49 PM Revision bbf1d621 (git): Decrease redblack cache / shape size in debug
When running tests in debug mode, we have tests that try to exhaust the
space used for shapes and the redblack cache. However, this can cause
Out of Memory issues on some machines, so this commit decreases the
cache sizes when RUBY_DEBU...
tenderlovemaking (Aaron Patterson)
08:41 PM Bug #19974: OpenSSL::PKCS7 generates SegFault when parsing invalid data
That's great, thanks so much! dprater (David Prater)
07:58 PM Bug #19974: OpenSSL::PKCS7 generates SegFault when parsing invalid data
I submitted a pull request upstream to fix this: https://github.com/ruby/openssl/pull/690
This is a different issue than #6134, which affected `PKCS7.new`, not `PKCS7#certificates`.
jeremyevans0 (Jeremy Evans)
02:26 PM Bug #19974: OpenSSL::PKCS7 generates SegFault when parsing invalid data
By the way, looks like this (or at least a very similar) issue was opened in 2012 for Ruby 1.9.3 - https://bugs.ruby-lang.org/issues/6134. The bug was fixed, according to the tracker, but it seems like the issue was either reintroduced a... dprater (David Prater)
02:17 PM Bug #19974 (Closed): OpenSSL::PKCS7 generates SegFault when parsing invalid data
We ran into an instance of attempting to parse invalid PKCS7 certs that consistently causes a segfault in multiple versions of Ruby 3, on multiple platforms (Linux, Mac).
To reproduce:
```
------- (within pry or irb or whatever ru...
dprater (David Prater)
08:07 PM Revision 8e62596e (git): Move some defines from shape.h to shape.c
If they are only used there, we might as well not expose them. byroot (Jean Boussier)
07:47 PM Revision 719b40bd (git): [prism] Update prettyprint deps
kddnewton (Kevin Newton)
07:43 PM Revision 6e8ff9d2 (git): [ruby/prism] Allow regexp flags to change
https://github.com/ruby/prism/commit/88a61cc30c kddnewton (Kevin Newton)
07:40 PM Revision f3e77f36 (git): [ruby/prism] Fix up newline test
https://github.com/ruby/prism/commit/9fdb41d8ba kddnewton (Kevin Newton)
07:23 PM Revision 55b81e41 (git): Use new prism prettyprint APIs
kddnewton (Kevin Newton)
07:19 PM Revision 21dc6453 (git): [ruby/prism] Regenerate snapshots
https://github.com/ruby/prism/commit/160df9a687 kddnewton (Kevin Newton)
07:19 PM Revision d1bb858d (git): [ruby/prism] Match existing Ruby prettyprint
https://github.com/ruby/prism/commit/6d8358c083 kddnewton (Kevin Newton)
07:19 PM Revision e9aa2398 (git): [ruby/prism] Get general prettyprint structure working
https://github.com/ruby/prism/commit/7c9cf63d4c kddnewton (Kevin Newton)
07:12 PM Revision 9792be36 (git): [ruby/prism] Avoid warning for pm_token_buffer_t initialization
* This was causing this error on macOS Mojave:
src/prism.c:8216:48: error: suggest braces around initialization of subobject [-Werror,-Wmissing-braces]
pm_token_buffer_t token_buffer = { 0 };
...
Eregon (Benoit Daloze)
07:08 PM Revision 6241cfab (git): [prism] handle locals consistently
kddnewton (Kevin Newton)
07:03 PM Revision e3258dd6 (git): Integrate new prism multi target names
kddnewton (Kevin Newton)
06:59 PM Revision 018f0a9c (git): [ruby/prism] Rename to lefts/rights
https://github.com/ruby/prism/commit/e6deed05a5 kddnewton (Kevin Newton)
06:59 PM Revision 922f48f0 (git): [ruby/prism] Remove RequiredDestructuredParameterNode in favor of MultiTargetNode
https://github.com/ruby/prism/commit/6d1858192e kddnewton (Kevin Newton)
06:59 PM Revision 533bd1d1 (git): [ruby/prism] Ensure no extra multi-target nodes are created for splats
https://github.com/ruby/prism/commit/e60240d54b kddnewton (Kevin Newton)
06:58 PM Revision 82acca91 (git): [ruby/prism] Ensure no extra multi-target nodes are created
https://github.com/ruby/prism/commit/ec31fd827f kddnewton (Kevin Newton)
06:58 PM Revision 234e8fb8 (git): [ruby/prism] Split up multi target/write targets
https://github.com/ruby/prism/commit/dda7a0da52 kddnewton (Kevin Newton)
06:47 PM Revision 7e4ee92d (git): [ruby/prism] Add KeywordSplat flag to ArgumentsNode
Method calls with keyword splat args compile differently than
without since they merge the keyword arg hash with the keyword splat
hash. We know this information at parse time, so can set a flag
which the compiler can use.
https://githu...
jemmai (Jemma Issroff)
06:11 PM Revision a082e560 (git): [PRISM] Implement regex encoding flags
Added the correct encoding to the allocated regex. This required making
a new method to set the encoding and pass that to `rb_enc_reg_new`
instead of `rb_reg_new`. The former `rb_reg_new` would set the encoding
to ASCII8BIT regardless o...
eileencodes (Eileen Uchitelle)
04:29 PM Revision 2573d568 (git): [PRISM] Change --dump keyword to prism_parsetree
jemmai (Jemma Issroff)
04:07 PM Revision b57b7acc (git): add more shapes tests
luke-gru (Luke Gruber)
03:47 PM Revision 4f8a33eb (git): [PRISM] Cleanup macro usage for common ADD_INSN
jemmai (Jemma Issroff)
03:35 PM Bug #19975 (Closed): ISeq#to_binary loses hidden local variable indices
When you call `RubyVM::InstructionSequence#to_a`, you get hidden local variables as the index in the stack from the top:
``` c
if (rb_id2str(lid)) {
rb_ary_push(locals, ID2SYM(lid));
}
else { /* hidden variable from id_interna...
kddnewton (Kevin Newton)
02:54 PM Revision 8f4a8cd0 (git): teach prism define to compile basic types
HParker (Adam Hess)
02:42 PM Revision 9570a88b (git): [PRISM] Implement compilation for ConstantPathAndWriteNode
jemmai (Jemma Issroff)
02:42 PM Revision ec2878c1 (git): [PRISM] Implement compilation for ConstantPathOrWriteNode
jemmai (Jemma Issroff)
02:42 PM Revision b5f61750 (git): [PRISM] Implemented ConstantPathOperatorWriteNode
jemmai (Jemma Issroff)
02:34 PM Revision 631ddb34 (git): [ruby/prism] Split Prism::Loader#load_node in one lambda per node type
* Otherwise load_node is too big to compile and is forced to run in interpreter:
https://github.com/oracle/truffleruby/issues/3293#issuecomment-1759730996
* For the benchmark at https://github.com/oracle/truffleruby/issues/3293#issueco...
Eregon (Benoit Daloze)
01:58 PM Revision 51ea82a7 (git): [ruby/prism] Expose options on match last line nodes
https://github.com/ruby/prism/commit/0284b38861 kddnewton (Kevin Newton)
01:50 PM Revision 3ed317a4 (git): Remove JavaScript templates
kddnewton (Kevin Newton)
01:33 PM Revision feb1427a (git): [ruby/prism] Compile with WASI
https://github.com/ruby/prism/commit/73c44b0b9c kddnewton (Kevin Newton)
11:45 AM Revision bfb9b5e6 (git): [PRISM] Implement compilation for CaseNode
jemmai (Jemma Issroff)
10:56 AM Feature #8520: Distinct to_s methods for Array, Hash...
p8 (Petrik de Heus) wrote in #note-5:
> There is an open issue in Rails to limit `ActiveRecord::Base#inspect` for performance reasons.
> ...
That sounds more like a Rails problem than a Ruby Problem
if the objects in an Array or Has...
Hanmac (Hans Mackowiak)
09:41 AM Feature #8520: Distinct to_s methods for Array, Hash...
There is an open issue in Rails to limit `ActiveRecord::Base#inspect` for performance reasons.
https://github.com/rails/rails/issues/49707
Calling `to_s` on a `Hash` will call `inspect` on its contents.
`ActiveRecord::Base#inspect` ...
p8 (Petrik de Heus)
10:15 AM Revision 7b6b17a9 (git): [PRISM] Rename new tests to use `assert_prism_eval`
jemmai (Jemma Issroff)
10:15 AM Revision d6cb2dc6 (git): [PRISM] Refactor tests to deconflict with existing tests
jemmai (Jemma Issroff)
10:15 AM Revision 8e574458 (git): [PRISM] Implement CallOperatorWriteNode
jemmai (Jemma Issroff)
10:15 AM Revision 68a81b44 (git): [PRISM] Implement compilation for CallOrWriteNode
jemmai (Jemma Issroff)
10:15 AM Revision e28a0330 (git): [PRISM] Extract helper to use for CallOrWriteNode
jemmai (Jemma Issroff)
10:15 AM Revision 2a8dbb13 (git): [PRISM] Implemented compilation for CallAndWriteNode
jemmai (Jemma Issroff)
10:00 AM Revision 73d7fd86 (git): Windows: Prefer USERPROFILE over HOMEPATH
Enable the test commented out in ruby/ruby@d0f5dc9eac78ecade459.
Extracted from GH-7033, that is for initialization at start up time
and this test is unrelated to it.
larskanis (Lars Kanis)
09:56 AM Revision e74ea904 (git): [ruby/zlib] Check for z_size_t along with {crc,adler}32_z in
extconf.rb
(https://github.com/ruby/zlib/pull/69)
The android NDK (android-ndk-r21e) does not have crc32_z, adler32_z, nor
z_size_t in its zlib.h header file. However, it _does_ have the crc32_z
and adler32_z symbols in the libz.a stati...
KJ Tsanaktsidis
09:03 AM Revision ab965962 (git): Revert "[ruby/prism] Use `cargo fmt`"
This reverts commit 4259d5b5aefd58d0bf86ad20122beee53533ff59.
This commits is wrong result of sync_default_gems.rb
hsbt (Hiroshi SHIBATA)
08:29 AM Feature #19362 (Closed): #dup on Proc doesn't call initialize_dup
Applied in changeset commit:git|1507118f0b70fc8002b4b0f186b464c64965cd1e.
----------
[Feature #19362] Call `#initialize_dup` hook at `Proc#dup`
nobu (Nobuyoshi Nakada)
04:21 AM Feature #19362: #dup on Proc doesn't call initialize_dup
I've forgot this, but isn't this a feature require but not a bug? nobu (Nobuyoshi Nakada)
08:28 AM Revision 825fbaa6 (git): [Feature #19362] [DOC] Add to NEWS.md
nobu (Nobuyoshi Nakada)
08:28 AM Revision 1507118f (git): [Feature #19362] Call `#initialize_dup` hook at `Proc#dup`
nobu (Nobuyoshi Nakada)
08:15 AM Revision 7d159a87 (git): Lrama v0.5.8
yui-knk (Kaneko Yuichiro)
06:14 AM Bug #19973 (Closed): Duplicate keyword argument names don't always warn
Applied in changeset commit:git|c8d162c889008028b148437d02f36f4edaa749fd.
----------
[Bug #19973] Warn duplicated keyword arguments after keyword splat
nobu (Nobuyoshi Nakada)
05:35 AM Bug #19973: Duplicate keyword argument names don't always warn
https://github.com/ruby/ruby/pull/8771 nobu (Nobuyoshi Nakada)
05:30 AM Revision 701ca070 (git): Prevent a warning: assigned but unused variable - z
mame (Yusuke Endoh)
05:28 AM Revision c8d162c8 (git): [Bug #19973] Warn duplicated keyword arguments after keyword splat
nobu (Nobuyoshi Nakada)
03:39 AM Revision 634e0ac1 (git): Fix test failure with __runner_options__ renaming
hsbt (Hiroshi SHIBATA)
03:39 AM Revision 7717684d (git): tool test/unit/testcase: rename vars @passed, @@current
to @__passed__, @@__current__.
@passed is redefined in a few test suites, and this could lead to bugs.
Also rename @options (Runner#options) to @__runner_options__, which is
only used in make test-tool anyway.
luke-gru (Luke Gruber)
03:20 AM Revision ad06addb (git): [wasm] Check exts build working on ci
This is a preparation for enabling spec test katei (Yuta Saito)
03:09 AM Revision 41ba23ef (git): Bump ruby/setup-ruby from 1.157.0 to 1.158.0
Bumps [ruby/setup-ruby](https://github.com/ruby/setup-ruby) from 1.157.0 to 1.158.0.
- [Release notes](https://github.com/ruby/setup-ruby/releases)
- [Commits](https://github.com/ruby/setup-ruby/compare/a05e47355e80e57b9a67566a813648fa67...
dependabot[bot]
02:17 AM Revision ac4d6876 (git): [ruby/zlib] Fix misdetection of {crc32,alder32}_z in cloudflare zlib fork
We use the Cloudflare fork of zlib
(https://github.com/cloudflare/zlib), which we find gives improved
performance on AWS Graviton ARM instances. That fork does not define
crc32_z and alder32_z functions.
Until two days ago, Ruby's zlib ...
kjtsanaktsidis (KJ Tsanaktsidis)
01:56 AM Revision 3ef7b632 (git): Make beginless Range#size return nil if it ends with non-numeric
fn ⌃ ⌥
01:18 AM Revision 4259d5b5 (git): [ruby/prism] Use `cargo fmt`
https://github.com/ruby/prism/commit/5969b827ae Ian Ker-Seymer
01:12 AM Revision 0164ce89 (git): add #to_str to URI::Generic
Michael Chui
01:01 AM Bug #19753: IO::Buffer#get_string can't handle negative offset
@jeremyevans0 Thanks for reviewing the fix, yes, this should be closed. ioquatix (Samuel Williams)
12:22 AM Bug #18991: False LocalJumpError when branch coverage is enabled
Thank you for the fix mame! Would it be possible for this to be backported to the 3.1 branch? The fix seems to apply cleanly and resolves our issue.
I opened a backport PR here: https://github.com/ruby/ruby/pull/8768.
kjtsanaktsidis (KJ Tsanaktsidis)

10/25/2023

11:54 PM Bug #19537 (Closed): Regexp caching algorithm since v3.2.0 causes invalid memory access
Fixed in commit:a1c2c274eebcc2a5275b677ebf94a8dbff380770 jeremyevans0 (Jeremy Evans)
11:36 PM Bug #19753 (Closed): IO::Buffer#get_string can't handle negative offset
This appears to be fixed by commit:a095740fed2a05a04806a1d3827bcaba02e45720, as you now get: `Offset can't be negative! (ArgumentError)` for `b.get_string(-1)` jeremyevans0 (Jeremy Evans)
11:33 PM Bug #19828 (Closed): Segfault when `OpenSSL::X509::Certificate#public_key=` is given a `OpenSSL::PKey::DH` object
In Ruby 3.3.0-preview2, the example code now raises `OpenSSL::PKey::PKeyError: public key missing`. That doesn't appear to meet @postmodern 's expectation, but I think the behavior is expected. If you read the `OpenSSL::PKey::DH#public_... jeremyevans0 (Jeremy Evans)
10:09 PM Bug #19779: `eval "return"` at top level raises `LocalJumpError`
I submitted a pull request to fix this: https://github.com/ruby/ruby/pull/8766 jeremyevans0 (Jeremy Evans)
09:18 PM Revision b5f6e2a7 (git): [PRISM] ScopeNode doesn't need void * anymore
jemmai (Jemma Issroff)
09:18 PM Revision 8f71a5c5 (git): [PRISM] Move scope_node itself to CRuby, create prism_compile.h
jemmai (Jemma Issroff)
09:18 PM Revision 0abf2d86 (git): [PRISM] Move pm_scope_node_init to prism_compile.c
pm_scope_node_init is only used for CRuby, so should not live in the
ruby/prism repo. We will merge the changes here first so they're
not breaking, and will then remove from ruby/prism
jemmai (Jemma Issroff)
08:32 PM Bug #19973 (Closed): Duplicate keyword argument names don't always warn
Calling a method with duplicate keyword arguments doesn't warn when it could:
```ruby
def bar a:, b:
a + b
end
# Warning
bar(a: 1, b: 3, a: 2)
z = { b: 123 }
# No warning
bar(a: 1, **z, a: 2)
```
The first call to ...
tenderlovemaking (Aaron Patterson)
08:27 PM Revision f87c31f3 (git): [PRISM] Add PM_POP macro, cleanup missing macro usage
jemmai (Jemma Issroff)
07:54 PM Feature #19972: Install default/bundled gems into dedicated directories
Eregon (Benoit Daloze) wrote in #note-1:
> Also this might remove the need for `specifications/default` which is a bit odd.
I have PR opened for this for a long time:
https://github.com/rubygems/rubygems/pull/2909
However, now ...
vo.x (Vit Ondruch)
05:57 PM Feature #19972: Install default/bundled gems into dedicated directories
I think this makes sense and would be better/clearer and make it easier if a user wants to remove all user-installed gems.
We should make sure it does not hurt application startup since it might have to look in more places, but probably...
Eregon (Benoit Daloze)
03:30 PM Feature #19972 (Assigned): Install default/bundled gems into dedicated directories
I think that the current situation, where the same directory (lets call it `Gem.default_dir`) is used for default/bundled gems as well as for user installed gems, is suboptimal. During the times, this has caused us quite some issue on Fe... vo.x (Vit Ondruch)
07:51 PM Revision 0a3eba0b (git): Fix few test_prism_eval that snuck in
HParker (Adam Hess)
06:52 PM Revision 3fe2f268 (git): [rubygems/rubygems] Raise exception on unexpected EOF in marshal
Instead of NoMethodError being raised by accidentally trying to use nil
https://github.com/rubygems/rubygems/commit/ac8f812bbf
segiddins (Samuel Giddins)
06:51 PM Revision 7e7d1f06 (git): [rubygems/rubygems] Avoid regexp match on every call to `Gem::Platform.local`
The result of `arch` would be ignored if `@local` is set, so wrap all
the logic in `@local ||=` to short-circuit everything
https://github.com/rubygems/rubygems/commit/b67d39f3e0
segiddins (Samuel Giddins)
06:00 PM Revision b0a97073 (git): Use `assert_prism_eval` over `test_prism_eval` in helper
When we use `test_prism_eval`, failed tests will point to the line
number of the `test_prism_eval` method definition instead of the test
that failed. If we use `assert_prism_eval` instead, failed tests will
properly poin to the test that...
eileencodes (Eileen Uchitelle)
05:24 PM Revision fa3cc4af (git): [rubygems/rubygems] Set file path when eval-ing local specification in EndpointSpecification
Not strictly necessary, but there is no reason not to be helpful and set the path
https://github.com/rubygems/rubygems/commit/894c0303dd
segiddins (Samuel Giddins)
04:31 PM Misc #19925: DevMeeting-2023-11-07
* [Feature #19324] `Enumerator.product` => `Enumerable#product`
* The method introduced is inconsistent with `Array#product` being an instance method, and in general is defined unlike any similar `Enumerable` or `Array` methods;
* ...
zverok (Victor Shepelev)
04:02 PM Revision 8197bbb0 (git): [PRISM] Toggled accepts_no_kwarg to true on NoKeywordsParameterNode
jemmai (Jemma Issroff)
04:02 PM Revision fb0a3016 (git): [PRISM] Add tests for ParametersNode
jemmai (Jemma Issroff)
04:02 PM Revision fe082701 (git): [PRISM] Implement NoKeywordsParameterNode
jemmai (Jemma Issroff)
02:57 PM Revision 4f1adb01 (git): Try newer 2023-10-18 vcpkg [ci skip]
https://github.com/microsoft/vcpkg/issues/33904
This reverts commit 8f1b688177dba412821cbc01ef2cabdce385f7ba, "Revert
vcpkg.exe to previous release [ci skip]".
nobu (Nobuyoshi Nakada)
02:36 PM Bug #19927 (Closed): TestCoverage#test_coverage_suspendable fails on ppc64le
jeremyevans0 (Jeremy Evans)
02:30 PM Bug #19927: TestCoverage#test_coverage_suspendable fails on ppc64le
This is likely resolved by https://github.com/ruby/ruby/pull/8670 vo.x (Vit Ondruch)
02:08 PM Feature #19744: Namespace on read
tagomoris (Satoshi Tagomori) wrote in #note-69:
> `Kernel#load(file, wrap)` doesn't work as you wrote. `class C` defines a new class `C` even when the caller script already defined `C`.
Interesting. So that means with the current POC it...
Eregon (Benoit Daloze)
07:13 AM Feature #19744: Namespace on read
`load file, mod` pushes `mod` to the nesting. The constant lookup issued by the `class/module` keywords checks the first element of the nesting (`Object` if the nesting is empty).
This is a feature I don't personally like very much (sai...
fxn (Xavier Noria)
12:30 AM Feature #19744: Namespace on read
Eregon (Benoit Daloze) wrote in #note-67:
> So mostly I think we should rely on the semantics of `Kernel#load(file, wrap: wrap_module)`.
> ...
`Kernel#load(file, wrap)` doesn't work as you wrote. `class C` defines a new class `C` even ...
tagomoris (Satoshi Tagomori)
12:40 PM Revision 2f8a719b (git): Removed unused argument
Eventually, `read_escape` does not use `encp`. nobu (Nobuyoshi Nakada)
11:37 AM Revision f26d53e9 (git): Reduce the number of times IO is passed in send_io/recv_io test
Since Linux 4.5, sendmsg(2) fails with ETOOMANYREFS if the number of
"in-flight" IOs, which has been sent by sendmsg(2) but has not yet
accepted by recvmsg(2), exceeds the RLIMIT_NOFILE resource limit.
https://rubyci.s3.amazonaws.com/ar...
mame (Yusuke Endoh)
11:04 AM Revision de824392 (git): Do not use pthread_setaffinity_np on s390x
Looks like it randomly causes a segfault
https://rubyci.s3.amazonaws.com/rhel_zlinux/ruby-master/log/20231025T093302Z.fail.html.gz
```
[11186/26148] TestNetHTTP_v1_2#test_set_form/home/chkbuild/build/20231025T093302Z/ruby/tool/lib/webri...
mame (Yusuke Endoh)
09:58 AM Revision 54a5623e (git): Strip trailing spaces [ci skip]
nobu (Nobuyoshi Nakada)
09:49 AM Revision 16494868 (git): Fixup 5461bc18f88
hsbt (Hiroshi SHIBATA)
07:50 AM Revision 526292d9 (git): LLDB: Use `expression` to save the result into the history [ci skip]
nobu (Nobuyoshi Nakada)
07:49 AM Revision bf136230 (git): [Doc] Improve documentation of PP
* Remove mention to `require 'pp'` for `pretty_inspect`
* Mention the need to add `require 'pp'` to customize
`#pretty_print(pp)` method
okuramasafumi (Masafumi OKURA)
07:47 AM Revision 5461bc18 (git): omit failing test at arm64-neoverse-n1
hsbt (Hiroshi SHIBATA)
07:44 AM Bug #19916: URI#to_s can serialize to a value that doesn't deserialize to the original
to_s is not serialize / deserialize
also it is not guarantied that to_s returns a string that is parsable
Hanmac (Hans Mackowiak)
07:34 AM Revision 593de2b0 (git): Add tests for passing nil to Comparable#clamp(min, max)
kyanagi (Kouhei Yanagita)
07:34 AM Revision 55eb0d5c (git): [DOC] Add doc for behavior when passing nil to Comparable#clamp(min, max)
kyanagi (Kouhei Yanagita)
07:32 AM Bug #19632 (Closed): Disable external iterator for frozen enumerator
Applied in changeset commit:git|3e64cf60b5162bb5dad772f300b7f6346e5f83f9.
----------
Fix [Bug #19632]: Disable external iterator for frozen enumerator (#7791)
* Fix [Bug #19632]: Disable external iterator for frozen enumerator
Current...
make_now_just (Hiroya Fujinami)
07:32 AM Revision 3e64cf60 (git): Fix [Bug #19632]: Disable external iterator for frozen enumerator (#7791)
* Fix [Bug #19632]: Disable external iterator for frozen enumerator
Currently, methods to manipulate an external iterator like `#next`
and `#feed` can be called even if a receiver of an enumerator is
frozen. However, these methods chang...
make_now_just (Hiroya Fujinami)
05:36 AM Bug #19970: Eval leaks callcache and callinfo objects on arm32 (linux)
The issue has also been reproduced on master (ruby 3.3.0dev (2023-10-24 master 60196b4780) [armv7l-linux-eabihf]). larsin (Lars Ingjer)
04:10 AM Revision a6a67b05 (git): Do not append latest_date to gems/bundled_gems [ci skip]
znz (Kazuhiro NISHIYAMA)
12:46 AM Revision c5861903 (git): [rubygems/rubygems] Handle CI configuration on ignore list for Gem::Specification#files
https://github.com/rubygems/rubygems/commit/4bb0ef3e55 hsbt (Hiroshi SHIBATA)

10/24/2023

11:12 PM Revision 820957b1 (git): Remove unused macro
`struct RNode_OP_ASGN22` was removed by 37a783a. yui-knk (Kaneko Yuichiro)
10:38 PM Revision a2badf30 (git): Follow up NODE_OP_ASGN2 structure change
yui-knk (Kaneko Yuichiro)
09:23 PM Revision d8cb827f (git): Remove SHAPE_MAX_NUM_IVS
There is no longer a limit on the number of IVs you can store.
SHAPE_MAX_NUM_IVS was used to work around the IV10K problem (the well
known problem where setting 10k instance variables in a row would be too
slow). The redblack tree works...
tenderlovemaking (Aaron Patterson)
09:23 PM Revision 33bebee1 (git): Use available constants
We don't need to intern "initialize" all the time because we already
have `idInitialize` available
tenderlovemaking (Aaron Patterson)
09:23 PM Revision afae8df3 (git): `get_next_shape_internal` should always return a shape
If it runs out of shapes, or new variations aren't allowed, it will
return "too complex"
tenderlovemaking (Aaron Patterson)
09:23 PM Revision cfd7c1a2 (git): Allow the shape tree to be traversed
This commit allows the shape tree to be traversed to locate an existing
shape, but it doesn't necessarily allow you to create new variations.
tenderlovemaking (Aaron Patterson)
09:23 PM Revision 3760bacc (git): Remove new_shape_necessary code
We always create new shapes until we run out! tenderlovemaking (Aaron Patterson)
09:23 PM Revision 702b8e31 (git): golf down ancestor caching
tenderlovemaking (Aaron Patterson)
09:06 PM Misc #19971: Confusing arity of a Proc with implicit rest parameter
Ah, I see. Thanks for clarifying! FWIW, lambdas don't ack the implicit rest either. shan (Shannon Skipper)
08:53 PM Misc #19971: Confusing arity of a Proc with implicit rest parameter
@shan I don't think this documentation definition covers the case described by OP.
`proc { |a,| }` is not the same as `proc { |a| }`, and is semantically equivalent of `proc { |a,*| }`. I think it is reasonable to expect its `arity`—...
zverok (Victor Shepelev)
08:32 PM Misc #19971: Confusing arity of a Proc with implicit rest parameter
Docs say it's intended, since #arity "returns -n-1, where n is the number of mandatory arguments, with the exception for blocks that are not lambdas and have only a finite number of optional arguments; in this latter case, returns n." A ... shan (Shannon Skipper)
01:07 PM Misc #19971 (Open): Confusing arity of a Proc with implicit rest parameter
I've noticed that such proc `proc { |a,| }` has arity `1`:
```ruby
proc { |a,| }.arity # => 1
```
that means only one required parameter, but the proc behaves similar to a proc with explicit rest parameter (`proc { |a, *| }`) tha...
andrykonchin (Andrew Konchin)
08:40 PM Bug #19916: URI#to_s can serialize to a value that doesn't deserialize to the original
I agree this is a bug. There's a few ways to fix it:
1. Convert the relative path to absolute path when host/port is set.
2. Raise if path is relative when setting host/port.
3. Change URI#to_s to add a slash for a relative path if...
jeremyevans0 (Jeremy Evans)
07:35 PM Revision ee829986 (git): Remove erroneous test_code.rb file
jemmai (Jemma Issroff)
07:30 PM Feature #19744: Namespace on read
I see it as @Eregon.
Let me share my point of view more broadly.
First of all, I believe solutions should be given to library authors, not to client code. Bottom up. If client code needs to workaround limitation of the language, you ha...
fxn (Xavier Noria)
02:51 PM Feature #19744: Namespace on read
Since this proposal is not providing full isolation, I think it should be kept as simple and minimal as possible.
If `class String; end` would define `ns::String` then `"abc".class == String` would not hold, that seems pretty bad.
And ...
Eregon (Benoit Daloze)
02:35 PM Feature #19744: Namespace on read
Dan0042 (Daniel DeLorme) wrote in #note-64:
> @tagomoris, have you considered the idea that `::Foo` should refer to the Foo constant within the namespace instead of the top-level?
Yes, but I concluded that it's both almost impossible...
tagomoris (Satoshi Tagomori)
02:12 PM Feature #19744: Namespace on read
@fxn Yes, I know my example was too extreme. I just wanted to say it's not enough reasonable to say "It's not deterministic."
I will propose any feature/limitation/behavior about reopening classes (whitelists? declarations? or something...
tagomoris (Satoshi Tagomori)
01:24 PM Feature #19744: Namespace on read
@tagomoris, have you considered the idea that `::Foo` should refer to the Foo constant within the namespace instead of the top-level? That would mean the namespace is fully isolated and prevented from reaching outside of itself, which ma... Dan0042 (Daniel DeLorme)
01:12 PM Feature #19744: Namespace on read
@tagomoris Regarding the `BasicObject` example, yes, Ruby allows you to re-assign to builtin constants, but it is a different level of lack of guarantee in practice, the way I see it. Perhaps there are _levels_ of determinism? 😅
Nowaday...
fxn (Xavier Noria)
12:57 PM Feature #19744: Namespace on read
fxn (Xavier Noria) wrote in #note-61:
> @tagomoris One tricky part is constant resolution, I believe. For example, consider:
> ...
@fxn Ah, yes. Thank you for pointing it out. That's another problem of having per-namespace `Object`.
I...
tagomoris (Satoshi Tagomori)
09:12 AM Feature #19744: Namespace on read
@tagomoris One tricky part is constant resolution, I believe. For example, consider:
```ruby
class String # (1)
end
class C # (2)
String
end
module M # (3)
String
end
```
If `String` becomes a new class object in (1), because the...
fxn (Xavier Noria)
08:36 AM Feature #19744: Namespace on read
@fxn It depends on whether namespaces have their own `Object` or not (https://bugs.ruby-lang.org/issues/19744#note-51).
If they have (on option A), the superclass is `ns::Object`.
If they don't (on option B), the superclass is `::Objec...
tagomoris (Satoshi Tagomori)
07:32 AM Feature #19744: Namespace on read
> the statement class C; end should define a new class C in the namespace because C is not defined in the namespace
@tagomoris which would be the superclass of that `C` if loaded under a virtual namespace?
fxn (Xavier Noria)
02:31 AM Feature #19744: Namespace on read
@jeremyevans0 That's the point. I agree that it makes things strange if namespaces have their own `Object`.
And, @fxn also pointed out the discussion point - what should `class C; end` in a namespace do when it's already defined in th...
tagomoris (Satoshi Tagomori)
06:34 PM Revision 10756f3d (git): [ruby/prism] Add PostExecutionNode to pm_scope_node_init
https://github.com/ruby/prism/commit/88fe6213af jemmai (Jemma Issroff)
05:52 PM Revision e71f343a (git): Addressing feedback
tenderlovemaking (Aaron Patterson)
05:52 PM Revision 884c3195 (git): Update benchmark/vm_ivar_ic_miss.yml
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org> Aaron Patterson
05:52 PM Revision dc814324 (git): updating bindgen
tenderlovemaking (Aaron Patterson)
05:52 PM Revision 54230dea (git): Don't cache on platforms without mmap
We're only going to create a redblack tree on platforms that have mmap tenderlovemaking (Aaron Patterson)
05:52 PM Revision a3f66e09 (git): geniv objects can become too complex
tenderlovemaking (Aaron Patterson)
05:52 PM Revision caf6a723 (git): remove IV limit / support complex shapes on classes
tenderlovemaking (Aaron Patterson)
05:52 PM Revision 27c75319 (git): increase the maximum number of ivs
tenderlovemaking (Aaron Patterson)
05:52 PM Revision 84e44534 (git): Use a functional red-black tree for indexing the shapes
This is an experimental commit that uses a functional red-black tree to
create an index of the ancestor shapes. It uses an Okasaki style
functional red black tree:
https://www.cs.tufts.edu/comp/150FP/archive/chris-okasaki/redblack99....
tenderlovemaking (Aaron Patterson)
04:31 PM Revision 5c4978c1 (git): [rubygems/rubygems] Handle empty array
https://github.com/rubygems/rubygems/commit/7c0afdd9af hsbt (Hiroshi SHIBATA)
03:05 PM Bug #19969: Regression of memory usage with Ruby 3.1
So apparently some applications were relying on `Set#dup`/`Hash#dup` to do like C++ [shrink_to_fit](https://en.cppreference.com/w/cpp/container/vector/shrink_to_fit).
Ruby does not have such a method and it feels quite low-level, so it ...
Eregon (Benoit Daloze)
02:59 PM Bug #19969: Regression of memory usage with Ruby 3.1
Right, @nobu's approach seems much better than reintroducing that weird behavior for `.dup`.
Ideally we wouldn't rehash as in calling `key.hash` methods again, but instead just shrink the internal data structure (and same when growing...
Eregon (Benoit Daloze)
11:02 AM Bug #19969: Regression of memory usage with Ruby 3.1
May https://github.com/nobu/ruby/tree/rehash-after-delete help it? nobu (Nobuyoshi Nakada)
09:47 AM Bug #19969 (Closed): Regression of memory usage with Ruby 3.1
Our company that is ANDPAD, Inc. encountered to increase memory usage after upgrading Ruby 3.2 from 3.0 on our Rails application. This increase size is about 20%.
My colleague found this [root cause](https://bugs.ruby-lang.org/issues/...
hsbt (Hiroshi SHIBATA)
01:59 PM Bug #19968 (Closed): make install - RBS gem is not installed
Applied in changeset commit:git|c86c6a84f53a21330702ebd21cc1a65d7776171d.
----------
[Bug #19968] Revert RBS revision to test
This reverts the commits for the master branch of RBS:
- commit f717faac632dd8664d0967f8e639b84d5d032854: "U...
nobu (Nobuyoshi Nakada)
12:58 PM Bug #19968: make install - RBS gem is not installed
I am adding the reverting commit on this PR <https://github.com/ruby/ruby/pull/8739>. The `make install` in Travis arm64, ppc64le and s390x failed by the following error. And the reverting commit fixed the issue.
```
$ make -s instal...
jaruga (Jun Aruga)
12:46 PM Bug #19968: make install - RBS gem is not installed
Reverting this commit for now?
https://github.com/ruby/ruby/commit/f717faac632dd8664d0967f8e639b84d5d032854
jaruga (Jun Aruga)
10:31 AM Bug #19968: make install - RBS gem is not installed
I don't understand why the ruby/ruby's GitHub Actions CI was not able to catch this issue.
jaruga (Jun Aruga)
01:59 PM Revision c86c6a84 (git): [Bug #19968] Revert RBS revision to test
This reverts the commits for the master branch of RBS:
- commit f717faac632dd8664d0967f8e639b84d5d032854: "Update rbs
revision to test"
The target revision to test is in master branch, not for 3.2.x.
- commit 9e93af5329f35092c3d...
nobu (Nobuyoshi Nakada)
12:56 PM Bug #19970 (Open): Eval leaks callcache and callinfo objects on arm32 (linux)
The following script demonstrates a memory leak on arm 32 (linux):
``` ruby
def gcdiff(n)
GC.start
if @last_gc_stat
puts "GC.stat #{n} diff old_objects: #{GC.stat(:old_objects) - @last_gc_stat}"
end

@last_gc_stat ...
larsin (Lars Ingjer)
03:34 AM Revision c44d6542 (git): Bump ossf/scorecard-action from 2.3.0 to 2.3.1
Bumps [ossf/scorecard-action](https://github.com/ossf/scorecard-action) from 2.3.0 to 2.3.1.
- [Release notes](https://github.com/ossf/scorecard-action/releases)
- [Changelog](https://github.com/ossf/scorecard-action/blob/main/RELEASE.md...
dependabot[bot]
03:33 AM Feature #19965 (Closed): Make the name resolution interruptible
Applied in changeset commit:git|3dc311bdc8badb680267f5a10e0c467ddd9dfe4c.
----------
Make rb_getaddrinfo interruptible
When pthread_create is available, rb_getaddrinfo creates a pthread and
executes getaddrinfo(3) in it. The caller thr...
mame (Yusuke Endoh)
03:30 AM Revision ccd18d05 (git): Clean up temporary file, wc.input [ci skip]
nobu (Nobuyoshi Nakada)
03:30 AM Revision 92f29349 (git): Use extquote instead of literal tabs [ci skip]
nobu (Nobuyoshi Nakada)
03:22 AM Revision 25c1204f (git): rb_getaddrinfo should return EAI_AGAIN instead of EAGAIN
mame (Yusuke Endoh)
03:22 AM Revision c0802025 (git): Indent critical regions with blocks
Cosmetic change per ko1's preference mame (Yusuke Endoh)
03:22 AM Revision acd77426 (git): Do not use pthread on mingw
mame (Yusuke Endoh)
03:22 AM Revision 16d6a227 (git): Make rb_getnameinfo interruptible
Same as previous commit for rb_getnameinfo. mame (Yusuke Endoh)
03:22 AM Revision 3dc311bd (git): Make rb_getaddrinfo interruptible
When pthread_create is available, rb_getaddrinfo creates a pthread and
executes getaddrinfo(3) in it. The caller thread waits for the pthread
to complete, but detaches it if interrupted. This allows name resolution
to be interuppted by T...
mame (Yusuke Endoh)
03:22 AM Revision efd58f19 (git): Expand macro branches to make them plain
mame (Yusuke Endoh)
03:22 AM Revision 25ef8d26 (git): Refactor GETADDRINFO_IMPL instead of GETADDRINFO_EMU
This is a preparation for introducing cancellable
getaddrinfo/getnameinfo.
mame (Yusuke Endoh)
03:22 AM Revision 9ce607a8 (git): refactor a call to getaddrinfo
mame (Yusuke Endoh)
 

Also available in: Atom