Project

General

Profile

Activity

From 06/27/2023 to 07/03/2023

07/03/2023

04:30 PM Feature #19755: Module#class_eval and Binding#eval use caller location by default
> Indeed, and `class_eval`/`eval` is broken if decorated e.g. for `a = 3; class_eval "a"`.
Oh yeah, good point, that one slipped my mind.
Dan0042 (Daniel DeLorme)
03:59 PM Feature #19755: Module#class_eval and Binding#eval use caller location by default
byroot (Jean Boussier) wrote in #note-3:
> Decorating `class_eval / eval` should be quite rare anyways.
Indeed, and `class_eval`/`eval` is broken if decorated e.g. for `a = 3; class_eval "a"`.
The direct caller of `Module#class_eval...
Eregon (Benoit Daloze)
01:43 PM Feature #19755: Module#class_eval and Binding#eval use caller location by default
> doesn't work if another module is in the call chain
I'm not sure we can / should handle this. Decorating `class_eval / eval` should be quite rare anyways.
byroot (Jean Boussier)
01:15 PM Feature #19755: Module#class_eval and Binding#eval use caller location by default
+1
Just be careful about the implementation, because that monkey patch doesn't work if another module is in the call chain
```ruby
module DebugEval
def class_eval(code, ...)
p debug: code
super # <= source_location wi...
Dan0042 (Daniel DeLorme)
12:01 PM Feature #19755: Module#class_eval and Binding#eval use caller location by default
`#<UnboundMethod: Foo#foo() (eval in /tmp/foo.rb):10>` sounds great to me, +1.
The `(eval` makes it clear it's an eval in that file and so the line of an exception inside might not be exact.
Eregon (Benoit Daloze)
11:19 AM Feature #19755 (Closed): Module#class_eval and Binding#eval use caller location by default
### Background
In Ruby we're very reliant on `Method#source_location` as well as `caller_locations` to locate source code.
However, code generated via `Binding#eval`, `Module#class_eval` etc defeat this if called without a location...
byroot (Jean Boussier)
01:48 PM Revision af9eeb19 (git): [ruby/irb] Stop treating history-saving logic as extension
(https://github.com/ruby/irb/pull/613)
Since `IRB.conf[:SAVE_HISTORY]` is assigned with 1000 by default, history-saving
is a feature enabled by default. So it should not be treated as an extension,
which adds unnecessary complexity to t...
st0012 (Stan Lo)
11:07 AM Bug #19753 (Assigned): IO::Buffer#get_string can't handle negative offset
noteflakes (Sharon Rosner) wrote:
> ```ruby
> ...
I think this should raise an `ArgumentError`.
> ```ruby
> ...
At least, it should not be `"ab"`.
nobu (Nobuyoshi Nakada)
07:35 AM Bug #19753: IO::Buffer#get_string can't handle negative offset
PR here: https://github.com/ruby/ruby/pull/8015 noteflakes (Sharon Rosner)
06:14 AM Bug #19753 (Closed): IO::Buffer#get_string can't handle negative offset
```ruby
irb(main):001:0> b = IO::Buffer.for('abc')
=>
#<IO::Buffer 0x00007f858f5450c0+3 EXTERNAL READONLY SLICE>
...
irb(main):002:0> b.get_string(-1)
=> "\x00abc"
irb(main):003:0> b.get_string(-1000, 3)
(irb):3:in `get_string':...
noteflakes (Sharon Rosner)
10:48 AM Bug #19754 (Closed): `IO::Buffer#get_string` raises unsuitable exception for too large offset
The message seems suitable when both of `offset` and `length` are given.
```ruby
IO::Buffer.for("test").get_string(5, 0) #=> Specified offset+length exceeds buffer size! (ArgumentError)
```
But without `length`, it doesn't seem to ...
nobu (Nobuyoshi Nakada)
09:57 AM Revision 4430b73c (git): [ruby/timeout] Require Ruby >= 2.6 for the timeout gem
* The test suite fails on 2.5.
* See https://github.com/ruby/timeout/pull/35
https://github.com/ruby/timeout/commit/03873a9237
Eregon (Benoit Daloze)
09:26 AM Revision 8281f8fd (git): [ruby/timeout] Test that work is done in the same thread/fiber as
the caller
(https://github.com/ruby/timeout/pull/34)
* see discussion in
https://github.com/ruby/timeout/pull/30#issuecomment-1616179651
John Bachir
05:47 AM Bug #18933 (Closed): Dir.tmpdir implemented in non-Ractor-safe manner
Applied in changeset commit:git|3e605a781970cef365002167634a1b5a176bffcb.
----------
[ruby/tmpdir] [Bug #18933] Make `Dir.mktmpdir` Ractor-safe
Fix https://bugs.ruby-lang.org/issues/18933
https://github.com/ruby/tmpdir/commit/446e636434
nobu (Nobuyoshi Nakada)
05:47 AM Revision 3e605a78 (git): [ruby/tmpdir] [Bug #18933] Make `Dir.mktmpdir` Ractor-safe
Fix https://bugs.ruby-lang.org/issues/18933
https://github.com/ruby/tmpdir/commit/446e636434
nobu (Nobuyoshi Nakada)
04:36 AM Revision 4bfa4433 (git): [Cirrus] Set up cargo environments just once at first
nobu (Nobuyoshi Nakada)
04:36 AM Revision d2ffd0ad (git): [Cirrus] Share configuration using YAML aliases
https://cirrus-ci.org/guide/tips-and-tricks/#sharing-configuration-between-tasks nobu (Nobuyoshi Nakada)
04:35 AM Revision 3a761dcc (git): [Cirrus] Show CPU and memory info
nobu (Nobuyoshi Nakada)
04:35 AM Revision bde3b98a (git): [Cirrus] Make gem download non-verbose
nobu (Nobuyoshi Nakada)
04:35 AM Revision 4a607641 (git): [Cirrus] Run also crons other than nightly
nobu (Nobuyoshi Nakada)

07/02/2023

10:51 PM Revision 7e333b7a (git): [ruby/timeout] require ruby version in gemspec
https://github.com/ruby/timeout/commit/949445f591 John Bachir
05:49 PM Feature #19752 (Assigned): Allow `--backtrace-limit` to appear in RUBYOPT
The proposed patch includes a change to treat it as unspecified with -1. I would like to get Matz's approval on this. mame (Yusuke Endoh)
04:42 PM Feature #19735: Add support for UUID version 7
I hadn't realized that `"random/formatter"` belonged to `securerandom`. I closed the `ruby` PR and created a new PR here: https://github.com/ruby/securerandom/pull/19. There was also another earlier PR which looks almost identical to m... nevans (Nicholas Evans)
02:31 PM Feature #19742: Introduce `Module#anonymous?`
> I think it would be great to reflect it in the Module#name if a Module is no longer reachable through that name.
> ...
If I understand this correctly, I believe it is not possible preserving today's rules.
Nowadays, if a module was ev...
fxn (Xavier Noria)
07:52 AM Revision 9682275b (git): [Travis] make `.bundle` directory writable
To create gem files from sources under `gems/src` for tests. nobu (Nobuyoshi Nakada)
04:49 AM Revision 12fc80ab (git): Update default gems list at 4bad2a9562aece90f6df9f3ef1c7ec [ci skip]
git[bot]
04:49 AM Revision 4bad2a95 (git): [ruby/irb] Bump version to 1.7.1
(https://github.com/ruby/irb/pull/621)
https://github.com/ruby/irb/commit/b9a9dd97df
st0012 (Stan Lo)
04:00 AM Revision fa6e14c4 (git): [DOC] Stop downloading Unicode data only for unicode_properties.rdoc
nobu (Nobuyoshi Nakada)
03:21 AM Feature #19521: Support for `Module#name=` and `Class#name=`.
@sawa there are also methods that start with `set_`, for example `set_trace_func` and `set_encoding`. I think one difference is that most `xyz_set` methods tend to also have a `xyz_get` counterpart. Which is not the case for `set_tempora... Dan0042 (Daniel DeLorme)

07/01/2023

03:30 PM Revision 765a19ab (git): [ruby/psych] Remove private methods unused since #487
https://github.com/ruby/psych/commit/902c292f26 nobu (Nobuyoshi Nakada)
03:02 PM Feature #17339: Semantic grouping with BigDecimal#to_s
I've sent pull request with solution as specified by author of issue: https://github.com/ruby/bigdecimal/pull/264 cryptogopher (crypto gopher)
02:55 PM Feature #19752 (Closed): Allow `--backtrace-limit` to appear in RUBYOPT
The `--backtrace-limit` option was added in #8661 but it is not currently supported in the `RUBYOPT` environment variable, which appears to be a mistake. Unlike other long options which are not allowed in `RUBYOPT` (e.g. `--copyright`, `... tomstuart (Tom Stuart)
02:22 PM Bug #19728 (Closed): Automate (checking of) Regexp character property documentation
Applied in changeset commit:git|08b3fb11524e6cde453476f24ac80fd60457dfef.
----------
[Bug #19728] Auto-generate unicode property docs
https://bugs.ruby-lang.org/issues/19728
janosch-x (Janosch Müller)
02:22 PM Revision 08b3fb11 (git): [Bug #19728] Auto-generate unicode property docs
https://bugs.ruby-lang.org/issues/19728 janosch-x (Janosch Müller)
02:17 PM Revision 3fd1968d (git): Introduce script_lines function for refactor script_lines_defined and script_lines_get functions
S_H_ (Shun Hiraoka)
02:16 PM Revision a70320b8 (git): Define `NO_SANITIZE` with reference to ext/bigdecimal/missing.c
jinroq (Jinroq SAITOH)
02:16 PM Revision 174dbe33 (git): Supress `warning: ‘unsigned-integer-overflow’ attribute directive ignored [-Wattributes]`
jinroq (Jinroq SAITOH)
06:59 AM Bug #19751: Ruby 3.2.2 Fails to Compile from Source
Could you share `version.i` generated with `make version.i`? nobu (Nobuyoshi Nakada)
05:59 AM Bug #19751 (Closed): Ruby 3.2.2 Fails to Compile from Source
Details are at the attached file, but the build-crash-log seems to be:
```
compiling addr2line.c
compiling dmyenc.c
linking miniruby
/bin/sh ./tool/ifchange "--timestamp=.rbconfig.time" rbconfig.rb rbconfig.tmp
rbconfig.rb update...
martin_vahi (Martin Vahi)
06:14 AM Revision 1a6f3bec (git): Fallback `rb_iseq_complete`
For compilers that do not eliminate references to functions that are
never called, such as SunC.
nobu (Nobuyoshi Nakada)
05:19 AM Bug #19394: cvars in instance of cloned class point to source class's cvars even after class_variable_set on clone
Merged https://github.com/ruby/ruby/pull/7888 nagachika (Tomoyuki Chikanaga)
04:55 AM Bug #19394 (Closed): cvars in instance of cloned class point to source class's cvars even after class_variable_set on clone
This issue should be fixed at 40f090f4339820d19da8ecdf81a981489c22eb57 and 135a5eb716399443da58db342de6093c91b5ad62 in master branch.
Thank you for creating the PRs to backport them into stable branches.
I will handle it (the one for...
nagachika (Tomoyuki Chikanaga)
05:18 AM Revision 07d5709f (git): bump patchlevel
nagachika (Tomoyuki Chikanaga)
05:17 AM Revision 038913f1 (git): Add missing write barrier
We were missing the write barrier for class_value to cref. This should
fix the segv we were seeing in http://ci.rvm.jp/logfiles/brlog.trunk-gc-asserts.20230601-165052
Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>
eileencodes (Eileen Uchitelle)
05:17 AM Revision 8a3d5797 (git): Fix cvar caching when class is cloned
The class variable cache that was added in
https://github.com/ruby/ruby/pull/4544 changed the behavior of class
variables on cloned classes. As reported when a class is cloned AND a
class variable was set, and the class variable was read...
eileencodes (Eileen Uchitelle)
05:17 AM Revision 06dae460 (git): Copy cvar table on clone
When a class with a class variable is cloned we need to also copy the
cvar cache table from the original table to the clone. I found this bug
while working on fixing [Bug #19379]. While this does not fix that bug
directly it is still a r...
eileencodes (Eileen Uchitelle)
04:48 AM Revision 814271b2 (git): bump patchlevel
nagachika (Tomoyuki Chikanaga)
04:46 AM Revision bbf1eb40 (git): Merge URI-0.12.2 for Bundler
hsbt (Hiroshi SHIBATA)
04:46 AM Revision dd73fe07 (git): Merge URI-0.12.2
hsbt (Hiroshi SHIBATA)
03:22 AM Revision 2952dbad (git): [DOC] Move document for YARP
nobu (Nobuyoshi Nakada)
02:38 AM Bug #19750 (Closed): Ruby hangs when parsing Regexp with unterminated unicode "/\u{"
Applied in changeset commit:git|1bc8838d60ef3fc6812d3b64ed87caaf0ae943d9.
----------
Handle unterminated unicode escapes in regexps
This fixes an infinite loop possible after ec3542229b29ec93062e9d90e877ea29d3c19472.
For \u{} escapes i...
jeremyevans (Jeremy Evans)
02:37 AM Revision 1bc8838d (git): Handle unterminated unicode escapes in regexps
This fixes an infinite loop possible after ec3542229b29ec93062e9d90e877ea29d3c19472.
For \u{} escapes in regexps, skip validation in the parser, and rely on the regexp
code to handle validation. This is necessary so that invalid unicode ...
jeremyevans (Jeremy Evans)
02:23 AM Bug #19749: Confirm correct behaviour when attaching private method with `#define_method`
I submitted a pull request to fix this: https://github.com/ruby/ruby/pull/8009 jeremyevans0 (Jeremy Evans)

06/30/2023

10:11 PM Revision 41779fed (git): [rubygems/rubygems] Bump vendored net-http-persistent to 4.0.2
https://github.com/rubygems/rubygems/commit/b0edf39083 deivid (David Rodríguez)
06:31 PM Revision d49a92d0 (git): [ruby/yarp] Move fuzz docs into docs/ directory, reference in README
https://github.com/ruby/yarp/commit/97547b6192 kddnewton (Kevin Newton)
05:42 PM Revision 136fcd51 (git): [ruby/irb] Reduce internal operations' exposure to benchmarking
(https://github.com/ruby/irb/pull/618)
* Test last value is assigned with measure enabled
* Remove unnecessary `result` variable
`Context#evaluate` always assigns the result of the evaluation to `_` so
we don't need to do it in `Irb#e...
st0012 (Stan Lo)
02:59 PM Revision 94788a6d (git): * expand tabs. [ci skip]
Please consider using misc/expand_tabs.rb as a pre-commit hook. git[bot]
02:59 PM Revision 39933496 (git): Remove duplicate declarations
nobu (Nobuyoshi Nakada)
02:59 PM Revision 0d0841ad (git): Compile code for lazy ISeq loding always
nobu (Nobuyoshi Nakada)
02:59 PM Revision c1432a48 (git): Compile disabled code for thread cache always
nobu (Nobuyoshi Nakada)
02:59 PM Revision e7dc8f0b (git): Compile debugging code for symbol and ID always
nobu (Nobuyoshi Nakada)
02:59 PM Revision ac016394 (git): Compile code without Symbol GC always
nobu (Nobuyoshi Nakada)
02:59 PM Revision 469e644c (git): Compile code for non-embedded CI always
nobu (Nobuyoshi Nakada)
02:59 PM Revision 5204ad56 (git): Compile debugging code for stress to class always
nobu (Nobuyoshi Nakada)
02:59 PM Revision 7a0a218d (git): Compile debugging code for integer pack always
nobu (Nobuyoshi Nakada)
02:59 PM Revision d8d7591e (git): Stop `DEBUG_FIND_TIME_NUMGUESS` compilation
Debugging code for find_time_numguess is compiled always. nobu (Nobuyoshi Nakada)
02:40 PM Bug #19749: Confirm correct behaviour when attaching private method with `#define_method`
For visibility leaving the examples here that we suspect a CRuby bug:
```ruby
class Foo5
private
def bar; end
public
define_method(:bar, Foo5.instance_method(:bar))
end
Foo5.new.bar # NoMethodError in CRuby, but should be public...
itarato (Peter Arato)
02:23 PM Revision 93987340 (git): [ruby/irb] Re-implement prev_spaces feature for pasted code
(https://github.com/ruby/irb/pull/607)
https://github.com/ruby/irb/commit/9d97a192a5
tompng (tomoya ishida)
01:13 PM Revision 58386814 (git): Don't check for null pointer in calls to free
According to the C99 specification section 7.20.3.2 paragraph 2:
> If ptr is a null pointer, no action occurs.
So we do not need to check that the pointer is a null pointer.
peterzhu2118 (Peter Zhu)
08:39 AM Revision 37a893d1 (git): bit quiet
shyouhei (Shyouhei Urabe)
08:39 AM Revision 7102324d (git): fix YAML error
`outputs` has to be a hash, but it seems previous expression
generated a null token and would have generated errors here.
shyouhei (Shyouhei Urabe)
08:39 AM Revision c90b8493 (git): refactor delete unnecessary branches
These conditions always hold. shyouhei (Shyouhei Urabe)
08:39 AM Revision 34bf2d50 (git): refactor extract brew
Use composite action to reduce copy & paste. shyouhei (Shyouhei Urabe)
02:18 AM Revision e8d629ed (git): refactor extract apt-get
Use composite action to reduce copy & paste. shyouhei (Shyouhei Urabe)

06/29/2023

11:56 PM Feature #19744: Namespace on read
> This proposal seems very similar to #19024. Is there a difference?
#19024 proposes a new top-level (`Kernel`?) method `import`. The API of this proposal is much different from it. A new module for namespaces (`NameSpace`, but the na...
tagomoris (Satoshi Tagomori)
11:22 PM Feature #19744: Namespace on read
This proposal seems **very** similar to #19024. Is there a difference?
Also, IIUC it seems to imply the namespace will apply transitively to every load/require/autoload inside the namespace; there was a lot of opposition to that idea ...
Dan0042 (Daniel DeLorme)
02:27 PM Feature #19744: Namespace on read
> Problems around namespaces can happen in individual namespaces. Should we use namespaces to avoid those things? [...] yes.
A lot of Ruby code is written in a way that relies on extending other code. E.g. a lot of rails and rspec ext...
janosch-x (Janosch Müller)
12:54 AM Feature #19744: Namespace on read
janosch-x (Janosch Müller) wrote in #note-1:
> are the described problems, apart of dependency conflicts, very common in your experience? (i've worked on several large codebases with ~1000 gems and never saw these gems trying to create ...
tagomoris (Satoshi Tagomori)
11:07 PM Revision d3ff4385 (git): Fix memory leak in Hash#replace
Hash#replace can leak memory if the receiver has an ST table. peterzhu2118 (Peter Zhu)
09:00 PM Revision 1272865a (git): Fix broken wiki links (#8002)
Since [Misc #19679] migrated the wiki, these links should be updated
to their new locations.
jemmai (Jemma Issroff)
08:23 PM Bug #19750: Ruby hangs when parsing Regexp with unterminated unicode "/\u{"
I submitted a pull request to fix this: https://github.com/ruby/ruby/pull/8003 jeremyevans0 (Jeremy Evans)
02:54 PM Bug #19750: Ruby hangs when parsing Regexp with unterminated unicode "/\u{"
mame (Yusuke Endoh) wrote in #note-2:
> According to git bisect, this is since commit:ec3542229b29ec93062e9d90e877ea29d3c19472. @jeremyevans0 Could you take a look at this issue?
Sure, I'll take a look today.
jeremyevans0 (Jeremy Evans)
01:36 PM Bug #19750 (Assigned): Ruby hangs when parsing Regexp with unterminated unicode "/\u{"
According to git bisect, this is since commit:ec3542229b29ec93062e9d90e877ea29d3c19472. @jeremyevans0 Could you take a look at this issue? mame (Yusuke Endoh)
12:24 PM Bug #19750 (Closed): Ruby hangs when parsing Regexp with unterminated unicode "/\u{"
Ruby hangs up for a while and gets `failed to allocate memory (NoMemoryError)`
~~~shell
$ ruby -e "/\\u{"
ruby: failed to allocate memory (NoMemoryError)
~~~
~~~ruby
RubyVM::AbstractSyntaxTree.parse "/\\u{"
# => SyntaxError
...
tompng (tomoya ishida)
03:52 PM Revision bf2c1873 (git): Add memory leak test for allocating ST hashes
Test for commit f0d08d11dcd404f3146c0d71d6ff743bbc6e7193. peterzhu2118 (Peter Zhu)
03:16 PM Revision f0d08d11 (git): Fix memory leak when copying ST tables
st_copy allocates a st_table, which is not needed for hashes since it is
allocated by VWA and embedded, so this causes a memory leak.
The following script demonstrates the issue:
```ruby
20.times do
100_000.times do
{a: 1, b: 2, ...
peterzhu2118 (Peter Zhu)
03:16 PM Revision df2b3a29 (git): Refactor rb_hash_replace to use hash_copy
peterzhu2118 (Peter Zhu)
02:08 PM Revision 3cfcd3d1 (git): Ripper sources are generated at once
nobu (Nobuyoshi Nakada)
01:25 PM Revision bdfe1958 (git): * 2023-06-29 [ci skip]
git[bot]
01:25 PM Revision 616926b5 (git): CVE-2023-36617 for Ruby 3.0 (#7997)
* Merge URI-0.10.3
* Merge URI-0.10.0.3 for Bundler
hsbt (Hiroshi SHIBATA)
01:25 PM Revision c08ee61f (git): * 2023-06-29 [ci skip]
git[bot]
01:24 PM Revision 5fbc1d45 (git): CVE-2023-36617 for Ruby 3.1 (#7996)
* Bump up v0.12.2
* Merge URI-0.10.3 for Bundler
hsbt (Hiroshi SHIBATA)
01:05 PM Bug #19749: Confirm correct behaviour when attaching private method with `#define_method`
I find it very surprising/unintuitive that `define_method` sometimes ignores the scope visibility, with hard-to-explain and undocumented conditions, but `def` always respects the scope visibility (AFAIK, not counting "defs"=`def r.m`).
...
Eregon (Benoit Daloze)
01:00 PM Bug #19749: Confirm correct behaviour when attaching private method with `#define_method`
jeremyevans0 (Jeremy Evans) wrote in #note-7:
> `define_method` at top level does not define private methods. I think this is because the receiver of the `define_method` is `main`, but the method is defined in `Object`, so the scope vis...
Eregon (Benoit Daloze)
09:47 AM Revision c89f5191 (git): More dependencies for ripper
nobu (Nobuyoshi Nakada)
08:47 AM Revision c7af39ec (git): Merge URI-0.12.2 for Bundler
hsbt (Hiroshi SHIBATA)
08:23 AM Misc #19747 (Closed): Propose Kevin Newton and Jemma Issroff as core committers
I've finished to setup their accounts.
Welcome.
hsbt (Hiroshi SHIBATA)
07:58 AM Revision 4aa73f8f (git): proper path
Source code is not always checked out to `.`. We need to specify
the exact place where the action.yml file is located.
shyouhei (Shyouhei Urabe)
07:58 AM Revision 48e646fd (git): refactor extract ${{ ghithub }} expressions
Use composite action to reduce copy & paste. shyouhei (Shyouhei Urabe)
01:23 AM Revision 26b69fd4 (git): [ruby/yarp] Handle bad input for ascii printable
https://github.com/ruby/yarp/commit/06242aa7a0 kddnewton (Kevin Newton)
01:08 AM Revision a6cc1fa5 (git): Update default gems list at ab5421547c5546603c238308500527 [ci skip]
git[bot]
01:07 AM Revision ab542154 (git): [ruby/uri] Bump up v0.12.2
https://github.com/ruby/uri/commit/e18e657ea8 hsbt (Hiroshi SHIBATA)
01:07 AM Revision 995ce947 (git): [ruby/uri] Fix quadratic backtracking on invalid port number
https://hackerone.com/reports/1958260
https://github.com/ruby/uri/commit/9d7bcef1e6
nobu (Nobuyoshi Nakada)
01:07 AM Revision 1eff3624 (git): [ruby/uri] Fix quadratic backtracking on invalid relative URI
https://hackerone.com/reports/1958260
https://github.com/ruby/uri/commit/9010ee2536
nobu (Nobuyoshi Nakada)
12:27 AM Revision d4b662d6 (git): template/Doxyfile.tmpl: modernise
applied doxygen -g for Doxygen 1.9.7. shyouhei (Shyouhei Urabe)

06/28/2023

10:08 PM Feature #19744: Namespace on read
a very thorough proposal with an attractive modularity to it!
if i may ask a few questions:
are the described problems, apart of dependency conflicts, very common in your experience? (i've worked on several large codebases with ~10...
janosch-x (Janosch Müller)
10:02 PM Misc #19747: Propose Kevin Newton and Jemma Issroff as core committers
Welcome! ioquatix (Samuel Williams)
02:59 PM Misc #19747: Propose Kevin Newton and Jemma Issroff as core committers
I am honored, thank you! I have also sent over the information. jemmai (Jemma Issroff)
02:30 PM Misc #19747: Propose Kevin Newton and Jemma Issroff as core committers
Thank you very much! I have sent over all of the information. kddnewton (Kevin Newton)
10:17 AM Misc #19747 (Assigned): Propose Kevin Newton and Jemma Issroff as core committers
@kddnewton @jemmai Can you send your account information to `cvs-admin@ruby-lang.org`? Please look https://github.com/ruby/ruby/wiki/Committer-How-To#how-to-register-you-as-a-committer for its details. hsbt (Hiroshi SHIBATA)
05:14 AM Misc #19747: Propose Kevin Newton and Jemma Issroff as core committers
Accepted. Welcome both of you!
Matz.
matz (Yukihiro Matsumoto)
04:03 AM Misc #19747: Propose Kevin Newton and Jemma Issroff as core committers
+1 for both mame (Yusuke Endoh)
03:59 AM Misc #19747 (Closed): Propose Kevin Newton and Jemma Issroff as core committers
# Proposal
I'd like to propose Kevin Newton (@kddnewton) and Jemma Issroff (@jemmai) as core committers. Now that YARP [Feature #19741] is merged, I want them to work on YARP's CRuby integration without asking other committers to merge ...
k0kubun (Takashi Kokubun)
05:47 PM Revision 27d3fa2a (git): Increase memory leak test timeout
The test times out on some platforms, so increase the timeout. peterzhu2118 (Peter Zhu)
05:33 PM Revision 78ecb93f (git): [ruby/irb] Reduce test pend truffleruby
(https://github.com/ruby/irb/pull/619)
https://github.com/ruby/irb/commit/b7b071774f
tompng (tomoya ishida)
04:01 PM Revision 8f9d58a9 (git): Repair broken link
burdettelamar (Burdette Lamar)
03:27 PM Bug #19749: Confirm correct behaviour when attaching private method with `#define_method`
Eregon (Benoit Daloze) wrote in #note-3:
> @jeremyevans0 That does not explain why the original example defines the method as public (note I edited the description on Redmine, it was not asking the right question).
> ...
Scope visibili...
jeremyevans0 (Jeremy Evans)
03:10 PM Bug #19749 (Open): Confirm correct behaviour when attaching private method with `#define_method`
Eregon (Benoit Daloze)
02:49 PM Bug #19749: Confirm correct behaviour when attaching private method with `#define_method`
To clarify, this proves the top-level visibility is private:
```ruby
def foo; end
o = self
o.foo # => private method `foo' called for main:Object (NoMethodError)
```
Eregon (Benoit Daloze)
02:45 PM Bug #19749: Confirm correct behaviour when attaching private method with `#define_method`
@jeremyevans0 That does not explain why the original example defines the method as public (note I edited the description on Redmine, it was not asking the right question).
> will only consider current default scope visibility to deter...
Eregon (Benoit Daloze)
02:17 PM Bug #19749 (Closed): Confirm correct behaviour when attaching private method with `#define_method`
As in #19745, it is expected that `define_method` will not use the method body (second argument/block) to determine method visibility. `define_method` will only consider current default scope visibility to determine visibility:
```rub...
jeremyevans0 (Jeremy Evans)
01:40 PM Bug #19749 (Closed): Confirm correct behaviour when attaching private method with `#define_method`
This issue is a special case of https://bugs.ruby-lang.org/issues/19745:
Should dynamically added private methods via `.singleton_class.send(:define_method,...` at the top-level be accessible publicly?
See the following example:
...
itarato (Peter Arato)
01:50 PM Revision a500eb9f (git): Fix memory leak in Ripper
The following script leaks memory in Ripper:
```ruby
require "ripper"
20.times do
100_000.times do
Ripper.parse("")
end
puts `ps -o rss= -p #{$$}`
end
```
peterzhu2118 (Peter Zhu)
01:42 PM Revision 3d7a6bbc (git): Ensure the byte position is a valid boundary
nobu (Nobuyoshi Nakada)
01:05 PM Revision 6528cf9f (git): [DOC] Fixes for link fragments (#7981)
burdettelamar (Burdette Lamar)
09:24 AM Bug #19745: Confirm correct behaviour when attaching private method with `#define_singleton_method`
@itarato This example is not the same as the linked issue.
I would suggest to open a separate issue to dicuss the original example, which uses `define_method`.
(although this `define_singleton_method` example does fail on TruffleRuby...
Eregon (Benoit Daloze)
08:23 AM Bug #19748 (Closed): `String#byteindex` crashes when `offset` is too large
Applied in changeset commit:git|bc3ac1872e4523334e3ed04c2bb70a55c4c43f98.
----------
[Bug #19748] Fix out-of-bound access in `String#byteindex`
nobu (Nobuyoshi Nakada)
04:51 AM Bug #19748 (Closed): `String#byteindex` crashes when `offset` is too large
```ruby
"a".byteindex("", 1000000) #=> [BUG] Segmentation fault
```
nobu (Nobuyoshi Nakada)
08:23 AM Revision bc3ac187 (git): [Bug #19748] Fix out-of-bound access in `String#byteindex`
nobu (Nobuyoshi Nakada)
07:53 AM Revision 715c5ca4 (git): Update default gems list at b954a4ebc67d408456a102fe13051e [ci skip]
git[bot]
07:37 AM Revision b954a4eb (git): [ruby/csv] Bump version
https://github.com/ruby/csv/commit/e090da19b4 Sutou Kouhei
07:37 AM Revision d6d60d42 (git): [ruby/csv] Fix a bug that the same line is used multiple times
GitHub: fix https://github.com/ruby/csv/pull/279
It's happen when:
* `keep_start`/`keep_{drop,back}` are nested.
(e.g.: `strip: true, skip_lines: /.../`)
* Row separator is `\r\n`.
* `InputScanner` is used. (Small input doesn't use `...
Sutou Kouhei
07:37 AM Revision 539559d3 (git): [ruby/csv] Remove nonexistent variable
https://github.com/ruby/csv/commit/bfbd6bbf6f Sutou Kouhei
07:37 AM Revision 1f467934 (git): [ruby/csv] parser: add one more trace
https://github.com/ruby/csv/commit/5df650be0c Sutou Kouhei
07:37 AM Revision 2098093f (git): [ruby/csv] docs: Add entry for backslash_quotes liberal parsing
(https://github.com/ruby/csv/pull/280)
https://github.com/ruby/csv/commit/0dcfcd9c48
Mark Schneider
07:36 AM Revision f1313cae (git): [ruby/fiddle] Mark Closure, Function and Handle as write barrier
protected
(https://github.com/ruby/fiddle/pull/129)
They don't have a mark function, so they don't need any change.
https://github.com/ruby/fiddle/commit/9bbc732aef
Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
Jean byroot Boussier
07:36 AM Revision 135d5fa3 (git): [ruby/fiddle] Implement write barriers for Fiddle::Pointer
(https://github.com/ruby/fiddle/pull/127)
Save from having to mark them on every minor.
https://github.com/ruby/fiddle/commit/153c09c99f
Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
Jean byroot Boussier
07:36 AM Revision 572b432e (git): [ruby/fiddle] Fix a typo
https://github.com/ruby/fiddle/commit/4c0c5da1a5 Sutou Kouhei
07:36 AM Revision 02661f5e (git): [ruby/fiddle] Add support for converting "C" (one character string) to char
GitHub: fix https://github.com/ruby/fiddle/pull/96
I wanted to add a test for this but I couldn't find a function that
has a "char" argument in libc...
Reported by kojix2. Thanks!!!
https://github.com/ruby/fiddle/commit/2c863ef8ba
Sutou Kouhei
07:36 AM Revision 74e04929 (git): [ruby/fiddle] Add support for more "short" variants
https://github.com/ruby/fiddle/commit/4598e6cd50 Sutou Kouhei
07:36 AM Revision 731d2772 (git): [ruby/fiddle] Add support for more "short" variants
https://github.com/ruby/fiddle/commit/2b22bb9d74 Sutou Kouhei
07:36 AM Revision ebf14d01 (git): [ruby/fiddle] Add support for "long" variants
GitHub: fix https://github.com/ruby/fiddle/pull/100
Reported by David M. Lary. Thanks!!!
https://github.com/ruby/fiddle/commit/516333dd78
Sutou Kouhei
07:36 AM Revision 85937f3a (git): [ruby/fiddle] Add a helper method for reading/writing memory
(https://github.com/ruby/fiddle/pull/123)
This commit adds two new methods, `Fiddle::Pointer.read` and
`Fiddle::Pointer.write`. Both methods take an address, and will read or
write bytes at that address respectively.
For example we can...
tenderlovemaking (Aaron Patterson)
07:34 AM Revision ae71bbbc (git): [ruby/syntax_suggest] [DOC] Fix method name
https://github.com/ruby/syntax_suggest/commit/08a9afb64f nobu (Nobuyoshi Nakada)
05:44 AM Bug #19746 (Closed): `String#index` with regexp and too large offset doesn't clear `$~`
Applied in changeset commit:git|0cbfeb8210cd177bee95c512834c483daec36f74.
----------
[Bug #19746] `String#index` with regexp should clear `$~` unless matched
nobu (Nobuyoshi Nakada)
02:55 AM Bug #19746 (Closed): `String#index` with regexp and too large offset doesn't clear `$~`
```ruby
/./ =~ "a"
p "x".index(/0/, 4) #=> nil
p $~ #=> #<MatchData "a">
```
while `rindex` does.
```ruby
/./ =~ "a"
p "x".rindex(/0/, 4) #=> nil
p $~ #=> nil
```
It seems since 1.9.
nobu (Nobuyoshi Nakada)
05:06 AM Revision 0cbfeb82 (git): [Bug #19746] `String#index` with regexp should clear `$~` unless matched
nobu (Nobuyoshi Nakada)
05:06 AM Revision 9e709d0f (git): Assert `$~` after `String#index` family
nobu (Nobuyoshi Nakada)
03:42 AM Revision f177d35b (git): Bump dependabot/fetch-metadata from 1.5.1 to 1.6.0
Bumps [dependabot/fetch-metadata](https://github.com/dependabot/fetch-metadata) from 1.5.1 to 1.6.0.
- [Release notes](https://github.com/dependabot/fetch-metadata/releases)
- [Commits](https://github.com/dependabot/fetch-metadata/compar...
dependabot[bot]
12:23 AM Revision 3e08a536 (git): Use the same capacities for memory leak tests
nobu (Nobuyoshi Nakada)

06/27/2023

08:43 PM Revision 8aedfefb (git): [ruby/irb] Remove keyword exception from Context#evaluate because
the value is always nil
(https://github.com/ruby/irb/pull/617)
https://github.com/ruby/irb/commit/62691384f8
tompng (tomoya ishida)
07:51 PM Revision caddd027 (git): [ruby/irb] Move input line mutation out of `Context#evaluate`
(https://github.com/ruby/irb/pull/615)
This makes sure `Context#evaluate` really just evaluates the input.
It will also make #575's implementation cleaner.
st0012 (Stan Lo)
04:40 PM Bug #19745 (Closed): Confirm correct behaviour when attaching private method with `#define_singleton_method`
It is expected that `define_singleton_method` defines a public singleton method (see #18561). For `define_method`, visibility can depend on the current default visibility for the class/module scope. In any case, the visibility of the de... jeremyevans0 (Jeremy Evans)
03:46 PM Bug #19745 (Closed): Confirm correct behaviour when attaching private method with `#define_singleton_method`
Should dynamically added private methods be accessible publicly?
See the following example?
```ruby
private def bar; end
foo = Object.new
foo.define_singleton_method(:bar, method(:bar))
foo.bar # No error.
```
The scrip...
itarato (Peter Arato)
02:27 PM Bug #18464: RUBY_INTERNAL_EVENT_NEWOBJ tracepoint causes an interpreter crash when combined with Ractors
Aaaahh. It's a shame, but I can understand 😓 . Thanks for the clarification :) ivoanjo (Ivo Anjo)
02:16 PM Bug #18464: RUBY_INTERNAL_EVENT_NEWOBJ tracepoint causes an interpreter crash when combined with Ractors
ivoanjo (Ivo Anjo) wrote in #note-12:
> Can I bother you with a backport to 3.0 as well?
Ruby 3.0 is in security maintenance mode, and this does not appear to be a security issue: https://www.ruby-lang.org/en/downloads/branches/
jeremyevans0 (Jeremy Evans)
10:58 AM Bug #18464: RUBY_INTERNAL_EVENT_NEWOBJ tracepoint causes an interpreter crash when combined with Ractors
Thanks again @nagachika!
Can I bother you with a backport to 3.0 as well? I know that one is getting "long in the tooth" in terms of support, but having it fixed would mean this crash would not happen on any of the Ruby releases which...
ivoanjo (Ivo Anjo)
02:14 PM Revision 913e01e8 (git): Stop allocating unused backref strings at `defined?`
nobu (Nobuyoshi Nakada)
01:39 PM Revision df5ae0a5 (git): Use `rb_reg_nth_defined` instead of `rb_match_nth_defined`
nobu (Nobuyoshi Nakada)
10:19 AM Revision eaad44ad (git): [ruby/irb] Always add \n at the end of the test input in RubyLex
test
(https://github.com/ruby/irb/pull/614)
https://github.com/ruby/irb/commit/e68c6128aa
tompng (tomoya ishida)
07:37 AM Revision 9dd86985 (git): [rubygems/rubygems] Fixup
https://github.com/rubygems/rubygems/pull/6766
https://github.com/rubygems/rubygems/commit/c5c5797227
hsbt (Hiroshi SHIBATA)
02:34 AM Feature #19744 (Closed): Namespace on read
# What is the "Namespace on read"
This proposes a new feature to define virtual top-level namespaces in Ruby. Those namespaces can require/load libraries (either .rb or native extension) separately from the global namespace. Dependenc...
tagomoris (Satoshi Tagomori)
02:15 AM Revision a99d0c15 (git): [rubygems/rubygems] Removed unused variable
https://github.com/rubygems/rubygems/commit/68cc941bed hsbt (Hiroshi SHIBATA)
02:15 AM Revision 65c21793 (git): [rubygems/rubygems] Molinillo::DependencyGraph is initialized in Molinillo::Resolver#resolve
https://github.com/rubygems/rubygems/commit/1c39e24c95 hsbt (Hiroshi SHIBATA)
 

Also available in: Atom