dependabot-go_modules 0.334.0 → 0.335.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: '08453d63809b6a9def977ae0431502c5cbf48dd009a527faabb309abe6cf2dda'
4
- data.tar.gz: f18381ae9e6ada87ffb25a719a570936c0f1eb810d65ce0ad81be6374e508e62
3
+ metadata.gz: 0ba2ffbc3f930196b6230efea8a5d574e83b4be246dcdf3a7c9dcd6014aec870
4
+ data.tar.gz: fb9667f95fef7bf2f302f39032ddc57a74588d6b7f398c65112d27a839c50d9b
5
5
  SHA512:
6
- metadata.gz: 15f6333c88a8710ff37b8fd0a631a349e878dcb24ce854e66a9eabcd8f60dadf1b2ce5f13ba51097cd6cbdcc919488ca360237c1986a693dc1207912e7a738a2
7
- data.tar.gz: d8cf9ce7b1a7b2e3a91c1affff8b20d1e1fc919323dd60908c3cf8d8e6f10e9f153b206480eed033c5715b565b8c098ab028e9a76431be2415d00ec9ee69e600
6
+ metadata.gz: 6c89d1331a852edcfe8ce57885022a5971d088b964e400e87ccb5bf4273e0978881ba76a9a52706b806dc5ae298cb168c090c937ee4b77c07acb3883932ae8fc
7
+ data.tar.gz: 61fe3e6273a93c9f529f2475ed6eaf5e8480a477a1a20ddf45b5788b88537a559ce5857e0bf1ee7b07db07ff6925cf1c34b49f33dc8d58d18a90fa1c4c22261e
@@ -0,0 +1,57 @@
1
+ # typed: strict
2
+ # frozen_string_literal: true
3
+
4
+ require "sorbet-runtime"
5
+
6
+ require "dependabot/dependency_graphers"
7
+ require "dependabot/dependency_graphers/base"
8
+
9
+ module Dependabot
10
+ module GoModules
11
+ class DependencyGrapher < Dependabot::DependencyGraphers::Base
12
+ sig { override.returns(Dependabot::DependencyFile) }
13
+ def relevant_dependency_file
14
+ raise DependabotError, "No go.mod present in dependency files." unless go_mod
15
+
16
+ T.must(go_mod)
17
+ end
18
+
19
+ private
20
+
21
+ # TODO: Build subdependency in this class and assign here -or- assign metadata in the parser
22
+ #
23
+ # We can do whichever makes most sense on a case-by-case basis, for Go the trade off on
24
+ # doing this in the parser shouldn't add a huge overhead.
25
+ sig { override.params(dependency: Dependabot::Dependency).returns(T::Array[String]) }
26
+ def fetch_subdependencies(dependency)
27
+ dependency.metadata.fetch(:depends_on, [])
28
+ end
29
+
30
+ sig { returns(T.nilable(Dependabot::DependencyFile)) }
31
+ def go_mod
32
+ return @go_mod if defined?(@go_mod)
33
+
34
+ @go_mod = T.let(
35
+ @dependency_files.find { |f| f.name = "go.mod" },
36
+ T.nilable(Dependabot::DependencyFile)
37
+ )
38
+ end
39
+
40
+ # In Go, the `v` is considered a canonical part of the version and omitting it can make
41
+ # comparisons tricky
42
+ sig { params(dependency: Dependabot::Dependency).returns(String) }
43
+ def purl_version_for(dependency)
44
+ return "" unless dependency.version
45
+
46
+ "@v#{dependency.version}"
47
+ end
48
+
49
+ sig { override.params(_dependency: Dependabot::Dependency).returns(String) }
50
+ def purl_pkg_for(_dependency)
51
+ "golang"
52
+ end
53
+ end
54
+ end
55
+ end
56
+
57
+ Dependabot::DependencyGraphers.register("go_modules", Dependabot::GoModules::DependencyGrapher)
@@ -21,12 +21,23 @@ module Dependabot
21
21
  extend T::Sig
22
22
 
23
23
  sig do
24
- params(dependency_files: T::Array[Dependabot::DependencyFile], source: T.nilable(Dependabot::Source),
25
- repo_contents_path: T.nilable(String), credentials: T::Array[Dependabot::Credential],
26
- reject_external_code: T::Boolean, options: T::Hash[Symbol, T.untyped]).void
24
+ params(
25
+ dependency_files: T::Array[Dependabot::DependencyFile],
26
+ source: T.nilable(Dependabot::Source),
27
+ repo_contents_path: T.nilable(String),
28
+ credentials: T::Array[Dependabot::Credential],
29
+ reject_external_code: T::Boolean,
30
+ options: T::Hash[Symbol, T.untyped]
31
+ ).void
27
32
  end
28
- def initialize(dependency_files:, source: nil, repo_contents_path: nil,
29
- credentials: [], reject_external_code: false, options: {})
33
+ def initialize(
34
+ dependency_files:,
35
+ source: nil,
36
+ repo_contents_path: nil,
37
+ credentials: [],
38
+ reject_external_code: false,
39
+ options: {}
40
+ )
30
41
  super
31
42
 
32
43
  set_go_environment_variables
@@ -49,13 +60,16 @@ module Dependabot
49
60
 
50
61
  sig { returns(Ecosystem) }
51
62
  def ecosystem
52
- @ecosystem ||= T.let(begin
53
- Ecosystem.new(
54
- name: ECOSYSTEM,
55
- package_manager: package_manager,
56
- language: language
57
- )
58
- end, T.nilable(Dependabot::Ecosystem))
63
+ @ecosystem ||= T.let(
64
+ begin
65
+ Ecosystem.new(
66
+ name: ECOSYSTEM,
67
+ package_manager: package_manager,
68
+ language: language
69
+ )
70
+ end,
71
+ T.nilable(Dependabot::Ecosystem)
72
+ )
59
73
  end
60
74
 
61
75
  private
@@ -97,9 +111,12 @@ module Dependabot
97
111
 
98
112
  sig { returns(T::Array[Dependabot::Credential]) }
99
113
  def goproxy_credentials
100
- @goproxy_credentials ||= T.let(credentials.select do |cred|
101
- cred["type"] == "goproxy_server"
102
- end, T.nilable(T::Array[Dependabot::Credential]))
114
+ @goproxy_credentials ||= T.let(
115
+ credentials.select do |cred|
116
+ cred["type"] == "goproxy_server"
117
+ end,
118
+ T.nilable(T::Array[Dependabot::Credential])
119
+ )
103
120
  end
104
121
 
105
122
  sig { returns(Ecosystem::VersionManager) }
@@ -112,24 +129,30 @@ module Dependabot
112
129
 
113
130
  sig { returns(T.nilable(Ecosystem::VersionManager)) }
114
131
  def language
115
- @language ||= T.let(begin
116
- Language.new(go_version)
117
- end, T.nilable(Dependabot::GoModules::Language))
132
+ @language ||= T.let(
133
+ go_version ? Language.new(T.must(go_version)) : nil,
134
+ T.nilable(Dependabot::GoModules::Language)
135
+ )
118
136
  end
119
137
 
120
- sig { returns(String) }
138
+ sig { returns(T.nilable(String)) }
121
139
  def go_version
122
- @go_version ||= T.let(T.must(go_mod&.content&.match(/^go\s(\d+\.\d+(.\d+)*)/)&.captures&.first),
123
- T.nilable(String))
140
+ @go_version ||= T.let(
141
+ go_mod&.content&.match(/^go\s(\d+\.\d+(.\d+)*)/)&.captures&.first,
142
+ T.nilable(String)
143
+ )
124
144
  end
125
145
 
126
146
  sig { returns(T.nilable(String)) }
127
147
  def go_toolchain_version
128
- @go_toolchain_version ||= T.let(begin
129
- # Checks version based on the GOTOOLCHAIN in ENV
130
- version = SharedHelpers.run_shell_command("go version")
131
- version.match(/go\s*(\d+\.\d+(.\d+)*)/)&.captures&.first
132
- end, T.nilable(String))
148
+ @go_toolchain_version ||= T.let(
149
+ begin
150
+ # Checks version based on the GOTOOLCHAIN in ENV
151
+ version = SharedHelpers.run_shell_command("go version")
152
+ version.match(/go\s*(\d+\.\d+(.\d+)*)/)&.captures&.first
153
+ end,
154
+ T.nilable(String)
155
+ )
133
156
  end
134
157
 
135
158
  sig { returns(T.nilable(Dependabot::DependencyFile)) }
@@ -170,23 +193,26 @@ module Dependabot
170
193
  sig { returns(T::Array[T::Hash[String, T.untyped]]) }
171
194
  def required_packages
172
195
  @required_packages ||=
173
- T.let(SharedHelpers.in_a_temporary_directory do |path|
174
- # Create a fake empty module for each local module so that
175
- # `go mod edit` works, even if some modules have been `replace`d with
176
- # a local module that we don't have access to.
177
- local_replacements.each do |_, stub_path|
178
- FileUtils.mkdir_p(stub_path)
179
- FileUtils.touch(File.join(stub_path, "go.mod"))
180
- end
181
-
182
- File.write("go.mod", go_mod_content)
183
-
184
- command = "go mod edit -json"
185
-
186
- stdout, stderr, status = Open3.capture3(command)
187
- handle_parser_error(path, stderr) unless status.success?
188
- JSON.parse(stdout)["Require"] || []
189
- end, T.nilable(T::Array[T::Hash[String, T.untyped]]))
196
+ T.let(
197
+ SharedHelpers.in_a_temporary_directory do |path|
198
+ # Create a fake empty module for each local module so that
199
+ # `go mod edit` works, even if some modules have been `replace`d with
200
+ # a local module that we don't have access to.
201
+ local_replacements.each do |_, stub_path|
202
+ FileUtils.mkdir_p(stub_path)
203
+ FileUtils.touch(File.join(stub_path, "go.mod"))
204
+ end
205
+
206
+ File.write("go.mod", go_mod_content)
207
+
208
+ command = "go mod edit -json"
209
+
210
+ stdout, stderr, status = Open3.capture3(command)
211
+ handle_parser_error(path, stderr) unless status.success?
212
+ JSON.parse(stdout)["Require"] || []
213
+ end,
214
+ T.nilable(T::Array[T::Hash[String, T.untyped]])
215
+ )
190
216
  end
191
217
 
192
218
  sig { returns(T::Hash[String, String]) }
@@ -196,25 +222,30 @@ module Dependabot
196
222
  # we can use in their place. Using generated paths is safer as it
197
223
  # means we don't need to worry about references to parent
198
224
  # directories, etc.
199
- T.let(ReplaceStubber.new(repo_contents_path).stub_paths(manifest, go_mod&.directory),
200
- T.nilable(T::Hash[String, String]))
225
+ T.let(
226
+ ReplaceStubber.new(repo_contents_path).stub_paths(manifest, go_mod&.directory),
227
+ T.nilable(T::Hash[String, String])
228
+ )
201
229
  end
202
230
 
203
231
  sig { returns(T::Hash[String, T.untyped]) }
204
232
  def manifest
205
233
  @manifest ||=
206
- T.let(SharedHelpers.in_a_temporary_directory do |path|
207
- File.write("go.mod", go_mod&.content)
234
+ T.let(
235
+ SharedHelpers.in_a_temporary_directory do |path|
236
+ File.write("go.mod", go_mod&.content)
208
237
 
209
- # Parse the go.mod to get a JSON representation of the replace
210
- # directives
211
- command = "go mod edit -json"
238
+ # Parse the go.mod to get a JSON representation of the replace
239
+ # directives
240
+ command = "go mod edit -json"
212
241
 
213
- stdout, stderr, status = Open3.capture3(command)
214
- handle_parser_error(path, stderr) unless status.success?
242
+ stdout, stderr, status = Open3.capture3(command)
243
+ handle_parser_error(path, stderr) unless status.success?
215
244
 
216
- JSON.parse(stdout)
217
- end, T.nilable(T::Hash[String, T.untyped]))
245
+ JSON.parse(stdout)
246
+ end,
247
+ T.nilable(T::Hash[String, T.untyped])
248
+ )
218
249
  end
219
250
 
220
251
  sig { returns(T.nilable(String)) }
@@ -16,58 +16,70 @@ module Dependabot
16
16
  class GoModUpdater
17
17
  extend T::Sig
18
18
 
19
- RESOLVABILITY_ERROR_REGEXES = T.let([
20
- # The checksum in go.sum does not match the downloaded content
21
- /verifying .*: checksum mismatch/,
22
- /go(?: get)?: .*: go.mod has post-v\d+ module path/,
23
- # The Go tool is suggesting the user should run go mod tidy
24
- /go mod tidy/,
25
- # Something wrong in the chain of go.mod/go.sum files
26
- # These are often fixable with go mod tidy too.
27
- /no required module provides package/,
28
- /missing go\.sum entry for module providing package/,
29
- /missing go\.sum entry for go\.mod file/m,
30
- /malformed module path/,
31
- /used for two different module paths/,
32
- # https://github.com/golang/go/issues/56494
33
- /can't find reason for requirement on/,
34
- # import path doesn't exist
35
- /package \S+ is not in GOROOT/
36
- ].freeze, T::Array[Regexp])
37
-
38
- REPO_RESOLVABILITY_ERROR_REGEXES = T.let([
39
- /fatal: The remote end hung up unexpectedly/,
40
- /repository '.+' not found/,
41
- %r{net/http: TLS handshake timeout},
42
- # (Private) module could not be fetched
43
- /go(?: get)?: .*: git (fetch|ls-remote) .*: exit status 128/m,
44
- # (Private) module could not be found
45
- /cannot find module providing package/,
46
- # Package in module was likely renamed or removed
47
- /module.*found.*but does not contain package/m,
48
- # Package pseudo-version does not match the version-control metadata
49
- # https://golang.google.cn/doc/go1.13#version-validation
50
- /go(?: get)?: .*: invalid pseudo-version/m,
51
- # Package does not exist, has been pulled or cannot be reached due to
52
- # auth problems with either git or the go proxy
53
- /go(?: get)?: .*: unknown revision/m,
54
- # Package pointing to a proxy that 404s
55
- /go(?: get)?: .*: unrecognized import path/m,
56
- # Package not being referenced correctly
57
- /go:.*imports.*package.+is not in std/m
58
- ].freeze, T::Array[Regexp])
59
-
60
- MODULE_PATH_MISMATCH_REGEXES = T.let([
61
- /go(?: get)?: ([^@\s]+)(?:@[^\s]+)?: .* has non-.* module path "(.*)" at/,
62
- /go(?: get)?: ([^@\s]+)(?:@[^\s]+)?: .* unexpected module path "(.*)"/,
63
- /go(?: get)?: ([^@\s]+)(?:@[^\s]+)?:? .* declares its path as: ([\S]*)/m
64
- ].freeze, T::Array[Regexp])
65
-
66
- OUT_OF_DISK_REGEXES = T.let([
67
- %r{input/output error},
68
- /no space left on device/,
69
- /Out of diskspace/
70
- ].freeze, T::Array[Regexp])
19
+ RESOLVABILITY_ERROR_REGEXES = T.let(
20
+ [
21
+ # The checksum in go.sum does not match the downloaded content
22
+ /verifying .*: checksum mismatch/,
23
+ /go(?: get)?: .*: go.mod has post-v\d+ module path/,
24
+ # The Go tool is suggesting the user should run go mod tidy
25
+ /go mod tidy/,
26
+ # Something wrong in the chain of go.mod/go.sum files
27
+ # These are often fixable with go mod tidy too.
28
+ /no required module provides package/,
29
+ /missing go\.sum entry for module providing package/,
30
+ /missing go\.sum entry for go\.mod file/m,
31
+ /malformed module path/,
32
+ /used for two different module paths/,
33
+ # https://github.com/golang/go/issues/56494
34
+ /can't find reason for requirement on/,
35
+ # import path doesn't exist
36
+ /package \S+ is not in GOROOT/
37
+ ].freeze,
38
+ T::Array[Regexp]
39
+ )
40
+
41
+ REPO_RESOLVABILITY_ERROR_REGEXES = T.let(
42
+ [
43
+ /fatal: The remote end hung up unexpectedly/,
44
+ /repository '.+' not found/,
45
+ %r{net/http: TLS handshake timeout},
46
+ # (Private) module could not be fetched
47
+ /go(?: get)?: .*: git (fetch|ls-remote) .*: exit status 128/m,
48
+ # (Private) module could not be found
49
+ /cannot find module providing package/,
50
+ # Package in module was likely renamed or removed
51
+ /module.*found.*but does not contain package/m,
52
+ # Package pseudo-version does not match the version-control metadata
53
+ # https://golang.google.cn/doc/go1.13#version-validation
54
+ /go(?: get)?: .*: invalid pseudo-version/m,
55
+ # Package does not exist, has been pulled or cannot be reached due to
56
+ # auth problems with either git or the go proxy
57
+ /go(?: get)?: .*: unknown revision/m,
58
+ # Package pointing to a proxy that 404s
59
+ /go(?: get)?: .*: unrecognized import path/m,
60
+ # Package not being referenced correctly
61
+ /go:.*imports.*package.+is not in std/m
62
+ ].freeze,
63
+ T::Array[Regexp]
64
+ )
65
+
66
+ MODULE_PATH_MISMATCH_REGEXES = T.let(
67
+ [
68
+ /go(?: get)?: ([^@\s]+)(?:@[^\s]+)?: .* has non-.* module path "(.*)" at/,
69
+ /go(?: get)?: ([^@\s]+)(?:@[^\s]+)?: .* unexpected module path "(.*)"/,
70
+ /go(?: get)?: ([^@\s]+)(?:@[^\s]+)?:? .* declares its path as: ([\S]*)/m
71
+ ].freeze,
72
+ T::Array[Regexp]
73
+ )
74
+
75
+ OUT_OF_DISK_REGEXES = T.let(
76
+ [
77
+ %r{input/output error},
78
+ /no space left on device/,
79
+ /Out of diskspace/
80
+ ].freeze,
81
+ T::Array[Regexp]
82
+ )
71
83
 
72
84
  GO_LANG = "Go"
73
85
 
@@ -87,8 +99,14 @@ module Dependabot
87
99
  options: T::Hash[Symbol, T.untyped]
88
100
  ).void
89
101
  end
90
- def initialize(dependencies:, dependency_files:, credentials:, repo_contents_path:,
91
- directory:, options:)
102
+ def initialize(
103
+ dependencies:,
104
+ dependency_files:,
105
+ credentials:,
106
+ repo_contents_path:,
107
+ directory:,
108
+ options:
109
+ )
92
110
  @dependencies = dependencies
93
111
  @dependency_files = dependency_files
94
112
  @credentials = credentials
@@ -273,8 +291,11 @@ module Dependabot
273
291
  sig { params(manifest: T::Hash[String, T.untyped]).returns(T::Hash[String, String]) }
274
292
  def replace_directive_substitutions(manifest)
275
293
  @replace_directive_substitutions ||=
276
- T.let(Dependabot::GoModules::ReplaceStubber.new(repo_contents_path)
277
- .stub_paths(manifest, directory), T.nilable(T::Hash[String, String]))
294
+ T.let(
295
+ Dependabot::GoModules::ReplaceStubber.new(repo_contents_path)
296
+ .stub_paths(manifest, directory),
297
+ T.nilable(T::Hash[String, String])
298
+ )
278
299
  end
279
300
 
280
301
  sig { params(substitutions: T::Hash[String, String]).void }
@@ -324,8 +345,11 @@ module Dependabot
324
345
  end
325
346
 
326
347
  if (matches = stderr.match(GO_VERSION_MISMATCH))
327
- raise Dependabot::ToolVersionNotSupported.new(GO_LANG, T.must(matches[:current_ver]),
328
- T.must(matches[:req_ver]))
348
+ raise Dependabot::ToolVersionNotSupported.new(
349
+ GO_LANG,
350
+ T.must(matches[:current_ver]),
351
+ T.must(matches[:req_ver])
352
+ )
329
353
  end
330
354
 
331
355
  # We don't know what happened so we raise a generic error
@@ -157,7 +157,8 @@ module Dependabot
157
157
  Dependabot::Package::PackageDetails.new(
158
158
  dependency: dependency,
159
159
  releases: releases.reverse.uniq(&:version)
160
- ), T.nilable(Dependabot::Package::PackageDetails)
160
+ ),
161
+ T.nilable(Dependabot::Package::PackageDetails)
161
162
  )
162
163
  end
163
164
  end
@@ -59,8 +59,10 @@ module Dependabot
59
59
 
60
60
  sig { params(directory: T.nilable(String)).returns(Pathname) }
61
61
  def module_pathname(directory)
62
- @module_pathname ||= T.let(Pathname.new(@repo_contents_path).join(T.must(directory).sub(%r{^/}, "")),
63
- T.nilable(Pathname))
62
+ @module_pathname ||= T.let(
63
+ Pathname.new(@repo_contents_path).join(T.must(directory).sub(%r{^/}, "")),
64
+ T.nilable(Pathname)
65
+ )
64
66
  end
65
67
  end
66
68
  end
@@ -84,8 +84,10 @@ module Dependabot
84
84
  .returns(T.nilable(Dependabot::Version))
85
85
  end
86
86
  def latest_version(language_version: nil)
87
- @latest_version ||= T.let(fetch_latest_version(language_version: language_version),
88
- T.nilable(Dependabot::Version))
87
+ @latest_version ||= T.let(
88
+ fetch_latest_version(language_version: language_version),
89
+ T.nilable(Dependabot::Version)
90
+ )
89
91
  end
90
92
 
91
93
  sig do
@@ -93,8 +95,10 @@ module Dependabot
93
95
  .returns(T.nilable(Dependabot::Version))
94
96
  end
95
97
  def lowest_security_fix_version(language_version: nil)
96
- @lowest_security_fix_version ||= T.let(fetch_lowest_security_fix_version(language_version: language_version),
97
- T.nilable(Dependabot::Version))
98
+ @lowest_security_fix_version ||= T.let(
99
+ fetch_lowest_security_fix_version(language_version: language_version),
100
+ T.nilable(Dependabot::Version)
101
+ )
98
102
  end
99
103
 
100
104
  sig { override.returns(T::Boolean) }
@@ -124,11 +128,14 @@ module Dependabot
124
128
 
125
129
  sig { returns(T::Array[Dependabot::Package::PackageRelease]) }
126
130
  def available_versions_details
127
- @available_versions_details ||= T.let(Package::PackageDetailsFetcher.new(
128
- dependency: dependency,
129
- dependency_files: dependency_files,
130
- credentials: credentials
131
- ).fetch_available_versions, T.nilable(T::Array[Dependabot::Package::PackageRelease]))
131
+ @available_versions_details ||= T.let(
132
+ Package::PackageDetailsFetcher.new(
133
+ dependency: dependency,
134
+ dependency_files: dependency_files,
135
+ credentials: credentials
136
+ ).fetch_available_versions,
137
+ T.nilable(T::Array[Dependabot::Package::PackageRelease])
138
+ )
132
139
  end
133
140
 
134
141
  # rubocop:disable Lint/UnusedMethodArgument
@@ -214,8 +221,10 @@ module Dependabot
214
221
  passed_days = passed_seconds / DAY_IN_SECONDS
215
222
 
216
223
  if passed_days < days
217
- Dependabot.logger.info("Version #{release.version}, Release date: #{release.released_at}." \
218
- " Days since release: #{passed_days} (cooldown days: #{days})")
224
+ Dependabot.logger.info(
225
+ "Version #{release.version}, Release date: #{release.released_at}." \
226
+ " Days since release: #{passed_days} (cooldown days: #{days})"
227
+ )
219
228
  end
220
229
 
221
230
  # Check if the release is within the cooldown period
@@ -231,7 +240,8 @@ module Dependabot
231
240
  Dependabot::Package::PackageDetails.new(
232
241
  dependency: dependency,
233
242
  releases: available_versions_details.reverse.uniq(&:version)
234
- ), T.nilable(Dependabot::Package::PackageDetails)
243
+ ),
244
+ T.nilable(Dependabot::Package::PackageDetails)
235
245
  )
236
246
  end
237
247
 
@@ -242,8 +252,10 @@ module Dependabot
242
252
  def fetch_lowest_security_fix_version(language_version: nil)
243
253
  relevant_versions = available_versions_details
244
254
  relevant_versions = filter_prerelease_versions(relevant_versions)
245
- relevant_versions = Dependabot::UpdateCheckers::VersionFilters.filter_vulnerable_versions(relevant_versions,
246
- security_advisories)
255
+ relevant_versions = Dependabot::UpdateCheckers::VersionFilters.filter_vulnerable_versions(
256
+ relevant_versions,
257
+ security_advisories
258
+ )
247
259
  relevant_versions = filter_ignored_versions(relevant_versions)
248
260
  relevant_versions = filter_lower_versions(relevant_versions)
249
261
 
@@ -3,6 +3,7 @@
3
3
 
4
4
  # These all need to be required so the various classes can be registered in a
5
5
  # lookup table of package manager names to concrete classes.
6
+ require "dependabot/go_modules/dependency_grapher"
6
7
  require "dependabot/go_modules/file_fetcher"
7
8
  require "dependabot/go_modules/file_parser"
8
9
  require "dependabot/go_modules/update_checker"
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.334.0
4
+ version: 0.335.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.334.0
18
+ version: 0.335.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.334.0
25
+ version: 0.335.0
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: debug
28
28
  requirement: !ruby/object:Gem::Requirement
@@ -113,56 +113,56 @@ dependencies:
113
113
  requirements:
114
114
  - - "~>"
115
115
  - !ruby/object:Gem::Version
116
- version: '1.67'
116
+ version: '1.80'
117
117
  type: :development
118
118
  prerelease: false
119
119
  version_requirements: !ruby/object:Gem::Requirement
120
120
  requirements:
121
121
  - - "~>"
122
122
  - !ruby/object:Gem::Version
123
- version: '1.67'
123
+ version: '1.80'
124
124
  - !ruby/object:Gem::Dependency
125
125
  name: rubocop-performance
126
126
  requirement: !ruby/object:Gem::Requirement
127
127
  requirements:
128
128
  - - "~>"
129
129
  - !ruby/object:Gem::Version
130
- version: '1.22'
130
+ version: '1.26'
131
131
  type: :development
132
132
  prerelease: false
133
133
  version_requirements: !ruby/object:Gem::Requirement
134
134
  requirements:
135
135
  - - "~>"
136
136
  - !ruby/object:Gem::Version
137
- version: '1.22'
137
+ version: '1.26'
138
138
  - !ruby/object:Gem::Dependency
139
139
  name: rubocop-rspec
140
140
  requirement: !ruby/object:Gem::Requirement
141
141
  requirements:
142
142
  - - "~>"
143
143
  - !ruby/object:Gem::Version
144
- version: '2.29'
144
+ version: '3.7'
145
145
  type: :development
146
146
  prerelease: false
147
147
  version_requirements: !ruby/object:Gem::Requirement
148
148
  requirements:
149
149
  - - "~>"
150
150
  - !ruby/object:Gem::Version
151
- version: '2.29'
151
+ version: '3.7'
152
152
  - !ruby/object:Gem::Dependency
153
153
  name: rubocop-sorbet
154
154
  requirement: !ruby/object:Gem::Requirement
155
155
  requirements:
156
156
  - - "~>"
157
157
  - !ruby/object:Gem::Version
158
- version: '0.8'
158
+ version: '0.10'
159
159
  type: :development
160
160
  prerelease: false
161
161
  version_requirements: !ruby/object:Gem::Requirement
162
162
  requirements:
163
163
  - - "~>"
164
164
  - !ruby/object:Gem::Version
165
- version: '0.8'
165
+ version: '0.10'
166
166
  - !ruby/object:Gem::Dependency
167
167
  name: simplecov
168
168
  requirement: !ruby/object:Gem::Requirement
@@ -250,6 +250,7 @@ files:
250
250
  - helpers/main.go
251
251
  - helpers/version_test.go
252
252
  - lib/dependabot/go_modules.rb
253
+ - lib/dependabot/go_modules/dependency_grapher.rb
253
254
  - lib/dependabot/go_modules/file_fetcher.rb
254
255
  - lib/dependabot/go_modules/file_parser.rb
255
256
  - lib/dependabot/go_modules/file_updater.rb
@@ -271,7 +272,7 @@ licenses:
271
272
  - MIT
272
273
  metadata:
273
274
  bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
274
- changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.334.0
275
+ changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.335.0
275
276
  rdoc_options: []
276
277
  require_paths:
277
278
  - lib