summaryrefslogtreecommitdiff
path: root/lib/rubygems
AgeCommit message (Collapse)Author
2022-08-23[rubygems/rubygems] Implement extra rules for libc versioningDavid Rodríguez
https://github.com/rubygems/rubygems/commit/7e976d790a
2022-08-23[rubygems/rubygems] Fix `gem install` still choosing musl incorrectlyDavid Rodríguez
https://github.com/rubygems/rubygems/commit/1b9f7f50a5
2022-08-23[rubygems/rubygems] Handle non-gnu libc on linux platforms in RubyGemsDavid Rodríguez
Attempting to install a gem published as both *-linux and *-linux-musl results in the incorrect gem being picked up, causing build failures due to binary incompatibility. This is caused by the `nil` wildcard swallowing the libc information upon version comparison. Handle the linux case by performing only non-wildcard equality on the version and asserting 'gnu' and nil equivalence, while preserving the current behaviour for other OSes. https://github.com/rubygems/rubygems/commit/9eead86abc Co-authored-by: Loic Nageleisen <[email protected]>
2022-08-23[rubygems/rubygems] Test platform's version-ness consistentlyLoic Nageleisen
The symmetry with the "for command line" case is made more apparent. https://github.com/rubygems/rubygems/commit/ab85d3558f
2022-08-09Merge rubygems/bundler HEAD.Hiroshi SHIBATA
Pick from https://github.com/rubygems/rubygems/commit/dfbb5a38114640e0d8d616861607f3de73ee0199 Notes: Merged: https://github.com/ruby/ruby/pull/6224
2022-08-05[rubygems/rubygems] Include backtrace with crashes by defaultDavid Rodríguez
https://github.com/rubygems/rubygems/commit/3cc3bfd371
2022-08-04[rubygems/rubygems] Warn dangling symlinksDavid Rodríguez
https://github.com/rubygems/rubygems/commit/425b78637f
2022-08-04[rubygems/rubygems] Extract entry.full_name to a variableDavid Rodríguez
https://github.com/rubygems/rubygems/commit/3973773005
2022-08-03Merge rubygems/bundler HEADHiroshi SHIBATA
Pick from https://github.com/rubygems/rubygems/commit/8331e63263081a6aa690d8025d2957f30c4e814a Notes: Merged: https://github.com/ruby/ruby/pull/6209
2022-08-03[rubygems/rubygems] fix platform matching for index specsIlya Dyakonov
https://github.com/rubygems/rubygems/commit/f087f1b590
2022-08-03[rubygems/rubygems] Warn (rather than crash) when setting `nil` ↵David Rodríguez
specification versions https://github.com/rubygems/rubygems/commit/a4ba1a4d97
2022-07-23[rubygems/rubygems] Display mfa warnings on gem signinAshley Ellis Pierce
https://github.com/rubygems/rubygems/commit/4dc77b7099 Co-authored-by: Jenny Shen <[email protected]>
2022-07-22[rubygems/rubygems] Use `SystemExit#status` as `exit_code`Nobuyoshi Nakada
No reasons to manage separately. https://github.com/rubygems/rubygems/commit/8ede5c886e
2022-07-22RubyGems: Enable Style/StringLiterals copTakuya Noguchi
Signed-off-by: Takuya Noguchi <[email protected]>
2022-07-20[rubygems/rubygems] Fix `ruby setup.rb --destdir /foo` modifying global specsDavid Rodríguez
Running a command like that is actually removing any previous default bundler specs in the default RubyGems installation (outside of destdir). It should instead only modify destdir. https://github.com/rubygems/rubygems/commit/5ed275383c
2022-07-18[rubygems/rubygems] Fix upgrading RubyGems with a customized `Gem.default_dir`David Rodríguez
https://github.com/rubygems/rubygems/commit/16d01f9486
2022-07-17[rubygems/rubygems] Stop using `/dev/null` for silent ui for WASI platformYuta Saito
WASI doesn't guarantee that `/dev/null` is present. So without this patch, we needed to mount host's `/dev` directory to WASI guest process to avoid `ENOTCAPABLE` error while `require "bundler/setup"` https://github.com/rubygems/rubygems/commit/e9187ab61f
2022-07-16[rubygems/rubygems] Drop support for old `Gem::Specification` versionsNobuyoshi Nakada
`specification_version` method was added before RubyGems 1.0, and `add_runtime_dependency` method was before 1.2. These seem aged enough to remove. https://github.com/rubygems/rubygems/commit/92770c5cd9
2022-07-15[rubygems/rubygems] Fix wrong information about default RubyGems sourceTakuya Noguchi
Also fix regression from rubygems/rubygems PR 3056 https://my.diffend.io/gems/rubygems-update/1.3.5/1.3.6/page/4#d2h-514986 https://my.diffend.io/gems/rubygems-update/2.0.0/2.0.2/page/2#d2h-514986 Signed-off-by: Takuya Noguchi <[email protected]> https://github.com/rubygems/rubygems/commit/06b1e9ebc5
2022-07-14[rubygems/rubygems] Fix `gem update --system` crash while regenerating binstubsDavid Rodríguez
Since a few commits ago, we no longer call `Gem::Specification.reset` after each invocation of `Gem::Installer#install`. This means we don't call it when the default Bundler is installed during `gem update --system`. This causes no issues until the end of the upgrade process when: * The previous default Bundler spec is removed from disk. * All specification stubs are turned into real specifications by loading them from disk. But the one for Bundler no longer exists so materializes to `nil` and regenerating binstubs crashes like this: ``` Bundler 2.4.0.dev installed RubyGems 3.4.0.dev installed Regenerating binstubs ERROR: While executing gem ... (NoMethodError) undefined method `platform' for nil:NilClass /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `block in execute' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:981:in `block in each' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:980:in `each' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/specification.rb:980:in `each' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `map' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `each' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `select' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/pristine_command.rb:116:in `execute' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:323:in `invoke_with_build_args' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:301:in `invoke' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/setup_command.rb:604:in `regenerate_binstubs' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/commands/setup_command.rb:183:in `execute' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command.rb:323:in `invoke_with_build_args' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command_manager.rb:185:in `process_args' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/command_manager.rb:149:in `run' /Users/deivid/Code/rubygems/rubygems/lib/rubygems/gem_runner.rb:51:in `run' setup.rb:33:in `<main>' ``` We fix it by more carefully managing the removal of the previous default Bundler gem. https://github.com/rubygems/rubygems/commit/9989f6d5af
2022-07-13Merge RubyGems and Bundler masterHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/6124
2022-07-06[rubygems/rubygems] add message when gems are requested to be updated but ↵Brian Le
they are not installed https://github.com/rubygems/rubygems/commit/27953ffe9a
2022-07-06[rubygems/rubygems] output gems already up-to-date regardless if any gems ↵Brian Le
were updated https://github.com/rubygems/rubygems/commit/4ec608a573
2022-06-29[rubygems/rubygems] Add `gem env user_gemhome` and `gem env user_gemdir`David Rodríguez
https://github.com/rubygems/rubygems/commit/14d3f80df6
2022-06-29[rubygems/rubygems] Also document `gem env` argument aliasesDavid Rodríguez
https://github.com/rubygems/rubygems/commit/6d841ccbd4
2022-06-29[rubygems/rubygems] Document better names for `gem env` argumentsDavid Rodríguez
I think `gem env home` and `gem env path` read very nice. https://github.com/rubygems/rubygems/commit/b89da79456
2022-06-26[rubygems/rubygems] Clean up temporary directory after generate_index --updateTomas Volf
While generate_index did clean up temporary directory, when running with --update flag, that did not happen and the temporary directory was left behind. This commit fixes that and modifies tests in order to make sure this is not reintroduced later on. Fixes #5635. https://github.com/rubygems/rubygems/commit/9fa34dc329
2022-06-24Sync RubyGems & Bundler with upstream repoDavid Rodríguez
Notes: Merged: https://github.com/ruby/ruby/pull/6054
2022-06-17[rubygems/rubygems] Bring TODO message up to dateDavid Rodríguez
https://github.com/rubygems/rubygems/commit/e07dba0923
2022-06-17[rubygems/rubygems] Remove part of comment that fell out of dateDavid Rodríguez
https://github.com/rubygems/rubygems/commit/272ac23aa8
2022-06-17[rubygems/rubygems] Don't modify RbConfig at all when building extensionsDavid Rodríguez
Instead, pass sitearchdir and sitelibdir directly to `make`. This also removes the need to create and use the siteconf file at all when generating makefiles. https://github.com/rubygems/rubygems/commit/dea41fa2dc
2022-06-17[rubygems/rubygems] Remove unnecessary conditionDavid Rodríguez
This variable can't be falsy. https://github.com/rubygems/rubygems/commit/b838f9a6f0
2022-06-17[rubygems/rubygems] No need to change `RbConfig::CONFIG` at allDavid Rodríguez
Only `RbConfig::MAKEFILE_CONFIG` is actually used. https://github.com/rubygems/rubygems/commit/b767cc0929
2022-06-12[rubygems/rubygems] Don't on gemspecs with invalid `require_paths`, just warnDavid Rodríguez
These gemspecs already work most of the times. When they are installed normally, the require_paths in the gemspec stub line becomes actually correct, and the incorrect value in the real gemspec is ignored. It only becomes an issue in standalone mode. In Ruby 3.2, `Kernel#=~` has been removed, and that means that it becomes harder for us to gracefully deal with this error in standalone mode, because it now happens earlier due to calling `Array#=~` for this invalid gemspec (since require_paths is incorrectly an array of arrays). The easiest way to fix this is to actually make this just work instead by automatically fixing the issue when reading the packaged gemspec. https://github.com/rubygems/rubygems/commit/d3f2fe6d26
2022-06-07[rubygems/rubygems] Remove unnecessary string concatenationDaniel Berger
https://github.com/rubygems/rubygems/commit/81ccb3ab89
2022-06-06[rubygems/rubygems] Unify loading `Gem::Requirement`David Rodríguez
It was being explicitly required from `Gem::Specification` but also a strange autoload was set for it at `Gem::Version`. The autoload was non standard because it should've been done in the `Gem` module, not in `Gem::Specification`, since that's where the constant is expected to get defined. Doing this might get deprecated in the future, and it was not being effective anyways due to the explicit require. Unify everything with an `autoload` at the right place. https://github.com/rubygems/rubygems/commit/174ea3e24c
2022-06-01[rubygems/rubygems] Restore ability to load old marshalled gemspec that use ↵David Rodríguez
`YAML::PrivateType` This issue was not detected because when all traces of old YAML parser and emitter `Syck` were removed, this null-type.gemspec.rz marshalled gemspec was updated to no longer load `YAML::Syck::PrivateType` but load `Psych::PrivateType` instead. However, realworld old marshalled gemspecs still use the `YAML::PrivateType` constant, so this commit replaces the gemspec to be the real pry-0.4.7 marshalled gemspec, so that it catches this issue. https://github.com/rubygems/rubygems/commit/51b330b8d2
2022-06-01[rubygems/rubygems] Remove no longer needed `Psych::PrivateType` cleanupDavid Rodríguez
This old bug used to affect the `rubyforge_project` field in serialized gemspecs. However, this field has been removed and it's no longer present in marshaled loaded gemspecs. So, while the constant is still present in these marshalled gemspecs and we still need to make sure it exists, we no longer need to clean it up from the loaded data. https://github.com/rubygems/rubygems/commit/09df18e522
2022-05-28[rubygems/rubygems] Make code to find target update version easier to followDavid Rodríguez
https://github.com/rubygems/rubygems/commit/a7f81cc7ee
2022-05-28[rubygems/rubygems] Remove unnecessary name and platform filterDavid Rodríguez
It's already done before. https://github.com/rubygems/rubygems/commit/49d28cfde5
2022-05-28[rubygems/rubygems] Fix rubygems update when non default `--install-dir` is ↵David Rodríguez
configured https://github.com/rubygems/rubygems/commit/9f3b21192d
2022-05-23[rubygems/rubygems] Support the change of did_you_mean about ↵Yusuke Endoh
Exception#detailed_message I am asking did_you_mean to use Exception#detailed_message to add "Did you mean?" suggestion instead of overriding #message method. https://github.com/ruby/did_you_mean/pull/177 Unfortunately, the change will affect Gem::UnknownCommandError, which excepts did_you_mean to override #message method. This PR absorbs the change of did_you_mean. Gem::CommandManager now calls #detailed_message method to get a message string with "Did you mean?" suggestion from an exception. https://github.com/rubygems/rubygems/commit/8f104228d3
2022-05-20Merge RubyGems and Bundler HEADHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/125415593ead9ab69a9f0bb5392c9d7ec61b1f51
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] 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-27[DOC] Change URLs from git.ioKazuhiro NISHIYAMA
see https://github.blog/changelog/2022-04-25-git-io-deprecation/