Project

General

Profile

Activity

From 05/18/2020 to 05/24/2020

05/24/2020

05:24 PM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
There was merged this [1] PR, which should resolve the issue even without removal of the `gem` call. I have not verified it myself, but the test case was modeled after my test case in comment #note-10, so I am positive about its function... vo.x (Vit Ondruch)
04:34 PM Misc #16910: BasicObject is resolved in BasicObject
Ah! I read too fast too :). Appreciate the followup!
fxn (Xavier Noria)
02:52 PM Misc #16910: BasicObject is resolved in BasicObject
Actually I looked too fast, the correct location is
https://github.com/ruby/ruby/blob/b10c9d201222b144df7d63660d1c731af53c4ae2/class.c#L551-L559
So it's defined as a constant of itself (BasicObject) and not Object because Object is n...
Eregon (Benoit Daloze)
02:45 PM Misc #16910 (Closed): BasicObject is resolved in BasicObject
jeremyevans0 (Jeremy Evans)
12:39 PM Misc #16910: BasicObject is resolved in BasicObject
This can be closed (can't do it myself apparently). fxn (Xavier Noria)
12:37 PM Misc #16910: BasicObject is resolved in BasicObject
Ahhh, that explains it. That code says this is intentional and definitely not a bug.
Thanks a lot Benoit!
fxn (Xavier Noria)
10:19 AM Misc #16910: BasicObject is resolved in BasicObject
As you found, I think it's just a special case that BasicObject has a constant named "BasicObject".
It's defined here in CRuby:
https://github.com/ruby/ruby/blob/b10c9d201222b144df7d63660d1c731af53c4ae2/class.c#L569
And here in TruffleR...
Eregon (Benoit Daloze)
09:41 AM Misc #16910: BasicObject is resolved in BasicObject
Ah, forgot to add that I saw this
```ruby
BasicObject.constants # => [:BasicObject]
```
Could it be the case that `BasicObject` is special-cased somehow? If so, where in the source code?
fxn (Xavier Noria)
09:39 AM Misc #16910 (Closed): BasicObject is resolved in BasicObject
I categorized this as Misc because I do not really know if this is a bug, or perhaps I miss some special rule in the resolution of relative constants.
Basically, I would expect
```ruby
class C < BasicObject
BasicObject
end
``...
fxn (Xavier Noria)
02:47 PM Revision c6c02331 (git): [ruby/rdoc] Check uninitialized instance variable in test
https://github.com/ruby/rdoc/commit/3dcd5ddbb6 aycabta (aycabta .)
02:47 PM Revision 3169ffc0 (git): [ruby/rdoc] Add frozen string literal support
https://github.com/ruby/rdoc/commit/daac9d0471 deivid (David Rodríguez)
02:47 PM Revision 37b8a7af (git): [ruby/rdoc] Add instance_methods because instance_method_list should be obsolete
https://github.com/ruby/rdoc/commit/9b1da32254 aycabta (aycabta .)
02:47 PM Revision e6d1363a (git): [ruby/rdoc] Fixed inverted CSS for note-list and label-list
https://github.com/ruby/rdoc/commit/a13d6439da nobu (Nobuyoshi Nakada)
02:47 PM Revision 32e0ff26 (git): [ruby/rdoc] Delegate ERB args correctly
https://github.com/ruby/rdoc/commit/82ff37a822 aycabta (aycabta .)
02:47 PM Revision 7e7981c8 (git): [ruby/rdoc] Treat multiple Ruby methods calling the same C method as aliases
Previously, only calls to rb_define_alias were treated as aliases.
This treats calls to rb_define_method with the same C function as
aliases, with the first function defined being the primary method.
This move the dedup code from the C ...
jeremyevans (Jeremy Evans)
02:47 PM Revision f52a4690 (git): [ruby/rdoc] Process crossref before tidylink
The crossref must be linked before tidylink because Klass.method[:sym] will be
processed as a tidylink first and will be broken.
https://github.com/ruby/rdoc/commit/0f47baf6d2
aycabta (aycabta .)
02:47 PM Revision c79f9ea6 (git): [ruby/rdoc] Escape method names in HTML
The following is invalid HTML:
<a href="Array.html#method-i-3C-3C">
Nate Matykiewicz
10:34 AM Bug #11188: Method#inspect for chaining alias methods
Nice, in fact this was already the behavior in TruffleRuby and JRuby. Eregon (Benoit Daloze)
03:39 AM Bug #11188 (Closed): Method#inspect for chaining alias methods
This patch was merged in commit:adecd43197d5ea2a62a618a5c9be653bcf009c62. jeremyevans0 (Jeremy Evans)
09:05 AM Feature #16650 (Closed): Ruby 2.6.* and 2.7* no longer compile on latest Mingw64
It seems working now, by compiling with gcc 10.1.0. nobu (Nobuyoshi Nakada)
08:08 AM Bug #16905: Ruby required to build Ruby on Haiku?
> parse.y file has been modified, or its timestamp changed at least.
I didn't edited that file and haven't changed the timestamp, so while your idea makes sense, i don't trust this error message at all, as this is from make, not from ...
extrowerk (Zoltán Mizsei)
03:33 AM Bug #16852: Refining Enumerable fails with ruby 2.7
I've added https://github.com/ruby/ruby/pull/3140 to fix this. It works by ensuring an origin for Enumerable directly after it is created. It does the same for Comparable and Kernel, since I think the issue could affect them. jeremyevans0 (Jeremy Evans)
01:53 AM Revision b10c9d20 (git): [DOC] Added document for rb_check_symbol() [ci skip]
nobu (Nobuyoshi Nakada)
01:35 AM Revision 8b8b7c78 (git): Enhanced Rdoc for Hash (#3139)
burdettelamar (Burdette Lamar)
12:53 AM Bug #16908: Strange behaviour of Hash#shift when used with `default_proc`.
I would expect Hash#shift to return either a key-value tuple or nil. Returning the default value is, honestly, incomprehensible. Dan0042 (Daniel DeLorme)

05/23/2020

07:01 PM Revision 0b161774 (git): * 2020-05-24 [ci skip]
git[bot]
07:01 PM Revision f27e0d90 (git): ext/fiddle/fiddle.gemspec: avoid require lib/fiddle/version.rb
It loads `ext/fiddle/lib/fiddle/version.rb`, which causes constant
redefinition warning:
http://rubyci.s3.amazonaws.com/ubuntu2004/ruby-master/log/20200523T153003Z.log.html.gz
```
[ 6317/20193] TestDefaultGems#test_validate_gemspec/home...
mame (Yusuke Endoh)
02:16 PM Bug #16787 (Closed): [patch] allow Dir.home to work for non-login procs when $HOME not set
Applied in changeset commit:git|c15cddd1d515c5bd8dfe8fb2725e3f723aec63b8.
----------
Allow Dir.home to work for non-login procs when $HOME not set
Allow the 'Dir.home' method to reliably locate the user's home directory when
all three ...
salewski (Alan Salewski)
02:16 PM Revision c15cddd1 (git): Allow Dir.home to work for non-login procs when $HOME not set
Allow the 'Dir.home' method to reliably locate the user's home directory when
all three of the following are true at the same time:
1. Ruby is running on a Unix-like OS
2. The $HOME environment variable is not set
3. The pro...
salewski (Alan Salewski)
01:04 PM Revision 39cb1930 (git): Search pkg-config with ac_tool_prefix [Bug #16909]
Should prefer a prefixed version over the bare pkg-config for
cross compiling.
nobu (Nobuyoshi Nakada)
12:39 PM Bug #16908: Strange behaviour of Hash#shift when used with `default_proc`.
In other words, the current semantics of `return hash.default(nil) if hash.empty?` feel hacky and actually harmful to me.
The user probably never expects to have the default_proc called with a `nil` key in many cases.
Eregon (Benoit Daloze)
12:37 PM Bug #16908: Strange behaviour of Hash#shift when used with `default_proc`.
Maybe `Hash#shift` should not call the `default_proc` or use `Hash#default`?
I.e., it would always return `nil` if `Hash#empty?`.
I think that would be more intuitive and probably compatible enough.
Eregon (Benoit Daloze)
02:53 AM Bug #16908: Strange behaviour of Hash#shift when used with `default_proc`.
ioquatix (Samuel Williams) wrote in #note-2:
> @jeremyevans0 I agree with your assessment, however that hash does not have default_proc so I assume that it would return `nil` after all key-value pairs are `shift`ed out. That's different...
jeremyevans0 (Jeremy Evans)
02:38 AM Bug #16908: Strange behaviour of Hash#shift when used with `default_proc`.
@jeremyevans0 I agree with your assessment, however that hash does not have default_proc so I assume that it would return `nil` after all key-value pairs are `shift`ed out. That's different from invoking `default_proc` and returning `[ni... ioquatix (Samuel Williams)
02:26 AM Bug #16908: Strange behaviour of Hash#shift when used with `default_proc`.
While your particular example is non-intuitive, there is a simple explanation for it. The first time `hash.shift` is called, `hash` is empty, so it returns the default value (`0`). It gets the default value by calling the default_proc f... jeremyevans0 (Jeremy Evans)
02:15 AM Bug #16908 (Closed): Strange behaviour of Hash#shift when used with `default_proc`.
I don't have any strong opinion about this, but I observed the following behaviour which I thought was confusing. Maybe it's okay, or maybe we should change it to be more consistent.
```
hash = Hash.new{|k,v| k[v] = 0}
hash.shift ...
ioquatix (Samuel Williams)
12:20 PM Revision b722182e (git): Revert "Search pkg-config by AC_CHECK_TOOL [Bug #16909]"
This reverts commit 6006ab8cf93a0e06d9d65213eff3117965c9bd0c.
AC_CHECK_TOOL does not have REJECT argument.
nobu (Nobuyoshi Nakada)
11:58 AM Bug #16909 (Closed): pkg-config search should use AC_CHECK_TOOL instead of AC_CHECK_PROG
Applied in changeset commit:git|6006ab8cf93a0e06d9d65213eff3117965c9bd0c.
----------
Search pkg-config by AC_CHECK_TOOL [Bug #16909]
It should use AC_CHECK_TOOL to automatically search for a prefixed
version and not just the bare pkg-c...
nobu (Nobuyoshi Nakada)
04:28 AM Bug #16909 (Closed): pkg-config search should use AC_CHECK_TOOL instead of AC_CHECK_PROG
pkg-config is a toolchain variable akin to the compiler/linker/etc... it should use AC_CHECK_TOOL to automatically search for a prefixed version and not just the bare pkg-config. vapier (Mike Frysinger)
10:52 AM Revision 6006ab8c (git): Search pkg-config by AC_CHECK_TOOL [Bug #16909]
It should use AC_CHECK_TOOL to automatically search for a prefixed
version and not just the bare pkg-config.
nobu (Nobuyoshi Nakada)
08:24 AM Revision b2976a4f (git): Fixup d48c92aa04ffd3a1cecef599eaa5e4409aab2fe4
hsbt (Hiroshi SHIBATA)
07:44 AM Revision d48c92aa (git): Rename TestScheduler* to TestFiber for convention of the test directory
hsbt (Hiroshi SHIBATA)
05:56 AM Revision 0b2fc4cf (git): extlibs.rb: make symlink only if the target exists
nobu (Nobuyoshi Nakada)
05:34 AM Revision 3015a7aa (git): [ruby/fiddle] Improve documentation on how to correctly free memory and free memory in tests (#33)
https://github.com/ruby/fiddle/commit/e59cfd708a chrisseaton (Chris Seaton)
05:29 AM Revision 24b615e8 (git): [ruby/fiddle] Export Fiddle::VERSION
https://github.com/ruby/fiddle/commit/1b93a2d9db Sutou Kouhei
05:29 AM Revision 74a4558c (git): [ruby/fiddle] Update file list
https://github.com/ruby/fiddle/commit/b04cb92d7b Sutou Kouhei
05:29 AM Revision d5c0018a (git): [ruby/fiddle] Fix a typo
https://github.com/ruby/fiddle/commit/445ca6b501 Sutou Kouhei
05:29 AM Revision a0dcdd64 (git): [ruby/fiddle] Bump version
https://github.com/ruby/fiddle/commit/f8fb7c4823 Sutou Kouhei
05:29 AM Revision 13f64333 (git): [ruby/fiddle] Add Fiddle::VERSION
https://github.com/ruby/fiddle/commit/9dcf64c096 Sutou Kouhei
05:29 AM Revision 5fb7ca33 (git): [ruby/fiddle] Add missing spec.extensions
https://github.com/ruby/fiddle/commit/2ce36b1fdc Sutou Kouhei
05:29 AM Revision 77cc1394 (git): [ruby/fiddle] Fix assignment to array within struct (#26)
* Allow access to a struct's underlying memory with `struct[offset, length]`.
https://github.com/ruby/fiddle/commit/24083690a6
sinisterchipmunk
05:29 AM Revision 4a835621 (git): [ruby/fiddle] Make array access override compatible with base class (#25)
* Allow access to a struct's underlying memory with `struct[offset, length]`.
* Make accessing a struct's underlying memory more convenient.
* refactor memory access unit tests for improved clarity
https://github.com/ruby/fiddle/comm...
sinisterchipmunk
05:29 AM Revision aa1d3c7d (git): [ruby/fiddle] Initialize memory to 0 when calling Fiddle.malloc(). (#24)
https://github.com/ruby/fiddle/commit/8414239ca3 sinisterchipmunk
03:31 AM Revision ad729a1d (git): Fix origin iclass pointer for modules
If a module has an origin, and that module is included in another
module or class, previously the iclass created for the module had
an origin pointer to the module's origin instead of the iclass's
origin.
Setting the origin pointer corr...
jeremyevans (Jeremy Evans)
02:12 AM Misc #16805: Coroutine's license is unclear
https://github.com/ruby/ruby/pull/3137 ioquatix (Samuel Williams)
02:10 AM Bug #16907 (Closed): Probable use-after-free in VM assertion
The following Ruby program fails with VM assertions enabled on OpenBSD (code taken from `test_caller_to_enum` in `test/ruby/test_backtrace.rb`):
```ruby
def foo
return to_enum(__method__) unless block_given?
r...
jeremyevans0 (Jeremy Evans)
12:43 AM Revision fdb31aa7 (git): Time.xmlschema: Clarify error and docs
It parses a (date)time, not a date. Henrik Nyh and Tomas Skogberg
12:36 AM Revision da484c31 (git): Enhanced Rdoc for Hash
burdettelamar (Burdette Lamar)

05/22/2020

10:28 PM Revision f8647343 (git): Remove a bunch of files that were deleted upstream
deivid (David Rodríguez)
10:28 PM Revision 2ec5f324 (git): * 2020-05-23 [ci skip]
git[bot]
10:28 PM Bug #16736 (Closed): Prepending blank module breaks super call in aliased method
Applied in changeset commit:git|c745a60634260ba2080d35af6fdeaaae86fe5193.
----------
Fix origin iclass pointer for modules
If a module has an origin, and that module is included in another
module or class, previously the iclass created...
jeremyevans (Jeremy Evans)
10:27 PM Revision 36f29b59 (git): Fixed wrong usage rm_rf for cleanup the default gems in sync tool
hsbt (Hiroshi SHIBATA)
02:54 PM Revision 8d798e7c (git): Revert "Fix origin iclass pointer for modules"
This reverts commit c745a60634260ba2080d35af6fdeaaae86fe5193.
This triggers a VM assertion. Reverting until the issue can be
debugged.
jeremyevans (Jeremy Evans)
02:36 PM Revision c745a606 (git): Fix origin iclass pointer for modules
If a module has an origin, and that module is included in another
module or class, previously the iclass created for the module had
an origin pointer to the module's origin instead of the iclass's
origin.
Setting the origin pointer corr...
jeremyevans (Jeremy Evans)
01:33 PM Feature #16824 (Rejected): Follow RubyGems naming conventions for the stdlib
The first proposal was rejected. We should discuss each stdlib like `ostruct`. hsbt (Hiroshi SHIBATA)
01:29 PM Bug #16846 (Closed): Commit - win32ole: separate global variable declarations and definitions - backport?
hsbt (Hiroshi SHIBATA)
01:27 PM Misc #16893 (Closed): Create Rosetta Code page on website
We handle the official website that is https://www.ruby-lang.org/en/ on https://github.com/ruby/www.ruby-lang.org/.
Can you submit this idea or suggestion about Roseeta Code? Thanks.
hsbt (Hiroshi SHIBATA)
12:24 PM Revision ef13558f (git): Revert a commit miss in "Fixed potential memory leak"
This reverts an unintentional change in commit
79d9528ddca1dfe2dd99287dc88fd7c2b30f7137.
nobu (Nobuyoshi Nakada)
11:32 AM Revision df5fd1d0 (git): Fixup 1d079a0c5d4d80860a4d6d692344124fe5c562b5
hsbt (Hiroshi SHIBATA)
11:32 AM Revision 1d889c96 (git): Sync Bundler PR #3624 with HEAD commits
hsbt (Hiroshi SHIBATA)
11:32 AM Revision 93ebf964 (git): Revert 1f011cccb16ca9e8ee378cb5a9d4c14459afd68c
hsbt (Hiroshi SHIBATA)
11:32 AM Revision 26367367 (git): Marked the failing examples with the current master branch on ruby repository
hsbt (Hiroshi SHIBATA)
11:32 AM Revision 9c275229 (git): Glob the all man files provided by bundler upstream
hsbt (Hiroshi SHIBATA)
11:32 AM Revision c7ebeb7e (git): Sync Bundler PR #3624
hsbt (Hiroshi SHIBATA)
04:49 AM Revision f4f157fc (git): Suppress warnings no inline ruby debug (#3107)
* Suppress unused warnings occurred due to -fno-inline
* Suppress warning occurred due to RUBY_DEBUG=1
Kenta Murata
03:05 AM Revision ac395754 (git): Enhanced rdoc for Hash (#3129)
burdettelamar (Burdette Lamar)
02:51 AM Revision d707c92a (git): add static modifier for rb_hash_keep_if func
S_H_ (Shun Hiraoka)
02:51 AM Revision e5354de9 (git): add static modifier for rb_hash_select_bang func
S_H_ (Shun Hiraoka)
02:51 AM Revision 7c4e0859 (git): add static modifier for rb_hash_select func
S_H_ (Shun Hiraoka)
02:38 AM Bug #16906 (Closed): Calling Thread#thread_variable? in IRB sometimes produce wrong result
Consider this script:
``` ruby
Thread.current.thread_variable_set("ab", 12)
puts Thread.current.thread_variable?("ab")
puts Thread.current.thread_variable?(:ab)
puts Thread.current.thread_variable?("ab")
```
When I put the scr...
tyok (Mohammad Satrio)
02:23 AM Bug #16900 (Closed): Disposable call-cache introduced memory leak
Applied in changeset commit:git|cbd45af2a9bec871ee023e6be57c5f32b22280fe.
----------
fix memory leak of ccs
rb_callable_method_entry() creates ccs entry in cc_tbl, but this
code overwrite by insert newly created ccs and overwrote ccs n...
ko1 (Koichi Sasada)
02:23 AM Revision cbd45af2 (git): fix memory leak of ccs
rb_callable_method_entry() creates ccs entry in cc_tbl, but this
code overwrite by insert newly created ccs and overwrote ccs never
freed.
[Bug #16900]
ko1 (Koichi Sasada)
02:12 AM Revision 74cd607c (git): Run major GC three times to make sure the minor GC reason
Same as 02705b27be207fce57bd0253251f81108c7ed57b
http://ci.rvm.jp/results/trunk-random1@phosphorus-docker/2955433
```
1)
TestGc#test_start_full_mark [/tmp/ruby/v3/src/trunk-random1/test/ruby/test_gc.rb:61]:
Expected :oldmalloc to be n...
mame (Yusuke Endoh)
01:42 AM Bug #16905: Ruby required to build Ruby on Haiku?
According to the log,
```
executable host ruby is required. use --with-baseruby option.
uncommon.mk:866: recipe for target 'parse.c' failed
make: *** [parse.c] Error 1
```
parse.y file has been modified, or its timestamp change...
nobu (Nobuyoshi Nakada)
01:38 AM Bug #8446: sdbm fails to fetch existing key if many elements in it
Agreed on removal.
Sdbm seems unmaintained 30 years, and having other bugs (or limitations) on storing large values too.
nobu (Nobuyoshi Nakada)

05/21/2020

09:50 PM Revision 79d9528d (git): Fixed potential memory leak
Create a wrapper object first, then buffer allocation which can
fail.
nobu (Nobuyoshi Nakada)
08:31 PM Misc #16802: Prefer use of RHS assigment in documentation
I'm also not a big fan, but even if it becomes official it's not a good idea documentation-wise as it currently distinguishes cases where the return is self; there's no way to do this with the right assignment operator.
```
hsh.merge!(o...
marcandre (Marc-Andre Lafortune)
07:09 PM Revision 38a4f617 (git): * 2020-05-22 [ci skip]
git[bot]
07:08 PM Revision a53e2850 (git): Unpin and update VM references
This commit just unpins and updates VM references tenderlovemaking (Aaron Patterson)
06:53 PM Bug #16900: Disposable call-cache introduced memory leak
Great report!
https://github.com/ruby/ruby/pull/3128
ko1 (Koichi Sasada)
04:16 PM Feature #16848: Allow callables in $LOAD_PATH
One concern we found is some scripts expect `$:` contains String objects which represent a path.
Typically some scripts (gems) find a file in a `$:` (`$:.each{|path| ...}`). It will be a compatibility issue.
Maybe we need a trick to keep...
ko1 (Koichi Sasada)
11:51 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
vo.x (Vit Ondruch) wrote in #note-8:
Upstream ticket: https://github.com/rubygems/rubygems/issues/3647
vo.x (Vit Ondruch)
11:31 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
vo.x (Vit Ondruch) wrote in #note-8:
Actually my original intention was to try this with disabled gems and it seems Ruby itself behaves as I would expect:
~~~
$ ruby --disable-gems -e '(1..3).each {|psych| $:.unshift("psych#{psych...
vo.x (Vit Ondruch)
11:29 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
BTW I don't understand how this could work:
~~~
$ for psych in psych{1..3}; do mkdir $psych; echo "puts '$psych'" > $psych/psych.rb; done
$ find .
.
./psych2
./psych2/psych.rb
./psych1
./psych1/psych.rb
./psych3
./psych3/ps...
vo.x (Vit Ondruch)
09:53 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
> What's wrong in Fedora?
Thank you for checking the issue on your environment.
In Fedora Ruby, there is no default gem psych gemspec: there is no file such as /usr/share/gems/specifications/default/psych-*.gemspec .
You can see htt...
jaruga (Jun Aruga)
08:07 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
vo.x (Vit Ondruch) wrote in #note-4:
> Just FTR, the patch just hides this issue, it does not resolve it.
BTW this [1] is my original RubyGems ticket which you can use to get pointers to various related issues such as [2].
[1]: ...
vo.x (Vit Ondruch)
07:59 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
Also, I believe that call to `require 'psych'` should result to subsequent calls of `require 'psych'` to be no-op. This is apparently not the case. vo.x (Vit Ondruch)
07:56 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
What is wrong with Ruby?
~~~
$ ruby -v
ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux]
$ gem env
RubyGems Environment:
- RUBYGEMS VERSION: 3.1.2
- RUBY VERSION: 2.7.1 (2020-03-31 patchlevel 83) [x86_64-linux]
- INST...
vo.x (Vit Ondruch)
02:36 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
After installing psych 3.1.0, no error found.
What's wrong in Fedora?
```sh
$ for ruby in ruby2.{2..7}; do $ruby -rpsych -e 'p [RUBY_VERSION, Gem.load_yaml, Psych::VERSION]'; done
["2.2.10", true, "3.1.0"]
["2.3.8", true, "3.1.0"]...
nobu (Nobuyoshi Nakada)
02:26 AM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
I can't see that error in 2.7 too.
```sh
$ for ruby in ruby2.{0..7}; do $ruby -rpsych -e 'p [RUBY_VERSION, Gem.load_yaml, Psych::VERSION]'; done
["2.0.0", true, "2.0.0"]
["2.1.9", true, "2.0.5"]
["2.2.10", true, "2.0.8"]
["2.3.8"...
nobu (Nobuyoshi Nakada)
06:26 AM Feature #16891: Restore Positional Argument to Keyword Conversion
A sole positional argument does in fact work, and I am a big fan of the pattern matching feature (enough that once we're on 2.7, I'm considering `-W:no-experimental`), but I hadn't thought about the combination of the two, and I certainl... ziggythehamster (Keith Gable)
12:58 AM Feature #16891: Restore Positional Argument to Keyword Conversion
Hi, @ziggythehamster, thank you for your feedback, and I'm sorry for troubling you.
In this case, I think you can accept the Hash argument as a positional one. How about this?
```ruby
class SomeProcessor
def <<(hash)
foo ...
mame (Yusuke Endoh)
04:31 AM Revision ba7f4bb0 (git): Synchronized non-inline version rb_scan_args with the inline version
nobu (Nobuyoshi Nakada)
04:31 AM Revision 62b47196 (git): Added UNREACHABLE_RETURN
To get rid of a void function at the end of non-void function. nobu (Nobuyoshi Nakada)
04:27 AM Revision 3eb3f7bb (git): test/ruby/test_optimization.rb: Proc creation test should count :T_DATA
instead of :TOTAL of ObjectSpace.count_objects.
This test had failed very occasionally:
https://rubyci.org/logs/rubyci.s3.amazonaws.com/centos8/ruby-master/log/20200521T033004Z.fail.html.gz
```
1) Failure:
TestRubyOptimization#test_b...
mame (Yusuke Endoh)
02:17 AM Bug #16903 (Closed): Compilation error on x86_64-cygwin
Applied in changeset commit:git|6f167da65b799435f94af3c5d39a80968e284f44.
----------
Fixed a variable name [Bug #16903]
Fix up of 0e3b0fcdba7
From: fd0 (Daisuke Fujimura)
nobu (Nobuyoshi Nakada)
01:47 AM Revision 6f167da6 (git): Fixed a variable name [Bug #16903]
Fix up of 0e3b0fcdba7
From: fd0 (Daisuke Fujimura)
nobu (Nobuyoshi Nakada)
12:58 AM Revision 43725c60 (git): rb_scan_args_set: make it slightly readable
This is a pure refactoring that improves understanding of what is going
on. Not a big win though.
shyouhei (Shyouhei Urabe)

05/20/2020

11:08 PM Bug #16900: Disposable call-cache introduced memory leak
Using the following program, I have determined that Ruby isn't leaking objects according to `ObjectSpace.count_objects`, so it is probably leaking some other memory.
```ruby
module M; def bar; end; end
h = nil
h2 = ObjectSpace.coun...
jeremyevans0 (Jeremy Evans)
12:27 AM Bug #16900 (Closed): Disposable call-cache introduced memory leak
commit:b9007b6c548f91e88fd3f2ffa23de740431fa969 (Introduce disposable call-cache) introduced a memory leak for classes that include or prepend modules. Taking the example memory leak script used in the commit message for commit:5922c954... jeremyevans0 (Jeremy Evans)
10:57 PM Revision 140d4e4a (git): [ci skip] Enhanced rdoc for Hash (#3121)
burdettelamar (Burdette Lamar)
10:57 PM Bug #8446 (Assigned): sdbm fails to fetch existing key if many elements in it
I'm +1 to stop to ship with the next stable release.
The users could install from rubygems or http://github.com/ruby/sdbm
hsbt (Hiroshi SHIBATA)
04:57 PM Bug #8446: sdbm fails to fetch existing key if many elements in it
It looks like other people using sdbm are experiencing the same issue: https://www.reddit.com/r/ruby/comments/gneh4r/anyone_used_sdbm_from_stdlib_anyone_found_it_buggy/
Unless someone has time to debug this issue, I recommend we stop ...
jeremyevans0 (Jeremy Evans)
10:00 PM Revision 6e7e7c1e (git): Only marked objects should be considered movable
Ruby's GC is incremental, meaning that during the mark phase (and also
the sweep phase) programs are allowed to run. This means that programs
can allocate objects before the mark or sweep phase have actually
completed. Those objects ma...
tenderlovemaking (Aaron Patterson)
08:49 PM Bug #16905: Ruby required to build Ruby on Haiku?
shevegen (Robert A. Heiler) wrote in #note-2:
> This could perhaps be a bug. I think you can normally build "miniruby"
> ...
Forgot to mention i maintain the ruby port since some years, so i am definitely sure the earlier versions neve...
extrowerk (Zoltán Mizsei)
07:07 PM Bug #16905: Ruby required to build Ruby on Haiku?
This could perhaps be a bug. I think you can normally build "miniruby"
if a base ruby is not available on the computer system, and then the
compilation step uses that miniruby for the compilation part. At the
least this is how I under...
shevegen (Robert A. Heiler)
05:55 PM Bug #16905: Ruby required to build Ruby on Haiku?
**make distclean** doesn't solved the problem. extrowerk (Zoltán Mizsei)
05:55 PM Bug #16905 (Open): Ruby required to build Ruby on Haiku?
Building Ruby on Haiku results in the following error:
```
executable host ruby is required. use --with-baseruby option.
```
Build environment:
```
~> uname -a
Haiku shredder 1 hrev54197 May 14 2020 06:44:52 x86_64 x86_64 Ha...
extrowerk (Zoltán Mizsei)
08:29 PM Feature #16891: Restore Positional Argument to Keyword Conversion
A use case that seems to have been forgotten that I want to explicitly point out (and I'm not sure if this is the ticket for it, given the discussion here vs. the linked thread, so I'm happy to open a new issue if needed) is that it seem... ziggythehamster (Keith Gable)
08:28 PM Feature #14722: python's buffer protocol clone
Any thoughts on this? This would help to use views of numo_narray and NMatrix without copying to/from ruby. See https://github.com/ruby-numo/numo-narray/issues/25 dsisnero (Dominic Sisneros)
06:17 PM Revision a3e79c17 (git): * 2020-05-21 [ci skip]
git[bot]
06:16 PM Revision 891e253e (git): Use a pinning list for keeping objects alive during assembly.
The GC will not disassemble incomplete instruction sequences. So it is
important that when instructions are being assembled, any objects the
instructions point at should not be moved.
This patch implements a fixed width array that pins...
tenderlovemaking (Aaron Patterson)
06:04 PM Bug #16904: rubygems: psych: superclass mismatch for class Mark (TypeError)
The error does not happen in Ruby 2.6.
So, it's great if it is backported to Ruby 2.7.
jaruga (Jun Aruga)
02:09 PM Bug #16904 (Closed): rubygems: psych: superclass mismatch for class Mark (TypeError)
Is it possible to backport the following commits into Ruby?
Remove explicit `psych` activation
https://github.com/rubygems/rubygems/commit/1ccf0912a161d20e0c4a7b139fd76e8739a411ba
bundler: Remove explicit `psych` activation.
htt...
jaruga (Jun Aruga)
02:22 PM Revision ff58cbce (git): add static modifer for rb_hash_fetch_values func
S_H_ (Shun Hiraoka)
01:29 PM Bug #16903 (Closed): Compilation error on x86_64-cygwin
Compilation error on x86_64-cygwin.
```
compiling io.c
io.c: In function 'rb_cloexec_pipe':
io.c:412:9: error: 'ret' undeclared (first use in this function)
412 | if (ret == 0 && descriptors[1] == -1) {
| ^~~
...
fd0 (Daisuke Fujimura)
11:05 AM Bug #16902 (Rejected): Enumerable#group_by invalid key object
16 and 17 call `moo` method on different objects.
`Hash`s store frozen copies of `String` keys, otherwise if a key gets modified then the element associated to the modified key can no longer be accessed, until `rehash`ed.
As this "copy...
nobu (Nobuyoshi Nakada)
10:13 AM Bug #16902 (Rejected): Enumerable#group_by invalid key object
I actually want to group by a customized string object and it seems to be ignored. I've tested this with ruby 2.5 and 2.7 and the behavior seems to be the same. Not really sure if this is expected, but the documentation means it's groupe... tonobo (Tim Foerster)
08:32 AM Bug #16901 (Closed): `-W:no-deprecated` does not stop some deprecated warnings
nagachika (Tomoyuki Chikanaga)
08:31 AM Bug #16901: `-W:no-deprecated` does not stop some deprecated warnings
Thank you for the patch for 2.7. I will fill Backport field and close this ticket to be noticed as backport ticket. nagachika (Tomoyuki Chikanaga)
05:30 AM Bug #16901: `-W:no-deprecated` does not stop some deprecated warnings
Sorry, it's for 2.7.
It should be in ruby/ruby.h, near `rb_warn` and so on.
nobu (Nobuyoshi Nakada)
05:27 AM Bug #16901: `-W:no-deprecated` does not stop some deprecated warnings
znz (Kazuhiro NISHIYAMA) wrote:
> I don't know where declaration of `rb_warn_deprecated` should be.
include/ruby/internal/error.h?
nobu (Nobuyoshi Nakada)
03:00 AM Bug #16901 (Closed): `-W:no-deprecated` does not stop some deprecated warnings
```
$ ruby -v -W:no-deprecated -e 'IO.read(IO::NULL,{dummy:0})'
ruby 2.7.1p83 (2020-03-31 revision a0c7c23c9c) [x86_64-linux]
-e:1: warning: Using the last argument as keyword parameters is deprecated
```
I attach a draft patch fo...
znz (Kazuhiro NISHIYAMA)
01:52 AM Revision 2480ef90 (git): pure_parser.rb: get rid of an error at localed messages
nobu (Nobuyoshi Nakada)
01:29 AM Revision 67d259c5 (git): Use __bultin_assume() from clang-7
We observed combination of multiple __builtin_assume() can cause
strange compile results on clang-6 (-DNDEBUG exposed this issue).
To avoid this problem, __builtin_assume() is from clang-7.
https://github.com/ruby/ruby/pull/3120#issuecom...
ko1 (Koichi Sasada)
01:22 AM Revision a6403091 (git): * 2020-05-20 [ci skip]
git[bot]

05/19/2020

09:41 PM Bug #16852: Refining Enumerable fails with ruby 2.7
I can confirm this bug. It was introduced in commit:a0579f3606561a74e323f6193b9504c06845236c, which fixed prepending a refined module after inclusion. I'll look into fixing this. jeremyevans0 (Jeremy Evans)
08:15 PM Feature #16848: Allow callables in $LOAD_PATH
> In other words should the "omitted extension" handling be done inside or outside of the resolver?
In my opinion it should be done inside, because otherwise it would hinder performance. But yes it would potentially change the precede...
byroot (Jean Boussier)
03:40 PM Feature #16848: Allow callables in $LOAD_PATH
I really love this idea; it's simple yet powerful. I do have a few questions though.
1) How would this API handle .rb vs .so loading? IIRC there was some additional logic to ensure that a .rb file later in the $LOAD_PATH would win over ...
Dan0042 (Daniel DeLorme)
01:09 PM Revision feb8dc55 (git): Include wchar.h before wrapping memchr
On mingw, wmemcpy() is defined as an inline function using
memcpy(), and the static inline wrapper causes a warning.
```
In file included from include/ruby/ruby.h:39,
from win32/file.c:5:
include/ruby/internal/memory.h:...
nobu (Nobuyoshi Nakada)
09:45 AM Feature #16891: Restore Positional Argument to Keyword Conversion
Instead of restoring all positional hash argument to keyword argument conversion, how about adding new implicit maybe kwargs flag for opt-in warning (i.e. implicit maybe kwargs flag by default)?
```ruby
def foo(key: 42); end
foo({key: 4...
kamipo (Ryuta Kamizono)
03:56 AM Feature #16891: Restore Positional Argument to Keyword Conversion
> Assuming we did not remove ruby2_keywords until a equally efficient replacement exists (which I'm assuming will be after 2.6 is EOL), what problems do you see?
Honestly ... no problem at all, the only issue I see is that we are in a...
sam.saffron (Sam Saffron)
03:19 AM Feature #16891: Restore Positional Argument to Keyword Conversion
Dan0042 (Daniel DeLorme) wrote in #note-12:
> An idea: it may be worth sub-dividing "Positional Hash Argument to Keyword Argument Conversion" into
> ...
I could be wrong, but I get the feeling the distinction you are trying to make is ...
jeremyevans0 (Jeremy Evans)
01:43 AM Feature #16891: Restore Positional Argument to Keyword Conversion
An idea: it may be worth sub-dividing "Positional Hash Argument to Keyword Argument Conversion" into
### a) Overflow Positional Hash Argument to Keyword Argument Conversion
When number of positional arguments is greater than maximum ar...
Dan0042 (Daniel DeLorme)
01:07 AM Feature #16891: Restore Positional Argument to Keyword Conversion
sam.saffron (Sam Saffron) wrote in #note-10:
> I agree many gems already work, but we have built ourselves a time bomb here.
> ...
Which I why I think it should not be removed until an equally efficient replacement exists. Assuming we d...
jeremyevans0 (Jeremy Evans)
12:21 AM Feature #16891: Restore Positional Argument to Keyword Conversion
I agree many gems already work, but we have built ourselves a time bomb here.
`ruby2_keywords` is certainly going to go away one day, it is too ugly to keep permanently. What happens when it goes away? We need to then swap our implement...
sam.saffron (Sam Saffron)
08:49 AM Bug #16780 (Closed): Net::FTP PUT command issuing Net::ReadTimeout too quickly
Applied in changeset commit:git|5e81e8675a020ecd493620a4ff38db8fcf4b972a.
----------
Ignore exceptions when closing data connections [Bug #16780]
Patch by koshigoe (Masataka SUZUKI). Thanks!
shugo (Shugo Maeda)
08:45 AM Bug #16780: Net::FTP PUT command issuing Net::ReadTimeout too quickly
koshigoe (Masataka SUZUKI) wrote in #note-3:
> The `Net::FTP#close` suppresses exception about `Socket#shutdown` and `Socket#read`.
(snip)
> ...
Thanks for your patch.
It looks good. I'll merge it.
shugo (Shugo Maeda)
08:48 AM Revision 5e81e867 (git): Ignore exceptions when closing data connections [Bug #16780]
Patch by koshigoe (Masataka SUZUKI). Thanks! shugo (Shugo Maeda)
06:22 AM Revision 1f063abb (git): add static modifier to rb_ary_aref2 func
S_H_ (Shun Hiraoka)
03:59 AM Feature #16897: General purpose memoizer in Ruby 3 with Ruby 2 performance
Alternative proposal
```ruby
def bar(*args, **kwargs)
end
def foo(*args)
bar(*args)
args
end
args = foo(1, 2, {1 => 2}, a: 7, b: 9)
args.class
=> Arguments
args.length
=> 5
args[2]
=> {1 => 2}
args[:x]
=> nil
args[:b]
=> ...
sam.saffron (Sam Saffron)
02:47 AM Feature #16897: General purpose memoizer in Ruby 3 with Ruby 2 performance
Expanded proposal:
```ruby
def foo(...args)
bar(...)
args
end
args = foo(1, 2, {1 => 2}, a: 7, b: 9)
args.class
=> Arguments
args.length
=> 5
args[2]
=> {1 => 2}
args[:x]
=> nil
args[:b]
=> 9
args.kwargs
=> {a: 7, b: 9}
...
sam.saffron (Sam Saffron)
03:54 AM Revision 79292b30 (git): Make builtin loader sources by Ripper
nobu (Nobuyoshi Nakada)
03:16 AM Feature #16791: Shortcut for Process::Status.exitstatus
nobu (Nobuyoshi Nakada) wrote in #note-7:
> That executes `exit(nil)` and results in `TypeError`.
Ah, interesting, I was testing in irb where `exit(nil)` was equivalent to `exit(0)`
Eregon (Benoit Daloze) wrote in #note-8:
> ...
Are we...
Dan0042 (Daniel DeLorme)
02:02 AM Feature #16898: Modify the syntax of -> lambda expressions in ruby3
I get your point. But to my eyes, `==>` is even uglier. It's easily confused with other operators which do not correspond with lambdas but association operators (hash rockets) or comparison operators.
I am not yet convinced having a new...
matz (Yukihiro Matsumoto)

05/18/2020

11:57 PM Revision 6efb9fe0 (git): Allow references stored in the VM stack to move
We can update these references too, so lets allow them to move. tenderlovemaking (Aaron Patterson)
10:51 PM Bug #16811 (Closed): [NOTE] You may have encountered a bug in the Ruby interpreter or extension libraries. Bug reports are welcome. For details: http://www.ruby-lang.org/bugreport.html This application has requested the Runtime to terminate it in an unusual way. Please cont
jeremyevans0 (Jeremy Evans)
10:47 PM Bug #16831 (Closed): Running `Pathname#glob` with `File::FNM_DOTMATCH` option loses `.` and `..`
jeremyevans0 (Jeremy Evans)
10:46 PM Bug #16834 (Closed): rb_profile_frame_classpath only recognize class singleton methods, not module singleton methods
jeremyevans0 (Jeremy Evans)
10:44 PM Feature #16838: Enumerator::ArithmeticSequence missing allocator for #clone and #dup
`ArithmeticSequence.new` and `ArithmeticSequence.allocate` being undefined was definitely a deliberate change in commit:25a5227ab188b940d8bbc291bf4c9d62e5d63163.
I'm not sure that breaking `clone` was expected. In general for frozen ...
jeremyevans0 (Jeremy Evans)
10:37 PM Bug #16840: Decrease in Hash#[]= performance with object keys
Running your example code, I see a speedup between 2.5 and 2.6, but a slowdown in 2.7 and in master.
```
ruby 2.5.8p224 (2020-03-31 revision 67882) [x86_64-openbsd]
10.040000 0.010000 10.050000 ( 10.089013)
9.930000 0.01000...
jeremyevans0 (Jeremy Evans)
05:32 PM Misc #16775: DevelopersMeeting20200514Japan
mame wrote:
> [...] We'll hold an extra meeting at 26th.
\o/
shevegen (Robert A. Heiler)
03:59 PM Revision 9ee66d2b (git): * 2020-05-19 [ci skip]
git[bot]
03:58 PM Revision 6c1a51da (git): Skip some tests if extracted from tarball (again)
Fix up previous commit
ref
9aa75795f9f438d5c874d8e418c3c7cdd63024fa,
38002a8adbd98266426940d829429a30af0622a4, and
0e60b59d5884edb8f9aea023efd9b24f1ff02049
znz (Kazuhiro NISHIYAMA)
03:41 PM Feature #16894: Integer division for Ruby 3
I am not necessarily against such a change per se, but I think it would come with a
high cost right now. It should perhaps be discussed more for ruby 4.0 or so.
By the way, mruby behaves in a similar way. Matz explained that years ago
...
shevegen (Robert A. Heiler)
02:45 PM Feature #16891: Restore Positional Argument to Keyword Conversion
sam.saffron (Sam Saffron) wrote in #note-8:
> To me the big question @matz needs to answer is "do we want gems to work on both 3.X and 2.X?"
You are implying that there needs to be changes for that to happen, which is not the case. Ma...
jeremyevans0 (Jeremy Evans)
07:10 AM Feature #16891: Restore Positional Argument to Keyword Conversion
To me the big question @matz needs to answer is "do we want gems to work on both 3.X and 2.X?"
Personally I 100% support breaking kwargs and args over time, but I think there are massive advantages in making the break happen when 2.6 ...
sam.saffron (Sam Saffron)
02:18 PM Revision 1f011ccc (git): Skip some tests if extracted from tarball (again)
ref 9aa75795f9f438d5c874d8e418c3c7cdd63024fa znz (Kazuhiro NISHIYAMA)
12:25 PM Revision 185f49f9 (git): Fixed RDoc formatting [ci skip]
nobu (Nobuyoshi Nakada)
08:42 AM Revision cf31e980 (git): Fix a typo [ci skip]
znz (Kazuhiro NISHIYAMA)
08:36 AM Feature #16898: Modify the syntax of -> lambda expressions in ruby3
Maybe my expression has some problems, sorry, it has been modified, in fact, what I want to say is that the existing lambda expression looks like the arrow symbol is not very intuitive.
If we can simplify the grammar, in some cases it wo...
jackmaple (maple jack)
01:19 AM Feature #16898: Modify the syntax of -> lambda expressions in ruby3
Not going to join the ugliness debate but I doubt if the proposed new syntax technically possible. It would be much convincing if you provide a working pull request. shyouhei (Shyouhei Urabe)
06:42 AM Revision 3bada920 (git): Simplify maybe_special_const_class_p
k0kubun (Takashi Kokubun)
06:38 AM Revision b16a2aa9 (git): Reduce code size for rb_class_of
by inlining only hot path.
=== mame/optcarrot ===
$ benchmark-driver -v --rbenv 'before --jit;after --jit' benchmark.yml --repeat-count=24 --output=all
before --jit: ruby 2.8.0dev (2020-05-18T05:21:31Z master 0e5a58b6bf) +JIT [x86_64-l...
k0kubun (Takashi Kokubun)
05:39 AM Revision afd84c58 (git): Document how to enable USDT method entry/exit tracepoints
Avdi Grimm
05:21 AM Revision 0e5a58b6 (git): Mark some JIT-ed functions as COLDFUNC
Put some functions which are unlikely to be called on JIT in
.text.unlikely section to improve hot code's locality.
k0kubun (Takashi Kokubun)
03:42 AM Revision c0cd474d (git): Prefer dedicated enum over int
nobu (Nobuyoshi Nakada)
03:40 AM Revision acf61e85 (git): * 2020-05-18 [ci skip]
git[bot]
03:28 AM Revision b02c10b2 (git): built-in method call must not have a receiver
nobu (Nobuyoshi Nakada)
01:44 AM Feature #16899: Add method `Array#both_end`
Thanks for feedbacks.
shan (Shannon Skipper) wrote in #note-1:
> I think #both_ends reads better in the plural form. Or #first_last harkens to #min_max and is unambiguous. Other options might be #extremes or #bookends.
> ...
shevege...
S_H_ (Shun Hiraoka)
12:59 AM Feature #16899: Add method `Array#both_end`
Why not start as a gem? There are things not possible without core changes, but it seems this requested feature needs no such things. shyouhei (Shyouhei Urabe)
12:38 AM Misc #16805: Coroutine's license is unclear
Looks good to me. shyouhei (Shyouhei Urabe)
12:21 AM Bug #16780: Net::FTP PUT command issuing Net::ReadTimeout too quickly
I'm facing the same problem.
The `Net::FTP#close` suppresses exception about `Socket#shutdown` and `Socket#read`.
- https://github.com/ruby/ruby/blob/a0c7c23c9cec0d0ffcba012279cd652d28ad5bf3/lib/net/ftp.rb#L1340-L1355
~~~ruby
...
koshigoe (Masataka SUZUKI)
 

Also available in: Atom