v2.1.0.pre.2
版本发布时间: 2019-09-15 17:54:26
rubygems/bundler最新发布版本:v2.1.4(2020-01-06 02:18:48)
Bugfixes:
- Fix
bundle clean
trying to delete non-existent directory (#7340) - Fix warnings about keywork argument separation on ruby 2.7 (#7337)
2.1.0.pre.1 (August 28, 2019)
One of the biggest changes in bundler 2.1.0 is that deprecations for upcoming breaking changes in bundler 3 will be turned on by default. We do this to grab feedback and comunicate early to our users the kind of changes we're intending to ship with bundler 3. See #6965.
Another important improvement is a better coexistence between bundler installations and the default copy of bundler that comes with ruby installed as a default gem. Since bundler is shipped as a default gem with ruby, a number of users have been affected by issues where bundler ends up failing due to version mismatches, because at some point of the execution, bundler switches to run the default copy instead of the expected version. A number of PRs have been focused on minimizing (hopefully eliminating) this, such as #7100, #7137, #6996, #7056, #7062, #7193, #7216, #7274
Deprecations:
- See the the upgrading document for a detailed explanation of the deprecations that are getting enabled in bundler 2.1, and the future breaking changes in bundler 3.
Features:
- Reimplement
config
command using subcommands (#5981) - Add
bundle plugin list
command (#6120) - Introduce a
bundle lock --gemfile
flag (#6748) - Add local git repository source option (
--local_git
) to plugin installation (#6749) - Add
quiet
flag to inline bundler (#6828) - Introduce a
prefer_patch
configuration that makesbundle update
behave likebundle update --patch
(#6931) - Introduce
Bundler.original_system
andBundler.original_exec
to shell out or exec to external programs using the original environment before bundler was loaded (#7052) - Add feature parity to
bundle info GEM
with respect to the old deprecated commandbundle show GEM
#7026 - Introduce
bundle list
to list groups of gems in your Gemfile. This command was actually documented, but was working as an alias tobundle show
so this could also be considered a bug fix :) #7072 - Introduce
bundle outdated --filter-strict
as an alias tobundle outdated --strict
#6030 - Add
:git
and:branch
options tobundle add
(#7127) - Add
:ruby_26
as a valid value to the:platform(s)
dsl (#7155) - Let the
bundle cache
command include all features currently provided bybundle package
(#7249) - Several improvements on new gem templates (#6924, #6968, #7209, #7222, #7238)
- Add
--[no-]git
option tobundle gem
to generate non source control gems. Useful for monorepos, for example (#7263)
Bugfixes:
- Raise when the same gem is available in multiple sources, and show a suggestion to solve it (#5985)
- Validate that bundler has permissions to write to the tmp directory, and raise with a meaningful error otherwise (#5954)
- Remove downloaded
.gem
file from the cache if it's corrupted (#6010) - Fix generated README in new gems to explicitly suggest running
bundle install
, so that the outcome is independent from the major version of bundler being run (#6068) - Fix
bundle outdated --group NAME
when the group is listed second in the Gemfile (#6116) - Improve conflict resolution messages by not calling "ruby" a gem when conflict happens in the
required_ruby_version
, and by filtering out requirements that didn't contribute to the conflict (#6647) - Avoid fetching and rebuilding git gems whenever any gem is changed in the Gemfile (#6711)
- Include the exact bundler version in the lock file in the suggested command when bundler warns about version mismatches of itself #6971
- Fix plugins being installed every time a command is run ##6978
- Fallback to sequentially fetching specs on 429s #6728
- Make
bundle clean
also clean native extensions for gems with a git source #7058 - Fix
bundle info bundler
to show the correct path to the bundler gem #7026 - Fix
bundle config build.<gem>
not sending multiple parameters toextconf.rb
correctly #7023 - Fix bad error message on Gemfile errors under ruby 2.7 (still unreleased, but it's a bugfix for beta testers after all) #7038
- Warn about situations where multiple gems provide the same executable (#7075)
- Ignore
frozen
setting in inline mode (#7125) - Fix incorrect "bundler attempted to update GEM but version stayed the same" message when updating git sourced gems (#6325)
- Don't check for existance of a writable home directory if
BUNDLE_USER_HOME
is set (#6885) - Fix error message when server would respond to a bad username/password requiest with a 401 (#6928)
- Fix
bundle outdated
pluralization when multiple groups are requested (#7063) - Fix
bundle install
not updating conservatively when gemspec is changed (#7143) - Fix
bundle exec
not respecting custom process titles inside scripts (#7140) - Fix
bundle update
message about exclude groups saying "installed" instead of "updated" (#7150) - Fix
bundle licenses
not showing correct information about bundler itself (#7147) - Fix installation path not including ruby scope when
BUNDLE_PATH
was set (#7163) - Fix
bundle clean
incorrectly removing git depedencies present in the Gemfile when rubygems 3.0+ was used and path involved a symlink (#7211) - Fix platform specific gems always being re-resolved when bundler was not running under that platform (#7212)
- Fix
bundle package --all-platforms
causingbundle install
to ignore--with
and--without
(#6113) - Fix
MissingRevision
git errors to include the specificgit
command that failed under the hood (#7225) - Fix using gemspec &
force_ruby_platform
on Windows (#6809) - Make bundler's binstub checks on bundler version consistent with rubygems
BundlerVersionFinder
(#7259) - Fix
bundle install
andbundle update
generating different lockfiles whenpath:
gems with relative paths starting with "./" were used (#7264) - Give a proper error when user tries to
bundle open
a default gem (#7288) - Fix
bundle doctor
command (#7309) - Fix bundler giving an unclear recommendation when duplicated gems are found in the Gemfile (#7302)
Documentation:
- Fix typo on a file extension in
bundle.ronn
#7146 - Fix incorrect default value for
cache_path
configuration (#7229) - Binstubs documentation has been improved (#5889)
- Fix incorrect sections when explaining
:git
,:branch
, and:ref
options (#7265) - Fix mentions to remembered options in docs to explain the current state (#7242)
Internally, there's also been a bunch of improvements in our development environment, test suite, policies, contributing docs, and a bunch of cleanups of old compatibility code.