dependabot-bundler 0.98.37 → 0.98.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: 0d7dd14e5c6f735e9eb1ce2f765da082ff8c51f4619d58d65bce09d3a26c0a24
4
- data.tar.gz: 24e79dec9d75be1cfa4c6c8d925a2a7a1cce2ffb2fc8a6555364302d8f907e37
3
+ metadata.gz: 825ba20231d07bef92e85f5e6c050b081635e7eba517fbd0a36eab2c3e21efab
4
+ data.tar.gz: 0a9b6bf93a888d65afe04e0105c07016e400c5541b6387db172f1362582fd4b8
5
5
  SHA512:
6
- metadata.gz: 668a852434932a1b42eea2b47ccaf47640facd3dbead767baac1777447552b95485a23544e3889278b8f7be6a5db06c24b2953734f7f7b1b14c2b36bd7783aca
7
- data.tar.gz: 8205569e193a87a78fdc40a5bed65e5de740701628c753f5379aec185312c33e68c02fd3db97be862f2c787a6f1ec36e4f92beafa7aa4965cbe15c7e28284e15
6
+ metadata.gz: b51ec6c9ee85f4e0d23ebf5fefbffb75486cc7239c643eb8fbbada6e5d4a9575b0a3df6154d3224af8f14cd3e2b88d0b98fa8dbf72c3774a4e9ce72c4ccc0e72
7
+ data.tar.gz: 7dedda8e6b260d0dad124cc696b605b1ddbc8262a0ee9e5430f26ab6716a3d14784367ff26bcc0843bf6a926ef401b78b935639e8706ace33475ddeb507467f9
@@ -20,6 +20,7 @@ module Dependabot
20
20
  require_relative "gemspec_updater"
21
21
  require_relative "gemspec_sanitizer"
22
22
  require_relative "gemspec_dependency_name_finder"
23
+ require_relative "ruby_requirement_setter"
23
24
 
24
25
  LOCKFILE_ENDING =
25
26
  /(?<ending>\s*(?:RUBY VERSION|BUNDLED WITH).*)/m.freeze
@@ -93,10 +94,22 @@ module Dependabot
93
94
  end
94
95
  end
95
96
  post_process_lockfile(lockfile_body)
97
+ rescue Dependabot::DependencyFileNotResolvable => error
98
+ raise unless ruby_lock_error?(error)
99
+
100
+ @dont_lock_ruby_version = true
101
+ retry
102
+ end
103
+
104
+ def ruby_lock_error?(error)
105
+ return false unless error.message.include?(" for gem \"ruby\0\"")
106
+ return false if @dont_lock_ruby_version
107
+
108
+ dependency_files.any? { |f| f.name.end_with?(".gemspec") }
96
109
  end
97
110
 
98
111
  def write_temporary_dependency_files
99
- File.write(gemfile.name, updated_gemfile_content(gemfile))
112
+ File.write(gemfile.name, prepared_gemfile_content(gemfile))
100
113
  File.write(lockfile.name, sanitized_lockfile_body)
101
114
 
102
115
  top_level_gemspecs.each do |gemspec|
@@ -340,6 +353,21 @@ module Dependabot
340
353
  end
341
354
  end
342
355
 
356
+ def prepared_gemfile_content(file)
357
+ content =
358
+ GemfileUpdater.new(
359
+ dependencies: dependencies,
360
+ gemfile: file
361
+ ).updated_gemfile_content
362
+ return content if @dont_lock_ruby_version
363
+
364
+ top_level_gemspecs.each do |gs|
365
+ content = RubyRequirementSetter.new(gemspec: gs).rewrite(content)
366
+ end
367
+
368
+ content
369
+ end
370
+
343
371
  def updated_gemfile_content(file)
344
372
  GemfileUpdater.new(
345
373
  dependencies: dependencies,
@@ -1,11 +1,11 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require "parser/current"
4
- require "dependabot/bundler/update_checker"
4
+ require "dependabot/bundler/file_updater"
5
5
 
6
6
  module Dependabot
7
7
  module Bundler
8
- class UpdateChecker
8
+ class FileUpdater
9
9
  class RubyRequirementSetter
10
10
  RUBY_VERSIONS =
11
11
  %w(1.8.7 1.9.3 2.0.0 2.1.10 2.2.10 2.3.8 2.4.5 2.5.5 2.6.2).freeze
@@ -8,7 +8,7 @@ require "dependabot/bundler/file_updater/git_source_remover"
8
8
  require "dependabot/bundler/file_updater/requirement_replacer"
9
9
  require "dependabot/bundler/file_updater/gemspec_dependency_name_finder"
10
10
  require "dependabot/bundler/file_updater/lockfile_updater"
11
- require "dependabot/bundler/update_checker/ruby_requirement_setter"
11
+ require "dependabot/bundler/file_updater/ruby_requirement_setter"
12
12
 
13
13
  module Dependabot
14
14
  module Bundler
@@ -240,8 +240,8 @@ module Dependabot
240
240
 
241
241
  def lock_ruby_version(gemfile_content)
242
242
  top_level_gemspecs.each do |gs|
243
- gemfile_content =
244
- RubyRequirementSetter.new(gemspec: gs).rewrite(gemfile_content)
243
+ gemfile_content = FileUpdater::RubyRequirementSetter.
244
+ new(gemspec: gs).rewrite(gemfile_content)
245
245
  end
246
246
 
247
247
  gemfile_content
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-bundler
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.98.37
4
+ version: 0.98.38
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 0.98.37
19
+ version: 0.98.38
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 0.98.37
26
+ version: 0.98.38
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: byebug
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -161,6 +161,7 @@ files:
161
161
  - lib/dependabot/bundler/file_updater/git_source_remover.rb
162
162
  - lib/dependabot/bundler/file_updater/lockfile_updater.rb
163
163
  - lib/dependabot/bundler/file_updater/requirement_replacer.rb
164
+ - lib/dependabot/bundler/file_updater/ruby_requirement_setter.rb
164
165
  - lib/dependabot/bundler/metadata_finder.rb
165
166
  - lib/dependabot/bundler/requirement.rb
166
167
  - lib/dependabot/bundler/update_checker.rb
@@ -168,7 +169,6 @@ files:
168
169
  - lib/dependabot/bundler/update_checker/force_updater.rb
169
170
  - lib/dependabot/bundler/update_checker/latest_version_finder.rb
170
171
  - lib/dependabot/bundler/update_checker/requirements_updater.rb
171
- - lib/dependabot/bundler/update_checker/ruby_requirement_setter.rb
172
172
  - lib/dependabot/bundler/update_checker/shared_bundler_helpers.rb
173
173
  - lib/dependabot/bundler/update_checker/version_resolver.rb
174
174
  - lib/dependabot/bundler/version.rb