Bundler v2.1.0 Release Notes

Release Date: 2019-12-15 // over 4 years ago
  • ๐Ÿ”‹ Features:

    โž• Add support for new default gems. In particular,

    plus other PRs removing or lazily loading usages of these gems from other places to not interfere with user's choice, such as #7471 or #7473

    ๐Ÿ›  Bugfixes:

    • ๐Ÿ›  Fix bundle exec rake install failing #7474
    • ๐Ÿ›  Fix bundle exec'ing to rubygems being silent #7442
    • โช Restore previous BUNDLE_GEMFILE in bundler/inline #7418
    • ๐Ÿ›  Fix error when using gem DSL's :glob option for selecting gemspecs from a specific source #7419

    ๐Ÿ”„ Changes:

    • ๐Ÿ—„ bundle config no longer warns when using "old interface" (might be deprecated again in the future) #7475
    • โšก๏ธ bundle update no longer warns when used without arguments (might be deprecated again in the future) #7475

    2.1.0.pre.3 (November 12, 2019)

    ๐Ÿ”‹ Features:

    • โž• Add caller information to some deprecation messages to make them easier to fix #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
    • ๐Ÿ“š Display some basic bundler documentation together with ruby's RDoc based documentation #7394

    ๐Ÿ›  Bugfixes:

    • ๐Ÿ›  Fix typos deprecation message and upgrading docs #7374
    • ๐Ÿ—„ Deprecation warnings about taint usage on ruby 2.7 #7385
    • ๐Ÿ›  Fix --help flag not correctly delegating to man when used with command aliases #7388
    • bundle add should cache newly added gems if an application cache exists #7393
    • Stop using an insecure folder as a "fallback home" when user home is not defined #7416
    • ๐Ÿ›  Fix bundler/inline warning about Bundler.root redefinition #7417

    2.1.0.pre.2 (September 15, 2019)

    ๐Ÿ›  Bugfixes:

    • ๐Ÿ›  Fix bundle clean trying to delete non-existent directory (#7340)
    • ๐Ÿ›  Fix warnings about keyword 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 communicate 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
    0๏ธโƒฃ installations and the default copy of bundler that comes with ruby installed as
    0๏ธโƒฃ 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
    0๏ธโƒฃ 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 makes bundle update behave like bundle update --patch (#6931)
    • Introduce Bundler.original_system and Bundler.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 command bundle 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 to bundle show so this could also be considered a bug fix :) #7072
    • Introduce bundle outdated --filter-strict as an alias to bundle outdated --strict #6030
    • โž• Add :git and :branch options to bundle 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 by bundle package (#7249)
    • Several improvements on new gem templates (#6924, #6968, #7209, #7222, #7238)
    • โž• Add --[no-]git option to bundle 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 to extconf.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 existence 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 causing bundle install to ignore --with and --without (#6113)
    • ๐Ÿ›  Fix MissingRevision git errors to include the specific git 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 and bundle update generating different lockfiles when path: gems with relative paths starting with "./" were used (#7264)
    • 0๏ธโƒฃ 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.