summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2021-04-05merge revision(s) 856a9701fd13edbb9d5f0fa773082d312195df90:v2_7_3nagachika
Get rid of multibyte prefix to tmpdir --- test/ruby/test_require.rb | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)
2021-04-05Backport a tmpdir fix.nagachika
Remove other then alphanumeric and some punctuations considered filesystem-safe, instead of removing some unsafe chars only.
2021-04-05Backport rexml upstream bug fixes.nagachika
2021-03-20merge revision(s) a85ed626f18d1014d09fb37eb0a703976c3d2b53: [Backport #17731]nagachika
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(-)
2021-03-20merge revision(s) f748b911c9157a0bb86f38280ddfba72a55049b6: [Backport #17729]nagachika
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(-)
2021-03-20merge revision(s) 58660e943488778563b9e41005a601e9660ce21f: [Backport #17519]nagachika
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(-)
2021-03-20merge revision(s) 0dc95266e8c36dbc3bfdcb88d820cb7f897166d7:nagachika
Fix the failing test with XDG_CONFIG_HOME --- test/irb/test_init.rb | 4 ++++ 1 file changed, 4 insertions(+)
2021-03-20merge revision(s) ↵nagachika
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(-)
2021-03-20merge revision(s) ↵nagachika
e0dd072978e6c2c8180e75617e7ee37830caefa3,85f99f4b715a5954124d5014002c16652995b128: Fix errors when XDG_CONFIG_HOME points to non-writable directory `$HOME/.config` is not writable on CI because I think tests should not corrupt user's data. And GitHub Actions CI sets `XDG_CONFIG_HOME` since `Version: 20210309.1`. https://github.com/ruby/actions/runs/2130811016?check_suite_focus=true#step:16:301 ``` Errno::EACCES: Permission denied @ dir_s_mkdir - /home/runner/.config/irb ``` --- test/irb/test_cmd.rb | 2 ++ 1 file changed, 2 insertions(+) Try to fix errors in TestIRB::TestHistory too https://github.com/ruby/actions/runs/2137935523?check_suite_focus=true#step:9:562 ``` 1) Error: TestIRB::TestHistory#test_history_concurrent_use: Errno::EACCES: Permission denied @ dir_s_mkdir - /home/runner/.config/irb /home/runner/work/actions/actions/ruby/lib/fileutils.rb:253:in `mkdir' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:253:in `fu_mkdir' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:231:in `block (2 levels) in mkdir_p' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:229:in `reverse_each' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:229:in `block in mkdir_p' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:211:in `each' /home/runner/work/actions/actions/ruby/lib/fileutils.rb:211:in `mkdir_p' /home/runner/work/actions/actions/ruby/lib/irb/init.rb:355:in `rc_file_generators' /home/runner/work/actions/actions/ruby/lib/irb/init.rb:330:in `rc_file' /home/runner/work/actions/actions/ruby/test/irb/test_history.rb:170:in `block in assert_history' /home/runner/work/actions/actions/ruby/lib/tmpdir.rb:96:in `mktmpdir' /home/runner/work/actions/actions/ruby/test/irb/test_history.rb:168:in `assert_history' /home/runner/work/actions/actions/ruby/test/irb/test_history.rb:133:in `test_history_concurrent_use' ``` --- test/irb/test_history.rb | 2 ++ 1 file changed, 2 insertions(+)
2021-03-20merge revision(s) ↵nagachika
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(+)
2021-03-20merge revision(s) ebb96fa8808317ad53a4977bff26cf755d68077e: [Backport #17321]nagachika
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(-)
2021-03-20merge revision(s) c60aaed1856b2b6f90de0992c34771830019e021: [Backport #17130]nagachika
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(-)
2021-03-20merge revision(s) 9682db065158da5fa4ec8a3bc267da45b429b92c: [Backport ↵nagachika
#12838] [Backport #17658] Remove sender/message_id pair after response received in resolv Once a response for a given DNS request has been received (which requires a matching message id), the [sender, message_id] pair should be removed from the list of valid senders. This makes it so duplicate responses from the same sender are ignored. Fixes [Bug #12838] --- lib/resolv.rb | 2 +- test/resolv/test_dns.rb | 113 ++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 114 insertions(+), 1 deletion(-)
2021-02-27merge revision(s) ↵nagachika
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(-)
2021-02-20merge revision(s) eeacdcb9a073c7d8ad703e0dc9faf229a5ebbe3c: [Backport #17558]nagachika
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(-)
2021-02-20merge revision(s) 9241211538189a58b477bd55b539357617fd42ed: [Backport #17589]nagachika
Forward keyword arguments for Pathname#each_line [Bug #17589] --- ext/pathname/pathname.c | 4 ++-- test/pathname/test_pathname.rb | 26 ++++++++++++++++++++++++++ 2 files changed, 28 insertions(+), 2 deletions(-)
2021-02-20merge revision(s) 0036648a420f945624898568bb82bc5f83195d12: [Backport #17533]nagachika
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(-)
2021-02-20merge revision(s) 6f6dfdcc685077f0f85dcdd63843ecfc0f6fbfb6: [Backport #17523]nagachika
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(-)
2021-02-20merge revision(s) ↵nagachika
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(-)
2021-02-11merge revision(s) a55eb9a2af7950d180d9d31ffde2bce66710f44f: [Backport #17572]nagachika
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(-)
2021-02-11merge revision(s) ↵nagachika
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(-)
2021-01-30Merge RubyGems-3.1.6 [Bug #16926]nagachika
https://github.com/ruby/ruby/pull/4122
2020-12-31Add leading arguments support to arguments forwardingnagachika
Implements [Feature #16378]
2020-12-09Update rubygems to 3.1.5. [Bug #17381]nagachika
Add GlobalSign Root CA. https://github.com/rubygems/rubygems/pull/4100 https://github.com/rubygems/rubygems/pull/4105
2020-10-11merge revision(s) ↵nagachika
9718ff62c12c07ecf7f0e234343dca76ee1aa51d,20ad1017017ea736667d86fa0250dc1a39daefa1: [Backport #17211] Show stdout and stderr when history tests fail Remove system method for E2E testing because depends on ruby command
2020-10-01merge revision(s) ↵v2_7_2nagachika
0168094da28c146062db22e69cbd9316418310f9,cdef17096c03099f17ecf0af51f43faa0944f96d,b7d86e330c76b4f9615511307e1c40f4f2937c83: Use libSystem.dylib instead of libm.dylib and libc.dylib Because macOS 11.0(Big Sur) was removed libc and libm from `/usr/lib`. libSystem.dylib is also symlink. Use libSystem.B.dylib Workaroud for macOS Big Sur(11.0)
2020-09-30merge revision(s) ↵nagachika
07786edd66f59a529d6febb2e0fe901782991755,1917afa34bca55ba1ea578234132b7e4479ea3c9,0c611d7f4fce67c64bee4815f263c55ef15561c4: test/net/http/test_https.rb: Stop the error due to openssl 1.1.1h On some environments that uses OpenSSL 1.1.1h, the two tests now fail. http://rubyci.s3.amazonaws.com/android29-x86_64/ruby-master/log/20200924T062352Z.fail.html.gz https://github.com/ruby/ruby/runs/1159288773?check_suite_focus=true ``` 1) Failure: TestNetHTTPS#test_get [/data/data/com.termux/files/home/cb/tmp/build/20200924T062352Z/ruby/test/net/http/test_https.rb:47]: <"0\x82\x03\xED0\x82\x02\xD5\xA0\x03..."> expected but was <"0\x82\x03\xE30\x82\x02\xCB\xA0\x03...">. ``` Not sure why, but verify_callback now seems to receive only SERVER_CERT but not CA_CERT. It would be good to investigate the issue furthermore, but tentatively, I want to stop the failures. test/net/http/test_https.rb: the order of verify_callback seems to vary ... depending upon the environment. test/net/http/test_https.rb: The test logic was buggy The expected certs must be `[CA_CERT, SERVER_CERT]` before 1.1.1g and `[SERVER_CERT]` after 1.1.1h.
2020-09-29merge revision(s) 996af2ce086249e904b2ce95ab2fcd1de7d757be: [Backport ↵nagachika
#16345] [Backport #17000] Disable deprecation warning by the default [Feature #16345] And `-w` option turns it on.
2020-09-29merge revision(s) df14c758fc705c49c2aaf4c9276a8f7229438fbf: [Backport #17181]nagachika
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]
2020-09-16Merge latest readline-extaycabta
2020-09-16Merge IRB 1.2.6aycabta
2020-09-16Merge Reline 0.1.5aycabta
2020-09-15Merge RubyGems 3.1.4Hiroshi SHIBATA
2020-09-07Run a TracePoint test in an insolated processnagachika
to prevent a random failure like http://ci.rvm.jp/results/trunk-random2@phosphorus-docker/3024287
2020-09-07Fix a random test failure by TracePointnagachika
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
2020-09-06merge revision(s) ff5e66034006a875125581114cce19d46843b32a: [Backport #17015]nagachika
Added `NODE_SPECIAL_EXCESSIVE_COMMA` info to `ARGS` of `RubyVM::AbstractSyntaxTree`.
2020-09-06merge revision(s) 3e02cd518fbe4d91c2aca7fbc3c5aafa387d3cb7: [Backport #17149]nagachika
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.
2020-09-06merge revision(s) 11963da9e8e98821860fbb0c0f2adc118860c814: [Backport ↵nagachika
#16603] [Backport #17141] Check type of empty keyword [Bug #16603] Co-authored-by: Yusuke Endoh <mame@ruby-lang.org>
2020-09-05Revert "Don't display singleton class in Method#inspect unless method ↵nagachika
defined there" [Backport #16771] This reverts commit 0d24fb774d84d4a99454ce10fd343da00049a588.
2020-08-07merge revision(s) 8e189df32cacef4b21e357a590d349330532baf5: [Backport #17013]nagachika
Add operator info to `OP_ASGN2` of `RubyVM::AbstractSyntaxTree`.
2020-08-01merge revision(s) d05f04d27dd86c67e4a8dfff4392f806cf577bdf: [Backport #16931]nagachika
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]
2020-08-01Split test_defined_methodNobuyoshi Nakada
2020-08-01Fix typo in test namePeter Zhu
2020-08-01Test for [Bug #16669]Nobuyoshi Nakada
2020-08-01Split test_definedNobuyoshi Nakada
2020-07-26merge revision(s) 1b4d406e3a04032b6d01e92b6d184a16945c6ac3: [Backport ↵nagachika
#16498] [Backport #16914] Hash#transform_values should return a plain new Hash [Bug #16498]
2020-07-26partially merge revision adf709a78534c1483ba851ccb0490464ca31503c: [Backport ↵nagachika
#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
2020-07-25merge revision(s) cbe4f75ef802f13d05f94e42274b65a062bd3666: [Backport #16834]nagachika
Fix rb_profile_frame_classpath to handle module singletons Right now `SomeClass.method` is properly named, but `SomeModule.method` is displayed as `#<Module:0x000055eb5d95adc8>.method` which makes profiling annoying.
2020-07-25merge revision(s) 71c166e11e761dcaaa943f9b94da38f86ada1bdb: [Backport #16854]nagachika
Fixed argument forwarding in reserved word method [Bug #16854]
2020-07-25merge revision(s) 08529a61153e5c40f57a65272211357511d6e6db: [Backport #16798]nagachika
Compare environment variable names in those manor [Bug #16798]