summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2019-11-07Promote benchmark to default gemsHiroshi SHIBATA
2019-11-07Promote delegate to default gemsHiroshi SHIBATA
2019-11-07Promote pstore to default gemsHiroshi SHIBATA
2019-11-07Promote getoptlong to default gemsHiroshi SHIBATA
2019-11-07Promote open3 to default gemsHiroshi SHIBATA
2019-11-07Promote singleton to default gemsHiroshi SHIBATA
2019-11-06Time#strftime does not support `%Q`Kazuhiro NISHIYAMA
``` % ruby -r date -e 't=Time.utc(2001,2,3,4,5,6,7);p t; p [t, t.to_date, t.to_datetime].map{|d|d.strftime("%Q")}' 2001-02-03 04:05:06.000007 UTC ["%Q", "981158400000", "981173106000"] ```
2019-11-05Only taint on Ruby <2.7Jeremy Evans
Ruby 2.7 deprecates taint and it no longer has an effect.
2019-11-05Only untaint line on Ruby <2.7Jeremy Evans
Untaint is deprecated and has no effect on Ruby 2.7+.
2019-11-04Use ident hash for top-level recursion checkJohn Hawthorn
We track recursion in order to not infinite loop in ==, inspect, and similar methods by keeping a thread-local 1 or 2 level hash. This allows us to track when we have seen the same object (ex. using inspect) or same pair of objects (ex. using ==) in this stack before and to treat that differently. Previously both levels of this Hash used the object's memory_id as a key (using object_id would be slow and wasteful). Unfortunately, prettyprint (pp.rb) uses this thread local variable to "pretend" to be inspect and inherit its same recursion behaviour. This commit changes the top-level hash to be an identity hash and to use objects as keys instead of their object_ids. I'd like to have also converted the 2nd level hash to an ident hash, but it would have prevented an optimization which avoids allocating a 2nd level hash for only a single element, which we want to keep because it's by far the most common case. So the new format of this hash is: { object => true } (not paired) { lhs_object => rhs_object_memory_id } (paired, single object) { lhs_object => { rhs_object_memory_id => true, ... } } (paired, many objects) We must also update pp.rb to match this (using identity hashes). Notes: Merged: https://github.com/ruby/ruby/pull/2644
2019-11-04Fixed a typoNobuyoshi Nakada
2019-11-04[ruby/racc] Strip trailing whitespaces at the last line of actionsNobuyoshi Nakada
https://github.com/ruby/racc/commit/a887ebe529
2019-11-02Use prompt_list to calculate height by linesaycabta
2019-10-31Fix verbose warning being emittedJeremy Evans
Fixes Ruby Bug 16281.
2019-10-31[ruby/fileutils] Remove use of untaint on Ruby 2.7 to avoid deprecation warningsJeremy Evans
https://github.com/ruby/fileutils/commit/5ac9a8a1f7
2019-10-30Update the latest versions from upstream repository of raccHiroshi SHIBATA
2019-10-29[ruby/rdoc] Support different drive latters in include pathsaycabta
https://github.com/ruby/rdoc/commit/946d2592e2
2019-10-29Version 0.0.4aycabta
2019-10-26Improve Net::HTTP docs:zverok
* Make links from Net::GenericHTTPRequest work; * Document +dest+ param of HTTPResponse#read_body; * Slightly improve reference to particular response classes from HTTPResponse class docs. Notes: Merged: https://github.com/ruby/ruby/pull/2615
2019-10-26OptionParser: document into: argumentzverok
Notes: Merged: https://github.com/ruby/ruby/pull/2615
2019-10-26open-uri: change global docs to reflect that URI.open syntax is preferredzverok
Notes: Merged: https://github.com/ruby/ruby/pull/2615
2019-10-26Net::FTP: fix formatting problems for #status methodzverok
Notes: Merged: https://github.com/ruby/ruby/pull/2615
2019-10-26IRB: Document command evaluation history.zverok
Notes: Merged: https://github.com/ruby/ruby/pull/2615
2019-10-26Update ERB docszverok
* Actualize Notes about other templating engines; * Document #location= method. Notes: Merged: https://github.com/ruby/ruby/pull/2615
2019-10-26Make `(#methodname)` a link with --hyperlink-all optionaycabta
2019-10-26Make `(#methodname)` a linkNobuyoshi Nakada
2019-10-26[ruby/forwardable] Use Gemfile instead of ↵Hiroshi SHIBATA
Gem::Specification#add_development_dependency. https://github.com/ruby/forwardable/commit/1e7123a81b
2019-10-26[ruby/forwardable] Remove string allocation in def_{instance,single}_delegatorsJeremy Evans
https://github.com/ruby/forwardable/commit/1a994c90e1
2019-10-26[ruby/forwardable] Make def_{instance,single}_delegators skip :__send__ and ↵Jeremy Evans
:__id__ Previously, __send__ and __id__ were skipped if provided as strings, but not skipped if provided as symbols. Fixes Ruby Bug 8855. https://github.com/ruby/forwardable/commit/2e61c8c66c
2019-10-26[ruby/forwardable] Update spec.filesHiroshi SHIBATA
https://github.com/ruby/forwardable/commit/1b6991e589
2019-10-26[ruby/forwardable] Extracted VERSION constant for gemspecHiroshi SHIBATA
https://github.com/ruby/forwardable/commit/387758d45a
2019-10-25Rename old var name with new nameaycabta
2019-10-25[ruby/tracer] Use Gemfile instead of ↵Hiroshi SHIBATA
Gem::Specification#add_development_dependency. https://github.com/ruby/tracer/commit/9df7d7937b
2019-10-24Remove unsused output_method argumentJeremy Evans
Fixes Ruby Bug 9876.
2019-10-24[ruby/webrick] Don't check tainting in access log escapingJeremy Evans
Only untaint result on Ruby <2.7, as taint support is deprecated in Ruby 2.7+ and no longer has an effect. https://github.com/ruby/webrick/commit/4c430f9410
2019-10-24[ruby/webrick] Support literal IPv6 addresses in X-Forwarded-HostJeremy Evans
https://github.com/ruby/webrick/commit/6b6990ec81
2019-10-24[ruby/webrick] Remove the squishing of whitespace in header valuesJeremy Evans
While the stripping of header values is required by RFC 2616 4.2 and RFC 7230 3.2.4, the squishing is not and can break things, such as when one header contains an HMAC of another header. Fixes Ruby Bug 7021. https://github.com/ruby/webrick/commit/8b96088a86
2019-10-24[ruby/webrick] bump version to 1.5.0Hiroshi SHIBATA
https://github.com/ruby/webrick/commit/00c281caa7
2019-10-24[ruby/webrick] Remove Webrick::HTTPResponse#to_sJeremy Evans
It is currently broken, and even if it worked, it can cause problems when debugging. See Ruby Bug 10715. https://github.com/ruby/webrick/commit/575dea8656
2019-10-24Revert "Fixed the require path for e2mmap version file."Hiroshi SHIBATA
This reverts commit ff953a003e03f5f070112ececefab4c07ff4cb0e.
2019-10-24Fixed the require path for e2mmap version file.Hiroshi SHIBATA
2019-10-24Treat only left alt key as meta-key on Windowsaycabta
On German keyboard, right alt key acts as like shift key. Ex. right-alt-8 is just "[". This input doesn't have meta-key statement.
2019-10-24Support forced enter insertion by Ctrl+Enter on Windowsaycabta
2019-10-23Suppress duplicated "require 'reline'"aycabta
2019-10-23Fix indent...aycabta
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-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-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-18Support DidYouMean by AmbiguousOption tooNobuyoshi Nakada
2019-10-18Defer adding additional info until getting the message of an errorNobuyoshi Nakada