bundler 2.2.33 → 2.4.18

Sign up to get free protection for your applications and to get access to all the features.
Files changed (263) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +682 -1
  3. data/README.md +3 -6
  4. data/bundler.gemspec +8 -10
  5. data/exe/bundle +12 -24
  6. data/exe/bundler +1 -1
  7. data/lib/bundler/.document +1 -0
  8. data/lib/bundler/build_metadata.rb +3 -3
  9. data/lib/bundler/cli/add.rb +1 -1
  10. data/lib/bundler/cli/binstubs.rb +5 -1
  11. data/lib/bundler/cli/check.rb +1 -1
  12. data/lib/bundler/cli/common.rb +4 -2
  13. data/lib/bundler/cli/config.rb +10 -1
  14. data/lib/bundler/cli/console.rb +2 -2
  15. data/lib/bundler/cli/doctor.rb +7 -1
  16. data/lib/bundler/cli/gem.rb +73 -41
  17. data/lib/bundler/cli/info.rb +11 -2
  18. data/lib/bundler/cli/init.rb +6 -2
  19. data/lib/bundler/cli/install.rb +15 -33
  20. data/lib/bundler/cli/lock.rb +8 -5
  21. data/lib/bundler/cli/open.rb +6 -4
  22. data/lib/bundler/cli/outdated.rb +13 -6
  23. data/lib/bundler/cli/platform.rb +2 -2
  24. data/lib/bundler/cli/show.rb +1 -1
  25. data/lib/bundler/cli/update.rb +6 -2
  26. data/lib/bundler/cli/viz.rb +1 -1
  27. data/lib/bundler/cli.rb +63 -20
  28. data/lib/bundler/compact_index_client/cache.rb +1 -10
  29. data/lib/bundler/compact_index_client/updater.rb +53 -39
  30. data/lib/bundler/compact_index_client.rb +0 -6
  31. data/lib/bundler/constants.rb +1 -1
  32. data/lib/bundler/current_ruby.rb +18 -6
  33. data/lib/bundler/definition.rb +289 -165
  34. data/lib/bundler/dependency.rb +24 -71
  35. data/lib/bundler/digest.rb +1 -1
  36. data/lib/bundler/dsl.rb +13 -45
  37. data/lib/bundler/endpoint_specification.rb +15 -13
  38. data/lib/bundler/env.rb +2 -2
  39. data/lib/bundler/environment_preserver.rb +3 -2
  40. data/lib/bundler/errors.rb +15 -15
  41. data/lib/bundler/feature_flag.rb +0 -2
  42. data/lib/bundler/fetcher/base.rb +6 -8
  43. data/lib/bundler/fetcher/compact_index.rb +18 -25
  44. data/lib/bundler/fetcher/dependency.rb +2 -6
  45. data/lib/bundler/fetcher/downloader.rb +2 -5
  46. data/lib/bundler/fetcher/index.rb +0 -26
  47. data/lib/bundler/fetcher.rb +22 -29
  48. data/lib/bundler/force_platform.rb +18 -0
  49. data/lib/bundler/friendly_errors.rb +21 -7
  50. data/lib/bundler/gem_helper.rb +2 -2
  51. data/lib/bundler/gem_helpers.rb +9 -2
  52. data/lib/bundler/gem_version_promoter.rb +53 -98
  53. data/lib/bundler/graph.rb +3 -3
  54. data/lib/bundler/index.rb +13 -51
  55. data/lib/bundler/injector.rb +18 -4
  56. data/lib/bundler/inline.rb +9 -21
  57. data/lib/bundler/installer/gem_installer.rb +13 -5
  58. data/lib/bundler/installer/parallel_installer.rb +3 -33
  59. data/lib/bundler/installer/standalone.rb +42 -11
  60. data/lib/bundler/installer.rb +21 -45
  61. data/lib/bundler/lazy_specification.rb +55 -54
  62. data/lib/bundler/lockfile_generator.rb +3 -3
  63. data/lib/bundler/lockfile_parser.rb +29 -27
  64. data/lib/bundler/man/bundle-add.1 +21 -5
  65. data/lib/bundler/man/bundle-add.1.ronn +16 -4
  66. data/lib/bundler/man/bundle-binstubs.1 +1 -1
  67. data/lib/bundler/man/bundle-cache.1 +9 -3
  68. data/lib/bundler/man/bundle-cache.1.ronn +9 -2
  69. data/lib/bundler/man/bundle-check.1 +1 -1
  70. data/lib/bundler/man/bundle-clean.1 +2 -2
  71. data/lib/bundler/man/bundle-clean.1.ronn +1 -1
  72. data/lib/bundler/man/bundle-config.1 +32 -16
  73. data/lib/bundler/man/bundle-config.1.ronn +29 -20
  74. data/lib/bundler/man/bundle-console.1 +53 -0
  75. data/lib/bundler/man/bundle-console.1.ronn +44 -0
  76. data/lib/bundler/man/bundle-doctor.1 +1 -1
  77. data/lib/bundler/man/bundle-exec.1 +6 -6
  78. data/lib/bundler/man/bundle-exec.1.ronn +6 -6
  79. data/lib/bundler/man/bundle-gem.1 +27 -37
  80. data/lib/bundler/man/bundle-gem.1.ronn +5 -5
  81. data/lib/bundler/man/bundle-help.1 +13 -0
  82. data/lib/bundler/man/bundle-help.1.ronn +12 -0
  83. data/lib/bundler/man/bundle-info.1 +1 -1
  84. data/lib/bundler/man/bundle-init.1 +5 -1
  85. data/lib/bundler/man/bundle-init.1.ronn +2 -0
  86. data/lib/bundler/man/bundle-inject.1 +5 -2
  87. data/lib/bundler/man/bundle-inject.1.ronn +3 -1
  88. data/lib/bundler/man/bundle-install.1 +6 -31
  89. data/lib/bundler/man/bundle-install.1.ronn +8 -31
  90. data/lib/bundler/man/bundle-list.1 +1 -1
  91. data/lib/bundler/man/bundle-lock.1 +1 -1
  92. data/lib/bundler/man/bundle-open.1 +22 -2
  93. data/lib/bundler/man/bundle-open.1.ronn +9 -1
  94. data/lib/bundler/man/bundle-outdated.1 +15 -18
  95. data/lib/bundler/man/bundle-outdated.1.ronn +13 -19
  96. data/lib/bundler/man/bundle-platform.1 +16 -6
  97. data/lib/bundler/man/bundle-platform.1.ronn +14 -7
  98. data/lib/bundler/man/bundle-plugin.1 +81 -0
  99. data/lib/bundler/man/bundle-plugin.1.ronn +59 -0
  100. data/lib/bundler/man/bundle-pristine.1 +1 -1
  101. data/lib/bundler/man/bundle-remove.1 +1 -1
  102. data/lib/bundler/man/bundle-show.1 +1 -1
  103. data/lib/bundler/man/bundle-update.1 +2 -2
  104. data/lib/bundler/man/bundle-update.1.ronn +2 -1
  105. data/lib/bundler/man/bundle-version.1 +35 -0
  106. data/lib/bundler/man/bundle-version.1.ronn +24 -0
  107. data/lib/bundler/man/bundle-viz.1 +4 -1
  108. data/lib/bundler/man/bundle-viz.1.ronn +2 -0
  109. data/lib/bundler/man/bundle.1 +15 -10
  110. data/lib/bundler/man/bundle.1.ronn +12 -7
  111. data/lib/bundler/man/gemfile.5 +94 -83
  112. data/lib/bundler/man/gemfile.5.ronn +100 -87
  113. data/lib/bundler/man/index.txt +4 -0
  114. data/lib/bundler/match_metadata.rb +13 -0
  115. data/lib/bundler/match_platform.rb +0 -1
  116. data/lib/bundler/match_remote_metadata.rb +29 -0
  117. data/lib/bundler/mirror.rb +5 -7
  118. data/lib/bundler/plugin/api/source.rb +3 -9
  119. data/lib/bundler/plugin/index.rb +4 -4
  120. data/lib/bundler/plugin/installer/git.rb +0 -4
  121. data/lib/bundler/plugin/installer/rubygems.rb +0 -8
  122. data/lib/bundler/plugin/installer.rb +6 -3
  123. data/lib/bundler/plugin.rb +3 -1
  124. data/lib/bundler/process_lock.rb +1 -1
  125. data/lib/bundler/remote_specification.rb +7 -5
  126. data/lib/bundler/resolver/base.rb +107 -0
  127. data/lib/bundler/resolver/candidate.rb +94 -0
  128. data/lib/bundler/resolver/incompatibility.rb +15 -0
  129. data/lib/bundler/resolver/package.rb +72 -0
  130. data/lib/bundler/resolver/root.rb +25 -0
  131. data/lib/bundler/resolver/spec_group.rb +43 -71
  132. data/lib/bundler/resolver.rb +342 -302
  133. data/lib/bundler/ruby_dsl.rb +1 -1
  134. data/lib/bundler/ruby_version.rb +6 -19
  135. data/lib/bundler/rubygems_ext.rb +149 -28
  136. data/lib/bundler/rubygems_gem_installer.rb +32 -20
  137. data/lib/bundler/rubygems_integration.rb +24 -95
  138. data/lib/bundler/runtime.rb +2 -7
  139. data/lib/bundler/safe_marshal.rb +31 -0
  140. data/lib/bundler/self_manager.rb +168 -0
  141. data/lib/bundler/settings.rb +7 -12
  142. data/lib/bundler/setup.rb +4 -1
  143. data/lib/bundler/shared_helpers.rb +15 -22
  144. data/lib/bundler/source/git/git_proxy.rb +237 -74
  145. data/lib/bundler/source/git.rb +54 -38
  146. data/lib/bundler/source/metadata.rb +3 -4
  147. data/lib/bundler/source/path/installer.rb +1 -22
  148. data/lib/bundler/source/path.rb +7 -7
  149. data/lib/bundler/source/rubygems.rb +85 -128
  150. data/lib/bundler/source.rb +4 -5
  151. data/lib/bundler/source_list.rb +12 -2
  152. data/lib/bundler/source_map.rb +15 -2
  153. data/lib/bundler/spec_set.rb +62 -34
  154. data/lib/bundler/stub_specification.rb +5 -3
  155. data/lib/bundler/templates/Executable +3 -5
  156. data/lib/bundler/templates/Executable.bundler +6 -11
  157. data/lib/bundler/templates/Executable.standalone +4 -4
  158. data/lib/bundler/templates/Gemfile +0 -2
  159. data/lib/bundler/templates/newgem/Cargo.toml.tt +7 -0
  160. data/lib/bundler/templates/newgem/Gemfile.tt +3 -0
  161. data/lib/bundler/templates/newgem/README.md.tt +7 -11
  162. data/lib/bundler/templates/newgem/Rakefile.tt +22 -2
  163. data/lib/bundler/templates/newgem/bin/console.tt +0 -4
  164. data/lib/bundler/templates/newgem/circleci/config.yml.tt +12 -0
  165. data/lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt +15 -0
  166. data/lib/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt +10 -0
  167. data/lib/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt +6 -0
  168. data/lib/bundler/templates/newgem/ext/newgem/newgem.c.tt +1 -1
  169. data/lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt +12 -0
  170. data/lib/bundler/templates/newgem/github/workflows/main.yml.tt +11 -1
  171. data/lib/bundler/templates/newgem/gitignore.tt +3 -0
  172. data/lib/bundler/templates/newgem/gitlab-ci.yml.tt +13 -4
  173. data/lib/bundler/templates/newgem/newgem.gemspec.tt +11 -4
  174. data/lib/bundler/templates/newgem/standard.yml.tt +1 -0
  175. data/lib/bundler/templates/newgem/test/minitest/{newgem_test.rb.tt → test_newgem.rb.tt} +1 -1
  176. data/lib/bundler/ui/shell.rb +36 -13
  177. data/lib/bundler/ui/silent.rb +21 -5
  178. data/lib/bundler/uri_normalizer.rb +23 -0
  179. data/lib/bundler/vendor/connection_pool/lib/connection_pool/timed_stack.rb +3 -3
  180. data/lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb +0 -1
  181. data/lib/bundler/vendor/connection_pool/lib/connection_pool.rb +3 -1
  182. data/lib/bundler/vendor/fileutils/lib/fileutils.rb +1351 -409
  183. data/lib/bundler/vendor/net-http-persistent/README.rdoc +1 -1
  184. data/lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb +1 -1
  185. data/lib/bundler/vendor/pub_grub/LICENSE.txt +21 -0
  186. data/lib/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb +20 -0
  187. data/lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb +189 -0
  188. data/lib/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb +182 -0
  189. data/lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb +150 -0
  190. data/lib/bundler/vendor/pub_grub/lib/pub_grub/package.rb +43 -0
  191. data/lib/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb +121 -0
  192. data/lib/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb +45 -0
  193. data/lib/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb +19 -0
  194. data/lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb +60 -0
  195. data/lib/bundler/vendor/pub_grub/lib/pub_grub/term.rb +105 -0
  196. data/lib/bundler/vendor/pub_grub/lib/pub_grub/version.rb +3 -0
  197. data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb +129 -0
  198. data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb +411 -0
  199. data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb +248 -0
  200. data/lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb +178 -0
  201. data/lib/bundler/vendor/pub_grub/lib/pub_grub.rb +31 -0
  202. data/lib/bundler/vendor/thor/lib/thor/actions/file_manipulation.rb +6 -6
  203. data/lib/bundler/vendor/thor/lib/thor/actions/inject_into_file.rb +1 -2
  204. data/lib/bundler/vendor/thor/lib/thor/actions.rb +6 -2
  205. data/lib/bundler/vendor/thor/lib/thor/core_ext/hash_with_indifferent_access.rb +6 -0
  206. data/lib/bundler/vendor/thor/lib/thor/error.rb +9 -4
  207. data/lib/bundler/vendor/thor/lib/thor/parser/options.rb +19 -1
  208. data/lib/bundler/vendor/thor/lib/thor/shell/basic.rb +23 -5
  209. data/lib/bundler/vendor/thor/lib/thor/shell.rb +1 -1
  210. data/lib/bundler/vendor/thor/lib/thor/util.rb +1 -1
  211. data/lib/bundler/vendor/thor/lib/thor/version.rb +1 -1
  212. data/lib/bundler/vendor/tsort/lib/tsort.rb +318 -319
  213. data/lib/bundler/vendor/uri/lib/uri/common.rb +76 -91
  214. data/lib/bundler/vendor/uri/lib/uri/file.rb +7 -1
  215. data/lib/bundler/vendor/uri/lib/uri/ftp.rb +2 -2
  216. data/lib/bundler/vendor/uri/lib/uri/generic.rb +32 -13
  217. data/lib/bundler/vendor/uri/lib/uri/http.rb +40 -3
  218. data/lib/bundler/vendor/uri/lib/uri/https.rb +2 -2
  219. data/lib/bundler/vendor/uri/lib/uri/ldap.rb +2 -2
  220. data/lib/bundler/vendor/uri/lib/uri/ldaps.rb +2 -1
  221. data/lib/bundler/vendor/uri/lib/uri/mailto.rb +2 -3
  222. data/lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb +16 -23
  223. data/lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb +12 -18
  224. data/lib/bundler/vendor/uri/lib/uri/version.rb +1 -1
  225. data/lib/bundler/vendor/uri/lib/uri/ws.rb +83 -0
  226. data/lib/bundler/vendor/uri/lib/uri/wss.rb +23 -0
  227. data/lib/bundler/vendor/uri/lib/uri.rb +3 -3
  228. data/lib/bundler/vendored_persistent.rb +1 -33
  229. data/lib/bundler/{vendored_tmpdir.rb → vendored_pub_grub.rb} +1 -1
  230. data/lib/bundler/version.rb +5 -1
  231. data/lib/bundler/worker.rb +5 -7
  232. data/lib/bundler.rb +47 -82
  233. metadata +52 -38
  234. data/lib/bundler/dep_proxy.rb +0 -55
  235. data/lib/bundler/gemdeps.rb +0 -29
  236. data/lib/bundler/psyched_yaml.rb +0 -22
  237. data/lib/bundler/templates/gems.rb +0 -8
  238. data/lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt +0 -5
  239. data/lib/bundler/templates/newgem/travis.yml.tt +0 -6
  240. data/lib/bundler/vendor/molinillo/LICENSE +0 -9
  241. data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb +0 -57
  242. data/lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb +0 -88
  243. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb +0 -36
  244. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb +0 -66
  245. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb +0 -62
  246. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb +0 -63
  247. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb +0 -61
  248. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb +0 -126
  249. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb +0 -46
  250. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb +0 -36
  251. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb +0 -164
  252. data/lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb +0 -255
  253. data/lib/bundler/vendor/molinillo/lib/molinillo/errors.rb +0 -143
  254. data/lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb +0 -6
  255. data/lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb +0 -112
  256. data/lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb +0 -67
  257. data/lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb +0 -839
  258. data/lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb +0 -46
  259. data/lib/bundler/vendor/molinillo/lib/molinillo/state.rb +0 -58
  260. data/lib/bundler/vendor/molinillo/lib/molinillo.rb +0 -11
  261. data/lib/bundler/vendor/tmpdir/lib/tmpdir.rb +0 -154
  262. data/lib/bundler/vendored_molinillo.rb +0 -4
  263. data/lib/bundler/version_ranges.rb +0 -122
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bundler
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.33
4
+ version: 2.4.18
5
5
  platform: ruby
6
6
  authors:
7
7
  - André Arko
@@ -22,7 +22,7 @@ authors:
22
22
  autorequire:
23
23
  bindir: exe
24
24
  cert_chain: []
25
- date: 2021-12-07 00:00:00.000000000 Z
25
+ date: 2023-08-02 00:00:00.000000000 Z
26
26
  dependencies: []
27
27
  description: Bundler manages an application's dependencies through its entire life,
28
28
  across many machines, systematically and repeatably
@@ -41,6 +41,7 @@ files:
41
41
  - exe/bundle
42
42
  - exe/bundler
43
43
  - lib/bundler.rb
44
+ - lib/bundler/.document
44
45
  - lib/bundler/build_metadata.rb
45
46
  - lib/bundler/capistrano.rb
46
47
  - lib/bundler/cli.rb
@@ -79,7 +80,6 @@ files:
79
80
  - lib/bundler/constants.rb
80
81
  - lib/bundler/current_ruby.rb
81
82
  - lib/bundler/definition.rb
82
- - lib/bundler/dep_proxy.rb
83
83
  - lib/bundler/dependency.rb
84
84
  - lib/bundler/deployment.rb
85
85
  - lib/bundler/deprecate.rb
@@ -96,12 +96,12 @@ files:
96
96
  - lib/bundler/fetcher/dependency.rb
97
97
  - lib/bundler/fetcher/downloader.rb
98
98
  - lib/bundler/fetcher/index.rb
99
+ - lib/bundler/force_platform.rb
99
100
  - lib/bundler/friendly_errors.rb
100
101
  - lib/bundler/gem_helper.rb
101
102
  - lib/bundler/gem_helpers.rb
102
103
  - lib/bundler/gem_tasks.rb
103
104
  - lib/bundler/gem_version_promoter.rb
104
- - lib/bundler/gemdeps.rb
105
105
  - lib/bundler/graph.rb
106
106
  - lib/bundler/index.rb
107
107
  - lib/bundler/injector.rb
@@ -126,12 +126,16 @@ files:
126
126
  - lib/bundler/man/bundle-clean.1.ronn
127
127
  - lib/bundler/man/bundle-config.1
128
128
  - lib/bundler/man/bundle-config.1.ronn
129
+ - lib/bundler/man/bundle-console.1
130
+ - lib/bundler/man/bundle-console.1.ronn
129
131
  - lib/bundler/man/bundle-doctor.1
130
132
  - lib/bundler/man/bundle-doctor.1.ronn
131
133
  - lib/bundler/man/bundle-exec.1
132
134
  - lib/bundler/man/bundle-exec.1.ronn
133
135
  - lib/bundler/man/bundle-gem.1
134
136
  - lib/bundler/man/bundle-gem.1.ronn
137
+ - lib/bundler/man/bundle-help.1
138
+ - lib/bundler/man/bundle-help.1.ronn
135
139
  - lib/bundler/man/bundle-info.1
136
140
  - lib/bundler/man/bundle-info.1.ronn
137
141
  - lib/bundler/man/bundle-init.1
@@ -150,6 +154,8 @@ files:
150
154
  - lib/bundler/man/bundle-outdated.1.ronn
151
155
  - lib/bundler/man/bundle-platform.1
152
156
  - lib/bundler/man/bundle-platform.1.ronn
157
+ - lib/bundler/man/bundle-plugin.1
158
+ - lib/bundler/man/bundle-plugin.1.ronn
153
159
  - lib/bundler/man/bundle-pristine.1
154
160
  - lib/bundler/man/bundle-pristine.1.ronn
155
161
  - lib/bundler/man/bundle-remove.1
@@ -158,6 +164,8 @@ files:
158
164
  - lib/bundler/man/bundle-show.1.ronn
159
165
  - lib/bundler/man/bundle-update.1
160
166
  - lib/bundler/man/bundle-update.1.ronn
167
+ - lib/bundler/man/bundle-version.1
168
+ - lib/bundler/man/bundle-version.1.ronn
161
169
  - lib/bundler/man/bundle-viz.1
162
170
  - lib/bundler/man/bundle-viz.1.ronn
163
171
  - lib/bundler/man/bundle.1
@@ -165,7 +173,9 @@ files:
165
173
  - lib/bundler/man/gemfile.5
166
174
  - lib/bundler/man/gemfile.5.ronn
167
175
  - lib/bundler/man/index.txt
176
+ - lib/bundler/match_metadata.rb
168
177
  - lib/bundler/match_platform.rb
178
+ - lib/bundler/match_remote_metadata.rb
169
179
  - lib/bundler/mirror.rb
170
180
  - lib/bundler/plugin.rb
171
181
  - lib/bundler/plugin/api.rb
@@ -178,9 +188,13 @@ files:
178
188
  - lib/bundler/plugin/installer/rubygems.rb
179
189
  - lib/bundler/plugin/source_list.rb
180
190
  - lib/bundler/process_lock.rb
181
- - lib/bundler/psyched_yaml.rb
182
191
  - lib/bundler/remote_specification.rb
183
192
  - lib/bundler/resolver.rb
193
+ - lib/bundler/resolver/base.rb
194
+ - lib/bundler/resolver/candidate.rb
195
+ - lib/bundler/resolver/incompatibility.rb
196
+ - lib/bundler/resolver/package.rb
197
+ - lib/bundler/resolver/root.rb
184
198
  - lib/bundler/resolver/spec_group.rb
185
199
  - lib/bundler/retry.rb
186
200
  - lib/bundler/ruby_dsl.rb
@@ -189,6 +203,8 @@ files:
189
203
  - lib/bundler/rubygems_gem_installer.rb
190
204
  - lib/bundler/rubygems_integration.rb
191
205
  - lib/bundler/runtime.rb
206
+ - lib/bundler/safe_marshal.rb
207
+ - lib/bundler/self_manager.rb
192
208
  - lib/bundler/settings.rb
193
209
  - lib/bundler/settings/validator.rb
194
210
  - lib/bundler/setup.rb
@@ -213,9 +229,9 @@ files:
213
229
  - lib/bundler/templates/Executable.bundler
214
230
  - lib/bundler/templates/Executable.standalone
215
231
  - lib/bundler/templates/Gemfile
216
- - lib/bundler/templates/gems.rb
217
232
  - lib/bundler/templates/newgem/CHANGELOG.md.tt
218
233
  - lib/bundler/templates/newgem/CODE_OF_CONDUCT.md.tt
234
+ - lib/bundler/templates/newgem/Cargo.toml.tt
219
235
  - lib/bundler/templates/newgem/Gemfile.tt
220
236
  - lib/bundler/templates/newgem/LICENSE.txt.tt
221
237
  - lib/bundler/templates/newgem/README.md.tt
@@ -224,9 +240,12 @@ files:
224
240
  - lib/bundler/templates/newgem/bin/setup.tt
225
241
  - lib/bundler/templates/newgem/circleci/config.yml.tt
226
242
  - lib/bundler/templates/newgem/exe/newgem.tt
227
- - lib/bundler/templates/newgem/ext/newgem/extconf.rb.tt
243
+ - lib/bundler/templates/newgem/ext/newgem/Cargo.toml.tt
244
+ - lib/bundler/templates/newgem/ext/newgem/extconf-c.rb.tt
245
+ - lib/bundler/templates/newgem/ext/newgem/extconf-rust.rb.tt
228
246
  - lib/bundler/templates/newgem/ext/newgem/newgem.c.tt
229
247
  - lib/bundler/templates/newgem/ext/newgem/newgem.h.tt
248
+ - lib/bundler/templates/newgem/ext/newgem/src/lib.rs.tt
230
249
  - lib/bundler/templates/newgem/github/workflows/main.yml.tt
231
250
  - lib/bundler/templates/newgem/gitignore.tt
232
251
  - lib/bundler/templates/newgem/gitlab-ci.yml.tt
@@ -239,16 +258,16 @@ files:
239
258
  - lib/bundler/templates/newgem/spec/newgem_spec.rb.tt
240
259
  - lib/bundler/templates/newgem/spec/spec_helper.rb.tt
241
260
  - lib/bundler/templates/newgem/standard.yml.tt
242
- - lib/bundler/templates/newgem/test/minitest/newgem_test.rb.tt
243
261
  - lib/bundler/templates/newgem/test/minitest/test_helper.rb.tt
262
+ - lib/bundler/templates/newgem/test/minitest/test_newgem.rb.tt
244
263
  - lib/bundler/templates/newgem/test/test-unit/newgem_test.rb.tt
245
264
  - lib/bundler/templates/newgem/test/test-unit/test_helper.rb.tt
246
- - lib/bundler/templates/newgem/travis.yml.tt
247
265
  - lib/bundler/ui.rb
248
266
  - lib/bundler/ui/rg_proxy.rb
249
267
  - lib/bundler/ui/shell.rb
250
268
  - lib/bundler/ui/silent.rb
251
269
  - lib/bundler/uri_credentials_filter.rb
270
+ - lib/bundler/uri_normalizer.rb
252
271
  - lib/bundler/vendor/.document
253
272
  - lib/bundler/vendor/connection_pool/LICENSE
254
273
  - lib/bundler/vendor/connection_pool/lib/connection_pool.rb
@@ -257,32 +276,28 @@ files:
257
276
  - lib/bundler/vendor/connection_pool/lib/connection_pool/wrapper.rb
258
277
  - lib/bundler/vendor/fileutils/LICENSE.txt
259
278
  - lib/bundler/vendor/fileutils/lib/fileutils.rb
260
- - lib/bundler/vendor/molinillo/LICENSE
261
- - lib/bundler/vendor/molinillo/lib/molinillo.rb
262
- - lib/bundler/vendor/molinillo/lib/molinillo/delegates/resolution_state.rb
263
- - lib/bundler/vendor/molinillo/lib/molinillo/delegates/specification_provider.rb
264
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph.rb
265
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/action.rb
266
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_edge_no_circular.rb
267
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/add_vertex.rb
268
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/delete_edge.rb
269
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/detach_vertex_named.rb
270
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/log.rb
271
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/set_payload.rb
272
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/tag.rb
273
- - lib/bundler/vendor/molinillo/lib/molinillo/dependency_graph/vertex.rb
274
- - lib/bundler/vendor/molinillo/lib/molinillo/errors.rb
275
- - lib/bundler/vendor/molinillo/lib/molinillo/gem_metadata.rb
276
- - lib/bundler/vendor/molinillo/lib/molinillo/modules/specification_provider.rb
277
- - lib/bundler/vendor/molinillo/lib/molinillo/modules/ui.rb
278
- - lib/bundler/vendor/molinillo/lib/molinillo/resolution.rb
279
- - lib/bundler/vendor/molinillo/lib/molinillo/resolver.rb
280
- - lib/bundler/vendor/molinillo/lib/molinillo/state.rb
281
279
  - lib/bundler/vendor/net-http-persistent/README.rdoc
282
280
  - lib/bundler/vendor/net-http-persistent/lib/net/http/persistent.rb
283
281
  - lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/connection.rb
284
282
  - lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/pool.rb
285
283
  - lib/bundler/vendor/net-http-persistent/lib/net/http/persistent/timed_stack_multi.rb
284
+ - lib/bundler/vendor/pub_grub/LICENSE.txt
285
+ - lib/bundler/vendor/pub_grub/lib/pub_grub.rb
286
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/assignment.rb
287
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/basic_package_source.rb
288
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/failure_writer.rb
289
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/incompatibility.rb
290
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/package.rb
291
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/partial_solution.rb
292
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/rubygems.rb
293
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/solve_failure.rb
294
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/static_package_source.rb
295
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/term.rb
296
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/version.rb
297
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/version_constraint.rb
298
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/version_range.rb
299
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/version_solver.rb
300
+ - lib/bundler/vendor/pub_grub/lib/pub_grub/version_union.rb
286
301
  - lib/bundler/vendor/thor/LICENSE.md
287
302
  - lib/bundler/vendor/thor/lib/thor.rb
288
303
  - lib/bundler/vendor/thor/lib/thor/actions.rb
@@ -315,7 +330,6 @@ files:
315
330
  - lib/bundler/vendor/thor/lib/thor/shell/html.rb
316
331
  - lib/bundler/vendor/thor/lib/thor/util.rb
317
332
  - lib/bundler/vendor/thor/lib/thor/version.rb
318
- - lib/bundler/vendor/tmpdir/lib/tmpdir.rb
319
333
  - lib/bundler/vendor/tsort/LICENSE.txt
320
334
  - lib/bundler/vendor/tsort/lib/tsort.rb
321
335
  - lib/bundler/vendor/uri/LICENSE.txt
@@ -332,15 +346,15 @@ files:
332
346
  - lib/bundler/vendor/uri/lib/uri/rfc2396_parser.rb
333
347
  - lib/bundler/vendor/uri/lib/uri/rfc3986_parser.rb
334
348
  - lib/bundler/vendor/uri/lib/uri/version.rb
349
+ - lib/bundler/vendor/uri/lib/uri/ws.rb
350
+ - lib/bundler/vendor/uri/lib/uri/wss.rb
335
351
  - lib/bundler/vendored_fileutils.rb
336
- - lib/bundler/vendored_molinillo.rb
337
352
  - lib/bundler/vendored_persistent.rb
353
+ - lib/bundler/vendored_pub_grub.rb
338
354
  - lib/bundler/vendored_thor.rb
339
- - lib/bundler/vendored_tmpdir.rb
340
355
  - lib/bundler/vendored_tsort.rb
341
356
  - lib/bundler/vendored_uri.rb
342
357
  - lib/bundler/version.rb
343
- - lib/bundler/version_ranges.rb
344
358
  - lib/bundler/vlad.rb
345
359
  - lib/bundler/worker.rb
346
360
  - lib/bundler/yaml_serializer.rb
@@ -351,7 +365,7 @@ metadata:
351
365
  bug_tracker_uri: https://github.com/rubygems/rubygems/issues?q=is%3Aopen+is%3Aissue+label%3ABundler
352
366
  changelog_uri: https://github.com/rubygems/rubygems/blob/master/bundler/CHANGELOG.md
353
367
  homepage_uri: https://bundler.io/
354
- source_code_uri: https://github.com/rubygems/rubygems/
368
+ source_code_uri: https://github.com/rubygems/rubygems/tree/master/bundler
355
369
  post_install_message:
356
370
  rdoc_options: []
357
371
  require_paths:
@@ -360,14 +374,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
360
374
  requirements:
361
375
  - - ">="
362
376
  - !ruby/object:Gem::Version
363
- version: 2.3.0
377
+ version: 2.6.0
364
378
  required_rubygems_version: !ruby/object:Gem::Requirement
365
379
  requirements:
366
380
  - - ">="
367
381
  - !ruby/object:Gem::Version
368
- version: 2.5.2
382
+ version: 3.0.1
369
383
  requirements: []
370
- rubygems_version: 3.2.33
384
+ rubygems_version: 3.4.18
371
385
  signing_key:
372
386
  specification_version: 4
373
387
  summary: The best way to manage your application's dependencies
@@ -1,55 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Bundler
4
- class DepProxy
5
- attr_reader :__platform, :dep
6
-
7
- @proxies = {}
8
-
9
- def self.get_proxy(dep, platform)
10
- @proxies[[dep, platform]] ||= new(dep, platform).freeze
11
- end
12
-
13
- def initialize(dep, platform)
14
- @dep = dep
15
- @__platform = platform
16
- end
17
-
18
- private_class_method :new
19
-
20
- alias_method :eql?, :==
21
-
22
- def type
23
- @dep.type
24
- end
25
-
26
- def name
27
- @dep.name
28
- end
29
-
30
- def requirement
31
- @dep.requirement
32
- end
33
-
34
- def to_s
35
- s = name.dup
36
- s << " (#{requirement})" unless requirement == Gem::Requirement.default
37
- s << " #{__platform}" unless __platform == Gem::Platform::RUBY
38
- s
39
- end
40
-
41
- def dup
42
- raise NoMethodError.new("DepProxy cannot be duplicated")
43
- end
44
-
45
- def clone
46
- raise NoMethodError.new("DepProxy cannot be cloned")
47
- end
48
-
49
- private
50
-
51
- def method_missing(*args, &blk)
52
- @dep.send(*args, &blk)
53
- end
54
- end
55
- end
@@ -1,29 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Bundler
4
- class Gemdeps
5
- def initialize(runtime)
6
- @runtime = runtime
7
- end
8
-
9
- def requested_specs
10
- @runtime.requested_specs
11
- end
12
-
13
- def specs
14
- @runtime.specs
15
- end
16
-
17
- def dependencies
18
- @runtime.dependencies
19
- end
20
-
21
- def current_dependencies
22
- @runtime.current_dependencies
23
- end
24
-
25
- def requires
26
- @runtime.requires
27
- end
28
- end
29
- end
@@ -1,22 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # Psych could be in the stdlib
4
- # but it's too late if Syck is already loaded
5
- begin
6
- require "psych" unless defined?(Syck)
7
- rescue LoadError
8
- # Apparently Psych wasn't available. Oh well.
9
- end
10
-
11
- # At least load the YAML stdlib, whatever that may be
12
- require "yaml" unless defined?(YAML.dump)
13
-
14
- module Bundler
15
- # On encountering invalid YAML,
16
- # Psych raises Psych::SyntaxError
17
- if defined?(::Psych::SyntaxError)
18
- YamlLibrarySyntaxError = ::Psych::SyntaxError
19
- else # Syck raises ArgumentError
20
- YamlLibrarySyntaxError = ::ArgumentError
21
- end
22
- end
@@ -1,8 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- # A sample gems.rb
4
- source "https://rubygems.org"
5
-
6
- git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
7
-
8
- # gem "rails"
@@ -1,5 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require "mkmf"
4
-
5
- create_makefile(<%= config[:makefile_path].inspect %>)
@@ -1,6 +0,0 @@
1
- ---
2
- language: ruby
3
- cache: bundler
4
- rvm:
5
- - <%= RUBY_VERSION %>
6
- before_install: gem install bundler -v <%= Bundler::VERSION %>
@@ -1,9 +0,0 @@
1
- This project is licensed under the MIT license.
2
-
3
- Copyright (c) 2014 Samuel E. Giddins segiddins@segiddins.me
4
-
5
- Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
-
7
- The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
8
-
9
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
@@ -1,57 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Bundler::Molinillo
4
- # @!visibility private
5
- module Delegates
6
- # Delegates all {Bundler::Molinillo::ResolutionState} methods to a `#state` property.
7
- module ResolutionState
8
- # (see Bundler::Molinillo::ResolutionState#name)
9
- def name
10
- current_state = state || Bundler::Molinillo::ResolutionState.empty
11
- current_state.name
12
- end
13
-
14
- # (see Bundler::Molinillo::ResolutionState#requirements)
15
- def requirements
16
- current_state = state || Bundler::Molinillo::ResolutionState.empty
17
- current_state.requirements
18
- end
19
-
20
- # (see Bundler::Molinillo::ResolutionState#activated)
21
- def activated
22
- current_state = state || Bundler::Molinillo::ResolutionState.empty
23
- current_state.activated
24
- end
25
-
26
- # (see Bundler::Molinillo::ResolutionState#requirement)
27
- def requirement
28
- current_state = state || Bundler::Molinillo::ResolutionState.empty
29
- current_state.requirement
30
- end
31
-
32
- # (see Bundler::Molinillo::ResolutionState#possibilities)
33
- def possibilities
34
- current_state = state || Bundler::Molinillo::ResolutionState.empty
35
- current_state.possibilities
36
- end
37
-
38
- # (see Bundler::Molinillo::ResolutionState#depth)
39
- def depth
40
- current_state = state || Bundler::Molinillo::ResolutionState.empty
41
- current_state.depth
42
- end
43
-
44
- # (see Bundler::Molinillo::ResolutionState#conflicts)
45
- def conflicts
46
- current_state = state || Bundler::Molinillo::ResolutionState.empty
47
- current_state.conflicts
48
- end
49
-
50
- # (see Bundler::Molinillo::ResolutionState#unused_unwind_options)
51
- def unused_unwind_options
52
- current_state = state || Bundler::Molinillo::ResolutionState.empty
53
- current_state.unused_unwind_options
54
- end
55
- end
56
- end
57
- end
@@ -1,88 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Bundler::Molinillo
4
- module Delegates
5
- # Delegates all {Bundler::Molinillo::SpecificationProvider} methods to a
6
- # `#specification_provider` property.
7
- module SpecificationProvider
8
- # (see Bundler::Molinillo::SpecificationProvider#search_for)
9
- def search_for(dependency)
10
- with_no_such_dependency_error_handling do
11
- specification_provider.search_for(dependency)
12
- end
13
- end
14
-
15
- # (see Bundler::Molinillo::SpecificationProvider#dependencies_for)
16
- def dependencies_for(specification)
17
- with_no_such_dependency_error_handling do
18
- specification_provider.dependencies_for(specification)
19
- end
20
- end
21
-
22
- # (see Bundler::Molinillo::SpecificationProvider#requirement_satisfied_by?)
23
- def requirement_satisfied_by?(requirement, activated, spec)
24
- with_no_such_dependency_error_handling do
25
- specification_provider.requirement_satisfied_by?(requirement, activated, spec)
26
- end
27
- end
28
-
29
- # (see Bundler::Molinillo::SpecificationProvider#dependencies_equal?)
30
- def dependencies_equal?(dependencies, other_dependencies)
31
- with_no_such_dependency_error_handling do
32
- specification_provider.dependencies_equal?(dependencies, other_dependencies)
33
- end
34
- end
35
-
36
- # (see Bundler::Molinillo::SpecificationProvider#name_for)
37
- def name_for(dependency)
38
- with_no_such_dependency_error_handling do
39
- specification_provider.name_for(dependency)
40
- end
41
- end
42
-
43
- # (see Bundler::Molinillo::SpecificationProvider#name_for_explicit_dependency_source)
44
- def name_for_explicit_dependency_source
45
- with_no_such_dependency_error_handling do
46
- specification_provider.name_for_explicit_dependency_source
47
- end
48
- end
49
-
50
- # (see Bundler::Molinillo::SpecificationProvider#name_for_locking_dependency_source)
51
- def name_for_locking_dependency_source
52
- with_no_such_dependency_error_handling do
53
- specification_provider.name_for_locking_dependency_source
54
- end
55
- end
56
-
57
- # (see Bundler::Molinillo::SpecificationProvider#sort_dependencies)
58
- def sort_dependencies(dependencies, activated, conflicts)
59
- with_no_such_dependency_error_handling do
60
- specification_provider.sort_dependencies(dependencies, activated, conflicts)
61
- end
62
- end
63
-
64
- # (see Bundler::Molinillo::SpecificationProvider#allow_missing?)
65
- def allow_missing?(dependency)
66
- with_no_such_dependency_error_handling do
67
- specification_provider.allow_missing?(dependency)
68
- end
69
- end
70
-
71
- private
72
-
73
- # Ensures any raised {NoSuchDependencyError} has its
74
- # {NoSuchDependencyError#required_by} set.
75
- # @yield
76
- def with_no_such_dependency_error_handling
77
- yield
78
- rescue NoSuchDependencyError => error
79
- if state
80
- vertex = activated.vertex_named(name_for(error.dependency))
81
- error.required_by += vertex.incoming_edges.map { |e| e.origin.name }
82
- error.required_by << name_for_explicit_dependency_source unless vertex.explicit_requirements.empty?
83
- end
84
- raise
85
- end
86
- end
87
- end
88
- end
@@ -1,36 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- module Bundler::Molinillo
4
- class DependencyGraph
5
- # An action that modifies a {DependencyGraph} that is reversible.
6
- # @abstract
7
- class Action
8
- # rubocop:disable Lint/UnusedMethodArgument
9
-
10
- # @return [Symbol] The name of the action.
11
- def self.action_name
12
- raise 'Abstract'
13
- end
14
-
15
- # Performs the action on the given graph.
16
- # @param [DependencyGraph] graph the graph to perform the action on.
17
- # @return [Void]
18
- def up(graph)
19
- raise 'Abstract'
20
- end
21
-
22
- # Reverses the action on the given graph.
23
- # @param [DependencyGraph] graph the graph to reverse the action on.
24
- # @return [Void]
25
- def down(graph)
26
- raise 'Abstract'
27
- end
28
-
29
- # @return [Action,Nil] The previous action
30
- attr_accessor :previous
31
-
32
- # @return [Action,Nil] The next action
33
- attr_accessor :next
34
- end
35
- end
36
- end
@@ -1,66 +0,0 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'action'
4
- module Bundler::Molinillo
5
- class DependencyGraph
6
- # @!visibility private
7
- # (see DependencyGraph#add_edge_no_circular)
8
- class AddEdgeNoCircular < Action
9
- # @!group Action
10
-
11
- # (see Action.action_name)
12
- def self.action_name
13
- :add_vertex
14
- end
15
-
16
- # (see Action#up)
17
- def up(graph)
18
- edge = make_edge(graph)
19
- edge.origin.outgoing_edges << edge
20
- edge.destination.incoming_edges << edge
21
- edge
22
- end
23
-
24
- # (see Action#down)
25
- def down(graph)
26
- edge = make_edge(graph)
27
- delete_first(edge.origin.outgoing_edges, edge)
28
- delete_first(edge.destination.incoming_edges, edge)
29
- end
30
-
31
- # @!group AddEdgeNoCircular
32
-
33
- # @return [String] the name of the origin of the edge
34
- attr_reader :origin
35
-
36
- # @return [String] the name of the destination of the edge
37
- attr_reader :destination
38
-
39
- # @return [Object] the requirement that the edge represents
40
- attr_reader :requirement
41
-
42
- # @param [DependencyGraph] graph the graph to find vertices from
43
- # @return [Edge] The edge this action adds
44
- def make_edge(graph)
45
- Edge.new(graph.vertex_named(origin), graph.vertex_named(destination), requirement)
46
- end
47
-
48
- # Initialize an action to add an edge to a dependency graph
49
- # @param [String] origin the name of the origin of the edge
50
- # @param [String] destination the name of the destination of the edge
51
- # @param [Object] requirement the requirement that the edge represents
52
- def initialize(origin, destination, requirement)
53
- @origin = origin
54
- @destination = destination
55
- @requirement = requirement
56
- end
57
-
58
- private
59
-
60
- def delete_first(array, item)
61
- return unless index = array.index(item)
62
- array.delete_at(index)
63
- end
64
- end
65
- end
66
- end