Class: Dependabot::Nuget::UpdateChecker::VersionFinder
- Inherits:
-
Object
- Object
- Dependabot::Nuget::UpdateChecker::VersionFinder
- Defined in:
- lib/dependabot/nuget/update_checker/version_finder.rb
Constant Summary collapse
- NUGET_RANGE_REGEX =
/[\(\[].*,.*[\)\]]/.freeze
Instance Attribute Summary collapse
-
#credentials ⇒ Object
readonly
Returns the value of attribute credentials.
-
#dependency ⇒ Object
readonly
Returns the value of attribute dependency.
-
#dependency_files ⇒ Object
readonly
Returns the value of attribute dependency_files.
-
#ignored_versions ⇒ Object
readonly
Returns the value of attribute ignored_versions.
-
#security_advisories ⇒ Object
readonly
Returns the value of attribute security_advisories.
Instance Method Summary collapse
-
#initialize(dependency:, dependency_files:, credentials:, ignored_versions:, raise_on_ignored: false, security_advisories:) ⇒ VersionFinder
constructor
A new instance of VersionFinder.
- #latest_version_details ⇒ Object
- #lowest_security_fix_version_details ⇒ Object
- #versions ⇒ Object
Constructor Details
#initialize(dependency:, dependency_files:, credentials:, ignored_versions:, raise_on_ignored: false, security_advisories:) ⇒ VersionFinder
Returns a new instance of VersionFinder.
20 21 22 23 24 25 26 27 28 29 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 20 def initialize(dependency:, dependency_files:, credentials:, ignored_versions:, raise_on_ignored: false, security_advisories:) @dependency = dependency @dependency_files = dependency_files @credentials = credentials @ignored_versions = ignored_versions @raise_on_ignored = raise_on_ignored @security_advisories = security_advisories end |
Instance Attribute Details
#credentials ⇒ Object (readonly)
Returns the value of attribute credentials.
60 61 62 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 60 def credentials @credentials end |
#dependency ⇒ Object (readonly)
Returns the value of attribute dependency.
60 61 62 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 60 def dependency @dependency end |
#dependency_files ⇒ Object (readonly)
Returns the value of attribute dependency_files.
60 61 62 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 60 def dependency_files @dependency_files end |
#ignored_versions ⇒ Object (readonly)
Returns the value of attribute ignored_versions.
60 61 62 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 60 def ignored_versions @ignored_versions end |
#security_advisories ⇒ Object (readonly)
Returns the value of attribute security_advisories.
60 61 62 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 60 def security_advisories @security_advisories end |
Instance Method Details
#latest_version_details ⇒ Object
31 32 33 34 35 36 37 38 39 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 31 def latest_version_details @latest_version_details ||= begin possible_versions = versions possible_versions = filter_prereleases(possible_versions) possible_versions = filter_ignored_versions(possible_versions) possible_versions.max_by { |hash| hash.fetch(:version) } end end |
#lowest_security_fix_version_details ⇒ Object
41 42 43 44 45 46 47 48 49 50 51 52 53 54 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 41 def lowest_security_fix_version_details @lowest_security_fix_version_details ||= begin possible_versions = versions possible_versions = filter_prereleases(possible_versions) possible_versions = Dependabot::UpdateCheckers::VersionFilters.filter_vulnerable_versions( possible_versions, security_advisories ) possible_versions = filter_ignored_versions(possible_versions) possible_versions = filter_lower_versions(possible_versions) possible_versions.min_by { |hash| hash.fetch(:version) } end end |
#versions ⇒ Object
56 57 58 |
# File 'lib/dependabot/nuget/update_checker/version_finder.rb', line 56 def versions available_v3_versions + available_v2_versions end |