dependabot-common 0.95.37 → 0.95.38

Sign up to get free protection for your applications and to get access to all the features.
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