rubygems-update 3.1.3 → 3.2.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CODE_OF_CONDUCT.md +55 -19
- data/CONTRIBUTING.md +25 -11
- data/History.txt +395 -186
- data/Manifest.txt +44 -77
- data/POLICIES.md +2 -9
- data/README.md +5 -5
- data/Rakefile +44 -82
- data/bin/update_rubygems +1 -1
- data/bundler/CHANGELOG.md +1563 -1426
- data/bundler/README.md +6 -8
- data/bundler/UPGRADING.md +18 -32
- data/bundler/bundler.gemspec +3 -3
- data/bundler/exe/bundle +3 -0
- data/bundler/lib/bundler.rb +25 -7
- data/bundler/lib/bundler/build_metadata.rb +4 -12
- data/bundler/lib/bundler/cli.rb +58 -21
- data/bundler/lib/bundler/cli/add.rb +1 -1
- data/bundler/lib/bundler/cli/binstubs.rb +6 -2
- data/bundler/lib/bundler/cli/cache.rb +1 -7
- data/bundler/lib/bundler/cli/clean.rb +1 -1
- data/bundler/lib/bundler/cli/common.rb +14 -0
- data/bundler/lib/bundler/cli/console.rb +1 -1
- data/bundler/lib/bundler/cli/doctor.rb +1 -1
- data/bundler/lib/bundler/cli/exec.rb +4 -4
- data/bundler/lib/bundler/cli/fund.rb +36 -0
- data/bundler/lib/bundler/cli/gem.rb +84 -11
- data/bundler/lib/bundler/cli/info.rb +15 -4
- data/bundler/lib/bundler/cli/init.rb +2 -2
- data/bundler/lib/bundler/cli/inject.rb +1 -1
- data/bundler/lib/bundler/cli/install.rb +9 -16
- data/bundler/lib/bundler/cli/issue.rb +2 -2
- data/bundler/lib/bundler/cli/list.rb +12 -10
- data/bundler/lib/bundler/cli/outdated.rb +88 -67
- data/bundler/lib/bundler/cli/plugin.rb +10 -0
- data/bundler/lib/bundler/cli/pristine.rb +5 -0
- data/bundler/lib/bundler/cli/show.rb +1 -1
- data/bundler/lib/bundler/cli/update.rb +2 -0
- data/bundler/lib/bundler/compact_index_client.rb +1 -1
- data/bundler/lib/bundler/compact_index_client/cache.rb +1 -1
- data/bundler/lib/bundler/compact_index_client/updater.rb +5 -5
- data/bundler/lib/bundler/definition.rb +47 -61
- data/bundler/lib/bundler/dep_proxy.rb +1 -1
- data/bundler/lib/bundler/dependency.rb +0 -9
- data/bundler/lib/bundler/dsl.rb +5 -9
- data/bundler/lib/bundler/endpoint_specification.rb +1 -1
- data/bundler/lib/bundler/env.rb +1 -1
- data/bundler/lib/bundler/environment_preserver.rb +26 -2
- data/bundler/lib/bundler/errors.rb +1 -0
- data/bundler/lib/bundler/feature_flag.rb +0 -3
- data/bundler/lib/bundler/fetcher.rb +4 -3
- data/bundler/lib/bundler/fetcher/base.rb +1 -1
- data/bundler/lib/bundler/fetcher/compact_index.rb +1 -1
- data/bundler/lib/bundler/fetcher/downloader.rb +1 -1
- data/bundler/lib/bundler/fetcher/index.rb +3 -4
- data/bundler/lib/bundler/friendly_errors.rb +22 -13
- data/bundler/lib/bundler/gem_helper.rb +32 -17
- data/bundler/lib/bundler/gem_helpers.rb +6 -1
- data/bundler/lib/bundler/gem_version_promoter.rb +2 -2
- data/bundler/lib/bundler/graph.rb +1 -1
- data/bundler/lib/bundler/index.rb +6 -2
- data/bundler/lib/bundler/injector.rb +22 -4
- data/bundler/lib/bundler/inline.rb +1 -1
- data/bundler/lib/bundler/installer.rb +35 -32
- data/bundler/lib/bundler/installer/gem_installer.rb +3 -3
- data/bundler/lib/bundler/installer/parallel_installer.rb +10 -10
- data/bundler/lib/bundler/installer/standalone.rb +2 -2
- data/bundler/lib/bundler/lazy_specification.rb +20 -9
- data/bundler/lib/bundler/lockfile_generator.rb +1 -1
- data/bundler/lib/bundler/lockfile_parser.rb +1 -1
- data/bundler/lib/bundler/man/.document +1 -0
- data/bundler/{man/bundle-add.ronn → lib/bundler/man/bundle-add.1.ronn} +0 -0
- data/bundler/{man/bundle-binstubs.ronn → lib/bundler/man/bundle-binstubs.1.ronn} +2 -4
- data/bundler/{man/bundle-cache.ronn → lib/bundler/man/bundle-cache.1.ronn} +0 -0
- data/bundler/{man/bundle-check.ronn → lib/bundler/man/bundle-check.1.ronn} +0 -0
- data/bundler/{man/bundle-clean.ronn → lib/bundler/man/bundle-clean.1.ronn} +0 -0
- data/bundler/{man/bundle-config.ronn → lib/bundler/man/bundle-config.1.ronn} +19 -30
- data/bundler/{man/bundle-doctor.ronn → lib/bundler/man/bundle-doctor.1.ronn} +0 -0
- data/bundler/{man/bundle-exec.ronn → lib/bundler/man/bundle-exec.1.ronn} +0 -0
- data/bundler/{man/bundle-gem.ronn → lib/bundler/man/bundle-gem.1.ronn} +30 -7
- data/bundler/{man/bundle-info.ronn → lib/bundler/man/bundle-info.1.ronn} +0 -0
- data/bundler/{man/bundle-init.ronn → lib/bundler/man/bundle-init.1.ronn} +0 -0
- data/bundler/{man/bundle-inject.ronn → lib/bundler/man/bundle-inject.1.ronn} +0 -0
- data/bundler/{man/bundle-install.ronn → lib/bundler/man/bundle-install.1.ronn} +25 -3
- data/bundler/{man/bundle-list.ronn → lib/bundler/man/bundle-list.1.ronn} +6 -6
- data/bundler/{man/bundle-lock.ronn → lib/bundler/man/bundle-lock.1.ronn} +0 -0
- data/bundler/{man/bundle-open.ronn → lib/bundler/man/bundle-open.1.ronn} +0 -0
- data/bundler/{man/bundle-outdated.ronn → lib/bundler/man/bundle-outdated.1.ronn} +0 -0
- data/bundler/{man/bundle-platform.ronn → lib/bundler/man/bundle-platform.1.ronn} +0 -0
- data/bundler/{man/bundle-pristine.ronn → lib/bundler/man/bundle-pristine.1.ronn} +0 -0
- data/bundler/{man/bundle-remove.ronn → lib/bundler/man/bundle-remove.1.ronn} +0 -0
- data/bundler/{man/bundle-show.ronn → lib/bundler/man/bundle-show.1.ronn} +0 -0
- data/bundler/{man/bundle-update.ronn → lib/bundler/man/bundle-update.1.ronn} +0 -0
- data/bundler/{man/bundle-viz.ronn → lib/bundler/man/bundle-viz.1.ronn} +0 -0
- data/bundler/{man/bundle.ronn → lib/bundler/man/bundle.1.ronn} +0 -0
- data/bundler/{man → lib/bundler/man}/gemfile.5.ronn +4 -4
- data/bundler/lib/bundler/mirror.rb +2 -2
- data/bundler/lib/bundler/plugin.rb +30 -5
- data/bundler/lib/bundler/plugin/api/source.rb +1 -1
- data/bundler/lib/bundler/plugin/dsl.rb +1 -1
- data/bundler/lib/bundler/plugin/index.rb +10 -1
- data/bundler/lib/bundler/plugin/installer.rb +1 -1
- data/bundler/lib/bundler/plugin/installer/rubygems.rb +1 -1
- data/bundler/lib/bundler/plugin/source_list.rb +1 -1
- data/bundler/lib/bundler/psyched_yaml.rb +0 -15
- data/bundler/lib/bundler/remote_specification.rb +5 -2
- data/bundler/lib/bundler/resolver.rb +32 -10
- data/bundler/lib/bundler/resolver/spec_group.rb +27 -6
- data/bundler/lib/bundler/retry.rb +1 -1
- data/bundler/lib/bundler/ruby_version.rb +1 -1
- data/bundler/lib/bundler/rubygems_ext.rb +53 -9
- data/bundler/lib/bundler/rubygems_gem_installer.rb +3 -9
- data/bundler/lib/bundler/rubygems_integration.rb +25 -54
- data/bundler/lib/bundler/runtime.rb +4 -14
- data/bundler/lib/bundler/settings.rb +49 -46
- data/bundler/lib/bundler/shared_helpers.rb +2 -2
- data/bundler/lib/bundler/similarity_detector.rb +1 -1
- data/bundler/lib/bundler/source.rb +1 -1
- data/bundler/lib/bundler/source/git.rb +5 -5
- data/bundler/lib/bundler/source/git/git_proxy.rb +57 -60
- data/bundler/lib/bundler/source/path.rb +7 -3
- data/bundler/lib/bundler/source/path/installer.rb +8 -10
- data/bundler/lib/bundler/source/rubygems.rb +13 -16
- data/bundler/lib/bundler/source/rubygems/remote.rb +1 -1
- data/bundler/lib/bundler/source_list.rb +2 -2
- data/bundler/lib/bundler/spec_set.rb +2 -1
- data/bundler/lib/bundler/stub_specification.rb +17 -5
- data/bundler/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +57 -47
- data/bundler/lib/bundler/templates/newgem/Gemfile.tt +9 -1
- data/bundler/lib/bundler/templates/newgem/README.md.tt +1 -2
- data/bundler/lib/bundler/templates/newgem/Rakefile.tt +19 -5
- data/bundler/lib/bundler/templates/newgem/bin/console.tt +1 -0
- data/bundler/lib/bundler/templates/newgem/circleci/config.yml.tt +13 -0
- data/bundler/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +2 -0
- data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +18 -0
- data/bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt +9 -0
- data/bundler/lib/bundler/templates/newgem/lib/newgem.rb.tt +4 -2
- data/bundler/lib/bundler/templates/newgem/lib/newgem/version.rb.tt +2 -0
- data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +14 -6
- data/bundler/lib/bundler/templates/newgem/rubocop.yml.tt +10 -0
- data/bundler/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt +2 -0
- data/bundler/lib/bundler/templates/newgem/spec/spec_helper.rb.tt +2 -1
- data/bundler/lib/bundler/templates/newgem/test/{newgem_test.rb.tt → minitest/newgem_test.rb.tt} +2 -0
- data/bundler/lib/bundler/templates/newgem/test/{test_helper.rb.tt → minitest/test_helper.rb.tt} +2 -0
- data/bundler/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt +15 -0
- data/bundler/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt +6 -0
- data/bundler/lib/bundler/ui/shell.rb +5 -5
- data/bundler/lib/bundler/uri_credentials_filter.rb +3 -1
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -1
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +34 -1
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +2 -2
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +1 -1
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +1 -1
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +38 -40
- data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +75 -189
- data/bundler/lib/bundler/vendor/thor/lib/thor.rb +0 -7
- data/bundler/lib/bundler/vendor/thor/lib/thor/actions/create_link.rb +2 -1
- data/bundler/lib/bundler/vendor/thor/lib/thor/base.rb +9 -0
- data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
- data/bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +154 -0
- data/bundler/lib/bundler/vendored_persistent.rb +0 -7
- data/bundler/lib/bundler/vendored_tmpdir.rb +4 -0
- data/bundler/lib/bundler/version.rb +1 -1
- data/bundler/lib/bundler/worker.rb +1 -1
- data/bundler/lib/bundler/yaml_serializer.rb +1 -1
- data/bundler/man/bundle-add.1 +1 -1
- data/bundler/man/bundle-binstubs.1 +5 -3
- data/bundler/man/bundle-cache.1 +1 -1
- data/bundler/man/bundle-check.1 +1 -1
- data/bundler/man/bundle-clean.1 +1 -1
- data/bundler/man/bundle-config.1 +16 -25
- data/bundler/man/bundle-doctor.1 +1 -1
- data/bundler/man/bundle-exec.1 +1 -1
- data/bundler/man/bundle-gem.1 +25 -3
- data/bundler/man/bundle-info.1 +1 -1
- data/bundler/man/bundle-init.1 +1 -1
- data/bundler/man/bundle-inject.1 +1 -1
- data/bundler/man/bundle-install.1 +30 -3
- data/bundler/man/bundle-list.1 +7 -7
- data/bundler/man/bundle-lock.1 +1 -1
- data/bundler/man/bundle-open.1 +1 -1
- data/bundler/man/bundle-outdated.1 +1 -1
- data/bundler/man/bundle-platform.1 +1 -1
- data/bundler/man/bundle-pristine.1 +1 -1
- data/bundler/man/bundle-remove.1 +1 -1
- data/bundler/man/bundle-show.1 +1 -1
- data/bundler/man/bundle-update.1 +1 -1
- data/bundler/man/bundle-viz.1 +1 -1
- data/bundler/man/bundle.1 +1 -1
- data/bundler/man/gemfile.5 +4 -4
- data/lib/rubygems.rb +88 -164
- data/lib/rubygems/available_set.rb +4 -6
- data/lib/rubygems/basic_specification.rb +11 -9
- data/lib/rubygems/bundler_version_finder.rb +14 -9
- data/lib/rubygems/command.rb +17 -17
- data/lib/rubygems/command_manager.rb +5 -6
- data/lib/rubygems/commands/build_command.rb +40 -20
- data/lib/rubygems/commands/cert_command.rb +2 -10
- data/lib/rubygems/commands/check_command.rb +0 -2
- data/lib/rubygems/commands/cleanup_command.rb +11 -7
- data/lib/rubygems/commands/contents_command.rb +4 -6
- data/lib/rubygems/commands/dependency_command.rb +6 -8
- data/lib/rubygems/commands/environment_command.rb +1 -3
- data/lib/rubygems/commands/fetch_command.rb +2 -4
- data/lib/rubygems/commands/generate_index_command.rb +0 -2
- data/lib/rubygems/commands/help_command.rb +4 -4
- data/lib/rubygems/commands/info_command.rb +8 -5
- data/lib/rubygems/commands/install_command.rb +3 -5
- data/lib/rubygems/commands/list_command.rb +8 -7
- data/lib/rubygems/commands/lock_command.rb +1 -3
- data/lib/rubygems/commands/mirror_command.rb +0 -2
- data/lib/rubygems/commands/open_command.rb +0 -4
- data/lib/rubygems/commands/outdated_command.rb +0 -2
- data/lib/rubygems/commands/owner_command.rb +9 -3
- data/lib/rubygems/commands/pristine_command.rb +11 -5
- data/lib/rubygems/commands/push_command.rb +10 -46
- data/lib/rubygems/commands/query_command.rb +14 -344
- data/lib/rubygems/commands/rdoc_command.rb +0 -2
- data/lib/rubygems/commands/search_command.rb +7 -7
- data/lib/rubygems/commands/server_command.rb +3 -1
- data/lib/rubygems/commands/setup_command.rb +131 -58
- data/lib/rubygems/commands/signin_command.rb +0 -2
- data/lib/rubygems/commands/signout_command.rb +0 -2
- data/lib/rubygems/commands/sources_command.rb +9 -7
- data/lib/rubygems/commands/specification_command.rb +8 -4
- data/lib/rubygems/commands/stale_command.rb +1 -3
- data/lib/rubygems/commands/uninstall_command.rb +1 -3
- data/lib/rubygems/commands/unpack_command.rb +1 -3
- data/lib/rubygems/commands/update_command.rb +59 -14
- data/lib/rubygems/commands/which_command.rb +0 -2
- data/lib/rubygems/commands/yank_command.rb +4 -6
- data/lib/rubygems/config_file.rb +11 -4
- data/lib/rubygems/core_ext/kernel_require.rb +29 -36
- data/lib/rubygems/core_ext/kernel_warn.rb +12 -13
- data/lib/rubygems/defaults.rb +101 -7
- data/lib/rubygems/dependency.rb +3 -8
- data/lib/rubygems/dependency_installer.rb +5 -78
- data/lib/rubygems/dependency_list.rb +7 -9
- data/lib/rubygems/deprecate.rb +46 -1
- data/lib/rubygems/doctor.rb +4 -4
- data/lib/rubygems/errors.rb +3 -14
- data/lib/rubygems/exceptions.rb +2 -33
- data/lib/rubygems/ext.rb +6 -6
- data/lib/rubygems/ext/build_error.rb +2 -0
- data/lib/rubygems/ext/builder.rb +14 -35
- data/lib/rubygems/ext/cmake_builder.rb +5 -7
- data/lib/rubygems/ext/configure_builder.rb +4 -6
- data/lib/rubygems/ext/ext_conf_builder.rb +21 -19
- data/lib/rubygems/ext/rake_builder.rb +3 -5
- data/lib/rubygems/gem_runner.rb +3 -10
- data/lib/rubygems/gemcutter_utilities.rb +91 -15
- data/lib/rubygems/indexer.rb +1 -22
- data/lib/rubygems/install_update_options.rb +7 -7
- data/lib/rubygems/installer.rb +59 -57
- data/lib/rubygems/installer_test_case.rb +25 -11
- data/lib/rubygems/installer_uninstaller_utils.rb +24 -0
- data/lib/rubygems/local_remote_options.rb +1 -1
- data/lib/rubygems/mock_gem_ui.rb +0 -6
- data/lib/rubygems/name_tuple.rb +3 -7
- data/lib/rubygems/openssl.rb +7 -0
- data/lib/rubygems/package.rb +14 -25
- data/lib/rubygems/package/digest_io.rb +0 -2
- data/lib/rubygems/package/file_source.rb +0 -2
- data/lib/rubygems/package/io_source.rb +0 -2
- data/lib/rubygems/package/old.rb +1 -3
- data/lib/rubygems/package/tar_header.rb +4 -6
- data/lib/rubygems/package/tar_reader.rb +0 -3
- data/lib/rubygems/package/tar_reader/entry.rb +0 -3
- data/lib/rubygems/package/tar_test_case.rb +2 -4
- data/lib/rubygems/package/tar_writer.rb +2 -12
- data/lib/rubygems/package_task.rb +1 -7
- data/lib/rubygems/path_support.rb +1 -3
- data/lib/rubygems/platform.rb +21 -12
- data/lib/rubygems/psych_tree.rb +0 -2
- data/lib/rubygems/query_utils.rb +353 -0
- data/lib/rubygems/rdoc.rb +0 -12
- data/lib/rubygems/remote_fetcher.rb +10 -27
- data/lib/rubygems/request.rb +4 -11
- data/lib/rubygems/request/connection_pools.rb +1 -5
- data/lib/rubygems/request/http_pool.rb +0 -2
- data/lib/rubygems/request/https_pool.rb +0 -2
- data/lib/rubygems/request_set.rb +5 -7
- data/lib/rubygems/request_set/gem_dependency_api.rb +5 -7
- data/lib/rubygems/request_set/lockfile.rb +8 -12
- data/lib/rubygems/request_set/lockfile/parser.rb +0 -2
- data/lib/rubygems/request_set/lockfile/tokenizer.rb +1 -3
- data/lib/rubygems/requirement.rb +20 -21
- data/lib/rubygems/resolver.rb +8 -11
- data/lib/rubygems/resolver/activation_request.rb +9 -3
- data/lib/rubygems/resolver/api_set.rb +4 -6
- data/lib/rubygems/resolver/api_specification.rb +21 -8
- data/lib/rubygems/resolver/best_set.rb +0 -2
- data/lib/rubygems/resolver/composed_set.rb +3 -5
- data/lib/rubygems/resolver/conflict.rb +2 -4
- data/lib/rubygems/resolver/current_set.rb +0 -2
- data/lib/rubygems/resolver/dependency_request.rb +1 -3
- data/lib/rubygems/resolver/git_set.rb +0 -2
- data/lib/rubygems/resolver/git_specification.rb +0 -2
- data/lib/rubygems/resolver/index_set.rb +1 -3
- data/lib/rubygems/resolver/index_specification.rb +11 -2
- data/lib/rubygems/resolver/installed_specification.rb +0 -2
- data/lib/rubygems/resolver/installer_set.rb +4 -7
- data/lib/rubygems/resolver/local_specification.rb +0 -2
- data/lib/rubygems/resolver/lock_set.rb +2 -4
- data/lib/rubygems/resolver/lock_specification.rb +0 -2
- data/lib/rubygems/resolver/molinillo/lib/molinillo.rb +6 -5
- data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/resolution_state.rb +7 -0
- data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/specification_provider.rb +1 -0
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph.rb +39 -5
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/action.rb +1 -0
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +2 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +2 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +2 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +2 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/log.rb +7 -6
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/set_payload.rb +2 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/tag.rb +4 -3
- data/lib/rubygems/resolver/molinillo/lib/molinillo/dependency_graph/vertex.rb +43 -10
- data/lib/rubygems/resolver/molinillo/lib/molinillo/errors.rb +75 -7
- data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +2 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/modules/specification_provider.rb +1 -0
- data/lib/rubygems/resolver/molinillo/lib/molinillo/modules/ui.rb +3 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/resolution.rb +506 -165
- data/lib/rubygems/resolver/molinillo/lib/molinillo/resolver.rb +3 -2
- data/lib/rubygems/resolver/molinillo/lib/molinillo/state.rb +8 -4
- data/lib/rubygems/resolver/requirement_list.rb +0 -2
- data/lib/rubygems/resolver/set.rb +0 -2
- data/lib/rubygems/resolver/source_set.rb +0 -2
- data/lib/rubygems/resolver/spec_specification.rb +0 -2
- data/lib/rubygems/resolver/specification.rb +1 -3
- data/lib/rubygems/resolver/stats.rb +0 -2
- data/lib/rubygems/resolver/vendor_set.rb +0 -2
- data/lib/rubygems/resolver/vendor_specification.rb +0 -2
- data/lib/rubygems/s3_uri_signer.rb +2 -8
- data/lib/rubygems/safe_yaml.rb +4 -4
- data/lib/rubygems/security.rb +27 -34
- data/lib/rubygems/security/policy.rb +4 -8
- data/lib/rubygems/security/signer.rb +5 -7
- data/lib/rubygems/security/trust_dir.rb +1 -3
- data/lib/rubygems/server.rb +10 -12
- data/lib/rubygems/source.rb +13 -7
- data/lib/rubygems/source/git.rb +7 -8
- data/lib/rubygems/source/installed.rb +0 -2
- data/lib/rubygems/source/local.rb +2 -4
- data/lib/rubygems/source/lock.rb +0 -2
- data/lib/rubygems/source/specific_file.rb +0 -2
- data/lib/rubygems/source/vendor.rb +0 -2
- data/lib/rubygems/source_list.rb +4 -7
- data/lib/rubygems/spec_fetcher.rb +19 -18
- data/lib/rubygems/specification.rb +113 -126
- data/lib/rubygems/specification_policy.rb +88 -30
- data/lib/rubygems/ssl_certs/{index.rubygems.org → rubygems.org}/GlobalSignRootCA.pem +0 -0
- data/lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem +21 -0
- data/lib/rubygems/stub_specification.rb +1 -5
- data/lib/rubygems/syck_hack.rb +0 -2
- data/lib/rubygems/test_case.rb +105 -132
- data/lib/rubygems/test_utilities.rb +6 -14
- data/lib/rubygems/uninstaller.rb +35 -16
- data/lib/rubygems/uri_formatter.rb +2 -3
- data/lib/rubygems/uri_parser.rb +0 -2
- data/lib/rubygems/user_interaction.rb +1 -26
- data/lib/rubygems/util.rb +8 -2
- data/lib/rubygems/util/licenses.rb +4 -6
- data/lib/rubygems/util/list.rb +0 -2
- data/lib/rubygems/validator.rb +1 -3
- data/lib/rubygems/version.rb +4 -6
- data/lib/rubygems/version_option.rb +6 -0
- data/rubygems-update.gemspec +2 -2
- data/setup.rb +2 -7
- data/test/rubygems/plugin/load/rubygems_plugin.rb +0 -2
- data/test/rubygems/rubygems/commands/crash_command.rb +0 -2
- data/test/rubygems/rubygems_plugin.rb +0 -2
- data/test/rubygems/specifications/bar-0.0.2.gemspec +0 -2
- data/test/rubygems/specifications/rubyforge-0.0.1.gemspec +12 -0
- data/test/rubygems/test_bundled_ca.rb +42 -45
- data/test/rubygems/test_config.rb +0 -2
- data/test/rubygems/test_deprecate.rb +40 -7
- data/test/rubygems/test_gem.rb +91 -100
- data/test/rubygems/test_gem_available_set.rb +3 -5
- data/test/rubygems/test_gem_bundler_version_finder.rb +19 -3
- data/test/rubygems/test_gem_command.rb +24 -7
- data/test/rubygems/test_gem_command_manager.rb +36 -5
- data/test/rubygems/test_gem_commands_build_command.rb +250 -15
- data/test/rubygems/test_gem_commands_cert_command.rb +4 -6
- data/test/rubygems/test_gem_commands_check_command.rb +0 -2
- data/test/rubygems/test_gem_commands_cleanup_command.rb +14 -5
- data/test/rubygems/test_gem_commands_contents_command.rb +50 -19
- data/test/rubygems/test_gem_commands_dependency_command.rb +0 -2
- data/test/rubygems/test_gem_commands_environment_command.rb +21 -23
- data/test/rubygems/test_gem_commands_fetch_command.rb +0 -2
- data/test/rubygems/test_gem_commands_generate_index_command.rb +1 -7
- data/test/rubygems/test_gem_commands_help_command.rb +15 -4
- data/test/rubygems/test_gem_commands_info_command.rb +6 -8
- data/test/rubygems/test_gem_commands_install_command.rb +32 -34
- data/test/rubygems/test_gem_commands_list_command.rb +0 -2
- data/test/rubygems/test_gem_commands_lock_command.rb +0 -2
- data/test/rubygems/test_gem_commands_mirror.rb +1 -3
- data/test/rubygems/test_gem_commands_open_command.rb +4 -6
- data/test/rubygems/test_gem_commands_outdated_command.rb +0 -2
- data/test/rubygems/test_gem_commands_owner_command.rb +59 -5
- data/test/rubygems/test_gem_commands_pristine_command.rb +43 -12
- data/test/rubygems/test_gem_commands_push_command.rb +38 -9
- data/test/rubygems/test_gem_commands_query_command.rb +12 -12
- data/test/rubygems/test_gem_commands_search_command.rb +0 -2
- data/test/rubygems/test_gem_commands_server_command.rb +0 -2
- data/test/rubygems/test_gem_commands_setup_command.rb +165 -124
- data/test/rubygems/test_gem_commands_signin_command.rb +33 -9
- data/test/rubygems/test_gem_commands_signout_command.rb +0 -7
- data/test/rubygems/test_gem_commands_sources_command.rb +99 -3
- data/test/rubygems/test_gem_commands_specification_command.rb +46 -20
- data/test/rubygems/test_gem_commands_stale_command.rb +0 -2
- data/test/rubygems/test_gem_commands_uninstall_command.rb +1 -3
- data/test/rubygems/test_gem_commands_unpack_command.rb +0 -2
- data/test/rubygems/test_gem_commands_update_command.rb +116 -7
- data/test/rubygems/test_gem_commands_which_command.rb +3 -5
- data/test/rubygems/test_gem_commands_yank_command.rb +44 -8
- data/test/rubygems/test_gem_config_file.rb +7 -12
- data/test/rubygems/test_gem_dependency.rb +0 -2
- data/test/rubygems/test_gem_dependency_installer.rb +90 -193
- data/test/rubygems/test_gem_dependency_list.rb +10 -12
- data/test/rubygems/test_gem_dependency_resolution_error.rb +1 -3
- data/test/rubygems/test_gem_doctor.rb +28 -2
- data/test/rubygems/test_gem_ext_builder.rb +26 -47
- data/test/rubygems/test_gem_ext_cmake_builder.rb +16 -23
- data/test/rubygems/test_gem_ext_configure_builder.rb +4 -20
- data/test/rubygems/test_gem_ext_ext_conf_builder.rb +9 -29
- data/test/rubygems/test_gem_ext_rake_builder.rb +14 -24
- data/test/rubygems/test_gem_gem_runner.rb +44 -1
- data/test/rubygems/test_gem_gemcutter_utilities.rb +8 -5
- data/test/rubygems/test_gem_impossible_dependencies_error.rb +0 -2
- data/test/rubygems/test_gem_indexer.rb +9 -15
- data/test/rubygems/test_gem_install_update_options.rb +14 -4
- data/test/rubygems/test_gem_installer.rb +256 -59
- data/test/rubygems/test_gem_local_remote_options.rb +0 -2
- data/test/rubygems/test_gem_name_tuple.rb +0 -2
- data/test/rubygems/test_gem_package.rb +38 -31
- data/test/rubygems/test_gem_package_old.rb +4 -6
- data/test/rubygems/test_gem_package_tar_header.rb +18 -1
- data/test/rubygems/test_gem_package_tar_reader.rb +0 -2
- data/test/rubygems/test_gem_package_tar_reader_entry.rb +0 -2
- data/test/rubygems/test_gem_package_tar_writer.rb +4 -6
- data/test/rubygems/test_gem_package_task.rb +46 -13
- data/test/rubygems/test_gem_path_support.rb +0 -2
- data/test/rubygems/test_gem_platform.rb +63 -6
- data/test/rubygems/test_gem_rdoc.rb +0 -2
- data/test/rubygems/test_gem_remote_fetcher.rb +168 -211
- data/test/rubygems/test_gem_request.rb +13 -17
- data/test/rubygems/test_gem_request_connection_pools.rb +0 -4
- data/test/rubygems/test_gem_request_set.rb +20 -22
- data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +3 -5
- data/test/rubygems/test_gem_request_set_lockfile.rb +4 -6
- data/test/rubygems/test_gem_request_set_lockfile_parser.rb +9 -11
- data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +118 -120
- data/test/rubygems/test_gem_requirement.rb +10 -4
- data/test/rubygems/test_gem_resolver.rb +6 -8
- data/test/rubygems/test_gem_resolver_activation_request.rb +0 -2
- data/test/rubygems/test_gem_resolver_api_set.rb +11 -13
- data/test/rubygems/test_gem_resolver_api_specification.rb +0 -2
- data/test/rubygems/test_gem_resolver_best_set.rb +2 -4
- data/test/rubygems/test_gem_resolver_composed_set.rb +0 -2
- data/test/rubygems/test_gem_resolver_conflict.rb +1 -3
- data/test/rubygems/test_gem_resolver_dependency_request.rb +0 -2
- data/test/rubygems/test_gem_resolver_git_set.rb +0 -2
- data/test/rubygems/test_gem_resolver_git_specification.rb +0 -2
- data/test/rubygems/test_gem_resolver_index_set.rb +2 -4
- data/test/rubygems/test_gem_resolver_index_specification.rb +0 -2
- data/test/rubygems/test_gem_resolver_installed_specification.rb +0 -2
- data/test/rubygems/test_gem_resolver_installer_set.rb +7 -9
- data/test/rubygems/test_gem_resolver_local_specification.rb +0 -2
- data/test/rubygems/test_gem_resolver_lock_set.rb +3 -5
- data/test/rubygems/test_gem_resolver_lock_specification.rb +0 -2
- data/test/rubygems/test_gem_resolver_requirement_list.rb +0 -2
- data/test/rubygems/test_gem_resolver_specification.rb +0 -4
- data/test/rubygems/test_gem_resolver_vendor_set.rb +1 -3
- data/test/rubygems/test_gem_resolver_vendor_specification.rb +0 -2
- data/test/rubygems/test_gem_security.rb +22 -24
- data/test/rubygems/test_gem_security_policy.rb +7 -12
- data/test/rubygems/test_gem_security_signer.rb +10 -12
- data/test/rubygems/test_gem_security_trust_dir.rb +4 -6
- data/test/rubygems/test_gem_server.rb +10 -14
- data/test/rubygems/test_gem_silent_ui.rb +0 -2
- data/test/rubygems/test_gem_source.rb +17 -16
- data/test/rubygems/test_gem_source_fetch_problem.rb +0 -2
- data/test/rubygems/test_gem_source_git.rb +12 -13
- data/test/rubygems/test_gem_source_installed.rb +7 -9
- data/test/rubygems/test_gem_source_list.rb +1 -2
- data/test/rubygems/test_gem_source_local.rb +8 -10
- data/test/rubygems/test_gem_source_lock.rb +10 -12
- data/test/rubygems/test_gem_source_specific_file.rb +7 -9
- data/test/rubygems/test_gem_source_subpath_problem.rb +49 -0
- data/test/rubygems/test_gem_source_vendor.rb +7 -9
- data/test/rubygems/test_gem_spec_fetcher.rb +11 -4
- data/test/rubygems/test_gem_specification.rb +176 -130
- data/test/rubygems/test_gem_stream_ui.rb +3 -3
- data/test/rubygems/test_gem_stub_specification.rb +4 -7
- data/test/rubygems/test_gem_text.rb +1 -3
- data/test/rubygems/test_gem_uninstaller.rb +134 -12
- data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +0 -2
- data/test/rubygems/test_gem_uri_formatter.rb +0 -2
- data/test/rubygems/test_gem_util.rb +7 -7
- data/test/rubygems/test_gem_validator.rb +1 -3
- data/test/rubygems/test_gem_version.rb +1 -3
- data/test/rubygems/test_gem_version_option.rb +1 -3
- data/test/rubygems/test_kernel.rb +25 -10
- data/test/rubygems/test_project_sanity.rb +7 -2
- data/test/rubygems/test_remote_fetch_error.rb +0 -2
- data/test/rubygems/test_require.rb +291 -56
- metadata +66 -100
- data/.bundle/config +0 -2
- data/.rubocop.yml +0 -91
- data/Gemfile +0 -8
- data/Gemfile.lock +0 -43
- data/bundler/CODE_OF_CONDUCT.md +0 -136
- data/bundler/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb +0 -26
- data/bundler/man/bundle-add.1.txt +0 -58
- data/bundler/man/bundle-binstubs.1.txt +0 -48
- data/bundler/man/bundle-cache.1.txt +0 -78
- data/bundler/man/bundle-check.1.txt +0 -33
- data/bundler/man/bundle-clean.1.txt +0 -26
- data/bundler/man/bundle-config.1.txt +0 -528
- data/bundler/man/bundle-doctor.1.txt +0 -44
- data/bundler/man/bundle-exec.1.txt +0 -178
- data/bundler/man/bundle-gem.1.txt +0 -91
- data/bundler/man/bundle-info.1.txt +0 -21
- data/bundler/man/bundle-init.1.txt +0 -34
- data/bundler/man/bundle-inject.1.txt +0 -32
- data/bundler/man/bundle-install.1.txt +0 -401
- data/bundler/man/bundle-list.1.txt +0 -43
- data/bundler/man/bundle-lock.1.txt +0 -93
- data/bundler/man/bundle-open.1.txt +0 -29
- data/bundler/man/bundle-outdated.1.txt +0 -131
- data/bundler/man/bundle-platform.1.txt +0 -57
- data/bundler/man/bundle-pristine.1.txt +0 -44
- data/bundler/man/bundle-remove.1.txt +0 -34
- data/bundler/man/bundle-show.1.txt +0 -27
- data/bundler/man/bundle-update.1.txt +0 -390
- data/bundler/man/bundle-viz.1.txt +0 -39
- data/bundler/man/bundle.1.txt +0 -116
- data/bundler/man/gemfile.5.txt +0 -649
- data/lib/rubygems/source_local.rb +0 -7
- data/lib/rubygems/source_specific_file.rb +0 -6
- data/lib/rubygems/ssl_certs/rubygems.global.ssl.fastly.net/DigiCertHighAssuranceEVRootCA.pem +0 -23
- data/lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem +0 -25
- data/lib/ubygems.rb +0 -14
- data/tmp/.keep +0 -0
- data/util/CL2notes +0 -55
- data/util/bisect +0 -10
- data/util/ci.sh +0 -62
- data/util/cops/deprecations.rb +0 -52
- data/util/create_certs.rb +0 -171
- data/util/create_certs.sh +0 -27
- data/util/create_encrypted_key.rb +0 -16
- data/util/generate_spdx_license_list.rb +0 -63
- data/util/patch_with_prs.rb +0 -77
- data/util/rubocop +0 -8
- data/util/update_bundled_ca_certificates.rb +0 -139
- data/util/update_changelog.rb +0 -67
data/Manifest.txt
CHANGED
@@ -1,9 +1,5 @@
|
|
1
|
-
.bundle/config
|
2
|
-
.rubocop.yml
|
3
1
|
CODE_OF_CONDUCT.md
|
4
2
|
CONTRIBUTING.md
|
5
|
-
Gemfile
|
6
|
-
Gemfile.lock
|
7
3
|
History.txt
|
8
4
|
LICENSE.txt
|
9
5
|
MAINTAINERS.txt
|
@@ -16,7 +12,6 @@ UPGRADING.md
|
|
16
12
|
bin/gem
|
17
13
|
bin/update_rubygems
|
18
14
|
bundler/CHANGELOG.md
|
19
|
-
bundler/CODE_OF_CONDUCT.md
|
20
15
|
bundler/LICENSE.md
|
21
16
|
bundler/README.md
|
22
17
|
bundler/UPGRADING.md
|
@@ -37,6 +32,7 @@ bundler/lib/bundler/cli/config.rb
|
|
37
32
|
bundler/lib/bundler/cli/console.rb
|
38
33
|
bundler/lib/bundler/cli/doctor.rb
|
39
34
|
bundler/lib/bundler/cli/exec.rb
|
35
|
+
bundler/lib/bundler/cli/fund.rb
|
40
36
|
bundler/lib/bundler/cli/gem.rb
|
41
37
|
bundler/lib/bundler/cli/info.rb
|
42
38
|
bundler/lib/bundler/cli/init.rb
|
@@ -93,6 +89,32 @@ bundler/lib/bundler/installer/standalone.rb
|
|
93
89
|
bundler/lib/bundler/lazy_specification.rb
|
94
90
|
bundler/lib/bundler/lockfile_generator.rb
|
95
91
|
bundler/lib/bundler/lockfile_parser.rb
|
92
|
+
bundler/lib/bundler/man/.document
|
93
|
+
bundler/lib/bundler/man/bundle-add.1.ronn
|
94
|
+
bundler/lib/bundler/man/bundle-binstubs.1.ronn
|
95
|
+
bundler/lib/bundler/man/bundle-cache.1.ronn
|
96
|
+
bundler/lib/bundler/man/bundle-check.1.ronn
|
97
|
+
bundler/lib/bundler/man/bundle-clean.1.ronn
|
98
|
+
bundler/lib/bundler/man/bundle-config.1.ronn
|
99
|
+
bundler/lib/bundler/man/bundle-doctor.1.ronn
|
100
|
+
bundler/lib/bundler/man/bundle-exec.1.ronn
|
101
|
+
bundler/lib/bundler/man/bundle-gem.1.ronn
|
102
|
+
bundler/lib/bundler/man/bundle-info.1.ronn
|
103
|
+
bundler/lib/bundler/man/bundle-init.1.ronn
|
104
|
+
bundler/lib/bundler/man/bundle-inject.1.ronn
|
105
|
+
bundler/lib/bundler/man/bundle-install.1.ronn
|
106
|
+
bundler/lib/bundler/man/bundle-list.1.ronn
|
107
|
+
bundler/lib/bundler/man/bundle-lock.1.ronn
|
108
|
+
bundler/lib/bundler/man/bundle-open.1.ronn
|
109
|
+
bundler/lib/bundler/man/bundle-outdated.1.ronn
|
110
|
+
bundler/lib/bundler/man/bundle-platform.1.ronn
|
111
|
+
bundler/lib/bundler/man/bundle-pristine.1.ronn
|
112
|
+
bundler/lib/bundler/man/bundle-remove.1.ronn
|
113
|
+
bundler/lib/bundler/man/bundle-show.1.ronn
|
114
|
+
bundler/lib/bundler/man/bundle-update.1.ronn
|
115
|
+
bundler/lib/bundler/man/bundle-viz.1.ronn
|
116
|
+
bundler/lib/bundler/man/bundle.1.ronn
|
117
|
+
bundler/lib/bundler/man/gemfile.5.ronn
|
96
118
|
bundler/lib/bundler/match_platform.rb
|
97
119
|
bundler/lib/bundler/mirror.rb
|
98
120
|
bundler/lib/bundler/plugin.rb
|
@@ -147,19 +169,25 @@ bundler/lib/bundler/templates/newgem/README.md.tt
|
|
147
169
|
bundler/lib/bundler/templates/newgem/Rakefile.tt
|
148
170
|
bundler/lib/bundler/templates/newgem/bin/console.tt
|
149
171
|
bundler/lib/bundler/templates/newgem/bin/setup.tt
|
172
|
+
bundler/lib/bundler/templates/newgem/circleci/config.yml.tt
|
150
173
|
bundler/lib/bundler/templates/newgem/exe/newgem.tt
|
151
174
|
bundler/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt
|
152
175
|
bundler/lib/bundler/templates/newgem/ext/newgem/newgem.c.tt
|
153
176
|
bundler/lib/bundler/templates/newgem/ext/newgem/newgem.h.tt
|
177
|
+
bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt
|
154
178
|
bundler/lib/bundler/templates/newgem/gitignore.tt
|
179
|
+
bundler/lib/bundler/templates/newgem/gitlab-ci.yml.tt
|
155
180
|
bundler/lib/bundler/templates/newgem/lib/newgem.rb.tt
|
156
181
|
bundler/lib/bundler/templates/newgem/lib/newgem/version.rb.tt
|
157
182
|
bundler/lib/bundler/templates/newgem/newgem.gemspec.tt
|
158
183
|
bundler/lib/bundler/templates/newgem/rspec.tt
|
184
|
+
bundler/lib/bundler/templates/newgem/rubocop.yml.tt
|
159
185
|
bundler/lib/bundler/templates/newgem/spec/newgem_spec.rb.tt
|
160
186
|
bundler/lib/bundler/templates/newgem/spec/spec_helper.rb.tt
|
161
|
-
bundler/lib/bundler/templates/newgem/test/newgem_test.rb.tt
|
162
|
-
bundler/lib/bundler/templates/newgem/test/test_helper.rb.tt
|
187
|
+
bundler/lib/bundler/templates/newgem/test/minitest/newgem_test.rb.tt
|
188
|
+
bundler/lib/bundler/templates/newgem/test/minitest/test_helper.rb.tt
|
189
|
+
bundler/lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt
|
190
|
+
bundler/lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt
|
163
191
|
bundler/lib/bundler/templates/newgem/travis.yml.tt
|
164
192
|
bundler/lib/bundler/ui.rb
|
165
193
|
bundler/lib/bundler/ui/rg_proxy.rb
|
@@ -172,7 +200,6 @@ bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb
|
|
172
200
|
bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/version.rb
|
173
201
|
bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb
|
174
202
|
bundler/lib/bundler/vendor/molinillo/lib/molinillo.rb
|
175
|
-
bundler/lib/bundler/vendor/molinillo/lib/molinillo/compatibility.rb
|
176
203
|
bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb
|
177
204
|
bundler/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb
|
178
205
|
bundler/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb
|
@@ -227,6 +254,7 @@ bundler/lib/bundler/vendor/thor/lib/thor/shell/color.rb
|
|
227
254
|
bundler/lib/bundler/vendor/thor/lib/thor/shell/html.rb
|
228
255
|
bundler/lib/bundler/vendor/thor/lib/thor/util.rb
|
229
256
|
bundler/lib/bundler/vendor/thor/lib/thor/version.rb
|
257
|
+
bundler/lib/bundler/vendor/tmpdir/lib/tmpdir.rb
|
230
258
|
bundler/lib/bundler/vendor/uri/lib/uri.rb
|
231
259
|
bundler/lib/bundler/vendor/uri/lib/uri/common.rb
|
232
260
|
bundler/lib/bundler/vendor/uri/lib/uri/file.rb
|
@@ -244,6 +272,7 @@ bundler/lib/bundler/vendored_fileutils.rb
|
|
244
272
|
bundler/lib/bundler/vendored_molinillo.rb
|
245
273
|
bundler/lib/bundler/vendored_persistent.rb
|
246
274
|
bundler/lib/bundler/vendored_thor.rb
|
275
|
+
bundler/lib/bundler/vendored_tmpdir.rb
|
247
276
|
bundler/lib/bundler/vendored_uri.rb
|
248
277
|
bundler/lib/bundler/version.rb
|
249
278
|
bundler/lib/bundler/version_ranges.rb
|
@@ -251,80 +280,30 @@ bundler/lib/bundler/vlad.rb
|
|
251
280
|
bundler/lib/bundler/worker.rb
|
252
281
|
bundler/lib/bundler/yaml_serializer.rb
|
253
282
|
bundler/man/bundle-add.1
|
254
|
-
bundler/man/bundle-add.1.txt
|
255
|
-
bundler/man/bundle-add.ronn
|
256
283
|
bundler/man/bundle-binstubs.1
|
257
|
-
bundler/man/bundle-binstubs.1.txt
|
258
|
-
bundler/man/bundle-binstubs.ronn
|
259
284
|
bundler/man/bundle-cache.1
|
260
|
-
bundler/man/bundle-cache.1.txt
|
261
|
-
bundler/man/bundle-cache.ronn
|
262
285
|
bundler/man/bundle-check.1
|
263
|
-
bundler/man/bundle-check.1.txt
|
264
|
-
bundler/man/bundle-check.ronn
|
265
286
|
bundler/man/bundle-clean.1
|
266
|
-
bundler/man/bundle-clean.1.txt
|
267
|
-
bundler/man/bundle-clean.ronn
|
268
287
|
bundler/man/bundle-config.1
|
269
|
-
bundler/man/bundle-config.1.txt
|
270
|
-
bundler/man/bundle-config.ronn
|
271
288
|
bundler/man/bundle-doctor.1
|
272
|
-
bundler/man/bundle-doctor.1.txt
|
273
|
-
bundler/man/bundle-doctor.ronn
|
274
289
|
bundler/man/bundle-exec.1
|
275
|
-
bundler/man/bundle-exec.1.txt
|
276
|
-
bundler/man/bundle-exec.ronn
|
277
290
|
bundler/man/bundle-gem.1
|
278
|
-
bundler/man/bundle-gem.1.txt
|
279
|
-
bundler/man/bundle-gem.ronn
|
280
291
|
bundler/man/bundle-info.1
|
281
|
-
bundler/man/bundle-info.1.txt
|
282
|
-
bundler/man/bundle-info.ronn
|
283
292
|
bundler/man/bundle-init.1
|
284
|
-
bundler/man/bundle-init.1.txt
|
285
|
-
bundler/man/bundle-init.ronn
|
286
293
|
bundler/man/bundle-inject.1
|
287
|
-
bundler/man/bundle-inject.1.txt
|
288
|
-
bundler/man/bundle-inject.ronn
|
289
294
|
bundler/man/bundle-install.1
|
290
|
-
bundler/man/bundle-install.1.txt
|
291
|
-
bundler/man/bundle-install.ronn
|
292
295
|
bundler/man/bundle-list.1
|
293
|
-
bundler/man/bundle-list.1.txt
|
294
|
-
bundler/man/bundle-list.ronn
|
295
296
|
bundler/man/bundle-lock.1
|
296
|
-
bundler/man/bundle-lock.1.txt
|
297
|
-
bundler/man/bundle-lock.ronn
|
298
297
|
bundler/man/bundle-open.1
|
299
|
-
bundler/man/bundle-open.1.txt
|
300
|
-
bundler/man/bundle-open.ronn
|
301
298
|
bundler/man/bundle-outdated.1
|
302
|
-
bundler/man/bundle-outdated.1.txt
|
303
|
-
bundler/man/bundle-outdated.ronn
|
304
299
|
bundler/man/bundle-platform.1
|
305
|
-
bundler/man/bundle-platform.1.txt
|
306
|
-
bundler/man/bundle-platform.ronn
|
307
300
|
bundler/man/bundle-pristine.1
|
308
|
-
bundler/man/bundle-pristine.1.txt
|
309
|
-
bundler/man/bundle-pristine.ronn
|
310
301
|
bundler/man/bundle-remove.1
|
311
|
-
bundler/man/bundle-remove.1.txt
|
312
|
-
bundler/man/bundle-remove.ronn
|
313
302
|
bundler/man/bundle-show.1
|
314
|
-
bundler/man/bundle-show.1.txt
|
315
|
-
bundler/man/bundle-show.ronn
|
316
303
|
bundler/man/bundle-update.1
|
317
|
-
bundler/man/bundle-update.1.txt
|
318
|
-
bundler/man/bundle-update.ronn
|
319
304
|
bundler/man/bundle-viz.1
|
320
|
-
bundler/man/bundle-viz.1.txt
|
321
|
-
bundler/man/bundle-viz.ronn
|
322
305
|
bundler/man/bundle.1
|
323
|
-
bundler/man/bundle.1.txt
|
324
|
-
bundler/man/bundle.ronn
|
325
306
|
bundler/man/gemfile.5
|
326
|
-
bundler/man/gemfile.5.ronn
|
327
|
-
bundler/man/gemfile.5.txt
|
328
307
|
bundler/man/index.txt
|
329
308
|
hide_lib_for_update/note.txt
|
330
309
|
lib/rubygems.rb
|
@@ -396,9 +375,11 @@ lib/rubygems/install_message.rb
|
|
396
375
|
lib/rubygems/install_update_options.rb
|
397
376
|
lib/rubygems/installer.rb
|
398
377
|
lib/rubygems/installer_test_case.rb
|
378
|
+
lib/rubygems/installer_uninstaller_utils.rb
|
399
379
|
lib/rubygems/local_remote_options.rb
|
400
380
|
lib/rubygems/mock_gem_ui.rb
|
401
381
|
lib/rubygems/name_tuple.rb
|
382
|
+
lib/rubygems/openssl.rb
|
402
383
|
lib/rubygems/package.rb
|
403
384
|
lib/rubygems/package/digest_io.rb
|
404
385
|
lib/rubygems/package/file_source.rb
|
@@ -415,6 +396,7 @@ lib/rubygems/path_support.rb
|
|
415
396
|
lib/rubygems/platform.rb
|
416
397
|
lib/rubygems/psych_additions.rb
|
417
398
|
lib/rubygems/psych_tree.rb
|
399
|
+
lib/rubygems/query_utils.rb
|
418
400
|
lib/rubygems/rdoc.rb
|
419
401
|
lib/rubygems/remote_fetcher.rb
|
420
402
|
lib/rubygems/request.rb
|
@@ -491,15 +473,12 @@ lib/rubygems/source/lock.rb
|
|
491
473
|
lib/rubygems/source/specific_file.rb
|
492
474
|
lib/rubygems/source/vendor.rb
|
493
475
|
lib/rubygems/source_list.rb
|
494
|
-
lib/rubygems/source_local.rb
|
495
|
-
lib/rubygems/source_specific_file.rb
|
496
476
|
lib/rubygems/spec_fetcher.rb
|
497
477
|
lib/rubygems/specification.rb
|
498
478
|
lib/rubygems/specification_policy.rb
|
499
479
|
lib/rubygems/ssl_certs/.document
|
500
|
-
lib/rubygems/ssl_certs/
|
501
|
-
lib/rubygems/ssl_certs/rubygems.
|
502
|
-
lib/rubygems/ssl_certs/rubygems.org/AddTrustExternalCARoot.pem
|
480
|
+
lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem
|
481
|
+
lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
|
503
482
|
lib/rubygems/stub_specification.rb
|
504
483
|
lib/rubygems/syck_hack.rb
|
505
484
|
lib/rubygems/test_case.rb
|
@@ -516,7 +495,6 @@ lib/rubygems/util/list.rb
|
|
516
495
|
lib/rubygems/validator.rb
|
517
496
|
lib/rubygems/version.rb
|
518
497
|
lib/rubygems/version_option.rb
|
519
|
-
lib/ubygems.rb
|
520
498
|
rubygems-update.gemspec
|
521
499
|
setup.rb
|
522
500
|
test/rubygems/alternate_cert.pem
|
@@ -566,6 +544,7 @@ test/rubygems/sff/discover.rb
|
|
566
544
|
test/rubygems/simple_gem.rb
|
567
545
|
test/rubygems/specifications/bar-0.0.2.gemspec
|
568
546
|
test/rubygems/specifications/foo-0.0.1-x86-mswin32.gemspec
|
547
|
+
test/rubygems/specifications/rubyforge-0.0.1.gemspec
|
569
548
|
test/rubygems/ssl_cert.pem
|
570
549
|
test/rubygems/ssl_key.pem
|
571
550
|
test/rubygems/test_bundled_ca.rb
|
@@ -683,6 +662,7 @@ test/rubygems/test_gem_source_list.rb
|
|
683
662
|
test/rubygems/test_gem_source_local.rb
|
684
663
|
test/rubygems/test_gem_source_lock.rb
|
685
664
|
test/rubygems/test_gem_source_specific_file.rb
|
665
|
+
test/rubygems/test_gem_source_subpath_problem.rb
|
686
666
|
test/rubygems/test_gem_source_vendor.rb
|
687
667
|
test/rubygems/test_gem_spec_fetcher.rb
|
688
668
|
test/rubygems/test_gem_specification.rb
|
@@ -702,16 +682,3 @@ test/rubygems/test_remote_fetch_error.rb
|
|
702
682
|
test/rubygems/test_require.rb
|
703
683
|
test/rubygems/wrong_key_cert.pem
|
704
684
|
test/rubygems/wrong_key_cert_32.pem
|
705
|
-
tmp/.keep
|
706
|
-
util/CL2notes
|
707
|
-
util/bisect
|
708
|
-
util/ci.sh
|
709
|
-
util/cops/deprecations.rb
|
710
|
-
util/create_certs.rb
|
711
|
-
util/create_certs.sh
|
712
|
-
util/create_encrypted_key.rb
|
713
|
-
util/generate_spdx_license_list.rb
|
714
|
-
util/patch_with_prs.rb
|
715
|
-
util/rubocop
|
716
|
-
util/update_bundled_ca_certificates.rb
|
717
|
-
util/update_changelog.rb
|
data/POLICIES.md
CHANGED
@@ -2,15 +2,8 @@
|
|
2
2
|
|
3
3
|
Contributions to RubyGems are made via GitHub pull requests, which must be
|
4
4
|
approved by a project committer other than the author. To approve a PR, a
|
5
|
-
maintainer can
|
6
|
-
|
7
|
-
automatically create a merge commit, test the merge, and land the PR if the
|
8
|
-
merge commit passes the tests.
|
9
|
-
|
10
|
-
This process guarantees that our release branches always have passing tests,
|
11
|
-
and reduces siloing of information to a single contributor. For a full list of
|
12
|
-
possible commands, see [the Bundlerbot
|
13
|
-
documentation](https://bors.tech/documentation/).
|
5
|
+
maintainer can use GitHubs PR review feature. After that, if the original author
|
6
|
+
is happy to merge the PR, she can press the merge button.
|
14
7
|
|
15
8
|
## Long-Term Support
|
16
9
|
|
data/README.md
CHANGED
@@ -6,7 +6,7 @@ A package (also known as a library) contains a set of functionality that can be
|
|
6
6
|
We call these packages "gems" and RubyGems is a tool to install, create, manage and load these packages in your Ruby environment.
|
7
7
|
|
8
8
|
RubyGems is also a client for [RubyGems.org](https://rubygems.org), a public repository of Gems that allows you to publish a Gem
|
9
|
-
that can be shared and used by other developers. See our guide on publishing a Gem at [guides.rubygems.org](
|
9
|
+
that can be shared and used by other developers. See our guide on publishing a Gem at [guides.rubygems.org](https://guides.rubygems.org/publishing/)
|
10
10
|
|
11
11
|
## Getting Started
|
12
12
|
|
@@ -23,7 +23,7 @@ Finally, inside your Ruby program, load the Nokogiri gem and start parsing your
|
|
23
23
|
|
24
24
|
Nokogiri.XML('<h1>Hello World</h1>')
|
25
25
|
|
26
|
-
For more information about how to use RubyGems, see our RubyGems basics guide at [guides.rubygems.org](
|
26
|
+
For more information about how to use RubyGems, see our RubyGems basics guide at [guides.rubygems.org](https://guides.rubygems.org/rubygems-basics/)
|
27
27
|
|
28
28
|
## Requirements
|
29
29
|
|
@@ -40,7 +40,7 @@ with your OS's package manager before installing RubyGems manually.
|
|
40
40
|
If you would like to manually install RubyGems:
|
41
41
|
|
42
42
|
* Download from https://rubygems.org/pages/download, unpack, and `cd` into RubyGems' src
|
43
|
-
* OR clone this repository and `cd` into the repository
|
43
|
+
* OR clone this repository and `cd` into the repository
|
44
44
|
|
45
45
|
Install RubyGems by running:
|
46
46
|
|
@@ -65,10 +65,10 @@ See [UPGRADING](UPGRADING.md) for more details and alternative instructions.
|
|
65
65
|
## Documentation
|
66
66
|
|
67
67
|
RubyGems uses [rdoc](https://github.com/rdoc/rdoc) for documentation. A compiled set of the docs
|
68
|
-
can be viewed online at [rubydoc](
|
68
|
+
can be viewed online at [rubydoc](https://www.rubydoc.info/github/rubygems/rubygems).
|
69
69
|
|
70
70
|
RubyGems also provides a comprehensive set of guides which covers numerous topics such as
|
71
|
-
creating a new gem, security practices and other resources at
|
71
|
+
creating a new gem, security practices and other resources at https://guides.rubygems.org
|
72
72
|
|
73
73
|
## Getting Help
|
74
74
|
|
data/Rakefile
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
|
1
|
+
RakeFileUtils.verbose_flag = false
|
2
2
|
|
3
3
|
require 'rubygems'
|
4
4
|
require 'rubygems/package_task'
|
@@ -6,9 +6,10 @@ require "rake/testtask"
|
|
6
6
|
require 'psych'
|
7
7
|
|
8
8
|
desc "Setup Rubygems dev environment"
|
9
|
-
task :setup
|
10
|
-
|
11
|
-
sh "
|
9
|
+
task :setup do
|
10
|
+
version = File.read("dev_gems.rb.lock").split(/BUNDLED WITH\n /).last
|
11
|
+
sh "gem install bundler:#{version}"
|
12
|
+
sh "bundle install --gemfile=dev_gems.rb"
|
12
13
|
end
|
13
14
|
|
14
15
|
desc "Setup git hooks"
|
@@ -18,7 +19,7 @@ end
|
|
18
19
|
|
19
20
|
Rake::TestTask.new do |t|
|
20
21
|
t.ruby_opts = %w[-w]
|
21
|
-
t.ruby_opts << '-rdevkit' if
|
22
|
+
t.ruby_opts << '-rdevkit' if RbConfig::CONFIG['host_os'].include?('mingw')
|
22
23
|
|
23
24
|
t.libs << "test"
|
24
25
|
t.libs << "bundler/lib"
|
@@ -38,9 +39,9 @@ RDoc::Task.new :rdoc => 'docs', :clobber_rdoc => 'clobber_docs' do |doc|
|
|
38
39
|
doc.title = "RubyGems #{v} API Documentation"
|
39
40
|
|
40
41
|
rdoc_files = Rake::FileList.new %w[lib bundler/lib]
|
41
|
-
rdoc_files.add %w[History.txt LICENSE.txt MIT.txt CODE_OF_CONDUCT.md CONTRIBUTING.
|
42
|
-
MAINTAINERS.txt Manifest.txt POLICIES.
|
43
|
-
bundler/
|
42
|
+
rdoc_files.add %w[History.txt LICENSE.txt MIT.txt CODE_OF_CONDUCT.md CONTRIBUTING.md
|
43
|
+
MAINTAINERS.txt Manifest.txt POLICIES.md README.md UPGRADING.md bundler/CHANGELOG.md
|
44
|
+
bundler/doc/contributing/README.md bundler/LICENSE.md bundler/README.md
|
44
45
|
hide_lib_for_update/note.txt].map(&:freeze)
|
45
46
|
|
46
47
|
doc.rdoc_files = rdoc_files
|
@@ -52,6 +53,7 @@ begin
|
|
52
53
|
require "automatiek"
|
53
54
|
|
54
55
|
Automatiek::RakeTask.new("molinillo") do |lib|
|
56
|
+
lib.version = "0.7.0"
|
55
57
|
lib.download = { :github => "https://github.com/CocoaPods/Molinillo" }
|
56
58
|
lib.namespace = "Molinillo"
|
57
59
|
lib.prefix = "Gem::Resolver"
|
@@ -63,21 +65,23 @@ rescue LoadError
|
|
63
65
|
end
|
64
66
|
end
|
65
67
|
|
66
|
-
|
67
|
-
|
68
|
-
|
68
|
+
namespace :rubocop do
|
69
|
+
desc "Run rubocop for RubyGems. Pass positional arguments, e.g. -a, as Rake arguments."
|
70
|
+
task(:rubygems) do |_, args|
|
71
|
+
sh "util/rubocop", *args
|
72
|
+
end
|
73
|
+
|
74
|
+
desc "Run rubocop for Bundler. Pass positional arguments, e.g. -a, as Rake arguments."
|
75
|
+
task(:bundler) do |_, args|
|
76
|
+
sh "bundler/bin/rubocop", *args
|
77
|
+
end
|
69
78
|
end
|
70
79
|
|
80
|
+
task rubocop: %w[rubocop:rubygems rubocop:bundler]
|
81
|
+
|
71
82
|
desc "Run a test suite bisection"
|
72
83
|
task(:bisect) do
|
73
|
-
|
74
|
-
Integer(ENV["SEED"])
|
75
|
-
rescue
|
76
|
-
abort "Specify the failing seed as the SEED environment variable"
|
77
|
-
end
|
78
|
-
|
79
|
-
gemdir = `gem env gemdir`.chomp
|
80
|
-
sh "SEED=#{seed} MTB_VERBOSE=2 util/bisect -Ilib:bundler/lib:test:#{gemdir}/gems/minitest-server-1.0.5/lib test"
|
84
|
+
sh "util/bisect"
|
81
85
|
end
|
82
86
|
|
83
87
|
# --------------------------------------------------------------------
|
@@ -97,7 +101,7 @@ end
|
|
97
101
|
|
98
102
|
desc "Install rubygems to local system"
|
99
103
|
task :install => [:clear_package, :package] do
|
100
|
-
sh "ruby -Ilib bin/gem install pkg/rubygems-update-#{v}.gem && update_rubygems"
|
104
|
+
sh "ruby -Ilib bin/gem install --no-document pkg/rubygems-update-#{v}.gem && update_rubygems --no-document"
|
101
105
|
end
|
102
106
|
|
103
107
|
desc "Clears previously built package"
|
@@ -105,6 +109,13 @@ task :clear_package do
|
|
105
109
|
rm_rf "pkg"
|
106
110
|
end
|
107
111
|
|
112
|
+
desc "Generates the changelog for a specific target version"
|
113
|
+
task :generate_changelog, [:version] do |_t, opts|
|
114
|
+
require_relative "util/changelog"
|
115
|
+
|
116
|
+
Changelog.for_rubygems(opts[:version]).cut!
|
117
|
+
end
|
118
|
+
|
108
119
|
desc "Release rubygems-#{v}"
|
109
120
|
task :release => :prerelease do
|
110
121
|
Rake::Task["package"].invoke
|
@@ -151,7 +162,7 @@ file "pkg/rubygems-#{v}.tgz" => "pkg/rubygems-#{v}" do
|
|
151
162
|
sh "7z a -ttar rubygems-#{v}.tar rubygems-#{v}"
|
152
163
|
sh "7z a -tgzip rubygems-#{v}.tgz rubygems-#{v}.tar"
|
153
164
|
else
|
154
|
-
sh "tar -czf rubygems-#{v}.tgz rubygems-#{v}"
|
165
|
+
sh "tar -czf rubygems-#{v}.tgz --owner=rubygems:0 --group=rubygems:0 rubygems-#{v}"
|
155
166
|
end
|
156
167
|
end
|
157
168
|
end
|
@@ -167,7 +178,7 @@ task :upload_to_s3 do
|
|
167
178
|
s3 = Aws::S3::Resource.new(region:'us-west-2')
|
168
179
|
%w[zip tgz].each do |ext|
|
169
180
|
obj = s3.bucket('oregon.production.s3.rubygems.org').object("rubygems/rubygems-#{v}.#{ext}")
|
170
|
-
obj.upload_file("pkg/rubygems-#{v}.#{ext}")
|
181
|
+
obj.upload_file("pkg/rubygems-#{v}.#{ext}", acl: 'public-read')
|
171
182
|
end
|
172
183
|
end
|
173
184
|
|
@@ -268,50 +279,8 @@ namespace 'blog' do
|
|
268
279
|
name = `git config --get user.name`.strip
|
269
280
|
email = `git config --get user.email`.strip
|
270
281
|
|
271
|
-
|
272
|
-
|
273
|
-
history.force_encoding Encoding::UTF_8
|
274
|
-
|
275
|
-
_, change_log, = history.split %r%^===\s*\d.*%, 3
|
276
|
-
|
277
|
-
change_types = []
|
278
|
-
|
279
|
-
lines = change_log.strip.lines
|
280
|
-
change_log = []
|
281
|
-
|
282
|
-
while line = lines.shift do
|
283
|
-
case line
|
284
|
-
when /(^[A-Z].*)/ then
|
285
|
-
change_types << $1
|
286
|
-
change_log << "_#{$1}_\n"
|
287
|
-
when /^\*/ then
|
288
|
-
entry = [line.strip]
|
289
|
-
|
290
|
-
while /^ \S/ =~ lines.first do
|
291
|
-
entry << lines.shift.strip
|
292
|
-
end
|
293
|
-
|
294
|
-
change_log << "#{entry.join ' '}\n"
|
295
|
-
else
|
296
|
-
change_log << line
|
297
|
-
end
|
298
|
-
end
|
299
|
-
|
300
|
-
change_log = change_log.join
|
301
|
-
|
302
|
-
change_types = change_types.map do |change_type|
|
303
|
-
change_type.downcase.tr '^a-z ', ''
|
304
|
-
end
|
305
|
-
|
306
|
-
last_change_type = change_types.pop
|
307
|
-
|
308
|
-
if change_types.empty?
|
309
|
-
change_types = ''
|
310
|
-
else
|
311
|
-
change_types = change_types.join(', ') << ' and '
|
312
|
-
end
|
313
|
-
|
314
|
-
change_types << last_change_type
|
282
|
+
require_relative "util/changelog"
|
283
|
+
history = Changelog.for_rubygems(v.to_s)
|
315
284
|
|
316
285
|
require 'tempfile'
|
317
286
|
|
@@ -324,7 +293,7 @@ author: #{name}
|
|
324
293
|
author_email: #{email}
|
325
294
|
---
|
326
295
|
|
327
|
-
RubyGems #{v} includes #{
|
296
|
+
RubyGems #{v} includes #{history.change_types_for_blog}.
|
328
297
|
|
329
298
|
To update to the latest RubyGems you can run:
|
330
299
|
|
@@ -334,13 +303,13 @@ If you need to upgrade or downgrade please follow the [how to upgrade/downgrade
|
|
334
303
|
RubyGems][upgrading] instructions. To install RubyGems by hand see the
|
335
304
|
[Download RubyGems][download] page.
|
336
305
|
|
337
|
-
#{
|
306
|
+
#{history.release_notes_for_blog.join("\n")}
|
338
307
|
|
339
308
|
SHA256 Checksums:
|
340
309
|
|
341
310
|
#{checksums}
|
342
311
|
|
343
|
-
[download]:
|
312
|
+
[download]: https://rubygems.org/pages/download
|
344
313
|
[upgrading]: http://docs.seattlerb.org/rubygems/UPGRADING_rdoc.html
|
345
314
|
|
346
315
|
ANNOUNCEMENT
|
@@ -380,42 +349,35 @@ end
|
|
380
349
|
|
381
350
|
module Rubygems
|
382
351
|
class ProjectFiles
|
383
|
-
|
384
352
|
def self.all
|
385
353
|
files = []
|
386
|
-
exclude = %r
|
387
|
-
tracked_files = `git ls-files
|
354
|
+
exclude = %r{\A(?:\.|dev_gems|bundler/(?!lib|man|exe|[^/]+\.md|bundler.gemspec)|util/)}
|
355
|
+
tracked_files = `git ls-files`.split("\n")
|
388
356
|
|
389
357
|
tracked_files.each do |path|
|
390
358
|
next unless File.file?(path)
|
391
359
|
next if path =~ exclude
|
392
|
-
files << path
|
360
|
+
files << path
|
393
361
|
end
|
394
362
|
|
395
|
-
files
|
363
|
+
files.sort
|
396
364
|
end
|
397
|
-
|
398
365
|
end
|
399
366
|
end
|
400
367
|
|
401
368
|
desc "Update the manifest to reflect what's on disk"
|
402
369
|
task :update_manifest do
|
403
|
-
File.open('Manifest.txt', 'w') {|f| f.puts(Rubygems::ProjectFiles.all
|
370
|
+
File.open('Manifest.txt', 'w') {|f| f.puts(Rubygems::ProjectFiles.all) }
|
404
371
|
end
|
405
372
|
|
406
373
|
desc "Check the manifest is up to date"
|
407
374
|
task :check_manifest do
|
408
|
-
if File.read("Manifest.txt").split
|
375
|
+
if File.read("Manifest.txt").split != Rubygems::ProjectFiles.all
|
409
376
|
abort "Manifest is out of date. Run `rake update_manifest` to sync it"
|
410
377
|
end
|
411
378
|
end
|
412
379
|
|
413
380
|
namespace :bundler do
|
414
|
-
desc "Initialize bundler submodule"
|
415
|
-
task :checkout do
|
416
|
-
sh "git submodule update --init"
|
417
|
-
end
|
418
|
-
|
419
381
|
task :build_metadata do
|
420
382
|
chdir('bundler') { sh "rake build_metadata" }
|
421
383
|
end
|