dependabot-common 0.95.37 → 0.95.38

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 0f84e3f8b023a6cf787eca7dc3ed71b932495d297d8b36c732427998dd243c87
4
- data.tar.gz: a60c2c05ab9c9107513daf426405881603d3dc6ceb68d0ed20c39f856fa94ab7
3
+ metadata.gz: 2cd16136446691dedf83884a49397548a4b6ccee205b8a620b085b8f6c8b1d53
4
+ data.tar.gz: 17d1376d3a58ab2222af571cc5e464e461441e7aca4bc2ecfbb2f15a7aeb01f4
5
5
  SHA512:
6
- metadata.gz: b9cd41a89bb9ba29d7fd78c96e064585a29ffb86fb7174cf79d1fc015ce3cbb304210095b2c5cac385b0370cb5818ba89c8768e990ec0a89d8f980b816291a28
7
- data.tar.gz: cfb13c360a37753c3a1373b93b1ff00b9f1705016defa754169008a263e1d767233c27ae1f7fdb3bdd9a8cc251fbc02da97b491c17ac59a853c5e51c7daa1dab
6
+ metadata.gz: eb148c5fc0b9fc92e0d138e8b71749c6d9e1cf39537acd04ec09ccbbe90a21fd092b8939948032ed4fd937d9c0334e86e224dfa7c68feab2164ec94ba6c83cd0
7
+ data.tar.gz: 41fad9b2357ee3904f22e3574fff4c0ef2d4efa790663de113839e2eaf35b5b18e288b7293c1c642ce5f68934691272e562ceae28ff1c233a2ee7d78147ea06a
@@ -78,19 +78,32 @@ module Dependabot
78
78
 
79
79
  def lowest_tag_satisfying_previous_requirements
80
80
  tags = dependency_tags.
81
- select { |t| version_class.correct?(t.gsub(/^v/, "")) }.
82
- select do |t|
83
- version = version_class.new(t.gsub(/^v/, ""))
84
- dependency.previous_requirements.all? do |req|
85
- next true unless req.fetch(:requirement)
86
-
87
- requirement_class.
88
- requirements_array(req.fetch(:requirement)).
89
- all? { |r| r.satisfied_by?(version) }
90
- end
91
- end
92
-
93
- tags.min_by { |t| version_class.new(t.gsub(/^v/, "")) }
81
+ select { |t| version_from_tag(t) }.
82
+ select { |t| satisfies_previous_reqs?(version_from_tag(t)) }.
83
+ sort_by { |t| version_from_tag(t) }
84
+
85
+ tags.find { |t| t.include?(dependency.name) } || tags.first
86
+ end
87
+
88
+ def version_from_tag(tag)
89
+ if version_class.correct?(tag.gsub(/^v/, ""))
90
+ version_class.new(tag.gsub(/^v/, ""))
91
+ end
92
+
93
+ return unless tag.gsub(/^[^\d]*/, "").length > 1
94
+ return unless version_class.correct?(tag.gsub(/^[^\d]*/, ""))
95
+
96
+ version_class.new(tag.gsub(/^[^\d]*/, ""))
97
+ end
98
+
99
+ def satisfies_previous_reqs?(version)
100
+ dependency.previous_requirements.all? do |req|
101
+ next true unless req.fetch(:requirement)
102
+
103
+ requirement_class.
104
+ requirements_array(req.fetch(:requirement)).
105
+ all? { |r| r.satisfied_by?(version) }
106
+ end
94
107
  end
95
108
 
96
109
  # TODO: Refactor me so that Composer doesn't need to be special cased
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dependabot
4
- VERSION = "0.95.37"
4
+ VERSION = "0.95.38"
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-common
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.95.37
4
+ version: 0.95.38
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-02-18 00:00:00.000000000 Z
11
+ date: 2019-02-19 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-ecr