| Age | Commit message (Collapse) | Author |
|
Get rid of multibyte prefix to tmpdir
---
test/ruby/test_require.rb | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)
|
|
Fix Enumerable#inject with high negative fixnums [Bug #17731]
---
enum.c | 2 +-
test/ruby/test_enum.rb | 2 ++
2 files changed, 3 insertions(+), 1 deletion(-)
|
|
Fix infinite loop at illegal sequence [Bug #17729]
As mblen returns -1 on failure, skip the first byte and try the
succeeding bytes in that case.
Close https://github.com/ruby/ruby/pull/4281
---
eval_intern.h | 11 ++++++++++-
test/ruby/test_rubyoptions.rb | 5 +++++
2 files changed, 15 insertions(+), 1 deletion(-)
|
|
Skip refined method when exporting methods with changed visibility
Previously, attempting to change the visibility of a method in a
singleton class for a class/module that is prepended to and refined
would raise a NoMethodError.
Fixes [Bug #17519]
---
test/ruby/test_module.rb | 23 +++++++++++++++++++++++
vm_method.c | 14 +++++++++++---
2 files changed, 34 insertions(+), 3 deletions(-)
|
|
254bed302752a401b5fcc3b6c65a9c93711d91d6,fad3023e94c45e7f03478732f7641b6f39ba9d12,3156fb0f2c3ebf8229f392c8502c08fe165ab181: [Backport #17218]
Renamed `nurat_sub` compliant with `rb_rational_plus`
---
internal/rational.h | 1 +
rational.c | 6 +++---
2 files changed, 4 insertions(+), 3 deletions(-)
Fix ArithmeticSequence#last and ArithmeticSequence#each for
non-integer sequences (#3870)
[Bug #17218]
[ruby-core:100312]
---
common.mk | 2 +
enumerator.c | 99 ++++++++++++++++++++++++++++++++---
internal/numeric.h | 2 +
internal/rational.h | 2 +
numeric.c | 53 ++++++++++---------
rational.c | 28 +++++++---
test/ruby/test_arithmetic_sequence.rb | 10 ++++
7 files changed, 156 insertions(+), 40 deletions(-)
test/ruby/test_arithmetic_sequence.rb: remove a duplicated test
There is another "test_last_bug17218"
---
test/ruby/test_arithmetic_sequence.rb | 5 -----
1 file changed, 5 deletions(-)
|
|
276f6a225d18561cbe5282b798cb4e416c66079f,95bef7b69a6fb42687a6200b338060be307259f5: [Backport #17352]
Don't double fractional seconds when passing timezone object to
Time.new
I found that fractional seconds were doubled when using the timezone
feature of Time in Sequel's named_timezones extension (which uses
TZInfo for the timezone object), and traced the problem to this code.
There is no subsecx being modified in the utc_to_local call below
this, and I'm not sure why you would want to add in the fractional
seconds unless you assumed the timezone conversion would drop the
existing fractional seconds (TZInfo doesn't drop fractional seconds).
---
test/ruby/test_time_tz.rb | 10 ++++++++++
1 file changed, 10 insertions(+)
Subsecond of Time::tm should be 0
---
time.c | 1 +
1 file changed, 1 insertion(+)
|
|
Fix singleton class cloning
Before this commit, `clone` gave different results depending on whether the original object
had an attached singleton class or not.
Consider the following setup:
```
class Foo; end
Foo.singleton_class.define_method(:foo) {}
obj = Foo.new
obj.singleton_class if $call_singleton
clone = obj.clone
```
When `$call_singleton = false`, neither `obj.singleton_class.singleton_class` nor
`clone.singleton_class.singleton_class` own any methods.
However, when `$call_singleton = true`, `clone.singleton_class.singleton_class` would own a copy of
`foo` from `Foo.singleton_class`, even though `obj.singleton_class.singleton_class` does not.
The latter case is unexpected and results in a visibly different clone, depending on if the original object
had an attached class or not.
Co-authored-by: Ufuk Kayserilioglu <ufuk.kayserilioglu@shopify.com>
---
class.c | 31 ++++++++++++++++++++++---------
test/ruby/test_class.rb | 47 +++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 69 insertions(+), 9 deletions(-)
|
|
Fix Method#super_method for aliased methods
Previously, Method#super_method looked at the called_id to
determine the method id to use, but that isn't correct for
aliased methods, because the super target depends on the
original method id, not the called_id.
Additionally, aliases can reference methods defined in other
classes and modules, and super lookup needs to start in the
super of the defined class in such cases.
This adds tests for Method#super_method for both types of
aliases, one that uses VM_METHOD_TYPE_ALIAS and another that
does not. Both check that the results for calling super
methods return the expected values.
To find the defined class for alias methods, add an rb_ prefix
to find_defined_class_by_owner in vm_insnhelper.c and make it
non-static, so that it can be called from method_super_method
in proc.c.
This bug was original discovered while researching [Bug #11189].
Fixes [Bug #17130]
---
proc.c | 13 ++++++--
test/ruby/test_method.rb | 80 ++++++++++++++++++++++++++++++++++++++++++++++++
vm_insnhelper.c | 6 ++--
3 files changed, 94 insertions(+), 5 deletions(-)
|
|
f4be7a510eebbe6507ba41d138d7d252f4a68e90,9441f3f97087a4325ee80911859d37da41fa5050: [Backport #17504]
Added tests for Time#getlocal with UTC offset
---
test/ruby/test_time.rb | 8 ++++++++
1 file changed, 8 insertions(+)
Allow UTC offset without colons per ISO-8601 [Bug #17504]
---
test/ruby/test_time.rb | 6 ++++++
time.c | 44 +++++++++++++++++++++++++++++---------------
2 files changed, 35 insertions(+), 15 deletions(-)
|
|
Fixed premature return
After setting ruby2_keywords for bmethod, the rest of arguments
had been ignored. [Bug #17558]
---
test/ruby/test_keyword.rb | 9 +++++++++
vm_method.c | 2 +-
2 files changed, 10 insertions(+), 1 deletion(-)
|
|
Capture to reserved name variables if already defined [Bug #17533]
---
parse.y | 5 +++--
test/ruby/test_regexp.rb | 11 +++++++++++
2 files changed, 14 insertions(+), 2 deletions(-)
|
|
Make warning values consistent [Bug #17523]
They should be affected, as well as `$VERBOSE`, by `-w`/`-W`
options, not only in the main script but in scripts loaded by `-r`
option too.
---
ruby.c | 4 ++--
test/ruby/test_rubyoptions.rb | 9 +++++++++
2 files changed, 11 insertions(+), 2 deletions(-)
|
|
1b1ea7b3bc9484e6e59d716fce2965a2f39d1e3d,b6e6807993c770c5d2e069d8741f5dadf0b38069: [Backport #17092]
Fix Array#flatten for recursive array when given positive depth [Bug
#17092]
---
array.c | 44 ++++++++++++++++++++++++++------------------
test/ruby/test_array.rb | 14 +++++++++++---
2 files changed, 37 insertions(+), 21 deletions(-)
Initialize memo pointer and use it consistently to silence gcc 7+
---
array.c | 10 +++++-----
1 file changed, 5 insertions(+), 5 deletions(-)
|
|
Make reciprocal properly of non-integral rational [Bug #17572]
---
rational.c | 2 +-
test/ruby/test_rational.rb | 7 +++++++
2 files changed, 8 insertions(+), 1 deletion(-)
|
|
ce7a053475cbebfb2f3e5ed6614e0ba631541917,1cbb1f1720127b0b34b38c77e27b51b182008699: [Backport #16695]
Adjust sp for `x = false; y = (return until x unless x)` [Bug #16695]
---
compile.c | 8 +++-----
test/ruby/test_syntax.rb | 9 +++++++++
2 files changed, 12 insertions(+), 5 deletions(-)
test/ruby/test_syntax.rb: avoid "warning: assigned but unused
variable"
---
test/ruby/test_syntax.rb | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
Implements [Feature #16378]
|
|
#16345] [Backport #17000]
Disable deprecation warning by the default [Feature #16345]
And `-w` option turns it on.
|
|
Make hash returned by Hash#transform_values not have a default
This sets an explicit default of nil. There is probably a better
approach of removing the default.
Fixes [Bug #17181]
|
|
to prevent a random failure like
http://ci.rvm.jp/results/trunk-random2@phosphorus-docker/3024287
|
|
A test worker process may already be enabling TracePoint, which results
in changing the insn name in this test.
http://ci.rvm.jp/results/trunk-random0@phosphorus-docker/3022750
|
|
Added `NODE_SPECIAL_EXCESSIVE_COMMA` info to `ARGS` of
`RubyVM::AbstractSyntaxTree`.
|
|
Trace :return of builtin methods
using opt_invokebuiltin_delegate_leave insn.
Since Ruby 2.7, :return of methods using builtin have not been traced properly.
|
|
#16603] [Backport #17141]
Check type of empty keyword [Bug #16603]
Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
|
|
defined there"
[Backport #16771]
This reverts commit 0d24fb774d84d4a99454ce10fd343da00049a588.
|
|
Add operator info to `OP_ASGN2` of `RubyVM::AbstractSyntaxTree`.
|
|
Fixed `defined?` against protected method call
Protected methods are restricted to be called according to the
class/module in where it is defined, not the actual receiver's
class. [Bug #16931]
|
|
|
|
|
|
|
|
|
|
#16498] [Backport #16914]
Hash#transform_values should return a plain new Hash
[Bug #16498]
|
|
#16801]
Classes made from Struct should have default new singleton method.
Co-authored-by: Yusuke Endoh mame@ruby-lang.org
Co-authored-by: John Hawthorn john@hawthorn.email
Co-authored-by: Adam Hess HParker@github.com
Co-authored-by: Jose Cortinas jacortinas@gmail.com
Co-authored-by: Jean Boussier jean.boussier@gmail.com
|
|
Fixed argument forwarding in reserved word method [Bug #16854]
|
|
Compare environment variable names in those manor [Bug #16798]
|
|
Fixed formatted substring expansion [Bug #16767]
|
|
Fix source location of autoloaded constant [Bug #16764]
|
|
Moved not-implemented method tests [Bug #16662]
Test not-implemented method with the dedicated methods, instead of
platform dependent features.
|
|
marshal.c: Support dump and load of a Hash with the ruby2_keywords
flag
It is useful for a program that dumps and load arguments (like drb).
In future, they should deal with both positional arguments and keyword
ones explicitly, but until ruby2_keywords is deprecated, it is good to
support the flag in marshal.
The implementation is similar to String's encoding; it is dumped as a
hidden instance variable.
[Feature #16501]
|
|
Fixed infinite loop at error in printing cause [Bug #17033]
|
|
Fixed yday and wday with timezone [Bug #17024]
|
|
bf1a6771f305ea286a3ae575676924551c03e857,c1463625555b061a2b94c3b6c5581730b482a285: [Backport #17012] [Backport #17014]
Fix non-numeric exclusive Range#minmax bug
The implementation of Range#minmax added in d5c60214c45 causes the
following incorrect behaviour:
('a'...'c').minmax => ["a", ["a", "b"]]
instead of
('a'...'c').minmax => ["a", "b"]
This is because the C implementation of Range#minmax (range_minmax)
directly delegates to the C implementation of Range#min (range_min) and
Range#max (range_max), without changing the execution context.
Range#max's C implementation (range_max), when given a non-numeric
exclusive range, delegates to super, which is meant to call
Enumerable#max. However, because range_max is called directly by
range_minmax, super calls Enumerable#minmax instead, causing the
incorrect nesting.
Perhaps it is possible to change the execution context in an optimized
manner, but the simplest solution seems to be to just explicitly
delegate from Range#minmax to Range#min and Range#max.
Use static variables in Range#minmax
|
|
Check argument to ObjectSpace._id2ref
Ensure that the argument is an Integer or implicitly convert to,
before dereferencing as a Bignum. Addressed a regression in
b99833baec2.
Reported by u75615 at https://hackerone.com/reports/898614
|
|
brace the fact that lchmod(2) can EOPNOTSUPP
Musl libc has this function as a tiny wrapper of fchmodat(3posix). On
the other hand Linux kernel does not support changing modes of a symlink.
The operation always fails with EOPNOTSUPP. This fchmodat behaviour is
defined in POSIX. We have to take care of such exceptions.
|
|
* [ruby/reline] Sort completion list
#### Legacy mode:
```console
$ irb --legacy
irb(main):001:0> l[TAB][TAB]
lambda load local_variables loop
```
#### Before this patch:
```console
$ irb
irb(main):001:0> l[TAB][TAB]
local_variables
loop
lambda
load
```
#### After this patch:
```console
$ irb
irb(main):001:0> l[TAB][TAB]
lambda
load
local_variables
loop
```
https://github.com/ruby/reline/commit/6074069c7d
* Drop an invalid char as UTF-8
* Add test_completion_with_indent_and_completer_quote_characters
This is for 8a705245e55575d4d310a2e956b89a36a5931971.
* [ruby/irb] Add tests for RubyLex
The set_auto_indent method calculates the correct number of spaces for
indenting a line. We think there might be a few bugs in this method so
we are testing the current functionality to make sure nothing breaks
when we address those bugs.
Example test failure:
```
1) Failure:
TestIRB::TestRubyLex#test_auto_indent [/Users/Ben/Projects/irb/test/irb/test_ruby_lex.rb:75]:
Calculated the wrong number of spaces for:
def each_top_level_statement
initialize_input
catch(:TERM_INPUT) do
loop do
begin
prompt
unless l = lex
throw :TERM_INPUT if @line == ''
else
.
<10> expected but was
<12>.
```
https://github.com/ruby/irb/commit/752d5597ab
* [ruby/reline] Degenerate the terminal size to [$LINES, $COLUMNS] if it is unknown
This is a workaround for https://github.com/ruby/irb/issues/50
https://github.com/ruby/reline/commit/5725677d1a
* [ruby/irb] Fix newline depth with multiple braces
This commit fixes the check_newline_depth_difference method to multiple
open braces on one line into account. Before this change we were
subtracting from the depth in check_newline_depth_difference on
every open brace. This is the right thing to do if the opening and
closing brace are on the same line. For example in a method definition we
have an opening and closing parentheses we want to add 1 to our depth,
and then remove it.
```
def foo()
end
```
However this isn't the correct behavior when the brace spans multiple
lines. If a brace spans multiple lines we don't want to subtract from
check_newline_depth_difference and we want to treat the braces the same
way as we do `end` and allow check_corresponding_token_depth to pop the
correct depth.
Example of bad behavior:
```
def foo()
[
]
puts 'bar'
end
```
Example of desired behavior:
```
def foo()
[
]
puts 'bar'
end
```
https://github.com/ruby/irb/commit/7dc8af01e0
* text/readline/test_readline.rb - fix skip on Reline (#2743)
TestRelineAsReadline#test_input_metachar passes on MinGW
* Add "require 'openstruct'" what is forgotten
* [ruby/irb] Fix lib name of OpenStruct
https://github.com/ruby/irb/commit/1f3a84ab6b
* Add load path and require for ruby/ruby
* Rescue EOFError
If C-d is pressed before IRB is ready, IRB crashes because EOFError occurs.
* Complete indented and quoted string correctly
def foo
''.upca[TAB]
This will be completed to be:
def foo
''.upcase
The indent was gone. This commit fixes the bug.
* [ruby/irb] Fix crashing when multiple open braces per line
https://github.com/ruby/irb/issues/55
If we had put multiple open braces on a line the with no closing brace
spaces_of_nest array keeps getting '0' added to it. This means that when
we pop off of this array we are saying that we should be in position zero
for the next line. This is an issue because we don't always want to be
in position 0 after a closing brace.
Example:
```
[[[
]
]
]
```
In the above example the 'spaces_of_nest' array looks like this after
the first line is entered: [0,0,0]. We really want to be indented 4
spaces for the 1st closing brace 2 for the 2nd and 0 for the 3rd. i.e.
we want it to be: [0,2,4].
We also saw this issue with a heredoc inside of an array.
```
[<<FOO]
hello
FOO
```
https://github.com/ruby/irb/commit/80c69c8272
* Support history-size in .inputrc correctly
* Introduce an abstracted structure about the encoding of Reline
The command prompt on Windows always uses Unicode to take input and print
output but most Reline implementation depends on Encoding.default_external.
This commit introduces an abstracted structure about the encoding of Reline.
* Remove an unused setting variable
* Use Reline.encoding_system_needs if exists
* Add tests for vi_insert and vi_add
* Implement vi_insert_at_bol and vi_add_at_eol
* [ruby/reline] Implement vi_to_next_char
https://github.com/ruby/reline/commit/066ecb0a21
* [ruby/reline] Implement vi_prev_char and vi_to_prev_char
https://github.com/ruby/reline/commit/0ad3ee63fa
* [ruby/readline-ext] Include ruby/assert.h in ruby/ruby.h so that assertions can be there
https://github.com/ruby/readline-ext/commit/4d44c12832
* Stop using minitest dependent methods
* Skip a test that uses assert_ruby_status if it doesn't exist
* Use omit instead of skip
* Check DONT_RUN_RELINE_TEST envvar
* [ruby/irb] Add newline_before_multiline_output
https://github.com/ruby/irb/commit/9eb1801a66
* [ruby/irb] Fix compatibility with rails before 5.2
Rails before 5.2 added Array#append as an alias to Array#<< ,
so that it expects only one argument.
However ruby-2.5 added Array#append as an alias to Array#push
which takes any number of arguments.
If irb completion is used in `rails c` (for example "IO.<tab>")
it fails with:
irb/completion.rb:206:in `<<': wrong number of arguments (given 3, expected 1) (ArgumentError)
Using Array#push instead of Array#append fixes compatibility.
https://github.com/ruby/irb/commit/5b7bbf9c34
* Reline: Use a more robust detection of MinTTY
The previous detection per get_screen_size fails when stdout is passed
to a pipe. That is the case when running ruby tests in parallel ("-j" switch).
In this case Reline believes that it's running on MinTTY and the tests
are running with ANSI IOGate instead of the Windows adapter on MINGW.
So parallel test results were different to that of a single process.
This commit fixes these differencies.
The code is taken from git sources and translated to ruby.
NtQueryObject() is replaced by GetFileInformationByHandleEx(), because
NtQueryObject() is undocumented and is more difficult to use:
https://github.com/git-for-windows/git/blob/c5a03b1e29c69f3f06c8fabd92493edb73469176/compat/winansi.c#L558
* Reline: Fix changed test results due to change to UTF-8 on Windows
In commit f8ea2860b0cac1aec79978e6c44168802958e8af the Reline encoding
for native windows console was changed to hardcoded UTF-8.
This caused failures in reline and readline tests, but they were hidden,
because parallel ruby tests incorrectly used Reline::ANSI as IOGate.
Tests failures were raised in single process mode, but not with -j switch.
This patch corrects encodings on native Windows console.
* [ruby/irb] [ruby/irb] Rewrite an expression to detect multiline
https://github.com/ruby/irb/commit/ed5cf375a6
https://github.com/ruby/irb/commit/5b7bbf9c34
* [ruby/reline] Implement vi_change_meta
https://github.com/ruby/reline/commit/8538e0e10f
* Always refer to Reline::IOGate.encoding
* Always use UTF-8 for Reline::GeneralIO on Windows
* Use test_mode on Reline::History::Test for encoding
* [ruby/reline] Support GNOME style Home/End key sequences [Bug #16510]
https://github.com/ruby/reline/commit/788f0df845
* [ruby/irb] Add a new easter egg: dancing ruby
https://github.com/ruby/irb/commit/e37dc7e58e
* [ruby/irb] Exclude useless files from RDoc
https://github.com/ruby/irb/commit/8f1ab2400c
* [ruby/irb] Exclude useless files from RDoc
* Fix inaccuracy in encoding tests
These tests assume
Encoding.find('locale') == Encoding.find('external')
and fail if they are distinct.
* [ruby/reline] Fix Reline::Windows#scroll_down
I mistook Right and Bottom.
https://github.com/ruby/reline/commit/8be401c5f5
* [ruby/reline] Bypass cursor down when a char is rendered at eol on Windows
A newline is automatically inserted if a character is rendered at eol on
Windows command prompt.
https://github.com/ruby/reline/commit/4bfea07e4a
* [ruby/reline] Organize special keys escape sequences
https://github.com/ruby/reline/commit/41deb1a3d9
* [ruby/readline-ext] Remove unnecessary -I$(top_srcdir) when it's an individual gem
https://github.com/ruby/readline-ext/commit/efaca4a5f4
* [ruby/readline-ext] Check TestRelineAsReadline existance
https://github.com/ruby/readline-ext/commit/c0a6303168
* [ruby/readline-ext] The ruby/assert.h is adopted by Ruby 2.7 or later
https://github.com/ruby/readline-ext/commit/106c31fc1b
* Revert "[ruby/readline-ext] Include ruby/assert.h in ruby/ruby.h so that assertions can be there"
This reverts commit 425b2064d394639101854c83a061a0918b33b857.
This cherry-pick was a mistake.
* [ruby/readline-ext] Use require check instead of DONT_RUN_RELINE_TEST env
https://github.com/ruby/readline-ext/commit/1df99d1481
* [ruby/readline-ext] Add spec.extensions
https://github.com/ruby/readline-ext/commit/8c33abb13c
* [ruby/readline-ext] Use rake/extensiokntask to build
https://github.com/ruby/readline-ext/commit/b0b5f709bd
* Fix readline build dependency
* [ruby/irb] Add test_complete_symbol
https://github.com/ruby/irb/commit/dbbf086c1f
* [ruby/irb] Check doc namespace correctly
IRB::InputCompletor::PerfectMatchedProc crashes when doc not found because a
variable name was incorrect.
https://github.com/ruby/irb/commit/889fd4928f
* [ruby/irb] Fix auto indent with closed brace
A closed brace in auto-indent shouldn't affect the next brace in the same line,
but it behaves like below:
p() {
}
It's a bug.
https://github.com/ruby/irb/commit/fbe59e344f
* [ruby/irb] Use 0.step instead of (..0).each for Ruby 2.5
https://github.com/ruby/irb/commit/5d628ca40e
* Revert "[ruby/irb] Add test_complete_symbol"
This reverts commit 3af3431c2c145134996e66f3d8d9ade8ad81bde0.
* [ruby/irb] fix reserved words and completion for them
https://github.com/ruby/irb/commit/6184b227ad
* Add test_complete_symbol
The previous version of the test method used a symbol, ":abcdefg" to complete
but longer symbols that can be completed are defined by other test methods of
other libs.
* test/irb/test_completion.rb: suppress a warning: unused literal ignored
* [ruby/reline] Use IO#write instead of IO#print
IO#print always adds a string of $\ automatically.
https://github.com/ruby/reline/commit/a93119c847
* [ruby/irb] Version 1.2.2
https://github.com/ruby/irb/commit/a71753f15a
* [ruby/reline] Version 0.1.3
https://github.com/ruby/reline/commit/ea2b182466
* [ruby/irb] Include easter-egg.rb in gemspec
`irb` doesn't run because this file isn't included in the gem.
https://github.com/ruby/irb/commit/73cda56d25
* [ruby/irb] Version 1.2.3
https://github.com/ruby/irb/commit/dd56e06df5
* support multi-run test for test_readline.rb
* [ruby/irb] `yield` outside method definition is a syntax error
https://github.com/ruby/irb/commit/dbc7b059c7
* test/readline - allow ENV control of test class creation
In ruby/ruby, the tests run on both readline & reline by creating four test classes:
```
TestReadline
TestReadlineHistory
TestRelineAsReadline
TestRelineAsReadlineHistory
```
Reline inports the test files and uses them in its CI. Adding the ENV control allows it to only run the `TestRelineAsReadline` classes.
* Omit test_using_quoting_detection_proc_with_multibyte_input temporarily for random order test
* support random order test.
test_readline:
HISTORY should be empty.
test_using_quoting_detection_proc:
test_using_quoting_detection_proc_with_multibyte_input:
Readline.completer_quote_characters= and
Readline.completer_word_break_characters= doesn't accept nil,
so skip if previous values are nil.
* Set Readline.completion_append_character = nil always
GNU Readline add a white space when Readline.completion_append_character is
not initialized.
* Fix a typo [ci skip]
* skip test if Reline.completion_proc is nil.
Some other tests can set Reline.completion_proc, so if it is nil,
simply skip this test.
* Reset Reline.point
TestRelineAsReadline#test_insert_text expects Readline.point == 0
at the beginning of the test, but a test violate this assumption.
* Convert incompatible encoding symbol names
* Ignore incompatible convert of symbols
* Add workaround for test-bundler failure
https://github.com/ruby/actions/runs/500526558?check_suite_focus=true#step:16:127
```
Failures:
1) Bundler.setup when Bundler is bundled doesn't blow up
Failure/Error: expect(err).to be_empty
expected `"fatal: not a git repository (or any of the parent directories): .git\nfatal: not a git repository (o...the parent directories): .git\nfatal: not a git repository (or any of the parent directories): .git".empty?` to return true, got false
Commands:
$ /home/runner/work/actions/actions/snapshot-master/ruby \
-I/home/runner/work/actions/actions/snapshot-master/lib:/home/runner/work/actions/actions/snapshot-master/spec/bundler \
-rsupport/hax -rsupport/artifice/fail \
/home/runner/work/actions/actions/snapshot-master/libexec/bundle install --retry 0
Resolving dependencies...
Using bundler 2.1.4
Bundle complete! 1 Gemfile dependency, 1 gem now installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
# $? => 0
$ /home/runner/work/actions/actions/snapshot-master/ruby \
-I/home/runner/work/actions/actions/snapshot-master/lib:/home/runner/work/actions/actions/snapshot-master/spec/bundler \
-rsupport/hax -rsupport/artifice/fail \
/home/runner/work/actions/actions/snapshot-master/libexec/bundle exec ruby -e \
require\ \'bundler\'\;\ Bundler.setup
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
# $? => 0
# ./spec/bundler/runtime/setup_spec.rb:1056:in `block (3 levels) in <top (required)>'
# ./spec/bundler/spec_helper.rb:111:in `block (3 levels) in <top (required)>'
# ./spec/bundler/spec_helper.rb:111:in `block (2 levels) in <top (required)>'
# ./spec/bundler/spec_helper.rb:78:in `block (2 levels) in <top (required)>'
make: *** [yes-test-bundler] Error 1
```
* [ruby/irb] Unnamed groups are not captured when named groups are used
https://github.com/ruby/irb/commit/0a641a69b0
* [ruby/reline] Work with wrong $/ value correctly
https://github.com/ruby/reline/commit/962ebf5a1b
* [ruby/irb] Detect multiple lines output simplify
The old implementation performance test code:
require 'objspace'
puts "%.5g MB" % (ObjectSpace.memsize_of_all * 0.001 * 0.001)
/\A.*\Z/ !~ ('abc' * 20_000_000)
puts "%.5g MB" % (ObjectSpace.memsize_of_all * 0.001 * 0.001)
and run `time test.rb`:
2.5868 MB
62.226 MB
real 0m1.307s
user 0m0.452s
sys 0m0.797s
The new implementation performance test code:
require 'objspace'
puts "%.5g MB" % (ObjectSpace.memsize_of_all * 0.001 * 0.001)
('abc' * 20_000_000).include?("\n")
puts "%.5g MB" % (ObjectSpace.memsize_of_all * 0.001 * 0.001)
and run `time test.rb`:
2.5861 MB
62.226 MB
real 0m0.132s
user 0m0.088s
sys 0m0.042s
https://github.com/ruby/irb/commit/40d6610baf
* [ruby/reline] Suppress error in case INPUTRC env is empty
https://github.com/ruby/reline/commit/bce7e7562b
* [ruby/reline] Add yamatanooroti rendering test
https://github.com/ruby/reline/commit/f092519525
* [ruby/reline] Rename test suite name of yamatanooroti test
https://github.com/ruby/reline/commit/b0f32f5de4
* [ruby/reline] Add a comment why rescue yamatanooroti loading error on the test
https://github.com/ruby/reline/commit/2a8061daec
* [ruby/irb] Suppress crashing when EncodingError has occurred without lineno
https://github.com/ruby/irb/commit/13572d8cdc
* [ruby/reline] Suppress error when check ambiguous char width in LANG=C
https://github.com/ruby/reline/commit/623dffdd75
* [ruby/io-console] Enable only interrupt bits on `intr: true`
https://github.com/ruby/io-console/commit/baaf929041
* [ruby/io-console] bump up to 0.5.4
* [ruby/io-console] Update the minimum requirement of Ruby version
https://github.com/ruby/io-console/commit/73e7b6318a
* [ruby/io-console] Filter Ruby engine name rather than just /ruby/
This breaks tests using this path on JRuby because the `jruby`
executable turns into `jjruby` after the sub.
https://github.com/ruby/io-console/commit/e5951aa34c
* [ruby/io-console] bump up to 0.5.5
* [ruby/io-console] Prefer keyword arguments
https://github.com/ruby/io-console/commit/5facbfc4c8
* [ruby/io-console] [DOC] Improved about `intr:`
https://github.com/ruby/io-console/commit/82b630cd79
* [ruby/io-console] Just ignore the extension on other than CRuby
https://github.com/ruby/io-console/commit/41b6f09574
* [ruby/io-console] bump up to 0.5.6
Co-authored-by: KOBAYASHI Shuji <shuujii@gmail.com>
Co-authored-by: Ben <kanobt61@gmail.com>
Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
Co-authored-by: MSP-Greg <MSP-Greg@users.noreply.github.com>
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
Co-authored-by: Kenta Murata <mrkn@mrkn.jp>
Co-authored-by: Lars Kanis <lars@greiz-reinsdorf.de>
Co-authored-by: Lars Kanis <kanis@comcard.de>
Co-authored-by: Alan Wu <XrXr@users.noreply.github.com>
Co-authored-by: Hiroshi SHIBATA <hsbt@ruby-lang.org>
Co-authored-by: Nobuhiro IMAI <nov@yo.rim.or.jp>
Co-authored-by: Nick Lewis <nick@puppet.com>
Co-authored-by: S-H-GAMELINKS <gamelinks007@gmail.com>
Co-authored-by: Koichi Sasada <ko1@atdot.net>
Co-authored-by: Kazuhiro NISHIYAMA <zn@mbf.nifty.com>
Co-authored-by: Charles Oliver Nutter <headius@headius.com>
|
|
(cherry picked from commit 501f2c44e6ae79c02a5c4d0f872fc7fa77258fcf)
|
|
(cherry picked from commit c8d0bf0156878df03a71fffc97c44abf7333d5d7)
|
|
(cherry picked from commit 65dd50fc25f6522536d5c4749055384bde1f9371)
|
|
(cherry picked from commit f5c904c2a907013e22ff74bc3686952c5448d493)
|
|
(cherry picked from commit d25a4f413dce6ad3a8baaf61591415b9a8cce082)
|
|
ar_table can be converted to st_table just after `ar_do_hash()`
function which calls `#hash` method. We need to check
the representation to detect this mutation.
[Bug #16676]
(cherry picked from commit 4c019f5a626523e99e2827ed917802e3097c380d)
|