summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* [StubSpecification] Avoid loading all installed gemspecsseg-stub-specification-missing-extensionsSamuel Giddins2017-02-182-0/+35
| | | | Call through to the stub instead of materializing the full remote_spec since all gems added to the local index are asked whether they are missing extensions or not
* Auto merge of #5427 - bundler:seg-api-missing-dependencies, r=indirectThe Bundler Bot2017-02-1811-4/+108
|\ | | | | | | | | | | | | Fail gracefully when installing a spec where the API is missing deps Fixes https://github.com/bundler/bundler/issues/5426 Closes https://github.com/bundler/bundler/issues/5339
| * [LazySpecification] Handle when the search in __materialize__ returns nilseg-api-missing-dependenciesSamuel Giddins2017-02-151-1/+1
| |
| * [LazySpecification] Handle when the swapped platform-specfic spec has extra depsSamuel Giddins2017-02-153-1/+54
| |
| * Compare deps in a manner compatible with old RGsSamuel Giddins2017-02-133-5/+10
| |
| * Print a debug warning where the corrupted API deps came fromSamuel Giddins2017-02-134-2/+8
| |
| * When swapping, dont consider dep type for "missing" API depsSamuel Giddins2017-02-133-4/+6
| |
| * Fail gracefully when installing a spec where the API is missing depsSamuel Giddins2017-02-136-1/+39
| |
* | Auto merge of #5443 - bundler:seg-resolver-sorting, r=indirectThe Bundler Bot2017-02-182-9/+13
|\ \ | | | | | | | | | | | | | | | | | | | | | [Resolver] Improve sorting of deps with 0 or 1 possibility As the added comment says, this will force all dependencies where there are only 0 or 1 total specs with that name to be resolved first. Right now, they sort ~last, which leads to poor performance. (This was one way of fixing some recent resolver issues, even though we've done the proper fixes in Molinillo for them)
| * | [Resolver] Improve sorting of deps with 0 or 1 possibilityseg-resolver-sortingSamuel Giddins2017-02-172-6/+10
| | |
| * | [Resolver] Improve resolver debug outputSamuel Giddins2017-02-171-3/+3
| |/
* | Auto merge of #5440 - wjordan:fips_enabled_compact_index, r=indirectThe Bundler Bot2017-02-182-15/+38
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable compact index when OpenSSL FIPS mode is enabled but not active Fixes #5433. Since there is no easy accessor in Ruby to detect whether or not FIPS mode is currently active, the best approach I could come up with is to `fork` a separate process and attempt to generate a build MD5 object as a test of whether MD5 module is currently available. Because `fork` approach won't work on some platforms (JRuby, Windows etc), `md5_supported?` returns `false` on any platforms where FIPS mode is enabled and `Process.respond_to?(:fork)` is `false`. I've added a spec that simulates behavior when OpenSSL FIPS mode is active - an error message is output to STDERR and the process is killed with the `ABRT` signal.
| * | remove unused Process.kill mock in FIPS-mode specWill Jordan2017-02-171-6/+0
| | |
| * | simplify `md5_available?` test using `OpenSSL::Digest:MD5.digest`Will Jordan2017-02-172-30/+17
| | |
| * | Enable compact index when OpenSSL FIPS mode is enabled but not activeWill Jordan2017-02-162-9/+51
| | |
* | | Auto merge of #5417 - seban:document-mirror-fallback-timeout-option, r=segiddinsThe Bundler Bot2017-02-181-1/+14
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | Add documentation for mirror.fallback_timeout option. As suggested in https://github.com/bundler/bundler/pull/5403#issuecomment-278384552 instead of changing parsing `mirror.fallback_timeout` I added documentation for it. Pull request https://github.com/bundler/bundler/pull/5403 can be closed.
| * | | update wordingAndre Arko2017-02-171-6/+7
| | | |
| * | | Add documentation for mirror.fallback_timeout option.Sebastian Nowak2017-02-091-0/+12
| | | |
* | | | Auto merge of #5439 - danielpclark:patch_gh_username, r=segiddinsThe Bundler Bot2017-02-173-7/+13
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix Github username for README.md contrib URL This fixes #5438 where the wrong git config variable was being retrieved. This was using `git config user.name` rather than `git config github.user` in URL in `README.md`
| * | | | Fix Github username for README.md contrib URLDaniel P. Clark2017-02-173-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes #5438 where the wrong git config variable was being retrieved. Renamed user name to author name & specs added `git_user_name` renamed to `git_author_name` and tests added for genuine `git_user_name` to verify proper URL in README.md. Renamed `git_user_name` to `github_username` per @segiddins request. Rubocop style fix on hash k,v spacing Replace backticks with `sys_exec` per @segiddins. Hat-tip to @olleolleolle for explaining `sys_exec` from `spec_helpers/support.rb` is a helper method that smooths the path for the RSpec usage in the project. (Thank you.)
* | | | | Auto merge of #5442 - kerrizor:patch-1, r=segiddinsThe Bundler Bot2017-02-171-1/+1
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | fixing small typo in comments Title says it all, really.
| * | | | | fixing small typo in commentsKerri Miller2017-02-171-1/+1
|/ / / / /
* | | | | Auto merge of #5437 - colby-swandale:bug-triage, r=indirectThe Bundler Bot2017-02-171-12/+10
|\ \ \ \ \ | |_|_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | improvements to the BUG_TRIAGE guide \cc @indirect What we were discussing earlier This PR consists of several changes like: * Update references to guides (troubleshooting.md & issues.md specifically) * Adding references to existing guides (pull_request.md) * General cleanup, adding clarity etc
| * | | | PR feedback and revert `a bug` back to `the bug`Colby Swandale2017-02-161-2/+2
| | | | |
| * | | | improvements to the BUG_TRIAGE guideColby Swandale2017-02-161-12/+10
| |/ / /
* | | | Auto merge of #5435 - bundler:aa-rm-post-install, r=indirectThe Bundler Bot2017-02-161-7/+0
|\ \ \ \ | |/ / / |/| | | | | | | | | | | | | | | | | | | | | | | remove post-install on account of confusion as demonstrated on twitter[1], this message was unfortunately convincing people that Ruby Together pays for the rubygems.org servers. let's remove it and come up with something clearer later. [1]: https://twitter.com/MelissaKaulfuss/status/829504864229023744
| * | | remove post-install on account of confusionaa-rm-post-installAndre Arko2017-02-151-7/+0
|/ / / | | | | | | | | | | | | | | | as demonstrated on twitter[1], this message was unfortunately convincing people that Ruby Together pays for the rubygems.org servers. let's remove it and come up with something clearer later. [1]: https://twitter.com/MelissaKaulfuss/status/829504864229023744
* | | Auto merge of #5388 - rhenium:topic/defer-requiring-rubygems-spec_fetcher, ↵The Bundler Bot2017-02-165-5/+14
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r=segiddins Defer requiring rubygems/spec_fetcher until it becomes necessary Avoid conflict between two versions of openssl gem on 'bundle exec' if a newer and non-default version of openssl gem is installed to the system. rubygems/spec_fetcher loads openssl through resolv and securerandom when running with Ruby <= 2.4. This is not a proper fix for #5235 as other standard libraries that Bundler currently loads will be gemified as well in Ruby >= 2.5, however, this will fix openssl's case. Reference: https://github.com/bundler/bundler/issues/5235 Fixes: https://github.com/ruby/openssl/issues/103 --- Reproduce: 1. Install Ruby 2.4.0 (comes with openssl 2.0.2) 2. Run `gem install openssl` to install openssl 2.0.3 3. Create a Gemfile and run `bundle install` 4. Run `bundle exec ruby -e'require "openssl"'
| * | | Defer requiring rubygems/spec_fetcher until it becomes necessaryKazuki Yamaguchi2017-02-145-5/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Avoid conflict between two versions of openssl gem on 'bundle exec' if a newer and non-default version of openssl gem is installed to the system. rubygems/spec_fetcher loads openssl through resolv and securerandom when running with Ruby <= 2.4. This is not a proper fix for #5235 as other standard libraries that Bundler currently loads will be gemified as well in Ruby >= 2.5, however, this will fix openssl's case. Reference: https://github.com/bundler/bundler/issues/5235 Fixes: https://github.com/ruby/openssl/issues/103
* | | | Auto merge of #5421 - bundler:seg-read-only-fs-no-global-settings, r=indirectThe Bundler Bot2017-02-156-3/+25
|\ \ \ \ | |_|_|/ |/| | | | | | | | | | | | | | | | | | | Don't read global settings on a read-only FS with no $HOME Closes https://github.com/bundler/bundler/issues/5371 This is an alternative to https://github.com/bundler/bundler/pull/5385
| * | | [Settings] Allow not reading the global config file when there is no $HOME ↵seg-read-only-fs-no-global-settingsSamuel Giddins2017-02-103-2/+19
| | | | | | | | | | | | | | | | and $TMPDIR is not writable
| * | | In specs, set TMPDIR to be ./tmp/tmpdirSamuel Giddins2017-02-103-2/+7
| | | | | | | | | | | | | | | | | | | | This was, modifications to the temporary directory are blown away between each test and don't clutter the user's FS
* | | | Auto merge of #5221 - bundler:seg-update-thor, r=indirectThe Bundler Bot2017-02-1328-323/+416
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [Thor] Update to v0.19.4 Closes #4876 @rafaelfranca
| * | | | [CLI] Re-allow bundle help --no-colorseg-update-thorSamuel Giddins2017-02-121-0/+3
| | | | |
| * | | | [Thor] Update to v0.19.4Samuel Giddins2017-02-1227-323/+413
| | | | |
* | | | | Merge tag 'v1.14.4'Samuel Giddins2017-02-122-1/+14
|\ \ \ \ \ | |/ / / / |/| | | | | | | | | Version 1.14.4
| * | | | Version 1.14.4 with changelogv1.14.4Samuel Giddins2017-02-122-1/+14
| | | | |
| * | | | Auto merge of #5415 - nodo:issue-5358-conflicts-in-bundle-gem, r=segiddinsThe Bundler Bot2017-02-122-1/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [Fix #5358] Handle files conflicts when using `bundle gem` `bundle gem` command fails with an exception when creating a gem having the same name of a file in the specified path. For instance: > touch hello > bundle gem hello This bug is due to Thor gem. At the moment, Thor does not handle conflicts between files and directories. This commit mitigates the problem by rescuing the exception from Thor and gracefully exit with an error message. Fixes https://github.com/bundler/bundler/issues/5358 (cherry picked from commit f93accce1e9d948eaef79e2f380fd7d396687808)
| * | | | Auto merge of #5410 - bundler:seg-git-build-args, r=indirectThe Bundler Bot2017-02-123-6/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Properly set native extension build args for git gems Closes https://github.com/bundler/bundler/pull/5399 Closes https://github.com/bundler/bundler/issues/5401 (cherry picked from commit 74341aaaa949e914cd1cffb163cd99bdf14b91df)
| * | | | Auto merge of #5363 - svoop:permissive_tmp_home_dirs, r=indirectThe Bundler Bot2017-02-123-21/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Permissive temporary home directory We're deploying to a server with several Ruby applications each with it's own user. However, the home directory of these users is *not* writable by the users. Since Bundler 1.14.x, a temporary home directoy in the `tmpdir` is used as a fallback. This works well for only one user, but will fail with more than one: 1. user1 execs `bundle` 2. `/tmp/bundler/home/user1` is created usually with 0755 modes 3. user2 execs `bundle` 4. `/tmp/bundler/home/user2` cannot be created since user2 can't write to `home` This PR adds a `chmod` to apply mode 0777 to `home`. It rescues to nil in order to silently fail on step 4 (user2 cannot chmod `home` since it's owned by user1) as well as in case of any other problem performing chmod. Since we're in a fallback here, I guess it's okay to do this. However, if this is too much code smell, a `unless File.exist?` will do the trick as well. (cherry picked from commit 311b090449b591d4fb96a725e548b4d35ac95ed0)
| * | | | Auto merge of #5413 - bundler:seg-molinillo-0.5.6, r=segiddinsThe Bundler Bot2017-02-125-10/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update vendored Molinillo to 0.5.6 See https://github.com/CocoaPods/Molinillo/releases/0.5.6 closes #5359 closes #5362 (cherry picked from commit 3360aac96610f640ddfef0d65303d15bc99539d9)
| * | | | Auto merge of #5408 - bundler:seg-ensure-silent-shell-parity, r=segiddinsThe Bundler Bot2017-02-122-0/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [UI::Silent] Ensure all the same methods as Shell are implemented Finish up the work of #5368 (cherry picked from commit cad91be3c8f4ab5a71eee284c051cb2e7c2cb3a2)
| * | | | Auto merge of #5391 - bundler:seg-ruby-version-requirement-valid, r=indirectThe Bundler Bot2017-02-122-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [RubyVersion] Ensure passed-in versions are valid during init Closes #5380 (cherry picked from commit 427f07f77f414f43d693c87c104546af3d9fe984)
| * | | | Auto merge of #5368 - savionok:sav-cover-Bundler-FriendlyErrors-with-tests, ↵The Bundler Bot2017-02-122-3/+183
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r=segiddins Fix silent.rb method interface Hi, This is my first contribution to bundler, so I started by covering bundler/friendly_errors.rb with unit tests. After covering it, I spotted a bug in lib/bundler/ui/silent.rb, trace method interface, so I fix it in this PR. Waiting for feedback! (cherry picked from commit c0de8f625f0ae2ed5cc2b26673c875e2900a9829)
| * | | | Auto merge of #5393 - 5t111111:fix-warning-when-a-dependency-unused, r=segiddinsThe Bundler Bot2017-02-122-4/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix misleading warning message when a dependency is unused on any platform The current warning message for a dep with empty platform is misleading/confusing. You see a sort of the below warning when you `bundle install`, ``` The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run `bundle lock --add-platform mingw, mswin, x64_mingw, jruby`. ``` However, there two issues exist in this message "run `bundle lock --add-platform mingw, mswin, x64_mingw, jruby`": - You must not have comma (,) for separators - these commas will be considered as comma itself. see [here](https://github.com/bundler/bundler/blob/242fcbcb2d15d39c63e3441756b77fbfcc1b73b2/lib/bundler/cli/lock.rb#L34-L41) - mingw, mswin, x64_mingw, jruby are not valid platforms - platforms must be specified as the formats that rubygems can understand, like (x86-mingw32, x86-mswin32, x64-mingw32, java) This fixes these issues. (cherry picked from commit cd872ef1e8281252786535df960275cd391933bc)
| * | | | Auto merge of #5392 - bundler:improve-messaging, r=segiddinsThe Bundler Bot2017-02-121-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | marketing-ify the post-install message /cc @segiddins @mrb (cherry picked from commit 5db7e161e9057603188600549c226a1b40807e6e)
| * | | | Auto merge of #5389 - Shekharrajak:5384_inject_usage, r=segiddinsThe Bundler Bot2017-02-123-5/+17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Show inject usage when args are passed incorrectly Closes #5384 Now it shows the error : ``` $ bundle inject "gem_name" 1 "v" ERROR: "bundle inject" was called with arguments ["gem_name", "1", "v"] Usage: "bundle inject GEM VERSION" $ bundle inject "gem_name" "v" 1 ERROR: "bundle inject" was called with arguments ["gem_name", "v", "1"] Usage: "bundle inject GEM VERSION" ``` (cherry picked from commit ec5cab34d3b12467433ca1a1eafc460e42834084)
| * | | | Auto merge of #5376 - colby-swandale:bundle-show-update-lock, r=segiddinsThe Bundler Bot2017-02-122-0/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Bundle show --outdated shouldn't be updating versions This PR is for #5375. I have added a spec (currently failing) of the desired behavior for `bundle show --outdated` I'm currently looking into a fix for this but welcome anyone else to come in as well. (cherry picked from commit d9d699c174a06da8052bc7da0d5ba64438968653)
| * | | | Auto merge of #5382 - bundler:seg-error-template-issues-url, r=segiddinsThe Bundler Bot2017-02-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [FriendlyErrors] Update ISSUES.md URL This URL no longer exists after the docs reorganization \c @feministy I'd like to release this as 1.14.x so people aren't frustrated when opening new issues (cherry picked from commit fb8c5a7e509cb0a54a4b34f8a93b86484241a747)
* | | | | Auto merge of #5266 - bundler:seg-install-frozen-gemspec-deps-changed, ↵The Bundler Bot2017-02-128-20/+81
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | r=indirect [Definition] Fail when installing in frozen mode & gemspec deps have changed Closes #5264 - [x] Specs