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/CONTRIBUTING.md
CHANGED
@@ -29,13 +29,26 @@ here: https://guides.rubygems.org/contributing/
|
|
29
29
|
|
30
30
|
## Getting Started
|
31
31
|
|
32
|
+
### Installing dependencies
|
33
|
+
|
32
34
|
rake setup
|
33
35
|
|
34
|
-
>
|
36
|
+
> **NOTE**: If the above fails with permission related errors, you're most
|
37
|
+
> likely using a global Ruby installation (like the one packaged by your OS),
|
38
|
+
> which sets `GEM_HOME` to a location regular users can't write to. Consider
|
39
|
+
> using a Ruby version manager like [RVM](https://github.com/rvm/rvm),
|
40
|
+
> [rbenv](https://github.com/rbenv/rbenv),
|
41
|
+
> [chruby](https://github.com/postmodern/chruby) or [asdf](https://github.com/asdf-vm/asdf-ruby). These will install Ruby to a
|
42
|
+
> location regular users can write to, so you won't run into permission issues.
|
43
|
+
> Alternatively, consider setting `GEM_HOME` environment variable to a writable
|
44
|
+
> location with something like `export GEM_HOME=/tmp/rubygems.gems` and try
|
45
|
+
> again.
|
46
|
+
|
47
|
+
### Manually trying your local changes
|
35
48
|
|
36
49
|
To run commands like `gem install` from the repo:
|
37
50
|
|
38
|
-
ruby -Ilib
|
51
|
+
ruby -Ilib exe/gem install
|
39
52
|
|
40
53
|
To run commands like `bundle install` from the repo:
|
41
54
|
|
@@ -43,15 +56,15 @@ To run commands like `bundle install` from the repo:
|
|
43
56
|
|
44
57
|
### Running Tests
|
45
58
|
|
46
|
-
To run the entire test suite you can use:
|
59
|
+
To run the entire test suite you can use:
|
47
60
|
|
48
61
|
rake test
|
49
62
|
|
50
|
-
To run an individual test file located for example in `test/rubygems/test_deprecate.rb` you can use:
|
63
|
+
To run an individual test file located for example in `test/rubygems/test_deprecate.rb` you can use:
|
51
64
|
|
52
65
|
ruby -Ilib:test:bundler/lib test/rubygems/test_deprecate.rb
|
53
|
-
|
54
|
-
And to run an individual test method named `test_default` within a test file, you can use:
|
66
|
+
|
67
|
+
And to run an individual test method named `test_default` within a test file, you can use:
|
55
68
|
|
56
69
|
ruby -Ilib:test:bundler/lib test/rubygems/test_deprecate.rb -n /test_default/
|
57
70
|
|
@@ -67,14 +80,24 @@ To run the entire bundler test suite in parallel (it takes a while):
|
|
67
80
|
|
68
81
|
bin/parallel_rspec
|
69
82
|
|
70
|
-
|
83
|
+
There are some realworld higher level specs run in CI, but not run by `bin/parallel_rspec`. You can run those with:
|
71
84
|
|
72
|
-
bin/
|
85
|
+
bin/rake spec:realworld
|
73
86
|
|
74
87
|
To run an individual test file location for example in `spec/install/gems/standalone_spec.rb` you can use:
|
75
88
|
|
76
89
|
bin/rspec spec/install/gems/standalone_spec.rb
|
77
90
|
|
91
|
+
### Checking code style
|
92
|
+
|
93
|
+
You can check compliance with our code style with
|
94
|
+
|
95
|
+
rake rubocop
|
96
|
+
|
97
|
+
Optionally you can configure git hooks with to check this before every commit with
|
98
|
+
|
99
|
+
rake git_hooks
|
100
|
+
|
78
101
|
## Issues
|
79
102
|
|
80
103
|
RubyGems uses labels to track all issues and pull requests. In order to
|
data/Manifest.txt
CHANGED
@@ -8,8 +8,6 @@ Manifest.txt
|
|
8
8
|
POLICIES.md
|
9
9
|
README.md
|
10
10
|
UPGRADING.md
|
11
|
-
bin/gem
|
12
|
-
bin/update_rubygems
|
13
11
|
bundler/CHANGELOG.md
|
14
12
|
bundler/LICENSE.md
|
15
13
|
bundler/README.md
|
@@ -57,7 +55,6 @@ bundler/lib/bundler/compact_index_client/updater.rb
|
|
57
55
|
bundler/lib/bundler/constants.rb
|
58
56
|
bundler/lib/bundler/current_ruby.rb
|
59
57
|
bundler/lib/bundler/definition.rb
|
60
|
-
bundler/lib/bundler/dep_proxy.rb
|
61
58
|
bundler/lib/bundler/dependency.rb
|
62
59
|
bundler/lib/bundler/deployment.rb
|
63
60
|
bundler/lib/bundler/deprecate.rb
|
@@ -74,6 +71,7 @@ bundler/lib/bundler/fetcher/compact_index.rb
|
|
74
71
|
bundler/lib/bundler/fetcher/dependency.rb
|
75
72
|
bundler/lib/bundler/fetcher/downloader.rb
|
76
73
|
bundler/lib/bundler/fetcher/index.rb
|
74
|
+
bundler/lib/bundler/force_platform.rb
|
77
75
|
bundler/lib/bundler/friendly_errors.rb
|
78
76
|
bundler/lib/bundler/gem_helper.rb
|
79
77
|
bundler/lib/bundler/gem_helpers.rb
|
@@ -103,12 +101,16 @@ bundler/lib/bundler/man/bundle-clean.1
|
|
103
101
|
bundler/lib/bundler/man/bundle-clean.1.ronn
|
104
102
|
bundler/lib/bundler/man/bundle-config.1
|
105
103
|
bundler/lib/bundler/man/bundle-config.1.ronn
|
104
|
+
bundler/lib/bundler/man/bundle-console.1
|
105
|
+
bundler/lib/bundler/man/bundle-console.1.ronn
|
106
106
|
bundler/lib/bundler/man/bundle-doctor.1
|
107
107
|
bundler/lib/bundler/man/bundle-doctor.1.ronn
|
108
108
|
bundler/lib/bundler/man/bundle-exec.1
|
109
109
|
bundler/lib/bundler/man/bundle-exec.1.ronn
|
110
110
|
bundler/lib/bundler/man/bundle-gem.1
|
111
111
|
bundler/lib/bundler/man/bundle-gem.1.ronn
|
112
|
+
bundler/lib/bundler/man/bundle-help.1
|
113
|
+
bundler/lib/bundler/man/bundle-help.1.ronn
|
112
114
|
bundler/lib/bundler/man/bundle-info.1
|
113
115
|
bundler/lib/bundler/man/bundle-info.1.ronn
|
114
116
|
bundler/lib/bundler/man/bundle-init.1
|
@@ -127,6 +129,8 @@ bundler/lib/bundler/man/bundle-outdated.1
|
|
127
129
|
bundler/lib/bundler/man/bundle-outdated.1.ronn
|
128
130
|
bundler/lib/bundler/man/bundle-platform.1
|
129
131
|
bundler/lib/bundler/man/bundle-platform.1.ronn
|
132
|
+
bundler/lib/bundler/man/bundle-plugin.1
|
133
|
+
bundler/lib/bundler/man/bundle-plugin.1.ronn
|
130
134
|
bundler/lib/bundler/man/bundle-pristine.1
|
131
135
|
bundler/lib/bundler/man/bundle-pristine.1.ronn
|
132
136
|
bundler/lib/bundler/man/bundle-remove.1
|
@@ -135,6 +139,8 @@ bundler/lib/bundler/man/bundle-show.1
|
|
135
139
|
bundler/lib/bundler/man/bundle-show.1.ronn
|
136
140
|
bundler/lib/bundler/man/bundle-update.1
|
137
141
|
bundler/lib/bundler/man/bundle-update.1.ronn
|
142
|
+
bundler/lib/bundler/man/bundle-version.1
|
143
|
+
bundler/lib/bundler/man/bundle-version.1.ronn
|
138
144
|
bundler/lib/bundler/man/bundle-viz.1
|
139
145
|
bundler/lib/bundler/man/bundle-viz.1.ronn
|
140
146
|
bundler/lib/bundler/man/bundle.1
|
@@ -142,7 +148,9 @@ bundler/lib/bundler/man/bundle.1.ronn
|
|
142
148
|
bundler/lib/bundler/man/gemfile.5
|
143
149
|
bundler/lib/bundler/man/gemfile.5.ronn
|
144
150
|
bundler/lib/bundler/man/index.txt
|
151
|
+
bundler/lib/bundler/match_metadata.rb
|
145
152
|
bundler/lib/bundler/match_platform.rb
|
153
|
+
bundler/lib/bundler/match_remote_metadata.rb
|
146
154
|
bundler/lib/bundler/mirror.rb
|
147
155
|
bundler/lib/bundler/plugin.rb
|
148
156
|
bundler/lib/bundler/plugin/api.rb
|
@@ -157,6 +165,11 @@ bundler/lib/bundler/plugin/source_list.rb
|
|
157
165
|
bundler/lib/bundler/process_lock.rb
|
158
166
|
bundler/lib/bundler/remote_specification.rb
|
159
167
|
bundler/lib/bundler/resolver.rb
|
168
|
+
bundler/lib/bundler/resolver/base.rb
|
169
|
+
bundler/lib/bundler/resolver/candidate.rb
|
170
|
+
bundler/lib/bundler/resolver/incompatibility.rb
|
171
|
+
bundler/lib/bundler/resolver/package.rb
|
172
|
+
bundler/lib/bundler/resolver/root.rb
|
160
173
|
bundler/lib/bundler/resolver/spec_group.rb
|
161
174
|
bundler/lib/bundler/retry.rb
|
162
175
|
bundler/lib/bundler/ruby_dsl.rb
|
@@ -165,6 +178,7 @@ bundler/lib/bundler/rubygems_ext.rb
|
|
165
178
|
bundler/lib/bundler/rubygems_gem_installer.rb
|
166
179
|
bundler/lib/bundler/rubygems_integration.rb
|
167
180
|
bundler/lib/bundler/runtime.rb
|
181
|
+
bundler/lib/bundler/safe_marshal.rb
|
168
182
|
bundler/lib/bundler/self_manager.rb
|
169
183
|
bundler/lib/bundler/settings.rb
|
170
184
|
bundler/lib/bundler/settings/validator.rb
|
@@ -190,9 +204,9 @@ bundler/lib/bundler/templates/Executable
|
|
190
204
|
bundler/lib/bundler/templates/Executable.bundler
|
191
205
|
bundler/lib/bundler/templates/Executable.standalone
|
192
206
|
bundler/lib/bundler/templates/Gemfile
|
193
|
-
bundler/lib/bundler/templates/gems.rb
|
194
207
|
bundler/lib/bundler/templates/newgem/CHANGELOG.md.tt
|
195
208
|
bundler/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt
|
209
|
+
bundler/lib/bundler/templates/newgem/Cargo.toml.tt
|
196
210
|
bundler/lib/bundler/templates/newgem/Gemfile.tt
|
197
211
|
bundler/lib/bundler/templates/newgem/LICENSE.txt.tt
|
198
212
|
bundler/lib/bundler/templates/newgem/README.md.tt
|
@@ -201,9 +215,12 @@ bundler/lib/bundler/templates/newgem/bin/console.tt
|
|
201
215
|
bundler/lib/bundler/templates/newgem/bin/setup.tt
|
202
216
|
bundler/lib/bundler/templates/newgem/circleci/config.yml.tt
|
203
217
|
bundler/lib/bundler/templates/newgem/exe/newgem.tt
|
204
|
-
bundler/lib/bundler/templates/newgem/ext/newgem/
|
218
|
+
bundler/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt
|
219
|
+
bundler/lib/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt
|
220
|
+
bundler/lib/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt
|
205
221
|
bundler/lib/bundler/templates/newgem/ext/newgem/newgem.c.tt
|
206
222
|
bundler/lib/bundler/templates/newgem/ext/newgem/newgem.h.tt
|
223
|
+
bundler/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt
|
207
224
|
bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt
|
208
225
|
bundler/lib/bundler/templates/newgem/gitignore.tt
|
209
226
|
bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt
|
@@ -220,12 +237,12 @@ bundler/lib/bundler/templates/newgem/test/minitest/test_helper.rb.tt
|
|
220
237
|
bundler/lib/bundler/templates/newgem/test/minitest/test_newgem.rb.tt
|
221
238
|
bundler/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt
|
222
239
|
bundler/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt
|
223
|
-
bundler/lib/bundler/templates/newgem/travis.yml.tt
|
224
240
|
bundler/lib/bundler/ui.rb
|
225
241
|
bundler/lib/bundler/ui/rg_proxy.rb
|
226
242
|
bundler/lib/bundler/ui/shell.rb
|
227
243
|
bundler/lib/bundler/ui/silent.rb
|
228
244
|
bundler/lib/bundler/uri_credentials_filter.rb
|
245
|
+
bundler/lib/bundler/uri_normalizer.rb
|
229
246
|
bundler/lib/bundler/vendor/.document
|
230
247
|
bundler/lib/bundler/vendor/connection_pool/LICENSE
|
231
248
|
bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb
|
@@ -234,32 +251,28 @@ bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb
|
|
234
251
|
bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb
|
235
252
|
bundler/lib/bundler/vendor/fileutils/LICENSE.txt
|
236
253
|
bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb
|
237
|
-
bundler/lib/bundler/vendor/molinillo/LICENSE
|
238
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb
|
239
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb
|
240
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb
|
241
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb
|
242
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
|
243
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb
|
244
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb
|
245
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb
|
246
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb
|
247
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb
|
248
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb
|
249
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb
|
250
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb
|
251
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb
|
252
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb
|
253
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb
|
254
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb
|
255
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb
|
256
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb
|
257
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/state.rb
|
258
254
|
bundler/lib/bundler/vendor/net-http-persistent/README.rdoc
|
259
255
|
bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb
|
260
256
|
bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb
|
261
257
|
bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb
|
262
258
|
bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb
|
259
|
+
bundler/lib/bundler/vendor/pub_grub/LICENSE.txt
|
260
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub.rb
|
261
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb
|
262
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb
|
263
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb
|
264
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb
|
265
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/package.rb
|
266
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb
|
267
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb
|
268
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb
|
269
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb
|
270
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/term.rb
|
271
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version.rb
|
272
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb
|
273
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb
|
274
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb
|
275
|
+
bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb
|
263
276
|
bundler/lib/bundler/vendor/thor/LICENSE.md
|
264
277
|
bundler/lib/bundler/vendor/thor/lib/thor.rb
|
265
278
|
bundler/lib/bundler/vendor/thor/lib/thor/actions.rb
|
@@ -292,7 +305,6 @@ bundler/lib/bundler/vendor/thor/lib/thor/shell/color.rb
|
|
292
305
|
bundler/lib/bundler/vendor/thor/lib/thor/shell/html.rb
|
293
306
|
bundler/lib/bundler/vendor/thor/lib/thor/util.rb
|
294
307
|
bundler/lib/bundler/vendor/thor/lib/thor/version.rb
|
295
|
-
bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb
|
296
308
|
bundler/lib/bundler/vendor/tsort/LICENSE.txt
|
297
309
|
bundler/lib/bundler/vendor/tsort/lib/tsort.rb
|
298
310
|
bundler/lib/bundler/vendor/uri/LICENSE.txt
|
@@ -312,17 +324,17 @@ bundler/lib/bundler/vendor/uri/lib/uri/version.rb
|
|
312
324
|
bundler/lib/bundler/vendor/uri/lib/uri/ws.rb
|
313
325
|
bundler/lib/bundler/vendor/uri/lib/uri/wss.rb
|
314
326
|
bundler/lib/bundler/vendored_fileutils.rb
|
315
|
-
bundler/lib/bundler/vendored_molinillo.rb
|
316
327
|
bundler/lib/bundler/vendored_persistent.rb
|
328
|
+
bundler/lib/bundler/vendored_pub_grub.rb
|
317
329
|
bundler/lib/bundler/vendored_thor.rb
|
318
|
-
bundler/lib/bundler/vendored_tmpdir.rb
|
319
330
|
bundler/lib/bundler/vendored_tsort.rb
|
320
331
|
bundler/lib/bundler/vendored_uri.rb
|
321
332
|
bundler/lib/bundler/version.rb
|
322
|
-
bundler/lib/bundler/version_ranges.rb
|
323
333
|
bundler/lib/bundler/vlad.rb
|
324
334
|
bundler/lib/bundler/worker.rb
|
325
335
|
bundler/lib/bundler/yaml_serializer.rb
|
336
|
+
exe/gem
|
337
|
+
exe/update_rubygems
|
326
338
|
hide_lib_for_update/note.txt
|
327
339
|
lib/rubygems.rb
|
328
340
|
lib/rubygems/available_set.rb
|
@@ -337,6 +349,7 @@ lib/rubygems/commands/cleanup_command.rb
|
|
337
349
|
lib/rubygems/commands/contents_command.rb
|
338
350
|
lib/rubygems/commands/dependency_command.rb
|
339
351
|
lib/rubygems/commands/environment_command.rb
|
352
|
+
lib/rubygems/commands/exec_command.rb
|
340
353
|
lib/rubygems/commands/fetch_command.rb
|
341
354
|
lib/rubygems/commands/generate_index_command.rb
|
342
355
|
lib/rubygems/commands/help_command.rb
|
@@ -390,6 +403,9 @@ lib/rubygems/ext/ext_conf_builder.rb
|
|
390
403
|
lib/rubygems/ext/rake_builder.rb
|
391
404
|
lib/rubygems/gem_runner.rb
|
392
405
|
lib/rubygems/gemcutter_utilities.rb
|
406
|
+
lib/rubygems/gemcutter_utilities/webauthn_listener.rb
|
407
|
+
lib/rubygems/gemcutter_utilities/webauthn_listener/response.rb
|
408
|
+
lib/rubygems/gemcutter_utilities/webauthn_poller.rb
|
393
409
|
lib/rubygems/indexer.rb
|
394
410
|
lib/rubygems/install_default_message.rb
|
395
411
|
lib/rubygems/install_message.rb
|
@@ -496,6 +512,7 @@ lib/rubygems/security/policy.rb
|
|
496
512
|
lib/rubygems/security/signer.rb
|
497
513
|
lib/rubygems/security/trust_dir.rb
|
498
514
|
lib/rubygems/security_option.rb
|
515
|
+
lib/rubygems/shellwords.rb
|
499
516
|
lib/rubygems/source.rb
|
500
517
|
lib/rubygems/source/git.rb
|
501
518
|
lib/rubygems/source/installed.rb
|
@@ -518,6 +535,7 @@ lib/rubygems/tsort/LICENSE.txt
|
|
518
535
|
lib/rubygems/tsort/lib/tsort.rb
|
519
536
|
lib/rubygems/uninstaller.rb
|
520
537
|
lib/rubygems/unknown_command_spell_checker.rb
|
538
|
+
lib/rubygems/update_suggestion.rb
|
521
539
|
lib/rubygems/uri.rb
|
522
540
|
lib/rubygems/uri_formatter.rb
|
523
541
|
lib/rubygems/user_interaction.rb
|
@@ -533,6 +551,7 @@ test/rubygems/alternate_cert.pem
|
|
533
551
|
test/rubygems/alternate_cert_32.pem
|
534
552
|
test/rubygems/alternate_key.pem
|
535
553
|
test/rubygems/bad_rake.rb
|
554
|
+
test/rubygems/bundler_test_gem.rb
|
536
555
|
test/rubygems/ca_cert.pem
|
537
556
|
test/rubygems/child_cert.pem
|
538
557
|
test/rubygems/child_cert_32.pem
|
@@ -565,7 +584,9 @@ test/rubygems/invalid_signer_cert_32.pem
|
|
565
584
|
test/rubygems/invalidchild_cert.pem
|
566
585
|
test/rubygems/invalidchild_cert_32.pem
|
567
586
|
test/rubygems/invalidchild_key.pem
|
587
|
+
test/rubygems/multifactor_auth_utilities.rb
|
568
588
|
test/rubygems/package/tar_test_case.rb
|
589
|
+
test/rubygems/packages/Bluebie-legs-0.6.2.gem
|
569
590
|
test/rubygems/packages/ascii_binder-0.1.10.1.gem
|
570
591
|
test/rubygems/packages/ill-formatted-platform-1.0.0.10.gem
|
571
592
|
test/rubygems/plugin/exception/rubygems_plugin.rb
|
@@ -603,6 +624,7 @@ test/rubygems/test_gem_commands_cleanup_command.rb
|
|
603
624
|
test/rubygems/test_gem_commands_contents_command.rb
|
604
625
|
test/rubygems/test_gem_commands_dependency_command.rb
|
605
626
|
test/rubygems/test_gem_commands_environment_command.rb
|
627
|
+
test/rubygems/test_gem_commands_exec_command.rb
|
606
628
|
test/rubygems/test_gem_commands_fetch_command.rb
|
607
629
|
test/rubygems/test_gem_commands_generate_index_command.rb
|
608
630
|
test/rubygems/test_gem_commands_help_command.rb
|
@@ -639,15 +661,14 @@ test/rubygems/test_gem_doctor.rb
|
|
639
661
|
test/rubygems/test_gem_ext_builder.rb
|
640
662
|
test/rubygems/test_gem_ext_cargo_builder.rb
|
641
663
|
test/rubygems/test_gem_ext_cargo_builder/custom_name/.gitignore
|
642
|
-
test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.lock
|
643
|
-
test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.toml
|
644
|
-
test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb
|
645
664
|
test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec
|
646
|
-
test/rubygems/test_gem_ext_cargo_builder/custom_name/
|
665
|
+
test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.lock
|
666
|
+
test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.toml
|
667
|
+
test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/src/lib.rs
|
668
|
+
test/rubygems/test_gem_ext_cargo_builder/custom_name/lib/custom_name.rb
|
647
669
|
test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/.gitignore
|
648
670
|
test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock
|
649
671
|
test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml
|
650
|
-
test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/build.rb
|
651
672
|
test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/rust_ruby_example.gemspec
|
652
673
|
test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs
|
653
674
|
test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb
|
@@ -726,6 +747,7 @@ test/rubygems/test_gem_stub_specification.rb
|
|
726
747
|
test/rubygems/test_gem_text.rb
|
727
748
|
test/rubygems/test_gem_uninstaller.rb
|
728
749
|
test/rubygems/test_gem_unsatisfiable_dependency_error.rb
|
750
|
+
test/rubygems/test_gem_update_suggestion.rb
|
729
751
|
test/rubygems/test_gem_uri.rb
|
730
752
|
test/rubygems/test_gem_uri_formatter.rb
|
731
753
|
test/rubygems/test_gem_util.rb
|
@@ -737,6 +759,9 @@ test/rubygems/test_project_sanity.rb
|
|
737
759
|
test/rubygems/test_remote_fetch_error.rb
|
738
760
|
test/rubygems/test_require.rb
|
739
761
|
test/rubygems/test_rubygems.rb
|
762
|
+
test/rubygems/test_webauthn_listener.rb
|
763
|
+
test/rubygems/test_webauthn_listener_response.rb
|
764
|
+
test/rubygems/test_webauthn_poller.rb
|
740
765
|
test/rubygems/utilities.rb
|
741
766
|
test/rubygems/wrong_key_cert.pem
|
742
767
|
test/rubygems/wrong_key_cert_32.pem
|
data/POLICIES.md
CHANGED
@@ -42,8 +42,19 @@ at version 2.7, so when RubyGems 2.8 is released, it will only support Ruby
|
|
42
42
|
|
43
43
|
## Release Process
|
44
44
|
|
45
|
-
|
46
|
-
|
45
|
+
### Permissions
|
46
|
+
|
47
|
+
You'll need the following environment variables set to release RubyGems &
|
48
|
+
Bundler:
|
49
|
+
|
50
|
+
* AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY: to be able to push RubyGems zip
|
51
|
+
files to s3 so that they appear at RubyGems [download page].
|
52
|
+
|
53
|
+
* GITHUB_RELEASE_PAT: A [GitHub PAT] with repo permissions, in order to push
|
54
|
+
GitHub releases and to use the GitHub API for changelog generation.
|
55
|
+
|
56
|
+
[download page]: https://rubygems.org/pages/download
|
57
|
+
[GitHub PAT]: https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token
|
47
58
|
|
48
59
|
### Recommendations for security releases
|
49
60
|
|
@@ -54,30 +65,54 @@ smooth and no needed steps are missed.
|
|
54
65
|
have to work on weekends.
|
55
66
|
* Continue with the regular release process below.
|
56
67
|
|
68
|
+
### Automatic changelog and backport generation
|
69
|
+
|
70
|
+
PR labels and titles are used to automatically generate changelogs for patch and
|
71
|
+
minor releases.
|
72
|
+
|
73
|
+
When releasing, a changelog generation script goes through all PRs that have
|
74
|
+
never made it into a release, and selects only the ones with specific labels as
|
75
|
+
detailed in the `.changelog.yml` and `bundler/.changelog.yml` files. Those
|
76
|
+
particular PRs get backported to the stable branch and included in the release
|
77
|
+
changelog.
|
78
|
+
|
79
|
+
If PRs don't have a proper label, they won't be backported to patch releases.
|
80
|
+
|
81
|
+
If you want a PR to be backported to a patch level release, but don't want to
|
82
|
+
include it in the changelog, you can use the special `rubygems: backport` and
|
83
|
+
`bundler: backport` labels. For example, this is useful when backporting a PR
|
84
|
+
generates conflicts that are solved by backporting another PR with no user
|
85
|
+
visible changes. You can use these special labels to also backport the other PR
|
86
|
+
and not get any conflicts.
|
57
87
|
|
58
88
|
### Steps for patch releases
|
59
89
|
|
60
90
|
* Confirm all PRs that you want backported are properly tagged with `rubygems:
|
61
91
|
<type>` or `bundler: <type>` labels at GitHub.
|
62
|
-
* Run `rake prepare_release[<target_version>]
|
63
|
-
|
64
|
-
|
65
|
-
|
92
|
+
* Run `rake prepare_release[<target_version>]`. This will create a PR to the
|
93
|
+
stable branch with the backports included in the release, and proper
|
94
|
+
changelogs and version bumps. It will also create a PR to merge release
|
95
|
+
changelogs into master.
|
96
|
+
* Once CI passes, merge the release PR, switch to the stable branch and pull
|
97
|
+
the PR just merged.
|
98
|
+
* Release `bundler` with `rake bundler:release`.
|
66
99
|
* Release `rubygems` with `rake release`.
|
67
100
|
|
68
101
|
### Steps for minor and major releases
|
69
102
|
|
70
103
|
* Confirm all PRs that you want listed in changelogs are properly tagged with
|
71
104
|
`rubygems: <type>` or `bundler: <type>` labels at GitHub.
|
72
|
-
* Run `rake prepare_release[<target_version>]`.
|
73
|
-
|
74
|
-
|
75
|
-
|
76
|
-
*
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
*
|
105
|
+
* Run `rake prepare_release[<target_version>]`. This will create a new stable
|
106
|
+
branch off the master branch, and create a PR to it with the proper version
|
107
|
+
bumps and changelogs. It will also create a PR to merge release changelogs
|
108
|
+
into master.
|
109
|
+
* Replace the stable branch in the workflows with the new stable branch, and
|
110
|
+
push that change to the release PR.
|
111
|
+
* Replace version numbers with the next ".dev" version, and push that change
|
112
|
+
to the master PR.
|
113
|
+
* Once CI passes, merge the release PR, switch to the stable branch and pull
|
114
|
+
the PR just merged.
|
115
|
+
* Release `bundler` with `rake bundler:release`.
|
81
116
|
* Release `rubygems` with `rake release`.
|
82
117
|
|
83
118
|
## Committer Access
|
@@ -93,8 +128,8 @@ permissions compromised or exposed.
|
|
93
128
|
|
94
129
|
## Changing These Policies
|
95
130
|
|
96
|
-
These policies were set in order to reduce the burden of maintenance and to
|
97
|
-
|
98
|
-
|
99
|
-
support. By joining [Ruby
|
100
|
-
extend support for older RubyGems versions.
|
131
|
+
These policies were set in order to reduce the burden of maintenance and to keep
|
132
|
+
committers current with existing development and policies. RubyGems work is
|
133
|
+
primarily volunteer-driven which limits the ability to provide long-term
|
134
|
+
support. By joining [Ruby Central](https://rubycentral.org/#/portal/signup) you
|
135
|
+
can help extend support for older RubyGems versions.
|
data/README.md
CHANGED
@@ -64,6 +64,22 @@ To upgrade to the latest RubyGems, run:
|
|
64
64
|
|
65
65
|
See [UPGRADING](UPGRADING.md) for more details and alternative instructions.
|
66
66
|
|
67
|
+
## Release policy
|
68
|
+
|
69
|
+
RubyGems and Bundler are released in sync, although they do not share their
|
70
|
+
major version number. It is planned that also their major version numbers will
|
71
|
+
be sync'ed in the future.
|
72
|
+
|
73
|
+
The release policy is somewhat similar to the release policy of Ruby itself:
|
74
|
+
|
75
|
+
* Frequent patch releases (every 2-4 weeks) including bug fixes, minor
|
76
|
+
enhancements, small features, or even medium sized features declared as
|
77
|
+
experimental for battle testing.
|
78
|
+
* Yearly minor releases including bigger features, and minor breaking changes
|
79
|
+
(affecting only edge cases and a very small set of users).
|
80
|
+
* Occasional major releases (replacing yearly minors) including major breaking
|
81
|
+
changes.
|
82
|
+
|
67
83
|
## Documentation
|
68
84
|
|
69
85
|
RubyGems uses [rdoc](https://github.com/rdoc/rdoc) for documentation. A compiled set of the docs
|
@@ -79,23 +95,20 @@ creating a new gem, security practices and other resources at https://guides.rub
|
|
79
95
|
Got a bug and you're not sure? You're sure you have a bug, but don't know
|
80
96
|
what to do next? In any case, let us know about it! The best place
|
81
97
|
for letting the RubyGems team know about bugs or problems you're having is
|
82
|
-
[on the RubyGems issues page at GitHub](
|
98
|
+
[on the RubyGems issues page at GitHub](https://github.com/rubygems/rubygems/issues).
|
83
99
|
|
84
100
|
### Bundler Compatibility
|
85
101
|
|
86
|
-
See
|
102
|
+
See https://bundler.io/compatibility for known issues.
|
87
103
|
|
88
104
|
### Supporting
|
89
105
|
|
90
|
-
|
91
|
-
<a href="https://rubytogether.org/">Ruby Together</a> pays some RubyGems 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 even better, <a href="https://rubytogether.org/companies">as a company</a>, and ensure that RubyGems, Bundler, and other shared tooling is around for years to come.
|
106
|
+
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).
|
92
107
|
|
93
108
|
### Contributing
|
94
109
|
|
95
110
|
If you'd like to contribute to RubyGems, that's awesome, and we <3 you. Check out our [guide to contributing](CONTRIBUTING.md) for more information.
|
96
111
|
|
97
|
-
While some RubyGems 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.
|
98
|
-
|
99
112
|
### Code of Conduct
|
100
113
|
|
101
114
|
Everyone interacting in the RubyGems project’s codebases, issue trackers, chat rooms, and mailing lists is expected to follow the [contributor code of conduct](https://github.com/rubygems/rubygems/blob/master/CODE_OF_CONDUCT.md).
|