bundler 1.17.3 → 2.6.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGELOG.md +3354 -1258
- data/LICENSE.md +18 -19
- data/README.md +10 -15
- data/bundler.gemspec +15 -33
- data/exe/bundle +8 -10
- data/exe/bundler +1 -1
- data/lib/bundler/.document +1 -0
- data/lib/bundler/build_metadata.rb +5 -13
- data/lib/bundler/capistrano.rb +5 -5
- data/lib/bundler/checksum.rb +254 -0
- data/lib/bundler/ci_detector.rb +75 -0
- data/lib/bundler/cli/add.rb +29 -15
- data/lib/bundler/cli/binstubs.rb +13 -5
- data/lib/bundler/cli/cache.rb +24 -17
- data/lib/bundler/cli/check.rb +7 -5
- data/lib/bundler/cli/clean.rb +1 -1
- data/lib/bundler/cli/common.rb +50 -14
- data/lib/bundler/cli/config.rb +171 -86
- data/lib/bundler/cli/console.rb +3 -6
- data/lib/bundler/cli/doctor.rb +29 -12
- data/lib/bundler/cli/exec.rb +9 -25
- data/lib/bundler/cli/fund.rb +36 -0
- data/lib/bundler/cli/gem.rb +268 -53
- data/lib/bundler/cli/info.rb +51 -18
- data/lib/bundler/cli/init.rb +7 -3
- data/lib/bundler/cli/inject.rb +2 -2
- data/lib/bundler/cli/install.rb +55 -73
- data/lib/bundler/cli/issue.rb +9 -8
- data/lib/bundler/cli/list.rb +19 -11
- data/lib/bundler/cli/lock.rb +56 -26
- data/lib/bundler/cli/open.rb +10 -7
- data/lib/bundler/cli/outdated.rb +159 -128
- data/lib/bundler/cli/platform.rb +8 -6
- data/lib/bundler/cli/plugin.rb +23 -12
- data/lib/bundler/cli/pristine.rb +39 -26
- data/lib/bundler/cli/remove.rb +1 -2
- data/lib/bundler/cli/show.rb +7 -7
- data/lib/bundler/cli/update.rb +51 -19
- data/lib/bundler/cli/viz.rb +1 -1
- data/lib/bundler/cli.rb +399 -390
- data/lib/bundler/compact_index_client/cache.rb +55 -77
- data/lib/bundler/compact_index_client/cache_file.rb +148 -0
- data/lib/bundler/compact_index_client/gem_parser.rb +32 -0
- data/lib/bundler/compact_index_client/parser.rb +84 -0
- data/lib/bundler/compact_index_client/updater.rb +72 -84
- data/lib/bundler/compact_index_client.rb +61 -73
- data/lib/bundler/constants.rb +9 -2
- data/lib/bundler/current_ruby.rb +20 -21
- data/lib/bundler/definition.rb +663 -505
- data/lib/bundler/dependency.rb +38 -71
- data/lib/bundler/deployment.rb +1 -1
- data/lib/bundler/digest.rb +71 -0
- data/lib/bundler/dsl.rb +171 -152
- data/lib/bundler/endpoint_specification.rb +43 -17
- data/lib/bundler/env.rb +11 -18
- data/lib/bundler/environment_preserver.rb +17 -8
- data/lib/bundler/errors.rb +115 -14
- data/lib/bundler/feature_flag.rb +15 -39
- data/lib/bundler/fetcher/base.rb +12 -12
- data/lib/bundler/fetcher/compact_index.rb +41 -47
- data/lib/bundler/fetcher/dependency.rb +4 -8
- data/lib/bundler/fetcher/downloader.rb +27 -20
- data/lib/bundler/fetcher/gem_remote_fetcher.rb +16 -0
- data/lib/bundler/fetcher/index.rb +6 -33
- data/lib/bundler/fetcher.rb +109 -90
- data/lib/bundler/force_platform.rb +16 -0
- data/lib/bundler/friendly_errors.rb +50 -55
- data/lib/bundler/gem_helper.rb +81 -46
- data/lib/bundler/gem_helpers.rb +78 -29
- data/lib/bundler/gem_tasks.rb +1 -1
- data/lib/bundler/gem_version_promoter.rb +68 -109
- data/lib/bundler/graph.rb +11 -11
- data/lib/bundler/index.rb +74 -82
- data/lib/bundler/injector.rb +58 -26
- data/lib/bundler/inline.rb +59 -35
- data/lib/bundler/installer/gem_installer.rb +29 -29
- data/lib/bundler/installer/parallel_installer.rb +38 -68
- data/lib/bundler/installer/standalone.rb +76 -16
- data/lib/bundler/installer.rb +60 -135
- data/lib/bundler/lazy_specification.rb +161 -63
- data/lib/bundler/lockfile_generator.rb +14 -5
- data/lib/bundler/lockfile_parser.rb +150 -109
- data/lib/bundler/man/bundle-add.1 +76 -0
- data/lib/bundler/man/bundle-add.1.ronn +87 -0
- data/{man → lib/bundler/man}/bundle-binstubs.1 +15 -22
- data/{man/bundle-binstubs.ronn → lib/bundler/man/bundle-binstubs.1.ronn} +8 -7
- data/lib/bundler/man/bundle-cache.1 +68 -0
- data/lib/bundler/man/bundle-cache.1.ronn +108 -0
- data/{man → lib/bundler/man}/bundle-check.1 +7 -14
- data/{man/bundle-check.ronn → lib/bundler/man/bundle-check.1.ronn} +7 -2
- data/{man → lib/bundler/man}/bundle-clean.1 +4 -11
- data/{man/bundle-clean.ronn → lib/bundler/man/bundle-clean.1.ronn} +1 -1
- data/{man → lib/bundler/man}/bundle-config.1 +80 -260
- data/{man/bundle-config.ronn → lib/bundler/man/bundle-config.1.ronn} +104 -98
- data/lib/bundler/man/bundle-console.1 +33 -0
- data/lib/bundler/man/bundle-console.1.ronn +39 -0
- data/{man → lib/bundler/man}/bundle-doctor.1 +5 -19
- data/{man/bundle-doctor.ronn → lib/bundler/man/bundle-doctor.1.ronn} +1 -1
- data/lib/bundler/man/bundle-env.1 +9 -0
- data/lib/bundler/man/bundle-env.1.ronn +10 -0
- data/{man → lib/bundler/man}/bundle-exec.1 +20 -78
- data/{man/bundle-exec.ronn → lib/bundler/man/bundle-exec.1.ronn} +12 -10
- data/lib/bundler/man/bundle-fund.1 +22 -0
- data/lib/bundler/man/bundle-fund.1.ronn +25 -0
- data/lib/bundler/man/bundle-gem.1 +87 -0
- data/lib/bundler/man/bundle-gem.1.ronn +149 -0
- data/lib/bundler/man/bundle-help.1 +9 -0
- data/lib/bundler/man/bundle-help.1.ronn +12 -0
- data/lib/bundler/man/bundle-info.1 +17 -0
- data/lib/bundler/man/bundle-info.1.ronn +21 -0
- data/{man → lib/bundler/man}/bundle-init.1 +8 -13
- data/{man/bundle-init.ronn → lib/bundler/man/bundle-init.1.ronn} +5 -2
- data/lib/bundler/man/bundle-inject.1 +31 -0
- data/{man/bundle-inject.ronn → lib/bundler/man/bundle-inject.1.ronn} +12 -2
- data/{man → lib/bundler/man}/bundle-install.1 +65 -155
- data/{man/bundle-install.ronn → lib/bundler/man/bundle-install.1.ronn} +66 -57
- data/lib/bundler/man/bundle-issue.1 +45 -0
- data/lib/bundler/man/bundle-issue.1.ronn +37 -0
- data/lib/bundler/man/bundle-licenses.1 +9 -0
- data/lib/bundler/man/bundle-licenses.1.ronn +10 -0
- data/{man → lib/bundler/man}/bundle-list.1 +9 -24
- data/{man/bundle-list.ronn → lib/bundler/man/bundle-list.1.ronn} +10 -7
- data/{man → lib/bundler/man}/bundle-lock.1 +25 -34
- data/{man/bundle-lock.ronn → lib/bundler/man/bundle-lock.1.ronn} +25 -4
- data/lib/bundler/man/bundle-open.1 +32 -0
- data/{man/bundle-open.ronn → lib/bundler/man/bundle-open.1.ronn} +10 -1
- data/{man → lib/bundler/man}/bundle-outdated.1 +23 -75
- data/{man/bundle-outdated.ronn → lib/bundler/man/bundle-outdated.1.ronn} +21 -22
- data/lib/bundler/man/bundle-platform.1 +49 -0
- data/{man/bundle-platform.ronn → lib/bundler/man/bundle-platform.1.ronn} +14 -7
- data/lib/bundler/man/bundle-plugin.1 +58 -0
- data/lib/bundler/man/bundle-plugin.1.ronn +63 -0
- data/{man → lib/bundler/man}/bundle-pristine.1 +5 -16
- data/{man/bundle-pristine.ronn → lib/bundler/man/bundle-pristine.1.ronn} +1 -1
- data/{man → lib/bundler/man}/bundle-remove.1 +4 -14
- data/{man/bundle-remove.ronn → lib/bundler/man/bundle-remove.1.ronn} +1 -1
- data/{man → lib/bundler/man}/bundle-show.1 +7 -11
- data/{man/bundle-show.ronn → lib/bundler/man/bundle-show.1.ronn} +4 -0
- data/{man → lib/bundler/man}/bundle-update.1 +35 -148
- data/{man/bundle-update.ronn → lib/bundler/man/bundle-update.1.ronn} +21 -12
- data/lib/bundler/man/bundle-version.1 +22 -0
- data/lib/bundler/man/bundle-version.1.ronn +24 -0
- data/{man → lib/bundler/man}/bundle-viz.1 +9 -18
- data/{man/bundle-viz.ronn → lib/bundler/man/bundle-viz.1.ronn} +9 -3
- data/{man → lib/bundler/man}/bundle.1 +19 -53
- data/{man/bundle.ronn → lib/bundler/man/bundle.1.ronn} +14 -9
- data/{man → lib/bundler/man}/gemfile.5 +139 -356
- data/{man → lib/bundler/man}/gemfile.5.ronn +134 -97
- data/{man → lib/bundler/man}/index.txt +9 -1
- data/lib/bundler/match_metadata.rb +17 -0
- data/lib/bundler/match_platform.rb +2 -3
- data/lib/bundler/match_remote_metadata.rb +29 -0
- data/lib/bundler/materialization.rb +59 -0
- data/lib/bundler/mirror.rb +10 -12
- data/lib/bundler/plugin/api/source.rb +34 -18
- data/lib/bundler/plugin/api.rb +1 -1
- data/lib/bundler/plugin/dsl.rb +1 -1
- data/lib/bundler/plugin/events.rb +24 -0
- data/lib/bundler/plugin/index.rb +44 -9
- data/lib/bundler/plugin/installer/git.rb +0 -4
- data/lib/bundler/plugin/installer/path.rb +18 -0
- data/lib/bundler/plugin/installer/rubygems.rb +1 -9
- data/lib/bundler/plugin/installer.rb +63 -27
- data/lib/bundler/plugin/source_list.rb +5 -1
- data/lib/bundler/plugin.rb +131 -45
- data/lib/bundler/process_lock.rb +10 -14
- data/lib/bundler/remote_specification.rb +22 -10
- data/lib/bundler/resolver/base.rb +118 -0
- data/lib/bundler/resolver/candidate.rb +82 -0
- data/lib/bundler/resolver/incompatibility.rb +15 -0
- data/lib/bundler/resolver/package.rb +90 -0
- data/lib/bundler/resolver/root.rb +25 -0
- data/lib/bundler/resolver/spec_group.rb +60 -68
- data/lib/bundler/resolver.rb +454 -303
- data/lib/bundler/retry.rb +6 -6
- data/lib/bundler/ruby_dsl.rb +51 -7
- data/lib/bundler/ruby_version.rb +23 -38
- data/lib/bundler/rubygems_ext.rb +357 -98
- data/lib/bundler/rubygems_gem_installer.rb +131 -65
- data/lib/bundler/rubygems_integration.rb +149 -591
- data/lib/bundler/runtime.rb +51 -51
- data/lib/bundler/safe_marshal.rb +31 -0
- data/lib/bundler/self_manager.rb +206 -0
- data/lib/bundler/settings.rb +271 -135
- data/lib/bundler/setup.rb +23 -12
- data/lib/bundler/shared_helpers.rb +127 -117
- data/lib/bundler/similarity_detector.rb +3 -3
- data/lib/bundler/source/git/git_proxy.rb +326 -127
- data/lib/bundler/source/git.rb +207 -88
- data/lib/bundler/source/metadata.rb +19 -18
- data/lib/bundler/source/path/installer.rb +11 -32
- data/lib/bundler/source/path.rb +39 -38
- data/lib/bundler/source/rubygems/remote.rb +3 -4
- data/lib/bundler/source/rubygems.rb +223 -255
- data/lib/bundler/source/rubygems_aggregate.rb +68 -0
- data/lib/bundler/source.rb +33 -11
- data/lib/bundler/source_list.rb +131 -66
- data/lib/bundler/source_map.rb +71 -0
- data/lib/bundler/spec_set.rb +239 -94
- data/lib/bundler/stub_specification.rb +77 -39
- data/lib/bundler/templates/Executable +3 -5
- data/lib/bundler/templates/Executable.bundler +23 -19
- data/lib/bundler/templates/Executable.standalone +4 -4
- data/lib/bundler/templates/Gemfile +0 -2
- data/lib/bundler/templates/newgem/CHANGELOG.md.tt +5 -0
- data/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +104 -46
- data/lib/bundler/templates/newgem/Cargo.toml.tt +7 -0
- data/lib/bundler/templates/newgem/Gemfile.tt +19 -2
- data/lib/bundler/templates/newgem/README.md.tt +18 -16
- data/lib/bundler/templates/newgem/Rakefile.tt +44 -6
- data/lib/bundler/templates/newgem/bin/console.tt +1 -4
- data/lib/bundler/templates/newgem/circleci/config.yml.tt +25 -0
- data/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +15 -0
- data/lib/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt +10 -0
- data/lib/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt +6 -0
- data/lib/bundler/templates/newgem/ext/newgem/newgem.c.tt +1 -1
- data/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +12 -0
- data/lib/bundler/templates/newgem/github/workflows/main.yml.tt +37 -0
- data/lib/bundler/templates/newgem/gitignore.tt +3 -0
- data/lib/bundler/templates/newgem/gitlab-ci.yml.tt +18 -0
- data/lib/bundler/templates/newgem/lib/newgem/version.rb.tt +2 -0
- data/lib/bundler/templates/newgem/lib/newgem.rb.tt +4 -2
- data/lib/bundler/templates/newgem/newgem.gemspec.tt +37 -40
- data/lib/bundler/templates/newgem/rubocop.yml.tt +8 -0
- data/lib/bundler/templates/newgem/sig/newgem.rbs.tt +8 -0
- data/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +2 -0
- data/lib/bundler/templates/newgem/spec/spec_helper.rb.tt +2 -1
- data/lib/bundler/templates/newgem/standard.yml.tt +3 -0
- data/lib/bundler/templates/newgem/test/minitest/test_helper.rb.tt +6 -0
- data/lib/bundler/templates/newgem/test/{newgem_test.rb.tt → minitest/test_newgem.rb.tt} +3 -1
- data/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +15 -0
- data/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +6 -0
- data/lib/bundler/ui/rg_proxy.rb +2 -2
- data/lib/bundler/ui/shell.rb +64 -23
- data/lib/bundler/ui/silent.rb +33 -6
- data/lib/bundler/ui.rb +3 -3
- data/lib/bundler/uri_credentials_filter.rb +11 -5
- data/lib/bundler/uri_normalizer.rb +23 -0
- data/lib/bundler/vendor/.document +1 -0
- data/lib/bundler/vendor/connection_pool/.document +1 -0
- data/lib/bundler/vendor/connection_pool/LICENSE +20 -0
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +174 -0
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +3 -0
- data/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +56 -0
- data/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +175 -0
- data/lib/bundler/vendor/fileutils/.document +1 -0
- data/lib/bundler/vendor/fileutils/COPYING +56 -0
- data/lib/bundler/vendor/fileutils/lib/fileutils.rb +1490 -432
- data/lib/bundler/vendor/net-http-persistent/.document +1 -0
- data/lib/bundler/vendor/net-http-persistent/README.rdoc +82 -0
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb +41 -0
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb +65 -0
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +79 -0
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +362 -484
- data/lib/bundler/vendor/pub_grub/.document +1 -0
- data/lib/bundler/vendor/pub_grub/LICENSE.txt +21 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb +20 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +189 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb +182 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +150 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/package.rb +43 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb +121 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb +45 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb +19 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +61 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/term.rb +105 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/version.rb +3 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +129 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +411 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +248 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +178 -0
- data/lib/bundler/vendor/pub_grub/lib/pub_grub.rb +31 -0
- data/lib/bundler/vendor/securerandom/.document +1 -0
- data/lib/bundler/vendor/securerandom/COPYING +56 -0
- data/lib/bundler/vendor/securerandom/lib/securerandom.rb +102 -0
- data/lib/bundler/vendor/thor/.document +1 -0
- data/lib/bundler/vendor/thor/LICENSE.md +20 -0
- data/lib/bundler/vendor/thor/lib/thor/actions/create_file.rb +4 -3
- data/lib/bundler/vendor/thor/lib/thor/actions/create_link.rb +3 -2
- data/lib/bundler/vendor/thor/lib/thor/actions/directory.rb +8 -18
- data/lib/bundler/vendor/thor/lib/thor/actions/empty_directory.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +27 -20
- data/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +34 -13
- data/lib/bundler/vendor/thor/lib/thor/actions.rb +47 -28
- data/lib/bundler/vendor/thor/lib/thor/base.rb +200 -54
- data/lib/bundler/vendor/thor/lib/thor/command.rb +34 -18
- data/lib/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +10 -0
- data/lib/bundler/vendor/thor/lib/thor/error.rb +74 -0
- data/lib/bundler/vendor/thor/lib/thor/group.rb +15 -4
- data/lib/bundler/vendor/thor/lib/thor/invocation.rb +2 -1
- data/lib/bundler/vendor/thor/lib/thor/line_editor/basic.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor/line_editor/readline.rb +6 -6
- data/lib/bundler/vendor/thor/lib/thor/line_editor.rb +2 -2
- data/lib/bundler/vendor/thor/lib/thor/nested_context.rb +29 -0
- data/lib/bundler/vendor/thor/lib/thor/parser/argument.rb +17 -1
- data/lib/bundler/vendor/thor/lib/thor/parser/arguments.rb +35 -15
- data/lib/bundler/vendor/thor/lib/thor/parser/option.rb +45 -13
- data/lib/bundler/vendor/thor/lib/thor/parser/options.rb +86 -13
- data/lib/bundler/vendor/thor/lib/thor/parser.rb +4 -4
- data/lib/bundler/vendor/thor/lib/thor/rake_compat.rb +3 -2
- data/lib/bundler/vendor/thor/lib/thor/runner.rb +51 -40
- data/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +99 -148
- data/lib/bundler/vendor/thor/lib/thor/shell/color.rb +6 -43
- data/lib/bundler/vendor/thor/lib/thor/shell/column_printer.rb +29 -0
- data/lib/bundler/vendor/thor/lib/thor/shell/html.rb +4 -49
- data/lib/bundler/vendor/thor/lib/thor/shell/table_printer.rb +118 -0
- data/lib/bundler/vendor/thor/lib/thor/shell/terminal.rb +42 -0
- data/lib/bundler/vendor/thor/lib/thor/shell/wrapped_printer.rb +38 -0
- data/lib/bundler/vendor/thor/lib/thor/shell.rb +6 -6
- data/lib/bundler/vendor/thor/lib/thor/util.rb +26 -9
- data/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
- data/lib/bundler/vendor/thor/lib/thor.rb +182 -17
- data/lib/bundler/vendor/tsort/.document +1 -0
- data/lib/bundler/vendor/tsort/LICENSE.txt +22 -0
- data/lib/bundler/vendor/tsort/lib/tsort.rb +455 -0
- data/lib/bundler/vendor/uri/.document +1 -0
- data/lib/bundler/vendor/uri/COPYING +56 -0
- data/lib/bundler/vendor/uri/lib/uri/common.rb +876 -0
- data/lib/bundler/vendor/uri/lib/uri/file.rb +100 -0
- data/lib/bundler/vendor/uri/lib/uri/ftp.rb +267 -0
- data/lib/bundler/vendor/uri/lib/uri/generic.rb +1578 -0
- data/lib/bundler/vendor/uri/lib/uri/http.rb +125 -0
- data/lib/bundler/vendor/uri/lib/uri/https.rb +23 -0
- data/lib/bundler/vendor/uri/lib/uri/ldap.rb +261 -0
- data/lib/bundler/vendor/uri/lib/uri/ldaps.rb +22 -0
- data/lib/bundler/vendor/uri/lib/uri/mailto.rb +293 -0
- data/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +546 -0
- data/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +206 -0
- data/lib/bundler/vendor/uri/lib/uri/version.rb +6 -0
- data/lib/bundler/vendor/uri/lib/uri/ws.rb +83 -0
- data/lib/bundler/vendor/uri/lib/uri/wss.rb +23 -0
- data/lib/bundler/vendor/uri/lib/uri.rb +104 -0
- data/lib/bundler/vendored_fileutils.rb +1 -6
- data/lib/bundler/vendored_net_http.rb +23 -0
- data/lib/bundler/vendored_persistent.rb +1 -42
- data/lib/bundler/{vendored_molinillo.rb → vendored_pub_grub.rb} +1 -1
- data/lib/bundler/vendored_securerandom.rb +12 -0
- data/lib/bundler/vendored_thor.rb +2 -2
- data/lib/bundler/vendored_timeout.rb +12 -0
- data/lib/bundler/vendored_tsort.rb +4 -0
- data/lib/bundler/vendored_uri.rb +21 -0
- data/lib/bundler/version.rb +5 -20
- data/lib/bundler/vlad.rb +3 -3
- data/lib/bundler/worker.rb +26 -15
- data/lib/bundler/yaml_serializer.rb +21 -13
- data/lib/bundler.rb +364 -230
- metadata +186 -218
- data/exe/bundle_ruby +0 -60
- data/lib/bundler/cli/package.rb +0 -49
- data/lib/bundler/compatibility_guard.rb +0 -14
- data/lib/bundler/dep_proxy.rb +0 -48
- data/lib/bundler/gem_remote_fetcher.rb +0 -43
- data/lib/bundler/gemdeps.rb +0 -29
- data/lib/bundler/psyched_yaml.rb +0 -37
- data/lib/bundler/ssl_certs/certificate_manager.rb +0 -66
- data/lib/bundler/ssl_certs/index.rubygems.org/GlobalSignRootCA.pem +0 -21
- data/lib/bundler/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem +0 -23
- data/lib/bundler/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem +0 -25
- data/lib/bundler/templates/gems.rb +0 -8
- data/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +0 -3
- data/lib/bundler/templates/newgem/test/test_helper.rb.tt +0 -4
- data/lib/bundler/templates/newgem/travis.yml.tt +0 -7
- data/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb +0 -26
- data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +0 -57
- data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +0 -81
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +0 -36
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +0 -66
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +0 -62
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +0 -63
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +0 -61
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +0 -126
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +0 -46
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +0 -36
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +0 -136
- data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +0 -223
- data/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +0 -143
- data/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +0 -6
- data/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +0 -101
- data/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb +0 -67
- data/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +0 -837
- data/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +0 -46
- data/lib/bundler/vendor/molinillo/lib/molinillo/state.rb +0 -58
- data/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -12
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/faster.rb +0 -27
- data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/ssl_reuse.rb +0 -129
- data/lib/bundler/vendor/thor/lib/thor/core_ext/io_binary_read.rb +0 -12
- data/lib/bundler/vendor/thor/lib/thor/core_ext/ordered_hash.rb +0 -129
- data/lib/bundler/version_ranges.rb +0 -76
- data/man/bundle-add.1 +0 -58
- data/man/bundle-add.1.txt +0 -52
- data/man/bundle-add.ronn +0 -40
- data/man/bundle-binstubs.1.txt +0 -48
- data/man/bundle-check.1.txt +0 -33
- data/man/bundle-clean.1.txt +0 -26
- data/man/bundle-config.1.txt +0 -529
- data/man/bundle-doctor.1.txt +0 -44
- data/man/bundle-exec.1.txt +0 -178
- data/man/bundle-gem.1 +0 -80
- data/man/bundle-gem.1.txt +0 -91
- data/man/bundle-gem.ronn +0 -78
- data/man/bundle-info.1 +0 -20
- data/man/bundle-info.1.txt +0 -21
- data/man/bundle-info.ronn +0 -17
- data/man/bundle-init.1.txt +0 -34
- data/man/bundle-inject.1 +0 -33
- data/man/bundle-inject.1.txt +0 -32
- data/man/bundle-install.1.txt +0 -396
- data/man/bundle-list.1.txt +0 -43
- data/man/bundle-lock.1.txt +0 -93
- data/man/bundle-open.1 +0 -32
- data/man/bundle-open.1.txt +0 -29
- data/man/bundle-outdated.1.txt +0 -131
- data/man/bundle-package.1 +0 -55
- data/man/bundle-package.1.txt +0 -79
- data/man/bundle-package.ronn +0 -72
- data/man/bundle-platform.1 +0 -61
- data/man/bundle-platform.1.txt +0 -57
- data/man/bundle-pristine.1.txt +0 -44
- data/man/bundle-remove.1.txt +0 -34
- data/man/bundle-show.1.txt +0 -27
- data/man/bundle-update.1.txt +0 -391
- data/man/bundle-viz.1.txt +0 -39
- data/man/bundle.1.txt +0 -116
- data/man/gemfile.5.txt +0 -653
- /data/lib/bundler/{ssl_certs → man}/.document +0 -0
@@ -1,114 +1,87 @@
|
|
1
|
-
.\" generated with Ronn/v0.
|
2
|
-
.\" http://github.com/
|
3
|
-
.
|
4
|
-
.TH "BUNDLE\-UPDATE" "1" "December 2018" "" ""
|
5
|
-
.
|
1
|
+
.\" generated with Ronn-NG/v0.10.1
|
2
|
+
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
+
.TH "BUNDLE\-UPDATE" "1" "January 2025" ""
|
6
4
|
.SH "NAME"
|
7
5
|
\fBbundle\-update\fR \- Update your gems to the latest available versions
|
8
|
-
.
|
9
6
|
.SH "SYNOPSIS"
|
10
|
-
\fBbundle update\fR \fI*gems\fR [\-\-all] [\-\-group=NAME] [\-\-source=NAME] [\-\-local] [\-\-ruby] [\-\-bundler[=VERSION]] [\-\-full\-index] [\-\-
|
11
|
-
.
|
7
|
+
\fBbundle update\fR \fI*gems\fR [\-\-all] [\-\-group=NAME] [\-\-source=NAME] [\-\-local] [\-\-ruby] [\-\-bundler[=VERSION]] [\-\-full\-index] [\-\-gemfile=GEMFILE] [\-\-jobs=NUMBER] [\-\-quiet] [\-\-patch|\-\-minor|\-\-major] [\-\-pre] [\-\-redownload] [\-\-strict] [\-\-conservative]
|
12
8
|
.SH "DESCRIPTION"
|
13
9
|
Update the gems specified (all gems, if \fB\-\-all\fR flag is used), ignoring the previously installed gems specified in the \fBGemfile\.lock\fR\. In general, you should use bundle install(1) \fIbundle\-install\.1\.html\fR to install the same exact gems and versions across machines\.
|
14
|
-
.
|
15
10
|
.P
|
16
11
|
You would use \fBbundle update\fR to explicitly update the version of a gem\.
|
17
|
-
.
|
18
12
|
.SH "OPTIONS"
|
19
|
-
.
|
20
13
|
.TP
|
21
14
|
\fB\-\-all\fR
|
22
15
|
Update all gems specified in Gemfile\.
|
23
|
-
.
|
24
16
|
.TP
|
25
|
-
\fB\-\-group=<
|
17
|
+
\fB\-\-group=<list>\fR, \fB\-g=<list>\fR
|
26
18
|
Only update the gems in the specified group\. For instance, you can update all gems in the development group with \fBbundle update \-\-group development\fR\. You can also call \fBbundle update rails \-\-group test\fR to update the rails gem and all gems in the test group, for example\.
|
27
|
-
.
|
28
19
|
.TP
|
29
|
-
\fB\-\-source=<
|
20
|
+
\fB\-\-source=<list>\fR
|
30
21
|
The name of a \fB:git\fR or \fB:path\fR source used in the Gemfile(5)\. For instance, with a \fB:git\fR source of \fBhttp://github\.com/rails/rails\.git\fR, you would call \fBbundle update \-\-source rails\fR
|
31
|
-
.
|
32
22
|
.TP
|
33
23
|
\fB\-\-local\fR
|
34
24
|
Do not attempt to fetch gems remotely and use the gem cache instead\.
|
35
|
-
.
|
36
25
|
.TP
|
37
26
|
\fB\-\-ruby\fR
|
38
27
|
Update the locked version of Ruby to the current version of Ruby\.
|
39
|
-
.
|
40
28
|
.TP
|
41
|
-
\fB\-\-bundler\fR
|
29
|
+
\fB\-\-bundler[=BUNDLER]\fR
|
42
30
|
Update the locked version of bundler to the invoked bundler version\.
|
43
|
-
.
|
44
31
|
.TP
|
45
32
|
\fB\-\-full\-index\fR
|
46
33
|
Fall back to using the single\-file index of all gems\.
|
47
|
-
.
|
48
34
|
.TP
|
49
|
-
\fB\-\-
|
50
|
-
|
51
|
-
.
|
35
|
+
\fB\-\-gemfile=GEMFILE\fR
|
36
|
+
Use the specified gemfile instead of [\fBGemfile(5)\fR][Gemfile(5)]\.
|
37
|
+
.TP
|
38
|
+
\fB\-\-jobs=<number>\fR, \fB\-j=<number>\fR
|
39
|
+
Specify the number of jobs to run in parallel\. The default is the number of available processors\.
|
52
40
|
.TP
|
53
41
|
\fB\-\-retry=[<number>]\fR
|
54
42
|
Retry failed network or git requests for \fInumber\fR times\.
|
55
|
-
.
|
56
43
|
.TP
|
57
44
|
\fB\-\-quiet\fR
|
58
45
|
Only output warnings and errors\.
|
59
|
-
.
|
60
46
|
.TP
|
61
|
-
\fB\-\-force\fR
|
62
|
-
Force downloading every gem\.
|
63
|
-
.
|
47
|
+
\fB\-\-redownload\fR, \fB\-\-force\fR
|
48
|
+
Force downloading every gem\.
|
64
49
|
.TP
|
65
50
|
\fB\-\-patch\fR
|
66
51
|
Prefer updating only to next patch version\.
|
67
|
-
.
|
68
52
|
.TP
|
69
53
|
\fB\-\-minor\fR
|
70
54
|
Prefer updating only to next minor version\.
|
71
|
-
.
|
72
55
|
.TP
|
73
56
|
\fB\-\-major\fR
|
74
57
|
Prefer updating to next major version (default)\.
|
75
|
-
.
|
58
|
+
.TP
|
59
|
+
\fB\-\-pre\fR
|
60
|
+
Always choose the highest allowed version, regardless of prerelease status\.
|
76
61
|
.TP
|
77
62
|
\fB\-\-strict\fR
|
78
63
|
Do not allow any gem to be updated past latest \fB\-\-patch\fR | \fB\-\-minor\fR | \fB\-\-major\fR\.
|
79
|
-
.
|
80
64
|
.TP
|
81
65
|
\fB\-\-conservative\fR
|
82
|
-
Use bundle install conservative update behavior and do not allow
|
83
|
-
.
|
66
|
+
Use bundle install conservative update behavior and do not allow indirect dependencies to be updated\.
|
84
67
|
.SH "UPDATING ALL GEMS"
|
85
68
|
If you run \fBbundle update \-\-all\fR, bundler will ignore any previously installed gems and resolve all dependencies again based on the latest versions of all gems available in the sources\.
|
86
|
-
.
|
87
69
|
.P
|
88
70
|
Consider the following Gemfile(5):
|
89
|
-
.
|
90
71
|
.IP "" 4
|
91
|
-
.
|
92
72
|
.nf
|
93
|
-
|
94
73
|
source "https://rubygems\.org"
|
95
74
|
|
96
75
|
gem "rails", "3\.0\.0\.rc"
|
97
76
|
gem "nokogiri"
|
98
|
-
.
|
99
77
|
.fi
|
100
|
-
.
|
101
78
|
.IP "" 0
|
102
|
-
.
|
103
79
|
.P
|
104
80
|
When you run bundle install(1) \fIbundle\-install\.1\.html\fR the first time, bundler will resolve all of the dependencies, all the way down, and install what you need:
|
105
|
-
.
|
106
81
|
.IP "" 4
|
107
|
-
.
|
108
82
|
.nf
|
109
|
-
|
110
|
-
|
111
|
-
Resolving dependencies\.\.\.
|
83
|
+
Fetching gem metadata from https://rubygems\.org/\|\.\|\.\|\.\|\.\|\.\|\.\|\.\|\.\|\.
|
84
|
+
Resolving dependencies\|\.\|\.\|\.
|
112
85
|
Installing builder 2\.1\.2
|
113
86
|
Installing abstract 1\.0\.0
|
114
87
|
Installing rack 1\.2\.8
|
@@ -138,55 +111,36 @@ Installing nokogiri 1\.6\.5
|
|
138
111
|
|
139
112
|
Bundle complete! 2 Gemfile dependencies, 26 gems total\.
|
140
113
|
Use `bundle show [gemname]` to see where a bundled gem is installed\.
|
141
|
-
.
|
142
114
|
.fi
|
143
|
-
.
|
144
115
|
.IP "" 0
|
145
|
-
.
|
146
116
|
.P
|
147
117
|
As you can see, even though you have two gems in the Gemfile(5), your application needs 26 different gems in order to run\. Bundler remembers the exact versions it installed in \fBGemfile\.lock\fR\. The next time you run bundle install(1) \fIbundle\-install\.1\.html\fR, bundler skips the dependency resolution and installs the same gems as it installed last time\.
|
148
|
-
.
|
149
118
|
.P
|
150
|
-
After checking in the \fBGemfile\.lock\fR into version control and cloning it on another machine, running bundle install(1) \fIbundle\-install\.1\.html\fR will \fIstill\fR install the gems that you installed last time\. You don
|
151
|
-
.
|
119
|
+
After checking in the \fBGemfile\.lock\fR into version control and cloning it on another machine, running bundle install(1) \fIbundle\-install\.1\.html\fR will \fIstill\fR install the gems that you installed last time\. You don't need to worry that a new release of \fBerubis\fR or \fBmail\fR changes the gems you use\.
|
152
120
|
.P
|
153
121
|
However, from time to time, you might want to update the gems you are using to the newest versions that still match the gems in your Gemfile(5)\.
|
154
|
-
.
|
155
122
|
.P
|
156
123
|
To do this, run \fBbundle update \-\-all\fR, which will ignore the \fBGemfile\.lock\fR, and resolve all the dependencies again\. Keep in mind that this process can result in a significantly different set of the 25 gems, based on the requirements of new gems that the gem authors released since the last time you ran \fBbundle update \-\-all\fR\.
|
157
|
-
.
|
158
124
|
.SH "UPDATING A LIST OF GEMS"
|
159
125
|
Sometimes, you want to update a single gem in the Gemfile(5), and leave the rest of the gems that you specified locked to the versions in the \fBGemfile\.lock\fR\.
|
160
|
-
.
|
161
126
|
.P
|
162
127
|
For instance, in the scenario above, imagine that \fBnokogiri\fR releases version \fB1\.4\.4\fR, and you want to update it \fIwithout\fR updating Rails and all of its dependencies\. To do this, run \fBbundle update nokogiri\fR\.
|
163
|
-
.
|
164
128
|
.P
|
165
129
|
Bundler will update \fBnokogiri\fR and any of its dependencies, but leave alone Rails and its dependencies\.
|
166
|
-
.
|
167
130
|
.SH "OVERLAPPING DEPENDENCIES"
|
168
131
|
Sometimes, multiple gems declared in your Gemfile(5) are satisfied by the same second\-level dependency\. For instance, consider the case of \fBthin\fR and \fBrack\-perftools\-profiler\fR\.
|
169
|
-
.
|
170
132
|
.IP "" 4
|
171
|
-
.
|
172
133
|
.nf
|
173
|
-
|
174
134
|
source "https://rubygems\.org"
|
175
135
|
|
176
136
|
gem "thin"
|
177
137
|
gem "rack\-perftools\-profiler"
|
178
|
-
.
|
179
138
|
.fi
|
180
|
-
.
|
181
139
|
.IP "" 0
|
182
|
-
.
|
183
140
|
.P
|
184
141
|
The \fBthin\fR gem depends on \fBrack >= 1\.0\fR, while \fBrack\-perftools\-profiler\fR depends on \fBrack ~> 1\.0\fR\. If you run bundle install, you get:
|
185
|
-
.
|
186
142
|
.IP "" 4
|
187
|
-
.
|
188
143
|
.nf
|
189
|
-
|
190
144
|
Fetching source index for https://rubygems\.org/
|
191
145
|
Installing daemons (1\.1\.0)
|
192
146
|
Installing eventmachine (0\.12\.10) with native extensions
|
@@ -196,199 +150,132 @@ Installing rack (1\.2\.1)
|
|
196
150
|
Installing rack\-perftools_profiler (0\.0\.2)
|
197
151
|
Installing thin (1\.2\.7) with native extensions
|
198
152
|
Using bundler (1\.0\.0\.rc\.3)
|
199
|
-
.
|
200
153
|
.fi
|
201
|
-
.
|
202
154
|
.IP "" 0
|
203
|
-
.
|
204
155
|
.P
|
205
|
-
In this case, the two gems have their own set of dependencies, but they share \fBrack\fR in common\. If you run \fBbundle update thin\fR, bundler will update \fBdaemons\fR, \fBeventmachine\fR and \fBrack\fR, which are dependencies of \fBthin\fR, but not \fBopen4\fR or \fBperftools\.rb\fR, which are dependencies of \fBrack\-perftools_profiler\fR\. Note that \fBbundle update thin\fR will update \fBrack\fR even though it
|
206
|
-
.
|
156
|
+
In this case, the two gems have their own set of dependencies, but they share \fBrack\fR in common\. If you run \fBbundle update thin\fR, bundler will update \fBdaemons\fR, \fBeventmachine\fR and \fBrack\fR, which are dependencies of \fBthin\fR, but not \fBopen4\fR or \fBperftools\.rb\fR, which are dependencies of \fBrack\-perftools_profiler\fR\. Note that \fBbundle update thin\fR will update \fBrack\fR even though it's \fIalso\fR a dependency of \fBrack\-perftools_profiler\fR\.
|
207
157
|
.P
|
208
158
|
In short, by default, when you update a gem using \fBbundle update\fR, bundler will update all dependencies of that gem, including those that are also dependencies of another gem\.
|
209
|
-
.
|
210
159
|
.P
|
211
|
-
To prevent updating
|
212
|
-
.
|
160
|
+
To prevent updating indirect dependencies, prior to version 1\.14 the only option was the \fBCONSERVATIVE UPDATING\fR behavior in bundle install(1) \fIbundle\-install\.1\.html\fR:
|
213
161
|
.P
|
214
162
|
In this scenario, updating the \fBthin\fR version manually in the Gemfile(5), and then running bundle install(1) \fIbundle\-install\.1\.html\fR will only update \fBdaemons\fR and \fBeventmachine\fR, but not \fBrack\fR\. For more information, see the \fBCONSERVATIVE UPDATING\fR section of bundle install(1) \fIbundle\-install\.1\.html\fR\.
|
215
|
-
.
|
216
163
|
.P
|
217
|
-
Starting with 1\.14, specifying the \fB\-\-conservative\fR option will also prevent
|
218
|
-
.
|
164
|
+
Starting with 1\.14, specifying the \fB\-\-conservative\fR option will also prevent indirect dependencies from being updated\.
|
219
165
|
.SH "PATCH LEVEL OPTIONS"
|
220
166
|
Version 1\.14 introduced 4 patch\-level options that will influence how gem versions are resolved\. One of the following options can be used: \fB\-\-patch\fR, \fB\-\-minor\fR or \fB\-\-major\fR\. \fB\-\-strict\fR can be added to further influence resolution\.
|
221
|
-
.
|
222
167
|
.TP
|
223
168
|
\fB\-\-patch\fR
|
224
169
|
Prefer updating only to next patch version\.
|
225
|
-
.
|
226
170
|
.TP
|
227
171
|
\fB\-\-minor\fR
|
228
172
|
Prefer updating only to next minor version\.
|
229
|
-
.
|
230
173
|
.TP
|
231
174
|
\fB\-\-major\fR
|
232
175
|
Prefer updating to next major version (default)\.
|
233
|
-
.
|
234
176
|
.TP
|
235
177
|
\fB\-\-strict\fR
|
236
178
|
Do not allow any gem to be updated past latest \fB\-\-patch\fR | \fB\-\-minor\fR | \fB\-\-major\fR\.
|
237
|
-
.
|
238
179
|
.P
|
239
|
-
When Bundler is resolving what versions to use to satisfy declared requirements in the Gemfile or in parent gems, it looks up all available versions, filters out any versions that don
|
240
|
-
.
|
180
|
+
When Bundler is resolving what versions to use to satisfy declared requirements in the Gemfile or in parent gems, it looks up all available versions, filters out any versions that don't satisfy the requirement, and then, by default, sorts them from newest to oldest, considering them in that order\.
|
241
181
|
.P
|
242
182
|
Providing one of the patch level options (e\.g\. \fB\-\-patch\fR) changes the sort order of the satisfying versions, causing Bundler to consider the latest \fB\-\-patch\fR or \fB\-\-minor\fR version available before other versions\. Note that versions outside the stated patch level could still be resolved to if necessary to find a suitable dependency graph\.
|
243
|
-
.
|
244
183
|
.P
|
245
|
-
For example, if gem
|
246
|
-
.
|
184
|
+
For example, if gem 'foo' is locked at 1\.0\.2, with no gem requirement defined in the Gemfile, and versions 1\.0\.3, 1\.0\.4, 1\.1\.0, 1\.1\.1, 2\.0\.0 all exist, the default order of preference by default (\fB\-\-major\fR) will be "2\.0\.0, 1\.1\.1, 1\.1\.0, 1\.0\.4, 1\.0\.3, 1\.0\.2"\.
|
247
185
|
.P
|
248
186
|
If the \fB\-\-patch\fR option is used, the order of preference will change to "1\.0\.4, 1\.0\.3, 1\.0\.2, 1\.1\.1, 1\.1\.0, 2\.0\.0"\.
|
249
|
-
.
|
250
187
|
.P
|
251
188
|
If the \fB\-\-minor\fR option is used, the order of preference will change to "1\.1\.1, 1\.1\.0, 1\.0\.4, 1\.0\.3, 1\.0\.2, 2\.0\.0"\.
|
252
|
-
.
|
253
189
|
.P
|
254
190
|
Combining the \fB\-\-strict\fR option with any of the patch level options will remove any versions beyond the scope of the patch level option, to ensure that no gem is updated that far\.
|
255
|
-
.
|
256
191
|
.P
|
257
192
|
To continue the previous example, if both \fB\-\-patch\fR and \fB\-\-strict\fR options are used, the available versions for resolution would be "1\.0\.4, 1\.0\.3, 1\.0\.2"\. If \fB\-\-minor\fR and \fB\-\-strict\fR are used, it would be "1\.1\.1, 1\.1\.0, 1\.0\.4, 1\.0\.3, 1\.0\.2"\.
|
258
|
-
.
|
259
193
|
.P
|
260
|
-
Gem requirements as defined in the Gemfile will still be the first determining factor for what versions are available\. If the gem requirement for \fBfoo\fR in the Gemfile is
|
261
|
-
.
|
194
|
+
Gem requirements as defined in the Gemfile will still be the first determining factor for what versions are available\. If the gem requirement for \fBfoo\fR in the Gemfile is '~> 1\.0', that will accomplish the same thing as providing the \fB\-\-minor\fR and \fB\-\-strict\fR options\.
|
262
195
|
.SH "PATCH LEVEL EXAMPLES"
|
263
196
|
Given the following gem specifications:
|
264
|
-
.
|
265
197
|
.IP "" 4
|
266
|
-
.
|
267
198
|
.nf
|
268
|
-
|
269
199
|
foo 1\.4\.3, requires: ~> bar 2\.0
|
270
200
|
foo 1\.4\.4, requires: ~> bar 2\.0
|
271
201
|
foo 1\.4\.5, requires: ~> bar 2\.1
|
272
202
|
foo 1\.5\.0, requires: ~> bar 2\.1
|
273
203
|
foo 1\.5\.1, requires: ~> bar 3\.0
|
274
204
|
bar with versions 2\.0\.3, 2\.0\.4, 2\.1\.0, 2\.1\.1, 3\.0\.0
|
275
|
-
.
|
276
205
|
.fi
|
277
|
-
.
|
278
206
|
.IP "" 0
|
279
|
-
.
|
280
207
|
.P
|
281
208
|
Gemfile:
|
282
|
-
.
|
283
209
|
.IP "" 4
|
284
|
-
.
|
285
210
|
.nf
|
286
|
-
|
287
|
-
gem \'foo\'
|
288
|
-
.
|
211
|
+
gem 'foo'
|
289
212
|
.fi
|
290
|
-
.
|
291
213
|
.IP "" 0
|
292
|
-
.
|
293
214
|
.P
|
294
215
|
Gemfile\.lock:
|
295
|
-
.
|
296
216
|
.IP "" 4
|
297
|
-
.
|
298
217
|
.nf
|
299
|
-
|
300
218
|
foo (1\.4\.3)
|
301
219
|
bar (~> 2\.0)
|
302
220
|
bar (2\.0\.3)
|
303
|
-
.
|
304
221
|
.fi
|
305
|
-
.
|
306
222
|
.IP "" 0
|
307
|
-
.
|
308
223
|
.P
|
309
224
|
Cases:
|
310
|
-
.
|
311
225
|
.IP "" 4
|
312
|
-
.
|
313
226
|
.nf
|
314
|
-
|
315
227
|
# Command Line Result
|
316
228
|
\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-\-
|
317
|
-
1 bundle update \-\-patch
|
318
|
-
2 bundle update \-\-patch foo
|
319
|
-
3 bundle update \-\-minor
|
320
|
-
4 bundle update \-\-minor \-\-strict
|
321
|
-
5 bundle update \-\-patch \-\-strict
|
322
|
-
.
|
229
|
+
1 bundle update \-\-patch 'foo 1\.4\.5', 'bar 2\.1\.1'
|
230
|
+
2 bundle update \-\-patch foo 'foo 1\.4\.5', 'bar 2\.1\.1'
|
231
|
+
3 bundle update \-\-minor 'foo 1\.5\.1', 'bar 3\.0\.0'
|
232
|
+
4 bundle update \-\-minor \-\-strict 'foo 1\.5\.0', 'bar 2\.1\.1'
|
233
|
+
5 bundle update \-\-patch \-\-strict 'foo 1\.4\.4', 'bar 2\.0\.4'
|
323
234
|
.fi
|
324
|
-
.
|
325
235
|
.IP "" 0
|
326
|
-
.
|
327
236
|
.P
|
328
237
|
In case 1, bar is upgraded to 2\.1\.1, a minor version increase, because the dependency from foo 1\.4\.5 required it\.
|
329
|
-
.
|
330
238
|
.P
|
331
|
-
In case 2, only foo is requested to be unlocked, but bar is also allowed to move because it
|
332
|
-
.
|
239
|
+
In case 2, only foo is requested to be unlocked, but bar is also allowed to move because it's not a declared dependency in the Gemfile\.
|
333
240
|
.P
|
334
241
|
In case 3, bar goes up a whole major release, because a minor increase is preferred now for foo, and when it goes to 1\.5\.1, it requires 3\.0\.0 of bar\.
|
335
|
-
.
|
336
242
|
.P
|
337
|
-
In case 4, foo is preferred up to a minor version, but 1\.5\.1 won
|
338
|
-
.
|
243
|
+
In case 4, foo is preferred up to a minor version, but 1\.5\.1 won't work because the \-\-strict flag removes bar 3\.0\.0 from consideration since it's a major increment\.
|
339
244
|
.P
|
340
245
|
In case 5, both foo and bar have any minor or major increments removed from consideration because of the \-\-strict flag, so the most they can move is up to 1\.4\.4 and 2\.0\.4\.
|
341
|
-
.
|
342
246
|
.SH "RECOMMENDED WORKFLOW"
|
343
247
|
In general, when working with an application managed with bundler, you should use the following workflow:
|
344
|
-
.
|
345
248
|
.IP "\(bu" 4
|
346
249
|
After you create your Gemfile(5) for the first time, run
|
347
|
-
.
|
348
250
|
.IP
|
349
251
|
$ bundle install
|
350
|
-
.
|
351
252
|
.IP "\(bu" 4
|
352
253
|
Check the resulting \fBGemfile\.lock\fR into version control
|
353
|
-
.
|
354
254
|
.IP
|
355
255
|
$ git add Gemfile\.lock
|
356
|
-
.
|
357
256
|
.IP "\(bu" 4
|
358
257
|
When checking out this repository on another development machine, run
|
359
|
-
.
|
360
258
|
.IP
|
361
259
|
$ bundle install
|
362
|
-
.
|
363
260
|
.IP "\(bu" 4
|
364
261
|
When checking out this repository on a deployment machine, run
|
365
|
-
.
|
366
262
|
.IP
|
367
263
|
$ bundle install \-\-deployment
|
368
|
-
.
|
369
264
|
.IP "\(bu" 4
|
370
265
|
After changing the Gemfile(5) to reflect a new or update dependency, run
|
371
|
-
.
|
372
266
|
.IP
|
373
267
|
$ bundle install
|
374
|
-
.
|
375
268
|
.IP "\(bu" 4
|
376
269
|
Make sure to check the updated \fBGemfile\.lock\fR into version control
|
377
|
-
.
|
378
270
|
.IP
|
379
271
|
$ git add Gemfile\.lock
|
380
|
-
.
|
381
272
|
.IP "\(bu" 4
|
382
273
|
If bundle install(1) \fIbundle\-install\.1\.html\fR reports a conflict, manually update the specific gems that you changed in the Gemfile(5)
|
383
|
-
.
|
384
274
|
.IP
|
385
275
|
$ bundle update rails thin
|
386
|
-
.
|
387
276
|
.IP "\(bu" 4
|
388
277
|
If you want to update all the gems to the latest possible versions that still match the gems listed in the Gemfile(5), run
|
389
|
-
.
|
390
278
|
.IP
|
391
279
|
$ bundle update \-\-all
|
392
|
-
.
|
393
280
|
.IP "" 0
|
394
281
|
|
@@ -10,10 +10,12 @@ bundle-update(1) -- Update your gems to the latest available versions
|
|
10
10
|
[--ruby]
|
11
11
|
[--bundler[=VERSION]]
|
12
12
|
[--full-index]
|
13
|
-
[--
|
13
|
+
[--gemfile=GEMFILE]
|
14
|
+
[--jobs=NUMBER]
|
14
15
|
[--quiet]
|
15
|
-
[--force]
|
16
16
|
[--patch|--minor|--major]
|
17
|
+
[--pre]
|
18
|
+
[--redownload]
|
17
19
|
[--strict]
|
18
20
|
[--conservative]
|
19
21
|
|
@@ -32,13 +34,13 @@ gem.
|
|
32
34
|
* `--all`:
|
33
35
|
Update all gems specified in Gemfile.
|
34
36
|
|
35
|
-
* `--group=<
|
37
|
+
* `--group=<list>`, `-g=<list>`:
|
36
38
|
Only update the gems in the specified group. For instance, you can update all gems
|
37
39
|
in the development group with `bundle update --group development`. You can also
|
38
40
|
call `bundle update rails --group test` to update the rails gem and all gems in
|
39
41
|
the test group, for example.
|
40
42
|
|
41
|
-
* `--source=<
|
43
|
+
* `--source=<list>`:
|
42
44
|
The name of a `:git` or `:path` source used in the Gemfile(5). For
|
43
45
|
instance, with a `:git` source of `http://github.com/rails/rails.git`,
|
44
46
|
you would call `bundle update --source rails`
|
@@ -49,14 +51,18 @@ gem.
|
|
49
51
|
* `--ruby`:
|
50
52
|
Update the locked version of Ruby to the current version of Ruby.
|
51
53
|
|
52
|
-
* `--bundler`:
|
54
|
+
* `--bundler[=BUNDLER]`:
|
53
55
|
Update the locked version of bundler to the invoked bundler version.
|
54
56
|
|
55
57
|
* `--full-index`:
|
56
58
|
Fall back to using the single-file index of all gems.
|
57
59
|
|
58
|
-
* `--
|
59
|
-
|
60
|
+
* `--gemfile=GEMFILE`:
|
61
|
+
Use the specified gemfile instead of [`Gemfile(5)`][Gemfile(5)].
|
62
|
+
|
63
|
+
* `--jobs=<number>`, `-j=<number>`:
|
64
|
+
Specify the number of jobs to run in parallel. The default is the number of
|
65
|
+
available processors.
|
60
66
|
|
61
67
|
* `--retry=[<number>]`:
|
62
68
|
Retry failed network or git requests for <number> times.
|
@@ -64,8 +70,8 @@ gem.
|
|
64
70
|
* `--quiet`:
|
65
71
|
Only output warnings and errors.
|
66
72
|
|
67
|
-
* `--force`:
|
68
|
-
Force downloading every gem.
|
73
|
+
* `--redownload`, `--force`:
|
74
|
+
Force downloading every gem.
|
69
75
|
|
70
76
|
* `--patch`:
|
71
77
|
Prefer updating only to next patch version.
|
@@ -76,11 +82,14 @@ gem.
|
|
76
82
|
* `--major`:
|
77
83
|
Prefer updating to next major version (default).
|
78
84
|
|
85
|
+
* `--pre`:
|
86
|
+
Always choose the highest allowed version, regardless of prerelease status.
|
87
|
+
|
79
88
|
* `--strict`:
|
80
89
|
Do not allow any gem to be updated past latest `--patch` | `--minor` | `--major`.
|
81
90
|
|
82
91
|
* `--conservative`:
|
83
|
-
Use bundle install conservative update behavior and do not allow
|
92
|
+
Use bundle install conservative update behavior and do not allow indirect dependencies to be updated.
|
84
93
|
|
85
94
|
## UPDATING ALL GEMS
|
86
95
|
|
@@ -195,7 +204,7 @@ In short, by default, when you update a gem using `bundle update`, bundler will
|
|
195
204
|
update all dependencies of that gem, including those that are also dependencies
|
196
205
|
of another gem.
|
197
206
|
|
198
|
-
To prevent updating
|
207
|
+
To prevent updating indirect dependencies, prior to version 1.14 the only option
|
199
208
|
was the `CONSERVATIVE UPDATING` behavior in [bundle install(1)](bundle-install.1.html):
|
200
209
|
|
201
210
|
In this scenario, updating the `thin` version manually in the Gemfile(5),
|
@@ -203,7 +212,7 @@ and then running [bundle install(1)](bundle-install.1.html) will only update `da
|
|
203
212
|
but not `rack`. For more information, see the `CONSERVATIVE UPDATING` section
|
204
213
|
of [bundle install(1)](bundle-install.1.html).
|
205
214
|
|
206
|
-
Starting with 1.14, specifying the `--conservative` option will also prevent
|
215
|
+
Starting with 1.14, specifying the `--conservative` option will also prevent indirect
|
207
216
|
dependencies from being updated.
|
208
217
|
|
209
218
|
## PATCH LEVEL OPTIONS
|
@@ -0,0 +1,22 @@
|
|
1
|
+
.\" generated with Ronn-NG/v0.10.1
|
2
|
+
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
+
.TH "BUNDLE\-VERSION" "1" "January 2025" ""
|
4
|
+
.SH "NAME"
|
5
|
+
\fBbundle\-version\fR \- Prints Bundler version information
|
6
|
+
.SH "SYNOPSIS"
|
7
|
+
\fBbundle version\fR
|
8
|
+
.SH "DESCRIPTION"
|
9
|
+
Prints Bundler version information\.
|
10
|
+
.SH "OPTIONS"
|
11
|
+
No options\.
|
12
|
+
.SH "EXAMPLE"
|
13
|
+
Print the version of Bundler with build date and commit hash of the in the Git source\.
|
14
|
+
.IP "" 4
|
15
|
+
.nf
|
16
|
+
bundle version
|
17
|
+
.fi
|
18
|
+
.IP "" 0
|
19
|
+
.P
|
20
|
+
shows \fBBundler version 2\.3\.21 (2022\-08\-24 commit d54be5fdd8)\fR for example\.
|
21
|
+
.P
|
22
|
+
cf\. \fBbundle \-\-version\fR shows \fBBundler version 2\.3\.21\fR\.
|
@@ -0,0 +1,24 @@
|
|
1
|
+
bundle-version(1) -- Prints Bundler version information
|
2
|
+
=======================================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
`bundle version`
|
7
|
+
|
8
|
+
## DESCRIPTION
|
9
|
+
|
10
|
+
Prints Bundler version information.
|
11
|
+
|
12
|
+
## OPTIONS
|
13
|
+
|
14
|
+
No options.
|
15
|
+
|
16
|
+
## EXAMPLE
|
17
|
+
|
18
|
+
Print the version of Bundler with build date and commit hash of the in the Git source.
|
19
|
+
|
20
|
+
bundle version
|
21
|
+
|
22
|
+
shows `Bundler version 2.3.21 (2022-08-24 commit d54be5fdd8)` for example.
|
23
|
+
|
24
|
+
cf. `bundle --version` shows `Bundler version 2.3.21`.
|
@@ -1,39 +1,30 @@
|
|
1
|
-
.\" generated with Ronn/v0.
|
2
|
-
.\" http://github.com/
|
3
|
-
.
|
4
|
-
.TH "BUNDLE\-VIZ" "1" "November 2018" "" ""
|
5
|
-
.
|
1
|
+
.\" generated with Ronn-NG/v0.10.1
|
2
|
+
.\" http://github.com/apjanke/ronn-ng/tree/0.10.1
|
3
|
+
.TH "BUNDLE\-VIZ" "1" "January 2025" ""
|
6
4
|
.SH "NAME"
|
7
5
|
\fBbundle\-viz\fR \- Generates a visual dependency graph for your Gemfile
|
8
|
-
.
|
9
6
|
.SH "SYNOPSIS"
|
10
7
|
\fBbundle viz\fR [\-\-file=FILE] [\-\-format=FORMAT] [\-\-requirements] [\-\-version] [\-\-without=GROUP GROUP]
|
11
|
-
.
|
12
8
|
.SH "DESCRIPTION"
|
13
9
|
\fBviz\fR generates a PNG file of the current \fBGemfile(5)\fR as a dependency graph\. \fBviz\fR requires the ruby\-graphviz gem (and its dependencies)\.
|
14
|
-
.
|
15
10
|
.P
|
16
11
|
The associated gems must also be installed via \fBbundle install(1)\fR \fIbundle\-install\.1\.html\fR\.
|
17
|
-
.
|
12
|
+
.P
|
13
|
+
\fBviz\fR command was deprecated in Bundler 2\.2\. Use bundler\-graph plugin \fIhttps://github\.com/rubygems/bundler\-graph\fR instead\.
|
18
14
|
.SH "OPTIONS"
|
19
|
-
.
|
20
15
|
.TP
|
21
|
-
\fB\-\-file\fR, \fB\-f\fR
|
16
|
+
\fB\-\-file=FILE\fR, \fB\-f=FILE\fR
|
22
17
|
The name to use for the generated file\. See \fB\-\-format\fR option
|
23
|
-
.
|
24
18
|
.TP
|
25
|
-
\fB\-\-format\fR, \fB\-F\fR
|
26
|
-
This is output format option\. Supported format is png, jpg, svg, dot
|
27
|
-
.
|
19
|
+
\fB\-\-format=FORMAT\fR, \fB\-F=FORMAT\fR
|
20
|
+
This is output format option\. Supported format is png, jpg, svg, dot \|\.\|\.\|\.
|
28
21
|
.TP
|
29
22
|
\fB\-\-requirements\fR, \fB\-R\fR
|
30
23
|
Set to show the version of each required dependency\.
|
31
|
-
.
|
32
24
|
.TP
|
33
25
|
\fB\-\-version\fR, \fB\-v\fR
|
34
26
|
Set to show each gem version\.
|
35
|
-
.
|
36
27
|
.TP
|
37
|
-
\fB\-\-without
|
28
|
+
\fB\-\-without=<list>\fR, \fB\-W=<list>\fR
|
38
29
|
Exclude gems that are part of the specified named group\.
|
39
30
|
|
@@ -16,15 +16,21 @@ bundle-viz(1) -- Generates a visual dependency graph for your Gemfile
|
|
16
16
|
|
17
17
|
The associated gems must also be installed via [`bundle install(1)`](bundle-install.1.html).
|
18
18
|
|
19
|
+
`viz` command was deprecated in Bundler 2.2. Use [bundler-graph plugin](https://github.com/rubygems/bundler-graph) instead.
|
20
|
+
|
19
21
|
## OPTIONS
|
20
22
|
|
21
|
-
* `--file`, `-f`:
|
23
|
+
* `--file=FILE`, `-f=FILE`:
|
22
24
|
The name to use for the generated file. See `--format` option
|
23
|
-
|
25
|
+
|
26
|
+
* `--format=FORMAT`, `-F=FORMAT`:
|
24
27
|
This is output format option. Supported format is png, jpg, svg, dot ...
|
28
|
+
|
25
29
|
* `--requirements`, `-R`:
|
26
30
|
Set to show the version of each required dependency.
|
31
|
+
|
27
32
|
* `--version`, `-v`:
|
28
33
|
Set to show each gem version.
|
29
|
-
|
34
|
+
|
35
|
+
* `--without=<list>`, `-W=<list>`:
|
30
36
|
Exclude gems that are part of the specified named group.
|