| Age | Commit message (Collapse) | Author |
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4119
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4119
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4119
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4119
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4119
|
|
The most common use case for `bind_call` is to protect from core
methods being redefined, for instance a typical use:
```ruby
UNBOUND_METHOD_MODULE_NAME = Module.instance_method(:name)
def real_mod_name(mod)
UNBOUND_METHOD_MODULE_NAME.bind_call(mod)
end
```
But it's extremely common that the method wasn't actually redefined.
In such case we can avoid creating a new callable method entry,
and simply delegate to the receiver.
This result in a 1.5-2X speed-up for the fast path, and little to
no impact on the slowpath:
```
compare-ruby: ruby 3.1.0dev (2021-02-05T06:33:00Z master b2674c1fd7) [x86_64-darwin19]
built-ruby: ruby 3.1.0dev (2021-02-15T10:35:17Z bind-call-fastpath d687e06615) [x86_64-darwin19]
| |compare-ruby|built-ruby|
|:---------|-----------:|---------:|
|fastpath | 11.325M| 16.393M|
| | -| 1.45x|
|slowpath | 10.488M| 10.242M|
| | 1.02x| -|
```
Notes:
Merged: https://github.com/ruby/ruby/pull/4188
|
|
Fixes issues when the same tests are executed more than once,
which some CI machines do.
|
|
While working on another project we noticed that there were no tests for
the cvar overtaken exception when using classes. This change adds a test
for cvar overtaken with classes and moves the cvar overtaken test for
modules into the new file.
Co-authored-by: Aaron Patterson <tenderlove@ruby-lang.org>
Notes:
Merged: https://github.com/ruby/ruby/pull/4251
|
|
In every caller of `rb_class_ivar_set` it checks for the `RCLASS_IV_TBL`
and then creates it if it doesn't exist. Instead of repeating this in
every caller, this can be done once in `rb_class_ivar_set`.
Notes:
Merged: https://github.com/ruby/ruby/pull/4254
|
|
|
|
This version of defined? doesn't seem to be possible to emit anymore.
Notes:
Merged: https://github.com/ruby/ruby/pull/4253
|
|
|
|
|
|
|
|
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4249
|
|
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4248
|
|
|
|
|
|
|
|
|
|
|
|
It looks like GitHub syntax-highlighting does not support an empty
heredoc. This change adds a newline to make GitHub can handle the syntax
appropriately.
https://bugs.ruby-lang.org/issues/17662
|
|
This test was triggering require of `rubygems/core_ext/tcpsocket_init`
which overrides TCPSocket.initialize globally. Requires don't get
reset between test runs and it was making other test unreliable.
Fixes timeout of test on ruby master
https://github.com/rubygems/rubygems/commit/fdfe5c9691
Notes:
Merged: https://github.com/ruby/ruby/pull/4143
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4143
|
|
Notes:
Merged: https://github.com/ruby/ruby/pull/4143
|
|
|
|
|
|
[Bug #17675] https://bugs.ruby-lang.org/issues/17675
https://github.com/ruby/stringio/commit/1ed61d0cbc
|
|
Gem::Specification#add_development_dependency.
https://github.com/ruby/stringio/commit/157fe9f04d
|
|
|
|
|
|
Some methods are separated into modules in test-unit now.
https://github.com/ruby/stringio/commit/d289848994
|
|
https://github.com/ruby/stringio/commit/74e39858eb
|
|
|
|
|
|
Fixes https://bugs.ruby-lang.org/issues/17659
https://github.com/ruby/io-wait/commit/ba338b4764
Notes:
Merged: https://github.com/ruby/ruby/pull/4244
|
|
https://github.com/ruby/io-wait/commit/88db082d60
Notes:
Merged: https://github.com/ruby/ruby/pull/4244
|
|
https://github.com/ruby/io-wait/commit/0c73ebcf5d
Notes:
Merged: https://github.com/ruby/ruby/pull/4244
|
|
Before 3.0.0, io-wait has not been gemified.
https://github.com/ruby/io-wait/commit/6fed3da323
Notes:
Merged: https://github.com/ruby/ruby/pull/4244
|
|
https://github.com/ruby/io-wait/commit/0599f6d4d6
https://github.com/ruby/io-wait/commit/4e982aea1b
https://github.com/ruby/io-wait/commit/5b45685eb3
Notes:
Merged: https://github.com/ruby/ruby/pull/4244
|
|
Previously these methods were defined but raised TypeError, which
seems worse.
Notes:
Merged: https://github.com/ruby/ruby/pull/3811
|
|
Implements [Feature #17347]
Notes:
Merged: https://github.com/ruby/ruby/pull/3811
|
|
This previously raised a TypeError. Wrap the Enumerator::Chain in
an Enumerator to work around the problem.
Fixes [Bug #17216]
Notes:
Merged: https://github.com/ruby/ruby/pull/3811
|
|
|
|
Defer making ractor stdio until ractor started.
Before ractor started, created objects belong to the caller ractor
instead of the created ractor.
Notes:
Merged: https://github.com/ruby/ruby/pull/4241
Merged-By: nobu <nobu@ruby-lang.org>
|
|
When runtime_libruby_path does not include '/', it attempts to call
rb_str_resize with negative length. This change makes sure that the
length non-negative.
Co-Authored-By: xtkoba (Tee KOBAYASHI) <xtkoba+ruby@gmail.com>
|
|
|