dependabot-go_modules 0.402.0 → 0.403.0

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: 1c052f4f5db8b010cd76d3626359a37799e1da3e6a2e8a95909764f4254918ba
4
- data.tar.gz: e04068d807a4ad8f3febb620e8c3c18769ea553e47dd44258bd21e895e2c2aa8
3
+ metadata.gz: 3ce2af6f74e26334e34e6f9f4adb5fc892d9dfc711b6fa964c2edb3199d1a060
4
+ data.tar.gz: 792d2865b21314188ad23c0e98bc215c6e89b87dff6f87669081dc125a10cc22
5
5
  SHA512:
6
- metadata.gz: afc71ddb4ebee49031e1755946e69809ffc884d4301931f0920c8d7a3b75d43c29dc23ba0b2a831c2ce33f33de55e523f55532b329cc981979046d76a902251e
7
- data.tar.gz: d971f9e7489aecf9a7129d11d8d5c31d5c8af794139c7967186d39cf71ae412c31487e9ef2308b4630ec69146005f29422cba4474be9e09d6df3dc08c448a499
6
+ metadata.gz: 01db7a9b289ca3f3f1d2c443f0db181af398464a367ba03e157fefcafa6d9ae445705adf395c4dca32a50a2d2c71b8c33765132a8918e5358e6e3fc8055f57ce
7
+ data.tar.gz: b163437bba7deb781def5aa0a49eca690a36182be9ca07f8f3fb1ada68967c4174f68eaf11cb0a2af6f449bf640995ed6273a60912326ca79657216243681987
@@ -114,6 +114,12 @@ module Dependabot
114
114
  GITHUB_403_REGEX =
115
115
  %r{https://github\.com/(?<repo>[^/'\s]+/[^/'\s]+)/?': The requested URL returned error: 403}
116
116
 
117
+ # An import that no module provides, as `go mod tidy` and `go get` report it. The package is often inside the
118
+ # repository's own module, and is generated code (protobuf, mocks) that is not committed.
119
+ MISSING_PACKAGE_ERROR = /^\s*(?<package>\S+): no matching versions for query "latest"/
120
+
121
+ GO_PROGRESS_LINE = /^go: (?:downloading|extracting) /
122
+
117
123
  GO_MOD_VERSION = /^go 1\.\d+(\.\d+)?$/
118
124
 
119
125
  sig do
@@ -513,6 +519,8 @@ module Dependabot
513
519
  )
514
520
  end
515
521
 
522
+ raise_for_missing_package_error(stderr)
523
+
516
524
  # We don't know what happened so we raise a generic error
517
525
  msg = stderr.lines.last(10).join.strip
518
526
  raise Dependabot::DependabotError, msg
@@ -546,6 +554,18 @@ module Dependabot
546
554
  end
547
555
  end
548
556
 
557
+ sig { params(stderr: String).void }
558
+ def raise_for_missing_package_error(stderr)
559
+ packages = stderr.scan(MISSING_PACKAGE_ERROR).flatten.uniq
560
+ return if packages.empty?
561
+
562
+ raise Dependabot::DependencyFileNotResolvable,
563
+ "Go cannot find a module that provides #{packages.join(', ')}. If they are generated code " \
564
+ "(for example protobuf or mock output) that is not committed, Dependabot cannot generate it: " \
565
+ "commit the generated files, or check the import paths.\n\n" \
566
+ "#{stderr.lines.grep_v(GO_PROGRESS_LINE).join.strip}"
567
+ end
568
+
549
569
  sig { params(stderr: String).void }
550
570
  def raise_for_go_mod_parse_error(stderr)
551
571
  go_mod_parse_error_regex = GO_MOD_PARSE_ERROR_REGEXES.find { |r| stderr =~ r }
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: dependabot-go_modules
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.402.0
4
+ version: 0.403.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Dependabot
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - '='
17
17
  - !ruby/object:Gem::Version
18
- version: 0.402.0
18
+ version: 0.403.0
19
19
  type: :runtime
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - '='
24
24
  - !ruby/object:Gem::Version
25
- version: 0.402.0
25
+ version: 0.403.0
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: debug
28
28
  requirement: !ruby/object:Gem::Requirement
@@ -277,7 +277,7 @@ licenses:
277
277
  - MIT
278
278
  metadata:
279
279
  bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
280
- changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.402.0
280
+ changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.403.0
281
281
  rdoc_options: []
282
282
  require_paths:
283
283
  - lib