summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2020-02-18Fix typo s/test_ruby2_keywords_hash!/test_ruby2_keywords_hash/Ryuta Kamizono
In #2818, `Hash.ruby2_keywords!` has renamed to `Hash.ruby2_keywords_hash`.
2020-02-18hash.c: Add a feature to manipulate ruby2_keywords flagYusuke Endoh
It was found that a feature to check and add ruby2_keywords flag to an existing Hash is needed when arguments are serialized and deserialized. It is possible to do the same without explicit APIs, but it would be good to provide them as a core feature. https://github.com/rails/rails/pull/38105#discussion_r361863767 Hash.ruby2_keywords_hash?(hash) checks if hash is flagged or not. Hash.ruby2_keywords_hash(hash) returns a duplicated hash that has a ruby2_keywords flag, [Bug #16486]
2020-02-13Restart timer thread even after preparation failedNobuyoshi Nakada
If the timer thread is left stopped, memory crash or segfault can happen. [Bug #16624]
2020-01-30MinGW on Actions (#2791)MSP-Greg
* MinGW - skip spec in spec/ruby/optional/capi/thread_spec.rb C-API Thread function rb_thread_call_without_gvl -- runs a C function with the global lock unlocked and unlocks IO with the generic RUBY_UBF_IO stops/freezes spec tests See https://bugs.ruby-lang.org/issues/16265 * MinGW - skip test test/resolv/test_dns.rb Test times out in CI (both AppVeyor & Actions), cannot repo locally * MinGW - skip test test/ruby/test_thread_queue.rb * Add Actions mingw.yml
2020-01-30Fixed a segfault `GC.verify_compaction_references`Nobuyoshi Nakada
Which is by coercion of `Qundef`, when any keyword argument without `toward:` option is given. [Bug #16598]
2020-01-16`Regexp` in `MatchData` can be `nil`Nobuyoshi Nakada
`String#sub` with a string pattern defers creating a `Regexp` until `MatchData#regexp` creates a `Regexp` from the matched string. `Regexp#last_match(group_name)` accessed its content without creating the `Regexp` though. [Bug #16508]
2020-01-16script_compiled event on compile error.Koichi Sasada
script_compiled event for TracePoint should not be invoked on compile error (SyntaxError) because it is not "compiled". [Bug #16459]
2019-12-25range.c: Range#min with a beginless one now raise an explicit exceptionYusuke Endoh
[Bug #16450]
2019-12-25^D on non-empty line in vi mode behaves like Enteraycabta
2019-12-24Scale sleeping times to wait for the OS operationsNobuyoshi Nakada
2019-12-24The delete-char-or-list shows completed list when called at end of lineaycabta
It doesn't behave the same as the delete-char.
2019-12-24Synchronize with a Queue instead of sleepingNobuyoshi Nakada
2019-12-24Revert "Scale sleeping times"Koichi Sasada
This reverts commit e57d6194218efc73c30f3fed9dd321d2e357030b. Test fails: http://ci.rvm.jp/results/trunk-gc-asserts@ruby-sky1/2518563 http://ci.rvm.jp/results/trunk-gc_compact@silicon-docker/2518533
2019-12-24Scale sleeping timesNobuyoshi Nakada
2019-12-24Get rid of false positive misspellingsNobuyoshi Nakada
[Bug #16437]
2019-12-24[ruby/rdoc] Support newline in the middle of constant definitionaycabta
https://github.com/ruby/rdoc/commit/74d3984324
2019-12-24[ruby/rdoc] Treat Proc#call syntax sugar for constant correctlyaycabta
https://github.com/ruby/rdoc/commit/957d041ae0
2019-12-23Reword keyword arguments warning messages to convey these are deprecation ↵Marc-Andre Lafortune
warnings
2019-12-23ObjectSpace._id2ref should check liveness.Koichi Sasada
objspace->id_to_obj_tbl can contain died objects because of lazy sweep, so that it should check liveness.
2019-12-23Port ↵Yuki Nishijima
https://github.com/ruby/did_you_mean/commit/dd1dd86e6c3188c36224d5dd4389676e6653a727
2019-12-23Revert "Should return "." for File.extname("file.") also on Windows"NAKAMURA Usaku
We want to introduce consistency and better compatibility with unixen, but the Windows APIs doues not have consistency fundamentally and we can not found any logical way... This reverts commit 61aff0cd189e67fa6f2565639ad0128fa33b88fc.
2019-12-22fix a thread test.Koichi Sasada
* Use Queue for synchronization. * Don't use `sleep 0.2` and use `th.join` because created thread can raise an exception after 0.2 seconds.
2019-12-22compile.c: avoid newarraykwsplat for argumentsv2_7_0_rc2Yusuke Endoh
`foo(*rest, post, **empty_kw)` is compiled like `foo(*rest + [post, **empty_kw])`, and `**empty_kw` is removed by "newarraykwsplat" instruction. However, the method call still has a flag of KW_SPLAT, so "post" is considered as a keyword hash, which caused a segfault. Note that the flag cannot be removed if "empty_kw" is not always empty. This change fixes the issue by compiling arguments with "newarray" instead of "newarraykwsplat". [Bug #16442]
2019-12-22Should return "." for File.extname("file.") also on WindowsNAKAMURA Usaku
But not changes another cases, such as "file.rb." [Bug #15267]
2019-12-21Kernel#lambda: return forwarded block as non-lambda procAlan Wu
Before this commit, Kernel#lambda can't tell the difference between a directly passed literal block and one passed with an ampersand. A block passed with an ampersand is semantically speaking already a non-lambda proc. When Kernel#lambda receives a non-lambda proc, it should simply return it. Implementation wise, when the VM calls a method with a literal block, it places the code for the block on the calling control frame and passes a pointer (block handler) to the callee. Before this commit, the VM forwards block arguments by simply forwarding the block handler, which leaves the slot for block code unused when a control frame forwards its block argument. I use the vacant space to indicate that a frame has forwarded its block argument and inspect that in Kernel#lambda to detect forwarded blocks. This is a very ad-hoc solution and relies *heavily* on the way block passing works in the VM. However, it's the most self-contained solution I have. [Bug #15620] Notes: Merged: https://github.com/ruby/ruby/pull/2289
2019-12-21test/ruby/test_pattern_matching.rb: suppress "unused variable" warningYusuke Endoh
2019-12-20Added `-W:experimental` command line optionNobuyoshi Nakada
[Feature #16420]
2019-12-20Added `experimental` warning categoryNobuyoshi Nakada
[Feature #16420]
2019-12-20Added -W: command line optionNobuyoshi Nakada
To manage `Warning[category]` flags. Only `-W:deprecated` and `-W:no-deprecated` are available now. [Feature #16345]
2019-12-20vm_args.c: rephrase the warning message of keyword argument separationYusuke Endoh
(old) test.rb:4: warning: The last argument is used as the keyword parameter test.rb:1: warning: for `foo' defined here; maybe ** should be added to the call? (new) test.rb:4: warning: The last argument is used as keyword parameters; maybe ** should be added to the call test.rb:1: warning: The called method `foo' is defined here
2019-12-20Refined the warning message for $, and $;Nobuyoshi Nakada
[Bug #16438]
2019-12-20Refined the warning message for numbered-parameter like variablesNobuyoshi Nakada
[Bug #16438]
2019-12-20Refined the warning message for numbered-parameter like variablesNobuyoshi Nakada
[Bug #16438]
2019-12-20Makes the receiver to FrozenError.new a keyword parameterNobuyoshi Nakada
[Feature #16419]
2019-12-20Fixed misspellingsNobuyoshi Nakada
Fixed misspellings reported at [Bug #16437], for default gems.
2019-12-20Merge RubyGems 3.1.2Hiroshi SHIBATA
2019-12-20Fixed misspellingsNobuyoshi Nakada
Fixed misspellings reported at [Bug #16437], only in ruby and rubyspec.
2019-12-20Warn also numbered parameter like methodsNobuyoshi Nakada
2019-12-20Warn also numbered parameter like parametersNobuyoshi Nakada
[Feature #16433]
2019-12-19Manage deprecation warnings about keyword argumentNobuyoshi Nakada
2019-12-19Made the warning for deprecated constants follow the category flagNobuyoshi Nakada
2019-12-18Use a temporary file for chown testNobuyoshi Nakada
Errno::EROFS may occur when the source tree is placed in a read-only filesystem.
2019-12-18[ruby/io-console] Skip Interrupt test on LinuxNobuyoshi Nakada
Hangs up only in ruby/ruby on Travis-CI. https://github.com/ruby/io-console/commit/de39aa6dd6
2019-12-18[ruby/io-console] Set raw mode strictly same as cfmakerawNobuyoshi Nakada
* Default VMIN and VTIME to minimum input. * Disable parity check bits explicitly. * Disable all bits for flow control on input. Co-Authored-By: NARUSE, Yui <naruse@airemix.jp> https://github.com/ruby/io-console/commit/5ce201a686
2019-12-18Revert "Skip interruptible raw mode test on Travis-CI"Nobuyoshi Nakada
This reverts commit 65731a1330ed02691e3c343d2feeb8d0a72af3fd.
2019-12-18[ruby/io-console] Skip interruptNobuyoshi Nakada
https://github.com/ruby/io-console/commit/8ed5a2bcc3
2019-12-17[ruby/io-console] Timeout in the child processNobuyoshi Nakada
https://github.com/ruby/io-console/commit/b8411689a5
2019-12-17[ruby/io-console] Use IO.console instead of STDINNobuyoshi Nakada
https://github.com/ruby/io-console/commit/9e3ec5b936
2019-12-17Skip interruptible raw mode test on Travis-CINobuyoshi Nakada
2019-12-17[ruby/logger] Fixed leaked tempfileNobuyoshi Nakada
https://github.com/ruby/logger/commit/fb3eff153f