aboutsummaryrefslogtreecommitdiffstats
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* Modify condition for warningBoggs2016-06-281-1/+1
|
* Update Bundler version to check againstBoggs2016-06-281-1/+1
|
* Use `Bundler::VERSION` for specBoggs2016-06-282-2/+3
| | | | | | | | Add TODO to change to warn in 2.0 `dup` string for old rgv `dup` string for old rgv
* Limit warning to `bundle i` and `bundle install`Boggs2016-06-281-1/+1
| | | | | | Reorganize specs Remove whitespace
* Add warnings for different versions of bundler; add specsBoggs2016-06-282-3/+20
| | | | Remove space
* Print an outdated warning when a project is locked to an old version of BundlerBoggs2016-06-281-0/+6
|
* Merge tag 'v1.13.0.rc.1'Samuel Giddins2016-06-271-1/+1
|\ | | | | | | Version 1.13.0.rc.1
| * Version 1.13.0.rc.1 with changelogSamuel Giddins2016-06-271-1/+1
| |
| * Auto merge of #4700 - bundler:seg-lockfile-frozen-string-old-rg, r=segiddinsHomu2016-06-271-4/+6
| | | | | | | | | | | | | | | | | | | | [LockfileParser] Support for old RG on Ruby 2.3+ Fixes #4698 \c @allenzhao (cherry picked from commit 78d614413a994b5acd3dccd82b0782290d0d850d)
| * Auto merge of #4701 - chrismo:issue-4592-gem-path-empty-string, r=segiddinsHomu2016-06-271-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unset GEM_PATH with nil not empty string. This should fix #4592, the tests all pass, but the line of code in question goes back to 2010, so this sorta seems slightly dangerous, but it's probable the circumstances of hitting this line in conjunction with `bundle exec` is a combination that didn't exist prior to 1.12.x. Issue #4592 has a full diagnosis, but the gist of it is this: if an empty string is passed as the `GEM_PATH` to the subsequent process launched by `bundle exec`, then if the `cmd` portion of `bundle exec` is a ruby shebanged file, then if the current bundle install uses a local path (`disable_shared_gems` is true) then it won't be able to find the bundler gem at all because Bundler doesn't install itself into its own Bundle, it's only installed in the system gems for the Ruby. `nil` must be passed because the RubyGems code that sets up the `GEM_PATH` does a conditional on the current `GEM_PATH` and empty string evaluates to true, whereas `nil` evaluates to false. In the false case the `GEM_PATH` is internally populated with the system gems path such that the bundler gem can be found. (cherry picked from commit 37064b3a900475e684dd090d332b88d4c888c128)
| * Auto merge of #4702 - bundler:seg-major-deprecations, r=indirectHomu2016-06-278-10/+85
| | | | | | | | | | | | | | | | | | | | Add machinery for printing major deprecations First step towards handling all of #4695 \c @RochesterinNYC @indirect (cherry picked from commit dca6d26833ddd9d9de658bef7274c8fa21014c44)
| * Auto merge of #4712 - bundler:seg-skip-reresolve, r=indirectHomu2016-06-272-3/+24
| | | | | | | | | | | | | | | | [Definition] Add a #change_reason printed in debug @indirect this might make your debugging a bit easier? (cherry picked from commit 378602f073f808046741a829903d6ea6104f619a)
| * Auto merge of #4711 - bundler:seg-spec-for-exe-match-spec-name, r=segiddinsHomu2016-06-271-5/+7
| | | | | | | | | | | | | | | | Prefer spec name matches when searching for an exe Closes #4705. (cherry picked from commit d497e04e336fcb54f6f92acbb6665b84d11ca396)
| * Auto merge of #4713 - bundler:seg-postit-trampoline-load-path, r=segiddinsHomu2016-06-277-23/+20
| | | | | | | | | | | | [Trampoline] Dont change the load path just for postit (cherry picked from commit bacb0e7835996df44681f84bf662dbe0fb9deb30)
| * Auto merge of #4715 - jenseng:fix_absolute_path_message, r=segiddinsHomu2016-06-271-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't incorrectly relativize sibling `--path` with the same prefix Given current working directory `/foo/app`, when you install with `--path /foo/app_cache`, ensure that the messaging says: Bundled gems are installed into /foo/app_cache instead of the incorrect: Bundled gems are installed into ._cache (cherry picked from commit 3b928d83c1b606b4598c6662528b20482762a14d)
| * Auto merge of #4716 - bundler:seg-no-re-resolve-part-deux, r=indirectHomu2016-06-271-16/+6
| | | | | | | | | | | | | | | | [Definition] Just search for changed specs in an exactly matching source \c @indirect (cherry picked from commit faf82ccc97ab2441bd4fe849d12151fb347a81cf)
| * Auto merge of #4717 - bundler:seg-deinit-submodules, r=indirectHomu2016-06-271-1/+5
| | | | | | | | | | | | [GitProxy] Deinit submodules if they are not requested (cherry picked from commit 5e88c8d494d40157dd1ec9b34be8aafe68431a90)
* | Auto merge of #4717 - bundler:seg-deinit-submodules, r=indirectHomu2016-06-281-1/+5
|\ \ | | | | | | | | | [GitProxy] Deinit submodules if they are not requested
| * | [GitProxy] Only try and submodule deinit on git 2.9.0+Samuel Giddins2016-06-271-1/+1
| | |
| * | [GitProxy] Deinit submodules if they are not requestedSamuel Giddins2016-06-241-1/+5
| | |
* | | Auto merge of #4716 - bundler:seg-no-re-resolve-part-deux, r=indirectHomu2016-06-251-16/+6
|\ \ \ | | | | | | | | | | | | | | | | | | | | [Definition] Just search for changed specs in an exactly matching source \c @indirect
| * | | [Definition] Just search for changed specs in an exactly matching sourceSamuel Giddins2016-06-241-16/+6
| |/ /
* | | Auto merge of #4715 - jenseng:fix_absolute_path_message, r=segiddinsHomu2016-06-251-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Don't incorrectly relativize sibling `--path` with the same prefix Given current working directory `/foo/app`, when you install with `--path /foo/app_cache`, ensure that the messaging says: Bundled gems are installed into /foo/app_cache instead of the incorrect: Bundled gems are installed into ._cache
| * | | Don't incorrectly relativize sibling `--path` with the same prefixJon Jensen2016-06-241-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Given current working directory `/foo/app`, when you install with `--path /foo/app_cache`, ensure that the messaging says: Bundled gems are installed into /foo/app_cache instead of the incorrect: Bundled gems are installed into ._cache
* | | Auto merge of #4713 - bundler:seg-postit-trampoline-load-path, r=segiddinsHomu2016-06-257-23/+20
|\ \ \ | | | | | | | | | | | | [Trampoline] Dont change the load path just for postit
| * | | [Trampoline] Dont change the load path just for postitSamuel Giddins2016-06-247-23/+20
| | | |
* | | | Auto merge of #4711 - bundler:seg-spec-for-exe-match-spec-name, r=segiddinsHomu2016-06-251-5/+7
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | Prefer spec name matches when searching for an exe Closes #4705.
| * | | Prefer spec name matches when searching for an exeSamuel Giddins2016-06-241-5/+7
| |/ /
* | | [Definition] Add a #change_reason printed in debugSamuel Giddins2016-06-241-2/+23
| | |
* | | [SpecSet] Don't mutate the skip listSamuel Giddins2016-06-241-1/+1
|/ / | | | | | | This could cause definition to think bundler is being updated
* | [SharedHelpers] Fix printing rubygems versionSamuel Giddins2016-06-231-1/+1
| |
* | [Shell] Fix #silenceSamuel Giddins2016-06-231-2/+2
| |
* | Add spec machinery for testing major deprecationsSamuel Giddins2016-06-231-3/+2
| |
* | Print the first batch of major deprecation warningsSamuel Giddins2016-06-233-1/+11
| |
* | Add machinery for printing major deprecationsSamuel Giddins2016-06-235-10/+44
| |
* | [UI] Add support for printing major deprecationsSamuel Giddins2016-06-233-0/+9
| |
* | [Settings] Move keys to their own line & sortSamuel Giddins2016-06-231-3/+26
| | | | | | | | Will make future diffs much easier to read
* | Auto merge of #4701 - chrismo:issue-4592-gem-path-empty-string, r=segiddinsHomu2016-06-241-6/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Unset GEM_PATH with nil not empty string. This should fix #4592, the tests all pass, but the line of code in question goes back to 2010, so this sorta seems slightly dangerous, but it's probable the circumstances of hitting this line in conjunction with `bundle exec` is a combination that didn't exist prior to 1.12.x. Issue #4592 has a full diagnosis, but the gist of it is this: if an empty string is passed as the `GEM_PATH` to the subsequent process launched by `bundle exec`, then if the `cmd` portion of `bundle exec` is a ruby shebanged file, then if the current bundle install uses a local path (`disable_shared_gems` is true) then it won't be able to find the bundler gem at all because Bundler doesn't install itself into its own Bundle, it's only installed in the system gems for the Ruby. `nil` must be passed because the RubyGems code that sets up the `GEM_PATH` does a conditional on the current `GEM_PATH` and empty string evaluates to true, whereas `nil` evaluates to false. In the false case the `GEM_PATH` is internally populated with the system gems path such that the bundler gem can be found.
| * | Unset `GEM_PATH` with `nil` not empty string.chrismo2016-06-221-6/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This should fix #4592, the tests all pass, but the line of code in question goes back to 2010, so this sorta seems slightly dangerous, but it's probable the circumstances of hitting this line in conjunction with `bundle exec` is a combination that didn't exist prior to 1.12.x. Issue #4592 has a full diagnosis, but the gist of it is this: if an empty string is passed as the `GEM_PATH` to the subsequent process launched by `bundle exec`, then if the `cmd` portion of `bundle exec` is a ruby shebanged file, then if the current bundle install uses a local path (`disable_shared_gems` is true) then it won't be able to find the bundler gem at all because Bundler doesn't install itself into its own Bundle, it's only installed in the system gems for the Ruby. `nil` must be passed because the RubyGems code that sets up the `GEM_PATH` does a conditional on the current `GEM_PATH` and empty string evaluates to true, whereas `nil` evaluates to false. In the false case the `GEM_PATH` is internally populated with the system gems path such that the bundler gem can be found.
* | | [LockfileParser] Support for old RG on Ruby 2.3+Samuel Giddins2016-06-221-4/+6
| | |
* | | [PostItTrampoline] Support for running as a default specSamuel Giddins2016-06-211-2/+5
| |/ |/|
* | Version 1.13.0.pre.1 with changelogSamuel Giddins2016-06-201-1/+1
| |
* | Merge pull request #4671 from bundler/seg-molinillo-0.5.0Samuel Giddins2016-06-1915-200/+763
|\ \ | | | | | | Update vendored Molinillo to 0.5.0
| * | [Resolver] Mark molinillo methods as publicSamuel Giddins2016-06-191-2/+2
| | |
| * | Update vendored Molinillo to 0.5.0Samuel Giddins2016-06-1414-198/+761
| | |
* | | Merge pull request #4456 from sandlerr/sandlerr/safe_outputSamuel Giddins2016-06-193-2/+10
|\ \ \ | | | | | | | | do not log the credentials used to contact a gem server
| * | | Do not log the credentials used to contact a gem serverRoman Sandler2016-06-183-2/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Adds a filter_uri method to HTTPError backed by the URICredentialsFilter to be used when preparing error output. In the tests, replace a double object with a real URI and change a test hostname to be valid so that older versions of Ruby's URI module don't choke on it. It would be cool to somehow replace this work with the `anonymized_uri` in the Bundler::Source::Rubygems::Remote class.
* | | | Don't include dev dependencies when comparing indexes.Joe Rafaniello2016-06-171-1/+7
| | | |
* | | | Detect changes in path specs by comparing locked specs to source specsJoe Rafaniello2016-06-171-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously, we'd wrongly conclude there are no path changes when there are changes. We'd parse the Gemfile.lock and compare the source.specs, the gemspecs currently in the path, to what's in the Gemfile.lock's locked.specs. Unfortunately, locked.specs for Path sources creates an Index with the specs from the filesystem and NOT what we already parsed from the Gemfile.lock! In other words, we compare the filesystems specs for a path to itself and always conclude "No changes detected!" Instead, we build an index with specs for the source we want from the already parsed Gemfile.lock. We use this index to compare to the current source.specs index from the filesystem. Ironically, this issue was masked by the bug from our prior fix, namely that dependencies_for_source_changed? always would conclude that there were changes. Because of that bug, it would short circuit out of the nothing_changed? method and force a re-resolve with path gems, which would properly build the Gemfile.lock from the prior parsed one. Undo some test changes needed to get the first fix to pass.
* | | | Use Set equality for path gems to avoid unneeded re-resolution.Joe Rafaniello2016-06-172-2/+4
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - For comparing source dependencies to locked source dependencies - For comparing two Bundler::Index dependencies Added test case. Fixed bad tests cases hidden by the above bug: - 'foo' depended on rack but we didn't build 'rack' in the path - We couldn't find 'bar' built into 'foo/bar' because the :path only had 'foo'