rubygems-update 3.3.18 → 3.3.22
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 +65 -0
- data/Manifest.txt +11 -0
- data/bin/gem +2 -2
- data/bin/update_rubygems +4 -4
- data/bundler/CHANGELOG.md +100 -0
- data/bundler/UPGRADING.md +11 -4
- data/bundler/bundler.gemspec +6 -8
- data/bundler/lib/bundler/build_metadata.rb +2 -2
- data/bundler/lib/bundler/cli/common.rb +1 -0
- data/bundler/lib/bundler/cli/install.rb +5 -2
- data/bundler/lib/bundler/cli/outdated.rb +12 -3
- data/bundler/lib/bundler/cli/platform.rb +1 -1
- data/bundler/lib/bundler/cli.rb +7 -4
- data/bundler/lib/bundler/current_ruby.rb +14 -5
- data/bundler/lib/bundler/definition.rb +102 -31
- data/bundler/lib/bundler/dependency.rb +18 -85
- data/bundler/lib/bundler/dsl.rb +2 -2
- data/bundler/lib/bundler/endpoint_specification.rb +2 -13
- data/bundler/lib/bundler/feature_flag.rb +0 -1
- data/bundler/lib/bundler/fetcher.rb +6 -6
- data/bundler/lib/bundler/gem_helpers.rb +7 -1
- data/bundler/lib/bundler/gem_version_promoter.rb +8 -18
- data/bundler/lib/bundler/index.rb +10 -12
- data/bundler/lib/bundler/injector.rb +2 -1
- data/bundler/lib/bundler/inline.rb +1 -1
- data/bundler/lib/bundler/installer/standalone.rb +1 -1
- data/bundler/lib/bundler/installer.rb +14 -12
- data/bundler/lib/bundler/lazy_specification.rb +30 -23
- data/bundler/lib/bundler/lockfile_generator.rb +1 -1
- 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 +7 -1
- data/bundler/lib/bundler/man/bundle-cache.1.ronn +7 -0
- data/bundler/lib/bundler/man/bundle-check.1 +1 -1
- data/bundler/lib/bundler/man/bundle-clean.1 +1 -1
- data/bundler/lib/bundler/man/bundle-config.1 +25 -6
- data/bundler/lib/bundler/man/bundle-config.1.ronn +16 -6
- 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 +2 -2
- data/bundler/lib/bundler/man/bundle-exec.1.ronn +1 -1
- data/bundler/lib/bundler/man/bundle-gem.1 +1 -1
- 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 +1 -1
- data/bundler/lib/bundler/man/bundle-init.1 +1 -1
- 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 -1
- data/bundler/lib/bundler/man/bundle-install.1.ronn +6 -0
- 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 +1 -1
- data/bundler/lib/bundler/man/bundle-outdated.1 +1 -1
- 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 +23 -47
- data/bundler/lib/bundler/man/gemfile.5.ronn +32 -43
- 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/plugin.rb +2 -0
- data/bundler/lib/bundler/remote_specification.rb +6 -11
- data/bundler/lib/bundler/resolver/base.rb +50 -0
- data/bundler/lib/bundler/resolver/spec_group.rb +11 -8
- data/bundler/lib/bundler/resolver.rb +95 -90
- data/bundler/lib/bundler/ruby_dsl.rb +1 -1
- data/bundler/lib/bundler/ruby_version.rb +5 -5
- data/bundler/lib/bundler/rubygems_ext.rb +52 -1
- data/bundler/lib/bundler/rubygems_gem_installer.rb +19 -12
- data/bundler/lib/bundler/settings.rb +1 -1
- data/bundler/lib/bundler/source/metadata.rb +1 -1
- data/bundler/lib/bundler/source_list.rb +4 -0
- data/bundler/lib/bundler/spec_set.rb +48 -33
- data/bundler/lib/bundler/version.rb +1 -1
- data/bundler/lib/bundler.rb +3 -3
- data/lib/rubygems/available_set.rb +3 -3
- data/lib/rubygems/basic_specification.rb +4 -4
- data/lib/rubygems/command.rb +25 -25
- data/lib/rubygems/command_manager.rb +9 -9
- data/lib/rubygems/commands/build_command.rb +8 -8
- data/lib/rubygems/commands/cert_command.rb +33 -33
- data/lib/rubygems/commands/check_command.rb +20 -20
- data/lib/rubygems/commands/cleanup_command.rb +17 -17
- data/lib/rubygems/commands/contents_command.rb +13 -13
- data/lib/rubygems/commands/dependency_command.rb +16 -16
- data/lib/rubygems/commands/environment_command.rb +5 -5
- data/lib/rubygems/commands/fetch_command.rb +8 -8
- data/lib/rubygems/commands/generate_index_command.rb +17 -17
- data/lib/rubygems/commands/help_command.rb +3 -3
- data/lib/rubygems/commands/info_command.rb +3 -3
- data/lib/rubygems/commands/install_command.rb +20 -20
- data/lib/rubygems/commands/list_command.rb +3 -3
- data/lib/rubygems/commands/lock_command.rb +4 -4
- data/lib/rubygems/commands/mirror_command.rb +3 -3
- data/lib/rubygems/commands/open_command.rb +9 -9
- data/lib/rubygems/commands/outdated_command.rb +5 -5
- data/lib/rubygems/commands/owner_command.rb +11 -11
- data/lib/rubygems/commands/pristine_command.rb +36 -36
- data/lib/rubygems/commands/push_command.rb +8 -8
- data/lib/rubygems/commands/query_command.rb +8 -8
- data/lib/rubygems/commands/rdoc_command.rb +17 -17
- data/lib/rubygems/commands/search_command.rb +3 -3
- data/lib/rubygems/commands/server_command.rb +3 -3
- data/lib/rubygems/commands/setup_command.rb +96 -106
- data/lib/rubygems/commands/signin_command.rb +9 -9
- data/lib/rubygems/commands/signout_command.rb +7 -7
- data/lib/rubygems/commands/sources_command.rb +21 -21
- data/lib/rubygems/commands/specification_command.rb +13 -13
- data/lib/rubygems/commands/stale_command.rb +2 -2
- data/lib/rubygems/commands/uninstall_command.rb +40 -40
- data/lib/rubygems/commands/unpack_command.rb +12 -12
- data/lib/rubygems/commands/update_command.rb +40 -56
- data/lib/rubygems/commands/which_command.rb +7 -7
- data/lib/rubygems/commands/yank_command.rb +11 -11
- data/lib/rubygems/config_file.rb +21 -21
- data/lib/rubygems/core_ext/kernel_gem.rb +1 -1
- data/lib/rubygems/core_ext/kernel_require.rb +1 -1
- 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 +16 -16
- data/lib/rubygems/dependency.rb +9 -9
- data/lib/rubygems/dependency_installer.rb +13 -13
- data/lib/rubygems/dependency_list.rb +6 -6
- data/lib/rubygems/doctor.rb +18 -18
- data/lib/rubygems/errors.rb +2 -2
- data/lib/rubygems/exceptions.rb +5 -5
- data/lib/rubygems/ext/build_error.rb +1 -1
- data/lib/rubygems/ext/builder.rb +16 -16
- data/lib/rubygems/ext/cargo_builder.rb +7 -7
- data/lib/rubygems/ext/cmake_builder.rb +2 -2
- data/lib/rubygems/ext/configure_builder.rb +1 -1
- data/lib/rubygems/ext/ext_conf_builder.rb +8 -8
- data/lib/rubygems/ext/rake_builder.rb +3 -3
- data/lib/rubygems/ext.rb +7 -7
- data/lib/rubygems/gem_runner.rb +5 -5
- data/lib/rubygems/gemcutter_utilities.rb +31 -28
- data/lib/rubygems/indexer.rb +27 -27
- data/lib/rubygems/install_default_message.rb +2 -2
- data/lib/rubygems/install_message.rb +2 -2
- data/lib/rubygems/install_update_options.rb +55 -55
- data/lib/rubygems/installer.rb +32 -40
- data/lib/rubygems/installer_uninstaller_utils.rb +2 -2
- data/lib/rubygems/local_remote_options.rb +18 -20
- data/lib/rubygems/mock_gem_ui.rb +2 -2
- data/lib/rubygems/name_tuple.rb +4 -4
- data/lib/rubygems/optparse.rb +1 -1
- data/lib/rubygems/package/file_source.rb +2 -2
- data/lib/rubygems/package/old.rb +8 -8
- data/lib/rubygems/package/tar_header.rb +50 -50
- data/lib/rubygems/package/tar_reader/entry.rb +2 -2
- data/lib/rubygems/package/tar_reader.rb +1 -1
- data/lib/rubygems/package/tar_writer.rb +7 -7
- data/lib/rubygems/package.rb +54 -43
- data/lib/rubygems/package_task.rb +4 -4
- data/lib/rubygems/platform.rb +66 -55
- data/lib/rubygems/psych_tree.rb +1 -1
- data/lib/rubygems/query_utils.rb +35 -35
- data/lib/rubygems/rdoc.rb +2 -2
- data/lib/rubygems/remote_fetcher.rb +22 -22
- data/lib/rubygems/request/connection_pools.rb +4 -4
- data/lib/rubygems/request/http_pool.rb +1 -1
- data/lib/rubygems/request.rb +22 -22
- data/lib/rubygems/request_set/gem_dependency_api.rb +18 -18
- data/lib/rubygems/request_set/lockfile/parser.rb +26 -26
- data/lib/rubygems/request_set/lockfile/tokenizer.rb +4 -4
- data/lib/rubygems/request_set/lockfile.rb +5 -5
- data/lib/rubygems/request_set.rb +17 -17
- data/lib/rubygems/requirement.rb +6 -6
- data/lib/rubygems/resolver/activation_request.rb +3 -3
- data/lib/rubygems/resolver/api_set.rb +4 -4
- data/lib/rubygems/resolver/api_specification.rb +6 -6
- data/lib/rubygems/resolver/best_set.rb +5 -5
- data/lib/rubygems/resolver/conflict.rb +10 -10
- data/lib/rubygems/resolver/dependency_request.rb +2 -2
- data/lib/rubygems/resolver/git_set.rb +2 -2
- data/lib/rubygems/resolver/git_specification.rb +6 -6
- data/lib/rubygems/resolver/index_set.rb +3 -3
- data/lib/rubygems/resolver/index_specification.rb +6 -5
- data/lib/rubygems/resolver/installed_specification.rb +4 -4
- data/lib/rubygems/resolver/installer_set.rb +11 -16
- data/lib/rubygems/resolver/local_specification.rb +2 -2
- data/lib/rubygems/resolver/lock_set.rb +4 -4
- data/lib/rubygems/resolver/lock_specification.rb +4 -4
- data/lib/rubygems/resolver/molinillo.rb +1 -1
- data/lib/rubygems/resolver/specification.rb +1 -1
- data/lib/rubygems/resolver/vendor_set.rb +1 -1
- data/lib/rubygems/resolver/vendor_specification.rb +3 -3
- data/lib/rubygems/resolver.rb +39 -39
- data/lib/rubygems/s3_uri_signer.rb +6 -6
- data/lib/rubygems/safe_yaml.rb +2 -2
- data/lib/rubygems/security/policies.rb +11 -11
- data/lib/rubygems/security/policy.rb +18 -18
- data/lib/rubygems/security/signer.rb +5 -5
- data/lib/rubygems/security/trust_dir.rb +3 -3
- data/lib/rubygems/security.rb +28 -28
- data/lib/rubygems/security_option.rb +5 -5
- data/lib/rubygems/source/git.rb +21 -21
- data/lib/rubygems/source/installed.rb +1 -1
- data/lib/rubygems/source/local.rb +2 -2
- data/lib/rubygems/source/specific_file.rb +1 -1
- data/lib/rubygems/source.rb +16 -16
- data/lib/rubygems/spec_fetcher.rb +9 -9
- data/lib/rubygems/specification.rb +63 -62
- data/lib/rubygems/specification_policy.rb +15 -15
- data/lib/rubygems/stub_specification.rb +5 -5
- data/lib/rubygems/tsort.rb +1 -1
- data/lib/rubygems/uninstaller.rb +18 -18
- data/lib/rubygems/uri.rb +4 -4
- data/lib/rubygems/uri_formatter.rb +1 -1
- data/lib/rubygems/user_interaction.rb +33 -19
- data/lib/rubygems/util/licenses.rb +3 -3
- data/lib/rubygems/util.rb +10 -10
- data/lib/rubygems/validator.rb +5 -5
- data/lib/rubygems/version.rb +15 -9
- data/lib/rubygems/version_option.rb +3 -3
- data/lib/rubygems.rb +62 -61
- data/rubygems-update.gemspec +2 -2
- data/setup.rb +9 -9
- data/test/rubygems/helper.rb +132 -134
- data/test/rubygems/installer_test_case.rb +13 -13
- data/test/rubygems/package/tar_test_case.rb +2 -2
- data/test/rubygems/plugin/exception/rubygems_plugin.rb +1 -1
- data/test/rubygems/plugin/standarderror/rubygems_plugin.rb +1 -1
- data/test/rubygems/rubygems_plugin.rb +2 -2
- data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +4 -4
- data/test/rubygems/test_bundled_ca.rb +10 -10
- data/test/rubygems/test_config.rb +3 -3
- data/test/rubygems/test_deprecate.rb +3 -3
- data/test/rubygems/test_exit.rb +2 -2
- data/test/rubygems/test_gem.rb +342 -342
- data/test/rubygems/test_gem_available_set.rb +21 -21
- data/test/rubygems/test_gem_bundler_version_finder.rb +1 -1
- data/test/rubygems/test_gem_command.rb +44 -44
- data/test/rubygems/test_gem_command_manager.rb +29 -29
- data/test/rubygems/test_gem_commands_build_command.rb +63 -63
- data/test/rubygems/test_gem_commands_cert_command.rb +97 -99
- data/test/rubygems/test_gem_commands_check_command.rb +4 -4
- data/test/rubygems/test_gem_commands_cleanup_command.rb +40 -40
- data/test/rubygems/test_gem_commands_contents_command.rb +27 -27
- data/test/rubygems/test_gem_commands_dependency_command.rb +36 -36
- data/test/rubygems/test_gem_commands_environment_command.rb +16 -16
- data/test/rubygems/test_gem_commands_fetch_command.rb +37 -37
- data/test/rubygems/test_gem_commands_generate_index_command.rb +7 -7
- data/test/rubygems/test_gem_commands_help_command.rb +13 -13
- data/test/rubygems/test_gem_commands_info_command.rb +28 -2
- data/test/rubygems/test_gem_commands_install_command.rb +131 -131
- data/test/rubygems/test_gem_commands_list_command.rb +4 -4
- data/test/rubygems/test_gem_commands_lock_command.rb +10 -10
- data/test/rubygems/test_gem_commands_mirror.rb +2 -2
- data/test/rubygems/test_gem_commands_open_command.rb +4 -4
- data/test/rubygems/test_gem_commands_outdated_command.rb +9 -9
- data/test/rubygems/test_gem_commands_owner_command.rb +41 -41
- data/test/rubygems/test_gem_commands_pristine_command.rb +92 -92
- data/test/rubygems/test_gem_commands_push_command.rb +54 -54
- data/test/rubygems/test_gem_commands_query_command.rb +73 -73
- data/test/rubygems/test_gem_commands_search_command.rb +2 -2
- data/test/rubygems/test_gem_commands_server_command.rb +2 -2
- data/test/rubygems/test_gem_commands_setup_command.rb +119 -85
- data/test/rubygems/test_gem_commands_signin_command.rb +45 -31
- data/test/rubygems/test_gem_commands_signout_command.rb +3 -3
- data/test/rubygems/test_gem_commands_sources_command.rb +28 -29
- data/test/rubygems/test_gem_commands_specification_command.rb +32 -32
- data/test/rubygems/test_gem_commands_stale_command.rb +4 -4
- data/test/rubygems/test_gem_commands_uninstall_command.rb +75 -75
- data/test/rubygems/test_gem_commands_unpack_command.rb +31 -31
- data/test/rubygems/test_gem_commands_update_command.rb +89 -89
- data/test/rubygems/test_gem_commands_which_command.rb +6 -6
- data/test/rubygems/test_gem_commands_yank_command.rb +40 -40
- data/test/rubygems/test_gem_config_file.rb +93 -81
- data/test/rubygems/test_gem_dependency.rb +73 -73
- data/test/rubygems/test_gem_dependency_installer.rb +165 -165
- data/test/rubygems/test_gem_dependency_list.rb +47 -47
- data/test/rubygems/test_gem_dependency_resolution_error.rb +4 -4
- data/test/rubygems/test_gem_doctor.rb +26 -26
- data/test/rubygems/test_gem_ext_builder.rb +59 -59
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.lock +6 -6
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/Cargo.toml +1 -1
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/build.rb +8 -8
- data/test/rubygems/test_gem_ext_cargo_builder/custom_name/custom_name.gemspec +1 -1
- data/test/rubygems/test_gem_ext_cargo_builder/rust_ruby_example/Cargo.lock +6 -6
- 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/build.rb +8 -8
- data/test/rubygems/test_gem_ext_cargo_builder.rb +26 -26
- data/test/rubygems/test_gem_ext_cargo_builder_link_flag_converter.rb +3 -3
- data/test/rubygems/test_gem_ext_cargo_builder_unit.rb +23 -23
- data/test/rubygems/test_gem_ext_cmake_builder.rb +15 -15
- data/test/rubygems/test_gem_ext_configure_builder.rb +13 -13
- data/test/rubygems/test_gem_ext_ext_conf_builder.rb +51 -52
- data/test/rubygems/test_gem_ext_rake_builder.rb +15 -15
- data/test/rubygems/test_gem_gem_runner.rb +7 -7
- data/test/rubygems/test_gem_gemcutter_utilities.rb +66 -66
- data/test/rubygems/test_gem_impossible_dependencies_error.rb +4 -4
- data/test/rubygems/test_gem_indexer.rb +48 -48
- data/test/rubygems/test_gem_install_update_options.rb +16 -16
- data/test/rubygems/test_gem_installer.rb +303 -300
- data/test/rubygems/test_gem_local_remote_options.rb +10 -10
- data/test/rubygems/test_gem_name_tuple.rb +4 -4
- data/test/rubygems/test_gem_package.rb +228 -206
- data/test/rubygems/test_gem_package_old.rb +13 -13
- data/test/rubygems/test_gem_package_tar_header.rb +42 -42
- data/test/rubygems/test_gem_package_tar_reader.rb +8 -8
- data/test/rubygems/test_gem_package_tar_reader_entry.rb +10 -10
- data/test/rubygems/test_gem_package_tar_writer.rb +76 -76
- data/test/rubygems/test_gem_package_task.rb +18 -18
- data/test/rubygems/test_gem_path_support.rb +14 -14
- data/test/rubygems/test_gem_platform.rb +298 -227
- data/test/rubygems/test_gem_rdoc.rb +14 -14
- data/test/rubygems/test_gem_remote_fetcher.rb +149 -149
- data/test/rubygems/test_gem_request.rb +55 -55
- data/test/rubygems/test_gem_request_connection_pools.rb +29 -29
- data/test/rubygems/test_gem_request_set.rb +99 -99
- data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +204 -206
- data/test/rubygems/test_gem_request_set_lockfile.rb +86 -86
- data/test/rubygems/test_gem_request_set_lockfile_parser.rb +56 -56
- data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +62 -62
- data/test/rubygems/test_gem_requirement.rb +47 -41
- data/test/rubygems/test_gem_resolver.rb +133 -99
- data/test/rubygems/test_gem_resolver_activation_request.rb +6 -6
- data/test/rubygems/test_gem_resolver_api_set.rb +33 -33
- data/test/rubygems/test_gem_resolver_api_specification.rb +47 -47
- data/test/rubygems/test_gem_resolver_best_set.rb +22 -22
- data/test/rubygems/test_gem_resolver_composed_set.rb +1 -1
- data/test/rubygems/test_gem_resolver_conflict.rb +12 -12
- data/test/rubygems/test_gem_resolver_dependency_request.rb +15 -15
- data/test/rubygems/test_gem_resolver_git_set.rb +21 -21
- data/test/rubygems/test_gem_resolver_git_specification.rb +21 -21
- data/test/rubygems/test_gem_resolver_index_set.rb +12 -12
- data/test/rubygems/test_gem_resolver_index_specification.rb +16 -16
- data/test/rubygems/test_gem_resolver_installed_specification.rb +5 -5
- data/test/rubygems/test_gem_resolver_installer_set.rb +78 -34
- data/test/rubygems/test_gem_resolver_local_specification.rb +7 -7
- data/test/rubygems/test_gem_resolver_lock_set.rb +12 -12
- data/test/rubygems/test_gem_resolver_lock_specification.rb +17 -17
- data/test/rubygems/test_gem_resolver_requirement_list.rb +1 -1
- data/test/rubygems/test_gem_resolver_specification.rb +8 -8
- data/test/rubygems/test_gem_resolver_vendor_set.rb +6 -6
- data/test/rubygems/test_gem_resolver_vendor_specification.rb +10 -10
- data/test/rubygems/test_gem_security.rb +67 -67
- data/test/rubygems/test_gem_security_policy.rb +62 -62
- data/test/rubygems/test_gem_security_signer.rb +28 -28
- data/test/rubygems/test_gem_security_trust_dir.rb +4 -4
- data/test/rubygems/test_gem_silent_ui.rb +38 -32
- data/test/rubygems/test_gem_source.rb +44 -44
- data/test/rubygems/test_gem_source_fetch_problem.rb +9 -9
- data/test/rubygems/test_gem_source_git.rb +59 -59
- data/test/rubygems/test_gem_source_installed.rb +16 -16
- data/test/rubygems/test_gem_source_list.rb +5 -5
- data/test/rubygems/test_gem_source_local.rb +14 -14
- data/test/rubygems/test_gem_source_lock.rb +31 -31
- data/test/rubygems/test_gem_source_specific_file.rb +17 -17
- data/test/rubygems/test_gem_source_subpath_problem.rb +7 -7
- data/test/rubygems/test_gem_source_vendor.rb +13 -13
- data/test/rubygems/test_gem_spec_fetcher.rb +72 -72
- data/test/rubygems/test_gem_specification.rb +444 -436
- data/test/rubygems/test_gem_stream_ui.rb +19 -19
- data/test/rubygems/test_gem_stub_specification.rb +32 -32
- data/test/rubygems/test_gem_text.rb +1 -1
- data/test/rubygems/test_gem_uninstaller.rb +112 -112
- data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +3 -3
- data/test/rubygems/test_gem_uri.rb +4 -4
- data/test/rubygems/test_gem_uri_formatter.rb +14 -14
- data/test/rubygems/test_gem_util.rb +23 -23
- data/test/rubygems/test_gem_validator.rb +8 -8
- data/test/rubygems/test_gem_version.rb +22 -15
- data/test/rubygems/test_gem_version_option.rb +15 -15
- data/test/rubygems/test_kernel.rb +31 -31
- data/test/rubygems/test_project_sanity.rb +1 -1
- data/test/rubygems/test_remote_fetch_error.rb +6 -6
- data/test/rubygems/test_require.rb +43 -43
- data/test/rubygems/test_rubygems.rb +8 -8
- data/test/rubygems/utilities.rb +19 -19
- metadata +14 -3
@@ -1,32 +1,32 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
|
-
require_relative
|
3
|
-
require
|
4
|
-
require
|
2
|
+
require_relative "helper"
|
3
|
+
require "rubygems/commands/build_command"
|
4
|
+
require "rubygems/package"
|
5
5
|
|
6
6
|
class TestGemCommandsBuildCommand < Gem::TestCase
|
7
|
-
CERT_FILE = cert_path
|
8
|
-
SIGNING_KEY = key_path
|
7
|
+
CERT_FILE = cert_path "public3072"
|
8
|
+
SIGNING_KEY = key_path "private3072"
|
9
9
|
|
10
|
-
EXPIRED_CERT_FILE = cert_path
|
11
|
-
PRIVATE_KEY_FILE = key_path
|
10
|
+
EXPIRED_CERT_FILE = cert_path "expired"
|
11
|
+
PRIVATE_KEY_FILE = key_path "private"
|
12
12
|
|
13
13
|
def setup
|
14
14
|
super
|
15
15
|
|
16
|
-
readme_file = File.join(@tempdir,
|
16
|
+
readme_file = File.join(@tempdir, "README.md")
|
17
17
|
|
18
18
|
begin
|
19
19
|
umask_orig = File.umask(2)
|
20
|
-
File.open readme_file,
|
21
|
-
f.write
|
20
|
+
File.open readme_file, "w" do |f|
|
21
|
+
f.write "My awesome gem"
|
22
22
|
end
|
23
23
|
ensure
|
24
24
|
File.umask(umask_orig)
|
25
25
|
end
|
26
26
|
|
27
|
-
@gem = util_spec
|
28
|
-
s.license =
|
29
|
-
s.files = [
|
27
|
+
@gem = util_spec "some_gem" do |s|
|
28
|
+
s.license = "AGPL-3.0"
|
29
|
+
s.files = ["README.md"]
|
30
30
|
end
|
31
31
|
|
32
32
|
@cmd = Gem::Commands::BuildCommand.new
|
@@ -44,7 +44,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
44
44
|
def test_options_filename
|
45
45
|
gemspec_file = File.join(@tempdir, @gem.spec_name)
|
46
46
|
|
47
|
-
File.open gemspec_file,
|
47
|
+
File.open gemspec_file, "w" do |gs|
|
48
48
|
gs.write @gem.to_ruby
|
49
49
|
end
|
50
50
|
|
@@ -79,7 +79,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
79
79
|
def test_execute
|
80
80
|
gemspec_file = File.join(@tempdir, @gem.spec_name)
|
81
81
|
|
82
|
-
File.open gemspec_file,
|
82
|
+
File.open gemspec_file, "w" do |gs|
|
83
83
|
gs.write @gem.to_ruby
|
84
84
|
end
|
85
85
|
|
@@ -91,7 +91,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
91
91
|
def test_execute_platform
|
92
92
|
gemspec_file = File.join(@tempdir, @gem.spec_name)
|
93
93
|
|
94
|
-
File.open gemspec_file,
|
94
|
+
File.open gemspec_file, "w" do |gs|
|
95
95
|
gs.write @gem.to_ruby
|
96
96
|
end
|
97
97
|
|
@@ -110,15 +110,15 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
110
110
|
|
111
111
|
def test_execute_bad_name
|
112
112
|
[".", "-", "_"].each do |special_char|
|
113
|
-
gem = util_spec
|
113
|
+
gem = util_spec "some_gem_with_bad_name" do |s|
|
114
114
|
s.name = "#{special_char}bad_gem_name"
|
115
|
-
s.license =
|
116
|
-
s.files = [
|
115
|
+
s.license = "AGPL-3.0"
|
116
|
+
s.files = ["README.md"]
|
117
117
|
end
|
118
118
|
|
119
119
|
gemspec_file = File.join(@tempdir, gem.spec_name)
|
120
120
|
|
121
|
-
File.open gemspec_file,
|
121
|
+
File.open gemspec_file, "w" do |gs|
|
122
122
|
gs.write gem.to_ruby
|
123
123
|
end
|
124
124
|
|
@@ -137,7 +137,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
137
137
|
def test_execute_strict_without_warnings
|
138
138
|
gemspec_file = File.join(@tempdir, @gem.spec_name)
|
139
139
|
|
140
|
-
File.open gemspec_file,
|
140
|
+
File.open gemspec_file, "w" do |gs|
|
141
141
|
gs.write @gem.to_ruby
|
142
142
|
end
|
143
143
|
|
@@ -165,13 +165,13 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
165
165
|
end
|
166
166
|
|
167
167
|
def test_execute_strict_with_warnings
|
168
|
-
bad_gem = util_spec
|
169
|
-
s.files = [
|
168
|
+
bad_gem = util_spec "some_bad_gem" do |s|
|
169
|
+
s.files = ["README.md"]
|
170
170
|
end
|
171
171
|
|
172
172
|
gemspec_file = File.join(@tempdir, bad_gem.spec_name)
|
173
173
|
|
174
|
-
File.open gemspec_file,
|
174
|
+
File.open gemspec_file, "w" do |gs|
|
175
175
|
gs.write bad_gem.to_ruby
|
176
176
|
end
|
177
177
|
|
@@ -201,7 +201,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
201
201
|
|
202
202
|
gemspec_file = File.join(@tempdir, @gem.spec_name)
|
203
203
|
|
204
|
-
File.open gemspec_file,
|
204
|
+
File.open gemspec_file, "w" do |gs|
|
205
205
|
gs.write @gem.to_ruby.sub(/11-08/, "11-8")
|
206
206
|
end
|
207
207
|
|
@@ -218,7 +218,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
218
218
|
assert_equal "", out
|
219
219
|
assert_match(/invalid date format in specification/, err)
|
220
220
|
|
221
|
-
assert_equal
|
221
|
+
assert_equal "", @ui.output
|
222
222
|
assert_equal "ERROR: Error loading gemspec. Aborting.\n", @ui.error
|
223
223
|
end
|
224
224
|
|
@@ -230,22 +230,22 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
230
230
|
end
|
231
231
|
end
|
232
232
|
|
233
|
-
assert_equal
|
233
|
+
assert_equal "", @ui.output
|
234
234
|
assert_equal "ERROR: Couldn't find a gemspec file matching 'some_gem' in #{@tempdir}\n", @ui.error
|
235
235
|
end
|
236
236
|
|
237
237
|
def test_execute_outside_dir
|
238
|
-
gemspec_dir = File.join @tempdir,
|
238
|
+
gemspec_dir = File.join @tempdir, "build_command_gem"
|
239
239
|
gemspec_file = File.join gemspec_dir, @gem.spec_name
|
240
|
-
readme_file = File.join gemspec_dir,
|
240
|
+
readme_file = File.join gemspec_dir, "README.md"
|
241
241
|
|
242
242
|
FileUtils.mkdir_p gemspec_dir
|
243
243
|
|
244
|
-
File.open readme_file,
|
244
|
+
File.open readme_file, "w" do |f|
|
245
245
|
f.write "My awesome gem"
|
246
246
|
end
|
247
247
|
|
248
|
-
File.open gemspec_file,
|
248
|
+
File.open gemspec_file, "w" do |gs|
|
249
249
|
gs.write @gem.to_ruby
|
250
250
|
end
|
251
251
|
|
@@ -273,17 +273,17 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
273
273
|
end
|
274
274
|
|
275
275
|
def test_execute_outside_dir_with_glob_argument
|
276
|
-
gemspec_dir = File.join @tempdir,
|
276
|
+
gemspec_dir = File.join @tempdir, "build_command_gem"
|
277
277
|
gemspec_file = File.join gemspec_dir, @gem.spec_name
|
278
|
-
readme_file = File.join gemspec_dir,
|
278
|
+
readme_file = File.join gemspec_dir, "README.md"
|
279
279
|
|
280
280
|
FileUtils.mkdir_p gemspec_dir
|
281
281
|
|
282
|
-
File.open readme_file,
|
282
|
+
File.open readme_file, "w" do |f|
|
283
283
|
f.write "My awesome gem"
|
284
284
|
end
|
285
285
|
|
286
|
-
File.open gemspec_file,
|
286
|
+
File.open gemspec_file, "w" do |gs|
|
287
287
|
gs.write @gem.to_ruby
|
288
288
|
end
|
289
289
|
|
@@ -311,17 +311,17 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
311
311
|
end
|
312
312
|
|
313
313
|
def test_execute_outside_dir_no_gemspec_present
|
314
|
-
gemspec_dir = File.join @tempdir,
|
314
|
+
gemspec_dir = File.join @tempdir, "build_command_gem"
|
315
315
|
gemspec_file = File.join @tempdir, @gem.spec_name
|
316
|
-
readme_file = File.join gemspec_dir,
|
316
|
+
readme_file = File.join gemspec_dir, "README.md"
|
317
317
|
|
318
318
|
FileUtils.mkdir_p gemspec_dir
|
319
319
|
|
320
|
-
File.open readme_file,
|
320
|
+
File.open readme_file, "w" do |f|
|
321
321
|
f.write "My awesome gem"
|
322
322
|
end
|
323
323
|
|
324
|
-
File.open gemspec_file,
|
324
|
+
File.open gemspec_file, "w" do |gs|
|
325
325
|
gs.write @gem.to_ruby
|
326
326
|
end
|
327
327
|
|
@@ -342,14 +342,14 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
342
342
|
end
|
343
343
|
|
344
344
|
def test_execute_outside_dir_without_gem_name
|
345
|
-
gemspec_dir = File.join(@tempdir,
|
345
|
+
gemspec_dir = File.join(@tempdir, "build_command_gem")
|
346
346
|
gemspec_file = File.join(gemspec_dir, @gem.spec_name)
|
347
347
|
|
348
|
-
readme_file = File.join gemspec_dir,
|
348
|
+
readme_file = File.join gemspec_dir, "README.md"
|
349
349
|
|
350
350
|
FileUtils.mkdir_p(gemspec_dir)
|
351
351
|
|
352
|
-
File.open readme_file,
|
352
|
+
File.open readme_file, "w" do |f|
|
353
353
|
f.write "My awesome gem"
|
354
354
|
end
|
355
355
|
|
@@ -383,20 +383,20 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
383
383
|
end
|
384
384
|
|
385
385
|
def test_execute_outside_dir_with_external_gemspec
|
386
|
-
gemspec_dir = File.join @tempdir,
|
386
|
+
gemspec_dir = File.join @tempdir, "gemspec_dir"
|
387
387
|
gemspec_file = File.join gemspec_dir, @gem.spec_name
|
388
388
|
|
389
|
-
gemcode_dir = File.join @tempdir,
|
390
|
-
readme_file = File.join gemcode_dir,
|
389
|
+
gemcode_dir = File.join @tempdir, "build_command_gem"
|
390
|
+
readme_file = File.join gemcode_dir, "README.md"
|
391
391
|
|
392
392
|
FileUtils.mkdir_p gemspec_dir
|
393
393
|
FileUtils.mkdir_p gemcode_dir
|
394
394
|
|
395
|
-
File.open readme_file,
|
395
|
+
File.open readme_file, "w" do |f|
|
396
396
|
f.write "My awesome gem in nested directory"
|
397
397
|
end
|
398
398
|
|
399
|
-
File.open gemspec_file,
|
399
|
+
File.open gemspec_file, "w" do |gs|
|
400
400
|
gs.write @gem.to_ruby
|
401
401
|
end
|
402
402
|
|
@@ -424,20 +424,20 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
424
424
|
end
|
425
425
|
|
426
426
|
def test_execute_outside_dir_with_external_relative_gemspec
|
427
|
-
gemspec_dir = File.join @tempdir,
|
427
|
+
gemspec_dir = File.join @tempdir, "gemspec_dir"
|
428
428
|
gemspec_file = File.join gemspec_dir, @gem.spec_name
|
429
429
|
|
430
|
-
gemcode_dir = File.join @tempdir,
|
431
|
-
readme_file = File.join gemcode_dir,
|
430
|
+
gemcode_dir = File.join @tempdir, "build_command_gem"
|
431
|
+
readme_file = File.join gemcode_dir, "README.md"
|
432
432
|
|
433
433
|
FileUtils.mkdir_p gemspec_dir
|
434
434
|
FileUtils.mkdir_p gemcode_dir
|
435
435
|
|
436
|
-
File.open readme_file,
|
436
|
+
File.open readme_file, "w" do |f|
|
437
437
|
f.write "My awesome gem in nested directory"
|
438
438
|
end
|
439
439
|
|
440
|
-
File.open gemspec_file,
|
440
|
+
File.open gemspec_file, "w" do |gs|
|
441
441
|
gs.write @gem.to_ruby
|
442
442
|
end
|
443
443
|
|
@@ -467,7 +467,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
467
467
|
def test_can_find_gemspecs_without_dot_gemspec
|
468
468
|
gemspec_file = File.join(@tempdir, @gem.name)
|
469
469
|
|
470
|
-
File.open gemspec_file + ".gemspec",
|
470
|
+
File.open gemspec_file + ".gemspec", "w" do |gs|
|
471
471
|
gs.write @gem.to_ruby
|
472
472
|
end
|
473
473
|
|
@@ -571,7 +571,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
571
571
|
|
572
572
|
@gem.send :remove_instance_variable, :@rubygems_version
|
573
573
|
|
574
|
-
File.open gemspec_file,
|
574
|
+
File.open gemspec_file, "w" do |gs|
|
575
575
|
gs.write @gem.to_ruby
|
576
576
|
end
|
577
577
|
|
@@ -582,18 +582,18 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
582
582
|
end
|
583
583
|
|
584
584
|
def test_build_signed_gem
|
585
|
-
pend
|
585
|
+
pend "openssl is missing" unless Gem::HAVE_OPENSSL && !java_platform?
|
586
586
|
|
587
587
|
trust_dir = Gem::Security.trust_dir
|
588
588
|
|
589
|
-
spec = util_spec
|
589
|
+
spec = util_spec "some_gem" do |s|
|
590
590
|
s.signing_key = SIGNING_KEY
|
591
591
|
s.cert_chain = [CERT_FILE]
|
592
592
|
end
|
593
593
|
|
594
594
|
gemspec_file = File.join(@tempdir, spec.spec_name)
|
595
595
|
|
596
|
-
File.open gemspec_file,
|
596
|
+
File.open gemspec_file, "w" do |gs|
|
597
597
|
gs.write spec.to_ruby
|
598
598
|
end
|
599
599
|
|
@@ -609,7 +609,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
609
609
|
end
|
610
610
|
|
611
611
|
def test_build_signed_gem_with_cert_expiration_length_days
|
612
|
-
pend
|
612
|
+
pend "openssl is missing" unless Gem::HAVE_OPENSSL && !java_platform?
|
613
613
|
|
614
614
|
gem_path = File.join Gem.user_home, ".gem"
|
615
615
|
Dir.mkdir gem_path
|
@@ -622,14 +622,14 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
622
622
|
tmp_private_key_file = File.join gem_path, "gem-private_key.pem"
|
623
623
|
File.write(tmp_private_key_file, File.read(PRIVATE_KEY_FILE))
|
624
624
|
|
625
|
-
spec = util_spec
|
625
|
+
spec = util_spec "some_gem" do |s|
|
626
626
|
s.signing_key = tmp_private_key_file
|
627
627
|
s.cert_chain = [tmp_expired_cert_file]
|
628
628
|
end
|
629
629
|
|
630
630
|
gemspec_file = File.join(@tempdir, spec.spec_name)
|
631
631
|
|
632
|
-
File.open gemspec_file,
|
632
|
+
File.open gemspec_file, "w" do |gs|
|
633
633
|
gs.write spec.to_ruby
|
634
634
|
end
|
635
635
|
|
@@ -653,7 +653,7 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
653
653
|
end
|
654
654
|
|
655
655
|
def test_build_auto_resign_cert
|
656
|
-
pend
|
656
|
+
pend "openssl is missing" unless Gem::HAVE_OPENSSL && !java_platform?
|
657
657
|
|
658
658
|
gem_path = File.join Gem.user_home, ".gem"
|
659
659
|
Dir.mkdir gem_path
|
@@ -666,14 +666,14 @@ class TestGemCommandsBuildCommand < Gem::TestCase
|
|
666
666
|
tmp_private_key_file = File.join gem_path, "gem-private_key.pem"
|
667
667
|
File.write(tmp_private_key_file, File.read(PRIVATE_KEY_FILE))
|
668
668
|
|
669
|
-
spec = util_spec
|
669
|
+
spec = util_spec "some_gem" do |s|
|
670
670
|
s.signing_key = tmp_private_key_file
|
671
671
|
s.cert_chain = [tmp_expired_cert_file]
|
672
672
|
end
|
673
673
|
|
674
674
|
gemspec_file = File.join(@tempdir, spec.spec_name)
|
675
675
|
|
676
|
-
File.open gemspec_file,
|
676
|
+
File.open gemspec_file, "w" do |gs|
|
677
677
|
gs.write spec.to_ruby
|
678
678
|
end
|
679
679
|
|