summaryrefslogtreecommitdiff
path: root/lib/bundler/source/rubygems.rb
Commit message (Collapse)AuthorAgeFilesLines
* Merge RubyGems/Bundler masterHiroshi SHIBATA2022-12-121-5/+3
| | | | from https://github.com/rubygems/rubygems/commit/bfb0ae69776069155d2092702bfbb5a12617d85a
* Resync Bundler & RubyGemsDavid Rodríguez2022-09-081-6/+6
|
* Merge ↵Hiroshi SHIBATA2022-09-051-57/+5
| | | | https://github.com/rubygems/rubygems/commit/16c3535413afebcdbab7582c6017c27b5da8a8dc
* [rubygems/rubygems] Account for default gems not having remote when cachingDavid Rodríguez2022-07-021-6/+12
| | | | https://github.com/rubygems/rubygems/commit/b93d4de2ff
* [rubygems/rubygems] Move rubygems source specific logic to rubygems sourceDavid Rodríguez2022-07-021-1/+1
| | | | https://github.com/rubygems/rubygems/commit/6aa4c422a7
* [rubygems/rubygems] Fix `bundle package --no-install` no longer skipping installDavid Rodríguez2022-06-231-0/+2
| | | | | | | | | | | | This is a regression from https://github.com/rubygems/rubygems/commit/cf749f8ffabd. The funny thing is that we have a spec for this feature, so it was unclear how we regressed here. It turns out there was a bug in one of our negative matchers checking that gems ARE NOT included in a bundle. This commit fixes the bug in the negative matcher and reverts https://github.com/rubygems/rubygems/commit/cf749f8ffabd (with a slightly simpler diff). https://github.com/rubygems/rubygems/commit/3f9a4ff32a
* [rubygems/rubygems] Reuse package from the installer for extracting the ↵David Rodríguez2022-06-111-18/+25
| | | | | | | | | | specification Previously we would instantiate two different packages and extract the specification from the package twice for each gem installed. We can reuse the installer for this so that we just need to do it once. https://github.com/rubygems/rubygems/commit/e454f850b1
* [rubygems/rubygems] Move security exception handling to the only place using itDavid Rodríguez2022-06-111-0/+4
| | | | https://github.com/rubygems/rubygems/commit/ba975b3b7f
* [rubygems/rubygems] Swapping should not raise any errorsDavid Rodríguez2022-06-111-1/+2
| | | | https://github.com/rubygems/rubygems/commit/600a9ac658
* [rubygems/rubygems] Remove unclear commentDavid Rodríguez2022-06-111-2/+0
| | | | | | | This is the explanation of why we do the swapping, not of why we download the gem. https://github.com/rubygems/rubygems/commit/1a25eb7e7b
* [rubygems/rubygems] `Gem::Specification.loaded_from` is already set by the ↵David Rodríguez2022-06-111-13/+4
| | | | | | installer https://github.com/rubygems/rubygems/commit/796eebfdbf
* [rubygems/rubygems] Refactor some more duplicated logicDavid Rodríguez2022-06-111-3/+7
| | | | https://github.com/rubygems/rubygems/commit/9bd389e1b6
* [rubygems/rubygems] Move `no_install` setting check to a more sensible placeDavid Rodríguez2022-06-111-50/+48
| | | | | | | It's only related to the `bundle cache` command, so it should be checked there. https://github.com/rubygems/rubygems/commit/cf749f8ffa
* [rubygems/rubygems] No need to redownload if package already thereDavid Rodríguez2022-06-111-0/+1
| | | | https://github.com/rubygems/rubygems/commit/285ccbc07e
* [rubygems/rubygems] No need to overwrite path when there's a remoteDavid Rodríguez2022-06-111-2/+3
| | | | https://github.com/rubygems/rubygems/commit/d86fb2c316
* [rubygems/rubygems] Remove unnecessary `spec.remote` guardDavid Rodríguez2022-06-111-2/+0
| | | | | | It's checked before calling the method already. https://github.com/rubygems/rubygems/commit/4eb00e9586
* [rubygems/rubygems] Refactor ambiguous gems checkDavid Rodríguez2022-06-111-3/+1
| | | | https://github.com/rubygems/rubygems/commit/a00c79a4da
* [rubygems/rubygems] Fix crash when installing gems with symlinksDavid Rodríguez2022-05-301-1/+1
| | | | | | | | | | | | | | | 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] Fix `Gemfile.lock` versions leaking to `bundler/inline` ↵David Rodríguez2022-05-131-6/+9
| | | | | | | | | 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] Normalize parameter nameDavid Rodríguez2022-05-131-4/+4
| | | | | | The other sources use `options` which reads better. https://github.com/rubygems/rubygems/commit/a672f9d602
* [rubygems/rubygems] Improve sources representationDavid Rodríguez2021-12-031-7/+11
| | | | | | | | | | | | | We have two representations of a source. Once used for sorting, which should not depend on the source's state, but solely on its static information, like remotes. Another one used for error and informational messages, which should properly inform about the exact state of the source when the message is printed. This commit makes the latter be the default implementation of `to_s`, so that error and informational messages are more accurate by default. https://github.com/rubygems/rubygems/commit/b5f2b88957
* Merge rubygems master fd676ac464491afaa0baf5435cb11b3f86229cbdHiroshi SHIBATA2021-12-011-5/+5
|
* [rubygems/rubygems] Only delete cached gem when it's corruptedDavid Rodríguez2021-10-291-1/+1
| | | | | | | | Rescuing all errors here might end up hiding other errors if the deletion of the cached gem itself raises an error for some reason. Let's be more conservative. https://github.com/rubygems/rubygems/commit/3d80dfba08
* [rubygems/rubygems] Improve readability by splitting updating the cache and ↵David Rodriguez2021-10-251-1/+4
| | | | | | searching it https://github.com/rubygems/rubygems/commit/d0df25bb0f
* [rubygems/rubygems] Manage global gem cache directlyDavid Rodriguez2021-10-251-40/+17
| | | | | | | | Previously, it was maintained in sync with the standard cache. That was less efficient, and it caused some error messages to point to non existent files. https://github.com/rubygems/rubygems/commit/931f8cb8a9
* [rubygems/rubygems] Cached gem path resolution should consider default gemsDavid Rodriguez2021-10-251-9/+6
| | | | https://github.com/rubygems/rubygems/commit/83b2b845b3
* [rubygems/rubygems] Simplify gem downloading inside bundlerDavid Rodriguez2021-10-251-11/+1
| | | | | | | | | | | | | | We can skip most stuff in `Gem::RemoteFetcher#download`, and use `Gem::RemoteFetcher#update_cache_path` directly. This has the benefit of allowing us to remove some workarounds to support several rubygems versions, but also allows us to pass the target folder where the gem should be downloaded directly and skip the logic inside `Gem::RemoteFetcher#download` to infer the cache path. This will be useful later to fix some issues with the `global_gem_cache` feature flag. https://github.com/rubygems/rubygems/commit/8fe74a77e4
* [rubygems/rubygems] Use `Gem::Specification#file_name` consistentlyDavid Rodriguez2021-10-251-4/+4
| | | | https://github.com/rubygems/rubygems/commit/13b933f49a
* [rubygems/rubygems] Extract a `default_cache_path` helperDavid Rodriguez2021-10-251-2/+6
| | | | https://github.com/rubygems/rubygems/commit/8319305d58
* [rubygems/rubygems] Small refactorDavid Rodriguez2021-10-251-7/+8
| | | | | | | | Extract final cache path to a variable and pass that to `download_gem`. It actually fits better the parameters documentation since it's the final directory where the downloaded gem will be placed. https://github.com/rubygems/rubygems/commit/1429db6a04
* [rubygems/rubygems] Fix `bundle install` to force reinstallation of deleted gemsDavid Rodriguez2021-10-131-1/+1
| | | | https://github.com/rubygems/rubygems/commit/8950631f02
* [rubygems/rubygems] Use correct way to detect default gemsDavid Rodríguez2021-10-131-10/+2
| | | | | | | | | The other way, in particular matching a substring in the gemspec summary, is brittle and no longer used since Ruby 2.0. This needed rewriting the specs that depended on that way. https://github.com/rubygems/rubygems/commit/059dbfa971
* [rubygems/rubygems] Fix `bundle plugin install` misdetection of installed ↵David Rodríguez2021-08-311-1/+1
| | | | | | versions https://github.com/rubygems/rubygems/commit/9c88db949d
* [rubygems/rubygems] Explicitly set `allow_cached` to false when setting ↵David Rodríguez2021-08-311-0/+1
| | | | | | local mode https://github.com/rubygems/rubygems/commit/1b8139e9d3
* [rubygems/rubygems] Restore working `bundle check` behaviourDavid Rodríguez2021-08-311-0/+6
| | | | | | | | | | | | | As part of a recent bug fix where bundler was accidentally hitting the network when not supposed to, I made some refactoring, and the commit I'm reverting here (https://github.com/rubygems/rubygems/commit/d74830d00bb541883377992f56818620a78930b0) was some cleanup that those refactorings allowed according to "past me". That was completely wrong, `bundle check` should never consider cached gems, only installed gems, so the code that was removed was necessary. https://github.com/rubygems/rubygems/commit/5483e98305
* [rubygems/rubygems] Remove now unnecessary codeDavid Rodríguez2021-08-311-6/+0
| | | | https://github.com/rubygems/rubygems/commit/d74830d00b
* [rubygems/rubygems] The `--local` flag to `bundle install` shouldn't hit the ↵David Rodríguez2021-08-311-0/+1
| | | | | | | | | network If the cache was missing, `bundler` would try to re-fetch it. With the `--local` flag, it should just look at installed gems. https://github.com/rubygems/rubygems/commit/630d29c69e
* [rubygems/rubygems] Improve "gem not found in source" errorsDavid Rodríguez2021-08-311-1/+16
| | | | | | | | | | When printing sources inside these error messages, it's useful to only consider the current state of the source. For example, when requiring `bundler/setup`, the source shouldn't be configured to be able to hit the network, so the error message should only mention "locally installed gems" to make that more clear. https://github.com/rubygems/rubygems/commit/30eb14f853
* [rubygems/rubygems] Implement Bundler::Source::Rubygems#no_remotes?Daniel Niknam2021-07-271-0/+4
| | | | | | This method is created to tell whether any remote exist in the object or not and it will be used by `Bundler:SourceList` to tell if a global source has been defined implicitly or not. https://github.com/rubygems/rubygems/commit/47e3ff0e47
* Sync RubyGems and Bundler with upstreamHiroshi SHIBATA2021-07-071-13/+0
|
* Sync latest bundler & rubygems development versionDavid Rodríguez2021-07-071-12/+25
|
* Sync bundler & rubygemsDavid Rodríguez2021-05-111-2/+2
|
* Merge the master branch of BundlerHiroshi SHIBATA2021-04-151-4/+20
|
* Sync latest development version of bundler & rubygemsDavid Rodríguez2021-03-081-1/+2
|
* Track Bundler master(2.3.0.dev) branch at ↵Hiroshi SHIBATA2021-01-041-1/+8
| | | | 55634a8af18a52df86c4275d70fa1179118bcc20
* Merge bundler-2.2.0.rc.2Hiroshi SHIBATA2020-10-151-2/+2
|
* Sync Bundler PR #3624 with HEAD commitsHiroshi SHIBATA2020-05-221-14/+11
|
* Prepare to release bundler-2.1.0Hiroshi SHIBATA2019-12-151-3/+3
|
* Merge bundler master from upstream.Hiroshi SHIBATA2019-06-091-1/+1
| | | | Pick from 8dd59e3ba97eb80a599f8149f31bf40773b69dc0
* Merge Bundler 2.1.0.pre.1 as developed version from upstream.hsbt2019-04-141-4/+10
| | | | | | https://github.com/bundler/bundler/commit/a53709556b95a914e874b22ed2116a46b0528852 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e