rubygems-update 3.2.22 → 3.2.26

Sign up to get free protection for your applications and to get access to all the features.
Files changed (201) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +51 -0
  3. data/Manifest.txt +5 -6
  4. data/bundler/CHANGELOG.md +65 -0
  5. data/bundler/lib/bundler.rb +4 -9
  6. data/bundler/lib/bundler/build_metadata.rb +2 -2
  7. data/bundler/lib/bundler/cli.rb +12 -9
  8. data/bundler/lib/bundler/cli/cache.rb +1 -1
  9. data/bundler/lib/bundler/cli/check.rb +1 -1
  10. data/bundler/lib/bundler/cli/doctor.rb +1 -1
  11. data/bundler/lib/bundler/cli/exec.rb +1 -6
  12. data/bundler/lib/bundler/cli/gem.rb +3 -2
  13. data/bundler/lib/bundler/cli/install.rb +4 -17
  14. data/bundler/lib/bundler/cli/list.rb +7 -1
  15. data/bundler/lib/bundler/cli/open.rb +1 -2
  16. data/bundler/lib/bundler/cli/update.rb +1 -1
  17. data/bundler/lib/bundler/definition.rb +38 -53
  18. data/bundler/lib/bundler/dsl.rb +22 -12
  19. data/bundler/lib/bundler/errors.rb +1 -1
  20. data/bundler/lib/bundler/index.rb +1 -5
  21. data/bundler/lib/bundler/installer/gem_installer.rb +3 -16
  22. data/bundler/lib/bundler/installer/standalone.rb +14 -9
  23. data/bundler/lib/bundler/lockfile_parser.rb +1 -0
  24. data/bundler/lib/bundler/plugin.rb +2 -0
  25. data/bundler/lib/bundler/plugin/index.rb +4 -1
  26. data/bundler/lib/bundler/plugin/installer.rb +1 -1
  27. data/bundler/lib/bundler/resolver.rb +10 -17
  28. data/bundler/lib/bundler/rubygems_ext.rb +22 -6
  29. data/bundler/lib/bundler/rubygems_gem_installer.rb +5 -1
  30. data/bundler/lib/bundler/runtime.rb +16 -9
  31. data/bundler/lib/bundler/settings.rb +6 -6
  32. data/bundler/lib/bundler/setup.rb +2 -2
  33. data/bundler/lib/bundler/shared_helpers.rb +0 -7
  34. data/bundler/lib/bundler/source.rb +4 -2
  35. data/bundler/lib/bundler/source/git/git_proxy.rb +1 -2
  36. data/bundler/lib/bundler/source/rubygems.rb +21 -7
  37. data/bundler/lib/bundler/source/rubygems_aggregate.rb +4 -0
  38. data/bundler/lib/bundler/source_list.rb +16 -7
  39. data/bundler/lib/bundler/spec_set.rb +14 -37
  40. data/bundler/lib/bundler/templates/Executable.bundler +6 -6
  41. data/bundler/lib/bundler/templates/newgem/github/workflows/main.yml.tt +12 -2
  42. data/bundler/lib/bundler/templates/newgem/newgem.gemspec.tt +3 -1
  43. data/bundler/lib/bundler/version.rb +1 -1
  44. data/bundler/lib/bundler/worker.rb +17 -2
  45. data/lib/rubygems.rb +23 -33
  46. data/lib/rubygems/config_file.rb +4 -4
  47. data/lib/rubygems/ext/builder.rb +1 -0
  48. data/lib/rubygems/ext/ext_conf_builder.rb +1 -2
  49. data/lib/rubygems/ext/rake_builder.rb +1 -2
  50. data/lib/rubygems/gemcutter_utilities.rb +2 -1
  51. data/lib/rubygems/installer.rb +10 -1
  52. data/lib/rubygems/package/io_source.rb +4 -0
  53. data/lib/rubygems/remote_fetcher.rb +0 -1
  54. data/lib/rubygems/requirement.rb +2 -21
  55. data/lib/rubygems/s3_uri_signer.rb +0 -1
  56. data/lib/rubygems/safe_yaml.rb +0 -2
  57. data/lib/rubygems/specification.rb +0 -6
  58. data/lib/rubygems/uninstaller.rb +36 -5
  59. data/rubygems-update.gemspec +1 -1
  60. data/test/rubygems/data/null-type.gemspec.rz +0 -0
  61. data/{lib/rubygems/test_case.rb → test/rubygems/helper.rb} +16 -19
  62. data/{lib → test}/rubygems/installer_test_case.rb +1 -1
  63. data/{lib → test}/rubygems/package/tar_test_case.rb +1 -1
  64. data/test/rubygems/test_bundled_ca.rb +1 -1
  65. data/test/rubygems/test_config.rb +1 -1
  66. data/test/rubygems/test_deprecate.rb +1 -1
  67. data/test/rubygems/test_gem.rb +190 -136
  68. data/test/rubygems/test_gem_available_set.rb +1 -1
  69. data/test/rubygems/test_gem_bundler_version_finder.rb +1 -1
  70. data/test/rubygems/test_gem_command.rb +1 -1
  71. data/test/rubygems/test_gem_command_manager.rb +1 -1
  72. data/test/rubygems/test_gem_commands_build_command.rb +1 -1
  73. data/test/rubygems/test_gem_commands_cert_command.rb +1 -1
  74. data/test/rubygems/test_gem_commands_check_command.rb +1 -1
  75. data/test/rubygems/test_gem_commands_cleanup_command.rb +1 -1
  76. data/test/rubygems/test_gem_commands_contents_command.rb +1 -1
  77. data/test/rubygems/test_gem_commands_dependency_command.rb +1 -1
  78. data/test/rubygems/test_gem_commands_environment_command.rb +1 -1
  79. data/test/rubygems/test_gem_commands_fetch_command.rb +1 -1
  80. data/test/rubygems/test_gem_commands_generate_index_command.rb +1 -1
  81. data/test/rubygems/test_gem_commands_help_command.rb +1 -1
  82. data/test/rubygems/test_gem_commands_info_command.rb +1 -1
  83. data/test/rubygems/test_gem_commands_install_command.rb +1 -1
  84. data/test/rubygems/test_gem_commands_list_command.rb +1 -1
  85. data/test/rubygems/test_gem_commands_lock_command.rb +1 -1
  86. data/test/rubygems/test_gem_commands_mirror.rb +1 -1
  87. data/test/rubygems/test_gem_commands_open_command.rb +1 -1
  88. data/test/rubygems/test_gem_commands_outdated_command.rb +1 -1
  89. data/test/rubygems/test_gem_commands_owner_command.rb +1 -1
  90. data/test/rubygems/test_gem_commands_pristine_command.rb +1 -1
  91. data/test/rubygems/test_gem_commands_push_command.rb +1 -1
  92. data/test/rubygems/test_gem_commands_query_command.rb +1 -1
  93. data/test/rubygems/test_gem_commands_search_command.rb +1 -1
  94. data/test/rubygems/test_gem_commands_server_command.rb +1 -1
  95. data/test/rubygems/test_gem_commands_setup_command.rb +4 -4
  96. data/test/rubygems/test_gem_commands_signin_command.rb +1 -1
  97. data/test/rubygems/test_gem_commands_signout_command.rb +1 -1
  98. data/test/rubygems/test_gem_commands_sources_command.rb +1 -1
  99. data/test/rubygems/test_gem_commands_specification_command.rb +1 -1
  100. data/test/rubygems/test_gem_commands_stale_command.rb +1 -1
  101. data/test/rubygems/test_gem_commands_uninstall_command.rb +1 -1
  102. data/test/rubygems/test_gem_commands_unpack_command.rb +1 -1
  103. data/test/rubygems/test_gem_commands_update_command.rb +1 -1
  104. data/test/rubygems/test_gem_commands_which_command.rb +1 -1
  105. data/test/rubygems/test_gem_commands_yank_command.rb +1 -1
  106. data/test/rubygems/test_gem_config_file.rb +1 -1
  107. data/test/rubygems/test_gem_dependency.rb +1 -1
  108. data/test/rubygems/test_gem_dependency_installer.rb +1 -1
  109. data/test/rubygems/test_gem_dependency_list.rb +1 -1
  110. data/test/rubygems/test_gem_dependency_resolution_error.rb +1 -1
  111. data/test/rubygems/test_gem_doctor.rb +1 -1
  112. data/test/rubygems/test_gem_ext_builder.rb +4 -1
  113. data/test/rubygems/test_gem_ext_cmake_builder.rb +1 -1
  114. data/test/rubygems/test_gem_ext_configure_builder.rb +1 -1
  115. data/test/rubygems/test_gem_ext_ext_conf_builder.rb +1 -1
  116. data/test/rubygems/test_gem_ext_rake_builder.rb +1 -1
  117. data/test/rubygems/test_gem_gem_runner.rb +1 -1
  118. data/test/rubygems/test_gem_gemcutter_utilities.rb +1 -1
  119. data/test/rubygems/test_gem_impossible_dependencies_error.rb +1 -1
  120. data/test/rubygems/test_gem_indexer.rb +1 -1
  121. data/test/rubygems/test_gem_install_update_options.rb +1 -1
  122. data/test/rubygems/test_gem_installer.rb +5 -3
  123. data/test/rubygems/test_gem_local_remote_options.rb +1 -1
  124. data/test/rubygems/test_gem_name_tuple.rb +1 -1
  125. data/test/rubygems/test_gem_package.rb +9 -2
  126. data/test/rubygems/test_gem_package_old.rb +1 -1
  127. data/test/rubygems/test_gem_package_tar_header.rb +1 -1
  128. data/test/rubygems/test_gem_package_tar_reader.rb +1 -1
  129. data/test/rubygems/test_gem_package_tar_reader_entry.rb +1 -1
  130. data/test/rubygems/test_gem_package_tar_writer.rb +1 -1
  131. data/test/rubygems/test_gem_package_task.rb +1 -1
  132. data/test/rubygems/test_gem_path_support.rb +1 -1
  133. data/test/rubygems/test_gem_platform.rb +1 -1
  134. data/test/rubygems/test_gem_rdoc.rb +1 -1
  135. data/test/rubygems/test_gem_remote_fetcher.rb +1 -1
  136. data/test/rubygems/test_gem_request.rb +1 -1
  137. data/test/rubygems/test_gem_request_connection_pools.rb +1 -1
  138. data/test/rubygems/test_gem_request_set.rb +1 -1
  139. data/test/rubygems/test_gem_request_set_gem_dependency_api.rb +1 -1
  140. data/test/rubygems/test_gem_request_set_lockfile.rb +1 -1
  141. data/test/rubygems/test_gem_request_set_lockfile_parser.rb +1 -1
  142. data/test/rubygems/test_gem_request_set_lockfile_tokenizer.rb +1 -1
  143. data/test/rubygems/test_gem_requirement.rb +35 -1
  144. data/test/rubygems/test_gem_resolver.rb +1 -1
  145. data/test/rubygems/test_gem_resolver_activation_request.rb +1 -1
  146. data/test/rubygems/test_gem_resolver_api_set.rb +1 -1
  147. data/test/rubygems/test_gem_resolver_api_specification.rb +1 -1
  148. data/test/rubygems/test_gem_resolver_best_set.rb +1 -1
  149. data/test/rubygems/test_gem_resolver_composed_set.rb +1 -1
  150. data/test/rubygems/test_gem_resolver_conflict.rb +1 -1
  151. data/test/rubygems/test_gem_resolver_dependency_request.rb +1 -1
  152. data/test/rubygems/test_gem_resolver_git_set.rb +1 -1
  153. data/test/rubygems/test_gem_resolver_git_specification.rb +2 -1
  154. data/test/rubygems/test_gem_resolver_index_set.rb +1 -1
  155. data/test/rubygems/test_gem_resolver_index_specification.rb +1 -1
  156. data/test/rubygems/test_gem_resolver_installed_specification.rb +1 -1
  157. data/test/rubygems/test_gem_resolver_installer_set.rb +1 -1
  158. data/test/rubygems/test_gem_resolver_local_specification.rb +1 -1
  159. data/test/rubygems/test_gem_resolver_lock_set.rb +1 -1
  160. data/test/rubygems/test_gem_resolver_lock_specification.rb +1 -1
  161. data/test/rubygems/test_gem_resolver_requirement_list.rb +1 -1
  162. data/test/rubygems/test_gem_resolver_specification.rb +1 -1
  163. data/test/rubygems/test_gem_resolver_vendor_set.rb +1 -1
  164. data/test/rubygems/test_gem_resolver_vendor_specification.rb +1 -1
  165. data/test/rubygems/test_gem_security.rb +1 -1
  166. data/test/rubygems/test_gem_security_policy.rb +1 -1
  167. data/test/rubygems/test_gem_security_signer.rb +1 -1
  168. data/test/rubygems/test_gem_security_trust_dir.rb +1 -1
  169. data/test/rubygems/test_gem_server.rb +5 -5
  170. data/test/rubygems/test_gem_silent_ui.rb +1 -1
  171. data/test/rubygems/test_gem_source.rb +1 -1
  172. data/test/rubygems/test_gem_source_fetch_problem.rb +1 -1
  173. data/test/rubygems/test_gem_source_git.rb +1 -1
  174. data/test/rubygems/test_gem_source_installed.rb +1 -1
  175. data/test/rubygems/test_gem_source_list.rb +1 -1
  176. data/test/rubygems/test_gem_source_local.rb +1 -1
  177. data/test/rubygems/test_gem_source_lock.rb +1 -1
  178. data/test/rubygems/test_gem_source_specific_file.rb +1 -1
  179. data/test/rubygems/test_gem_source_subpath_problem.rb +1 -1
  180. data/test/rubygems/test_gem_source_vendor.rb +1 -1
  181. data/test/rubygems/test_gem_spec_fetcher.rb +1 -1
  182. data/test/rubygems/test_gem_specification.rb +1 -165
  183. data/test/rubygems/test_gem_stream_ui.rb +1 -1
  184. data/test/rubygems/test_gem_stub_specification.rb +1 -1
  185. data/test/rubygems/test_gem_text.rb +1 -1
  186. data/test/rubygems/test_gem_uninstaller.rb +10 -3
  187. data/test/rubygems/test_gem_unsatisfiable_dependency_error.rb +1 -1
  188. data/test/rubygems/test_gem_uri_formatter.rb +1 -1
  189. data/test/rubygems/test_gem_util.rb +1 -1
  190. data/test/rubygems/test_gem_validator.rb +1 -1
  191. data/test/rubygems/test_gem_version.rb +1 -1
  192. data/test/rubygems/test_gem_version_option.rb +1 -1
  193. data/test/rubygems/test_kernel.rb +1 -1
  194. data/test/rubygems/test_project_sanity.rb +1 -1
  195. data/test/rubygems/test_remote_fetch_error.rb +1 -1
  196. data/test/rubygems/test_require.rb +1 -1
  197. data/test/rubygems/test_rubygems.rb +44 -0
  198. data/{lib/rubygems/test_utilities.rb → test/rubygems/utilities.rb} +0 -2
  199. metadata +8 -9
  200. data/Rakefile +0 -401
  201. data/lib/rubygems/syck_hack.rb +0 -77
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 52d933727e75e688a2283b38dfbecc0997bd5ad8ae07735153c8c93fb868d1c2
4
- data.tar.gz: 932932f5c5ef970bbd45d918985cccab896094ab07b20e75665270a92a8f72fd
3
+ metadata.gz: 7512a42ddcfe60a9e59f8e41784a0231ef8475623d8d26049b9a569464f29362
4
+ data.tar.gz: 55bf6b6feb583c388c333bbda49a6cfea16b5ab4fbdd0729f3848b8e43446e61
5
5
  SHA512:
6
- metadata.gz: c362d63f528942ce0ef7fbc2f70bd48c640eff9a2237a223cd6e1fc1144760b0727dd45bf71655e2d67791dc4f4220dfae3a7ff936079cd6ebd12e800ef43312
7
- data.tar.gz: 5ceeb69663855c94864fad8a2ff609d1bd9307c946dcac81227eb6d537986faf326925118ab4c8692b435b15f8b05e63d3d859beb485a150e8069bb4e232f2c2
6
+ metadata.gz: d517a10dc959cac467f01ae031b055d7de7cfe5f325ee78105b58d75069f9b239c5f8fbcd3ae1541a63bf7c5f148791dc4366a84a7c7f6465a689c8e2375784f
7
+ data.tar.gz: 0bc64e82a79dac9d2dad0af7471ab9587eddeb2795b20651fa8a8f30eb8915fd56080984806d1c12b15b84890308e264011d45dd22b55945c11b02009aec4f88
data/CHANGELOG.md CHANGED
@@ -1,3 +1,54 @@
1
+ # 3.2.26 / 2021-08-17
2
+
3
+ ## Enhancements:
4
+
5
+ * Enhance the error handling for loading the
6
+ `rubygems/defaults/operating_system` file. Pull request #4824 by
7
+ intuxicated
8
+ * Ignore `RUBYGEMS_GEMDEPS` for the bundler gem. Pull request #4532 by
9
+ deivid-rodriguez
10
+
11
+ ## Bug fixes:
12
+
13
+ * Also load user installed rubygems plugins. Pull request #4829 by
14
+ deivid-rodriguez
15
+
16
+ # 3.2.25 / 2021-07-30
17
+
18
+ ## Enhancements:
19
+
20
+ * Don't load the `base64` library since it's not used. Pull request #4785
21
+ by deivid-rodriguez
22
+ * Don't load the `resolv` library since it's not used. Pull request #4784
23
+ by deivid-rodriguez
24
+ * Lazily load `shellwords` library. Pull request #4783 by deivid-rodriguez
25
+ * Check requirements class before loading marshalled requirements. Pull
26
+ request #4651 by nobu
27
+
28
+ ## Bug fixes:
29
+
30
+ * Add missing `require 'fileutils'` in `Gem::ConfigFile`. Pull request
31
+ #4768 by ybiquitous
32
+
33
+ # 3.2.24 / 2021-07-15
34
+
35
+ ## Bug fixes:
36
+
37
+ * Fix contradictory message about deletion of default gem. Pull request
38
+ #4739 by jaredbeck
39
+
40
+ ## Documentation:
41
+
42
+ * Add a description about `GEM_HOST_OTP_CODE` to help text. Pull request
43
+ #4742 by ybiquitous
44
+
45
+ # 3.2.23 / 2021-07-09
46
+
47
+ ## Enhancements:
48
+
49
+ * Rewind IO source to allow working with contents in memory. Pull request
50
+ #4729 by drcapulet
51
+
1
52
  # 3.2.22 / 2021-07-06
2
53
 
3
54
  ## Enhancements:
data/Manifest.txt CHANGED
@@ -7,7 +7,6 @@ MIT.txt
7
7
  Manifest.txt
8
8
  POLICIES.md
9
9
  README.md
10
- Rakefile
11
10
  UPGRADING.md
12
11
  bin/gem
13
12
  bin/update_rubygems
@@ -379,7 +378,6 @@ lib/rubygems/install_default_message.rb
379
378
  lib/rubygems/install_message.rb
380
379
  lib/rubygems/install_update_options.rb
381
380
  lib/rubygems/installer.rb
382
- lib/rubygems/installer_test_case.rb
383
381
  lib/rubygems/installer_uninstaller_utils.rb
384
382
  lib/rubygems/local_remote_options.rb
385
383
  lib/rubygems/mock_gem_ui.rb
@@ -394,7 +392,6 @@ lib/rubygems/package/source.rb
394
392
  lib/rubygems/package/tar_header.rb
395
393
  lib/rubygems/package/tar_reader.rb
396
394
  lib/rubygems/package/tar_reader/entry.rb
397
- lib/rubygems/package/tar_test_case.rb
398
395
  lib/rubygems/package/tar_writer.rb
399
396
  lib/rubygems/package_task.rb
400
397
  lib/rubygems/path_support.rb
@@ -486,9 +483,6 @@ lib/rubygems/ssl_certs/.document
486
483
  lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA.pem
487
484
  lib/rubygems/ssl_certs/rubygems.org/GlobalSignRootCA_R3.pem
488
485
  lib/rubygems/stub_specification.rb
489
- lib/rubygems/syck_hack.rb
490
- lib/rubygems/test_case.rb
491
- lib/rubygems/test_utilities.rb
492
486
  lib/rubygems/text.rb
493
487
  lib/rubygems/uninstaller.rb
494
488
  lib/rubygems/uri_formatter.rb
@@ -528,6 +522,8 @@ test/rubygems/good_rake.rb
528
522
  test/rubygems/grandchild_cert.pem
529
523
  test/rubygems/grandchild_cert_32.pem
530
524
  test/rubygems/grandchild_key.pem
525
+ test/rubygems/helper.rb
526
+ test/rubygems/installer_test_case.rb
531
527
  test/rubygems/invalid_client.pem
532
528
  test/rubygems/invalid_issuer_cert.pem
533
529
  test/rubygems/invalid_issuer_cert_32.pem
@@ -537,6 +533,7 @@ test/rubygems/invalid_signer_cert_32.pem
537
533
  test/rubygems/invalidchild_cert.pem
538
534
  test/rubygems/invalidchild_cert_32.pem
539
535
  test/rubygems/invalidchild_key.pem
536
+ test/rubygems/package/tar_test_case.rb
540
537
  test/rubygems/packages/ascii_binder-0.1.10.1.gem
541
538
  test/rubygems/packages/ill-formatted-platform-1.0.0.10.gem
542
539
  test/rubygems/plugin/exception/rubygems_plugin.rb
@@ -690,6 +687,8 @@ test/rubygems/test_kernel.rb
690
687
  test/rubygems/test_project_sanity.rb
691
688
  test/rubygems/test_remote_fetch_error.rb
692
689
  test/rubygems/test_require.rb
690
+ test/rubygems/test_rubygems.rb
691
+ test/rubygems/utilities.rb
693
692
  test/rubygems/wrong_key_cert.pem
694
693
  test/rubygems/wrong_key_cert_32.pem
695
694
  test/test_changelog_generator.rb
data/bundler/CHANGELOG.md CHANGED
@@ -1,3 +1,68 @@
1
+ # 2.2.26 (August 17, 2021)
2
+
3
+ ## Enhancements:
4
+
5
+ - Remove `RUBYGEMS_GEMDEPS` warning [#4827](https://github.com/rubygems/rubygems/pull/4827)
6
+ - Better defaults for GitHub Actions template generated by `bundle gem` [#4619](https://github.com/rubygems/rubygems/pull/4619)
7
+ - Make `bundle exec` keep file descriptors by default [#4812](https://github.com/rubygems/rubygems/pull/4812)
8
+ - Exclude gemspec file itself from file list of gems generated by `bundle gem` [#4650](https://github.com/rubygems/rubygems/pull/4650)
9
+ - Fix a couple small typos in deprecation / error messages [#4806](https://github.com/rubygems/rubygems/pull/4806)
10
+ - Make script generated by `bundle install --standalone` resilient to moving the application to a differently nested folder when `path` sources are used [#4792](https://github.com/rubygems/rubygems/pull/4792)
11
+ - Exclude CI files and issue templates from file list of gems generated by `bundle gem` [#4033](https://github.com/rubygems/rubygems/pull/4033)
12
+
13
+ ## Bug fixes:
14
+
15
+ - Respect `BUNDLE_USER_HOME` env when choosing config location [#4828](https://github.com/rubygems/rubygems/pull/4828)
16
+ - Fix `bundle gem` on path with spaces [#4816](https://github.com/rubygems/rubygems/pull/4816)
17
+ - Fix bundler hitting the network in some cases where not allowed [#4805](https://github.com/rubygems/rubygems/pull/4805)
18
+
19
+ # 2.2.25 (July 30, 2021)
20
+
21
+ ## Deprecations:
22
+
23
+ - Deprecate Gemfile without an explicit global source [#4779](https://github.com/rubygems/rubygems/pull/4779)
24
+ - Deprecate `bundle cache --path` [#4496](https://github.com/rubygems/rubygems/pull/4496)
25
+
26
+ ## Enhancements:
27
+
28
+ - Give better errors when materialization fails [#4788](https://github.com/rubygems/rubygems/pull/4788)
29
+ - Lazily load `shellwords` library [#4786](https://github.com/rubygems/rubygems/pull/4786)
30
+ - Show original error and backtrace directly on `bundle install` errors instead of a more brittle `gem install` hint [#4778](https://github.com/rubygems/rubygems/pull/4778)
31
+ - Remove LoadError message in regards to requiring a relative file [#4772](https://github.com/rubygems/rubygems/pull/4772)
32
+
33
+ ## Bug fixes:
34
+
35
+ - Fix `BUNDLE_USER_CONFIG` no longer respected as config location [#4797](https://github.com/rubygems/rubygems/pull/4797)
36
+ - Fix `--standalone` installation of default gems [#4782](https://github.com/rubygems/rubygems/pull/4782)
37
+ - Fix `--quiet` flag not printing warnings [#4781](https://github.com/rubygems/rubygems/pull/4781)
38
+ - Fix bundler binstub version selection [#4775](https://github.com/rubygems/rubygems/pull/4775)
39
+ - Fix interrupt handling in Bundler workers [#4767](https://github.com/rubygems/rubygems/pull/4767)
40
+
41
+ # 2.2.24 (July 15, 2021)
42
+
43
+ ## Bug fixes:
44
+
45
+ - Fix development gem unintentionally removed on an edge case [#4751](https://github.com/rubygems/rubygems/pull/4751)
46
+ - Fix dangling empty plugin hooks [#4755](https://github.com/rubygems/rubygems/pull/4755)
47
+ - Fix `bundle plugin install --help` showing `bundle install`'s help [#4756](https://github.com/rubygems/rubygems/pull/4756)
48
+ - Make sure `bundle check` shows uniq missing gems [#4749](https://github.com/rubygems/rubygems/pull/4749)
49
+
50
+ ## Performance:
51
+
52
+ - Slightly speed up `bundler/setup` [#4750](https://github.com/rubygems/rubygems/pull/4750)
53
+
54
+ # 2.2.23 (July 9, 2021)
55
+
56
+ ## Enhancements:
57
+
58
+ - Fix `bundle install` on truffleruby selecting incorrect variant for `sorbet-static` gem [#4625](https://github.com/rubygems/rubygems/pull/4625)
59
+ - Spare meaningless warning on read-only bundle invocations [#4724](https://github.com/rubygems/rubygems/pull/4724)
60
+
61
+ ## Bug fixes:
62
+
63
+ - Fix incorrect warning about duplicated gems in the Gemfile [#4732](https://github.com/rubygems/rubygems/pull/4732)
64
+ - Fix `bundle plugin install foo` crashing [#4734](https://github.com/rubygems/rubygems/pull/4734)
65
+
1
66
  # 2.2.22 (July 6, 2021)
2
67
 
3
68
  ## Enhancements:
@@ -236,8 +236,9 @@ module Bundler
236
236
  end
237
237
 
238
238
  if warning
239
- user_home = tmp_home_path(warning)
240
- Bundler.ui.warn "#{warning}\nBundler will use `#{user_home}' as your home directory temporarily.\n"
239
+ Bundler.ui.warn "#{warning}\n"
240
+ user_home = tmp_home_path
241
+ Bundler.ui.warn "Bundler will use `#{user_home}' as your home directory temporarily.\n"
241
242
  user_home
242
243
  else
243
244
  Pathname.new(home)
@@ -652,10 +653,6 @@ EOF
652
653
  rescue ScriptError, StandardError => e
653
654
  msg = "There was an error while loading `#{path.basename}`: #{e.message}"
654
655
 
655
- if e.is_a?(LoadError)
656
- msg += "\nDoes it try to require a relative path? That's been removed in Ruby 1.9"
657
- end
658
-
659
656
  raise GemspecError, Dsl::DSLError.new(msg, path, e.backtrace, contents)
660
657
  end
661
658
 
@@ -684,15 +681,13 @@ EOF
684
681
  Bundler.rubygems.clear_paths
685
682
  end
686
683
 
687
- def tmp_home_path(warning)
684
+ def tmp_home_path
688
685
  Kernel.send(:require, "tmpdir")
689
686
  SharedHelpers.filesystem_access(Dir.tmpdir) do
690
687
  path = Bundler.tmp
691
688
  at_exit { Bundler.rm_rf(path) }
692
689
  path
693
690
  end
694
- rescue RuntimeError => e
695
- raise e.exception("#{warning}\nBundler also failed to create a temporary home directory':\n#{e}")
696
691
  end
697
692
 
698
693
  # @param env [Hash]
@@ -4,8 +4,8 @@ module Bundler
4
4
  # Represents metadata from when the Bundler gem was built.
5
5
  module BuildMetadata
6
6
  # begin ivars
7
- @built_at = "2021-07-06".freeze
8
- @git_commit_sha = "0bdd3e8e71".freeze
7
+ @built_at = "2021-08-17".freeze
8
+ @git_commit_sha = "21fd333002".freeze
9
9
  @release = true
10
10
  # end ivars
11
11
 
@@ -14,6 +14,7 @@ module Bundler
14
14
  COMMAND_ALIASES = {
15
15
  "check" => "c",
16
16
  "install" => "i",
17
+ "plugin" => "",
17
18
  "list" => "ls",
18
19
  "exec" => ["e", "ex", "exe"],
19
20
  "cache" => ["package", "pack"],
@@ -72,14 +73,6 @@ module Bundler
72
73
  Bundler.ui = UI::Shell.new(options)
73
74
  Bundler.ui.level = "debug" if options["verbose"]
74
75
  unprinted_warnings.each {|w| Bundler.ui.warn(w) }
75
-
76
- if ENV["RUBYGEMS_GEMDEPS"] && !ENV["RUBYGEMS_GEMDEPS"].empty?
77
- Bundler.ui.warn(
78
- "The RUBYGEMS_GEMDEPS environment variable is set. This enables RubyGems' " \
79
- "experimental Gemfile mode, which may conflict with Bundler and cause unexpected errors. " \
80
- "To remove this warning, unset RUBYGEMS_GEMDEPS.", :wrap => true
81
- )
82
- end
83
76
  end
84
77
 
85
78
  check_unknown_options!(:except => [:config, :exec])
@@ -455,6 +448,12 @@ module Bundler
455
448
  "do in future versions. Instead please use `bundle config set cache_all true`, " \
456
449
  "and stop using this flag" if ARGV.include?("--all")
457
450
 
451
+ SharedHelpers.major_deprecation 2,
452
+ "The `--path` flag is deprecated because its semantics are unclear. " \
453
+ "Use `bundle config cache_path` to configure the path of your cache of gems, " \
454
+ "and `bundle config path` to configure the path where your gems are installed, " \
455
+ "and stop using this flag" if ARGV.include?("--path")
456
+
458
457
  require_relative "cli/cache"
459
458
  Cache.new(options).run
460
459
  end
@@ -462,7 +461,7 @@ module Bundler
462
461
  map aliases_for("cache")
463
462
 
464
463
  desc "exec [OPTIONS]", "Run the command in context of the bundle"
465
- method_option :keep_file_descriptors, :type => :boolean, :default => false
464
+ method_option :keep_file_descriptors, :type => :boolean, :default => true
466
465
  method_option :gemfile, :type => :string, :required => false
467
466
  long_desc <<-D
468
467
  Exec runs a command, providing it access to the gems in the bundle. While using
@@ -470,6 +469,10 @@ module Bundler
470
469
  into the system wide RubyGems repository.
471
470
  D
472
471
  def exec(*args)
472
+ if ARGV.include?("--no-keep-file-descriptors")
473
+ SharedHelpers.major_deprecation(2, "The `--no-keep-file-descriptors` has been deprecated. `bundle exec` no longer mess with your file descriptors. Close them in the exec'd script if you need to")
474
+ end
475
+
473
476
  require_relative "cli/exec"
474
477
  Exec.new(options, args).run
475
478
  end
@@ -9,7 +9,7 @@ module Bundler
9
9
  end
10
10
 
11
11
  def run
12
- Bundler.ui.level = "error" if options[:quiet]
12
+ Bundler.ui.level = "warn" if options[:quiet]
13
13
  Bundler.settings.set_command_option_if_given :path, options[:path]
14
14
  Bundler.settings.set_command_option_if_given :cache_path, options["cache-path"]
15
15
 
@@ -15,7 +15,7 @@ module Bundler
15
15
  definition.validate_runtime!
16
16
 
17
17
  begin
18
- definition.resolve_only_locally!
18
+ definition.resolve_with_cache!
19
19
  not_installed = definition.missing_specs
20
20
  rescue GemNotFound, VersionConflict
21
21
  Bundler.ui.error "Bundler can't satisfy your Gemfile's dependencies."
@@ -61,7 +61,7 @@ module Bundler
61
61
  end
62
62
 
63
63
  def run
64
- Bundler.ui.level = "error" if options[:quiet]
64
+ Bundler.ui.level = "warn" if options[:quiet]
65
65
  Bundler.settings.validate!
66
66
  check!
67
67
 
@@ -12,12 +12,7 @@ module Bundler
12
12
  @options = options
13
13
  @cmd = args.shift
14
14
  @args = args
15
-
16
- if !Bundler.current_ruby.jruby?
17
- @args << { :close_others => !options.keep_file_descriptors? }
18
- elsif options.keep_file_descriptors?
19
- Bundler.ui.warn "Ruby version #{RUBY_VERSION} defaults to keeping non-standard file descriptors on Kernel#exec."
20
- end
15
+ @args << { :close_others => !options.keep_file_descriptors? } unless Bundler.current_ruby.jruby?
21
16
  end
22
17
 
23
18
  def run
@@ -184,14 +184,15 @@ module Bundler
184
184
  )
185
185
  end
186
186
 
187
- if File.exist?(target) && !File.directory?(target)
187
+ if target.exist? && !target.directory?
188
188
  Bundler.ui.error "Couldn't create a new gem named `#{gem_name}` because there's an existing file named `#{gem_name}`."
189
189
  exit Bundler::BundlerError.all_errors[Bundler::GenericSystemCallError]
190
190
  end
191
191
 
192
192
  if use_git
193
193
  Bundler.ui.info "Initializing git repo in #{target}"
194
- `git init #{target}`
194
+ require "shellwords"
195
+ `git init #{target.to_s.shellescape}`
195
196
 
196
197
  config[:git_default_branch] = File.read("#{target}/.git/HEAD").split("/").last.chomp
197
198
  end
@@ -8,7 +8,7 @@ module Bundler
8
8
  end
9
9
 
10
10
  def run
11
- Bundler.ui.level = "error" if options[:quiet]
11
+ Bundler.ui.level = "warn" if options[:quiet]
12
12
 
13
13
  warn_if_root
14
14
 
@@ -60,7 +60,7 @@ module Bundler
60
60
  installer = Installer.install(Bundler.root, definition, options)
61
61
 
62
62
  Bundler.settings.temporary(:cache_all_platforms => options[:local] ? false : Bundler.settings[:cache_all_platforms]) do
63
- Bundler.load.cache if Bundler.app_cache.exist? && !options["no-cache"] && !Bundler.frozen_bundle?
63
+ Bundler.load.cache(nil, options[:local]) if Bundler.app_cache.exist? && !options["no-cache"] && !Bundler.frozen_bundle?
64
64
  end
65
65
 
66
66
  Bundler.ui.confirm "Bundle complete! #{dependencies_count_for(definition)}, #{gems_installed_for(definition)}."
@@ -83,22 +83,9 @@ module Bundler
83
83
  end
84
84
 
85
85
  Bundler::CLI::Common.output_fund_metadata_summary
86
- rescue GemNotFound, VersionConflict => e
87
- if options[:local] && Bundler.app_cache.exist?
88
- Bundler.ui.warn "Some gems seem to be missing from your #{Bundler.settings.app_cache_path} directory."
89
- end
90
-
91
- unless Bundler.definition.has_rubygems_remotes?
92
- Bundler.ui.warn <<-WARN, :wrap => true
93
- Your Gemfile has no gem server sources. If you need gems that are \
94
- not already on your machine, add a line like this to your Gemfile:
95
- source 'https://rubygems.org'
96
- WARN
97
- end
98
- raise e
99
- rescue Gem::InvalidSpecificationException => e
86
+ rescue Gem::InvalidSpecificationException
100
87
  Bundler.ui.warn "You have one or more invalid gemspecs that need to be fixed."
101
- raise e
88
+ raise
102
89
  end
103
90
 
104
91
  private
@@ -16,7 +16,13 @@ module Bundler
16
16
  specs = if @only_group.any? || @without_group.any?
17
17
  filtered_specs_by_groups
18
18
  else
19
- Bundler.load.specs
19
+ begin
20
+ Bundler.load.specs
21
+ rescue GemNotFound => e
22
+ Bundler.ui.error e.message
23
+ Bundler.ui.warn "Install missing gems with `bundle install`."
24
+ exit 1
25
+ end
20
26
  end.reject {|s| s.name == "bundler" }.sort_by(&:name)
21
27
 
22
28
  return Bundler.ui.info "No gems in the Gemfile" if specs.empty?
@@ -1,7 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- require "shellwords"
4
-
5
3
  module Bundler
6
4
  class CLI::Open
7
5
  attr_reader :options, :name
@@ -19,6 +17,7 @@ module Bundler
19
17
  else
20
18
  path = spec.full_gem_path
21
19
  Dir.chdir(path) do
20
+ require "shellwords"
22
21
  command = Shellwords.split(editor) + [path]
23
22
  Bundler.with_original_env do
24
23
  system(*command)
@@ -9,7 +9,7 @@ module Bundler
9
9
  end
10
10
 
11
11
  def run
12
- Bundler.ui.level = "error" if options[:quiet]
12
+ Bundler.ui.level = "warn" if options[:quiet]
13
13
 
14
14
  Plugin.gemfile_install(Bundler.default_gemfile) if Bundler.feature_flag.plugins?
15
15