rubygems-update 3.5.3 → 3.7.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 +1410 -686
- data/CODE_OF_CONDUCT.md +79 -28
- data/CONTRIBUTING.md +4 -226
- data/Manifest.txt +107 -83
- data/README.md +16 -11
- data/SECURITY.md +7 -0
- data/bundler/CHANGELOG.md +1525 -931
- data/bundler/README.md +9 -9
- data/bundler/bundler.gemspec +2 -2
- data/bundler/lib/bundler/build_metadata.rb +10 -11
- data/bundler/lib/bundler/checksum.rb +22 -12
- data/bundler/lib/bundler/cli/add.rb +3 -1
- data/bundler/lib/bundler/cli/binstubs.rb +1 -1
- data/bundler/lib/bundler/cli/check.rb +3 -3
- data/bundler/lib/bundler/cli/common.rb +1 -1
- data/bundler/lib/bundler/cli/config.rb +2 -2
- data/bundler/lib/bundler/cli/console.rb +8 -10
- data/bundler/lib/bundler/cli/doctor/diagnose.rb +167 -0
- data/bundler/lib/bundler/cli/doctor/ssl.rb +249 -0
- data/bundler/lib/bundler/cli/doctor.rb +27 -151
- data/bundler/lib/bundler/cli/exec.rb +1 -0
- data/bundler/lib/bundler/cli/fund.rb +1 -1
- data/bundler/lib/bundler/cli/gem.rb +74 -46
- data/bundler/lib/bundler/cli/info.rb +6 -6
- data/bundler/lib/bundler/cli/inject.rb +3 -3
- data/bundler/lib/bundler/cli/install.rb +19 -10
- data/bundler/lib/bundler/cli/issue.rb +3 -3
- data/bundler/lib/bundler/cli/lock.rb +32 -11
- data/bundler/lib/bundler/cli/outdated.rb +23 -23
- data/bundler/lib/bundler/cli/plugin.rb +3 -2
- data/bundler/lib/bundler/cli/pristine.rb +1 -1
- data/bundler/lib/bundler/cli/show.rb +3 -3
- data/bundler/lib/bundler/cli/update.rb +3 -3
- data/bundler/lib/bundler/cli.rb +75 -145
- data/bundler/lib/bundler/compact_index_client/cache.rb +48 -73
- data/bundler/lib/bundler/compact_index_client/cache_file.rb +0 -5
- data/bundler/lib/bundler/compact_index_client/parser.rb +84 -0
- data/bundler/lib/bundler/compact_index_client/updater.rb +6 -16
- data/bundler/lib/bundler/compact_index_client.rb +52 -85
- data/bundler/lib/bundler/constants.rb +8 -1
- data/bundler/lib/bundler/current_ruby.rb +48 -34
- data/bundler/lib/bundler/definition.rb +501 -328
- data/bundler/lib/bundler/dependency.rb +93 -47
- data/bundler/lib/bundler/dsl.rb +147 -103
- data/bundler/lib/bundler/endpoint_specification.rb +30 -3
- data/bundler/lib/bundler/env.rb +1 -1
- data/bundler/lib/bundler/environment_preserver.rb +5 -23
- data/bundler/lib/bundler/errors.rb +53 -5
- data/bundler/lib/bundler/feature_flag.rb +18 -18
- data/bundler/lib/bundler/fetcher/compact_index.rb +16 -25
- data/bundler/lib/bundler/fetcher/dependency.rb +2 -1
- data/bundler/lib/bundler/fetcher/downloader.rb +34 -8
- data/bundler/lib/bundler/fetcher.rb +63 -26
- data/bundler/lib/bundler/force_platform.rb +0 -2
- data/bundler/lib/bundler/friendly_errors.rb +3 -2
- data/bundler/lib/bundler/gem_helper.rb +1 -1
- data/bundler/lib/bundler/gem_version_promoter.rb +42 -40
- data/bundler/lib/bundler/index.rb +7 -2
- data/bundler/lib/bundler/injector.rb +14 -16
- data/bundler/lib/bundler/inline.rb +42 -17
- data/bundler/lib/bundler/installer/gem_installer.rb +4 -3
- data/bundler/lib/bundler/installer/parallel_installer.rb +3 -2
- data/bundler/lib/bundler/installer/standalone.rb +2 -5
- data/bundler/lib/bundler/installer.rb +22 -45
- data/bundler/lib/bundler/lazy_specification.rb +121 -48
- data/bundler/lib/bundler/lockfile_generator.rb +1 -1
- data/bundler/lib/bundler/lockfile_parser.rb +36 -9
- data/bundler/lib/bundler/man/bundle-add.1 +44 -27
- data/bundler/lib/bundler/man/bundle-add.1.ronn +52 -23
- data/bundler/lib/bundler/man/bundle-binstubs.1 +9 -6
- data/bundler/lib/bundler/man/bundle-binstubs.1.ronn +6 -3
- data/bundler/lib/bundler/man/bundle-cache.1 +32 -4
- data/bundler/lib/bundler/man/bundle-cache.1.ronn +31 -2
- data/bundler/lib/bundler/man/bundle-check.1 +7 -5
- data/bundler/lib/bundler/man/bundle-check.1.ronn +7 -2
- data/bundler/lib/bundler/man/bundle-clean.1 +3 -3
- data/bundler/lib/bundler/man/bundle-config.1 +180 -138
- data/bundler/lib/bundler/man/bundle-config.1.ronn +96 -99
- data/bundler/lib/bundler/man/bundle-console.1 +4 -6
- data/bundler/lib/bundler/man/bundle-console.1.ronn +2 -7
- data/bundler/lib/bundler/man/bundle-doctor.1 +46 -7
- data/bundler/lib/bundler/man/bundle-doctor.1.ronn +49 -5
- data/bundler/lib/bundler/man/bundle-env.1 +9 -0
- data/bundler/lib/bundler/man/bundle-env.1.ronn +10 -0
- data/bundler/lib/bundler/man/bundle-exec.1 +9 -6
- data/bundler/lib/bundler/man/bundle-exec.1.ronn +6 -3
- data/bundler/lib/bundler/man/bundle-fund.1 +22 -0
- data/bundler/lib/bundler/man/bundle-fund.1.ronn +25 -0
- data/bundler/lib/bundler/man/bundle-gem.1 +69 -28
- data/bundler/lib/bundler/man/bundle-gem.1.ronn +42 -6
- data/bundler/lib/bundler/man/bundle-help.1 +3 -3
- data/bundler/lib/bundler/man/bundle-info.1 +7 -4
- data/bundler/lib/bundler/man/bundle-info.1.ronn +6 -2
- data/bundler/lib/bundler/man/bundle-init.1 +5 -5
- data/bundler/lib/bundler/man/bundle-init.1.ronn +3 -2
- data/bundler/lib/bundler/man/bundle-inject.1 +13 -5
- data/bundler/lib/bundler/man/bundle-inject.1.ronn +10 -2
- data/bundler/lib/bundler/man/bundle-install.1 +20 -17
- data/bundler/lib/bundler/man/bundle-install.1.ronn +26 -23
- data/bundler/lib/bundler/man/bundle-issue.1 +45 -0
- data/bundler/lib/bundler/man/bundle-issue.1.ronn +37 -0
- data/bundler/lib/bundler/man/bundle-licenses.1 +9 -0
- data/bundler/lib/bundler/man/bundle-licenses.1.ronn +10 -0
- data/bundler/lib/bundler/man/bundle-list.1 +3 -3
- data/bundler/lib/bundler/man/bundle-list.1.ronn +4 -1
- data/bundler/lib/bundler/man/bundle-lock.1 +23 -8
- data/bundler/lib/bundler/man/bundle-lock.1.ronn +25 -4
- data/bundler/lib/bundler/man/bundle-open.1 +4 -4
- data/bundler/lib/bundler/man/bundle-open.1.ronn +2 -1
- data/bundler/lib/bundler/man/bundle-outdated.1 +10 -7
- data/bundler/lib/bundler/man/bundle-outdated.1.ronn +8 -4
- data/bundler/lib/bundler/man/bundle-platform.1 +3 -3
- data/bundler/lib/bundler/man/bundle-plugin.1 +9 -6
- data/bundler/lib/bundler/man/bundle-plugin.1.ronn +7 -3
- data/bundler/lib/bundler/man/bundle-pristine.1 +3 -3
- data/bundler/lib/bundler/man/bundle-pristine.1.ronn +1 -1
- data/bundler/lib/bundler/man/bundle-remove.1 +3 -3
- data/bundler/lib/bundler/man/bundle-remove.1.ronn +1 -1
- data/bundler/lib/bundler/man/bundle-show.1 +7 -4
- data/bundler/lib/bundler/man/bundle-show.1.ronn +4 -0
- data/bundler/lib/bundler/man/bundle-update.1 +17 -11
- data/bundler/lib/bundler/man/bundle-update.1.ronn +17 -9
- data/bundler/lib/bundler/man/bundle-version.1 +3 -3
- data/bundler/lib/bundler/man/bundle-viz.1 +6 -6
- data/bundler/lib/bundler/man/bundle-viz.1.ronn +7 -3
- data/bundler/lib/bundler/man/bundle.1 +3 -3
- data/bundler/lib/bundler/man/gemfile.5 +7 -5
- data/bundler/lib/bundler/man/gemfile.5.ronn +8 -2
- data/bundler/lib/bundler/man/index.txt +4 -0
- data/bundler/lib/bundler/match_metadata.rb +13 -0
- data/bundler/lib/bundler/match_platform.rb +31 -12
- data/bundler/lib/bundler/materialization.rb +59 -0
- data/bundler/lib/bundler/mirror.rb +3 -3
- data/bundler/lib/bundler/plugin/api/source.rb +5 -4
- data/bundler/lib/bundler/plugin/events.rb +24 -0
- data/bundler/lib/bundler/plugin/index.rb +5 -1
- data/bundler/lib/bundler/plugin/installer/path.rb +26 -0
- data/bundler/lib/bundler/plugin/installer.rb +37 -17
- data/bundler/lib/bundler/plugin/source_list.rb +4 -4
- data/bundler/lib/bundler/plugin.rb +21 -2
- data/bundler/lib/bundler/process_lock.rb +10 -14
- data/bundler/lib/bundler/remote_specification.rb +6 -1
- data/bundler/lib/bundler/resolver/base.rb +14 -3
- data/bundler/lib/bundler/resolver/candidate.rb +18 -27
- data/bundler/lib/bundler/resolver/package.rb +20 -3
- data/bundler/lib/bundler/resolver/spec_group.rb +22 -27
- data/bundler/lib/bundler/resolver/strategy.rb +40 -0
- data/bundler/lib/bundler/resolver.rb +114 -52
- data/bundler/lib/bundler/retry.rb +1 -1
- data/bundler/lib/bundler/ruby_dsl.rb +12 -3
- data/bundler/lib/bundler/ruby_version.rb +7 -1
- data/bundler/lib/bundler/rubygems_ext.rb +303 -150
- data/bundler/lib/bundler/rubygems_gem_installer.rb +40 -5
- data/bundler/lib/bundler/rubygems_integration.rb +40 -73
- data/bundler/lib/bundler/runtime.rb +48 -35
- data/bundler/lib/bundler/self_manager.rb +36 -26
- data/bundler/lib/bundler/settings/validator.rb +0 -23
- data/bundler/lib/bundler/settings.rb +36 -27
- data/bundler/lib/bundler/setup.rb +6 -0
- data/bundler/lib/bundler/shared_helpers.rb +45 -25
- data/bundler/lib/bundler/source/gemspec.rb +1 -4
- data/bundler/lib/bundler/source/git/git_proxy.rb +26 -9
- data/bundler/lib/bundler/source/git.rb +113 -41
- data/bundler/lib/bundler/source/metadata.rb +4 -3
- data/bundler/lib/bundler/source/path.rb +14 -18
- data/bundler/lib/bundler/source/rubygems/remote.rb +12 -4
- data/bundler/lib/bundler/source/rubygems.rb +54 -48
- data/bundler/lib/bundler/source.rb +2 -0
- data/bundler/lib/bundler/source_list.rb +54 -12
- data/bundler/lib/bundler/source_map.rb +1 -1
- data/bundler/lib/bundler/spec_set.rb +227 -103
- data/bundler/lib/bundler/stub_specification.rb +29 -2
- data/bundler/lib/bundler/templates/Executable +0 -11
- data/bundler/lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt +77 -29
- data/bundler/lib/bundler/templates/newgem/Gemfile.tt +1 -3
- data/bundler/lib/bundler/templates/newgem/README.md.tt +7 -3
- data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +17 -15
- data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +14 -12
- data/bundler/lib/bundler/templates/newgem/rubocop.yml.tt +0 -5
- data/bundler/lib/bundler/ui/shell.rb +26 -4
- data/bundler/lib/bundler/ui/silent.rb +12 -1
- data/bundler/lib/bundler/uri_credentials_filter.rb +3 -3
- data/bundler/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +53 -3
- 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 +11 -0
- data/bundler/lib/bundler/vendor/fileutils/lib/fileutils.rb +15 -13
- data/bundler/lib/bundler/vendor/net-http-persistent/README.rdoc +1 -1
- data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb +2 -1
- data/bundler/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +134 -57
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +4 -24
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +1 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/strategy.rb +42 -0
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +20 -8
- data/bundler/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +17 -29
- data/bundler/lib/bundler/vendor/securerandom/COPYING +56 -0
- data/bundler/lib/bundler/vendor/securerandom/lib/securerandom.rb +102 -0
- data/bundler/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +3 -5
- data/bundler/lib/bundler/vendor/thor/lib/thor/group.rb +11 -0
- data/bundler/lib/bundler/vendor/thor/lib/thor/parser/argument.rb +1 -4
- data/bundler/lib/bundler/vendor/thor/lib/thor/parser/option.rb +2 -2
- data/bundler/lib/bundler/vendor/thor/lib/thor/parser/options.rb +2 -1
- data/bundler/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +9 -9
- data/bundler/lib/bundler/vendor/thor/lib/thor/shell/html.rb +1 -1
- data/bundler/lib/bundler/vendor/thor/lib/thor/shell/table_printer.rb +5 -21
- data/bundler/lib/bundler/vendor/thor/lib/thor/util.rb +1 -1
- data/bundler/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
- data/bundler/lib/bundler/vendor/thor/lib/thor.rb +11 -0
- data/bundler/lib/bundler/vendor/uri/COPYING +56 -0
- data/bundler/lib/bundler/vendor/uri/lib/uri/common.rb +43 -16
- data/bundler/lib/bundler/vendor/uri/lib/uri/file.rb +3 -3
- data/bundler/lib/bundler/vendor/uri/lib/uri/ftp.rb +1 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri/generic.rb +28 -37
- data/bundler/lib/bundler/vendor/uri/lib/uri/http.rb +2 -2
- data/bundler/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +16 -9
- data/bundler/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +26 -3
- data/bundler/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
- data/bundler/lib/bundler/vendor/uri/lib/uri.rb +9 -9
- data/bundler/lib/bundler/vendored_net_http.rb +20 -5
- data/bundler/lib/bundler/vendored_securerandom.rb +12 -0
- data/bundler/lib/bundler/vendored_timeout.rb +7 -3
- data/bundler/lib/bundler/vendored_uri.rb +18 -1
- data/bundler/lib/bundler/version.rb +10 -2
- data/bundler/lib/bundler/worker.rb +1 -1
- data/bundler/lib/bundler/yaml_serializer.rb +12 -7
- data/bundler/lib/bundler.rb +101 -61
- data/{bundler → doc/bundler}/UPGRADING.md +132 -127
- data/doc/rubygems/CONTRIBUTING.md +227 -0
- data/{POLICIES.md → doc/rubygems/POLICIES.md} +86 -17
- data/exe/update_rubygems +1 -1
- data/lib/rubygems/basic_specification.rb +50 -10
- data/lib/rubygems/bundler_version_finder.rb +1 -1
- data/lib/rubygems/command.rb +1 -4
- data/lib/rubygems/command_manager.rb +5 -6
- data/lib/rubygems/commands/build_command.rb +2 -11
- data/lib/rubygems/commands/cleanup_command.rb +3 -13
- data/lib/rubygems/commands/contents_command.rb +17 -10
- data/lib/rubygems/commands/environment_command.rb +5 -0
- data/lib/rubygems/commands/exec_command.rb +18 -11
- data/lib/rubygems/commands/fetch_command.rb +14 -0
- data/lib/rubygems/commands/help_command.rb +2 -2
- data/lib/rubygems/commands/install_command.rb +0 -4
- data/lib/rubygems/commands/pristine_command.rb +29 -19
- data/lib/rubygems/commands/push_command.rb +31 -6
- data/lib/rubygems/commands/rdoc_command.rb +3 -10
- data/lib/rubygems/commands/rebuild_command.rb +262 -0
- data/lib/rubygems/commands/setup_command.rb +13 -18
- data/lib/rubygems/commands/sources_command.rb +2 -2
- data/lib/rubygems/commands/uninstall_command.rb +9 -4
- data/lib/rubygems/commands/unpack_command.rb +0 -6
- data/lib/rubygems/commands/update_command.rb +13 -22
- data/lib/rubygems/config_file.rb +45 -16
- data/lib/rubygems/core_ext/kernel_require.rb +15 -3
- data/lib/rubygems/core_ext/kernel_warn.rb +2 -6
- data/lib/rubygems/defaults.rb +7 -7
- data/lib/rubygems/dependency.rb +12 -16
- data/lib/rubygems/dependency_list.rb +1 -1
- data/lib/rubygems/deprecate.rb +79 -77
- data/lib/rubygems/errors.rb +2 -1
- data/lib/rubygems/exceptions.rb +2 -9
- data/lib/rubygems/ext/builder.rb +21 -8
- data/lib/rubygems/ext/cargo_builder.rb +16 -26
- data/lib/rubygems/ext/cmake_builder.rb +7 -2
- data/lib/rubygems/ext/configure_builder.rb +7 -2
- data/lib/rubygems/ext/ext_conf_builder.rb +9 -5
- data/lib/rubygems/ext/rake_builder.rb +7 -4
- data/lib/rubygems/gem_runner.rb +9 -0
- data/lib/rubygems/gemcutter_utilities/webauthn_listener.rb +11 -4
- data/lib/rubygems/gemcutter_utilities/webauthn_poller.rb +3 -1
- data/lib/rubygems/gemcutter_utilities.rb +52 -26
- data/lib/rubygems/gemspec_helpers.rb +19 -0
- data/lib/rubygems/install_update_options.rb +5 -0
- data/lib/rubygems/installer.rb +76 -90
- data/lib/rubygems/local_remote_options.rb +8 -8
- data/lib/rubygems/package/tar_header.rb +31 -4
- data/lib/rubygems/package/tar_reader/entry.rb +1 -5
- data/lib/rubygems/package/tar_writer.rb +5 -4
- data/lib/rubygems/package.rb +13 -8
- data/lib/rubygems/platform.rb +148 -43
- data/lib/rubygems/psych_tree.rb +4 -0
- data/lib/rubygems/query_utils.rb +2 -2
- data/lib/rubygems/rdoc.rb +16 -3
- data/lib/rubygems/remote_fetcher.rb +6 -7
- data/lib/rubygems/request.rb +5 -5
- data/lib/rubygems/request_set/gem_dependency_api.rb +1 -1
- data/lib/rubygems/request_set.rb +4 -7
- data/lib/rubygems/requirement.rb +16 -12
- data/lib/rubygems/resolver/activation_request.rb +1 -1
- data/lib/rubygems/resolver/api_set/gem_parser.rb +2 -5
- data/lib/rubygems/resolver/api_set.rb +13 -8
- data/lib/rubygems/resolver/best_set.rb +1 -29
- data/lib/rubygems/resolver/composed_set.rb +3 -3
- data/lib/rubygems/resolver/git_set.rb +0 -1
- data/lib/rubygems/resolver/index_set.rb +2 -2
- data/lib/rubygems/resolver/source_set.rb +1 -1
- data/lib/rubygems/resolver/spec_specification.rb +7 -0
- data/lib/rubygems/resolver.rb +8 -8
- data/lib/rubygems/s3_uri_signer.rb +8 -6
- data/lib/rubygems/safe_marshal/reader.rb +31 -14
- data/lib/rubygems/safe_marshal/visitors/to_ruby.rb +29 -16
- data/lib/rubygems/safe_yaml.rb +10 -1
- data/lib/rubygems/security.rb +1 -1
- data/lib/rubygems/source/git.rb +22 -17
- data/lib/rubygems/source/installed.rb +3 -1
- data/lib/rubygems/source/local.rb +8 -4
- data/lib/rubygems/source/specific_file.rb +5 -3
- data/lib/rubygems/source.rb +37 -29
- data/lib/rubygems/source_list.rb +1 -1
- data/lib/rubygems/spec_fetcher.rb +47 -15
- data/lib/rubygems/specification.rb +110 -183
- data/lib/rubygems/specification_policy.rb +33 -13
- data/lib/rubygems/specification_record.rb +212 -0
- data/lib/rubygems/stub_specification.rb +32 -10
- data/lib/rubygems/target_rbconfig.rb +50 -0
- data/lib/rubygems/uninstaller.rb +42 -22
- data/lib/rubygems/uri.rb +6 -6
- data/lib/rubygems/uri_formatter.rb +2 -1
- data/lib/rubygems/util/licenses.rb +118 -1
- data/lib/rubygems/util.rb +1 -1
- data/lib/rubygems/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +57 -0
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/delegates/specification_provider.rb +11 -11
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/action.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/log.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/set_payload.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/tag.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph/vertex.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/dependency_graph.rb +2 -2
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/errors.rb +1 -1
- data/lib/rubygems/vendor/molinillo/lib/molinillo/gem_metadata.rb +6 -0
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/modules/specification_provider.rb +2 -2
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/modules/ui.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/resolution.rb +4 -4
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/resolver.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo/state.rb +1 -1
- data/lib/rubygems/{resolver → vendor}/molinillo/lib/molinillo.rb +2 -2
- data/lib/rubygems/vendor/net-http/COPYING +56 -0
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/generic_request.rb +9 -9
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/header.rb +3 -3
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/request.rb +3 -3
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/requests.rb +35 -30
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/response.rb +2 -2
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/responses.rb +6 -6
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/status.rb +1 -1
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http.rb +149 -70
- data/lib/rubygems/{net-http → vendor/net-http}/lib/net/https.rb +1 -1
- data/lib/rubygems/vendor/optparse/COPYING +56 -0
- data/lib/rubygems/{optparse → vendor/optparse}/lib/optparse/ac.rb +16 -0
- data/lib/rubygems/{optparse → vendor/optparse}/lib/optparse/kwargs.rb +8 -3
- data/lib/rubygems/vendor/optparse/lib/optparse/uri.rb +7 -0
- data/lib/rubygems/{optparse → vendor/optparse}/lib/optparse/version.rb +9 -0
- data/lib/rubygems/{optparse → vendor/optparse}/lib/optparse.rb +158 -62
- data/lib/rubygems/vendor/resolv/COPYING +56 -0
- data/lib/rubygems/{resolv → vendor/resolv}/lib/resolv.rb +165 -69
- data/lib/rubygems/vendor/securerandom/COPYING +56 -0
- data/lib/rubygems/vendor/securerandom/lib/securerandom.rb +102 -0
- data/lib/rubygems/vendor/timeout/COPYING +56 -0
- data/lib/rubygems/{timeout → vendor/timeout}/lib/timeout.rb +10 -11
- data/lib/rubygems/{tsort → vendor/tsort}/lib/tsort.rb +2 -2
- data/lib/rubygems/vendor/uri/COPYING +56 -0
- data/lib/rubygems/vendor/uri/lib/uri/common.rb +880 -0
- data/lib/rubygems/vendor/uri/lib/uri/file.rb +100 -0
- data/lib/rubygems/vendor/uri/lib/uri/ftp.rb +267 -0
- data/lib/rubygems/vendor/uri/lib/uri/generic.rb +1579 -0
- data/lib/rubygems/vendor/uri/lib/uri/http.rb +125 -0
- data/lib/rubygems/vendor/uri/lib/uri/https.rb +23 -0
- data/lib/rubygems/vendor/uri/lib/uri/ldap.rb +261 -0
- data/lib/rubygems/vendor/uri/lib/uri/ldaps.rb +22 -0
- data/lib/rubygems/vendor/uri/lib/uri/mailto.rb +293 -0
- data/lib/rubygems/vendor/uri/lib/uri/rfc2396_parser.rb +546 -0
- data/lib/rubygems/vendor/uri/lib/uri/rfc3986_parser.rb +206 -0
- data/lib/rubygems/vendor/uri/lib/uri/version.rb +6 -0
- data/lib/rubygems/vendor/uri/lib/uri/ws.rb +83 -0
- data/lib/rubygems/vendor/uri/lib/uri/wss.rb +23 -0
- data/lib/rubygems/vendor/uri/lib/uri.rb +104 -0
- data/lib/rubygems/vendored_molinillo.rb +3 -0
- data/lib/rubygems/vendored_net_http.rb +5 -0
- data/lib/rubygems/vendored_optparse.rb +3 -0
- data/lib/rubygems/vendored_securerandom.rb +3 -0
- data/lib/rubygems/vendored_timeout.rb +5 -0
- data/lib/rubygems/vendored_tsort.rb +3 -0
- data/lib/rubygems/version.rb +26 -9
- data/lib/rubygems/yaml_serializer.rb +12 -7
- data/lib/rubygems.rb +160 -53
- data/rubygems-update.gemspec +11 -6
- data/setup.rb +1 -1
- metadata +124 -96
- data/bundler/lib/bundler/compact_index_client/gem_parser.rb +0 -32
- data/bundler/lib/bundler/gem_helpers.rb +0 -127
- data/bundler/lib/bundler/templates/Executable.bundler +0 -109
- data/bundler/lib/bundler/vendor/fileutils/.document +0 -1
- data/bundler/lib/bundler/vendor/net-http-persistent/.document +0 -1
- data/bundler/lib/bundler/vendor/pub_grub/.document +0 -1
- data/bundler/lib/bundler/vendor/thor/.document +0 -1
- data/bundler/lib/bundler/vendor/tsort/.document +0 -1
- data/bundler/lib/bundler/vendor/uri/.document +0 -1
- data/lib/rubygems/net/http.rb +0 -3
- data/lib/rubygems/net-http/.document +0 -1
- data/lib/rubygems/net-http/LICENSE.txt +0 -22
- data/lib/rubygems/net-http/lib/net/http/backward.rb +0 -40
- data/lib/rubygems/net-protocol/.document +0 -1
- data/lib/rubygems/net-protocol/LICENSE.txt +0 -22
- data/lib/rubygems/optparse/.document +0 -1
- data/lib/rubygems/optparse/lib/optparse/uri.rb +0 -7
- data/lib/rubygems/optparse.rb +0 -3
- data/lib/rubygems/resolv/.document +0 -1
- data/lib/rubygems/resolv/LICENSE.txt +0 -22
- data/lib/rubygems/resolver/molinillo/.document +0 -1
- data/lib/rubygems/resolver/molinillo/lib/molinillo/delegates/resolution_state.rb +0 -57
- data/lib/rubygems/resolver/molinillo/lib/molinillo/gem_metadata.rb +0 -6
- data/lib/rubygems/resolver/molinillo.rb +0 -3
- data/lib/rubygems/shellwords.rb +0 -3
- data/lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem +0 -21
- data/lib/rubygems/timeout/.document +0 -1
- data/lib/rubygems/timeout/LICENSE.txt +0 -22
- data/lib/rubygems/timeout.rb +0 -3
- data/lib/rubygems/tsort/.document +0 -1
- data/lib/rubygems/tsort/LICENSE.txt +0 -22
- data/lib/rubygems/tsort.rb +0 -3
- /data/{lib/rubygems/optparse → bundler/lib/bundler/vendor/fileutils}/COPYING +0 -0
- /data/{MAINTAINERS.txt → doc/MAINTAINERS.txt} +0 -0
- /data/{UPGRADING.md → doc/rubygems/UPGRADING.md} +0 -0
- /data/lib/rubygems/ssl_certs/rubygems.org/{GlobalSignRootCA_R3.pem → GlobalSign.pem} +0 -0
- /data/{bundler/lib/bundler/vendor/connection_pool → lib/rubygems/vendor}/.document +0 -0
- /data/lib/rubygems/{resolver → vendor}/molinillo/LICENSE +0 -0
- /data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/exceptions.rb +0 -0
- /data/lib/rubygems/{net-http → vendor/net-http}/lib/net/http/proxy_delta.rb +0 -0
- /data/{bundler/lib/bundler/vendor/fileutils → lib/rubygems/vendor/net-protocol}/LICENSE.txt +0 -0
- /data/lib/rubygems/{net-protocol → vendor/net-protocol}/lib/net/protocol.rb +0 -0
- /data/lib/rubygems/{optparse → vendor/optparse}/lib/optionparser.rb +0 -0
- /data/lib/rubygems/{optparse → vendor/optparse}/lib/optparse/date.rb +0 -0
- /data/lib/rubygems/{optparse → vendor/optparse}/lib/optparse/shellwords.rb +0 -0
- /data/lib/rubygems/{optparse → vendor/optparse}/lib/optparse/time.rb +0 -0
- /data/{bundler/lib/bundler/vendor/uri → lib/rubygems/vendor/tsort}/LICENSE.txt +0 -0
@@ -82,7 +82,7 @@ module Bundler::URI
|
|
82
82
|
if args.kind_of?(Array)
|
83
83
|
return self.build(args.collect{|x|
|
84
84
|
if x.is_a?(String)
|
85
|
-
|
85
|
+
Bundler::URI::RFC2396_PARSER.escape(x)
|
86
86
|
else
|
87
87
|
x
|
88
88
|
end
|
@@ -91,7 +91,7 @@ module Bundler::URI
|
|
91
91
|
tmp = {}
|
92
92
|
args.each do |key, value|
|
93
93
|
tmp[key] = if value
|
94
|
-
|
94
|
+
Bundler::URI::RFC2396_PARSER.escape(value)
|
95
95
|
else
|
96
96
|
value
|
97
97
|
end
|
@@ -393,7 +393,7 @@ module Bundler::URI
|
|
393
393
|
def check_user(v)
|
394
394
|
if @opaque
|
395
395
|
raise InvalidURIError,
|
396
|
-
"
|
396
|
+
"cannot set user with opaque"
|
397
397
|
end
|
398
398
|
|
399
399
|
return v unless v
|
@@ -417,7 +417,7 @@ module Bundler::URI
|
|
417
417
|
def check_password(v, user = @user)
|
418
418
|
if @opaque
|
419
419
|
raise InvalidURIError,
|
420
|
-
"
|
420
|
+
"cannot set password with opaque"
|
421
421
|
end
|
422
422
|
return v unless v
|
423
423
|
|
@@ -596,7 +596,7 @@ module Bundler::URI
|
|
596
596
|
|
597
597
|
if @opaque
|
598
598
|
raise InvalidURIError,
|
599
|
-
"
|
599
|
+
"cannot set host with registry or opaque"
|
600
600
|
elsif parser.regexp[:HOST] !~ v
|
601
601
|
raise InvalidComponentError,
|
602
602
|
"bad component(expected host component): #{v}"
|
@@ -685,7 +685,7 @@ module Bundler::URI
|
|
685
685
|
|
686
686
|
if @opaque
|
687
687
|
raise InvalidURIError,
|
688
|
-
"
|
688
|
+
"cannot set port with registry or opaque"
|
689
689
|
elsif !v.kind_of?(Integer) && parser.regexp[:PORT] !~ v
|
690
690
|
raise InvalidComponentError,
|
691
691
|
"bad component(expected port component): #{v.inspect}"
|
@@ -733,17 +733,17 @@ module Bundler::URI
|
|
733
733
|
end
|
734
734
|
|
735
735
|
def check_registry(v) # :nodoc:
|
736
|
-
raise InvalidURIError, "
|
736
|
+
raise InvalidURIError, "cannot set registry"
|
737
737
|
end
|
738
738
|
private :check_registry
|
739
739
|
|
740
|
-
def set_registry(v)
|
741
|
-
raise InvalidURIError, "
|
740
|
+
def set_registry(v) # :nodoc:
|
741
|
+
raise InvalidURIError, "cannot set registry"
|
742
742
|
end
|
743
743
|
protected :set_registry
|
744
744
|
|
745
|
-
def registry=(v)
|
746
|
-
raise InvalidURIError, "
|
745
|
+
def registry=(v) # :nodoc:
|
746
|
+
raise InvalidURIError, "cannot set registry"
|
747
747
|
end
|
748
748
|
|
749
749
|
#
|
@@ -866,7 +866,7 @@ module Bundler::URI
|
|
866
866
|
# hier_part = ( net_path | abs_path ) [ "?" query ]
|
867
867
|
if @host || @port || @user || @path # userinfo = @user + ':' + @password
|
868
868
|
raise InvalidURIError,
|
869
|
-
"
|
869
|
+
"cannot set opaque with host, port, userinfo or path"
|
870
870
|
elsif v && parser.regexp[:OPAQUE] !~ v
|
871
871
|
raise InvalidComponentError,
|
872
872
|
"bad component(expected opaque component): #{v}"
|
@@ -945,7 +945,7 @@ module Bundler::URI
|
|
945
945
|
# == Description
|
946
946
|
#
|
947
947
|
# Bundler::URI has components listed in order of decreasing significance from left to right,
|
948
|
-
# see RFC3986 https://
|
948
|
+
# see RFC3986 https://www.rfc-editor.org/rfc/rfc3986 1.2.3.
|
949
949
|
#
|
950
950
|
# == Usage
|
951
951
|
#
|
@@ -1133,17 +1133,16 @@ module Bundler::URI
|
|
1133
1133
|
base.fragment=(nil)
|
1134
1134
|
|
1135
1135
|
# RFC2396, Section 5.2, 4)
|
1136
|
-
if
|
1137
|
-
base.
|
1138
|
-
|
1139
|
-
|
1140
|
-
base.set_path(rel.path)
|
1136
|
+
if authority
|
1137
|
+
base.set_userinfo(rel.userinfo)
|
1138
|
+
base.set_host(rel.host)
|
1139
|
+
base.set_port(rel.port || base.default_port)
|
1140
|
+
base.set_path(rel.path)
|
1141
|
+
elsif base.path && rel.path
|
1142
|
+
base.set_path(merge_path(base.path, rel.path))
|
1141
1143
|
end
|
1142
1144
|
|
1143
1145
|
# RFC2396, Section 5.2, 7)
|
1144
|
-
base.set_userinfo(rel.userinfo) if rel.userinfo
|
1145
|
-
base.set_host(rel.host) if rel.host
|
1146
|
-
base.set_port(rel.port) if rel.port
|
1147
1146
|
base.query = rel.query if rel.query
|
1148
1147
|
base.fragment=(rel.fragment) if rel.fragment
|
1149
1148
|
|
@@ -1235,7 +1234,7 @@ module Bundler::URI
|
|
1235
1234
|
return rel, rel
|
1236
1235
|
end
|
1237
1236
|
|
1238
|
-
# you can modify `rel', but
|
1237
|
+
# you can modify `rel', but cannot `oth'.
|
1239
1238
|
return oth, rel
|
1240
1239
|
end
|
1241
1240
|
private :route_from0
|
@@ -1260,7 +1259,7 @@ module Bundler::URI
|
|
1260
1259
|
# #=> #<Bundler::URI::Generic /main.rbx?page=1>
|
1261
1260
|
#
|
1262
1261
|
def route_from(oth)
|
1263
|
-
# you can modify `rel', but
|
1262
|
+
# you can modify `rel', but cannot `oth'.
|
1264
1263
|
begin
|
1265
1264
|
oth, rel = route_from0(oth)
|
1266
1265
|
rescue
|
@@ -1364,6 +1363,9 @@ module Bundler::URI
|
|
1364
1363
|
str << ':'
|
1365
1364
|
str << @port.to_s
|
1366
1365
|
end
|
1366
|
+
if (@host || @port) && !@path.empty? && !@path.start_with?('/')
|
1367
|
+
str << '/'
|
1368
|
+
end
|
1367
1369
|
str << @path
|
1368
1370
|
if @query
|
1369
1371
|
str << '?'
|
@@ -1389,29 +1391,18 @@ module Bundler::URI
|
|
1389
1391
|
end
|
1390
1392
|
end
|
1391
1393
|
|
1394
|
+
# Returns the hash value.
|
1392
1395
|
def hash
|
1393
1396
|
self.component_ary.hash
|
1394
1397
|
end
|
1395
1398
|
|
1399
|
+
# Compares with _oth_ for Hash.
|
1396
1400
|
def eql?(oth)
|
1397
1401
|
self.class == oth.class &&
|
1398
1402
|
parser == oth.parser &&
|
1399
1403
|
self.component_ary.eql?(oth.component_ary)
|
1400
1404
|
end
|
1401
1405
|
|
1402
|
-
=begin
|
1403
|
-
|
1404
|
-
--- Bundler::URI::Generic#===(oth)
|
1405
|
-
|
1406
|
-
=end
|
1407
|
-
# def ===(oth)
|
1408
|
-
# raise NotImplementedError
|
1409
|
-
# end
|
1410
|
-
|
1411
|
-
=begin
|
1412
|
-
=end
|
1413
|
-
|
1414
|
-
|
1415
1406
|
# Returns an Array of the components defined from the COMPONENT Array.
|
1416
1407
|
def component_ary
|
1417
1408
|
component.collect do |x|
|
@@ -1448,7 +1439,7 @@ module Bundler::URI
|
|
1448
1439
|
end
|
1449
1440
|
end
|
1450
1441
|
|
1451
|
-
def inspect
|
1442
|
+
def inspect # :nodoc:
|
1452
1443
|
"#<#{self.class} #{self}>"
|
1453
1444
|
end
|
1454
1445
|
|
@@ -85,7 +85,7 @@ module Bundler::URI
|
|
85
85
|
# == Description
|
86
86
|
#
|
87
87
|
# Returns the authority for an HTTP uri, as defined in
|
88
|
-
# https://
|
88
|
+
# https://www.rfc-editor.org/rfc/rfc3986#section-3.2.
|
89
89
|
#
|
90
90
|
#
|
91
91
|
# Example:
|
@@ -106,7 +106,7 @@ module Bundler::URI
|
|
106
106
|
# == Description
|
107
107
|
#
|
108
108
|
# Returns the origin for an HTTP uri, as defined in
|
109
|
-
# https://
|
109
|
+
# https://www.rfc-editor.org/rfc/rfc6454.
|
110
110
|
#
|
111
111
|
#
|
112
112
|
# Example:
|
@@ -140,11 +140,11 @@ module Bundler::URI
|
|
140
140
|
|
141
141
|
if !scheme
|
142
142
|
raise InvalidURIError,
|
143
|
-
"bad Bundler::URI(absolute but no scheme): #{uri}"
|
143
|
+
"bad Bundler::URI (absolute but no scheme): #{uri}"
|
144
144
|
end
|
145
145
|
if !opaque && (!path && (!host && !registry))
|
146
146
|
raise InvalidURIError,
|
147
|
-
"bad Bundler::URI(absolute but no path): #{uri}"
|
147
|
+
"bad Bundler::URI (absolute but no path): #{uri}"
|
148
148
|
end
|
149
149
|
|
150
150
|
when @regexp[:REL_URI]
|
@@ -173,7 +173,7 @@ module Bundler::URI
|
|
173
173
|
# server = [ [ userinfo "@" ] hostport ]
|
174
174
|
|
175
175
|
else
|
176
|
-
raise InvalidURIError, "bad Bundler::URI(is not Bundler::URI?): #{uri}"
|
176
|
+
raise InvalidURIError, "bad Bundler::URI (is not Bundler::URI?): #{uri}"
|
177
177
|
end
|
178
178
|
|
179
179
|
path = '' if !path && !opaque # (see RFC2396 Section 5.2)
|
@@ -321,14 +321,14 @@ module Bundler::URI
|
|
321
321
|
str.gsub(escaped) { [$&[1, 2]].pack('H2').force_encoding(enc) }
|
322
322
|
end
|
323
323
|
|
324
|
-
|
325
|
-
if
|
326
|
-
def inspect
|
327
|
-
|
324
|
+
TO_S = Kernel.instance_method(:to_s) # :nodoc:
|
325
|
+
if TO_S.respond_to?(:bind_call)
|
326
|
+
def inspect # :nodoc:
|
327
|
+
TO_S.bind_call(self)
|
328
328
|
end
|
329
329
|
else
|
330
|
-
def inspect
|
331
|
-
|
330
|
+
def inspect # :nodoc:
|
331
|
+
TO_S.bind(self).call
|
332
332
|
end
|
333
333
|
end
|
334
334
|
|
@@ -536,4 +536,11 @@ module Bundler::URI
|
|
536
536
|
end
|
537
537
|
|
538
538
|
end # class Parser
|
539
|
+
|
540
|
+
# Backward compatibility for Bundler::URI::REGEXP::PATTERN::*
|
541
|
+
RFC2396_Parser.new.pattern.each_pair do |sym, str|
|
542
|
+
unless RFC2396_REGEXP::PATTERN.const_defined?(sym, false)
|
543
|
+
RFC2396_REGEXP::PATTERN.const_set(sym, str)
|
544
|
+
end
|
545
|
+
end
|
539
546
|
end # module Bundler::URI
|
@@ -78,7 +78,7 @@ module Bundler::URI
|
|
78
78
|
begin
|
79
79
|
uri = uri.to_str
|
80
80
|
rescue NoMethodError
|
81
|
-
raise InvalidURIError, "bad Bundler::URI(is not Bundler::URI?): #{uri.inspect}"
|
81
|
+
raise InvalidURIError, "bad Bundler::URI (is not Bundler::URI?): #{uri.inspect}"
|
82
82
|
end
|
83
83
|
uri.ascii_only? or
|
84
84
|
raise InvalidURIError, "Bundler::URI must be ascii only #{uri.dump}"
|
@@ -127,7 +127,7 @@ module Bundler::URI
|
|
127
127
|
m["fragment"]
|
128
128
|
]
|
129
129
|
else
|
130
|
-
raise InvalidURIError, "bad Bundler::URI(is not Bundler::URI?): #{uri.inspect}"
|
130
|
+
raise InvalidURIError, "bad Bundler::URI (is not Bundler::URI?): #{uri.inspect}"
|
131
131
|
end
|
132
132
|
end
|
133
133
|
|
@@ -135,12 +135,35 @@ module Bundler::URI
|
|
135
135
|
Bundler::URI.for(*self.split(uri), self)
|
136
136
|
end
|
137
137
|
|
138
|
-
|
139
138
|
def join(*uris) # :nodoc:
|
140
139
|
uris[0] = convert_to_uri(uris[0])
|
141
140
|
uris.inject :merge
|
142
141
|
end
|
143
142
|
|
143
|
+
# Compatibility for RFC2396 parser
|
144
|
+
def extract(str, schemes = nil, &block) # :nodoc:
|
145
|
+
warn "Bundler::URI::RFC3986_PARSER.extract is obsolete. Use Bundler::URI::RFC2396_PARSER.extract explicitly.", uplevel: 1 if $VERBOSE
|
146
|
+
RFC2396_PARSER.extract(str, schemes, &block)
|
147
|
+
end
|
148
|
+
|
149
|
+
# Compatibility for RFC2396 parser
|
150
|
+
def make_regexp(schemes = nil) # :nodoc:
|
151
|
+
warn "Bundler::URI::RFC3986_PARSER.make_regexp is obsolete. Use Bundler::URI::RFC2396_PARSER.make_regexp explicitly.", uplevel: 1 if $VERBOSE
|
152
|
+
RFC2396_PARSER.make_regexp(schemes)
|
153
|
+
end
|
154
|
+
|
155
|
+
# Compatibility for RFC2396 parser
|
156
|
+
def escape(str, unsafe = nil) # :nodoc:
|
157
|
+
warn "Bundler::URI::RFC3986_PARSER.escape is obsolete. Use Bundler::URI::RFC2396_PARSER.escape explicitly.", uplevel: 1 if $VERBOSE
|
158
|
+
unsafe ? RFC2396_PARSER.escape(str, unsafe) : RFC2396_PARSER.escape(str)
|
159
|
+
end
|
160
|
+
|
161
|
+
# Compatibility for RFC2396 parser
|
162
|
+
def unescape(str, escaped = nil) # :nodoc:
|
163
|
+
warn "Bundler::URI::RFC3986_PARSER.unescape is obsolete. Use Bundler::URI::RFC2396_PARSER.unescape explicitly.", uplevel: 1 if $VERBOSE
|
164
|
+
escaped ? RFC2396_PARSER.unescape(str, escaped) : RFC2396_PARSER.unescape(str)
|
165
|
+
end
|
166
|
+
|
144
167
|
@@to_s = Kernel.instance_method(:to_s)
|
145
168
|
if @@to_s.respond_to?(:bind_call)
|
146
169
|
def inspect
|
@@ -1,6 +1,6 @@
|
|
1
1
|
# frozen_string_literal: false
|
2
2
|
# Bundler::URI is a module providing classes to handle Uniform Resource Identifiers
|
3
|
-
# (RFC2396[
|
3
|
+
# (RFC2396[https://www.rfc-editor.org/rfc/rfc2396]).
|
4
4
|
#
|
5
5
|
# == Features
|
6
6
|
#
|
@@ -47,14 +47,14 @@
|
|
47
47
|
# A good place to view an RFC spec is http://www.ietf.org/rfc.html.
|
48
48
|
#
|
49
49
|
# Here is a list of all related RFC's:
|
50
|
-
# - RFC822[
|
51
|
-
# - RFC1738[
|
52
|
-
# - RFC2255[
|
53
|
-
# - RFC2368[
|
54
|
-
# - RFC2373[
|
55
|
-
# - RFC2396[
|
56
|
-
# - RFC2732[
|
57
|
-
# - RFC3986[
|
50
|
+
# - RFC822[https://www.rfc-editor.org/rfc/rfc822]
|
51
|
+
# - RFC1738[https://www.rfc-editor.org/rfc/rfc1738]
|
52
|
+
# - RFC2255[https://www.rfc-editor.org/rfc/rfc2255]
|
53
|
+
# - RFC2368[https://www.rfc-editor.org/rfc/rfc2368]
|
54
|
+
# - RFC2373[https://www.rfc-editor.org/rfc/rfc2373]
|
55
|
+
# - RFC2396[https://www.rfc-editor.org/rfc/rfc2396]
|
56
|
+
# - RFC2732[https://www.rfc-editor.org/rfc/rfc2732]
|
57
|
+
# - RFC3986[https://www.rfc-editor.org/rfc/rfc3986]
|
58
58
|
#
|
59
59
|
# == Class tree
|
60
60
|
#
|
@@ -1,8 +1,23 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
3
|
+
# This defined? guard can be removed once RubyGems 3.4 support is dropped.
|
4
|
+
#
|
5
|
+
# Bundler specs load this code from `spec/support/vendored_net_http.rb` to avoid
|
6
|
+
# activating the Bundler gem too early. Without this guard, we get redefinition
|
7
|
+
# warnings once Bundler is actually activated and
|
8
|
+
# `lib/bundler/vendored_net_http.rb` is required. This is not an issue in
|
9
|
+
# RubyGems versions including `rubygems/vendored_net_http` since `require` takes
|
10
|
+
# care of avoiding the double load.
|
11
|
+
#
|
12
|
+
unless defined?(Gem::Net)
|
13
|
+
begin
|
14
|
+
require "rubygems/vendored_net_http"
|
15
|
+
rescue LoadError
|
16
|
+
begin
|
17
|
+
require "rubygems/net/http"
|
18
|
+
rescue LoadError
|
19
|
+
require "net/http"
|
20
|
+
Gem::Net = Net
|
21
|
+
end
|
22
|
+
end
|
8
23
|
end
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Use RubyGems vendored copy when available. Otherwise fallback to Bundler
|
4
|
+
# vendored copy. The vendored copy in Bundler can be removed once support for
|
5
|
+
# RubyGems 3.5.18 is dropped.
|
6
|
+
|
7
|
+
begin
|
8
|
+
require "rubygems/vendored_securerandom"
|
9
|
+
rescue LoadError
|
10
|
+
require_relative "vendor/securerandom/lib/securerandom"
|
11
|
+
Gem::SecureRandom = Bundler::SecureRandom
|
12
|
+
end
|
@@ -1,8 +1,12 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
begin
|
4
|
-
require "rubygems/
|
4
|
+
require "rubygems/vendored_timeout"
|
5
5
|
rescue LoadError
|
6
|
-
|
7
|
-
|
6
|
+
begin
|
7
|
+
require "rubygems/timeout"
|
8
|
+
rescue LoadError
|
9
|
+
require "timeout"
|
10
|
+
Gem::Timeout = Timeout
|
11
|
+
end
|
8
12
|
end
|
@@ -1,4 +1,21 @@
|
|
1
1
|
# frozen_string_literal: true
|
2
2
|
|
3
3
|
module Bundler; end
|
4
|
-
|
4
|
+
|
5
|
+
# Use RubyGems vendored copy when available. Otherwise fallback to Bundler
|
6
|
+
# vendored copy. The vendored copy in Bundler can be removed once support for
|
7
|
+
# RubyGems 3.5 is dropped.
|
8
|
+
|
9
|
+
begin
|
10
|
+
require "rubygems/vendor/uri/lib/uri"
|
11
|
+
rescue LoadError
|
12
|
+
require_relative "vendor/uri/lib/uri"
|
13
|
+
Gem::URI = Bundler::URI
|
14
|
+
|
15
|
+
module Gem
|
16
|
+
def URI(uri) # rubocop:disable Naming/MethodName
|
17
|
+
Bundler::URI(uri)
|
18
|
+
end
|
19
|
+
module_function :URI
|
20
|
+
end
|
21
|
+
end
|
@@ -1,13 +1,21 @@
|
|
1
1
|
# frozen_string_literal: false
|
2
2
|
|
3
3
|
module Bundler
|
4
|
-
VERSION = "2.
|
4
|
+
VERSION = "2.7.1".freeze
|
5
5
|
|
6
6
|
def self.bundler_major_version
|
7
|
-
@bundler_major_version ||=
|
7
|
+
@bundler_major_version ||= gem_version.segments.first
|
8
8
|
end
|
9
9
|
|
10
10
|
def self.gem_version
|
11
11
|
@gem_version ||= Gem::Version.create(VERSION)
|
12
12
|
end
|
13
|
+
|
14
|
+
def self.verbose_version
|
15
|
+
@verbose_version ||= "#{VERSION}#{simulated_version ? " (simulating Bundler #{simulated_version})" : ""}"
|
16
|
+
end
|
17
|
+
|
18
|
+
def self.simulated_version
|
19
|
+
@simulated_version ||= Bundler.settings[:simulate_version]
|
20
|
+
end
|
13
21
|
end
|
@@ -88,7 +88,7 @@ module Bundler
|
|
88
88
|
|
89
89
|
@threads = Array.new(@size) do |i|
|
90
90
|
Thread.start { process_queue(i) }.tap do |thread|
|
91
|
-
thread.name = "#{name} Worker ##{i}"
|
91
|
+
thread.name = "#{name} Worker ##{i}"
|
92
92
|
end
|
93
93
|
rescue ThreadError => e
|
94
94
|
creation_errors << e
|
@@ -41,7 +41,7 @@ module Bundler
|
|
41
41
|
HASH_REGEX = /
|
42
42
|
^
|
43
43
|
([ ]*) # indentations
|
44
|
-
(
|
44
|
+
([^#]+) # key excludes comment char '#'
|
45
45
|
(?::(?=(?:\s|$))) # : (without the lookahead the #key includes this when : is present in value)
|
46
46
|
[ ]?
|
47
47
|
(['"]?) # optional opening quote
|
@@ -58,7 +58,8 @@ module Bundler
|
|
58
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
|
+
val = strip_comment(val)
|
62
|
+
|
62
63
|
depth = indent.size / 2
|
63
64
|
if quote.empty? && val.empty?
|
64
65
|
new_hash = {}
|
@@ -72,6 +73,8 @@ module Bundler
|
|
72
73
|
end
|
73
74
|
elsif match = ARRAY_REGEX.match(line)
|
74
75
|
_, val = match.captures
|
76
|
+
val = strip_comment(val)
|
77
|
+
|
75
78
|
last_hash[last_empty_key] = [] unless last_hash[last_empty_key].is_a?(Array)
|
76
79
|
|
77
80
|
last_hash[last_empty_key].push(val)
|
@@ -80,14 +83,16 @@ module Bundler
|
|
80
83
|
res
|
81
84
|
end
|
82
85
|
|
83
|
-
|
84
|
-
|
85
|
-
|
86
|
-
|
86
|
+
def strip_comment(val)
|
87
|
+
if val.include?("#") && !val.start_with?("#")
|
88
|
+
val.split("#", 2).first.strip
|
89
|
+
else
|
90
|
+
val
|
91
|
+
end
|
87
92
|
end
|
88
93
|
|
89
94
|
class << self
|
90
|
-
private :dump_hash
|
95
|
+
private :dump_hash
|
91
96
|
end
|
92
97
|
end
|
93
98
|
end
|