summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2022-05-19[ruby/timeout] Remove redundant done? checkBenoit Daloze
* It's already checked inside #interrupt. https://github.com/ruby/timeout/commit/5f43254f81
2022-05-19[ruby/timeout] Synchronize all accesses to @doneBenoit Daloze
* So it is trivially correct. * Performance seems the same overall. https://github.com/ruby/timeout/commit/5e0d8e1637
2022-05-19[ruby/timeout] Handle Timeout + fork and add test for itBenoit Daloze
https://github.com/ruby/timeout/commit/4baee63b9b
2022-05-19[ruby/timeout] Reimplement Timeout.timeout with a single thread and a QueueBenoit Daloze
https://github.com/ruby/timeout/commit/2bafc458f1
2022-05-18[ruby/irb] Fix documents for .irbrc pathKouhei Yanagita
https://github.com/ruby/irb/commit/af99c01b0d
2022-05-16[ruby/set] Fix a typoKazuhiro NISHIYAMA
https://github.com/ruby/set/commit/71a876ae81
2022-05-16[rubygems/rubygems] Use `Array#concat` in `SpecSet#for` to save memoryDavid Rodríguez
On `rails/rails` repository Gemfile, running the following script ``` # script.rb require "bundler/setup" ``` #### Before ``` ➜ rails git:(main) ✗ BUNDLER_VERSION=2.4.0.dev ruby-memory-profiler --pretty --no-detailed --allocated-strings=0 --retained-strings=0 script.rb Total allocated: 24.37 MB (207937 objects) Total retained: 2.98 MB (34152 objects) ``` #### After ``` ➜ rails git:(main) ✗ BUNDLER_VERSION=2.4.0.dev ruby-memory-profiler --pretty --no-detailed --allocated-strings=0 --retained-strings=0 script.rb Total allocated: 22.27 MB (206856 objects) Total retained: 2.98 MB (34152 objects) ``` https://github.com/rubygems/rubygems/commit/2ea2523afd Co-authored-by: Josh Nichols <josh.nichols@gusto.com>
2022-05-16[rubygems/rubygems] Improve `bundler/setup` performance againDavid Rodríguez
On a different patch, it was noticed Ngam Pham that we are calling `LazySpecification#hash` many times, and simply memoizing that led to a very considerable performance improvement in his app. I noticed though that we shouldn't be calling `LazySpecification#hash` that many times, and I located the culprit at `SpecSet#for` where we were deduplicating the partial aggregated result on every iteration. It is enough to do it just once at the end. This leads on a 12% speedup on Rails repository Gemfile vs the previous 8% I was getting from memoizing `LazySpecification#hash`. Also, after this patch memoizing `LazySpecification#hash` has no effect in performance anymore. https://github.com/rubygems/rubygems/commit/68d00a9edd Co-authored-by: Ngan Pham <ngan@users.noreply.github.com>
2022-05-16[ruby/racc] [DOC] Remove stale `Object::ParseError` documentationNobuyoshi Nakada
https://github.com/ruby/racc/commit/4ecc13c9cb
2022-05-14[ruby/fileutils] [DOC] Enhanced RDoc for #ln ↵Burdette Lamar
(https://github.com/ruby/fileutils/pull/69) Enhanced RDoc for #ln https://github.com/ruby/fileutils/commit/79fc67f03f Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-05-14[ruby/logger] [DOC] Enhanced RDoc for Logger ↵Burdette Lamar
(https://github.com/ruby/logger/pull/77) Enhanced RDoc for Logger https://github.com/ruby/logger/commit/c601ed0370 Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-05-13[ruby/logger] Update lib/logger.rbBurdette Lamar
https://github.com/ruby/logger/commit/a5a2f2da4a Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-05-13[ruby/logger] Update lib/logger.rbBurdette Lamar
https://github.com/ruby/logger/commit/e6f2c64fc6 Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-05-13[ruby/logger] Update lib/logger.rbBurdette Lamar
https://github.com/ruby/logger/commit/3dc5a8d7a4 Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-05-13[ruby/logger] Update lib/logger.rbBurdette Lamar
https://github.com/ruby/logger/commit/98919e09e5 Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-05-13[ruby/logger] Update lib/logger.rbBurdette Lamar
https://github.com/ruby/logger/commit/073a892ad9 Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>
2022-05-13[ruby/logger] Update lib/logger.rbBurdette Lamar
https://github.com/ruby/logger/commit/6d91281f7f Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>
2022-05-13[ruby/logger] Update lib/logger.rbBurdette Lamar
https://github.com/ruby/logger/commit/34c0ba8baa Co-authored-by: Olle Jonsson <olle.jonsson@gmail.com>
2022-05-13[ruby/logger] Enhanced RDoc for LoggerBurdetteLamar
https://github.com/ruby/logger/commit/16556d06d1
2022-05-13[rubygems/rubygems] Fix `Gemfile.lock` versions leaking to `bundler/inline` ↵David Rodríguez
install output The lockfile is completely ignored in inline mode, yet the previous output would suggest it wasn't. https://github.com/rubygems/rubygems/commit/763125a745
2022-05-13[rubygems/rubygems] Normalize parameter nameDavid Rodríguez
The other sources use `options` which reads better. https://github.com/rubygems/rubygems/commit/a672f9d602
2022-05-12mkmf: Add a configure option to set verbose mode (V=1 or 0) in mkmf.rb.Jun Aruga
Note this change is only for `configure.ac`, not for Windows using `win32/configure.bat`. ``` $ ./configure --help | grep mkmf --enable-mkmf-verbose enable verbose in mkmf ``` Run the following command to enable the mkmf verbose mode. ``` $ ./configure --enable-mkmf-verbose $ grep MKMF_VERBOSE config.status S["MKMF_VERBOSE"]="1" ``` In this mkmf verbose mode, when compiling a native extension, the `rake compile` prints the compiling commands such as "gcc -I. <...> path/to/file" instead of "compiling path/to/file". ``` $ git clone https://github.com/deivid-rodriguez/byebug.git $ cd byebug $ bundle install --standalone $ bundle exec rake compile ... gcc -I. <...> path/to/file ... ``` Notes: Merged: https://github.com/ruby/ruby/pull/5879
2022-05-12[ruby/uri] Improve URI.register_scheme tests and automatically upcase the ↵Benoit Daloze
given scheme * Also add docs and mention current limitations. * For reference, https://stackoverflow.com/a/3641782/388803 mentions the valid characters in schemes. https://github.com/ruby/uri/commit/4346daac75
2022-05-12[ruby/uri] Add URI::Generic#decoded_#{user,password}Jeremy Evans
URI::Generic#{user,password} return the encoded values, which are not that useful if you want to do authentication with them. Automatic decoding by default would break backwards compatibility. Optional automatic decoding via a keyword to URI.parse would require threading the option through at least 3 other methods, and would make semantics confusing (user= takes encoded or unencoded password?) or require more work. Thus, adding this as a separate method seemed the simplest approach. Unfortunately, URI lacks a method for correct decoding. Unlike in www form components, + in earlier parts of the URI such as the userinfo section is treated verbatim and not as an encoded space. Add URI.#{en,de}code_uri_component methods, which are almost the same as URI.#{en,de}code_www_form_component, but without the special SP => + handling. Implements [Feature #9045] https://github.com/ruby/uri/commit/16cfc4e92f
2022-05-12[ruby/uri] Update file.rbFrank Schmitt
The module here is called `URI`, so it's probably reasonable to expect a requirement for the path to be RFC3986-compliant, but on the other hand, the class is called `File`, so it might be reasonable to expect that a path produced by e.g. the `File` class would be consumable by its `build` method (this fails if the filename contains e.g. a space). https://github.com/ruby/uri/commit/ef79789b83
2022-05-12[ruby/fileutils] Update lib/fileutils.rbBurdette Lamar
https://github.com/ruby/fileutils/commit/4771925fee Co-authored-by: Peter Zhu <peter@peterzhu.ca>
2022-05-12[ruby/fileutils] Enhanced RDoc for FileUtilsBurdetteLamar
https://github.com/ruby/fileutils/commit/a0ea474214
2022-05-12[ruby/rdoc] Fix dead link in RDoc::MarkupPeter Zhu
https://github.com/ruby/rdoc/commit/521c9ebd29
2022-05-11[ruby/fileutils] Enhanced RDoc for FileUtilsBurdetteLamar
https://github.com/ruby/fileutils/commit/c38fd02372
2022-05-11[ruby/fileutils] Enhanced RDoc for FileUtilsBurdetteLamar
https://github.com/ruby/fileutils/commit/7b60f2d63b
2022-05-11[rubygems/rubygems] Fix error message on metadata mismatchesDavid Rodríguez
Previously we were removing not installable specs. However, if those are the only ones, that would result in a bad error message. If we still choose them as a last resort, Bundler will later check metadata right before installing a give a proper error. This is a regression of https://github.com/rubygems/rubygems/commit/565549260be5 and the fix is to revert that commit. https://github.com/rubygems/rubygems/commit/bc18912257
2022-05-09[rubygems/rubygems] Cleanup old legacy codeDavid Rodríguez
https://github.com/rubygems/rubygems/commit/531d6b5fee
2022-05-09[ruby/net-http] Bump version to 0.2.2Hiroshi SHIBATA
https://github.com/ruby/net-http/commit/992d07cb41
2022-05-09[ruby/getoptlong] Fixup https://github.com/ruby/getoptlong/commit/39faa7b390f0Hiroshi SHIBATA
https://github.com/ruby/getoptlong/commit/c8b3c0c00d
2022-05-06[rubygems/rubygems] Fix typo in documentationDominik Bauernfeind
https://github.com/rubygems/rubygems/commit/800a973e00
2022-05-06[rubygems/rubygems] Update man page for `require` option in `bundle add` commandnobuyo
https://github.com/rubygems/rubygems/commit/08a0a5b7d1
2022-05-05[ruby/logger] Prefer String#[0, 1] over [0..0]Akira Matsuda
[0..0] internally creates an extra Array object, and so is slower and much more memory consuming https://github.com/ruby/logger/commit/20616ad34a
2022-05-04[rubygems/rubygems] Also speed up the case when nothing changedDavid Rodríguez
https://github.com/rubygems/rubygems/commit/fa0ac74883
2022-05-04[rubygems/rubygems] Make looping more concise with `select`David Rodríguez
https://github.com/rubygems/rubygems/commit/c43d5f979a
2022-05-04[rubygems/rubygems] Don't converge specs in frozen modeDavid Rodríguez
https://github.com/rubygems/rubygems/commit/ea09bc4680
2022-05-03[ruby/getoptlong] Enhanced RDoc for GetoptLong ↵Burdette Lamar
(https://github.com/ruby/getoptlong/pull/4) Detailed introductory material. https://github.com/ruby/getoptlong/commit/1544f2fb7b
2022-04-29[rubygems/rubygems] Generalize description to account for different push serversMatthias Viehweger
https://github.com/rubygems/rubygems/commit/cbf13edd3a
2022-04-29[rubygems/rubygems] Clarify description of owner-flagsMatthias Viehweger
https://github.com/rubygems/rubygems/commit/28864b1057
2022-04-28Merge ↵Hiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/3f7d0352e84b29d4a2d4cd93b31e5ebdb5f79cc6 Notes: Merged: https://github.com/ruby/ruby/pull/5669
2022-04-28Merge rubygems master 1e4eda741d732ca1bd7031aef0a16c7348adf7a5Hiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/5669
2022-04-28[rubygems/rubygems] All supported rubies have `File.realpath`David Rodríguez
https://github.com/rubygems/rubygems/commit/c60ed4878c Notes: Merged: https://github.com/ruby/ruby/pull/5669
2022-04-28[rubygems/rubygems] Add missing `open3` requiresDavid Rodríguez
https://github.com/rubygems/rubygems/commit/06ad654120 Notes: Merged: https://github.com/ruby/ruby/pull/5669
2022-04-28Merge RubyGems/Bundler masterHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/fe96fb6e2ac5a8b6df5e852470d11fa854301eca Notes: Merged: https://github.com/ruby/ruby/pull/5669
2022-04-28[rubygems/rubygems] Fix missing required rubygems version when using old APIsDavid Rodríguez
A while ago, we fixed resolution when using old dependency endpoints to also consider metadata dependencies, by requesting the full gemspec from the marsahaled index, which includes this information as opposed to these old APIs. This has made resolution slower, but correct, but also introduced the issue that some old marshaled gemspecs don't include the `required_rubygems_version` field because they were created with a RubyGems version that predates its addition. Use a default value in this case. https://github.com/rubygems/rubygems/commit/5dc94afcc0 Co-authored-by: Ilya Dudarenko <i.dudarenko@tinkoff.ru>
2022-04-28[ruby/net-http] Bump version to 0.2.1.pre1Charles Oliver Nutter
https://github.com/ruby/net-http/commit/0017cc64c0