dependabot-core 0.86.18 → 0.86.19

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: 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: