rubygems-update 3.3.18 → 3.4.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +1429 -1064
- data/CONTRIBUTING.md +31 -8
- data/Manifest.txt +61 -36
- data/POLICIES.md +55 -20
- data/README.md +19 -6
- data/bundler/CHANGELOG.md +457 -1
- data/bundler/README.md +3 -6
- data/bundler/UPGRADING.md +11 -4
- data/bundler/bundler.gemspec +8 -10
- data/bundler/exe/bundle +5 -16
- data/bundler/lib/bundler/build_metadata.rb +2 -2
- data/bundler/lib/bundler/cli/add.rb +1 -1
- data/bundler/lib/bundler/cli/binstubs.rb +6 -2
- data/bundler/lib/bundler/cli/check.rb +1 -1
- data/bundler/lib/bundler/cli/common.rb +2 -0
- data/bundler/lib/bundler/cli/console.rb +2 -2
- data/bundler/lib/bundler/cli/doctor.rb +4 -6
- data/bundler/lib/bundler/cli/gem.rb +62 -40
- data/bundler/lib/bundler/cli/info.rb +1 -1
- data/bundler/lib/bundler/cli/init.rb +6 -2
- data/bundler/lib/bundler/cli/install.rb +8 -6
- data/bundler/lib/bundler/cli/lock.rb +8 -5
- data/bundler/lib/bundler/cli/open.rb +6 -4
- data/bundler/lib/bundler/cli/outdated.rb +14 -7
- data/bundler/lib/bundler/cli/platform.rb +7 -5
- data/bundler/lib/bundler/cli/viz.rb +1 -1
- data/bundler/lib/bundler/cli.rb +53 -7
- data/bundler/lib/bundler/compact_index_client/cache.rb +1 -1
- data/bundler/lib/bundler/compact_index_client/updater.rb +40 -39
- data/bundler/lib/bundler/constants.rb +1 -1
- data/bundler/lib/bundler/current_ruby.rb +16 -5
- data/bundler/lib/bundler/definition.rb +262 -133
- data/bundler/lib/bundler/dependency.rb +20 -86
- data/bundler/lib/bundler/digest.rb +1 -1
- data/bundler/lib/bundler/dsl.rb +6 -7
- data/bundler/lib/bundler/endpoint_specification.rb +2 -13
- data/bundler/lib/bundler/env.rb +2 -2
- data/bundler/lib/bundler/environment_preserver.rb +3 -2
- data/bundler/lib/bundler/errors.rb +1 -11
- data/bundler/lib/bundler/feature_flag.rb +0 -2
- data/bundler/lib/bundler/fetcher/compact_index.rb +11 -13
- data/bundler/lib/bundler/fetcher/dependency.rb +2 -6
- data/bundler/lib/bundler/fetcher/downloader.rb +4 -5
- data/bundler/lib/bundler/fetcher/index.rb +1 -2
- data/bundler/lib/bundler/fetcher.rb +21 -15
- data/bundler/lib/bundler/force_platform.rb +18 -0
- data/bundler/lib/bundler/friendly_errors.rb +1 -4
- data/bundler/lib/bundler/gem_helper.rb +3 -4
- data/bundler/lib/bundler/gem_helpers.rb +7 -2
- data/bundler/lib/bundler/gem_version_promoter.rb +53 -98
- data/bundler/lib/bundler/graph.rb +3 -3
- data/bundler/lib/bundler/index.rb +13 -47
- data/bundler/lib/bundler/injector.rb +5 -4
- data/bundler/lib/bundler/inline.rb +9 -11
- data/bundler/lib/bundler/installer/parallel_installer.rb +4 -34
- data/bundler/lib/bundler/installer/standalone.rb +13 -9
- data/bundler/lib/bundler/installer.rb +17 -29
- data/bundler/lib/bundler/lazy_specification.rb +54 -53
- data/bundler/lib/bundler/lockfile_generator.rb +3 -3
- data/bundler/lib/bundler/lockfile_parser.rb +17 -16
- data/bundler/lib/bundler/man/bundle-add.1 +6 -2
- data/bundler/lib/bundler/man/bundle-add.1.ronn +4 -1
- data/bundler/lib/bundler/man/bundle-binstubs.1 +1 -1
- data/bundler/lib/bundler/man/bundle-cache.1 +9 -3
- data/bundler/lib/bundler/man/bundle-cache.1.ronn +9 -2
- data/bundler/lib/bundler/man/bundle-check.1 +1 -1
- data/bundler/lib/bundler/man/bundle-clean.1 +2 -2
- data/bundler/lib/bundler/man/bundle-clean.1.ronn +1 -1
- data/bundler/lib/bundler/man/bundle-config.1 +26 -10
- data/bundler/lib/bundler/man/bundle-config.1.ronn +17 -10
- data/bundler/lib/bundler/man/bundle-console.1 +53 -0
- data/bundler/lib/bundler/man/bundle-console.1.ronn +44 -0
- data/bundler/lib/bundler/man/bundle-doctor.1 +1 -1
- data/bundler/lib/bundler/man/bundle-exec.1 +6 -6
- data/bundler/lib/bundler/man/bundle-exec.1.ronn +6 -6
- data/bundler/lib/bundler/man/bundle-gem.1 +27 -37
- data/bundler/lib/bundler/man/bundle-gem.1.ronn +5 -5
- data/bundler/lib/bundler/man/bundle-help.1 +13 -0
- data/bundler/lib/bundler/man/bundle-help.1.ronn +12 -0
- data/bundler/lib/bundler/man/bundle-info.1 +3 -3
- data/bundler/lib/bundler/man/bundle-info.1.ronn +3 -3
- data/bundler/lib/bundler/man/bundle-init.1 +5 -1
- data/bundler/lib/bundler/man/bundle-init.1.ronn +2 -0
- data/bundler/lib/bundler/man/bundle-inject.1 +5 -2
- data/bundler/lib/bundler/man/bundle-inject.1.ronn +3 -1
- data/bundler/lib/bundler/man/bundle-install.1 +5 -30
- data/bundler/lib/bundler/man/bundle-install.1.ronn +6 -29
- data/bundler/lib/bundler/man/bundle-list.1 +1 -1
- data/bundler/lib/bundler/man/bundle-lock.1 +1 -1
- data/bundler/lib/bundler/man/bundle-open.1 +22 -2
- data/bundler/lib/bundler/man/bundle-open.1.ronn +9 -1
- data/bundler/lib/bundler/man/bundle-outdated.1 +13 -9
- data/bundler/lib/bundler/man/bundle-outdated.1.ronn +12 -9
- data/bundler/lib/bundler/man/bundle-platform.1 +16 -6
- data/bundler/lib/bundler/man/bundle-platform.1.ronn +14 -7
- data/bundler/lib/bundler/man/bundle-plugin.1 +81 -0
- data/bundler/lib/bundler/man/bundle-plugin.1.ronn +59 -0
- data/bundler/lib/bundler/man/bundle-pristine.1 +1 -1
- data/bundler/lib/bundler/man/bundle-remove.1 +1 -1
- data/bundler/lib/bundler/man/bundle-show.1 +1 -1
- data/bundler/lib/bundler/man/bundle-update.1 +1 -1
- data/bundler/lib/bundler/man/bundle-version.1 +35 -0
- data/bundler/lib/bundler/man/bundle-version.1.ronn +24 -0
- data/bundler/lib/bundler/man/bundle-viz.1 +4 -1
- data/bundler/lib/bundler/man/bundle-viz.1.ronn +2 -0
- data/bundler/lib/bundler/man/bundle.1 +15 -10
- data/bundler/lib/bundler/man/bundle.1.ronn +12 -7
- data/bundler/lib/bundler/man/gemfile.5 +55 -55
- data/bundler/lib/bundler/man/gemfile.5.ronn +57 -53
- data/bundler/lib/bundler/man/index.txt +4 -0
- data/bundler/lib/bundler/match_metadata.rb +13 -0
- data/bundler/lib/bundler/match_remote_metadata.rb +29 -0
- data/bundler/lib/bundler/mirror.rb +5 -7
- data/bundler/lib/bundler/plugin/index.rb +5 -5
- data/bundler/lib/bundler/plugin/installer/rubygems.rb +0 -4
- data/bundler/lib/bundler/plugin/installer.rb +5 -2
- data/bundler/lib/bundler/plugin.rb +3 -1
- data/bundler/lib/bundler/remote_specification.rb +7 -12
- data/bundler/lib/bundler/resolver/base.rb +107 -0
- data/bundler/lib/bundler/resolver/candidate.rb +94 -0
- data/bundler/lib/bundler/resolver/incompatibility.rb +15 -0
- data/bundler/lib/bundler/resolver/package.rb +72 -0
- data/bundler/lib/bundler/resolver/root.rb +25 -0
- data/bundler/lib/bundler/resolver/spec_group.rb +42 -71
- data/bundler/lib/bundler/resolver.rb +335 -328
- data/bundler/lib/bundler/ruby_dsl.rb +7 -1
- data/bundler/lib/bundler/ruby_version.rb +8 -8
- data/bundler/lib/bundler/rubygems_ext.rb +100 -9
- data/bundler/lib/bundler/rubygems_gem_installer.rb +23 -14
- data/bundler/lib/bundler/rubygems_integration.rb +11 -15
- data/bundler/lib/bundler/runtime.rb +2 -6
- data/bundler/lib/bundler/safe_marshal.rb +31 -0
- data/bundler/lib/bundler/settings.rb +5 -11
- data/bundler/lib/bundler/setup.rb +4 -1
- data/bundler/lib/bundler/shared_helpers.rb +3 -3
- data/bundler/lib/bundler/source/git/git_proxy.rb +237 -74
- data/bundler/lib/bundler/source/git.rb +55 -30
- data/bundler/lib/bundler/source/metadata.rb +1 -2
- data/bundler/lib/bundler/source/path/installer.rb +1 -22
- data/bundler/lib/bundler/source/path.rb +6 -6
- data/bundler/lib/bundler/source/rubygems.rb +26 -81
- data/bundler/lib/bundler/source.rb +1 -1
- data/bundler/lib/bundler/source_list.rb +8 -2
- data/bundler/lib/bundler/spec_set.rb +60 -37
- data/bundler/lib/bundler/templates/Executable +1 -1
- data/bundler/lib/bundler/templates/Executable.bundler +5 -10
- data/bundler/lib/bundler/templates/Executable.standalone +2 -0
- data/bundler/lib/bundler/templates/newgem/Cargo.toml.tt +7 -0
- data/bundler/lib/bundler/templates/newgem/Gemfile.tt +3 -0
- data/bundler/lib/bundler/templates/newgem/README.md.tt +6 -4
- data/bundler/lib/bundler/templates/newgem/Rakefile.tt +12 -1
- data/bundler/lib/bundler/templates/newgem/bin/console.tt +0 -4
- data/bundler/lib/bundler/templates/newgem/circleci/config.yml.tt +12 -0
- data/bundler/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +15 -0
- data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt +10 -0
- data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt +6 -0
- data/bundler/lib/bundler/templates/newgem/ext/newgem/newgem.c.tt +1 -1
- data/bundler/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +12 -0
- data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +10 -0
- data/bundler/lib/bundler/templates/newgem/gitignore.tt +3 -0
- data/bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt +13 -4
- data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +9 -2
- data/bundler/lib/bundler/ui/rg_proxy.rb +1 -1
- data/bundler/lib/bundler/ui/shell.rb +35 -12
- data/bundler/lib/bundler/ui/silent.rb +21 -5
- data/bundler/lib/bundler/uri_normalizer.rb +23 -0
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +3 -3
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +0 -1
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +3 -1
- data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +1351 -409
- data/bundler/lib/bundler/vendor/net-http-persistent/README.rdoc +1 -1
- data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +1 -1
- data/bundler/lib/bundler/vendor/pub_grub/LICENSE.txt +21 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb +20 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +189 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb +182 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +150 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/package.rb +43 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb +121 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb +45 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb +19 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +60 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/term.rb +105 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version.rb +3 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +129 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +411 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +248 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +178 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub.rb +31 -0
- data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +1 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +64 -16
- data/bundler/lib/bundler/vendor/uri/lib/uri/file.rb +7 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri/ftp.rb +2 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +27 -7
- data/bundler/lib/bundler/vendor/uri/lib/uri/http.rb +40 -2
- data/bundler/lib/bundler/vendor/uri/lib/uri/https.rb +2 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri/ldap.rb +1 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri/ldaps.rb +2 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri/mailto.rb +2 -2
- data/bundler/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +15 -9
- data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +11 -6
- data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri/ws.rb +1 -2
- data/bundler/lib/bundler/vendor/uri/lib/uri/wss.rb +2 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri.rb +3 -2
- data/bundler/lib/bundler/vendored_persistent.rb +1 -33
- data/bundler/lib/bundler/{vendored_tmpdir.rb → vendored_pub_grub.rb} +1 -1
- data/bundler/lib/bundler/version.rb +5 -1
- data/bundler/lib/bundler/worker.rb +5 -7
- data/bundler/lib/bundler.rb +25 -77
- data/{bin → exe}/gem +4 -5
- data/{bin → exe}/update_rubygems +12 -10
- data/lib/rubygems/available_set.rb +4 -3
- data/lib/rubygems/basic_specification.rb +5 -4
- data/lib/rubygems/bundler_version_finder.rb +2 -2
- data/lib/rubygems/command.rb +41 -32
- data/lib/rubygems/command_manager.rb +30 -15
- data/lib/rubygems/commands/build_command.rb +12 -8
- data/lib/rubygems/commands/cert_command.rb +34 -33
- data/lib/rubygems/commands/check_command.rb +21 -20
- data/lib/rubygems/commands/cleanup_command.rb +18 -17
- data/lib/rubygems/commands/contents_command.rb +14 -13
- data/lib/rubygems/commands/dependency_command.rb +17 -16
- data/lib/rubygems/commands/environment_command.rb +6 -5
- data/lib/rubygems/commands/exec_command.rb +249 -0
- data/lib/rubygems/commands/fetch_command.rb +10 -9
- data/lib/rubygems/commands/generate_index_command.rb +18 -17
- data/lib/rubygems/commands/help_command.rb +7 -6
- data/lib/rubygems/commands/info_command.rb +3 -3
- data/lib/rubygems/commands/install_command.rb +28 -23
- data/lib/rubygems/commands/list_command.rb +4 -3
- data/lib/rubygems/commands/lock_command.rb +5 -4
- data/lib/rubygems/commands/mirror_command.rb +4 -3
- data/lib/rubygems/commands/open_command.rb +10 -9
- data/lib/rubygems/commands/outdated_command.rb +6 -5
- data/lib/rubygems/commands/owner_command.rb +17 -14
- data/lib/rubygems/commands/pristine_command.rb +46 -36
- data/lib/rubygems/commands/push_command.rb +9 -8
- data/lib/rubygems/commands/query_command.rb +9 -8
- data/lib/rubygems/commands/rdoc_command.rb +21 -19
- data/lib/rubygems/commands/search_command.rb +4 -3
- data/lib/rubygems/commands/server_command.rb +4 -3
- data/lib/rubygems/commands/setup_command.rb +97 -106
- data/lib/rubygems/commands/signin_command.rb +10 -9
- data/lib/rubygems/commands/signout_command.rb +8 -7
- data/lib/rubygems/commands/sources_command.rb +22 -21
- data/lib/rubygems/commands/specification_command.rb +14 -13
- data/lib/rubygems/commands/stale_command.rb +3 -2
- data/lib/rubygems/commands/uninstall_command.rb +44 -40
- data/lib/rubygems/commands/unpack_command.rb +14 -13
- data/lib/rubygems/commands/update_command.rb +42 -63
- data/lib/rubygems/commands/which_command.rb +8 -7
- data/lib/rubygems/commands/yank_command.rb +12 -11
- data/lib/rubygems/config_file.rb +55 -21
- data/lib/rubygems/core_ext/kernel_gem.rb +1 -6
- data/lib/rubygems/core_ext/kernel_require.rb +109 -115
- data/lib/rubygems/core_ext/kernel_warn.rb +33 -37
- data/lib/rubygems/core_ext/tcpsocket_init.rb +3 -1
- data/lib/rubygems/defaults.rb +33 -18
- data/lib/rubygems/dependency.rb +15 -11
- data/lib/rubygems/dependency_installer.rb +38 -37
- data/lib/rubygems/dependency_list.rb +7 -6
- data/lib/rubygems/deprecate.rb +3 -2
- data/lib/rubygems/doctor.rb +19 -18
- data/lib/rubygems/errors.rb +3 -2
- data/lib/rubygems/exceptions.rb +16 -8
- data/lib/rubygems/ext/build_error.rb +2 -1
- data/lib/rubygems/ext/builder.rb +37 -21
- data/lib/rubygems/ext/cargo_builder/link_flag_converter.rb +9 -5
- data/lib/rubygems/ext/cargo_builder.rb +150 -111
- data/lib/rubygems/ext/cmake_builder.rb +2 -2
- data/lib/rubygems/ext/configure_builder.rb +2 -1
- data/lib/rubygems/ext/ext_conf_builder.rb +11 -9
- data/lib/rubygems/ext/rake_builder.rb +7 -5
- data/lib/rubygems/ext.rb +8 -7
- data/lib/rubygems/gem_runner.rb +6 -5
- data/lib/rubygems/gemcutter_utilities/webauthn_listener/response.rb +163 -0
- data/lib/rubygems/gemcutter_utilities/webauthn_listener.rb +105 -0
- data/lib/rubygems/gemcutter_utilities/webauthn_poller.rb +78 -0
- data/lib/rubygems/gemcutter_utilities.rb +90 -34
- data/lib/rubygems/indexer.rb +29 -28
- data/lib/rubygems/install_default_message.rb +3 -2
- data/lib/rubygems/install_message.rb +3 -2
- data/lib/rubygems/install_update_options.rb +56 -55
- data/lib/rubygems/installer.rb +54 -46
- data/lib/rubygems/installer_uninstaller_utils.rb +2 -2
- data/lib/rubygems/local_remote_options.rb +19 -20
- data/lib/rubygems/mock_gem_ui.rb +3 -2
- data/lib/rubygems/name_tuple.rb +5 -4
- data/lib/rubygems/optparse/lib/optparse.rb +20 -15
- data/lib/rubygems/optparse.rb +1 -1
- data/lib/rubygems/package/digest_io.rb +1 -0
- data/lib/rubygems/package/file_source.rb +3 -2
- data/lib/rubygems/package/io_source.rb +1 -0
- data/lib/rubygems/package/old.rb +9 -8
- data/lib/rubygems/package/source.rb +1 -0
- data/lib/rubygems/package/tar_header.rb +63 -62
- data/lib/rubygems/package/tar_reader/entry.rb +91 -9
- data/lib/rubygems/package/tar_reader.rb +2 -29
- data/lib/rubygems/package/tar_writer.rb +8 -7
- data/lib/rubygems/package.rb +64 -48
- data/lib/rubygems/package_task.rb +5 -4
- data/lib/rubygems/path_support.rb +1 -0
- data/lib/rubygems/platform.rb +79 -53
- data/lib/rubygems/psych_tree.rb +2 -1
- data/lib/rubygems/query_utils.rb +35 -35
- data/lib/rubygems/rdoc.rb +3 -2
- data/lib/rubygems/remote_fetcher.rb +23 -22
- data/lib/rubygems/request/connection_pools.rb +4 -4
- data/lib/rubygems/request/http_pool.rb +2 -1
- data/lib/rubygems/request/https_pool.rb +1 -0
- data/lib/rubygems/request.rb +23 -22
- data/lib/rubygems/request_set/gem_dependency_api.rb +123 -123
- data/lib/rubygems/request_set/lockfile/parser.rb +28 -27
- data/lib/rubygems/request_set/lockfile/tokenizer.rb +5 -3
- data/lib/rubygems/request_set/lockfile.rb +6 -5
- data/lib/rubygems/request_set.rb +20 -19
- data/lib/rubygems/requirement.rb +15 -14
- data/lib/rubygems/resolver/activation_request.rb +4 -3
- data/lib/rubygems/resolver/api_set.rb +5 -4
- data/lib/rubygems/resolver/api_specification.rb +7 -6
- data/lib/rubygems/resolver/best_set.rb +6 -5
- data/lib/rubygems/resolver/composed_set.rb +1 -0
- data/lib/rubygems/resolver/conflict.rb +11 -10
- data/lib/rubygems/resolver/current_set.rb +1 -0
- data/lib/rubygems/resolver/dependency_request.rb +3 -2
- data/lib/rubygems/resolver/git_set.rb +3 -2
- data/lib/rubygems/resolver/git_specification.rb +7 -6
- data/lib/rubygems/resolver/index_set.rb +4 -3
- data/lib/rubygems/resolver/index_specification.rb +7 -5
- data/lib/rubygems/resolver/installed_specification.rb +5 -4
- data/lib/rubygems/resolver/installer_set.rb +15 -17
- data/lib/rubygems/resolver/local_specification.rb +3 -2
- data/lib/rubygems/resolver/lock_set.rb +5 -4
- data/lib/rubygems/resolver/lock_specification.rb +5 -4
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb +1 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +32 -26
- data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +1 -1
- data/lib/rubygems/resolver/molinillo.rb +2 -1
- data/lib/rubygems/resolver/requirement_list.rb +1 -0
- data/lib/rubygems/resolver/set.rb +1 -0
- data/lib/rubygems/resolver/source_set.rb +2 -0
- data/lib/rubygems/resolver/spec_specification.rb +1 -0
- data/lib/rubygems/resolver/specification.rb +2 -1
- data/lib/rubygems/resolver/stats.rb +2 -1
- data/lib/rubygems/resolver/vendor_set.rb +2 -1
- data/lib/rubygems/resolver/vendor_specification.rb +4 -3
- data/lib/rubygems/resolver.rb +41 -40
- data/lib/rubygems/s3_uri_signer.rb +10 -8
- data/lib/rubygems/safe_yaml.rb +4 -2
- data/lib/rubygems/security/policies.rb +48 -47
- data/lib/rubygems/security/policy.rb +19 -18
- data/lib/rubygems/security/signer.rb +6 -5
- data/lib/rubygems/security/trust_dir.rb +5 -4
- data/lib/rubygems/security.rb +30 -42
- data/lib/rubygems/security_option.rb +6 -5
- data/lib/rubygems/shellwords.rb +3 -0
- data/lib/rubygems/source/git.rb +22 -22
- data/lib/rubygems/source/installed.rb +2 -1
- data/lib/rubygems/source/local.rb +3 -2
- data/lib/rubygems/source/lock.rb +1 -0
- data/lib/rubygems/source/specific_file.rb +2 -1
- data/lib/rubygems/source/vendor.rb +1 -0
- data/lib/rubygems/source.rb +16 -16
- data/lib/rubygems/spec_fetcher.rb +10 -9
- data/lib/rubygems/specification.rb +121 -114
- data/lib/rubygems/specification_policy.rb +36 -15
- data/lib/rubygems/stub_specification.rb +11 -9
- data/lib/rubygems/text.rb +2 -2
- data/lib/rubygems/tsort/lib/tsort.rb +308 -310
- data/lib/rubygems/tsort.rb +1 -1
- data/lib/rubygems/uninstaller.rb +19 -18
- data/lib/rubygems/update_suggestion.rb +69 -0
- data/lib/rubygems/uri.rb +4 -4
- data/lib/rubygems/uri_formatter.rb +1 -1
- data/lib/rubygems/user_interaction.rb +37 -21
- data/lib/rubygems/util/licenses.rb +4 -3
- data/lib/rubygems/util/list.rb +1 -0
- data/lib/rubygems/util.rb +12 -15
- data/lib/rubygems/validator.rb +7 -6
- data/lib/rubygems/version.rb +17 -11
- data/lib/rubygems/version_option.rb +4 -3
- data/lib/rubygems.rb +89 -68
- data/rubygems-update.gemspec +10 -8
- data/setup.rb +10 -9
- data/test/rubygems/alternate_cert.pem +14 -14
- data/test/rubygems/alternate_cert_32.pem +15 -15
- data/test/rubygems/alternate_key.pem +25 -25
- data/test/rubygems/bad_rake.rb +1 -0
- data/test/rubygems/bundler_test_gem.rb +421 -0
- data/test/rubygems/child_cert.pem +15 -16
- data/test/rubygems/child_cert_32.pem +15 -16
- data/test/rubygems/child_key.pem +25 -25
- data/test/rubygems/encrypted_private_key.pem +26 -26
- data/test/rubygems/expired_cert.pem +15 -15
- data/test/rubygems/fake_certlib/openssl.rb +1 -0
- data/test/rubygems/future_cert.pem +15 -15
- data/test/rubygems/future_cert_32.pem +15 -15
- data/test/rubygems/good_rake.rb +1 -0
- data/test/rubygems/grandchild_cert.pem +15 -16
- data/test/rubygems/grandchild_cert_32.pem +15 -16
- data/test/rubygems/grandchild_key.pem +25 -25
- data/test/rubygems/helper.rb +172 -151
- data/test/rubygems/installer_test_case.rb +14 -13
- data/test/rubygems/invalid_issuer_cert.pem +16 -16
- data/test/rubygems/invalid_issuer_cert_32.pem +16 -16
- data/test/rubygems/invalid_key.pem +25 -25
- data/test/rubygems/invalid_signer_cert.pem +15 -15
- data/test/rubygems/invalid_signer_cert_32.pem +15 -15
- data/test/rubygems/invalidchild_cert.pem +15 -16
- data/test/rubygems/invalidchild_cert_32.pem +15 -16
- data/test/rubygems/invalidchild_key.pem +25 -25
- data/test/rubygems/multifactor_auth_utilities.rb +111 -0
- data/test/rubygems/package/tar_test_case.rb +53 -17
- data/test/rubygems/packages/Bluebie-legs-0.6.2.gem +0 -0
- data/test/rubygems/plugin/exception/rubygems_plugin.rb +2 -1
- data/test/rubygems/plugin/load/rubygems_plugin.rb +1 -0
- data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +2 -1
- data/test/rubygems/private_key.pem +25 -25
- data/test/rubygems/public_cert.pem +16 -16
- data/test/rubygems/public_cert_32.pem +15 -15
- data/test/rubygems/public_key.pem +7 -7
- data/test/rubygems/rubygems/commands/crash_command.rb +1 -0
- data/test/rubygems/rubygems_plugin.rb +3 -2
- data/test/rubygems/simple_gem.rb +2 -1
- data/test/rubygems/specifications/bar-0.0.2.gemspec +2 -0
- data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +6 -4
- data/test/rubygems/test_bundled_ca.rb +13 -12
- data/test/rubygems/test_config.rb +5 -4
- data/test/rubygems/test_deprecate.rb +5 -4
- data/test/rubygems/test_exit.rb +9 -3
- data/test/rubygems/test_gem.rb +339 -677
- data/test/rubygems/test_gem_available_set.rb +22 -21
- data/test/rubygems/test_gem_bundler_version_finder.rb +6 -4
- data/test/rubygems/test_gem_command.rb +45 -44
- data/test/rubygems/test_gem_command_manager.rb +96 -30
- data/test/rubygems/test_gem_commands_build_command.rb +74 -63
- data/test/rubygems/test_gem_commands_cert_command.rb +98 -99
- data/test/rubygems/test_gem_commands_check_command.rb +5 -4
- data/test/rubygems/test_gem_commands_cleanup_command.rb +41 -40
- data/test/rubygems/test_gem_commands_contents_command.rb +28 -27
- data/test/rubygems/test_gem_commands_dependency_command.rb +37 -36
- data/test/rubygems/test_gem_commands_environment_command.rb +17 -16
- data/test/rubygems/test_gem_commands_exec_command.rb +853 -0
- data/test/rubygems/test_gem_commands_fetch_command.rb +38 -37
- data/test/rubygems/test_gem_commands_generate_index_command.rb +8 -7
- data/test/rubygems/test_gem_commands_help_command.rb +14 -13
- data/test/rubygems/test_gem_commands_info_command.rb +29 -2
- data/test/rubygems/test_gem_commands_install_command.rb +152 -132
- data/test/rubygems/test_gem_commands_list_command.rb +5 -4
- data/test/rubygems/test_gem_commands_lock_command.rb +11 -10
- data/test/rubygems/test_gem_commands_mirror.rb +3 -2
- data/test/rubygems/test_gem_commands_open_command.rb +5 -4
- data/test/rubygems/test_gem_commands_outdated_command.rb +10 -9
- data/test/rubygems/test_gem_commands_owner_command.rb +227 -50
- data/test/rubygems/test_gem_commands_pristine_command.rb +142 -93
- data/test/rubygems/test_gem_commands_push_command.rb +189 -64
- data/test/rubygems/test_gem_commands_query_command.rb +74 -73
- data/test/rubygems/test_gem_commands_search_command.rb +3 -2
- data/test/rubygems/test_gem_commands_server_command.rb +3 -2
- data/test/rubygems/test_gem_commands_setup_command.rb +123 -96
- data/test/rubygems/test_gem_commands_signin_command.rb +71 -31
- data/test/rubygems/test_gem_commands_signout_command.rb +3 -3
- data/test/rubygems/test_gem_commands_sources_command.rb +29 -29
- data/test/rubygems/test_gem_commands_specification_command.rb +33 -32
- data/test/rubygems/test_gem_commands_stale_command.rb +5 -4
- data/test/rubygems/test_gem_commands_uninstall_command.rb +99 -81
- data/test/rubygems/test_gem_commands_unpack_command.rb +32 -31
- data/test/rubygems/test_gem_commands_update_command.rb +96 -95
- data/test/rubygems/test_gem_commands_which_command.rb +7 -6
- data/test/rubygems/test_gem_commands_yank_command.rb +162 -43
- data/test/rubygems/test_gem_config_file.rb +94 -81
- data/test/rubygems/test_gem_dependency.rb +76 -73
- data/test/rubygems/test_gem_dependency_installer.rb +200 -165
- data/test/rubygems/test_gem_dependency_list.rb +48 -47
- data/test/rubygems/test_gem_dependency_resolution_error.rb +5 -4
- data/test/rubygems/test_gem_doctor.rb +27 -26
- data/test/rubygems/test_gem_ext_builder.rb +60 -61
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +4 -4
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{Cargo.lock → ext/custom_name_lib/Cargo.lock} +23 -33
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{Cargo.toml → ext/custom_name_lib/Cargo.toml} +1 -1
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/{src → ext/custom_name_lib/src}/lib.rs +1 -1
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/lib/custom_name.rb +3 -0
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +37 -33
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +1 -1
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/rust_ruby_example.gemspec +2 -0
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs +12 -0
- data/test/rubygems/test_gem_ext_cargo_builder.rb +48 -59
- data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +20 -19
- data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +21 -36
- data/test/rubygems/test_gem_ext_cmake_builder.rb +16 -15
- data/test/rubygems/test_gem_ext_configure_builder.rb +14 -13
- data/test/rubygems/test_gem_ext_ext_conf_builder.rb +51 -52
- data/test/rubygems/test_gem_ext_rake_builder.rb +16 -15
- data/test/rubygems/test_gem_gem_runner.rb +15 -9
- data/test/rubygems/test_gem_gemcutter_utilities.rb +170 -84
- data/test/rubygems/test_gem_impossible_dependencies_error.rb +5 -4
- data/test/rubygems/test_gem_indexer.rb +87 -67
- data/test/rubygems/test_gem_install_update_options.rb +17 -16
- data/test/rubygems/test_gem_installer.rb +422 -304
- data/test/rubygems/test_gem_local_remote_options.rb +11 -10
- data/test/rubygems/test_gem_name_tuple.rb +5 -4
- data/test/rubygems/test_gem_package.rb +243 -231
- data/test/rubygems/test_gem_package_old.rb +14 -13
- data/test/rubygems/test_gem_package_tar_header.rb +48 -47
- data/test/rubygems/test_gem_package_tar_reader.rb +56 -8
- data/test/rubygems/test_gem_package_tar_reader_entry.rb +162 -16
- data/test/rubygems/test_gem_package_tar_writer.rb +77 -76
- data/test/rubygems/test_gem_package_task.rb +19 -18
- data/test/rubygems/test_gem_path_support.rb +15 -14
- data/test/rubygems/test_gem_platform.rb +333 -227
- data/test/rubygems/test_gem_rdoc.rb +15 -14
- data/test/rubygems/test_gem_remote_fetcher.rb +155 -154
- data/test/rubygems/test_gem_request.rb +64 -58
- data/test/rubygems/test_gem_request_connection_pools.rb +30 -29
- data/test/rubygems/test_gem_request_set.rb +101 -100
- data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +210 -211
- data/test/rubygems/test_gem_request_set_lockfile.rb +87 -86
- data/test/rubygems/test_gem_request_set_lockfile_parser.rb +58 -57
- data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +63 -62
- data/test/rubygems/test_gem_requirement.rb +48 -41
- data/test/rubygems/test_gem_resolver.rb +167 -99
- data/test/rubygems/test_gem_resolver_activation_request.rb +7 -6
- data/test/rubygems/test_gem_resolver_api_set.rb +34 -33
- data/test/rubygems/test_gem_resolver_api_specification.rb +48 -47
- data/test/rubygems/test_gem_resolver_best_set.rb +23 -22
- data/test/rubygems/test_gem_resolver_composed_set.rb +2 -1
- data/test/rubygems/test_gem_resolver_conflict.rb +13 -12
- data/test/rubygems/test_gem_resolver_dependency_request.rb +16 -15
- data/test/rubygems/test_gem_resolver_git_set.rb +22 -21
- data/test/rubygems/test_gem_resolver_git_specification.rb +22 -21
- data/test/rubygems/test_gem_resolver_index_set.rb +13 -12
- data/test/rubygems/test_gem_resolver_index_specification.rb +17 -16
- data/test/rubygems/test_gem_resolver_installed_specification.rb +6 -5
- data/test/rubygems/test_gem_resolver_installer_set.rb +79 -34
- data/test/rubygems/test_gem_resolver_local_specification.rb +8 -7
- data/test/rubygems/test_gem_resolver_lock_set.rb +13 -12
- data/test/rubygems/test_gem_resolver_lock_specification.rb +18 -17
- data/test/rubygems/test_gem_resolver_requirement_list.rb +2 -1
- data/test/rubygems/test_gem_resolver_specification.rb +9 -8
- data/test/rubygems/test_gem_resolver_vendor_set.rb +7 -6
- data/test/rubygems/test_gem_resolver_vendor_specification.rb +11 -10
- data/test/rubygems/test_gem_security.rb +69 -68
- data/test/rubygems/test_gem_security_policy.rb +72 -72
- data/test/rubygems/test_gem_security_signer.rb +35 -34
- data/test/rubygems/test_gem_security_trust_dir.rb +7 -6
- data/test/rubygems/test_gem_silent_ui.rb +39 -32
- data/test/rubygems/test_gem_source.rb +45 -44
- data/test/rubygems/test_gem_source_fetch_problem.rb +10 -9
- data/test/rubygems/test_gem_source_git.rb +69 -62
- data/test/rubygems/test_gem_source_installed.rb +17 -16
- data/test/rubygems/test_gem_source_list.rb +6 -5
- data/test/rubygems/test_gem_source_local.rb +15 -14
- data/test/rubygems/test_gem_source_lock.rb +32 -31
- data/test/rubygems/test_gem_source_specific_file.rb +18 -17
- data/test/rubygems/test_gem_source_subpath_problem.rb +8 -7
- data/test/rubygems/test_gem_source_vendor.rb +14 -13
- data/test/rubygems/test_gem_spec_fetcher.rb +73 -72
- data/test/rubygems/test_gem_specification.rb +533 -469
- data/test/rubygems/test_gem_stream_ui.rb +53 -22
- data/test/rubygems/test_gem_stub_specification.rb +33 -32
- data/test/rubygems/test_gem_text.rb +2 -1
- data/test/rubygems/test_gem_uninstaller.rb +118 -117
- data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +4 -3
- data/test/rubygems/test_gem_update_suggestion.rb +209 -0
- data/test/rubygems/test_gem_uri.rb +6 -4
- data/test/rubygems/test_gem_uri_formatter.rb +15 -14
- data/test/rubygems/test_gem_util.rb +24 -23
- data/test/rubygems/test_gem_validator.rb +8 -8
- data/test/rubygems/test_gem_version.rb +24 -16
- data/test/rubygems/test_gem_version_option.rb +16 -15
- data/test/rubygems/test_kernel.rb +43 -48
- data/test/rubygems/test_project_sanity.rb +32 -3
- data/test/rubygems/test_remote_fetch_error.rb +8 -7
- data/test/rubygems/test_require.rb +118 -103
- data/test/rubygems/test_rubygems.rb +10 -8
- data/test/rubygems/test_webauthn_listener.rb +143 -0
- data/test/rubygems/test_webauthn_listener_response.rb +93 -0
- data/test/rubygems/test_webauthn_poller.rb +124 -0
- data/test/rubygems/utilities.rb +98 -34
- data/test/rubygems/wrong_key_cert.pem +15 -15
- data/test/rubygems/wrong_key_cert_32.pem +15 -15
- data/test/test_changelog_generator.rb +1 -1
- metadata +99 -46
- data/bundler/lib/bundler/dep_proxy.rb +0 -55
- data/bundler/lib/bundler/templates/gems.rb +0 -5
- data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +0 -5
- data/bundler/lib/bundler/templates/newgem/travis.yml.tt +0 -6
- data/bundler/lib/bundler/vendor/molinillo/LICENSE +0 -9
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +0 -57
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +0 -88
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +0 -36
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +0 -66
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +0 -62
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +0 -63
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +0 -61
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +0 -126
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +0 -46
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +0 -36
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +0 -164
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +0 -255
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +0 -149
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +0 -6
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +0 -112
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb +0 -67
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +0 -839
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +0 -46
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/state.rb +0 -58
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -11
- data/bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +0 -154
- data/bundler/lib/bundler/vendored_molinillo.rb +0 -4
- data/bundler/lib/bundler/version_ranges.rb +0 -122
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb +0 -21
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb +0 -21
data/bundler/CHANGELOG.md
CHANGED
@@ -1,3 +1,459 @@
|
|
1
|
+
# 2.4.19 (August 17, 2023)
|
2
|
+
|
3
|
+
## Enhancements:
|
4
|
+
|
5
|
+
- Add `file` option to `ruby` method in Gemfile [#6876](https://github.com/rubygems/rubygems/pull/6876)
|
6
|
+
- Show better error when PAT can't authenticate to a private server [#6871](https://github.com/rubygems/rubygems/pull/6871)
|
7
|
+
- Don't fallback to old dependency API when bad credentials are configured [#6869](https://github.com/rubygems/rubygems/pull/6869)
|
8
|
+
|
9
|
+
## Bug fixes:
|
10
|
+
|
11
|
+
- Fix git source conservativeness [#6850](https://github.com/rubygems/rubygems/pull/6850)
|
12
|
+
|
13
|
+
## Documentation:
|
14
|
+
|
15
|
+
- Clarify that `bundle info` takes a gem name [#6875](https://github.com/rubygems/rubygems/pull/6875)
|
16
|
+
|
17
|
+
# 2.4.18 (August 2, 2023)
|
18
|
+
|
19
|
+
## Security:
|
20
|
+
|
21
|
+
- Merge URI-0.12.2 for Bundler [#6779](https://github.com/rubygems/rubygems/pull/6779)
|
22
|
+
|
23
|
+
## Enhancements:
|
24
|
+
|
25
|
+
- Update Magnus version in Rust extension gem template [#6843](https://github.com/rubygems/rubygems/pull/6843)
|
26
|
+
|
27
|
+
## Documentation:
|
28
|
+
|
29
|
+
- Update bundle-outdated(1) man to use table output [#6833](https://github.com/rubygems/rubygems/pull/6833)
|
30
|
+
|
31
|
+
# 2.4.17 (July 14, 2023)
|
32
|
+
|
33
|
+
## Enhancements:
|
34
|
+
|
35
|
+
- Avoid printing "Using ..." messages when version has not changed [#6804](https://github.com/rubygems/rubygems/pull/6804)
|
36
|
+
|
37
|
+
## Bug fixes:
|
38
|
+
|
39
|
+
- Fix `bundler/setup` unintendedly writing to the filesystem [#6814](https://github.com/rubygems/rubygems/pull/6814)
|
40
|
+
|
41
|
+
# 2.4.16 (July 10, 2023)
|
42
|
+
|
43
|
+
## Bug fixes:
|
44
|
+
|
45
|
+
- Exclude Bundler from missing locked dependencies check [#6792](https://github.com/rubygems/rubygems/pull/6792)
|
46
|
+
- Fix another incorrect removal of "ruby" platform from lockfile when changing path sources [#6784](https://github.com/rubygems/rubygems/pull/6784)
|
47
|
+
- Fix git source lockfile instability [#6786](https://github.com/rubygems/rubygems/pull/6786)
|
48
|
+
|
49
|
+
## Documentation:
|
50
|
+
|
51
|
+
- `gemfile.5`: Code format the default glob to escape Markdown [#6790](https://github.com/rubygems/rubygems/pull/6790)
|
52
|
+
|
53
|
+
# 2.4.15 (June 29, 2023)
|
54
|
+
|
55
|
+
## Enhancements:
|
56
|
+
|
57
|
+
- Improve edge case error message [#6733](https://github.com/rubygems/rubygems/pull/6733)
|
58
|
+
|
59
|
+
## Bug fixes:
|
60
|
+
|
61
|
+
- Fix `bundle lock --update --bundler` [#6213](https://github.com/rubygems/rubygems/pull/6213)
|
62
|
+
|
63
|
+
# 2.4.14 (June 12, 2023)
|
64
|
+
|
65
|
+
## Enhancements:
|
66
|
+
|
67
|
+
- Stop publishing Gemfile in default gem template [#6723](https://github.com/rubygems/rubygems/pull/6723)
|
68
|
+
- Avoid infinite loops when hitting resolution bugs [#6722](https://github.com/rubygems/rubygems/pull/6722)
|
69
|
+
- Make `LockfileParser` usable with just a lockfile [#6694](https://github.com/rubygems/rubygems/pull/6694)
|
70
|
+
- Always rely on `$LOAD_PATH` when jumping from `exe/` to `lib/` [#6702](https://github.com/rubygems/rubygems/pull/6702)
|
71
|
+
- Make `frozen` setting take precedence over `deployment` setting [#6685](https://github.com/rubygems/rubygems/pull/6685)
|
72
|
+
- Show an error when trying to update bundler in frozen mode [#6684](https://github.com/rubygems/rubygems/pull/6684)
|
73
|
+
|
74
|
+
## Bug fixes:
|
75
|
+
|
76
|
+
- Fix `deployment` vs `path` precedence [#6703](https://github.com/rubygems/rubygems/pull/6703)
|
77
|
+
- Fix inline mode with multiple sources [#6699](https://github.com/rubygems/rubygems/pull/6699)
|
78
|
+
|
79
|
+
# 2.4.13 (May 9, 2023)
|
80
|
+
|
81
|
+
## Bug fixes:
|
82
|
+
|
83
|
+
- Fix unexpected fallbacks to full index by adding FalseClass and Time to the SafeMarshal list [#6655](https://github.com/rubygems/rubygems/pull/6655)
|
84
|
+
|
85
|
+
## Documentation:
|
86
|
+
|
87
|
+
- Fix broken hyperlinks in bundle cache documentation [#6606](https://github.com/rubygems/rubygems/pull/6606)
|
88
|
+
|
89
|
+
# 2.4.12 (April 11, 2023)
|
90
|
+
|
91
|
+
## Enhancements:
|
92
|
+
|
93
|
+
- Remove reference to `pry` gem from generated `bin/console` file [#6515](https://github.com/rubygems/rubygems/pull/6515)
|
94
|
+
|
95
|
+
# 2.4.11 (April 10, 2023)
|
96
|
+
|
97
|
+
## Security:
|
98
|
+
|
99
|
+
- Use URI-0.12.1 (safe against CVE-2023-28755 ReDoS vulnerability) [#6558](https://github.com/rubygems/rubygems/pull/6558)
|
100
|
+
|
101
|
+
## Enhancements:
|
102
|
+
|
103
|
+
- Remove one fallback to full indexes on big gemfiles [#6578](https://github.com/rubygems/rubygems/pull/6578)
|
104
|
+
- Generate native gems with `-fvisibility=hidden` [#6541](https://github.com/rubygems/rubygems/pull/6541)
|
105
|
+
|
106
|
+
## Bug fixes:
|
107
|
+
|
108
|
+
- Fix resolver hangs when dealing with an incomplete lockfile [#6552](https://github.com/rubygems/rubygems/pull/6552)
|
109
|
+
- Fix prereleases not being considered by gem version promoter when there's no lockfile [#6537](https://github.com/rubygems/rubygems/pull/6537)
|
110
|
+
|
111
|
+
# 2.4.10 (March 27, 2023)
|
112
|
+
|
113
|
+
## Bug fixes:
|
114
|
+
|
115
|
+
- Fix some unnecessary top level dependency downgrades [#6535](https://github.com/rubygems/rubygems/pull/6535)
|
116
|
+
- Fix incorrect ruby platform removal from lockfile when adding Gemfile dependencies [#6540](https://github.com/rubygems/rubygems/pull/6540)
|
117
|
+
- Fix installing plugins in frozen mode [#6543](https://github.com/rubygems/rubygems/pull/6543)
|
118
|
+
- Restore "enumerability" of `SpecSet` [#6532](https://github.com/rubygems/rubygems/pull/6532)
|
119
|
+
|
120
|
+
# 2.4.9 (March 20, 2023)
|
121
|
+
|
122
|
+
## Security:
|
123
|
+
|
124
|
+
- Don't recommend `--full-index` on errors [#6493](https://github.com/rubygems/rubygems/pull/6493)
|
125
|
+
|
126
|
+
## Enhancements:
|
127
|
+
|
128
|
+
- Fix duplicated specs in some error messages [#6475](https://github.com/rubygems/rubygems/pull/6475)
|
129
|
+
- When running `bundle lock --update <name>`, checkout locked revision of unrelated git sources directly [#6459](https://github.com/rubygems/rubygems/pull/6459)
|
130
|
+
- Avoid expiring git sources when unnecessary [#6458](https://github.com/rubygems/rubygems/pull/6458)
|
131
|
+
- Use `RbSys::ExtensionTask` when creating new rust gems [#6352](https://github.com/rubygems/rubygems/pull/6352)
|
132
|
+
- Don't ignore pre-releases when there's only one candidate [#6441](https://github.com/rubygems/rubygems/pull/6441)
|
133
|
+
|
134
|
+
## Bug fixes:
|
135
|
+
|
136
|
+
- Fix incorrect removal of ruby platform when auto-healing corrupted lockfiles [#6495](https://github.com/rubygems/rubygems/pull/6495)
|
137
|
+
- Don't consider platform specific candidates when `force_ruby_platform` set [#6442](https://github.com/rubygems/rubygems/pull/6442)
|
138
|
+
- Better deal with circular dependencies [#6330](https://github.com/rubygems/rubygems/pull/6330)
|
139
|
+
|
140
|
+
## Documentation:
|
141
|
+
|
142
|
+
- Add debugging docs [#6387](https://github.com/rubygems/rubygems/pull/6387)
|
143
|
+
- Document our current release policy [#6450](https://github.com/rubygems/rubygems/pull/6450)
|
144
|
+
|
145
|
+
# 2.4.8 (March 8, 2023)
|
146
|
+
|
147
|
+
## Security:
|
148
|
+
|
149
|
+
- Safe load all marshaled data [#6384](https://github.com/rubygems/rubygems/pull/6384)
|
150
|
+
|
151
|
+
## Enhancements:
|
152
|
+
|
153
|
+
- Better suggestion when `bundler/setup` fails due to missing gems and Gemfile is not the default [#6428](https://github.com/rubygems/rubygems/pull/6428)
|
154
|
+
- Simplify the gem package file filter in the gemspec template [#6344](https://github.com/rubygems/rubygems/pull/6344)
|
155
|
+
- Auto-heal corrupted `Gemfile.lock` with no specs [#6423](https://github.com/rubygems/rubygems/pull/6423)
|
156
|
+
- Auto-heal on corrupted lockfile with missing deps [#6400](https://github.com/rubygems/rubygems/pull/6400)
|
157
|
+
- Give a better message when Gemfile branch does not exist [#6383](https://github.com/rubygems/rubygems/pull/6383)
|
158
|
+
|
159
|
+
## Bug fixes:
|
160
|
+
|
161
|
+
- Respect --no-install option for git: sources [#6088](https://github.com/rubygems/rubygems/pull/6088)
|
162
|
+
- Fix `gems.rb` lockfile for bundler version lookup in template [#6413](https://github.com/rubygems/rubygems/pull/6413)
|
163
|
+
|
164
|
+
## Documentation:
|
165
|
+
|
166
|
+
- Switch supporting explanations to all Ruby Central [#6419](https://github.com/rubygems/rubygems/pull/6419)
|
167
|
+
|
168
|
+
# 2.4.7 (February 15, 2023)
|
169
|
+
|
170
|
+
## Enhancements:
|
171
|
+
|
172
|
+
- Add `--gemfile` flag to `bundle init` to configure gemfile name to generate [#6046](https://github.com/rubygems/rubygems/pull/6046)
|
173
|
+
- Improve solve failure explanations by using better wording [#6366](https://github.com/rubygems/rubygems/pull/6366)
|
174
|
+
- Restore better error message when locked ref does not exist [#6356](https://github.com/rubygems/rubygems/pull/6356)
|
175
|
+
- Avoid crashing when installing from a corrupted lockfile [#6355](https://github.com/rubygems/rubygems/pull/6355)
|
176
|
+
- Improve wording of unmet dependencies warning [#6357](https://github.com/rubygems/rubygems/pull/6357)
|
177
|
+
- Add Ruby 3.2 and 3.3 platforms to Gemfile DSL [#6346](https://github.com/rubygems/rubygems/pull/6346)
|
178
|
+
|
179
|
+
## Bug fixes:
|
180
|
+
|
181
|
+
- Fix crash in pub grub involving empty ranges [#6365](https://github.com/rubygems/rubygems/pull/6365)
|
182
|
+
- Make gemspec file generated by `bundle gem` properly exclude itself from packaged gem [#6339](https://github.com/rubygems/rubygems/pull/6339)
|
183
|
+
- Preserve relative path sources in standalone setup [#6327](https://github.com/rubygems/rubygems/pull/6327)
|
184
|
+
|
185
|
+
# 2.4.6 (January 31, 2023)
|
186
|
+
|
187
|
+
## Enhancements:
|
188
|
+
|
189
|
+
- Don't warn on `bundle binstubs --standalone --all` [#6312](https://github.com/rubygems/rubygems/pull/6312)
|
190
|
+
|
191
|
+
## Bug fixes:
|
192
|
+
|
193
|
+
- Don't undo require decorations made by other gems [#6308](https://github.com/rubygems/rubygems/pull/6308)
|
194
|
+
- Fix `bundler/inline` not properly installing gems with extensions when used more than once [#6306](https://github.com/rubygems/rubygems/pull/6306)
|
195
|
+
- Fix `bundler/inline` not skipping installation when gems already there, when used more than once [#6305](https://github.com/rubygems/rubygems/pull/6305)
|
196
|
+
|
197
|
+
# 2.4.5 (January 21, 2023)
|
198
|
+
|
199
|
+
## Bug fixes:
|
200
|
+
|
201
|
+
- Fix `bundler/inline` not resolving properly if gems not preinstalled [#6282](https://github.com/rubygems/rubygems/pull/6282)
|
202
|
+
- Fix packages for external platforms being introduced in lockfile when Bundler retries resolution [#6285](https://github.com/rubygems/rubygems/pull/6285)
|
203
|
+
|
204
|
+
## Documentation:
|
205
|
+
|
206
|
+
- Update bundle-exec man page to not use deprecated `Bundler.with_clean_env` [#6284](https://github.com/rubygems/rubygems/pull/6284)
|
207
|
+
|
208
|
+
# 2.4.4 (January 16, 2023)
|
209
|
+
|
210
|
+
## Bug fixes:
|
211
|
+
|
212
|
+
- Fix platform specific gems removed from the lockfile [#6266](https://github.com/rubygems/rubygems/pull/6266)
|
213
|
+
- Properly handle incompatibilities on platform specific gems [#6270](https://github.com/rubygems/rubygems/pull/6270)
|
214
|
+
- Optimistically exclude prereleases from initial resolution [#6246](https://github.com/rubygems/rubygems/pull/6246)
|
215
|
+
- Fix another case of not properly falling back to ruby variant when materializing [#6261](https://github.com/rubygems/rubygems/pull/6261)
|
216
|
+
- Skip setting `BUNDLER_SETUP` on Ruby 2.6 [#6252](https://github.com/rubygems/rubygems/pull/6252)
|
217
|
+
- Let resolver deal with legacy gems with equivalent version and different dependencies [#6219](https://github.com/rubygems/rubygems/pull/6219)
|
218
|
+
|
219
|
+
# 2.4.3 (January 6, 2023)
|
220
|
+
|
221
|
+
## Enhancements:
|
222
|
+
|
223
|
+
- Enhance `bundle open` command to allow opening subdir/file of gem [#6146](https://github.com/rubygems/rubygems/pull/6146)
|
224
|
+
|
225
|
+
## Bug fixes:
|
226
|
+
|
227
|
+
- Fix pointing GitHub sources to PRs [#6241](https://github.com/rubygems/rubygems/pull/6241)
|
228
|
+
- Fix version ranges incorrectly handling platforms [#6240](https://github.com/rubygems/rubygems/pull/6240)
|
229
|
+
- Cleanup unnecessary gems when removing lockfile platforms [#6234](https://github.com/rubygems/rubygems/pull/6234)
|
230
|
+
- When auto-removing RUBY platform don't add specific platform if not needed [#6233](https://github.com/rubygems/rubygems/pull/6233)
|
231
|
+
- Fallback to selecting installable candidates if possible when materializing specs [#6225](https://github.com/rubygems/rubygems/pull/6225)
|
232
|
+
|
233
|
+
## Documentation:
|
234
|
+
|
235
|
+
- Fix several typos [#6224](https://github.com/rubygems/rubygems/pull/6224)
|
236
|
+
|
237
|
+
# 2.4.2 (January 1, 2023)
|
238
|
+
|
239
|
+
## Performance:
|
240
|
+
|
241
|
+
- Speed up resolution by properly merging incompatibility ranges [#6215](https://github.com/rubygems/rubygems/pull/6215)
|
242
|
+
|
243
|
+
## Documentation:
|
244
|
+
|
245
|
+
- Remove stray word in `bundle config` man page [#6220](https://github.com/rubygems/rubygems/pull/6220)
|
246
|
+
|
247
|
+
# 2.4.1 (December 24, 2022)
|
248
|
+
|
249
|
+
## Enhancements:
|
250
|
+
|
251
|
+
- Allow Bundler to run on old RubyGems + Ruby 2.7 without warnings [#6187](https://github.com/rubygems/rubygems/pull/6187)
|
252
|
+
|
253
|
+
## Bug fixes:
|
254
|
+
|
255
|
+
- Fix dependencies scoped to other platforms making resolver fail [#6189](https://github.com/rubygems/rubygems/pull/6189)
|
256
|
+
- Restore annotated git tag support [#6186](https://github.com/rubygems/rubygems/pull/6186)
|
257
|
+
|
258
|
+
# 2.4.0 (December 24, 2022)
|
259
|
+
|
260
|
+
## Security:
|
261
|
+
|
262
|
+
- In README generated by `bundle gem`, do not fill rubygems.org install commands with the gem name automatically [#6093](https://github.com/rubygems/rubygems/pull/6093)
|
263
|
+
- Use safe Marshal deserialization for dependency API response [#6141](https://github.com/rubygems/rubygems/pull/6141)
|
264
|
+
|
265
|
+
## Breaking changes:
|
266
|
+
|
267
|
+
- Remove Travis CI from gem skeleton [#6150](https://github.com/rubygems/rubygems/pull/6150)
|
268
|
+
- Drop support for Ruby 2.3, 2.4, 2.5 and RubyGems 2.5, 2.6, 2.7 [#6107](https://github.com/rubygems/rubygems/pull/6107)
|
269
|
+
- Completely remove "auto-sudo" feature [#5888](https://github.com/rubygems/rubygems/pull/5888)
|
270
|
+
|
271
|
+
## Deprecations:
|
272
|
+
|
273
|
+
- Turn `--ext` option of `bundle gem` into string. Deprecate usage without explicit value [#6144](https://github.com/rubygems/rubygems/pull/6144)
|
274
|
+
|
275
|
+
## Features:
|
276
|
+
|
277
|
+
- Add `--ext=rust` support to `bundle gem` for creating simple gems with Rust extensions [#6149](https://github.com/rubygems/rubygems/pull/6149)
|
278
|
+
- Migrate our resolver engine to PubGrub [#5960](https://github.com/rubygems/rubygems/pull/5960)
|
279
|
+
|
280
|
+
## Performance:
|
281
|
+
|
282
|
+
- Make cloning git repos faster [#4475](https://github.com/rubygems/rubygems/pull/4475)
|
283
|
+
|
284
|
+
## Enhancements:
|
285
|
+
|
286
|
+
- Add `bundle lock --update --bundler` [#6134](https://github.com/rubygems/rubygems/pull/6134)
|
287
|
+
- Support for pre flag in `bundle update`/`bundle lock` [#5258](https://github.com/rubygems/rubygems/pull/5258)
|
288
|
+
- Improve error message when changing Gemfile to a mistyped git ref [#6130](https://github.com/rubygems/rubygems/pull/6130)
|
289
|
+
- Remove special handling of some `LoadError` and `NoMethodError` [#6115](https://github.com/rubygems/rubygems/pull/6115)
|
290
|
+
|
291
|
+
## Bug fixes:
|
292
|
+
|
293
|
+
- Don't unlock dependencies of a gemspec when its version changes [#6184](https://github.com/rubygems/rubygems/pull/6184)
|
294
|
+
- Fix platform specific version for libv8-node and other allowlisted gems not being chosen in Truffleruby [#6169](https://github.com/rubygems/rubygems/pull/6169)
|
295
|
+
- Fix `bundle outdated` with both `--groups` and `--parseable` flags [#6148](https://github.com/rubygems/rubygems/pull/6148)
|
296
|
+
- Auto-heal lockfile when it's missing specs [#6132](https://github.com/rubygems/rubygems/pull/6132)
|
297
|
+
- Fix unintentional downgrades when gemspec DSL is used [#6131](https://github.com/rubygems/rubygems/pull/6131)
|
298
|
+
- Fix display of previous gem version when previously downloaded already [#6110](https://github.com/rubygems/rubygems/pull/6110)
|
299
|
+
- Fix hang when a lockfile gem does not resolve on the current platform [#6070](https://github.com/rubygems/rubygems/pull/6070)
|
300
|
+
|
301
|
+
## Documentation:
|
302
|
+
|
303
|
+
- Improve Bundler setup docs for development [#6154](https://github.com/rubygems/rubygems/pull/6154)
|
304
|
+
- Fx link in bundle-platform man page [#6071](https://github.com/rubygems/rubygems/pull/6071)
|
305
|
+
|
306
|
+
# 2.3.26 (November 16, 2022)
|
307
|
+
|
308
|
+
## Enhancements:
|
309
|
+
|
310
|
+
- Map 'universal' to the real arch in Bundler for prebuilt gem selection [#5978](https://github.com/rubygems/rubygems/pull/5978)
|
311
|
+
|
312
|
+
## Documentation:
|
313
|
+
|
314
|
+
- Fix '--force' option documentation of 'bundle clean' [#6050](https://github.com/rubygems/rubygems/pull/6050)
|
315
|
+
|
316
|
+
# 2.3.25 (November 2, 2022)
|
317
|
+
|
318
|
+
## Bug fixes:
|
319
|
+
|
320
|
+
- Properly sort specs when materializing [#6015](https://github.com/rubygems/rubygems/pull/6015)
|
321
|
+
- Fix bad unfreeze recommendation [#6013](https://github.com/rubygems/rubygems/pull/6013)
|
322
|
+
|
323
|
+
## Documentation:
|
324
|
+
|
325
|
+
- Bring docs for gemfile(5) manpage up to date [#6007](https://github.com/rubygems/rubygems/pull/6007)
|
326
|
+
- Fix `github` DSL docs to mention they use https protocol over git under the hood [#5993](https://github.com/rubygems/rubygems/pull/5993)
|
327
|
+
|
328
|
+
# 2.3.24 (October 17, 2022)
|
329
|
+
|
330
|
+
## Enhancements:
|
331
|
+
|
332
|
+
- Only add extra resolver spec group for Ruby platform when needed [#5698](https://github.com/rubygems/rubygems/pull/5698)
|
333
|
+
- Fix little UI issue when bundler shows duplicated gems in a list [#5965](https://github.com/rubygems/rubygems/pull/5965)
|
334
|
+
|
335
|
+
## Bug fixes:
|
336
|
+
|
337
|
+
- Fix incorrect materialization on Windows [#5975](https://github.com/rubygems/rubygems/pull/5975)
|
338
|
+
|
339
|
+
# 2.3.23 (October 5, 2022)
|
340
|
+
|
341
|
+
## Enhancements:
|
342
|
+
|
343
|
+
- Update GitLab CI template with new one [#5944](https://github.com/rubygems/rubygems/pull/5944)
|
344
|
+
|
345
|
+
## Bug fixes:
|
346
|
+
|
347
|
+
- Fix `bundle init` not respecting umask in generated gem's Gemfile [#5947](https://github.com/rubygems/rubygems/pull/5947)
|
348
|
+
|
349
|
+
## Performance:
|
350
|
+
|
351
|
+
- Further speed up Bundler by not sorting specs unnecessarily [#5868](https://github.com/rubygems/rubygems/pull/5868)
|
352
|
+
|
353
|
+
## Documentation:
|
354
|
+
|
355
|
+
- Update Bundler new feature instructions [#5912](https://github.com/rubygems/rubygems/pull/5912)
|
356
|
+
|
357
|
+
# 2.3.22 (September 7, 2022)
|
358
|
+
|
359
|
+
## Enhancements:
|
360
|
+
|
361
|
+
- Use a more accurate source code uri in gemspec [#5896](https://github.com/rubygems/rubygems/pull/5896)
|
362
|
+
- Support `--path` option in `bundle add` [#5897](https://github.com/rubygems/rubygems/pull/5897)
|
363
|
+
- Improve lockfile dependency unlocking [#5881](https://github.com/rubygems/rubygems/pull/5881)
|
364
|
+
- Add platform alias `:windows` to Gemfile DSL [#5650](https://github.com/rubygems/rubygems/pull/5650)
|
365
|
+
- Make `#to_lock` consistent between `Gem::Dependency` and `Bundler::Dependency` [#5872](https://github.com/rubygems/rubygems/pull/5872)
|
366
|
+
- Support marshaled index specifications with `nil` required ruby version [#5824](https://github.com/rubygems/rubygems/pull/5824)
|
367
|
+
|
368
|
+
## Bug fixes:
|
369
|
+
|
370
|
+
- Fix resolution hanging on musl platforms [#5875](https://github.com/rubygems/rubygems/pull/5875)
|
371
|
+
- Fix another regression affecting the sorbet family of gems [#5874](https://github.com/rubygems/rubygems/pull/5874)
|
372
|
+
|
373
|
+
## Documentation:
|
374
|
+
|
375
|
+
- Introduce bundle-console(1) man [#5901](https://github.com/rubygems/rubygems/pull/5901)
|
376
|
+
- Introduce bundle-version(1) man [#5895](https://github.com/rubygems/rubygems/pull/5895)
|
377
|
+
- Introduce bundle-help(1) man [#5886](https://github.com/rubygems/rubygems/pull/5886)
|
378
|
+
|
379
|
+
# 2.3.21 (August 24, 2022)
|
380
|
+
|
381
|
+
## Enhancements:
|
382
|
+
|
383
|
+
- Backport non gnu libc linux support from RubyGems [#4488](https://github.com/rubygems/rubygems/pull/4488)
|
384
|
+
- Improve `Bundler.rm_rf` error message [#5861](https://github.com/rubygems/rubygems/pull/5861)
|
385
|
+
- Disallow both `--branch` and `--ref` at the same time in bundle-plugin [#5855](https://github.com/rubygems/rubygems/pull/5855)
|
386
|
+
- Restore previous performance of private RubyGems servers [#5826](https://github.com/rubygems/rubygems/pull/5826)
|
387
|
+
|
388
|
+
## Bug fixes:
|
389
|
+
|
390
|
+
- Fix conservative update downgrading top level gems [#5847](https://github.com/rubygems/rubygems/pull/5847)
|
391
|
+
- Fix edge case where `bundler/inline` unintentionally skips install [#5848](https://github.com/rubygems/rubygems/pull/5848)
|
392
|
+
- Fix `bundle platform` crash when there's a lockfile with no Ruby locked [#5850](https://github.com/rubygems/rubygems/pull/5850)
|
393
|
+
- Fix crash when incomplete locked specifications are found in transitive dependencies [#5840](https://github.com/rubygems/rubygems/pull/5840)
|
394
|
+
- Fix Ruby platform incorrectly removed on `bundle update` [#5832](https://github.com/rubygems/rubygems/pull/5832)
|
395
|
+
|
396
|
+
## Documentation:
|
397
|
+
|
398
|
+
- Explain cancelled CLI deprecations clearly [#5864](https://github.com/rubygems/rubygems/pull/5864)
|
399
|
+
- Improve `bundle config` command synopsis [#5854](https://github.com/rubygems/rubygems/pull/5854)
|
400
|
+
- Introduce bundle-plugin(1) man [#5853](https://github.com/rubygems/rubygems/pull/5853)
|
401
|
+
|
402
|
+
# 2.3.20 (August 10, 2022)
|
403
|
+
|
404
|
+
## Enhancements:
|
405
|
+
|
406
|
+
- Consistently ignore patchlevel when reporting `bundle platform --ruby` [#5793](https://github.com/rubygems/rubygems/pull/5793)
|
407
|
+
- Make `--standalone` play nice with `--local` [#5762](https://github.com/rubygems/rubygems/pull/5762)
|
408
|
+
- Implement `bundle install --prefer-local` [#5761](https://github.com/rubygems/rubygems/pull/5761)
|
409
|
+
|
410
|
+
## Bug fixes:
|
411
|
+
|
412
|
+
- Fix regression where yanked gems are now unintentionally updated when other gems are unlocked [#5812](https://github.com/rubygems/rubygems/pull/5812)
|
413
|
+
- Automatically remove "ruby" from lockfile if incomplete [#5807](https://github.com/rubygems/rubygems/pull/5807)
|
414
|
+
- Fix `bundle outdated --strict` showing too many outdated gems [#5798](https://github.com/rubygems/rubygems/pull/5798)
|
415
|
+
- Don't discard candidates matching Ruby metadata [#5784](https://github.com/rubygems/rubygems/pull/5784)
|
416
|
+
- Fix `bundle outdated` crash in debug mode [#5796](https://github.com/rubygems/rubygems/pull/5796)
|
417
|
+
- Fix `ruby` DSL requirement matching for head and prerelease rubies [#5766](https://github.com/rubygems/rubygems/pull/5766)
|
418
|
+
|
419
|
+
## Documentation:
|
420
|
+
|
421
|
+
- Update Bundler support policies to match what we do these days [#5813](https://github.com/rubygems/rubygems/pull/5813)
|
422
|
+
- Fix arguments for bundle-config(1) docs [#5804](https://github.com/rubygems/rubygems/pull/5804)
|
423
|
+
- Improve `bundle platform` man page [#5788](https://github.com/rubygems/rubygems/pull/5788)
|
424
|
+
- Remove `bundle cache` from deprecated commands list, and consistently link to `bundle cache` in man pages [#5783](https://github.com/rubygems/rubygems/pull/5783)
|
425
|
+
- Add package/pack aliases to man pages for cache [#5785](https://github.com/rubygems/rubygems/pull/5785)
|
426
|
+
- Add deprecation notice of bundle console [#5775](https://github.com/rubygems/rubygems/pull/5775)
|
427
|
+
|
428
|
+
# 2.3.19 (July 27, 2022)
|
429
|
+
|
430
|
+
## Enhancements:
|
431
|
+
|
432
|
+
- Add `Bundler.settings[:only]` to install gems of the specified groups [#5759](https://github.com/rubygems/rubygems/pull/5759)
|
433
|
+
- Add `ignore_funding_requests` config flag [#5767](https://github.com/rubygems/rubygems/pull/5767)
|
434
|
+
- Prevent random crash when autoloading `Pathname` [#5769](https://github.com/rubygems/rubygems/pull/5769)
|
435
|
+
- Don't corrupt lockfile when user moves a gem that's already in the lockfile to an incorrect source by mistake [#5070](https://github.com/rubygems/rubygems/pull/5070)
|
436
|
+
- Reconcile error/warning message for multiple global sources with documentation [#5741](https://github.com/rubygems/rubygems/pull/5741)
|
437
|
+
- Improve error message when gems cannot be found to include the source for each gem [#5729](https://github.com/rubygems/rubygems/pull/5729)
|
438
|
+
|
439
|
+
## Bug fixes:
|
440
|
+
|
441
|
+
- Fix yet another TruffleRuby platform selection regression [#5746](https://github.com/rubygems/rubygems/pull/5746)
|
442
|
+
- Show a proper error if extension dir is not writable [#5726](https://github.com/rubygems/rubygems/pull/5726)
|
443
|
+
|
444
|
+
## Performance:
|
445
|
+
|
446
|
+
- Lazily check incomplete lockfile to improve performance [#5546](https://github.com/rubygems/rubygems/pull/5546)
|
447
|
+
|
448
|
+
## Documentation:
|
449
|
+
|
450
|
+
- Add deprecation notice of bundle inject [#5776](https://github.com/rubygems/rubygems/pull/5776)
|
451
|
+
- Add deprecation notice of `bundle viz` to man pages [#5765](https://github.com/rubygems/rubygems/pull/5765)
|
452
|
+
- Update command example in `bundle exec` man page [#5754](https://github.com/rubygems/rubygems/pull/5754)
|
453
|
+
- Remove bundle show from obsolete commands [#5753](https://github.com/rubygems/rubygems/pull/5753)
|
454
|
+
- Improve global source(s) documentation [#5732](https://github.com/rubygems/rubygems/pull/5732)
|
455
|
+
- Use https protocol for URLs for config mirror in bundler man [#5722](https://github.com/rubygems/rubygems/pull/5722)
|
456
|
+
|
1
457
|
# 2.3.18 (July 14, 2022)
|
2
458
|
|
3
459
|
## Enhancements:
|
@@ -1298,7 +1754,7 @@ Changes
|
|
1298
1754
|
|
1299
1755
|
- avoid new RubyGems warning about unsafe YAML loading (to keep output consistent) (@segiddins)
|
1300
1756
|
- load digest subclasses in a thread-safe manner (@segiddins, @colby-swandale)
|
1301
|
-
- avoid
|
1757
|
+
- avoid unused variable warnings under ruby 2.5 (@amatsuda)
|
1302
1758
|
- fix printing the same message twice in verbose mode ([#6028](https://github.com/rubygems/bundler/issues/6028), @akhramov)
|
1303
1759
|
- allow `SignalException`s to bubble up to the interpreter during `bundle exec` ([#6090](https://github.com/rubygems/bundler/issues/6090), @dekellum)
|
1304
1760
|
- avoid activating stdlib digest under Ruby 2.5 (@segiddins)
|
data/bundler/README.md
CHANGED
@@ -38,20 +38,17 @@ Still stuck? Try [filing an issue](https://github.com/rubygems/rubygems/issues/n
|
|
38
38
|
|
39
39
|
To see what has changed in recent versions of Bundler, see the [CHANGELOG](CHANGELOG.md).
|
40
40
|
|
41
|
-
To get in touch with the Bundler core team and other Bundler users, please
|
41
|
+
To get in touch with the Bundler core team and other Bundler users, please join [the Bundler slack](https://slack.bundler.io).
|
42
42
|
|
43
43
|
### Contributing
|
44
44
|
|
45
45
|
If you'd like to contribute to Bundler, that's awesome, and we <3 you. We've put together [the Bundler contributor guide](https://github.com/rubygems/rubygems/blob/master/bundler/doc/contributing/README.md) with all of the information you need to get started.
|
46
46
|
|
47
|
-
If you'd like to request a substantial change to Bundler or its documentation, refer to the [Bundler RFC process](https://github.com/
|
48
|
-
|
49
|
-
While some Bundler contributors are compensated by Ruby Together, the project maintainers make decisions independent of Ruby Together. As a project, we welcome contributions regardless of the author's affiliation with Ruby Together.
|
47
|
+
If you'd like to request a substantial change to Bundler or its documentation, refer to the [Bundler RFC process](https://github.com/rubygems/rfcs) for more information.
|
50
48
|
|
51
49
|
### Supporting
|
52
50
|
|
53
|
-
|
54
|
-
<a href="https://rubytogether.org/">Ruby Together</a> pays some Bundler maintainers for their ongoing work. As a grassroots initiative committed to supporting the critical Ruby infrastructure you rely on, Ruby Together is funded entirely by the Ruby community. Contribute today <a href="https://rubytogether.org/developers">as an individual</a> or (better yet) <a href="https://rubytogether.org/companies">as a company</a> to ensure that Bundler, RubyGems, and other shared tooling is around for years to come.
|
51
|
+
RubyGems is managed by [Ruby Central](https://rubycentral.org), a non-profit organization that supports the Ruby community through projects like this one, as well as [RubyConf](https://rubyconf.org), [RailsConf](https://railsconf.org), and [RubyGems.org](https://rubygems.org). You can support Ruby Central by attending or [sponsoring](sponsors@rubycentral.org) a conference, or by [joining as a supporting member](https://rubycentral.org/#/portal/signup).
|
55
52
|
|
56
53
|
### Code of Conduct
|
57
54
|
|
data/bundler/UPGRADING.md
CHANGED
@@ -25,7 +25,7 @@ I'll be dividing the deprecations into four groups: CLI deprecations, Helper
|
|
25
25
|
deprecations, DSL deprecations, and misc deprecations. Let's dive into each of
|
26
26
|
them.
|
27
27
|
|
28
|
-
|
28
|
+
### CLI deprecations
|
29
29
|
|
30
30
|
The CLI defines a set of commands and options that can be used by our users to
|
31
31
|
create command lines that bundler can understand. There's a number of changes
|
@@ -82,7 +82,6 @@ in the upcoming 3 version.
|
|
82
82
|
in favor of a `bin/console` script created by `bundle gem` on gem generation
|
83
83
|
that users can tweak to their needs.
|
84
84
|
|
85
|
-
* ~The `bundle update` command will no longer update all gems, you'll need to pass `--all` to it.~ (postponed)
|
86
85
|
|
87
86
|
* The `bundle install` command will no longer accept a `--binstubs` flag.
|
88
87
|
|
@@ -94,7 +93,6 @@ in the upcoming 3 version.
|
|
94
93
|
likely unused files into source control. Because of this, binstubs now must
|
95
94
|
be created and checked into version control individually.
|
96
95
|
|
97
|
-
* ~The `bundle config` command has a new subcommand-based interface.~ (postponed)
|
98
96
|
|
99
97
|
* The `bundle inject` command is deprecated and replaced with `bundle add`.
|
100
98
|
|
@@ -103,7 +101,16 @@ in the upcoming 3 version.
|
|
103
101
|
exactly the same in `bundle add`, so it should be easy to migrate to the new
|
104
102
|
command.
|
105
103
|
|
106
|
-
####
|
104
|
+
#### Cancelled CLI deprecations
|
105
|
+
|
106
|
+
These deprecations have been initially announced before, but the deprecations
|
107
|
+
were cancelled before the release of Bundler 2.1.0 in [rubygems/bundler#7475](https://github.com/rubygems/bundler/pull/7475).
|
108
|
+
|
109
|
+
* ~The `bundle update` command will no longer update all gems, you'll need to pass `--all` to it.~ (postponed)
|
110
|
+
|
111
|
+
* ~The `bundle config` command will no longer accept old subcommand-based interface before Bundler 2.1.~ (postponed)
|
112
|
+
|
113
|
+
### Helper deprecations
|
107
114
|
|
108
115
|
* `Bundler.clean_env`, `Bundler.with_clean_env`, `Bundler.clean_system`, and `Bundler.clean_exec` are deprecated.
|
109
116
|
|
data/bundler/bundler.gemspec
CHANGED
@@ -22,17 +22,15 @@ Gem::Specification.new do |s|
|
|
22
22
|
s.summary = "The best way to manage your application's dependencies"
|
23
23
|
s.description = "Bundler manages an application's dependencies through its entire life, across many machines, systematically and repeatably"
|
24
24
|
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
}
|
32
|
-
end
|
25
|
+
s.metadata = {
|
26
|
+
"bug_tracker_uri" => "https://github.com/rubygems/rubygems/issues?q=is%3Aopen+is%3Aissue+label%3ABundler",
|
27
|
+
"changelog_uri" => "https://github.com/rubygems/rubygems/blob/master/bundler/CHANGELOG.md",
|
28
|
+
"homepage_uri" => "https://bundler.io/",
|
29
|
+
"source_code_uri" => "https://github.com/rubygems/rubygems/tree/master/bundler",
|
30
|
+
}
|
33
31
|
|
34
|
-
s.required_ruby_version = ">= 2.
|
35
|
-
s.required_rubygems_version = ">=
|
32
|
+
s.required_ruby_version = ">= 2.6.0"
|
33
|
+
s.required_rubygems_version = ">= 3.0.1"
|
36
34
|
|
37
35
|
s.files = Dir.glob("lib/bundler{.rb,/**/*}", File::FNM_DOTMATCH).reject {|f| File.directory?(f) }
|
38
36
|
|
data/bundler/exe/bundle
CHANGED
@@ -10,15 +10,12 @@ end
|
|
10
10
|
base_path = File.expand_path("../lib", __dir__)
|
11
11
|
|
12
12
|
if File.exist?(base_path)
|
13
|
-
|
14
|
-
else
|
15
|
-
require "bundler"
|
13
|
+
$LOAD_PATH.unshift(base_path)
|
16
14
|
end
|
17
15
|
|
18
|
-
|
19
|
-
gem "bundler", Bundler::VERSION if Gem.rubygems_version < Gem::Version.new("2.6.2")
|
16
|
+
require "bundler"
|
20
17
|
|
21
|
-
if Gem.rubygems_version < Gem::Version.new("3.2.3") && Gem.ruby_version < Gem::Version.new("2.
|
18
|
+
if Gem.rubygems_version < Gem::Version.new("3.2.3") && Gem.ruby_version < Gem::Version.new("2.7.a") && !ENV["BUNDLER_NO_OLD_RUBYGEMS_WARNING"]
|
22
19
|
Bundler.ui.warn \
|
23
20
|
"Your RubyGems version (#{Gem::VERSION}) has a bug that prevents " \
|
24
21
|
"`required_ruby_version` from working for Bundler. Any scripts that use " \
|
@@ -27,18 +24,10 @@ if Gem.rubygems_version < Gem::Version.new("3.2.3") && Gem.ruby_version < Gem::V
|
|
27
24
|
"and silence this warning by running `gem update --system 3.2.3`"
|
28
25
|
end
|
29
26
|
|
30
|
-
|
31
|
-
require_relative "../lib/bundler/friendly_errors"
|
32
|
-
else
|
33
|
-
require "bundler/friendly_errors"
|
34
|
-
end
|
27
|
+
require "bundler/friendly_errors"
|
35
28
|
|
36
29
|
Bundler.with_friendly_errors do
|
37
|
-
|
38
|
-
require_relative "../lib/bundler/cli"
|
39
|
-
else
|
40
|
-
require "bundler/cli"
|
41
|
-
end
|
30
|
+
require "bundler/cli"
|
42
31
|
|
43
32
|
# Allow any command to use --help flag to show help for that command
|
44
33
|
help_flags = %w[--help -h]
|
@@ -4,8 +4,8 @@ module Bundler
|
|
4
4
|
# Represents metadata from when the Bundler gem was built.
|
5
5
|
module BuildMetadata
|
6
6
|
# begin ivars
|
7
|
-
@built_at = "
|
8
|
-
@git_commit_sha = "
|
7
|
+
@built_at = "2023-08-17".freeze
|
8
|
+
@git_commit_sha = "86f98098e3".freeze
|
9
9
|
@release = true
|
10
10
|
# end ivars
|
11
11
|
|
@@ -40,7 +40,7 @@ module Bundler
|
|
40
40
|
raise InvalidOption, "Please specify gems to add." if gems.empty?
|
41
41
|
|
42
42
|
version.to_a.each do |v|
|
43
|
-
raise InvalidOption, "Invalid gem requirement pattern '#{v}'" unless Gem::Requirement::PATTERN
|
43
|
+
raise InvalidOption, "Invalid gem requirement pattern '#{v}'" unless Gem::Requirement::PATTERN.match?(v.to_s)
|
44
44
|
end
|
45
45
|
end
|
46
46
|
end
|
@@ -11,7 +11,7 @@ module Bundler
|
|
11
11
|
def run
|
12
12
|
Bundler.definition.validate_runtime!
|
13
13
|
path_option = options["path"]
|
14
|
-
path_option = nil if path_option
|
14
|
+
path_option = nil if path_option&.empty?
|
15
15
|
Bundler.settings.set_command_option :bin, path_option if options["path"]
|
16
16
|
Bundler.settings.set_command_option_if_given :shebang, options["shebang"]
|
17
17
|
installer = Installer.new(Bundler.root, Bundler.definition)
|
@@ -40,7 +40,11 @@ module Bundler
|
|
40
40
|
end
|
41
41
|
|
42
42
|
if options[:standalone]
|
43
|
-
|
43
|
+
if gem_name == "bundler"
|
44
|
+
Bundler.ui.warn("Sorry, Bundler can only be run via RubyGems.") unless options[:all]
|
45
|
+
next
|
46
|
+
end
|
47
|
+
|
44
48
|
Bundler.settings.temporary(:path => (Bundler.settings[:path] || Bundler.root)) do
|
45
49
|
installer.generate_standalone_bundler_executable_stubs(spec, installer_opts)
|
46
50
|
end
|