Class: Dependabot::Uv::UpdateChecker::LockFileResolver

Inherits:
Object
  • Object
show all
Extended by:
T::Sig
Defined in:
lib/dependabot/uv/update_checker/lock_file_resolver.rb

Instance Method Summary collapse

Constructor Details

#initialize(dependency:, dependency_files:, credentials:, repo_contents_path: nil, security_advisories: [], ignored_versions: [], update_cooldown: nil) ⇒ LockFileResolver

Returns a new instance of LockFileResolver.



29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
# File 'lib/dependabot/uv/update_checker/lock_file_resolver.rb', line 29

def initialize(
  dependency:,
  dependency_files:,
  credentials:,
  repo_contents_path: nil,
  security_advisories: [],
  ignored_versions: [],
  update_cooldown: nil
)
  @dependency = dependency
  @dependency_files = dependency_files
  @credentials = credentials
  @repo_contents_path = repo_contents_path
  @security_advisories = security_advisories
  @ignored_versions = ignored_versions
  @update_cooldown = update_cooldown
end

Instance Method Details

#latest_resolvable_version(requirement:) ⇒ Object



48
49
50
51
52
53
54
55
56
57
58
# File 'lib/dependabot/uv/update_checker/lock_file_resolver.rb', line 48

def latest_resolvable_version(requirement:)
  return nil unless requirement

  req = Uv::Requirement.new(requirement)

  # Get the version from the dependency if available
  version_from_dependency = dependency.version && Uv::Version.new(dependency.version)
  return version_from_dependency if version_from_dependency && req.satisfied_by?(version_from_dependency)

  nil
end

#lowest_resolvable_security_fix_versionObject



68
69
70
71
72
73
74
75
# File 'lib/dependabot/uv/update_checker/lock_file_resolver.rb', line 68

def lowest_resolvable_security_fix_version
  # Delegate to LatestVersionFinder which handles security advisory filtering
  fix_version = latest_version_finder.lowest_security_fix_version
  return nil if fix_version.nil?

  # Return the fix version cast to Uv::Version
  Uv::Version.new(fix_version.to_s)
end

#resolvable?(_version) ⇒ Boolean

Returns:

  • (Boolean)


61
62
63
64
65
# File 'lib/dependabot/uv/update_checker/lock_file_resolver.rb', line 61

def resolvable?(_version)
  # Always return true since we don't actually attempt resolution
  # This is just a placeholder implementation
  true
end