summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
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-20use UTC to use previous day in midnightNARUSE, Yui
2019-12-20Fixed misspellingsNobuyoshi Nakada
Fixed misspellings reported at [Bug #16437], for default gems.
2019-12-20Merge RubyGems 3.1.2Hiroshi SHIBATA
2019-12-20shell.rb is no longer bundled [ci skip]Nobuyoshi Nakada
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-20Add `URI#open` to warning messageKazuhiro NISHIYAMA
2019-12-20* 2019-12-20 [ci skip]git
2019-12-20Warn also numbered parameter like parametersNobuyoshi Nakada
[Feature #16433]
2019-12-19Added rb_warn_deprecatedNobuyoshi Nakada
2019-12-19Manage deprecation warnings about keyword argumentNobuyoshi Nakada
2019-12-19Made the warning for deprecated constants follow the category flagNobuyoshi Nakada
2019-12-19Adjusted the formatNobuyoshi Nakada
2019-12-19* 2019-12-19 [ci skip]git
2019-12-18Refactor free page insertionAaron Patterson
I am trying to fix this error: http://ci.rvm.jp/results/trunk-gc_compact@silicon-docker/2491596 Somehow we have a page in the `free_pages` list that is full. This commit refactors the code so that any time we add a page to the `free_pages` list, we do it via `heap_add_freepage`. That function then asserts that the free slots on that page are not 0.
2019-12-18Merge bundler-2.1.1 from bundler/bundlerHiroshi SHIBATA
2019-12-18delete rb_vm_call()卜部昌平
Nobody uses it any longer.
2019-12-18describe mc_miss_reuse_call [ci skip]卜部昌平
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-18per-method serial number卜部昌平
Methods and their definitions can be allocated/deallocated on-the-fly. One pathological situation is when a method is deallocated then another one is allocated immediately after that. Address of those old/new method entries/definitions can be the same then, depending on underlying malloc/free implementation. So pointer comparison is insufficient. We have to check the contents. To do so we introduce def->method_serial, which is an integer unique to that specific method definition. PS: Note that method_serial being uintptr_t rather than rb_serial_t is intentional. This is because rb_serial_t can be bigger than a pointer on a 32bit system (rb_serial_t is at least 64bit). In order to preserve old packing of struct rb_call_cache, rb_serial_t is inappropriate. Notes: Merged: https://github.com/ruby/ruby/pull/2759
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-17Skip optimized method check for most method IDsJohn Hawthorn
Previously every time a method was defined on a module, we would recursively walk all subclasses to see if the module was included in a class which the VM optimizes for (such as Integer#+). For most method definitions we can tell immediately that this won't be the case based on the method's name. To do this we just keep a hash with method IDs of optimized methods and if our new method isn't in that list we don't need to check subclasses at all. Notes: Merged: https://github.com/ruby/ruby/pull/2752
2019-12-17Replace debug test with assertionJohn Hawthorn
It's a Ruby bug if this ever happens check it as an assertion instead of paying the cost of the check every time. Notes: Merged: https://github.com/ruby/ruby/pull/2752
2019-12-17Check type with BUILTIN_TYPE in method cache clearJohn Hawthorn
We know that this is a heap-allocated object (a CLASS, MODULE, or ICLASS) so we don't need to check if it is an immediate value. This should be very slightly faster. Notes: Merged: https://github.com/ruby/ruby/pull/2752
2019-12-17Define PREV_CLASS_SERIALJohn Hawthorn
Avoids genereating a "throwaway" sentinel class serial. There wasn't any read harm in doing so (we're at no risk of exhaustion and there'd be no measurable performance impact), but if feels cleaner that all class serials actually end up assigned and used (especially now that we won't overwrite them in a single method definition). Notes: Merged: https://github.com/ruby/ruby/pull/2752
2019-12-17Avoid revisiting seen nodes clearing method cacheJohn Hawthorn
rb_clear_method_cache_by_class calls rb_class_clear_method_cache recursively on subclasses, where it will bump the class serial and clear some other data (callable_m_tbl, and some mjit data). Previously this could end up taking a long time to clear all the classes if the module was included a few levels deep and especially if there were multiple paths to it in the dependency tree (ie. a class includes two modules which both include the same other module) as we end up revisiting class/iclass/module objects multiple times. This commit avoids revisiting the same object, by short circuiting when revisit the same object. We can check this efficiently by comparing the class serial of each object we visit with the next class serial at the start. We know that any objects with a higher class serial have already been visited. Notes: Merged: https://github.com/ruby/ruby/pull/2752
2019-12-18* 2019-12-18 [ci skip]v2_7_0_rc1git
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-17Squelch filter-branch warning and sleepingNobuyoshi Nakada
2019-12-17[rubygems/rubygems] Move `require uri` to source_listmihaibuzgau
https://github.com/rubygems/rubygems/commit/c6b4df5bfc
2019-12-17Use while instead of loopKazuhiro NISHIYAMA
Notes: Merged: https://github.com/ruby/ruby/pull/2758
2019-12-17disable assertion.Koichi Sasada
This assertion is not needed because we found the bug. ba11a74745.
2019-12-17Skip interruptible raw mode test on Travis-CINobuyoshi Nakada
2019-12-17[rubygems/rubygems] require `uri` in source.rbmihaibuzgau
https://github.com/rubygems/rubygems/commit/8de4d0272e
2019-12-17convert macros into inline functions卜部昌平
For better readability.
2019-12-17Remove an unnecessary variableaycabta
2019-12-17Remove unnecessary double bangs from Pathname#root?Masataka Pocke Kuwabara
Notes: Merged: https://github.com/ruby/ruby/pull/2732
2019-12-17[ruby/logger] Fixed leaked tempfileNobuyoshi Nakada
https://github.com/ruby/logger/commit/fb3eff153f
2019-12-17Remove unnecessary branchesaycabta
2019-12-17[ruby/io-console] bump up to 0.5.2Nobuyoshi Nakada
2019-12-17[ruby/io-console] Use TCSANOW to prevent from discarding the input bufferYusuke Endoh
TCSAFLUSH discards the buffer read before the mode change, which makes IRB ignore the buffer input immediately after invoked. TCSANOW preserves the buffer. https://github.com/ruby/io-console/commit/b362920182
2019-12-17[ruby/io-console] Disable implementation-defined special control charactersNobuyoshi Nakada
In raw mode with interrupt enabled. https://github.com/ruby/io-console/commit/e9e8e3ff17