bundler 2.3.23 → 2.3.24

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 28c415ab98b0a481538fb3881860945bc2ec0b0d78afd59dbd8a38d75fcfdd4b
4
- data.tar.gz: ccf31d79b872afd5d3fffd60b8ccfd425eb14e189f512b5187e6c171a2cf696b
3
+ metadata.gz: 93ffee8ad1f220af763c61669d7c2d3c3418a739e9dbba73ba044a0c98ea3c22
4
+ data.tar.gz: 5c78c181609081cc9bea18f9adea9afc4700cf4a063fdd671cc612dd1c54bafb
5
5
  SHA512:
6
- metadata.gz: 6486b340fde2e41727126b985846503e89f7fd22a5f2b197f5e687b2e8840c7043be9eab0a54797cf9b0b1d777d9f9ee92bfc6b0c069c5eb310a2812c5af8460
7
- data.tar.gz: 591190883dfb54835e5f11129ac09a87e9462a427fb97831c5def834664e18b55ca59b80b68028b35fe015fde2d5cfa3a372218a6b4c9432bfd9a0e585612f23
6
+ metadata.gz: 8ed7a7e5a517df4814a6be035c193e82d28c349adbd100d5e327fb0093a061175bd089ef5a97c5da502f5040135d7585da30daae59d125cd0cec7f96642eb2a6
7
+ data.tar.gz: 5a48f92f2c763d8ed20f6a341f946fc6e1ef8c3ce266d47332714459ea09eb78ac349f281fe7b20350c8f43d9c0ec71d32ee11fe288415beb41f18e4570ffa4d
data/CHANGELOG.md CHANGED
@@ -1,3 +1,14 @@
1
+ # 2.3.24 (October 17, 2022)
2
+
3
+ ## Enhancements:
4
+
5
+ - Only add extra resolver spec group for Ruby platform when needed [#5698](https://github.com/rubygems/rubygems/pull/5698)
6
+ - Fix little UI issue when bundler shows duplicated gems in a list [#5965](https://github.com/rubygems/rubygems/pull/5965)
7
+
8
+ ## Bug fixes:
9
+
10
+ - Fix incorrect materialization on Windows [#5975](https://github.com/rubygems/rubygems/pull/5975)
11
+
1
12
  # 2.3.23 (October 5, 2022)
2
13
 
3
14
  ## Enhancements:
@@ -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 = "2022-10-05".freeze
8
- @git_commit_sha = "250d9d485d".freeze
7
+ @built_at = "2022-10-17".freeze
8
+ @git_commit_sha = "b835c7ea15".freeze
9
9
  @release = true
10
10
  # end ivars
11
11
 
@@ -139,8 +139,8 @@ module Bundler
139
139
  if @unlock[:conservative]
140
140
  @unlock[:gems] ||= @dependencies.map(&:name)
141
141
  else
142
- eager_unlock = expand_dependencies(@unlock[:gems] || [], true)
143
- @unlock[:gems] = @locked_specs.for(eager_unlock, false, platforms).map(&:name)
142
+ eager_unlock = (@unlock[:gems] || []).map {|name| Dependency.new(name, ">= 0") }
143
+ @unlock[:gems] = @locked_specs.for(eager_unlock, false, platforms).map(&:name).uniq
144
144
  end
145
145
 
146
146
  @dependency_changes = converge_dependencies
@@ -224,7 +224,7 @@ module Bundler
224
224
 
225
225
  def current_dependencies
226
226
  dependencies.select do |d|
227
- d.should_include? && !d.gem_platforms(@platforms).empty?
227
+ d.should_include? && !d.gem_platforms([generic_local_platform]).empty?
228
228
  end
229
229
  end
230
230
 
@@ -248,10 +248,9 @@ module Bundler
248
248
 
249
249
  def dependencies_for(groups)
250
250
  groups.map!(&:to_sym)
251
- deps = current_dependencies.reject do |d|
251
+ current_dependencies.reject do |d|
252
252
  (d.groups & groups).empty?
253
253
  end
254
- expand_dependencies(deps)
255
254
  end
256
255
 
257
256
  # Resolve all the dependencies specified in Gemfile. It ensures that
@@ -474,17 +473,17 @@ module Bundler
474
473
  def resolver
475
474
  @resolver ||= begin
476
475
  last_resolve = converge_locked_specs
477
- remove_ruby_from_platforms_if_necessary!(dependencies)
476
+ remove_ruby_from_platforms_if_necessary!(current_dependencies)
478
477
  Resolver.new(source_requirements, last_resolve, gem_version_promoter, additional_base_requirements_for_resolve(last_resolve), platforms)
479
478
  end
480
479
  end
481
480
 
482
481
  def expanded_dependencies
483
- @expanded_dependencies ||= expand_dependencies(dependencies + metadata_dependencies, true)
482
+ @expanded_dependencies ||= dependencies + metadata_dependencies
484
483
  end
485
484
 
486
485
  def filter_specs(specs, deps)
487
- SpecSet.new(specs).for(expand_dependencies(deps, true), false, platforms)
486
+ SpecSet.new(specs).for(deps, false, platforms)
488
487
  end
489
488
 
490
489
  def materialize(dependencies)
@@ -578,8 +577,8 @@ module Bundler
578
577
  ].select(&:first).map(&:last).join(", ")
579
578
  end
580
579
 
581
- def pretty_dep(dep, source = false)
582
- SharedHelpers.pretty_dependency(dep, source)
580
+ def pretty_dep(dep)
581
+ SharedHelpers.pretty_dependency(dep)
583
582
  end
584
583
 
585
584
  # Check if the specs of the given source changed
@@ -792,23 +791,6 @@ module Bundler
792
791
  ]
793
792
  end
794
793
 
795
- def expand_dependencies(dependencies, remote = false)
796
- deps = []
797
- dependencies.each do |dep|
798
- dep = Dependency.new(dep, ">= 0") unless dep.respond_to?(:name)
799
- next unless remote || dep.current_platform?
800
- target_platforms = dep.gem_platforms(remote ? @platforms : [generic_local_platform])
801
- deps += expand_dependency_with_platforms(dep, target_platforms)
802
- end
803
- deps
804
- end
805
-
806
- def expand_dependency_with_platforms(dep, platforms)
807
- platforms.map do |p|
808
- DepProxy.get_proxy(dep, p)
809
- end
810
- end
811
-
812
794
  def source_requirements
813
795
  # Record the specs available in each gem's source, so that those
814
796
  # specs will be available later when the resolver knows where to
@@ -880,7 +862,7 @@ module Bundler
880
862
  Bundler.local_platform == Gem::Platform::RUBY ||
881
863
  !platforms.include?(Gem::Platform::RUBY) ||
882
864
  (@new_platform && platforms.last == Gem::Platform::RUBY) ||
883
- !@originally_locked_specs.incomplete_ruby_specs?(expand_dependencies(dependencies))
865
+ !@originally_locked_specs.incomplete_ruby_specs?(dependencies)
884
866
 
885
867
  remove_platform(Gem::Platform::RUBY)
886
868
  add_current_platform
@@ -26,6 +26,10 @@ module Bundler
26
26
  @platform
27
27
  end
28
28
 
29
+ def identifier
30
+ @__identifier ||= [name, version, platform.to_s]
31
+ end
32
+
29
33
  # needed for standalone, load required_paths from local gemspec
30
34
  # after the gem is installed
31
35
  def require_paths
@@ -5,7 +5,6 @@ module Bundler
5
5
  GENERIC_CACHE = { Gem::Platform::RUBY => Gem::Platform::RUBY } # rubocop:disable Style/MutableConstant
6
6
  GENERICS = [
7
7
  [Gem::Platform.new("java"), Gem::Platform.new("java")],
8
- [Gem::Platform.new("universal-java"), Gem::Platform.new("java")],
9
8
  [Gem::Platform.new("mswin32"), Gem::Platform.new("mswin32")],
10
9
  [Gem::Platform.new("mswin64"), Gem::Platform.new("mswin64")],
11
10
  [Gem::Platform.new("universal-mingw32"), Gem::Platform.new("universal-mingw32")],
data/lib/bundler/index.rb CHANGED
@@ -71,7 +71,6 @@ module Bundler
71
71
  when Gem::Specification, RemoteSpecification, LazySpecification, EndpointSpecification then search_by_spec(query)
72
72
  when String then specs_by_name(query)
73
73
  when Gem::Dependency then search_by_dependency(query)
74
- when DepProxy then search_by_dependency(query.dep)
75
74
  else
76
75
  raise "You can't search for a #{query.inspect}."
77
76
  end
@@ -70,7 +70,7 @@ module Bundler
70
70
 
71
71
  show_warning("No gems were removed from the gemfile.") if deps.empty?
72
72
 
73
- deps.each {|dep| Bundler.ui.confirm "#{SharedHelpers.pretty_dependency(dep, false)} was removed." }
73
+ deps.each {|dep| Bundler.ui.confirm "#{SharedHelpers.pretty_dependency(dep)} was removed." }
74
74
  end
75
75
 
76
76
  # Invalidate the cached Bundler.definition.
@@ -77,7 +77,7 @@ module Bundler
77
77
  source.local!
78
78
 
79
79
  candidates = if source.is_a?(Source::Path) || !ruby_platform_materializes_to_ruby_platform?
80
- target_platform = ruby_platform_materializes_to_ruby_platform? ? platform : Bundler.local_platform
80
+ target_platform = ruby_platform_materializes_to_ruby_platform? ? platform : local_platform
81
81
 
82
82
  source.specs.search(Dependency.new(name, version)).select do |spec|
83
83
  MatchPlatform.platforms_match?(spec.platform, target_platform)
@@ -120,7 +120,7 @@ module Bundler
120
120
  end
121
121
 
122
122
  def identifier
123
- @__identifier ||= [name, version, platform_string]
123
+ @__identifier ||= [name, version, platform.to_s]
124
124
  end
125
125
 
126
126
  def git_version
@@ -128,13 +128,6 @@ module Bundler
128
128
  " #{source.revision[0..6]}"
129
129
  end
130
130
 
131
- protected
132
-
133
- def platform_string
134
- platform_string = platform.to_s
135
- platform_string == Index::RUBY ? Index::NULL : platform_string
136
- end
137
-
138
131
  private
139
132
 
140
133
  def to_ary
@@ -151,7 +144,8 @@ module Bundler
151
144
 
152
145
  #
153
146
  # For backwards compatibility with existing lockfiles, if the most specific
154
- # locked platform is RUBY, we keep the previous behaviour of resolving the
147
+ # locked platform is not a specific platform like x86_64-linux or
148
+ # universal-java-11, then we keep the previous behaviour of resolving the
155
149
  # best platform variant at materiliazation time. For previous bundler
156
150
  # versions (before 2.2.0) this was always the case (except when the lockfile
157
151
  # only included non-ruby platforms), but we're also keeping this behaviour
@@ -159,7 +153,9 @@ module Bundler
159
153
  # explicitly add a more specific platform.
160
154
  #
161
155
  def ruby_platform_materializes_to_ruby_platform?
162
- !Bundler.most_specific_locked_platform?(generic_local_platform) || force_ruby_platform || Bundler.settings[:force_ruby_platform]
156
+ generic_platform = generic_local_platform == Gem::Platform::JAVA ? Gem::Platform::JAVA : Gem::Platform::RUBY
157
+
158
+ !Bundler.most_specific_locked_platform?(generic_platform) || force_ruby_platform || Bundler.settings[:force_ruby_platform]
163
159
  end
164
160
  end
165
161
  end
@@ -29,11 +29,15 @@ module Bundler
29
29
  @platform = _remote_specification.platform
30
30
  end
31
31
 
32
+ def identifier
33
+ @__identifier ||= [name, version, @platform.to_s]
34
+ end
35
+
32
36
  def full_name
33
- if @original_platform == Gem::Platform::RUBY
37
+ if @platform == Gem::Platform::RUBY
34
38
  "#{@name}-#{@version}"
35
39
  else
36
- "#{@name}-#{@version}-#{@original_platform}"
40
+ "#{@name}-#{@version}-#{@platform}"
37
41
  end
38
42
  end
39
43
 
@@ -40,7 +40,7 @@ module Bundler
40
40
  base_requirements = {}
41
41
  @base.each do |ls|
42
42
  dep = Dependency.new(ls.name, ls.version)
43
- base_requirements[ls.name] = DepProxy.get_proxy(dep, ls.platform)
43
+ base_requirements[ls.name] = dep
44
44
  end
45
45
  @additional_base_requirements.each {|d| base_requirements[d.name] = d }
46
46
  base_requirements
@@ -6,40 +6,23 @@ module Bundler
6
6
  attr_accessor :name, :version, :source
7
7
  attr_accessor :activated_platforms, :force_ruby_platform
8
8
 
9
- def self.create_for(specs, all_platforms, specific_platform)
10
- specific_platform_specs = specs[specific_platform]
11
- return unless specific_platform_specs.any?
12
-
13
- platforms = all_platforms.select {|p| specs[p].any? }
14
-
15
- new(specific_platform_specs.first, specs, platforms)
16
- end
17
-
18
- def initialize(exemplary_spec, specs, relevant_platforms)
19
- @exemplary_spec = exemplary_spec
20
- @name = exemplary_spec.name
21
- @version = exemplary_spec.version
22
- @source = exemplary_spec.source
9
+ def initialize(specs, relevant_platforms)
10
+ @exemplary_spec = specs.first
11
+ @name = @exemplary_spec.name
12
+ @version = @exemplary_spec.version
13
+ @source = @exemplary_spec.source
23
14
 
24
15
  @activated_platforms = relevant_platforms
25
- @dependencies = Hash.new do |dependencies, platforms|
26
- dependencies[platforms] = dependencies_for(platforms)
27
- end
28
16
  @specs = specs
29
17
  end
30
18
 
31
19
  def to_specs
32
- activated_platforms.map do |p|
33
- specs = @specs[p]
34
- next unless specs.any?
35
-
36
- specs.map do |s|
37
- lazy_spec = LazySpecification.new(name, version, s.platform, source)
38
- lazy_spec.force_ruby_platform = force_ruby_platform
39
- lazy_spec.dependencies.replace s.dependencies
40
- lazy_spec
41
- end
42
- end.flatten.compact.uniq
20
+ @specs.map do |s|
21
+ lazy_spec = LazySpecification.new(name, version, s.platform, source)
22
+ lazy_spec.force_ruby_platform = force_ruby_platform
23
+ lazy_spec.dependencies.replace s.dependencies
24
+ lazy_spec
25
+ end
43
26
  end
44
27
 
45
28
  def to_s
@@ -48,7 +31,9 @@ module Bundler
48
31
  end
49
32
 
50
33
  def dependencies_for_activated_platforms
51
- @dependencies[activated_platforms]
34
+ @dependencies_for_activated_platforms ||= @specs.map do |spec|
35
+ __dependencies(spec) + metadata_dependencies(spec)
36
+ end.flatten.uniq
52
37
  end
53
38
 
54
39
  def ==(other)
@@ -79,35 +64,28 @@ module Bundler
79
64
 
80
65
  private
81
66
 
82
- def dependencies_for(platforms)
83
- platforms.map do |platform|
84
- __dependencies(platform) + metadata_dependencies(platform)
85
- end.flatten
86
- end
87
-
88
- def __dependencies(platform)
67
+ def __dependencies(spec)
89
68
  dependencies = []
90
- @specs[platform].first.dependencies.each do |dep|
69
+ spec.dependencies.each do |dep|
91
70
  next if dep.type == :development
92
- dependencies << DepProxy.get_proxy(Dependency.new(dep.name, dep.requirement), platform)
71
+ dependencies << Dependency.new(dep.name, dep.requirement)
93
72
  end
94
73
  dependencies
95
74
  end
96
75
 
97
- def metadata_dependencies(platform)
98
- spec = @specs[platform].first
76
+ def metadata_dependencies(spec)
99
77
  return [] if spec.is_a?(LazySpecification)
100
78
 
101
79
  [
102
- metadata_dependency("Ruby", spec.required_ruby_version, platform),
103
- metadata_dependency("RubyGems", spec.required_rubygems_version, platform),
80
+ metadata_dependency("Ruby", spec.required_ruby_version),
81
+ metadata_dependency("RubyGems", spec.required_rubygems_version),
104
82
  ].compact
105
83
  end
106
84
 
107
- def metadata_dependency(name, requirement, platform)
85
+ def metadata_dependency(name, requirement)
108
86
  return if requirement.nil? || requirement.none?
109
87
 
110
- DepProxy.get_proxy(Dependency.new("#{name}\0", requirement), platform)
88
+ Dependency.new("#{name}\0", requirement)
111
89
  end
112
90
  end
113
91
  end
@@ -8,22 +8,6 @@ module Bundler
8
8
 
9
9
  include GemHelpers
10
10
 
11
- # Figures out the best possible configuration of gems that satisfies
12
- # the list of passed dependencies and any child dependencies without
13
- # causing any gem activation errors.
14
- #
15
- # ==== Parameters
16
- # *dependencies<Gem::Dependency>:: The list of dependencies to resolve
17
- #
18
- # ==== Returns
19
- # <GemBundle>,nil:: If the list of dependencies can be resolved, a
20
- # collection of gemspecs is returned. Otherwise, nil is returned.
21
- def self.resolve(requirements, source_requirements = {}, base = [], gem_version_promoter = GemVersionPromoter.new, additional_base_requirements = [], platforms = nil)
22
- base = SpecSet.new(base) unless base.is_a?(SpecSet)
23
- resolver = new(source_requirements, base, gem_version_promoter, additional_base_requirements, platforms)
24
- resolver.start(requirements)
25
- end
26
-
27
11
  def initialize(source_requirements, base, gem_version_promoter, additional_base_requirements, platforms)
28
12
  @source_requirements = source_requirements
29
13
  @base = Resolver::Base.new(base, additional_base_requirements)
@@ -116,41 +100,35 @@ module Bundler
116
100
  specification.dependencies_for_activated_platforms
117
101
  end
118
102
 
119
- def search_for(dependency_proxy)
120
- platform = dependency_proxy.__platform
121
- dependency = dependency_proxy.dep
122
- name = dependency.name
123
- @search_for[dependency_proxy] ||= begin
103
+ def search_for(dependency)
104
+ @search_for[dependency] ||= begin
105
+ name = dependency.name
124
106
  locked_results = @base[name].select {|spec| requirement_satisfied_by?(dependency, nil, spec) }
125
107
  locked_requirement = base_requirements[name]
126
108
  results = results_for(dependency) + locked_results
127
109
  results = results.select {|spec| requirement_satisfied_by?(locked_requirement, nil, spec) } if locked_requirement
110
+ dep_platforms = dependency.gem_platforms(@platforms)
128
111
 
129
- if results.any?
130
- results = @gem_version_promoter.sort_versions(dependency, results)
112
+ @gem_version_promoter.sort_versions(dependency, results).group_by(&:version).reduce([]) do |groups, (_, specs)|
113
+ relevant_platforms = dep_platforms.select {|platform| specs.any? {|spec| spec.match_platform(platform) } }
114
+ next groups unless relevant_platforms.any?
131
115
 
132
- results.group_by(&:version).reduce([]) do |groups, (_, specs)|
133
- next groups unless specs.any? {|spec| spec.match_platform(platform) }
134
-
135
- specs_by_platform = Hash.new do |current_specs, current_platform|
136
- current_specs[current_platform] = select_best_platform_match(specs, current_platform)
137
- end
116
+ ruby_specs = select_best_platform_match(specs, Gem::Platform::RUBY)
117
+ if ruby_specs.any?
118
+ spec_group_ruby = SpecGroup.new(ruby_specs, [Gem::Platform::RUBY])
119
+ spec_group_ruby.force_ruby_platform = dependency.force_ruby_platform
120
+ groups << spec_group_ruby
121
+ end
138
122
 
139
- spec_group_ruby = SpecGroup.create_for(specs_by_platform, [Gem::Platform::RUBY], Gem::Platform::RUBY)
140
- if spec_group_ruby
141
- spec_group_ruby.force_ruby_platform = dependency.force_ruby_platform
142
- groups << spec_group_ruby
143
- end
123
+ next groups if @resolving_only_for_ruby || dependency.force_ruby_platform
144
124
 
145
- next groups if @resolving_only_for_ruby || dependency.force_ruby_platform
125
+ platform_specs = relevant_platforms.flat_map {|platform| select_best_platform_match(specs, platform) }
126
+ next groups if platform_specs == ruby_specs
146
127
 
147
- spec_group = SpecGroup.create_for(specs_by_platform, @platforms, platform)
148
- groups << spec_group
128
+ spec_group = SpecGroup.new(platform_specs, relevant_platforms)
129
+ groups << spec_group
149
130
 
150
- groups
151
- end
152
- else
153
- []
131
+ groups
154
132
  end
155
133
  end
156
134
  end
@@ -181,10 +159,6 @@ module Bundler
181
159
  requirement.matches_spec?(spec) || spec.source.is_a?(Source::Gemspec)
182
160
  end
183
161
 
184
- def dependencies_equal?(dependencies, other_dependencies)
185
- dependencies.map(&:dep) == other_dependencies.map(&:dep)
186
- end
187
-
188
162
  def sort_dependencies(dependencies, activated, conflicts)
189
163
  dependencies.sort_by do |dependency|
190
164
  name = name_for(dependency)
@@ -196,17 +170,10 @@ module Bundler
196
170
  amount_constrained(dependency),
197
171
  conflicts[name] ? 0 : 1,
198
172
  vertex.payload ? 0 : search_for(dependency).count,
199
- self.class.platform_sort_key(dependency.__platform),
200
173
  ]
201
174
  end
202
175
  end
203
176
 
204
- def self.platform_sort_key(platform)
205
- # Prefer specific platform to not specific platform
206
- return ["99-LAST", "", "", ""] if Gem::Platform::RUBY == platform
207
- ["00", *platform.to_a.map {|part| part || "" }]
208
- end
209
-
210
177
  private
211
178
 
212
179
  def base_requirements
@@ -261,21 +228,11 @@ module Bundler
261
228
  requirements.map! do |requirement|
262
229
  name = requirement.name
263
230
  next requirement if name == "bundler"
231
+ next if requirement.gem_platforms(@platforms).empty?
264
232
  next requirement unless search_for(requirement).empty?
265
233
  next unless requirement.current_platform?
266
234
 
267
- if (base = @base[name]) && !base.empty?
268
- version = base.first.version
269
- message = "You have requested:\n" \
270
- " #{name} #{requirement.requirement}\n\n" \
271
- "The bundle currently has #{name} locked at #{version}.\n" \
272
- "Try running `bundle update #{name}`\n\n" \
273
- "If you are updating multiple gems in your Gemfile at once,\n" \
274
- "try passing them all to `bundle update`"
275
- else
276
- message = gem_not_found_message(name, requirement, source_for(name))
277
- end
278
- raise GemNotFound, message
235
+ raise GemNotFound, gem_not_found_message(name, requirement, source_for(name))
279
236
  end.compact!
280
237
  end
281
238
 
@@ -293,7 +250,9 @@ module Bundler
293
250
  if specs_matching_requirement.any?
294
251
  specs = specs_matching_requirement
295
252
  matching_part = requirement_label
296
- requirement_label = "#{requirement_label}' with platform '#{requirement.__platform}"
253
+ platforms = requirement.gem_platforms(@platforms)
254
+ platform_label = platforms.size == 1 ? "platform '#{platforms.first}" : "platforms '#{platforms.join("', '")}"
255
+ requirement_label = "#{requirement_label}' with #{platform_label}"
297
256
  end
298
257
 
299
258
  message = String.new("Could not find gem '#{requirement_label}'#{extra_message} in #{source}#{cache_message}.\n")
@@ -163,7 +163,7 @@ module Bundler
163
163
  "\nEither installing with `--full-index` or running `bundle update #{spec.name}` should fix the problem."
164
164
  end
165
165
 
166
- def pretty_dependency(dep, print_source = false)
166
+ def pretty_dependency(dep)
167
167
  msg = String.new(dep.name)
168
168
  msg << " (#{dep.requirement})" unless dep.requirement == Gem::Requirement.default
169
169
 
@@ -172,7 +172,6 @@ module Bundler
172
172
  msg << " " << platform_string if !platform_string.empty? && platform_string != Gem::Platform::RUBY
173
173
  end
174
174
 
175
- msg << " from the `#{dep.source}` source" if print_source && dep.source
176
175
  msg
177
176
  end
178
177
 
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: false
2
2
 
3
3
  module Bundler
4
- VERSION = "2.3.23".freeze
4
+ VERSION = "2.3.24".freeze
5
5
 
6
6
  def self.bundler_major_version
7
7
  @bundler_major_version ||= VERSION.split(".").first.to_i
data/lib/bundler.rb CHANGED
@@ -41,7 +41,6 @@ module Bundler
41
41
 
42
42
  autoload :Definition, File.expand_path("bundler/definition", __dir__)
43
43
  autoload :Dependency, File.expand_path("bundler/dependency", __dir__)
44
- autoload :DepProxy, File.expand_path("bundler/dep_proxy", __dir__)
45
44
  autoload :Deprecate, File.expand_path("bundler/deprecate", __dir__)
46
45
  autoload :Digest, File.expand_path("bundler/digest", __dir__)
47
46
  autoload :Dsl, File.expand_path("bundler/dsl", __dir__)
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.3.23
4
+ version: 2.3.24
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: 2022-10-05 00:00:00.000000000 Z
25
+ date: 2022-10-17 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
@@ -80,7 +80,6 @@ files:
80
80
  - lib/bundler/constants.rb
81
81
  - lib/bundler/current_ruby.rb
82
82
  - lib/bundler/definition.rb
83
- - lib/bundler/dep_proxy.rb
84
83
  - lib/bundler/dependency.rb
85
84
  - lib/bundler/deployment.rb
86
85
  - lib/bundler/deprecate.rb
@@ -380,7 +379,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
380
379
  - !ruby/object:Gem::Version
381
380
  version: 2.5.2
382
381
  requirements: []
383
- rubygems_version: 3.3.23
382
+ rubygems_version: 3.3.24
384
383
  signing_key:
385
384
  specification_version: 4
386
385
  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