From 21238f38a8eb881d403e47395781c2cc9eafbd9a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Rodr=C3=ADguez?= Date: Fri, 9 Jun 2023 21:10:12 +0200 Subject: [PATCH] [rubygems/rubygems] Extract `Definition#no_resolved_needed?` https://github.com/rubygems/rubygems/commit/1ff8626571 --- lib/bundler/definition.rb | 6 +++++- lib/bundler/runtime.rb | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/bundler/definition.rb b/lib/bundler/definition.rb index 39b7d086f015f1..7bcc768b512939 100644 --- a/lib/bundler/definition.rb +++ b/lib/bundler/definition.rb @@ -281,7 +281,7 @@ def resolve @resolve ||= if Bundler.frozen_bundle? Bundler.ui.debug "Frozen, using resolution from the lockfile" @locked_specs - elsif !unlocking? && nothing_changed? + elsif no_resolve_needed? if deleted_deps.any? Bundler.ui.debug "Some dependencies were deleted, using a subset of the resolution from the lockfile" SpecSet.new(filter_specs(@locked_specs, @dependencies - deleted_deps)) @@ -477,6 +477,10 @@ def nothing_changed? !@source_changes && !@dependency_changes && !@new_platform && !@path_changes && !@local_changes && !@incomplete_lockfile end + def no_resolve_needed? + !unlocking? && nothing_changed? + end + def unlocking? @unlocking end diff --git a/lib/bundler/runtime.rb b/lib/bundler/runtime.rb index bd38353d3c7c21..95cf78dd41c248 100644 --- a/lib/bundler/runtime.rb +++ b/lib/bundler/runtime.rb @@ -94,7 +94,7 @@ def self.definition_method(meth) definition_method :requires def lock(opts = {}) - return if @definition.nothing_changed? && !@definition.unlocking? + return if @definition.no_resolve_needed? @definition.lock(Bundler.default_lockfile, opts[:preserve_unknown_sections]) end