summaryrefslogtreecommitdiff
path: root/spec/bundler/install/gems
AgeCommit message (Collapse)Author
20 hours[rubygems/rubygems] Normalize Bundler version spec filtersDavid Rodríguez
https://github.com/rubygems/rubygems/commit/28b6a7cf5e
3 days[rubygems/rubygems] Reword a couple of specs to further clarify themDavid Rodríguez
https://github.com/rubygems/rubygems/commit/e28b5e306f
3 days[rubygems/rubygems] Migrate mirror probe specs to use the compact index APIDavid Rodríguez
Could potentially fix some flakies we're using and make the specs more "modern" and simplifies them because less fallbacks are involved. https://github.com/rubygems/rubygems/commit/30da9a1a93
3 days[rubygems/rubygems] Consistently use instance variables directlyDavid Rodríguez
I don't think the indirection improve things. https://github.com/rubygems/rubygems/commit/b408b28844
3 days[rubygems/rubygems] Cleanup dead code, RubyGems 3.3 is no longer supportedDavid Rodríguez
https://github.com/rubygems/rubygems/commit/945a29a477
14 days[rubygems/rubygems] Extract stdboth spec helperDavid Rodríguez
https://github.com/rubygems/rubygems/commit/bb13f4e702
2025-05-19[rubygems/rubygems] Fix test warnings introduced by recent CGI changesDavid Rodríguez
They read like this: ``` /home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:13: warning: method redefined; discarding old rfc1123_date /opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:225: warning: previous definition of rfc1123_date was here /home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:34: warning: method redefined; discarding old pretty /opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:246: warning: previous definition of pretty was here /home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:16: warning: method redefined; discarding old escape /home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:29: warning: method redefined; discarding old unescape /home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:13: warning: method redefined; discarding old rfc1123_date /opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:225: warning: previous definition of rfc1123_date was here /home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/util.rb:34: warning: method redefined; discarding old pretty /opt/hostedtoolcache/Ruby/3.4.3/x64/lib/ruby/3.4.0/cgi/util.rb:246: warning: previous definition of pretty was here /home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:16: warning: method redefined; discarding old escape /home/runner/work/rubygems/rubygems/bundler/tmp/gems/base/ruby/3.4.0/gems/cgi-0.5.0.beta2/lib/cgi/escape.rb:29: warning: method redefined; discarding old unescape ``` The problem is that `rspec` loads `erb` for its configuration, which loads `cgi/util` from system gems. Then our tests change the `$LOAD_PATH` to make test gems installed in tmp visible to `require`, and then they all require `cgi` as a transitive dependency of `rack-test`, this time from `tmp` gems. This causes system and test specific copies to be mixed together and these warnings to be printed, but we have also observed failures in some tests with errors like > class variable @@accept_charset of CGI::Util is overtaken by CGI::Escape This changes should also fix those failures. The fix is to require all of `rack-test` (including `cgi`) before we have changed the `$LOAD_PATH`. Because the `$LOAD_PATH` is unchanged, RubyGems respects the version of `cgi` activated by RSpec, avoiding the double loads. https://github.com/rubygems/rubygems/commit/34e75465c6
2025-05-19Rename a couple of spec filesDavid Rodríguez
Generally are "realworld" specs are the ones using VCR cassettes of real requests. These files don't use that, so I moved them to a different place.
2025-04-15[rubygems/rubygems] Fix false positive warning about insecurely materialized gemDavid Rodríguez
In frozen mode, the previous logic would not set the platform locked originally in the materialized specification, and that would trigger the warning about insecure materialization incorrectly. https://github.com/rubygems/rubygems/commit/a18001e10c
2025-04-14[rubygems/rubygems] Fix edge case making `bundle update` behave incorrectlyDavid Rodríguez
If both a native and a generic version are locked, but the native version is incompatible with the running Ruby, Bundler will still keep the native version in the lockfile, since it could be potentially useful when using other rubies. However, when `bundle update` is run, this was not the case because the locked native gems were not using the right source when materializing. They were using the lockfile source instead of the Gemfile source, and that meant they could not be found when materializing, because the lockfile source always uses local mode so does not see them. The effect of this was normally that they were incorrectly removed from the lockfile and a strange "this spec has been possibly yanked" was printed in verbose mode. However, in certain situations (i.e., when the generic gem would bring extra dependencies), it could also make `bundle update` crash. The solution is, when adding this extra locked specs to the result after resolving, maybe sure they inherit the source from the resolved specs, so they can be found when materializing. `bundle install` did not have the issue because it passes locked specs to the resolver, and assigns the right source to them in `Definition#converge_locked_specs`. https://github.com/rubygems/rubygems/commit/91ce881fda
2025-04-09[rubygems/rubygems] Follow up to removal of rubyinstaller2 workaroundDavid Rodríguez
https://github.com/rubygems/rubygems/commit/5b312fd040
2025-04-04[rubygems/rubygems] Rubyinstaller2 fixed thisDavid Rodríguez
https://github.com/rubygems/rubygems/commit/08b3c48f41
2025-04-01[rubygems/rubygems] Let compact index response parser consistently return a ↵David Rodríguez
mutable dependencies array That restores support for compact index dummy implementations that only lists versions, without checksums or dependencies. This format is undocumented, so we may want to get rid of it in the future. However, some of our tests rely on it, and some implementations did use it (gems.mutant.dev at least). And the way the code was written suggest that support was intentional. So for now, we should restore it. https://github.com/rubygems/rubygems/commit/0427d8c983
2025-03-24[rubygems/rubygems] Fix redundant `path` configurationsDavid Rodríguez
The deployment setting already does this implicitly. https://github.com/rubygems/rubygems/commit/402b11fa39 Notes: Merged: https://github.com/ruby/ruby/pull/12968
2025-03-24[rubygems/rubygems] Consistently use "lockfile" over "lock file"David Rodríguez
https://github.com/rubygems/rubygems/commit/e891be9197 Notes: Merged: https://github.com/ruby/ruby/pull/12968
2025-03-12[rubygems/rubygems] Path helper to build paths in compact index cacheDavid Rodríguez
https://github.com/rubygems/rubygems/commit/d28f9b8515
2025-03-12[rubygems/rubygems] Prefer `FileUtils.rm_r` to `FileUtils.rm_rf` for specsDavid Rodríguez
Because it does not swallow errors if it fails to remove the given folders, making issues easier to debug. https://github.com/rubygems/rubygems/commit/0db12d7afc
2025-02-18[rubygems/rubygems] Add additional assertions to specDavid Rodríguez
To make it consistent with the spec above it. https://github.com/rubygems/rubygems/commit/9a00bf8db9
2025-01-28[rubygems/rubygems] Remove unnecessary platform helpersDavid Rodríguez
I think they add unnecessary indirection and inconsistency to the specs. https://github.com/rubygems/rubygems/commit/609924d985
2025-01-14Remove test dependency on loggerDavid Rodríguez
I think logger is only used to figure out which methods need to be made noops in order to silence webrick during tests. However, it seems possible to do the same using webrick's builtin logger and the current method does not seem even correct since it's not guaranteed that the logger gem and webrick's logger will use the same methods. Notes: Merged: https://github.com/ruby/ruby/pull/12568
2024-11-26[rubygems/rubygems] Allow some materialized specs to be missingDavid Rodríguez
As long as some spec in the materialization is complete. https://github.com/rubygems/rubygems/commit/9a673b0bbb
2024-11-14[rubygems/rubygems] Revert "mustermann depends on URI::RFC2396_PARSER behavior"Hiroshi SHIBATA
This reverts commit https://github.com/rubygems/rubygems/commit/82b25dd75afd. https://github.com/rubygems/rubygems/commit/16adf53f23
2024-11-13[rubygems/rubygems] Include original error when openssl fails to loadDavid Rodríguez
https://github.com/rubygems/rubygems/commit/440343b791
2024-11-06[rubygems/rubygems] This is not about the lockfile anymoreDavid Rodríguez
https://github.com/rubygems/rubygems/commit/f2e0a72291
2024-10-10[rubygems/rubygems] Fix specs with missing extensions getting activatedDavid Rodríguez
https://github.com/rubygems/rubygems/commit/c80998a22a
2024-10-04[rubygems/rubygems] Remove outdated conditionals from testsSamuel Giddins
Signed-off-by: Samuel Giddins <[email protected]> https://github.com/rubygems/rubygems/commit/06eec6d855
2024-10-03Update default gem test for colon-style hash inspecttompng
Notes: Merged: https://github.com/ruby/ruby/pull/10924
2024-09-26Update test dependenciesDavid Rodríguez
2024-08-05Fix truffleruby removing gems from lockfileDavid Rodríguez
When resolving on truffleruby, and multiple platforms are included in the lockfile, Bundler will not respect existing platforms, but always force ruby variants. That means removal of existing version specific variants, introducing lockfile churn between implementations. To prevent this, we introduce the distinction between `Dependency#force_ruby_platform`, only settable via Gemfile, and `Dependency#default_force_ruby_platform`, which is always true on truffleruby for certain dependency names. This way, when resolving lockfile gems for other platforms on truffleruby, we keep platform specific variants in the lockfile. However, that introduces the problem that if only platform specific variants are locked in the lockfile, Bundler won't be able to materialize on truffleruby because the generic variant will be missing. To fix this additional problem, we make sure the generic "ruby" platform is always added when resolving on truffleruby.
2024-07-23[rubygems/rubygems] Enable checksums on Bundler 3 for fresh lockfilesDavid Rodríguez
And get specs passing. https://github.com/rubygems/rubygems/commit/c23b5f5b84
2024-07-23[rubygems/rubygems] Normalize a few specs using sourcesDavid Rodríguez
Use the standard sources to avoid having to explictly pass ENV with the repo. https://github.com/rubygems/rubygems/commit/95055dba57
2024-07-23[rubygems/rubygems] Enforce passing a block to `simulate_platform`David Rodríguez
https://github.com/rubygems/rubygems/commit/0658903e25
2024-07-19mustermann depends on URI::RFC2396_PARSER behaviorHiroshi SHIBATA
It's part of dependencies for Sinatra. we should fix mustermann before final release of Ruby 3.4 Notes: Merged: https://github.com/ruby/ruby/pull/11204
2024-07-18[rubygems/rubygems] Fix incorrect standalone script when default gems with ↵David Rodríguez
extensions are used https://github.com/rubygems/rubygems/commit/55649cd09b
2024-07-18[rubygems/rubygems] Remove unnecessary `artifice` parameterDavid Rodríguez
It's automatically detected from Gemfile. https://github.com/rubygems/rubygems/commit/72301a2e3b
2024-07-18[rubygems/rubygems] Use latest shellwords for standalone testDavid Rodríguez
https://github.com/rubygems/rubygems/commit/fcd04daf68
2024-07-18[rubygems/rubygems] Fix gemspec `require_paths` type validationDavid Rodríguez
It was not properly being detected as an Array attribute, and thus not properly validated. Fixing this allows us to remove a strange `rescue` clause in Bundler. https://github.com/rubygems/rubygems/commit/4121a32408
2024-07-09[rubygems/rubygems] Test using latest rubiesDavid Rodríguez
https://github.com/rubygems/rubygems/commit/6d6646b8bc
2024-07-05[rubygems/rubygems] Use preferred add_dependency instead of ↵Jerome Dalbert
add_runtime_dependency https://github.com/rubygems/rubygems/commit/9a08043858
2024-06-28Synchronize Bundler & RubyGems (#11071)David Rodríguez
2024-06-14[rubygems/rubygems] Fix funding metadata not being printed in some situationsDavid Rodríguez
Namely, when a gem has not previously been installed, and Bundler is using the compact index API, fund metadata was not getting printed because the proper delegation was not implemented in the specification class used by the compact index. https://github.com/rubygems/rubygems/commit/9ef5139f60
2024-06-12[rubygems/rubygems] Fix typoDavid Rodríguez
https://github.com/rubygems/rubygems/commit/19a0e3730c
2024-05-24[rubygems/rubygems] Fix error messages to not mention cached gems when they ↵David Rodríguez
were not used https://github.com/rubygems/rubygems/commit/5ce9a7ff17
2024-03-22[rubygems/rubygems] Fix incorrect `bundle update --bundler` messageDavid Rodriguez
https://github.com/rubygems/rubygems/commit/146de56353
2024-02-02[rubygems/rubygems] Add missing Windows jobDavid Rodriguez
Specs that use extension gems were failing in the new job but I noticed that they were using very non standard `extconf.rb` files. The hack being removed here was added just to make specs pass when run in ruby-core but it seems the underlying issue has been fixed now, and it's causing issues with Ruby 3.3 and Windows, so necessary so I'm removing it and moving on. https://github.com/rubygems/rubygems/commit/5b78275f0e
2024-01-29[rubygems/rubygems] Use rubygems vendored uri from Bundler when availableDavid Rodríguez
https://github.com/rubygems/rubygems/commit/5d6a8f2fb4
2024-01-05[rubygems/rubygems] Quote Etag in `If-None-Match` header of compact index ↵Martin Emde
request https://github.com/rubygems/rubygems/commit/d26bcd7551
2023-12-13[rubygems/rubygems] Use vendored net-http in BundlerDavid Rodríguez
https://github.com/rubygems/rubygems/commit/0d758e8926
2023-12-12Sync with upstream rubygems (#9206)David Rodríguez
2023-12-12[rubygems/rubygems] Bump rake version used by testsDavid Rodríguez
And make it easier to update next time. https://github.com/rubygems/rubygems/commit/1ea4bfa5d8