class Bundler::LazySpecification
def __materialize__(candidates, fallback_to_non_installable: Bundler.frozen_bundle?)
about the mismatch higher up the stack, right before trying to install the
lock file, which is not allowed. In that case, we will give a proper error
doing this we avoid re-resolving and potentially end up changing the
If in frozen mode, we fallback to a non-installable candidate because by
def __materialize__(candidates, fallback_to_non_installable: Bundler.frozen_bundle?) search = candidates.reverse.find do |spec| spec.is_a?(StubSpecification) || spec.matches_current_metadata? end if search.nil? && fallback_to_non_installable search = candidates.last else search.dependencies = dependencies if search && search.full_name == full_name && (search.is_a?(RemoteSpecification) || search.is_a?(EndpointSpecification)) end search end