aboutsummaryrefslogtreecommitdiffstats
path: root/spec/bundler
Commit message (Collapse)AuthorAgeFilesLines
...
* [rubygems/rubygems] Support running specs with asdf version managerDavid Rodríguez2022-06-151-1/+10
| | | | | | | | | | The `asdf-ruby` plugin sets `RUBYLIB` to require some code to reshim after installing gems. This interferes with our specs. Reset that, but leave any "internal" entries in places, because the ruby-core test setup also uses RUBYLIB. https://github.com/rubygems/rubygems/commit/4b2d09af5b
* [rubygems/rubygems] Don't on gemspecs with invalid `require_paths`, just warnDavid Rodríguez2022-06-121-1/+11
| | | | | | | | | | | | | | | | | 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
* [rubygems/rubygems] Relax performance spec limitDavid Rodríguez2022-06-071-1/+1
| | | | https://github.com/rubygems/rubygems/commit/eab417d0ce
* [rubygems/rubygems] Add test cases from SHA1 RFC and improve test failure ↵David Rodríguez2022-06-021-2/+9
| | | | | | | | | | message I found that the current test cases did not cover the bitwise AND performed on modified words after each iteration (https://github.com/rubygems/rubygems/blob/7e5765a66c9fe5187b167f619f34db5db121f2df/bundler/lib/bundler/digest.rb#L50) https://github.com/rubygems/rubygems/commit/c8de819fee
* [rubygems/rubygems] Remove leftover debugging putsDavid Rodríguez2022-06-021-1/+0
| | | | https://github.com/rubygems/rubygems/commit/7c6f15040d
* [rubygems/rubygems] Fix `bundle remove` by invalidating cached ↵Ellen Marie Dash2022-06-011-0/+30
| | | | | | | | | | | | `Bundle.defintion`. Prior to this commit, `bundle add GEM_NAME` updated the lockfile, but `bundle remove GEM_NAME` left GEM_NAME in the lockfile. By invalidating the cached `Bundle.definition`, the existing code handles that without a problem. https://github.com/rubygems/rubygems/commit/aa0794d6a9
* [rubygems/rubygems] Fix generated standalone script for default gemsDavid Rodríguez2022-06-011-1/+8
| | | | | | | | | | | The installer is actually rewriting the spec's full gem path to be the one of the newly installed gem, however the accessor was not properly working for `StubSpecification` instances, and default gems are always of this type, because they are always present locally. Fix the accessor to properly update the underlying full specification. https://github.com/rubygems/rubygems/commit/efa41babfa
* [rubygems/rubygems] Skip duplicated dependency warning for gemspec dev depsDavid Rodríguez2022-06-011-0/+26
| | | | | | | | | | | Generally this warning is skipped for gemspec development dependencies. I think because it's common to override them in the Gemfile to change the source, for example. But the order of conditions was not correct and the warning was still being printed in one case. https://github.com/rubygems/rubygems/commit/da9d1d6a3f
* [rubygems/rubygems] Give better conflict resolution adviceDavid Rodríguez2022-05-311-3/+64
| | | | | | | | This alternative really uses only the Gemfile, and can never end up being absurd, because it will never be suggested when there's no lockfile, and it suggests deleting the lockfile. https://github.com/rubygems/rubygems/commit/5d154dd50e
* [rubygems/rubygems] Fix crash when commenting out a mirror in configurationDavid Rodríguez2022-05-301-0/+28
| | | | https://github.com/rubygems/rubygems/commit/2d99277328
* [rubygems/rubygems] Fix crash when installing gems with symlinksDavid Rodríguez2022-05-302-2/+36
| | | | | | | | | | | | | | | If BUNDLE_PATH is configured to a symlinked path, installing gems with symlinks would crash with an error like this: ``` Gem::Package::SymlinkError: installing symlink 'man/man0/README.markdown' pointing to parent path /usr/home/stevewi/srv/mail/lib/tools/.vendor/ruby/3.1.0/gems/binman-5.1.0/README.markdown of /srv/mail/lib/tools/.vendor/ruby/3.1.0/gems/binman-5.1.0 is not allowed ``` This commit fixes the problem by changing the bundle path to be the realpath of the configured value, right after we're sure the path has been created. https://github.com/rubygems/rubygems/commit/3cd3dd142a
* [rubygems/rubygems] No need to use `FileUtils` to create symlinksDavid Rodríguez2022-05-302-3/+3
| | | | https://github.com/rubygems/rubygems/commit/70ff7cee9f
* [rubygems/rubygems] Fix failing spec on WindowsDavid Rodríguez2022-05-301-5/+2
| | | | https://github.com/rubygems/rubygems/commit/8e68c57457
* [rubygems/rubygems] Ignore `Errno::EROFS` errors when creating `bundler.lock`David Rodríguez2022-05-301-0/+11
| | | | | | | | | | Apparently old versions of MacOS would set `GEM_HOME` to a `/System` folder, and trying to create a file there raises `Errno::EROFS`. We ignore the error. Any permission issues should be better handled further down the line. https://github.com/rubygems/rubygems/commit/ef90c071d0
* [rubygems/rubygems] Ignore `Errno::EPERM` errors when creating `bundler.lock`David Rodríguez2022-05-291-0/+11
| | | | | | | | | | This kind of error can happen when setting `GEM_HOME` to a path under MacOS System Integrity Protection. We ignore the error. Any permission issues should be better handled further down the line. https://github.com/rubygems/rubygems/commit/174cb66863
* [rubygems/rubygems] Show better error when previous installation fails to be ↵David Rodríguez2022-05-271-6/+2
| | | | | | | | | | | | | | removed Instead of guessing on the culprit. We actually have a helper, `Bundler.rm_rf`, with exactly the behavior that we want: * Allow the passed folder to not exist. * No exception swallowing other than that. https://github.com/rubygems/rubygems/commit/5fa3e6f04a
* [rubygems/rubygems] Fix crash when printing resolution conflicts on metadata ↵David Rodríguez2022-05-241-0/+21
| | | | | | requirements https://github.com/rubygems/rubygems/commit/b69e1e9374
* Merge RubyGems and Bundler HEADHiroshi SHIBATA2022-05-205-6/+32
| | | | https://github.com/rubygems/rubygems/commit/125415593ead9ab69a9f0bb5392c9d7ec61b1f51
* [rubygems/rubygems] Fix locale dependent spec failureDavid Rodríguez2022-05-201-1/+1
| | | | https://github.com/rubygems/rubygems/commit/1fd818743e
* [rubygems/rubygems] Fix `Gemfile.lock` versions leaking to `bundler/inline` ↵David Rodríguez2022-05-133-36/+51
| | | | | | | | | 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
* [rubygems/rubygems] Fix error message on metadata mismatchesDavid Rodríguez2022-05-112-0/+41
| | | | | | | | | | | | 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
* [rubygems/rubygems] Tweak negative expectationsDavid Rodríguez2022-05-111-2/+2
| | | | | | The follow a tweak on the yank message. https://github.com/rubygems/rubygems/commit/f6817bfe58
* [rubygems/rubygems] Extract a `next_ruby_minor` helper method for specsDavid Rodríguez2022-05-112-6/+8
| | | | https://github.com/rubygems/rubygems/commit/66eae0ef1d
* [rubygems/rubygems] Cleanup old legacy codeDavid Rodríguez2022-05-091-26/+0
| | | | https://github.com/rubygems/rubygems/commit/531d6b5fee
* [rubygems/rubygems] Fix missing space in specDavid Rodríguez2022-05-041-1/+1
| | | | https://github.com/rubygems/rubygems/commit/fabc357e70
* Merge ↵Hiroshi SHIBATA2022-04-285-34/+69
| | | | https://github.com/rubygems/rubygems/commit/3f7d0352e84b29d4a2d4cd93b31e5ebdb5f79cc6
* Merge rubygems master 1e4eda741d732ca1bd7031aef0a16c7348adf7a5Hiroshi SHIBATA2022-04-289-29/+29
|
* [rubygems/rubygems] Fix missing required rubygems version when using old APIsDavid Rodríguez2022-04-281-0/+41
| | | | | | | | | | | | | | | | 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>
* [rubygems/rubygems] Add modern rubies to the platformsBobby McDonald2022-04-161-2/+3
| | | | https://github.com/rubygems/rubygems/commit/5462322f8f
* [rubygems/rubygems] Maybe this is now fixedDavid Rodríguez2022-03-241-2/+0
| | | | https://github.com/rubygems/rubygems/commit/d9c442e54c
* [rubygems/rubygems] Fix a test for `bin/bundle update --bundler` to pass on ↵Jun Aruga2022-03-231-1/+4
| | | | | | | | | | | | ruby/ruby. Consider the case that the latest Bundler version on RubyGems is higher than the `system_bundler_version` (= `Bundler::VERSION`) in `make test-bundler` on ruby/ruby. See <https://bugs.ruby-lang.org/issues/18643>. https://github.com/rubygems/rubygems/commit/bfa2f72cfa
* [rubygems/rubygems] Add newline to validate_platforms! message when platform ↵Alex Gittemeier2022-03-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | is missing When I run bundle install with BUNDLE_DEPLOYMENT=true in the environment on a different platform than I usually do development, I get the following output to the console (wrapped exactly as shown): Your bundle only supports platforms ["x86_64-darwin-19"] but your local platform is x86_64-linux. Add the current platform to the lockfile with `bundle lock --add-platform x86_64-linux` and try again. Because the way the message wraps, its not as simple as copying the suggested command to the clipboard because it contains a newline: $ bundle lock Writing lockfile to [...]/Gemfile.lock $ --add-platform x86_64-linux Adding a newline right before the command forces the command in the error message to be on the same line, which facilitates copy-pasting the command in the message. https://github.com/rubygems/rubygems/commit/4cf6989b11
* [rubygems/rubygems] Make `--strict` flag of `update` and `outdated` commands ↵David Rodríguez2022-03-061-12/+11
| | | | | | | | | | | | | consistent Previously they had slightly different behavior when combined with conservative updating flags. The correct behavior is the `--update-strict` option, so `--script` now does that, The `--update-strict` option is left there for now but I will deprecate it later. https://github.com/rubygems/rubygems/commit/ab42046229
* Merge RubyGems and Bundler masterHiroshi SHIBATA2022-02-2811-45/+43
|
* [rubygems/rubygems] Fix corrupted lockfile when using `gemspec` and multiple ↵David Rodríguez2022-02-111-0/+63
| | | | | | sources https://github.com/rubygems/rubygems/commit/9712262d90
* [rubygems/rubygems] Fix typo in multiple gemfiles warningSven Schwyn2022-02-101-2/+2
| | | | https://github.com/rubygems/rubygems/commit/bc69d19097
* [rubygems/rubygems] Skip "seller shipped" notification after deliveryDan Jensen2022-02-011-0/+25
| | | | | | | | | | | | | | If a Shipment has been delivered, there is no point in notifying the buyer that the seller shipped. Instead, we should simply notify the buyer that the shipment was delivered. This is relevant in cases where the seller is late to mark a Shipment as shipped, so the first EasyPost Tracker update marks it as delivered, or in cases where the seller fails to mark as shipped and the buyer marks it as delivered. This fixes a Shipment event handler so the buyer notification for shipment is no longer invoked if the Shipment is already delivered. https://github.com/rubygems/rubygems/commit/09c2cadc86
* Sync latest Bundler & RubyGemsDavid Rodríguez2022-02-0111-45/+114
|
* [rubygems/rubygems] Fix `force_ruby_platform` ignored when lockfile includes ↵David Rodríguez2022-01-261-0/+14
| | | | | | the current specific platform https://github.com/rubygems/rubygems/commit/9ca371adf8
* [rubygems/rubygems] Use Gem::Platform.local instead of RUBY_PLATFORMNgan Pham2022-01-261-4/+4
| | | | | | | | | In certain places, we want to display the platform name with `Gem::Platform.local` instead of `RUBY_PLATFORM`. Fixes https://github.com/rubygems/rubygems/issues/5264 https://github.com/rubygems/rubygems/commit/bdd1848ae8
* [rubygems/rubygems] Fix spec to not touch the networkDavid Rodríguez2022-01-251-1/+3
| | | | | | | And not depend on the state of rack's master branch, in particular, on their Ruby support range. https://github.com/rubygems/rubygems/commit/9ea4baffac
* [rubygems/rubygems] Remove unnecessary commentDavid Rodríguez2022-01-251-3/+0
| | | | https://github.com/rubygems/rubygems/commit/ef4e5c6169
* [rubygems/rubygems] Change generated namespaced test class name in minitestYusuke Nakamura2022-01-201-1/+1
| | | | | | | | * `foo` => `TestFoo` * `foo_bar` => `TestFooBar` * `foo-bar` => `Foo::TestBar` https://github.com/rubygems/rubygems/commit/353cdd61c3
* [rubygems/rubygems] Add spec to class name definition in newgem specYusuke Nakamura2022-01-201-0/+10
| | | | https://github.com/rubygems/rubygems/commit/5f698fc4a0
* [rubygems/rubygems] Update generated minitest file styleYusuke Nakamura2022-01-201-8/+10
| | | | | | | | foo => test/test_foo.rb foo-bar => test/foo/test_bar.rb foo_bar => test/test_foo_bar.rb https://github.com/rubygems/rubygems/commit/c795e5d40d
* [rubygems/rubygems] Create minitest file to underscored path in "bundle gem" ↵Yusuke Nakamura2022-01-201-4/+8
| | | | | | | | | | | | | | | | | | | | | command ...with dashed gem name In "bundle gem" command with dashed name gem (e.g. foo-bar) generates `test/test_foo/bar.rb`, but this file contains undefined class `TestFoo` and moreover, does not include in "bundle exec rake test" target. Therefore, intentially the first test after gem created is fail, but in case of gem name contains dash character is not. The change doings... (when "bundle gem foo-bar" called) * create `test/test_foo_bar.rb` * define `TestFooBar` class in `test/test_foo_bar.rb` https://github.com/rubygems/rubygems/commit/5d9a69fc0f
* Merge rubygems/rubygems HEAD.Hiroshi SHIBATA2022-01-198-49/+206
| | | | Picked at 12aeef6ba9a3be0022be9934c1a3e4c46a03ed3a
* [rubygems/rubygems] Fix regression with old marshaled specs having null ↵David Rodríguez2022-01-191-0/+53
| | | | | | required_rubygems_version https://github.com/rubygems/rubygems/commit/91f07a0208
* [rubygems/rubygems] Fix skipped spec on WindowsDavid Rodríguez2022-01-191-3/+1
| | | | https://github.com/rubygems/rubygems/commit/bf0f4b98ee
* [rubygems/rubygems] Use `Fiddle` in `bundle doctor` to check for dynamic ↵Vyacheslav Alexeev2022-01-131-3/+3
| | | | | | library presence https://github.com/rubygems/rubygems/commit/ecd495ce1b