summaryrefslogtreecommitdiff
path: root/lib/bundler/shared_helpers.rb
AgeCommit message (Collapse)Author
2022-11-10[rubygems/rubygems] Load "bundler/setup" in lib/rubygems.rbYusuke Endoh
Ruby interpreter loads some special gems at startup: did_you_mean, error_highlight, and syntax_suggest. These gems are loaded before `bundler/setup` is loaded by `RUBYOPT=-rbundler/setup`. So, the versions of the gems are not controllable by Gemfile. This change will `require "bundler/setup"` in rubygems.rb (i.e., before the special gems are loaded). Now `bundle exec` sets an environment variable `BUNDLER_SETUP`, and rubygems requires the variable if defined. See also: https://bugs.ruby-lang.org/issues/19089 https://github.com/rubygems/rubygems/commit/963cb65a2d
2022-10-18[rubygems/rubygems] Remove unused parameter to `SharedHelpers.pretty_dependency`David Rodríguez
https://github.com/rubygems/rubygems/commit/665051d085 Notes: Merged: https://github.com/ruby/ruby/pull/6578
2022-05-20Merge RubyGems and Bundler HEADHiroshi SHIBATA
https://github.com/rubygems/rubygems/commit/125415593ead9ab69a9f0bb5392c9d7ec61b1f51
2022-04-28Merge rubygems master 1e4eda741d732ca1bd7031aef0a16c7348adf7a5Hiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/5669
2022-04-28[rubygems/rubygems] All supported rubies have `File.realpath`David Rodríguez
https://github.com/rubygems/rubygems/commit/c60ed4878c Notes: Merged: https://github.com/ruby/ruby/pull/5669
2022-02-10[rubygems/rubygems] Fix typo in multiple gemfiles warningSven Schwyn
https://github.com/rubygems/rubygems/commit/bc69d19097
2021-12-27Track RubyGems 3.4.0dev and Bundler 2.4.0devHiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/5350
2021-12-27Check if `Kernel#untaint` is defined instead of version comparisonNobuyoshi Nakada
Probably `RUBY_VERSION` seems overwritten somewhere in the tests. Notes: Merged: https://github.com/ruby/ruby/pull/5349 Merged-By: nobu <nobu@ruby-lang.org>
2021-12-21[rubygems/rubygems] Rename `BUNDLE_SPEC_RUN` environment variableDavid Rodríguez
The `BUNDLE_` prefix should be reserved to first class settings that should be listed when running `bundle config`. This one is just a hacky environment variable that has not corresponding documented setting. https://github.com/rubygems/rubygems/commit/7e255c5058
2021-12-07[rubygems/rubygems] Don't cleanup paths from gems already activated from ↵David Rodríguez
`$LOAD_PATH` This way, if some default gem has been required before bundler, and rubygems has enhanced the `$LOAD_PATH` to use the latest version in the system, further requires of that default gem after bundler has been activated will use the same version and don't cause redefinition warnings or worse problems derived from the fact of mixing up two different versions. That, unless the gem is a `Gemfile` dependency. In that case, we'll get a mismatch error anyways as we do now. This fix doesn't mean that all default gems internally used by bundler/rubygems are now supported inside `Gemfile`'s. That should be handled case by case, but it will now bite people only when they try to add the gem to their `Gemfile`, not before. https://github.com/rubygems/rubygems/commit/7325530547
2021-07-27[rubygems/rubygems] Fix interrupt handling in Bundler workersAndrew Haines
The existing interrupt handling using `SharedHelpers.trap` fails when the previous handler for a signal is not callable (for example, when it is the string "DEFAULT"). Instead, we now handle interrupts by aborting the process when worker threads are running, and restore the previous handler after worker threads are finished. Fixes #4764. https://github.com/rubygems/rubygems/commit/b9f455d487
2021-03-08Sync latest development version of bundler & rubygemsDavid Rodríguez
Notes: Merged: https://github.com/ruby/ruby/pull/4143
2021-01-04Track Bundler master(2.3.0.dev) branch at ↵Hiroshi SHIBATA
55634a8af18a52df86c4275d70fa1179118bcc20 Notes: Merged: https://github.com/ruby/ruby/pull/4021
2020-10-15Merge bundler-2.2.0.rc.2Hiroshi SHIBATA
Notes: Merged: https://github.com/ruby/ruby/pull/3659
2020-07-15Import remaining changesDavid Rodríguez
The "sync with commits" scripts failed to properly import these for some reason. Notes: Merged: https://github.com/ruby/ruby/pull/3275
2019-11-11Merge Bundler 2.1.0.pre.3Hiroshi SHIBATA
Features: - Add caller information to some deprecation messages to make them easier to fix [#7361](https://github.com/bundler/bundler/pull/7361) - Reconcile `bundle cache` vs `bundle package` everywhere. Now in docs, CLI help and everywhere else `bundle cache` is the preferred version and `bundle package` remains as an alias [#7389](https://github.com/bundler/bundler/pull/7389) - Display some basic `bundler` documentation together with ruby's RDoc based documentation [#7394](https://github.com/bundler/bundler/pull/7394) Bugfixes: - Fix typos deprecation message and upgrading docs [#7374](https://github.com/bundler/bundler/pull/7374) - Deprecation warnings about `taint` usage on ruby 2.7 [#7385](https://github.com/bundler/bundler/pull/7385) - Fix `--help` flag not correctly delegating to `man` when used with command aliases [#7388](https://github.com/bundler/bundler/pull/7388) - `bundle add` should cache newly added gems if an application cache exists [#7393](https://github.com/bundler/bundler/pull/7393) - Stop using an insecure folder as a "fallback home" when user home is not defined [#7416](https://github.com/bundler/bundler/pull/7416) - Fix `bundler/inline` warning about `Bundler.root` redefinition [#7417](https://github.com/bundler/bundler/pull/7417) Notes: Merged: https://github.com/ruby/ruby/pull/2668
2019-08-20Fix some bundler specs (#2380)David Rodríguez
* These seem to consistenly pass already * Show actual command when running `make test-bundler` Current the setup command that installs the necessary gems for testing bundler was printed, but not the actual command that runs the tests. That was a bit confusing. * Borrow trick from setproctitle specs * A title that long doesn't get set sometimes No idea why, but the test doesn't need that the title is that long. * Fix most gem helper spec ruby-core failures * Fix the rest of the gem helper failures * Fix version spec by improving the assertion * Remove unnecessary `BUNDLE_RUBY` environment var We can use `RUBY` when necessary, and `BUNDLE_RUBY` is not a good name because bundler considers `BUNDLE_*` variables as settings. * Rename `BUNDLE_GEM` to `GEM_COMMAND` This is more descriptive I think, and also friendlier for bundler because `BUNDLE_` env variables are interpreted by bundler as settings, and this is not a bundler setting. This fixes one bundler spec failure in config specs against ruby-core. * Fix quality spec when run in core Use the proper path helper. * Fix dummy lib builder to never load default gems If a dummy library is named as a default gem, when requiring the library from its executable, the default gem would be loaded when running from core, because in core all default gems share path with bundler, and thus they are always in the $LOAD_PATH. We fix the issue by loading lib relatively inside dummy lib executables. * More exact assertions Sometimes I have the problem that I do some "print debugging" inside specs, and suddently the spec passes. This happens when the assertion is too relaxed, and the things I print make it match, specially when they are simple strings like "1.0" than can be easily be part of gem paths that I print for debugging. I fix this by making a more exact assertion. * Detect the correct shebang when ENV["RUBY"] is set * Relax assertion So that the spec passes even if another paths containing "ext" are in the load path. This works to fix a ruby-core issue, but it's a better assertion in general. We just want to know that the extension path was added. * Use folder structure independent path helper It should fix this spec for ruby-core. * Fix the last failing spec on ruby-core * Skip `bundle open <default_gem>` spec when no default gems
2019-08-17[bundler/bundler] Fix bundle bin location in core repoDavid Rodríguez
https://github.com/bundler/bundler/commit/9437568ab4
2019-08-16[bundler/bundler] Stop printing deprecation messages during specsDavid Rodríguez
Previously under some circunstances (met during some specs), bundler would print deprecations to a separate UI different from "bundler's UI". This UI would not be captured by the specs, and thus would be printed to screen during the specs. This commit fixes that by making sure all deprecation messages always go through bundler's UI. https://github.com/bundler/bundler/commit/220c54b7fa Notes: Merged: https://github.com/ruby/ruby/pull/2366
2019-08-03[bundler/bundler] Enable `Style/UnneededInterpolation` copDavid Rodríguez
https://github.com/bundler/bundler/commit/4c6a3c3cf7
2019-08-03[bundler/bundler] Fully remove compatibility guardDavid Rodríguez
https://github.com/bundler/bundler/commit/2a7a5daba0
2019-08-03[bundler/bundler] fix nested bundle exec's when bundler is a default gemMSP-Greg
https://github.com/bundler/bundler/commit/537c0ab712
2019-08-03[bundler/bundler] Remove unnecessary `order_matters` paramDavid Rodríguez
https://github.com/bundler/bundler/commit/0b40b5b784
2019-07-31lib/bundler/shared_helpers.rb: remove require "rubygems"Yusuke Endoh
Because it causes circular require.
2019-06-09Merge bundler master from upstream.Hiroshi SHIBATA
Pick from 8dd59e3ba97eb80a599f8149f31bf40773b69dc0
2019-04-14Merge Bundler 2.1.0.pre.1 as developed version from upstream.hsbt
https://github.com/bundler/bundler/commit/a53709556b95a914e874b22ed2116a46b0528852 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67539 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-02-18Fixup r66984. It breakes bundler's examples.hsbt
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-02-05Ignore to add bundler lib direcotry if it is same as rubylibdir.hsbt
[Bug #15469][ruby-core:90742] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67006 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2019-01-04Merge Bundler 2.0.1 from upstream.hsbt
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66710 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-11Downgrade Bundler 1.17.x from 2.0.0.hsbt
We have the platform issue on heroku: * https://gist.github.com/schneems/26452540f6e2bbbcf2ea144f45f6b305 * https://github.com/heroku/heroku-buildpack-ruby/issues/833 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66323 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-12Merge Bundler-2.0.0.pre1 from upstream.hsbt
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65672 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-02Added bundler as default gems. Revisit [Feature #12733]hsbt
* bin/*, lib/bundler/*, lib/bundler.rb, spec/bundler, man/*: Merge from latest stable branch of bundler/bundler repository and added workaround patches. I will backport them into upstream. * common.mk, defs/gmake.mk: Added `test-bundler` task for test suite of bundler. * tool/sync_default_gems.rb: Added sync task for bundler. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-22Postponing the Bundler merge.hsbt
I faced a big issue about Bundler with ruby core. I have no time to resolve it issue before 2.5 final release. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-11-01Update bundled bundler to 1.16.0.hsbt
* lib/bundler, spec/bundler: Merge bundler-1.16.0. * common.mk: rspec examples of bundler-1.16.0 needs require option. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60603 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-08Merge bundler to standard libraries.hsbt
rubygems 2.7.x depends bundler-1.15.x. This is preparation for rubygems and bundler migration. * lib/bundler.rb, lib/bundler/*: files of bundler-1.15.4 * spec/bundler/*: rspec examples of bundler-1.15.4. I applied patches. * https://github.com/bundler/bundler/pull/6007 * Exclude not working examples on ruby repository. * Fake ruby interpriter instead of installed ruby. * Makefile.in: Added test task named `test-bundler`. This task is only working macOS/linux yet. I'm going to support Windows environment later. * tool/sync_default_gems.rb: Added sync task for bundler. [Feature #12733][ruby-core:77172] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59779 b2dd03c8-39d4-4d8f-98ff-823fe69b080e