summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-10-22NEWS: Fix the example of Lazy#eagerv2_7_0_preview2Yusuke Endoh
2019-10-22NEWS: add an example for Lazy#eagerYusuke Endoh
2019-10-22NEWS: Make Net::FTP#features and #option more informativeYusuke Endoh
2019-10-22test/ruby/test_exception typo fixMSP-Greg
2019-10-22appveyor.yml - remove timezone & tzinfo gems from MSVC buildsMSP-Greg
Not compatible with concurrent-ruby dependency
2019-10-22Add a cron job to keep CPDEBUG workingAlan Wu
Notes: Merged: https://github.com/ruby/ruby/pull/2586
2019-10-22Fix build for CPDEBUG=1Alan Wu
The declarations went out-of-sync in dcfb7f6. Notes: Merged: https://github.com/ruby/ruby/pull/2586
2019-10-21Fix Fiber#transferJeremy Evans
Fiber#transfer previously made it impossible to resume the fiber if it was transferred to (no resuming the target of Fiber#transfer). However, the documentation specifies that you cannot resume a fiber that has transferred to another fiber (no resuming the source of Fiber#transfer), unless control is transferred back. Fix the code by setting the transferred flag on the current/source fiber, and unsetting the transferred flag on the target fiber. Fixes [Bug #9664] Fixes [Bug #12555] Notes: Merged: https://github.com/ruby/ruby/pull/2588 Merged-By: jeremyevans <code@jeremyevans.net>
2019-10-21Fallback to TCP in resolv if UDP bind raises EACCESJeremy Evans
Original patch from Andy Grimm. Fixes [Bug #10747] Notes: Merged: https://github.com/ruby/ruby/pull/2587
2019-10-22Arguments forwarding [Feature #16253]Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2575
2019-10-22NEWS: fixed method names [ci skip]Nobuyoshi Nakada
2019-10-22NEWS: fixed mark-up [ci skip]Nobuyoshi Nakada
2019-10-22* 2019-10-22 [ci skip]git
2019-10-22add an NEWS entry about [Feature #15575]Koichi Sasada
2019-10-22add a NEWS entry about Proc#to_s changeKoichi Sasada
2019-10-22fix NEWS entry about unbundled gemsKoichi Sasada
2019-10-21NEWS: fixed indents [ci skip]Nobuyoshi Nakada
2019-10-21NEWS: fix a typoYusuke Endoh
2019-10-21bignum.c (estimate_initial_sqrt): prevent integer overflowYusuke Endoh
`Integer.sqrt(0xffff_ffff_ffff_ffff ** 2)` caused assertion failure because of integer overflow. [ruby-core:95453] [Bug #16269]
2019-10-21NEWS: structured the "Language changes" sectionYusuke Endoh
There were too many items in the section in somewhat random order. This change creates the following five subsections: * Pattern matching * The spec of keyword arguments is changed towards 3.0 * Numbered parameter * proc/lambda without no block is deprecated * Other miscellaneous changes Also it adds a handful of example code.
2019-10-21[Bug #16121] adjusted indent [ci skip]Nobuyoshi Nakada
2019-10-21Stop making a redundant hash copy in Hash#dup (#2489)Dylan Thacker-Smith
* Stop making a redundant hash copy in Hash#dup It was making a copy of the hash without rehashing, then created an extra copy of the hash to do the rehashing. Since rehashing creates a new copy already, this change just uses that rehashing to make the copy. [Bug #16121] * Remove redundant Check_Type after to_hash * Fix freeing and clearing destination hash in Hash#initialize_copy The code was assuming the state of the destination hash based on the source hash for clearing any existing table on it. If these don't match, then that can cause the old table to be leaked. This can be seen by compiling hash.c with `#define HASH_DEBUG 1` and running the following script, which will crash from a debug assertion. ```ruby h = 9.times.map { |i| [i, i] }.to_h h.send(:initialize_copy, {}) ``` * Remove dead code paths in rb_hash_initialize_copy Given that `RHASH_ST_TABLE_P(h)` is defined as `(!RHASH_AR_TABLE_P(h))` it shouldn't be possible for a hash to be neither of these, so there is no need for the removed `else if` blocks. * Share implementation between Hash#replace and Hash#initialize_copy This also fixes key rehashing for small hashes backed by an array table for Hash#replace. This used to be done consistently in ruby 2.5.x, but stopped being done for small arrays in ruby 2.6.x. This also bring optimization improvements that were done for Hash#initialize_copy to Hash#replace. * Add the Hash#dup benchmark
2019-10-21add a NEWS entry about [Feature #15602]Koichi Sasada
2019-10-21Pass the called keyword arguments if `keyword_init`Nobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/2582
2019-10-21* expand tabs. [ci skip]git
Tabs were expanded because previously the file did not have any tab indentation. Please update your editor config, and use misc/expand_tabs.rb in the pre-commit hook.
2019-10-21Look up event ID offsets by token as indexNobuyoshi Nakada
2019-10-21st: Do error check only on non-RubyK.Takata
Notes: Merged: https://github.com/ruby/ruby/pull/2304
2019-10-21st: Add NULL checkingK.Takata
These are found by Coverity. Notes: Merged: https://github.com/ruby/ruby/pull/2304
2019-10-21Make suggestions order stable [Bug #16263]Nobuyoshi Nakada
As the result order of `DidYouMean::SpellChecker#correct` is undefined, keep the order of the original candidates.
2019-10-21test/optparse/test_did_you_mean.rb - fix suggestion orderMSP-Greg
Notes: Merged: https://github.com/ruby/ruby/pull/2581
2019-10-21DidYouMean can be an empty stub module [Bug #16263]Nobuyoshi Nakada
2019-10-21* 2019-10-21 [ci skip]git
2019-10-21test_exception - fix with & w/o did_you_meanMSP-Greg
See Ruby issue 16263 Notes: Merged: https://github.com/ruby/ruby/pull/2577
2019-10-20Also BDOT2 and BDOT3 are operatorsNobuyoshi Nakada
2019-10-20show BASERUBY version at configure.Koichi Sasada
2019-10-20Native MonitorMixin::ConditionVariable#waitKoichi Sasada
MonitorMixin::ConditionVariable#wait can be interrupted just after Monitor#exit_for_cond. So implementation in C.
2019-10-20delegate synchronize methodKoichi Sasada
Delegate MonitorMixin#synchronize body to Monitor#synchronize. It makes guarantee interrupt safe (because Monitor#synchronize is written in C). I thought Ruby implementation is also safe, but I got stuck failure <http://ci.rvm.jp/results/trunk_test@P895/2327639> so that I introduce this fix to guarantee interrupt safe.
2019-10-20make monitor.so for performance. (#2576)Koichi Sasada
Recent monitor.rb has performance problem because of interrupt handlers. 'Monitor#synchronize' is frequently used primitive so the performance of this method is important. This patch rewrite 'monitor.rb' with 'monitor.so' (C-extension) and make it faster. See [Feature #16255] for details. Monitor class objects are normal object which include MonitorMixin. This patch introduce a Monitor class which is implemented on C and MonitorMixin uses Monitor object as re-entrant (recursive) Mutex. This technique improve performance because we don't need to care atomicity and we don't need accesses to instance variables any more on Monitor class. Notes: Merged-By: ko1 <ko1@atdot.net>
2019-10-20* 2019-10-20 [ci skip]git
2019-10-20Fixed a typo [ci skip]Nobuyoshi Nakada
2019-10-19Extend Ripper DSL to set to pseudo variables other than `$$`Nobuyoshi Nakada
2019-10-18appveyor.yml - MinGW - update for MSYS2 / Mingw-w64 (#2573)MSP-Greg
MSYS source code comes from both gcc.gnu.org & Mingw-w64. Updates to the Mingw-w64 source broke the MinGW build step. Fixes the issue until Mingw-w64 updates their source, then it should be reverted, see comments in code.
2019-10-19* 2019-10-19 [ci skip]git
2019-10-19Fixed passing idNil as a SymbolNobuyoshi Nakada
2019-10-18Verbatim texts need more indent [ci skip]Nobuyoshi Nakada
And separate ruby script and executed example.
2019-10-18Use `_` instead of `_n_`Kazuhiro NISHIYAMA
2019-10-18NEWS: Mention that optparse now supports did_you_mean for unknown optionYusuke Endoh
2019-10-18Support DidYouMean by AmbiguousOption tooNobuyoshi Nakada
2019-10-18Defer adding additional info until getting the message of an errorNobuyoshi Nakada
2019-10-18Default DidYouMean.formatter to PlainFormatterNobuyoshi Nakada