[rubygems/rubygems] Deprecate check parameter to Bundler::SpecSet#for

https://github.com/rubygems/rubygems/commit/3041b3d784
This commit is contained in:
David Rodríguez 2024-11-18 12:42:48 +01:00 committed by Hiroshi SHIBATA
parent c76b1ea2a6
commit 36fb7994fe
2 changed files with 17 additions and 6 deletions

View File

@ -152,7 +152,7 @@ module Bundler
@gems_to_unlock = @explicit_unlocks.any? ? @explicit_unlocks : @dependencies.map(&:name)
else
eager_unlock = @explicit_unlocks.map {|name| Dependency.new(name, ">= 0") }
@gems_to_unlock = @locked_specs.for(eager_unlock, false, platforms).map(&:name).uniq
@gems_to_unlock = @locked_specs.for(eager_unlock, platforms).map(&:name).uniq
end
@dependency_changes = converge_dependencies
@ -495,7 +495,7 @@ module Bundler
def normalize_platforms
@platforms = resolve.normalize_platforms!(current_dependencies, platforms)
@resolve = SpecSet.new(resolve.for(current_dependencies, false, @platforms))
@resolve = SpecSet.new(resolve.for(current_dependencies, @platforms))
end
def add_platform(platform)
@ -620,7 +620,7 @@ module Bundler
end
def filter_specs(specs, deps)
SpecSet.new(specs).for(deps, false, platforms)
SpecSet.new(specs).for(deps, platforms)
end
def materialize(dependencies)
@ -726,7 +726,7 @@ module Bundler
@platforms = result.add_extra_platforms!(platforms) if should_add_extra_platforms?
SpecSet.new(result.for(dependencies, false, @platforms))
SpecSet.new(result.for(dependencies, @platforms))
end
def precompute_source_requirements_for_indirect_dependencies?

View File

@ -11,7 +11,18 @@ module Bundler
@specs = specs
end
def for(dependencies, check = false, platforms = [nil])
def for(dependencies, platforms_or_legacy_check = [nil], legacy_platforms = [nil])
platforms = if [true, false].include?(platforms_or_legacy_check)
Bundler::SharedHelpers.major_deprecation 2,
"SpecSet#for received a `check` parameter, but that's no longer used and deprecated. " \
"SpecSet#for always implicitly performs validation. Please remove this parameter",
print_caller_location: true
legacy_platforms
else
platforms_or_legacy_check
end
materialize_dependencies(dependencies, platforms)
@materializations.flat_map(&:specs).uniq
@ -117,7 +128,7 @@ module Bundler
return false if @specs.empty?
validation_set = self.class.new(@specs)
validation_set.for(deps, true, [platform])
validation_set.for(deps, [platform])
validation_set.incomplete_specs.any?
end