summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2025-11-08unicode_normalize/normalize.rb: stop using `it` special block parameter in ↵nagachika
ruby_3_3.
2025-11-08merge revision(s) 377aa2a336cc700485c699ac49330f2a58b74906: [Backport #21668]nagachika
[PATCH] Improve performance of UnicodeNormalize.canonical_ordering_one Use array_of_integer.sort! instead of buble-sort-like algorithm
2025-10-25[ruby/rubygems] Bump up vendored uri to 0.13.3nagachika
2025-10-09Merge URI-0.13.3Hiroshi SHIBATA
2025-07-19Bump up resolv-0.3.1 for Ruby 3.3Hiroshi SHIBATA
2025-05-18merge revision(s) b48b841378f80e16378ceb83f3b78e52df9ae023, ↵nagachika
2fe8b9cd3d308d754f3d33a948dfb1dd782a10dc: [Backport #21327] digest.so needs ruby/digest.h which is installed by build-ext Copy to path with the base name
2025-03-24[rubygems/rubygems] Support git 2.49David Rodríguez
One error message that we parse is now slightly different. https://github.com/rubygems/rubygems/commit/758528791d
2025-03-08Merge cgi-0.4.2Hiroshi SHIBATA
2025-03-08Merge uri-0.13.2Hiroshi SHIBATA
2024-10-21Merge syntax-suggest-2.0.1Hiroshi SHIBATA
2024-10-17Merge RubyGems-3.5.22 and Bundler-2.5.22Hiroshi SHIBATA
2024-10-17Merge RubyGems-3.5.21 and Bundler-2.5.21Hiroshi SHIBATA
2024-09-25Merge RubyGems-3.5.20 and Bundler-2.5.20Hiroshi SHIBATA
2024-09-25Merge RubyGems-3.5.19 and Bundler-2.5.19Hiroshi SHIBATA
2024-09-25Merge RubyGems-3.5.18 and Bundler-2.5.18Hiroshi SHIBATA
2024-09-25Merge RubyGems-3.5.17 and Bundler-2.5.17Hiroshi SHIBATA
2024-09-16[Bug #20737] Do not warn default gems to be promoted in Ruby 3.5 (#11613)Hiroshi SHIBATA
2024-09-05Merge reline-0.5.10 (#11558)Hiroshi SHIBATA
* Merge reline-0.5.8 * Merge reline-0.5.9 * Merge reline-0.5.10
2024-08-27Merge URI-0.13.1 for Ruby 3.3 (#11466)Hiroshi SHIBATA
Merge URI-0.13.1
2024-08-21Backport warning feature for bundled gems from master (#11420)Hiroshi SHIBATA
* Make sure to always use the right `warn` * lib/bundled_gems.rb: more reliable caller detection The `2` skipped frames went out of sync and now it should be `3`. Rather than just update the offset, we can implement a way that is adaptative as long as all require decorators are also called require. Also we should compute the corresponding `uplevel` otherwise the warning will still point decorators. Co-authored-by: "Hiroshi SHIBATA" <hsbt@ruby-lang.org> * Warn ostruct for Ruby 3.5 * Warn pstore for Ruby 3.5 * Mark rdoc as bundled gems at Ruby 3.5 * Warn to use win32ole without Gemfile for Ruby 3.5 * EXACT list is mostly same as SINCE list on bundled gems. * Mark to warn fiddle as bundled gems for Ruby 3.5 * Mark to warn logger as bundled gems for Ruby 3.5 * We should use uplevel:2 in another case. Like the following scenario with bootsnap, that frames are same or smaller than frame_to_skip(=3). --- "/Users/hsbt/.local/share/rbenv/versions/3.3-dev/lib/ruby/3.3.0/bundled_gems.rb:69:in `block (2 levels) in replace_require'" "/Users/hsbt/.local/share/gem/gems/bootsnap-1.18.4/lib/bootsnap/load_path_cache/core_ext/kernel_require.rb:30:in `require'" "test_warn_bootsnap.rb:11:in `<main>'" --- * Delete unnecessary rubocop disable comment * Show correct script name with sub-feature case * Skip to show script name with using ruby -r option * Don't show script name when bundle exec and call ruby script directly. * Pick word fix from 34adc07372c10170b8ca36111d216cbd8e4699be --------- Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net> Co-authored-by: Jean Boussier <jean.boussier@gmail.com> Co-authored-by: Kentaro Takeyama <75117116+obregonia1@users.noreply.github.com>
2024-07-30Update RubyGems 3.5.16 and Bundler 2.5.16 for Ruby 3.3 (#11252)Hiroshi SHIBATA
* Merge RubyGems-3.5.12 and Bundler-2.5.12 * Merge RubyGems-3.5.13 and Bundler-2.5.13 * Merge RubyGems-3.5.14 and Bundler-2.5.14 * Merge RubyGems-3.5.15 and Bundler-2.5.15 * Merge RubyGems-3.5.16 and Bundler-2.5.16
2024-07-22bundled_gems.rb: Add a fast path (#11221)Jean byroot Boussier
bundled_gems.rb: Add a fast path [Bug #20641] `Gem::BUNDLED_GEMS.warning?` adds a lot of extra work on top of `require`. When the call end up atually loading code the overhead is somewhat marginal. However it's not uncommon for code to go some late `require` in some paths, so it's expected that calling `require` with something already required is somewhat fast, and `bundled_gems.rb` breaks this assumption. To avoid this, we can have a fast path that in most case allow to short-circuit all the heavy computations. If we extract the feature basename and it doesn't match any of the bundled gems we care about we can return very early. With this change `require 'date'` is now only 1.33x slower on Ruby 3.3.3, than it was on Ruby 3.2.2, whereas before this change it was at least 100x slower. Co-authored-by: Jean Boussier <jean.boussier@gmail.com>
2024-06-05merge revision(s) f8abd24b1f28998157da1230b231419ef7b81722: [Backport #20522]Takashi Kokubun
Improve YJIT performance warning regression test [Bug #20522]
2024-06-04Merge RubyGems 3.5.11 and Bundler 2.5.11 for Ruby 3.3 (#10870)Hiroshi SHIBATA
Co-authored-by: Nobuyoshi Nakada <nobu@ruby-lang.org>
2024-05-28[Bug #20511] Update reline-0.5.7 (#10848)Hiroshi SHIBATA
* Update reline-0.5.7 * Update irb-1.13.1
2024-05-28[Bug #20450] Remove rubyarchdir from bootsnap pathsEugene Kenny
2024-05-28Fix error when default gem is loaded from `-r` optionMasataka Pocke Kuwabara
This patch fixes an error when a default gem that will be migrated to a bundled gem is loaded from `-r` option. Problem === `bundle exec ruby -rostruct -e ''` unexpectedly raises the following error: ```console $ ruby -v ruby 3.4.0dev (2024-04-08T02:39:00Z master 6f7e8e278f) [arm64-darwin21] $ bundle init && bundle install $ bundle exec ruby -rostruct -e '' /Users/kuwabara.masataka/.rbenv/versions/trunk/lib/ruby/3.4.0+0/bundled_gems.rb:111:in 'Gem::BUNDLED_GEMS.warning?': undefined method 'find' for nil (NoMethodError) caller = caller_locations(3, 3).find {|c| c&.absolute_path} ^^^^^ from /Users/kuwabara.masataka/.rbenv/versions/trunk/lib/ruby/3.4.0+0/bundled_gems.rb:75:in 'block (2 levels) in Kernel#replace_require' ``` Solution === This patch uses a safe navigation operator to fix this problem. By this change, the command will show the warning message correctly. ```console $ bundle exec ruby -rostruct -e '' warning: ostruct was loaded from the standard library, but will no longer be part of the default gems since Ruby 3.5.0. Add ostruct to your Gemfile or gemspec. ```
2024-05-28Ignore warnings on the bundled gems repoHiroshi SHIBATA
2024-05-28lib/bundled_gems.rb: dynamically ignore Kernel.require decoratorsJean Boussier
Followup: https://github.com/ruby/ruby/pull/10347 This avoid directly referencing bootsnap and zeitwerk, and also handle other gems that may decorate `require`.
2024-04-16Merge RubyGems 3.5.9 and Bundler 2.5.9 (Fixed CI at Ruby 3.3) (#10348)Hiroshi SHIBATA
* Merge RubyGems-3.5.6 and Bundler-2.5.6 * Merge RubyGems-3.5.7 and Bundler-2.5.7 * Merge RubyGems-3.5.8 and Bundler-2.5.8 * Partly reverted about https://github.com/rubygems/rubygems/pull/7483 * Merge RubyGems-3.5.9 and Bundler-2.5.9
2024-03-25Backport https://github.com/ruby/ruby/pull/10347 (#10349)Hiroshi SHIBATA
Fix incorrect warning target with Zeitwerk and support warning with Bootsnap.
2024-03-21CVE-2024-27281 for Ruby 3.3 (#10316)Hiroshi SHIBATA
Merge RDoc-6.6.3.1
2024-02-05Merge RubyGems 3.5.5 and Bundler 2.5.5 (#9676)Hiroshi SHIBATA
* Merge RubyGems-3.5.4 and Bundler-2.5.4 * Merge RubyGems-3.5.5 and Bundler-2.5.5 * Make tests play with upstream Ruby tests CI broke in https://github.com/ruby/ruby/pull/9604 because if any Ruby tests run `require 'net/http'`, they will pollute the `$LOADED_FEATURES` for the RubyGems tests. We can fix this by renaming the test default gem from `net-http` to `my-http`. See https://github.com/rubygems/rubygems/pull/7379#issuecomment-1901241299 for more details. --------- Co-authored-by: Stan Hu <stanhu@gmail.com>
2024-02-01Backport bundled_gems.rb for Ruby 3.3 (#9457)Hiroshi SHIBATA
racc is extracted at Ruby 3.3, not 3.4
2024-01-05Update net-* gems for Ruby 3.3 (#9418)Hiroshi SHIBATA
* Bump up net-ftp to 0.3.4 * Bump up net-smtp to 0.4.0.1 * Bump up net-imap to 0.4.9.1 * [ruby/net-http] Renew test certificates The private key is replaced with a public known test key published at [RFC 9500]. Also lifetime has been extended to 10 years from 4 years. [RFC 9500]: https://www.rfc-editor.org/rfc/rfc9500.html https://github.com/ruby/net-http/commit/4ab6c4a500 * Bump up net-http to 0.4.1 --------- Co-authored-by: Sorah Fukumori <her@sorah.jp>
2023-12-25Typofix under lib and test, tool directoriesHiroshi SHIBATA
2023-12-23[ruby/set] Bump version to 1.1.0Akinori MUSHA
https://github.com/ruby/set/commit/d6cab5bcc8
2023-12-23[ruby/set] Use the pattern argument instead of a blockAkinori MUSHA
https://github.com/ruby/set/commit/c63047c2ce
2023-12-23[ruby/set] The arity of initialize_clone is -1 in Ruby >= 3Akinori MUSHA
https://github.com/ruby/set/commit/32a9689696
2023-12-23[ruby/set] Drop support for Ruby 2Akinori MUSHA
https://github.com/ruby/set/commit/64dad673d8
2023-12-22RJIT: Prefer STDERR over $stderrTakashi Kokubun
When $stderr is redirected, you'll have no way to see why RJIT got broken. This reference must always be the actual stderr.
2023-12-23Merge RubyGems-3.5.3 and Bundler-2.5.3Hiroshi SHIBATA
2023-12-22RJIT: Distinguish Pointer with ArrayTakashi Kokubun
This is more convenient for accessing those fields.
2023-12-21RJIT: Avoid retaining unrelated local variables in memoryTakashi Kokubun
2023-12-21RJIT: Minimize string allocations in InsnCompilerTakashi Kokubun
2023-12-21RJIT: Convert opt_case_dispatch keys with #to_valueTakashi Kokubun
comptime_key is a Ruby object and the value is not valid in machine code. This PR also implements `CMP r/m64, imm32 (Mod 01: [reg]+disp8)` that is now needed for running mail.gem benchmark.
2023-12-21RJIT: Clean up unnecessary documentationTakashi Kokubun
2023-12-21RJIT: Fix a wrong comparison in set_local_typeTakashi Kokubun
2023-12-21RJIT: Fix unwanted shadowing in set_local_typeTakashi Kokubun
local_idx should not be overwritten.
2023-12-22Merge RubyGems-3.5.2 and Bundler-2.5.2Hiroshi SHIBATA