rubygems-update 3.4.22 → 3.5.1
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 +105 -2
- data/Manifest.txt +46 -221
- data/README.md +1 -3
- data/bundler/CHANGELOG.md +63 -0
- data/bundler/bundler.gemspec +4 -2
- data/bundler/exe/bundle +1 -10
- data/bundler/lib/bundler/build_metadata.rb +3 -3
- data/bundler/lib/bundler/capistrano.rb +1 -1
- data/bundler/lib/bundler/checksum.rb +254 -0
- data/bundler/lib/bundler/ci_detector.rb +75 -0
- data/bundler/lib/bundler/cli/add.rb +3 -3
- data/bundler/lib/bundler/cli/binstubs.rb +4 -4
- data/bundler/lib/bundler/cli/cache.rb +1 -1
- data/bundler/lib/bundler/cli/check.rb +1 -1
- data/bundler/lib/bundler/cli/common.rb +9 -1
- data/bundler/lib/bundler/cli/config.rb +8 -7
- data/bundler/lib/bundler/cli/console.rb +3 -2
- data/bundler/lib/bundler/cli/doctor.rb +2 -2
- data/bundler/lib/bundler/cli/exec.rb +1 -1
- data/bundler/lib/bundler/cli/gem.rb +28 -23
- data/bundler/lib/bundler/cli/info.rb +2 -13
- data/bundler/lib/bundler/cli/install.rb +5 -4
- data/bundler/lib/bundler/cli/issue.rb +1 -1
- data/bundler/lib/bundler/cli/lock.rb +4 -4
- data/bundler/lib/bundler/cli/open.rb +1 -1
- data/bundler/lib/bundler/cli/outdated.rb +6 -6
- data/bundler/lib/bundler/cli/plugin.rb +7 -14
- data/bundler/lib/bundler/cli/pristine.rb +38 -30
- data/bundler/lib/bundler/cli/show.rb +2 -2
- data/bundler/lib/bundler/cli/update.rb +5 -5
- data/bundler/lib/bundler/cli.rb +215 -263
- data/bundler/lib/bundler/compact_index_client/cache.rb +29 -9
- data/bundler/lib/bundler/compact_index_client/cache_file.rb +153 -0
- data/bundler/lib/bundler/compact_index_client/gem_parser.rb +7 -3
- data/bundler/lib/bundler/compact_index_client/updater.rb +79 -81
- data/bundler/lib/bundler/compact_index_client.rb +14 -7
- data/bundler/lib/bundler/constants.rb +1 -1
- data/bundler/lib/bundler/current_ruby.rb +5 -21
- data/bundler/lib/bundler/definition.rb +42 -15
- data/bundler/lib/bundler/dependency.rb +16 -12
- data/bundler/lib/bundler/digest.rb +2 -2
- data/bundler/lib/bundler/dsl.rb +46 -30
- data/bundler/lib/bundler/endpoint_specification.rb +5 -1
- data/bundler/lib/bundler/env.rb +1 -3
- data/bundler/lib/bundler/errors.rb +43 -0
- data/bundler/lib/bundler/fetcher/base.rb +3 -1
- data/bundler/lib/bundler/fetcher/compact_index.rb +4 -4
- data/bundler/lib/bundler/fetcher/downloader.rb +13 -11
- data/bundler/lib/bundler/fetcher/gem_remote_fetcher.rb +16 -0
- data/bundler/lib/bundler/fetcher/index.rb +1 -1
- data/bundler/lib/bundler/fetcher.rb +28 -25
- data/bundler/lib/bundler/friendly_errors.rb +5 -5
- data/bundler/lib/bundler/gem_helper.rb +1 -1
- data/bundler/lib/bundler/gem_helpers.rb +5 -2
- data/bundler/lib/bundler/graph.rb +9 -9
- data/bundler/lib/bundler/index.rb +1 -2
- data/bundler/lib/bundler/injector.rb +1 -1
- data/bundler/lib/bundler/inline.rb +3 -3
- data/bundler/lib/bundler/installer/gem_installer.rb +5 -5
- data/bundler/lib/bundler/installer/parallel_installer.rb +16 -8
- data/bundler/lib/bundler/installer/standalone.rb +2 -3
- data/bundler/lib/bundler/installer.rb +9 -9
- data/bundler/lib/bundler/lazy_specification.rb +24 -17
- data/bundler/lib/bundler/lockfile_generator.rb +9 -0
- data/bundler/lib/bundler/lockfile_parser.rb +81 -10
- data/bundler/lib/bundler/man/bundle-add.1 +3 -26
- data/bundler/lib/bundler/man/bundle-binstubs.1 +4 -16
- data/bundler/lib/bundler/man/bundle-cache.1 +3 -24
- data/bundler/lib/bundler/man/bundle-check.1 +3 -12
- data/bundler/lib/bundler/man/bundle-clean.1 +3 -10
- data/bundler/lib/bundler/man/bundle-config.1 +20 -211
- data/bundler/lib/bundler/man/bundle-config.1.ronn +6 -0
- data/bundler/lib/bundler/man/bundle-console.1 +4 -22
- data/bundler/lib/bundler/man/bundle-doctor.1 +4 -18
- data/bundler/lib/bundler/man/bundle-exec.1 +12 -73
- data/bundler/lib/bundler/man/bundle-gem.1 +13 -49
- data/bundler/lib/bundler/man/bundle-help.1 +3 -7
- data/bundler/lib/bundler/man/bundle-info.1 +3 -9
- data/bundler/lib/bundler/man/bundle-init.1 +3 -12
- data/bundler/lib/bundler/man/bundle-inject.1 +6 -19
- data/bundler/lib/bundler/man/bundle-install.1 +27 -125
- data/bundler/lib/bundler/man/bundle-install.1.ronn +1 -0
- data/bundler/lib/bundler/man/bundle-list.1 +4 -19
- data/bundler/lib/bundler/man/bundle-lock.1 +5 -29
- data/bundler/lib/bundler/man/bundle-open.1 +7 -27
- data/bundler/lib/bundler/man/bundle-outdated.1 +3 -55
- data/bundler/lib/bundler/man/bundle-outdated.1.ronn +1 -0
- data/bundler/lib/bundler/man/bundle-platform.1 +5 -27
- data/bundler/lib/bundler/man/bundle-plugin.1 +3 -29
- data/bundler/lib/bundler/man/bundle-pristine.1 +5 -16
- data/bundler/lib/bundler/man/bundle-remove.1 +4 -14
- data/bundler/lib/bundler/man/bundle-show.1 +3 -10
- data/bundler/lib/bundler/man/bundle-update.1 +18 -137
- data/bundler/lib/bundler/man/bundle-version.1 +3 -16
- data/bundler/lib/bundler/man/bundle-viz.1 +4 -16
- data/bundler/lib/bundler/man/bundle.1 +5 -44
- data/bundler/lib/bundler/man/gemfile.5 +24 -301
- data/bundler/lib/bundler/man/gemfile.5.ronn +4 -0
- data/bundler/lib/bundler/match_metadata.rb +4 -0
- data/bundler/lib/bundler/match_platform.rb +1 -1
- data/bundler/lib/bundler/plugin/api/source.rb +3 -2
- data/bundler/lib/bundler/plugin/installer.rb +1 -1
- data/bundler/lib/bundler/plugin.rb +3 -3
- data/bundler/lib/bundler/resolver/base.rb +1 -1
- data/bundler/lib/bundler/resolver/incompatibility.rb +1 -1
- data/bundler/lib/bundler/resolver/spec_group.rb +1 -4
- data/bundler/lib/bundler/resolver.rb +16 -16
- data/bundler/lib/bundler/ruby_dsl.rb +20 -12
- data/bundler/lib/bundler/ruby_version.rb +1 -1
- data/bundler/lib/bundler/rubygems_ext.rb +24 -50
- data/bundler/lib/bundler/rubygems_gem_installer.rb +6 -56
- data/bundler/lib/bundler/rubygems_integration.rb +25 -94
- data/bundler/lib/bundler/runtime.rb +2 -2
- data/bundler/lib/bundler/self_manager.rb +23 -7
- data/bundler/lib/bundler/settings.rb +27 -7
- data/bundler/lib/bundler/setup.rb +4 -1
- data/bundler/lib/bundler/shared_helpers.rb +35 -13
- data/bundler/lib/bundler/source/git/git_proxy.rb +15 -15
- data/bundler/lib/bundler/source/git.rb +4 -3
- data/bundler/lib/bundler/source/metadata.rb +15 -15
- data/bundler/lib/bundler/source/path.rb +7 -6
- data/bundler/lib/bundler/source/rubygems.rb +21 -14
- data/bundler/lib/bundler/source.rb +2 -0
- data/bundler/lib/bundler/spec_set.rb +38 -10
- data/bundler/lib/bundler/stub_specification.rb +1 -0
- data/bundler/lib/bundler/templates/Executable.bundler +1 -1
- data/bundler/lib/bundler/templates/newgem/README.md.tt +3 -3
- data/bundler/lib/bundler/templates/newgem/Rakefile.tt +2 -6
- data/bundler/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +1 -1
- data/bundler/lib/bundler/templates/newgem/standard.yml.tt +1 -1
- data/bundler/lib/bundler/ui/shell.rb +1 -1
- data/bundler/lib/bundler/vendor/connection_pool/.document +1 -0
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb +1 -1
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +53 -6
- data/bundler/lib/bundler/vendor/fileutils/.document +1 -0
- data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +8 -20
- data/bundler/lib/bundler/vendor/net-http-persistent/.document +1 -0
- data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb +3 -3
- data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb +2 -2
- data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +1 -1
- data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +34 -34
- data/bundler/lib/bundler/vendor/pub_grub/.document +1 -0
- data/bundler/lib/bundler/vendor/thor/.document +1 -0
- data/bundler/lib/bundler/vendor/tsort/.document +1 -0
- data/bundler/lib/bundler/vendor/tsort/lib/tsort.rb +3 -0
- data/bundler/lib/bundler/vendor/uri/.document +1 -0
- data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +256 -132
- data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +1 -0
- data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +95 -31
- data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
- data/bundler/lib/bundler/vendored_net_http.rb +8 -0
- data/bundler/lib/bundler/vendored_persistent.rb +0 -4
- data/bundler/lib/bundler/vendored_timeout.rb +8 -0
- data/bundler/lib/bundler/version.rb +1 -1
- data/bundler/lib/bundler/vlad.rb +1 -1
- data/bundler/lib/bundler/yaml_serializer.rb +3 -3
- data/bundler/lib/bundler.rb +41 -32
- data/lib/rubygems/available_set.rb +4 -4
- data/lib/rubygems/basic_specification.rb +35 -37
- data/lib/rubygems/bundler_version_finder.rb +4 -4
- data/lib/rubygems/ci_detector.rb +75 -0
- data/lib/rubygems/command.rb +13 -15
- data/lib/rubygems/command_manager.rb +5 -4
- data/lib/rubygems/commands/build_command.rb +2 -2
- data/lib/rubygems/commands/cert_command.rb +1 -2
- data/lib/rubygems/commands/check_command.rb +4 -4
- data/lib/rubygems/commands/cleanup_command.rb +12 -14
- data/lib/rubygems/commands/contents_command.rb +4 -4
- data/lib/rubygems/commands/dependency_command.rb +4 -5
- data/lib/rubygems/commands/environment_command.rb +1 -3
- data/lib/rubygems/commands/exec_command.rb +1 -1
- data/lib/rubygems/commands/fetch_command.rb +2 -2
- data/lib/rubygems/commands/generate_index_command.rb +39 -74
- data/lib/rubygems/commands/help_command.rb +3 -3
- data/lib/rubygems/commands/info_command.rb +2 -2
- data/lib/rubygems/commands/install_command.rb +8 -16
- data/lib/rubygems/commands/list_command.rb +2 -2
- data/lib/rubygems/commands/lock_command.rb +1 -1
- data/lib/rubygems/commands/open_command.rb +1 -1
- data/lib/rubygems/commands/owner_command.rb +1 -1
- data/lib/rubygems/commands/pristine_command.rb +13 -15
- data/lib/rubygems/commands/push_command.rb +2 -2
- data/lib/rubygems/commands/query_command.rb +4 -5
- data/lib/rubygems/commands/rdoc_command.rb +2 -2
- data/lib/rubygems/commands/search_command.rb +2 -2
- data/lib/rubygems/commands/setup_command.rb +31 -34
- data/lib/rubygems/commands/sources_command.rb +12 -12
- data/lib/rubygems/commands/specification_command.rb +10 -10
- data/lib/rubygems/commands/stale_command.rb +1 -1
- data/lib/rubygems/commands/uninstall_command.rb +9 -10
- data/lib/rubygems/commands/unpack_command.rb +4 -4
- data/lib/rubygems/commands/update_command.rb +10 -12
- data/lib/rubygems/commands/which_command.rb +1 -1
- data/lib/rubygems/commands/yank_command.rb +1 -1
- data/lib/rubygems/compatibility.rb +5 -6
- data/lib/rubygems/config_file.rb +4 -4
- data/lib/rubygems/core_ext/kernel_gem.rb +0 -2
- data/lib/rubygems/core_ext/kernel_require.rb +19 -48
- data/lib/rubygems/core_ext/kernel_warn.rb +1 -1
- data/lib/rubygems/core_ext/tcpsocket_init.rb +1 -1
- data/lib/rubygems/defaults.rb +15 -3
- data/lib/rubygems/dependency.rb +12 -14
- data/lib/rubygems/dependency_installer.rb +29 -30
- data/lib/rubygems/dependency_list.rb +1 -1
- data/lib/rubygems/deprecate.rb +16 -15
- data/lib/rubygems/doctor.rb +5 -5
- data/lib/rubygems/errors.rb +2 -6
- data/lib/rubygems/exceptions.rb +2 -1
- data/lib/rubygems/ext/builder.rb +15 -10
- data/lib/rubygems/ext/cargo_builder.rb +5 -5
- data/lib/rubygems/ext/ext_conf_builder.rb +1 -3
- data/lib/rubygems/gem_runner.rb +4 -4
- data/lib/rubygems/gemcutter_utilities/webauthn_listener/response.rb +3 -3
- data/lib/rubygems/gemcutter_utilities/webauthn_poller.rb +3 -3
- data/lib/rubygems/gemcutter_utilities.rb +18 -19
- data/lib/rubygems/install_update_options.rb +18 -19
- data/lib/rubygems/installer.rb +59 -33
- data/lib/rubygems/installer_uninstaller_utils.rb +0 -2
- data/lib/rubygems/local_remote_options.rb +7 -10
- data/lib/rubygems/name_tuple.rb +7 -9
- data/lib/rubygems/net/http.rb +3 -0
- data/lib/rubygems/net-http/.document +1 -0
- data/lib/rubygems/net-http/LICENSE.txt +22 -0
- data/lib/rubygems/net-http/lib/net/http/backward.rb +40 -0
- data/lib/rubygems/net-http/lib/net/http/exceptions.rb +34 -0
- data/lib/rubygems/net-http/lib/net/http/generic_request.rb +414 -0
- data/lib/rubygems/net-http/lib/net/http/header.rb +981 -0
- data/lib/rubygems/net-http/lib/net/http/proxy_delta.rb +17 -0
- data/lib/rubygems/net-http/lib/net/http/request.rb +88 -0
- data/lib/rubygems/net-http/lib/net/http/requests.rb +425 -0
- data/lib/rubygems/net-http/lib/net/http/response.rb +738 -0
- data/lib/rubygems/net-http/lib/net/http/responses.rb +1174 -0
- data/lib/rubygems/net-http/lib/net/http/status.rb +84 -0
- data/lib/rubygems/net-http/lib/net/http.rb +2496 -0
- data/lib/rubygems/net-http/lib/net/https.rb +23 -0
- data/lib/rubygems/net-protocol/.document +1 -0
- data/lib/rubygems/net-protocol/LICENSE.txt +22 -0
- data/lib/rubygems/net-protocol/lib/net/protocol.rb +544 -0
- data/lib/rubygems/optparse/lib/optparse.rb +39 -17
- data/lib/rubygems/package/old.rb +2 -2
- data/lib/rubygems/package/tar_header.rb +45 -39
- data/lib/rubygems/package/tar_reader/entry.rb +5 -4
- data/lib/rubygems/package/tar_reader.rb +5 -3
- data/lib/rubygems/package/tar_writer.rb +19 -17
- data/lib/rubygems/package.rb +27 -26
- data/lib/rubygems/package_task.rb +2 -2
- data/lib/rubygems/path_support.rb +9 -10
- data/lib/rubygems/platform.rb +60 -45
- data/lib/rubygems/query_utils.rb +7 -9
- data/lib/rubygems/remote_fetcher.rb +15 -15
- data/lib/rubygems/request/connection_pools.rb +3 -3
- data/lib/rubygems/request.rb +20 -17
- data/lib/rubygems/request_set/gem_dependency_api.rb +119 -122
- data/lib/rubygems/request_set/lockfile/parser.rb +9 -9
- data/lib/rubygems/request_set/lockfile/tokenizer.rb +20 -12
- data/lib/rubygems/request_set/lockfile.rb +6 -11
- data/lib/rubygems/request_set.rb +5 -5
- data/lib/rubygems/requirement.rb +7 -7
- data/lib/rubygems/resolv/.document +1 -0
- data/lib/rubygems/resolv/LICENSE.txt +22 -0
- data/lib/rubygems/resolv/lib/resolv.rb +3387 -0
- data/lib/rubygems/resolver/activation_request.rb +1 -3
- data/lib/rubygems/resolver/api_set/gem_parser.rb +7 -3
- data/lib/rubygems/resolver/best_set.rb +1 -1
- data/lib/rubygems/resolver/composed_set.rb +1 -1
- data/lib/rubygems/resolver/conflict.rb +4 -12
- data/lib/rubygems/resolver/index_set.rb +4 -4
- data/lib/rubygems/resolver/index_specification.rb +2 -2
- data/lib/rubygems/resolver/installer_set.rb +5 -6
- data/lib/rubygems/resolver/lock_set.rb +1 -1
- data/lib/rubygems/resolver/molinillo/.document +1 -0
- data/lib/rubygems/resolver.rb +3 -10
- data/lib/rubygems/s3_uri_signer.rb +6 -6
- data/lib/rubygems/safe_marshal/elements.rb +138 -0
- data/lib/rubygems/safe_marshal/reader.rb +306 -0
- data/lib/rubygems/safe_marshal/visitors/stream_printer.rb +31 -0
- data/lib/rubygems/safe_marshal/visitors/to_ruby.rb +385 -0
- data/lib/rubygems/safe_marshal/visitors/visitor.rb +74 -0
- data/lib/rubygems/safe_marshal.rb +74 -0
- data/lib/rubygems/safe_yaml.rb +5 -28
- data/lib/rubygems/security/policies.rb +36 -38
- data/lib/rubygems/security/policy.rb +7 -11
- data/lib/rubygems/security/signer.rb +1 -1
- data/lib/rubygems/security/trust_dir.rb +3 -3
- data/lib/rubygems/security.rb +8 -22
- data/lib/rubygems/source/git.rb +1 -3
- data/lib/rubygems/source/installed.rb +0 -2
- data/lib/rubygems/source/local.rb +5 -8
- data/lib/rubygems/source/lock.rb +1 -3
- data/lib/rubygems/source/specific_file.rb +0 -1
- data/lib/rubygems/source/vendor.rb +0 -2
- data/lib/rubygems/source.rb +12 -12
- data/lib/rubygems/source_list.rb +4 -4
- data/lib/rubygems/spec_fetcher.rb +29 -29
- data/lib/rubygems/specification.rb +125 -138
- data/lib/rubygems/specification_policy.rb +55 -25
- data/lib/rubygems/stub_specification.rb +4 -5
- data/lib/rubygems/text.rb +1 -2
- data/lib/rubygems/timeout/.document +1 -0
- data/lib/rubygems/timeout/LICENSE.txt +22 -0
- data/lib/rubygems/timeout/lib/timeout.rb +199 -0
- data/lib/rubygems/timeout.rb +3 -0
- data/lib/rubygems/tsort/lib/tsort.rb +3 -0
- data/lib/rubygems/uninstaller.rb +7 -9
- data/lib/rubygems/update_suggestion.rb +5 -18
- data/lib/rubygems/uri_formatter.rb +1 -1
- data/lib/rubygems/user_interaction.rb +15 -21
- data/lib/rubygems/util/licenses.rb +65 -35
- data/lib/rubygems/util/list.rb +3 -1
- data/lib/rubygems/util.rb +2 -4
- data/lib/rubygems/validator.rb +5 -3
- data/lib/rubygems/version.rb +34 -28
- data/lib/rubygems/version_option.rb +2 -5
- data/lib/rubygems/yaml_serializer.rb +3 -3
- data/lib/rubygems.rb +37 -37
- data/rubygems-update.gemspec +4 -4
- data/setup.rb +2 -2
- metadata +50 -225
- data/lib/rubygems/indexer.rb +0 -428
- data/lib/rubygems/mock_gem_ui.rb +0 -86
- data/test/rubygems/alternate_cert.pem +0 -19
- data/test/rubygems/alternate_cert_32.pem +0 -19
- data/test/rubygems/alternate_key.pem +0 -27
- data/test/rubygems/bad_rake.rb +0 -3
- data/test/rubygems/bundler_test_gem.rb +0 -424
- data/test/rubygems/ca_cert.pem +0 -77
- data/test/rubygems/child_cert.pem +0 -19
- data/test/rubygems/child_cert_32.pem +0 -19
- data/test/rubygems/child_key.pem +0 -27
- data/test/rubygems/client.pem +0 -107
- data/test/rubygems/data/excon-0.7.7.gemspec.rz +0 -0
- data/test/rubygems/data/gem-private_key.pem +0 -27
- data/test/rubygems/data/gem-public_cert.pem +0 -20
- data/test/rubygems/data/null-required-ruby-version.gemspec.rz +0 -0
- data/test/rubygems/data/null-required-rubygems-version.gemspec.rz +0 -0
- data/test/rubygems/data/pry-0.4.7.gemspec.rz +0 -0
- data/test/rubygems/encrypted_private_key.pem +0 -30
- data/test/rubygems/expired_cert.pem +0 -19
- data/test/rubygems/fake_certlib/openssl.rb +0 -9
- data/test/rubygems/foo/discover.rb +0 -1
- data/test/rubygems/future_cert.pem +0 -19
- data/test/rubygems/future_cert_32.pem +0 -19
- data/test/rubygems/good_rake.rb +0 -3
- data/test/rubygems/grandchild_cert.pem +0 -19
- data/test/rubygems/grandchild_cert_32.pem +0 -19
- data/test/rubygems/grandchild_key.pem +0 -27
- data/test/rubygems/helper.rb +0 -1649
- data/test/rubygems/installer_test_case.rb +0 -248
- data/test/rubygems/invalid_client.pem +0 -49
- data/test/rubygems/invalid_issuer_cert.pem +0 -20
- data/test/rubygems/invalid_issuer_cert_32.pem +0 -20
- data/test/rubygems/invalid_key.pem +0 -27
- data/test/rubygems/invalid_signer_cert.pem +0 -19
- data/test/rubygems/invalid_signer_cert_32.pem +0 -19
- data/test/rubygems/invalidchild_cert.pem +0 -19
- data/test/rubygems/invalidchild_cert_32.pem +0 -19
- data/test/rubygems/invalidchild_key.pem +0 -27
- data/test/rubygems/multifactor_auth_utilities.rb +0 -111
- data/test/rubygems/package/tar_test_case.rb +0 -175
- data/test/rubygems/packages/Bluebie-legs-0.6.2.gem +0 -0
- data/test/rubygems/packages/ascii_binder-0.1.10.1.gem +0 -0
- data/test/rubygems/packages/ill-formatted-platform-1.0.0.10.gem +0 -0
- data/test/rubygems/plugin/exception/rubygems_plugin.rb +0 -4
- data/test/rubygems/plugin/load/rubygems_plugin.rb +0 -5
- data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +0 -4
- data/test/rubygems/private3072_key.pem +0 -40
- data/test/rubygems/private_ec_key.pem +0 -9
- data/test/rubygems/private_key.pem +0 -27
- data/test/rubygems/public3072_cert.pem +0 -25
- data/test/rubygems/public_cert.pem +0 -20
- data/test/rubygems/public_cert_32.pem +0 -19
- data/test/rubygems/public_key.pem +0 -9
- data/test/rubygems/rubygems/commands/crash_command.rb +0 -5
- data/test/rubygems/rubygems_plugin.rb +0 -24
- data/test/rubygems/sff/discover.rb +0 -1
- data/test/rubygems/simple_gem.rb +0 -68
- data/test/rubygems/specifications/bar-0.0.2.gemspec +0 -9
- data/test/rubygems/specifications/foo-0.0.1-x86-mswin32.gemspec +0 -0
- data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +0 -14
- data/test/rubygems/ssl_cert.pem +0 -80
- data/test/rubygems/ssl_key.pem +0 -27
- data/test/rubygems/test_bundled_ca.rb +0 -61
- data/test/rubygems/test_config.rb +0 -28
- data/test/rubygems/test_deprecate.rb +0 -158
- data/test/rubygems/test_exit.rb +0 -17
- data/test/rubygems/test_gem.rb +0 -1799
- data/test/rubygems/test_gem_available_set.rb +0 -130
- data/test/rubygems/test_gem_bundler_version_finder.rb +0 -127
- data/test/rubygems/test_gem_command.rb +0 -403
- data/test/rubygems/test_gem_command_manager.rb +0 -400
- data/test/rubygems/test_gem_commands_build_command.rb +0 -739
- data/test/rubygems/test_gem_commands_cert_command.rb +0 -866
- data/test/rubygems/test_gem_commands_check_command.rb +0 -68
- data/test/rubygems/test_gem_commands_cleanup_command.rb +0 -292
- data/test/rubygems/test_gem_commands_contents_command.rb +0 -271
- data/test/rubygems/test_gem_commands_dependency_command.rb +0 -228
- data/test/rubygems/test_gem_commands_environment_command.rb +0 -169
- data/test/rubygems/test_gem_commands_exec_command.rb +0 -857
- data/test/rubygems/test_gem_commands_fetch_command.rb +0 -258
- data/test/rubygems/test_gem_commands_generate_index_command.rb +0 -81
- data/test/rubygems/test_gem_commands_help_command.rb +0 -94
- data/test/rubygems/test_gem_commands_info_command.rb +0 -70
- data/test/rubygems/test_gem_commands_install_command.rb +0 -1573
- data/test/rubygems/test_gem_commands_list_command.rb +0 -33
- data/test/rubygems/test_gem_commands_lock_command.rb +0 -67
- data/test/rubygems/test_gem_commands_mirror.rb +0 -20
- data/test/rubygems/test_gem_commands_open_command.rb +0 -101
- data/test/rubygems/test_gem_commands_outdated_command.rb +0 -50
- data/test/rubygems/test_gem_commands_owner_command.rb +0 -503
- data/test/rubygems/test_gem_commands_pristine_command.rb +0 -708
- data/test/rubygems/test_gem_commands_push_command.rb +0 -603
- data/test/rubygems/test_gem_commands_query_command.rb +0 -858
- data/test/rubygems/test_gem_commands_search_command.rb +0 -16
- data/test/rubygems/test_gem_commands_server_command.rb +0 -20
- data/test/rubygems/test_gem_commands_setup_command.rb +0 -474
- data/test/rubygems/test_gem_commands_signin_command.rb +0 -259
- data/test/rubygems/test_gem_commands_signout_command.rb +0 -30
- data/test/rubygems/test_gem_commands_sources_command.rb +0 -534
- data/test/rubygems/test_gem_commands_specification_command.rb +0 -277
- data/test/rubygems/test_gem_commands_stale_command.rb +0 -43
- data/test/rubygems/test_gem_commands_uninstall_command.rb +0 -542
- data/test/rubygems/test_gem_commands_unpack_command.rb +0 -224
- data/test/rubygems/test_gem_commands_update_command.rb +0 -836
- data/test/rubygems/test_gem_commands_which_command.rb +0 -85
- data/test/rubygems/test_gem_commands_yank_command.rb +0 -299
- data/test/rubygems/test_gem_config_file.rb +0 -551
- data/test/rubygems/test_gem_dependency.rb +0 -398
- data/test/rubygems/test_gem_dependency_installer.rb +0 -1190
- data/test/rubygems/test_gem_dependency_list.rb +0 -265
- data/test/rubygems/test_gem_dependency_resolution_error.rb +0 -27
- data/test/rubygems/test_gem_doctor.rb +0 -195
- data/test/rubygems/test_gem_ext_builder.rb +0 -337
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/.gitignore +0 -1
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +0 -10
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.lock +0 -249
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/Cargo.toml +0 -10
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/ext/custom_name_lib/src/lib.rs +0 -27
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/lib/custom_name.rb +0 -3
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/.gitignore +0 -1
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +0 -249
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.toml +0 -10
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/rust_ruby_example.gemspec +0 -10
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/src/lib.rs +0 -51
- data/test/rubygems/test_gem_ext_cargo_builder.rb +0 -167
- data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +0 -34
- data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +0 -60
- data/test/rubygems/test_gem_ext_cmake_builder.rb +0 -84
- data/test/rubygems/test_gem_ext_configure_builder.rb +0 -80
- data/test/rubygems/test_gem_ext_ext_conf_builder.rb +0 -229
- data/test/rubygems/test_gem_ext_rake_builder.rb +0 -113
- data/test/rubygems/test_gem_gem_runner.rb +0 -119
- data/test/rubygems/test_gem_gemcutter_utilities.rb +0 -361
- data/test/rubygems/test_gem_impossible_dependencies_error.rb +0 -60
- data/test/rubygems/test_gem_indexer.rb +0 -381
- data/test/rubygems/test_gem_install_update_options.rb +0 -208
- data/test/rubygems/test_gem_installer.rb +0 -2512
- data/test/rubygems/test_gem_local_remote_options.rb +0 -133
- data/test/rubygems/test_gem_name_tuple.rb +0 -43
- data/test/rubygems/test_gem_package.rb +0 -1306
- data/test/rubygems/test_gem_package_old.rb +0 -91
- data/test/rubygems/test_gem_package_tar_header.rb +0 -226
- data/test/rubygems/test_gem_package_tar_reader.rb +0 -150
- data/test/rubygems/test_gem_package_tar_reader_entry.rb +0 -350
- data/test/rubygems/test_gem_package_tar_writer.rb +0 -331
- data/test/rubygems/test_gem_package_task.rb +0 -118
- data/test/rubygems/test_gem_path_support.rb +0 -139
- data/test/rubygems/test_gem_platform.rb +0 -497
- data/test/rubygems/test_gem_rdoc.rb +0 -137
- data/test/rubygems/test_gem_remote_fetcher.rb +0 -1227
- data/test/rubygems/test_gem_request.rb +0 -547
- data/test/rubygems/test_gem_request_connection_pools.rb +0 -152
- data/test/rubygems/test_gem_request_set.rb +0 -672
- data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +0 -853
- data/test/rubygems/test_gem_request_set_lockfile.rb +0 -469
- data/test/rubygems/test_gem_request_set_lockfile_parser.rb +0 -544
- data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +0 -307
- data/test/rubygems/test_gem_requirement.rb +0 -505
- data/test/rubygems/test_gem_resolver.rb +0 -859
- data/test/rubygems/test_gem_resolver_activation_request.rb +0 -43
- data/test/rubygems/test_gem_resolver_api_set.rb +0 -210
- data/test/rubygems/test_gem_resolver_api_specification.rb +0 -167
- data/test/rubygems/test_gem_resolver_best_set.rb +0 -159
- data/test/rubygems/test_gem_resolver_composed_set.rb +0 -44
- data/test/rubygems/test_gem_resolver_conflict.rb +0 -82
- data/test/rubygems/test_gem_resolver_dependency_request.rb +0 -83
- data/test/rubygems/test_gem_resolver_git_set.rb +0 -188
- data/test/rubygems/test_gem_resolver_git_specification.rb +0 -114
- data/test/rubygems/test_gem_resolver_index_set.rb +0 -88
- data/test/rubygems/test_gem_resolver_index_specification.rb +0 -93
- data/test/rubygems/test_gem_resolver_installed_specification.rb +0 -47
- data/test/rubygems/test_gem_resolver_installer_set.rb +0 -320
- data/test/rubygems/test_gem_resolver_local_specification.rb +0 -44
- data/test/rubygems/test_gem_resolver_lock_set.rb +0 -62
- data/test/rubygems/test_gem_resolver_lock_specification.rb +0 -98
- data/test/rubygems/test_gem_resolver_requirement_list.rb +0 -19
- data/test/rubygems/test_gem_resolver_specification.rb +0 -63
- data/test/rubygems/test_gem_resolver_vendor_set.rb +0 -82
- data/test/rubygems/test_gem_resolver_vendor_specification.rb +0 -82
- data/test/rubygems/test_gem_security.rb +0 -341
- data/test/rubygems/test_gem_security_policy.rb +0 -535
- data/test/rubygems/test_gem_security_signer.rb +0 -218
- data/test/rubygems/test_gem_security_trust_dir.rb +0 -99
- data/test/rubygems/test_gem_silent_ui.rb +0 -123
- data/test/rubygems/test_gem_source.rb +0 -254
- data/test/rubygems/test_gem_source_fetch_problem.rb +0 -37
- data/test/rubygems/test_gem_source_git.rb +0 -310
- data/test/rubygems/test_gem_source_installed.rb +0 -35
- data/test/rubygems/test_gem_source_list.rb +0 -119
- data/test/rubygems/test_gem_source_local.rb +0 -107
- data/test/rubygems/test_gem_source_lock.rb +0 -113
- data/test/rubygems/test_gem_source_specific_file.rb +0 -76
- data/test/rubygems/test_gem_source_subpath_problem.rb +0 -50
- data/test/rubygems/test_gem_source_vendor.rb +0 -30
- data/test/rubygems/test_gem_spec_fetcher.rb +0 -338
- data/test/rubygems/test_gem_specification.rb +0 -3856
- data/test/rubygems/test_gem_stream_ui.rb +0 -255
- data/test/rubygems/test_gem_stub_specification.rb +0 -278
- data/test/rubygems/test_gem_text.rb +0 -103
- data/test/rubygems/test_gem_uninstaller.rb +0 -675
- data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +0 -31
- data/test/rubygems/test_gem_update_suggestion.rb +0 -209
- data/test/rubygems/test_gem_uri.rb +0 -41
- data/test/rubygems/test_gem_uri_formatter.rb +0 -27
- data/test/rubygems/test_gem_util.rb +0 -91
- data/test/rubygems/test_gem_validator.rb +0 -42
- data/test/rubygems/test_gem_version.rb +0 -305
- data/test/rubygems/test_gem_version_option.rb +0 -165
- data/test/rubygems/test_kernel.rb +0 -124
- data/test/rubygems/test_project_sanity.rb +0 -49
- data/test/rubygems/test_remote_fetch_error.rb +0 -20
- data/test/rubygems/test_require.rb +0 -732
- data/test/rubygems/test_rubygems.rb +0 -76
- data/test/rubygems/test_webauthn_listener.rb +0 -143
- data/test/rubygems/test_webauthn_listener_response.rb +0 -93
- data/test/rubygems/test_webauthn_poller.rb +0 -124
- data/test/rubygems/utilities.rb +0 -436
- data/test/rubygems/wrong_key_cert.pem +0 -19
- data/test/rubygems/wrong_key_cert_32.pem +0 -19
- data/test/test_changelog_generator.rb +0 -17
@@ -1,9 +1,73 @@
|
|
1
|
-
# frozen_string_literal:
|
1
|
+
# frozen_string_literal: true
|
2
2
|
module Bundler::URI
|
3
3
|
class RFC3986_Parser # :nodoc:
|
4
4
|
# Bundler::URI defined in RFC3986
|
5
|
-
|
6
|
-
|
5
|
+
HOST = %r[
|
6
|
+
(?<IP-literal>\[(?:
|
7
|
+
(?<IPv6address>
|
8
|
+
(?:\h{1,4}:){6}
|
9
|
+
(?<ls32>\h{1,4}:\h{1,4}
|
10
|
+
| (?<IPv4address>(?<dec-octet>[1-9]\d|1\d{2}|2[0-4]\d|25[0-5]|\d)
|
11
|
+
\.\g<dec-octet>\.\g<dec-octet>\.\g<dec-octet>)
|
12
|
+
)
|
13
|
+
| ::(?:\h{1,4}:){5}\g<ls32>
|
14
|
+
| \h{1,4}?::(?:\h{1,4}:){4}\g<ls32>
|
15
|
+
| (?:(?:\h{1,4}:)?\h{1,4})?::(?:\h{1,4}:){3}\g<ls32>
|
16
|
+
| (?:(?:\h{1,4}:){,2}\h{1,4})?::(?:\h{1,4}:){2}\g<ls32>
|
17
|
+
| (?:(?:\h{1,4}:){,3}\h{1,4})?::\h{1,4}:\g<ls32>
|
18
|
+
| (?:(?:\h{1,4}:){,4}\h{1,4})?::\g<ls32>
|
19
|
+
| (?:(?:\h{1,4}:){,5}\h{1,4})?::\h{1,4}
|
20
|
+
| (?:(?:\h{1,4}:){,6}\h{1,4})?::
|
21
|
+
)
|
22
|
+
| (?<IPvFuture>v\h++\.[!$&-.0-9:;=A-Z_a-z~]++)
|
23
|
+
)\])
|
24
|
+
| \g<IPv4address>
|
25
|
+
| (?<reg-name>(?:%\h\h|[!$&-.0-9;=A-Z_a-z~])*+)
|
26
|
+
]x
|
27
|
+
|
28
|
+
USERINFO = /(?:%\h\h|[!$&-.0-9:;=A-Z_a-z~])*+/
|
29
|
+
|
30
|
+
SCHEME = %r[[A-Za-z][+\-.0-9A-Za-z]*+].source
|
31
|
+
SEG = %r[(?:%\h\h|[!$&-.0-9:;=@A-Z_a-z~/])].source
|
32
|
+
SEG_NC = %r[(?:%\h\h|[!$&-.0-9;=@A-Z_a-z~])].source
|
33
|
+
FRAGMENT = %r[(?:%\h\h|[!$&-.0-9:;=@A-Z_a-z~/?])*+].source
|
34
|
+
|
35
|
+
RFC3986_URI = %r[\A
|
36
|
+
(?<seg>#{SEG}){0}
|
37
|
+
(?<Bundler::URI>
|
38
|
+
(?<scheme>#{SCHEME}):
|
39
|
+
(?<hier-part>//
|
40
|
+
(?<authority>
|
41
|
+
(?:(?<userinfo>#{USERINFO.source})@)?
|
42
|
+
(?<host>#{HOST.source.delete(" \n")})
|
43
|
+
(?::(?<port>\d*+))?
|
44
|
+
)
|
45
|
+
(?<path-abempty>(?:/\g<seg>*+)?)
|
46
|
+
| (?<path-absolute>/((?!/)\g<seg>++)?)
|
47
|
+
| (?<path-rootless>(?!/)\g<seg>++)
|
48
|
+
| (?<path-empty>)
|
49
|
+
)
|
50
|
+
(?:\?(?<query>[^\#]*+))?
|
51
|
+
(?:\#(?<fragment>#{FRAGMENT}))?
|
52
|
+
)\z]x
|
53
|
+
|
54
|
+
RFC3986_relative_ref = %r[\A
|
55
|
+
(?<seg>#{SEG}){0}
|
56
|
+
(?<relative-ref>
|
57
|
+
(?<relative-part>//
|
58
|
+
(?<authority>
|
59
|
+
(?:(?<userinfo>#{USERINFO.source})@)?
|
60
|
+
(?<host>#{HOST.source.delete(" \n")}(?<!/))?
|
61
|
+
(?::(?<port>\d*+))?
|
62
|
+
)
|
63
|
+
(?<path-abempty>(?:/\g<seg>*+)?)
|
64
|
+
| (?<path-absolute>/\g<seg>*+)
|
65
|
+
| (?<path-noscheme>#{SEG_NC}++(?:/\g<seg>*+)?)
|
66
|
+
| (?<path-empty>)
|
67
|
+
)
|
68
|
+
(?:\?(?<query>[^#]*+))?
|
69
|
+
(?:\#(?<fragment>#{FRAGMENT}))?
|
70
|
+
)\z]x
|
7
71
|
attr_reader :regexp
|
8
72
|
|
9
73
|
def initialize
|
@@ -19,9 +83,9 @@ module Bundler::URI
|
|
19
83
|
uri.ascii_only? or
|
20
84
|
raise InvalidURIError, "Bundler::URI must be ascii only #{uri.dump}"
|
21
85
|
if m = RFC3986_URI.match(uri)
|
22
|
-
query = m["query"
|
23
|
-
scheme = m["scheme"
|
24
|
-
opaque = m["path-rootless"
|
86
|
+
query = m["query"]
|
87
|
+
scheme = m["scheme"]
|
88
|
+
opaque = m["path-rootless"]
|
25
89
|
if opaque
|
26
90
|
opaque << "?#{query}" if query
|
27
91
|
[ scheme,
|
@@ -32,35 +96,35 @@ module Bundler::URI
|
|
32
96
|
nil, # path
|
33
97
|
opaque,
|
34
98
|
nil, # query
|
35
|
-
m["fragment"
|
99
|
+
m["fragment"]
|
36
100
|
]
|
37
101
|
else # normal
|
38
102
|
[ scheme,
|
39
|
-
m["userinfo"
|
40
|
-
m["host"
|
41
|
-
m["port"
|
103
|
+
m["userinfo"],
|
104
|
+
m["host"],
|
105
|
+
m["port"],
|
42
106
|
nil, # registry
|
43
|
-
(m["path-abempty"
|
44
|
-
m["path-absolute"
|
45
|
-
m["path-empty"
|
107
|
+
(m["path-abempty"] ||
|
108
|
+
m["path-absolute"] ||
|
109
|
+
m["path-empty"]),
|
46
110
|
nil, # opaque
|
47
111
|
query,
|
48
|
-
m["fragment"
|
112
|
+
m["fragment"]
|
49
113
|
]
|
50
114
|
end
|
51
115
|
elsif m = RFC3986_relative_ref.match(uri)
|
52
116
|
[ nil, # scheme
|
53
|
-
m["userinfo"
|
54
|
-
m["host"
|
55
|
-
m["port"
|
117
|
+
m["userinfo"],
|
118
|
+
m["host"],
|
119
|
+
m["port"],
|
56
120
|
nil, # registry,
|
57
|
-
(m["path-abempty"
|
58
|
-
m["path-absolute"
|
59
|
-
m["path-noscheme"
|
60
|
-
m["path-empty"
|
121
|
+
(m["path-abempty"] ||
|
122
|
+
m["path-absolute"] ||
|
123
|
+
m["path-noscheme"] ||
|
124
|
+
m["path-empty"]),
|
61
125
|
nil, # opaque
|
62
|
-
m["query"
|
63
|
-
m["fragment"
|
126
|
+
m["query"],
|
127
|
+
m["fragment"]
|
64
128
|
]
|
65
129
|
else
|
66
130
|
raise InvalidURIError, "bad Bundler::URI(is not Bundler::URI?): #{uri.inspect}"
|
@@ -92,14 +156,14 @@ module Bundler::URI
|
|
92
156
|
|
93
157
|
def default_regexp # :nodoc:
|
94
158
|
{
|
95
|
-
SCHEME:
|
96
|
-
USERINFO:
|
97
|
-
HOST:
|
98
|
-
ABS_PATH:
|
99
|
-
REL_PATH:
|
100
|
-
QUERY:
|
101
|
-
FRAGMENT:
|
102
|
-
OPAQUE:
|
159
|
+
SCHEME: %r[\A#{SCHEME}\z]o,
|
160
|
+
USERINFO: %r[\A#{USERINFO}\z]o,
|
161
|
+
HOST: %r[\A#{HOST}\z]o,
|
162
|
+
ABS_PATH: %r[\A/#{SEG}*+\z]o,
|
163
|
+
REL_PATH: %r[\A(?!/)#{SEG}++\z]o,
|
164
|
+
QUERY: %r[\A(?:%\h\h|[!$&-.0-9:;=@A-Z_a-z~/?])*+\z],
|
165
|
+
FRAGMENT: %r[\A#{FRAGMENT}\z]o,
|
166
|
+
OPAQUE: %r[\A(?:[^/].*)?\z],
|
103
167
|
PORT: /\A[\x09\x0a\x0c\x0d ]*+\d*[\x09\x0a\x0c\x0d ]*\z/,
|
104
168
|
}
|
105
169
|
end
|
data/bundler/lib/bundler/vlad.rb
CHANGED
@@ -13,5 +13,5 @@ require_relative "deployment"
|
|
13
13
|
include Rake::DSL if defined? Rake::DSL
|
14
14
|
|
15
15
|
namespace :vlad do
|
16
|
-
Bundler::Deployment.define_task(Rake::RemoteTask, :remote_task, :
|
16
|
+
Bundler::Deployment.define_task(Rake::RemoteTask, :remote_task, roles: :app)
|
17
17
|
end
|
@@ -36,7 +36,7 @@ module Bundler
|
|
36
36
|
(.*) # value
|
37
37
|
\1 # matching closing quote
|
38
38
|
$
|
39
|
-
/xo
|
39
|
+
/xo
|
40
40
|
|
41
41
|
HASH_REGEX = /
|
42
42
|
^
|
@@ -48,14 +48,14 @@ module Bundler
|
|
48
48
|
(.*) # value
|
49
49
|
\3 # matching closing quote
|
50
50
|
$
|
51
|
-
/xo
|
51
|
+
/xo
|
52
52
|
|
53
53
|
def load(str)
|
54
54
|
res = {}
|
55
55
|
stack = [res]
|
56
56
|
last_hash = nil
|
57
57
|
last_empty_key = nil
|
58
|
-
str.split(/\r?\n/)
|
58
|
+
str.split(/\r?\n/) do |line|
|
59
59
|
if match = HASH_REGEX.match(line)
|
60
60
|
indent, key, quote, val = match.captures
|
61
61
|
convert_to_backward_compatible_key!(key)
|
data/bundler/lib/bundler.rb
CHANGED
@@ -17,7 +17,7 @@ require_relative "bundler/build_metadata"
|
|
17
17
|
# Bundler provides a consistent environment for Ruby projects by
|
18
18
|
# tracking and installing the exact gems and versions that are needed.
|
19
19
|
#
|
20
|
-
#
|
20
|
+
# Bundler is a part of Ruby's standard library.
|
21
21
|
#
|
22
22
|
# Bundler is used by creating _gemfiles_ listing all the project dependencies
|
23
23
|
# and (optionally) their versions and then using
|
@@ -39,6 +39,8 @@ module Bundler
|
|
39
39
|
environment_preserver.replace_with_backup
|
40
40
|
SUDO_MUTEX = Thread::Mutex.new
|
41
41
|
|
42
|
+
autoload :Checksum, File.expand_path("bundler/checksum", __dir__)
|
43
|
+
autoload :CIDetector, File.expand_path("bundler/ci_detector", __dir__)
|
42
44
|
autoload :Definition, File.expand_path("bundler/definition", __dir__)
|
43
45
|
autoload :Dependency, File.expand_path("bundler/dependency", __dir__)
|
44
46
|
autoload :Deprecate, File.expand_path("bundler/deprecate", __dir__)
|
@@ -98,9 +100,7 @@ module Bundler
|
|
98
100
|
end
|
99
101
|
|
100
102
|
def create_bundle_path
|
101
|
-
|
102
|
-
mkdir_p(p)
|
103
|
-
end unless bundle_path.exist?
|
103
|
+
mkdir_p(bundle_path) unless bundle_path.exist?
|
104
104
|
|
105
105
|
@bundle_path = bundle_path.realpath
|
106
106
|
rescue Errno::EEXIST
|
@@ -117,7 +117,7 @@ module Bundler
|
|
117
117
|
@bin_path ||= begin
|
118
118
|
path = settings[:bin] || "bin"
|
119
119
|
path = Pathname.new(path).expand_path(root).expand_path
|
120
|
-
|
120
|
+
mkdir_p(path)
|
121
121
|
path
|
122
122
|
end
|
123
123
|
end
|
@@ -192,7 +192,7 @@ module Bundler
|
|
192
192
|
end
|
193
193
|
|
194
194
|
def environment
|
195
|
-
SharedHelpers.major_deprecation 2, "Bundler.environment has been removed in favor of Bundler.load", :
|
195
|
+
SharedHelpers.major_deprecation 2, "Bundler.environment has been removed in favor of Bundler.load", print_caller_location: true
|
196
196
|
load
|
197
197
|
end
|
198
198
|
|
@@ -345,13 +345,13 @@ module Bundler
|
|
345
345
|
|
346
346
|
# @deprecated Use `unbundled_env` instead
|
347
347
|
def clean_env
|
348
|
-
|
349
|
-
2,
|
348
|
+
message =
|
350
349
|
"`Bundler.clean_env` has been deprecated in favor of `Bundler.unbundled_env`. " \
|
351
|
-
"If you instead want the environment before bundler was originally loaded, use `Bundler.original_env`"
|
352
|
-
|
353
|
-
|
354
|
-
|
350
|
+
"If you instead want the environment before bundler was originally loaded, use `Bundler.original_env`"
|
351
|
+
removed_message =
|
352
|
+
"`Bundler.clean_env` has been removed in favor of `Bundler.unbundled_env`. " \
|
353
|
+
"If you instead want the environment before bundler was originally loaded, use `Bundler.original_env`"
|
354
|
+
Bundler::SharedHelpers.major_deprecation(2, message, removed_message: removed_message, print_caller_location: true)
|
355
355
|
unbundled_env
|
356
356
|
end
|
357
357
|
|
@@ -388,13 +388,13 @@ module Bundler
|
|
388
388
|
|
389
389
|
# @deprecated Use `with_unbundled_env` instead
|
390
390
|
def with_clean_env
|
391
|
-
|
392
|
-
2,
|
391
|
+
message =
|
393
392
|
"`Bundler.with_clean_env` has been deprecated in favor of `Bundler.with_unbundled_env`. " \
|
394
|
-
"If you instead want the environment before bundler was originally loaded, use `Bundler.with_original_env`"
|
395
|
-
|
396
|
-
|
397
|
-
|
393
|
+
"If you instead want the environment before bundler was originally loaded, use `Bundler.with_original_env`"
|
394
|
+
removed_message =
|
395
|
+
"`Bundler.with_clean_env` has been removed in favor of `Bundler.with_unbundled_env`. " \
|
396
|
+
"If you instead want the environment before bundler was originally loaded, use `Bundler.with_original_env`"
|
397
|
+
Bundler::SharedHelpers.major_deprecation(2, message, removed_message: removed_message, print_caller_location: true)
|
398
398
|
with_env(unbundled_env) { yield }
|
399
399
|
end
|
400
400
|
|
@@ -410,13 +410,13 @@ module Bundler
|
|
410
410
|
|
411
411
|
# @deprecated Use `unbundled_system` instead
|
412
412
|
def clean_system(*args)
|
413
|
-
|
414
|
-
2,
|
413
|
+
message =
|
415
414
|
"`Bundler.clean_system` has been deprecated in favor of `Bundler.unbundled_system`. " \
|
416
|
-
"If you instead want to run the command in the environment before bundler was originally loaded, use `Bundler.original_system`"
|
417
|
-
|
418
|
-
|
419
|
-
|
415
|
+
"If you instead want to run the command in the environment before bundler was originally loaded, use `Bundler.original_system`"
|
416
|
+
removed_message =
|
417
|
+
"`Bundler.clean_system` has been removed in favor of `Bundler.unbundled_system`. " \
|
418
|
+
"If you instead want to run the command in the environment before bundler was originally loaded, use `Bundler.original_system`"
|
419
|
+
Bundler::SharedHelpers.major_deprecation(2, message, removed_message: removed_message, print_caller_location: true)
|
420
420
|
with_env(unbundled_env) { Kernel.system(*args) }
|
421
421
|
end
|
422
422
|
|
@@ -432,13 +432,13 @@ module Bundler
|
|
432
432
|
|
433
433
|
# @deprecated Use `unbundled_exec` instead
|
434
434
|
def clean_exec(*args)
|
435
|
-
|
436
|
-
2,
|
435
|
+
message =
|
437
436
|
"`Bundler.clean_exec` has been deprecated in favor of `Bundler.unbundled_exec`. " \
|
438
|
-
"If you instead want to exec to a command in the environment before bundler was originally loaded, use `Bundler.original_exec`"
|
439
|
-
|
440
|
-
|
441
|
-
|
437
|
+
"If you instead want to exec to a command in the environment before bundler was originally loaded, use `Bundler.original_exec`"
|
438
|
+
removed_message =
|
439
|
+
"`Bundler.clean_exec` has been removed in favor of `Bundler.unbundled_exec`. " \
|
440
|
+
"If you instead want to exec to a command in the environment before bundler was originally loaded, use `Bundler.original_exec`"
|
441
|
+
Bundler::SharedHelpers.major_deprecation(2, message, removed_message: removed_message, print_caller_location: true)
|
442
442
|
with_env(unbundled_env) { Kernel.exec(*args) }
|
443
443
|
end
|
444
444
|
|
@@ -481,7 +481,7 @@ module Bundler
|
|
481
481
|
configured_bundle_path.use_system_gems?
|
482
482
|
end
|
483
483
|
|
484
|
-
def mkdir_p(path
|
484
|
+
def mkdir_p(path)
|
485
485
|
SharedHelpers.filesystem_access(path, :write) do |p|
|
486
486
|
FileUtils.mkdir_p(p)
|
487
487
|
end
|
@@ -507,7 +507,16 @@ module Bundler
|
|
507
507
|
end
|
508
508
|
|
509
509
|
def safe_load_marshal(data)
|
510
|
-
|
510
|
+
if Gem.respond_to?(:load_safe_marshal)
|
511
|
+
Gem.load_safe_marshal
|
512
|
+
begin
|
513
|
+
Gem::SafeMarshal.safe_load(data)
|
514
|
+
rescue Gem::SafeMarshal::Reader::Error, Gem::SafeMarshal::Visitors::ToRuby::Error => e
|
515
|
+
raise MarshalError, "#{e.class}: #{e.message}"
|
516
|
+
end
|
517
|
+
else
|
518
|
+
load_marshal(data, marshal_proc: SafeMarshal.proc)
|
519
|
+
end
|
511
520
|
end
|
512
521
|
|
513
522
|
def load_gemspec(file, validate = false)
|
@@ -70,7 +70,7 @@ class Gem::AvailableSet
|
|
70
70
|
end
|
71
71
|
|
72
72
|
def all_specs
|
73
|
-
@set.map
|
73
|
+
@set.map(&:spec)
|
74
74
|
end
|
75
75
|
|
76
76
|
def match_platform!
|
@@ -105,14 +105,14 @@ class Gem::AvailableSet
|
|
105
105
|
|
106
106
|
def to_request_set(development = :none)
|
107
107
|
request_set = Gem::RequestSet.new
|
108
|
-
request_set.development =
|
108
|
+
request_set.development = development == :all
|
109
109
|
|
110
110
|
each_spec do |spec|
|
111
111
|
request_set.always_install << spec
|
112
112
|
|
113
113
|
request_set.gem spec.name, spec.version
|
114
114
|
request_set.import spec.development_dependencies if
|
115
|
-
|
115
|
+
development == :shallow
|
116
116
|
end
|
117
117
|
|
118
118
|
request_set
|
@@ -147,7 +147,7 @@ class Gem::AvailableSet
|
|
147
147
|
end
|
148
148
|
|
149
149
|
def remove_installed!(dep)
|
150
|
-
@set.reject! do |
|
150
|
+
@set.reject! do |_t|
|
151
151
|
# already locally installed
|
152
152
|
Gem::Specification.any? do |installed_spec|
|
153
153
|
dep.name == installed_spec.name &&
|
@@ -76,8 +76,8 @@ class Gem::BasicSpecification
|
|
76
76
|
elsif missing_extensions?
|
77
77
|
@ignored = true
|
78
78
|
|
79
|
-
if Gem::Platform::RUBY
|
80
|
-
warn "Ignoring #{full_name} because its extensions are not built. "
|
79
|
+
if platform == Gem::Platform::RUBY || Gem::Platform.local === platform
|
80
|
+
warn "Ignoring #{full_name} because its extensions are not built. " \
|
81
81
|
"Try: gem pristine #{name} --version #{version}"
|
82
82
|
end
|
83
83
|
|
@@ -96,7 +96,7 @@ class Gem::BasicSpecification
|
|
96
96
|
# Returns full path to the directory where gem's extensions are installed.
|
97
97
|
|
98
98
|
def extension_dir
|
99
|
-
@extension_dir ||= File.expand_path(File.join(extensions_dir, full_name))
|
99
|
+
@extension_dir ||= File.expand_path(File.join(extensions_dir, full_name))
|
100
100
|
end
|
101
101
|
|
102
102
|
##
|
@@ -110,9 +110,7 @@ class Gem::BasicSpecification
|
|
110
110
|
|
111
111
|
def find_full_gem_path # :nodoc:
|
112
112
|
# TODO: also, shouldn't it default to full_name if it hasn't been written?
|
113
|
-
|
114
|
-
path.tap(&Gem::UNTAINT)
|
115
|
-
path
|
113
|
+
File.expand_path File.join(gems_dir, full_name)
|
116
114
|
end
|
117
115
|
|
118
116
|
private :find_full_gem_path
|
@@ -133,9 +131,9 @@ class Gem::BasicSpecification
|
|
133
131
|
|
134
132
|
def full_name
|
135
133
|
if platform == Gem::Platform::RUBY || platform.nil?
|
136
|
-
|
134
|
+
"#{name}-#{version}"
|
137
135
|
else
|
138
|
-
|
136
|
+
"#{name}-#{version}-#{platform}"
|
139
137
|
end
|
140
138
|
end
|
141
139
|
|
@@ -145,15 +143,15 @@ class Gem::BasicSpecification
|
|
145
143
|
|
146
144
|
def full_require_paths
|
147
145
|
@full_require_paths ||=
|
148
|
-
|
149
|
-
|
150
|
-
|
151
|
-
|
146
|
+
begin
|
147
|
+
full_paths = raw_require_paths.map do |path|
|
148
|
+
File.join full_gem_path, path
|
149
|
+
end
|
152
150
|
|
153
|
-
|
151
|
+
full_paths << extension_dir if have_extensions?
|
154
152
|
|
155
|
-
|
156
|
-
|
153
|
+
full_paths
|
154
|
+
end
|
157
155
|
end
|
158
156
|
|
159
157
|
##
|
@@ -161,7 +159,7 @@ class Gem::BasicSpecification
|
|
161
159
|
|
162
160
|
def datadir
|
163
161
|
# TODO: drop the extra ", gem_name" which is uselessly redundant
|
164
|
-
File.expand_path(File.join(gems_dir, full_name, "data", name))
|
162
|
+
File.expand_path(File.join(gems_dir, full_name, "data", name))
|
165
163
|
end
|
166
164
|
|
167
165
|
##
|
@@ -171,18 +169,14 @@ class Gem::BasicSpecification
|
|
171
169
|
def to_fullpath(path)
|
172
170
|
if activated?
|
173
171
|
@paths_map ||= {}
|
174
|
-
|
175
|
-
|
176
|
-
|
177
|
-
|
178
|
-
|
179
|
-
|
180
|
-
File.file?(fullpath = "#{dir}/#{path}#{suf}")
|
181
|
-
end
|
182
|
-
end ? fullpath : nil
|
172
|
+
Gem.suffixes.each do |suf|
|
173
|
+
full_require_paths.each do |dir|
|
174
|
+
fullpath = "#{dir}/#{path}#{suf}"
|
175
|
+
next unless File.file?(fullpath)
|
176
|
+
@paths_map[path] ||= fullpath
|
177
|
+
end
|
183
178
|
end
|
184
|
-
|
185
|
-
nil
|
179
|
+
@paths_map[path]
|
186
180
|
end
|
187
181
|
end
|
188
182
|
|
@@ -272,9 +266,9 @@ class Gem::BasicSpecification
|
|
272
266
|
# Return all files in this gem that match for +glob+.
|
273
267
|
|
274
268
|
def matches_for_glob(glob) # TODO: rename?
|
275
|
-
glob = File.join(
|
269
|
+
glob = File.join(lib_dirs_glob, glob)
|
276
270
|
|
277
|
-
Dir[glob]
|
271
|
+
Dir[glob]
|
278
272
|
end
|
279
273
|
|
280
274
|
##
|
@@ -289,17 +283,17 @@ class Gem::BasicSpecification
|
|
289
283
|
# for this spec.
|
290
284
|
|
291
285
|
def lib_dirs_glob
|
292
|
-
dirs = if
|
293
|
-
if
|
294
|
-
"{#{
|
286
|
+
dirs = if raw_require_paths
|
287
|
+
if raw_require_paths.size > 1
|
288
|
+
"{#{raw_require_paths.join(",")}}"
|
295
289
|
else
|
296
|
-
|
290
|
+
raw_require_paths.first
|
297
291
|
end
|
298
292
|
else
|
299
293
|
"lib" # default value for require_paths for bundler/inline
|
300
294
|
end
|
301
295
|
|
302
|
-
"#{
|
296
|
+
"#{full_gem_path}/#{dirs}"
|
303
297
|
end
|
304
298
|
|
305
299
|
##
|
@@ -324,15 +318,19 @@ class Gem::BasicSpecification
|
|
324
318
|
raise NotImplementedError
|
325
319
|
end
|
326
320
|
|
327
|
-
def this
|
321
|
+
def this
|
322
|
+
self
|
323
|
+
end
|
328
324
|
|
329
325
|
private
|
330
326
|
|
331
|
-
def have_extensions
|
327
|
+
def have_extensions?
|
328
|
+
!extensions.empty?
|
329
|
+
end
|
332
330
|
|
333
331
|
def have_file?(file, suffixes)
|
334
332
|
return true if raw_require_paths.any? do |path|
|
335
|
-
base = File.join(gems_dir, full_name, path
|
333
|
+
base = File.join(gems_dir, full_name, path, file)
|
336
334
|
suffixes.any? {|suf| File.file? base + suf }
|
337
335
|
end
|
338
336
|
|
@@ -52,7 +52,7 @@ module Gem::BundlerVersionFinder
|
|
52
52
|
unless gemfile
|
53
53
|
begin
|
54
54
|
Gem::Util.traverse_parents(Dir.pwd) do |directory|
|
55
|
-
next unless gemfile = Gem::GEM_DEP_FILES.find {|f| File.file?(f
|
55
|
+
next unless gemfile = Gem::GEM_DEP_FILES.find {|f| File.file?(f) }
|
56
56
|
|
57
57
|
gemfile = File.join directory, gemfile
|
58
58
|
break
|
@@ -65,9 +65,9 @@ module Gem::BundlerVersionFinder
|
|
65
65
|
return unless gemfile
|
66
66
|
|
67
67
|
lockfile = case gemfile
|
68
|
-
|
69
|
-
|
70
|
-
end
|
68
|
+
when "gems.rb" then "gems.locked"
|
69
|
+
else "#{gemfile}.lock"
|
70
|
+
end
|
71
71
|
|
72
72
|
return unless File.file?(lockfile)
|
73
73
|
|