bundler 2.3.23 → 2.3.24

Sign up to get free protection for your applications and to get access to all the features.
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