dependabot-core 0.86.18 → 0.86.19

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: 3f21bbdf41e2e8d4af7b0dca36eb0936edbb2b3a8caeece17733698c641e44b2
4
- data.tar.gz: bf2d55c6e586d4b205b7b9ade1d8cc3cdc8d0f79f9ff2d156c854cffd307d1bf
3
+ metadata.gz: 6e7da9e8f60558ab04eb91b6165116d63d09ea25a728266b37a55bb76bd18f8e
4
+ data.tar.gz: 6d190e57fe9bafeda84f348050b2b8419fa1e97954ca502706ff19c927d06c5d
5
5
  SHA512:
6
- metadata.gz: '01106807ae7db8c7e7fdc081bd62b67d51c2a492c566c037b6d9c01b49a219f5bec5574d5cb6a0ef67e41157e853408dd750030a437274655bfd81c7c7606772'
7
- data.tar.gz: c026e17253882ab49466c5ea32a5d0116ea4820573bd389a15c9a40db4bd765f6c450a3e3388633e89945794a6508898eb62b3efdf8e89fbe5d6d40ab7df19b4
6
+ metadata.gz: 9315e59ad69ba147d6dc343c652dd54b21ccd00347b3aa385c38b9d36eeddf717a3faf800ee7a0a8ff8b4fe3176d070cc364dd1c298277e2bfcca0bcef039ed9
7
+ data.tar.gz: 2ccee77f7135e92436ce684607c5474acd742a43f255812c46683d12b72546b527a658d2365854225f277ebfc8dcb0405c1c547c0ad5e065e8d00f8fe5fb539e
data/CHANGELOG.md CHANGED
@@ -1,3 +1,7 @@
1
+ ## v0.86.19, 31 December 2018
2
+
3
+ - Patch Rubygems requirement equality
4
+
1
5
  ## v0.86.18, 30 December 2018
2
6
 
3
7
  - PHP: Handle > requirements correctly when bumping versions
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "rubygems_version_patch"
4
+ require "rubygems_requirement_patch"
4
5
 
5
6
  module Dependabot
6
7
  class Dependency
@@ -5,6 +5,7 @@ require "bundler"
5
5
  require "bundler_definition_ruby_version_patch"
6
6
  require "bundler_definition_bundler_version_patch"
7
7
  require "bundler_git_source_patch"
8
+ require "rubygems_requirement_patch"
8
9
 
9
10
  require "dependabot/shared_helpers"
10
11
  require "dependabot/errors"
@@ -3,6 +3,7 @@
3
3
  require "bundler_definition_ruby_version_patch"
4
4
  require "bundler_definition_bundler_version_patch"
5
5
  require "bundler_git_source_patch"
6
+ require "rubygems_requirement_patch"
6
7
 
7
8
  require "dependabot/update_checkers/ruby/bundler"
8
9
  require "dependabot/update_checkers/ruby/bundler/requirements_updater"
@@ -3,6 +3,7 @@
3
3
  require "bundler_definition_ruby_version_patch"
4
4
  require "bundler_definition_bundler_version_patch"
5
5
  require "bundler_git_source_patch"
6
+ require "rubygems_requirement_patch"
6
7
 
7
8
  require "excon"
8
9
 
@@ -3,6 +3,7 @@
3
3
  require "bundler_definition_ruby_version_patch"
4
4
  require "bundler_definition_bundler_version_patch"
5
5
  require "bundler_git_source_patch"
6
+ require "rubygems_requirement_patch"
6
7
 
7
8
  require "excon"
8
9
 
@@ -3,6 +3,7 @@
3
3
  require "bundler_definition_ruby_version_patch"
4
4
  require "bundler_definition_bundler_version_patch"
5
5
  require "bundler_git_source_patch"
6
+ require "rubygems_requirement_patch"
6
7
 
7
8
  require "excon"
8
9
 
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "dependabot/utils/elixir/version"
4
+ require "rubygems_requirement_patch"
4
5
 
5
6
  module Dependabot
6
7
  module Utils
@@ -7,6 +7,7 @@
7
7
  ################################################################################
8
8
 
9
9
  require "dependabot/utils/go/version"
10
+ require "rubygems_requirement_patch"
10
11
 
11
12
  module Dependabot
12
13
  module Utils
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "dependabot/utils/java_script/version"
4
+ require "rubygems_requirement_patch"
4
5
 
5
6
  module Dependabot
6
7
  module Utils
@@ -57,12 +58,14 @@ module Dependabot
57
58
  private
58
59
 
59
60
  # rubocop:disable Metrics/PerceivedComplexity
61
+ # rubocop:disable Metrics/CyclomaticComplexity
60
62
  def convert_js_constraint_to_ruby_constraint(req_string)
61
63
  return req_string if req_string.match?(/^([A-Za-uw-z]|v[^\d])/)
62
64
 
63
65
  req_string = req_string.gsub(/(?:\.|^)[xX*]/, "")
64
66
 
65
67
  if req_string.empty? then ">= 0"
68
+ elsif req_string.start_with?("~>") then req_string
66
69
  elsif req_string.start_with?("~") then convert_tilde_req(req_string)
67
70
  elsif req_string.start_with?("^") then convert_caret_req(req_string)
68
71
  elsif req_string.include?(" - ") then convert_hyphen_req(req_string)
@@ -71,6 +74,7 @@ module Dependabot
71
74
  end
72
75
  end
73
76
  # rubocop:enable Metrics/PerceivedComplexity
77
+ # rubocop:enable Metrics/CyclomaticComplexity
74
78
 
75
79
  def convert_tilde_req(req_string)
76
80
  version = req_string.gsub(/^~\>?/, "")
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "dependabot/utils/php/version"
4
+ require "rubygems_requirement_patch"
4
5
 
5
6
  module Dependabot
6
7
  module Utils
@@ -1,5 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require "rubygems_requirement_patch"
4
+
3
5
  module Dependabot
4
6
  module Utils
5
7
  module Ruby
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Dependabot
4
- VERSION = "0.86.18"
4
+ VERSION = "0.86.19"
5
5
  end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ require "rubygems/requirement"
4
+
5
+ # See https://github.com/rubygems/rubygems/pull/2554
6
+ module Gem
7
+ class Requirement
8
+ # rubocop:disable Style/CaseEquality
9
+ def ==(other)
10
+ return unless Gem::Requirement === other
11
+
12
+ # An == check is always necessary
13
+ return false unless requirements == other.requirements
14
+
15
+ # An == check is sufficient unless any requirements use ~>
16
+ return true unless _tilde_requirements.any?
17
+
18
+ # If any requirements use ~> we use the stricter `#eql?` that also checks
19
+ # that version precision is the same
20
+ _tilde_requirements.eql?(other._tilde_requirements)
21
+ end
22
+ # rubocop:enable Style/CaseEquality
23
+
24
+ protected
25
+
26
+ def _tilde_requirements
27
+ requirements.select { |r| r.first == "~>" }
28
+ end
29
+ end
30
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-core
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.86.18
4
+ version: 0.86.19
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-12-30 00:00:00.000000000 Z
11
+ date: 2018-12-31 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: aws-sdk-ecr
@@ -498,6 +498,7 @@ files:
498
498
  - lib/dependabot/utils/php/version.rb
499
499
  - lib/dependabot/utils/ruby/requirement.rb
500
500
  - lib/dependabot/version.rb
501
+ - lib/rubygems_requirement_patch.rb
501
502
  - lib/rubygems_version_patch.rb
502
503
  homepage: https://github.com/dependabot/dependabot-core
503
504
  licenses: