dependabot-bazel 0.391.0 → 0.393.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 +4 -4
- data/lib/dependabot/bazel/file_fetcher.rb +2 -2
- data/lib/dependabot/bazel/file_updater/lockfile_updater.rb +1 -1
- data/lib/dependabot/bazel/file_updater/workspace_file_updater.rb +2 -2
- data/lib/dependabot/bazel/file_updater.rb +4 -4
- data/lib/dependabot/bazel/metadata_finder.rb +7 -7
- data/lib/dependabot/bazel/update_checker/registry_client.rb +34 -11
- data/lib/dependabot/bazel/update_checker/requirements_updater.rb +4 -4
- metadata +4 -4
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: a287ec6c36d40305a8ed719a166a87a0ad363aaaadb6b77ffdd38bdd89d0ca95
|
|
4
|
+
data.tar.gz: c2620b0ee29d9da16fad68bbe71a4a51c00815546d29257f222e38c1631c6770
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 0fdde17060ab508d6d819d3124867e68e51665ab4667f1d94b0cedec66d3b6881d3b510263718d9f21123fffd8392f335cc61311de610cfe06b1208ff825b971
|
|
7
|
+
data.tar.gz: dff2cc0148841141df5e1fcae355619068a41d6d04d5c7e1e6d2996a3680b5363c459610f134a02ad750f0b445d5795616ae0f074b0c2626f238f6833807a7de
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# typed:
|
|
1
|
+
# typed: strong
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
require "dependabot/file_fetchers"
|
|
@@ -73,7 +73,7 @@ module Dependabot
|
|
|
73
73
|
files = T.let([], T::Array[DependencyFile])
|
|
74
74
|
|
|
75
75
|
module_file_items.each do |item|
|
|
76
|
-
file = fetch_file_if_present(
|
|
76
|
+
file = fetch_file_if_present(item.name)
|
|
77
77
|
files << file if file
|
|
78
78
|
end
|
|
79
79
|
|
|
@@ -104,7 +104,7 @@ module Dependabot
|
|
|
104
104
|
|
|
105
105
|
sig { params(dependency: Dependabot::Dependency).returns(T::Boolean) }
|
|
106
106
|
def bzlmod_dependency?(dependency)
|
|
107
|
-
dependency.requirements.any? { |req| req
|
|
107
|
+
dependency.requirements.any? { |req| req.file&.end_with?("MODULE.bazel") }
|
|
108
108
|
end
|
|
109
109
|
|
|
110
110
|
sig { returns(String) }
|
|
@@ -80,8 +80,8 @@ module Dependabot
|
|
|
80
80
|
|
|
81
81
|
sig { params(dependency: Dependabot::Dependency).returns(Symbol) }
|
|
82
82
|
def dependency_type(dependency)
|
|
83
|
-
return :http_archive if dependency.requirements.any? { |req| req.
|
|
84
|
-
return :git_repository if dependency.requirements.any? { |req| req.
|
|
83
|
+
return :http_archive if dependency.requirements.any? { |req| req.source_string("type") == "http_archive" }
|
|
84
|
+
return :git_repository if dependency.requirements.any? { |req| req.source_string("type") == "git_repository" }
|
|
85
85
|
|
|
86
86
|
:unknown
|
|
87
87
|
end
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# typed:
|
|
1
|
+
# typed: strong
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
require "dependabot/file_updaters"
|
|
@@ -87,13 +87,13 @@ module Dependabot
|
|
|
87
87
|
|
|
88
88
|
sig { params(dependency: Dependabot::Dependency).returns(T::Boolean) }
|
|
89
89
|
def bzlmod_dependency?(dependency)
|
|
90
|
-
dependency.requirements.any? { |req| req
|
|
90
|
+
dependency.requirements.any? { |req| req.file&.end_with?("MODULE.bazel") }
|
|
91
91
|
end
|
|
92
92
|
|
|
93
93
|
sig { params(dependency: Dependabot::Dependency).returns(T::Boolean) }
|
|
94
94
|
def workspace_dependency?(dependency)
|
|
95
95
|
dependency.requirements.any? do |req|
|
|
96
|
-
req
|
|
96
|
+
req.file == "WORKSPACE" || req.file&.end_with?("WORKSPACE.bazel")
|
|
97
97
|
end
|
|
98
98
|
end
|
|
99
99
|
|
|
@@ -121,7 +121,7 @@ module Dependabot
|
|
|
121
121
|
def relevant_dependencies_for_file(file)
|
|
122
122
|
dependencies.select do |dependency|
|
|
123
123
|
dependency.package_manager == "bazel" &&
|
|
124
|
-
dependency.requirements.any? { |req| req
|
|
124
|
+
dependency.requirements.any? { |req| req.file == file.name }
|
|
125
125
|
end
|
|
126
126
|
end
|
|
127
127
|
end
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# typed:
|
|
1
|
+
# typed: strong
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
require "dependabot/metadata_finders"
|
|
@@ -39,12 +39,12 @@ module Dependabot
|
|
|
39
39
|
sig { returns(Symbol) }
|
|
40
40
|
def source_type
|
|
41
41
|
return :bazel_dep if dependency.requirements.empty?
|
|
42
|
-
return :bazel_dep if dependency.requirements.any? { |
|
|
42
|
+
return :bazel_dep if dependency.requirements.any? { |requirement| requirement.source.nil? }
|
|
43
43
|
|
|
44
|
-
|
|
45
|
-
return :bazel_dep unless
|
|
44
|
+
requirement = dependency.requirements.first
|
|
45
|
+
return :bazel_dep unless requirement
|
|
46
46
|
|
|
47
|
-
case
|
|
47
|
+
case requirement.source_string("type")
|
|
48
48
|
when "http_archive" then :http_archive
|
|
49
49
|
when "git_repository" then :git_repository
|
|
50
50
|
else :unknown
|
|
@@ -65,7 +65,7 @@ module Dependabot
|
|
|
65
65
|
|
|
66
66
|
sig { returns(T.nilable(Dependabot::Source)) }
|
|
67
67
|
def find_source_from_http_archive
|
|
68
|
-
url = dependency.requirements.first&.
|
|
68
|
+
url = dependency.requirements.first&.source_string("url")
|
|
69
69
|
return nil unless url
|
|
70
70
|
|
|
71
71
|
source_from_url(url)
|
|
@@ -73,7 +73,7 @@ module Dependabot
|
|
|
73
73
|
|
|
74
74
|
sig { returns(T.nilable(Dependabot::Source)) }
|
|
75
75
|
def find_source_from_git_repository
|
|
76
|
-
remote_url = dependency.requirements.first&.
|
|
76
|
+
remote_url = dependency.requirements.first&.source_string("remote")
|
|
77
77
|
return nil unless remote_url
|
|
78
78
|
|
|
79
79
|
Dependabot::Source.from_url(remote_url)
|
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
|
|
4
4
|
require "json"
|
|
5
5
|
require "base64"
|
|
6
|
+
require "time"
|
|
6
7
|
require "sorbet-runtime"
|
|
7
8
|
require "dependabot/shared_helpers"
|
|
8
9
|
require "dependabot/clients/github_with_retries"
|
|
@@ -66,10 +67,8 @@ module Dependabot
|
|
|
66
67
|
file_path = "modules/#{module_name}/#{version}/source.json"
|
|
67
68
|
|
|
68
69
|
begin
|
|
69
|
-
content =
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
decoded_content = Base64.decode64(content.content)
|
|
70
|
+
content = github_file_content(file_path)
|
|
71
|
+
decoded_content = Base64.decode64(content)
|
|
73
72
|
JSON.parse(decoded_content)
|
|
74
73
|
rescue StandardError => e
|
|
75
74
|
Dependabot.logger.warn("Failed to get source for #{module_name}@#{version}: #{e.message}")
|
|
@@ -82,10 +81,7 @@ module Dependabot
|
|
|
82
81
|
file_path = "modules/#{module_name}/#{version}/MODULE.bazel"
|
|
83
82
|
|
|
84
83
|
begin
|
|
85
|
-
|
|
86
|
-
return nil unless content
|
|
87
|
-
|
|
88
|
-
Base64.decode64(content.content)
|
|
84
|
+
Base64.decode64(github_file_content(file_path))
|
|
89
85
|
rescue StandardError => e
|
|
90
86
|
Dependabot.logger.warn("Failed to get MODULE.bazel for #{module_name}@#{version}: #{e.message}")
|
|
91
87
|
nil
|
|
@@ -102,18 +98,45 @@ module Dependabot
|
|
|
102
98
|
file_path = "modules/#{module_name}/#{version}/MODULE.bazel"
|
|
103
99
|
|
|
104
100
|
commits = begin
|
|
105
|
-
|
|
101
|
+
github_client.commits("bazelbuild/bazel-central-registry", path: file_path, per_page: 1)
|
|
106
102
|
rescue StandardError => e
|
|
107
103
|
Dependabot.logger.warn("Failed to get release date for #{module_name} #{version}: #{e.message}")
|
|
104
|
+
nil
|
|
108
105
|
end
|
|
109
106
|
|
|
110
|
-
|
|
107
|
+
commit = commits&.first
|
|
108
|
+
return nil unless commit
|
|
111
109
|
|
|
112
|
-
|
|
110
|
+
commit_details = resource_field(commit, :commit, "commit details")
|
|
111
|
+
committer = resource_field(commit_details, :committer, "committer")
|
|
112
|
+
value = T.cast(committer[:date], Object)
|
|
113
|
+
return value if value.is_a?(Time)
|
|
114
|
+
return Time.parse(value) if value.is_a?(String)
|
|
115
|
+
|
|
116
|
+
raise TypeError, "committer date must be a time or string"
|
|
113
117
|
end
|
|
114
118
|
|
|
115
119
|
private
|
|
116
120
|
|
|
121
|
+
sig { params(file_path: String).returns(String) }
|
|
122
|
+
def github_file_content(file_path)
|
|
123
|
+
response = github_client.contents(GITHUB_REPO, path: file_path)
|
|
124
|
+
raise TypeError, "GitHub file response must be an object" unless response.is_a?(Sawyer::Resource)
|
|
125
|
+
|
|
126
|
+
value = T.cast(response[:content], Object)
|
|
127
|
+
return value if value.is_a?(String)
|
|
128
|
+
|
|
129
|
+
raise TypeError, "GitHub file content must be a string"
|
|
130
|
+
end
|
|
131
|
+
|
|
132
|
+
sig { params(resource: Sawyer::Resource, key: Symbol, context: String).returns(Sawyer::Resource) }
|
|
133
|
+
def resource_field(resource, key, context)
|
|
134
|
+
value = T.cast(resource[key], Object)
|
|
135
|
+
return value if value.is_a?(Sawyer::Resource)
|
|
136
|
+
|
|
137
|
+
raise TypeError, "#{context} must be an object"
|
|
138
|
+
end
|
|
139
|
+
|
|
117
140
|
sig { returns(Dependabot::Clients::GithubWithRetries) }
|
|
118
141
|
def github_client
|
|
119
142
|
@github_client ||= T.let(
|
|
@@ -21,10 +21,10 @@ module Dependabot
|
|
|
21
21
|
|
|
22
22
|
sig { returns(T::Array[Dependabot::DependencyRequirement]) }
|
|
23
23
|
def updated_requirements
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
24
|
+
requirements.map do |requirement|
|
|
25
|
+
Dependabot::DependencyRequirement.create(
|
|
26
|
+
requirement.merge(requirement: latest_version)
|
|
27
|
+
)
|
|
28
28
|
end
|
|
29
29
|
end
|
|
30
30
|
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: dependabot-bazel
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.393.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.
|
|
18
|
+
version: 0.393.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.
|
|
25
|
+
version: 0.393.0
|
|
26
26
|
- !ruby/object:Gem::Dependency
|
|
27
27
|
name: debug
|
|
28
28
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -269,7 +269,7 @@ licenses:
|
|
|
269
269
|
- MIT
|
|
270
270
|
metadata:
|
|
271
271
|
bug_tracker_uri: https://github.com/dependabot/dependabot-core/issues
|
|
272
|
-
changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.
|
|
272
|
+
changelog_uri: https://github.com/dependabot/dependabot-core/releases/tag/v0.393.0
|
|
273
273
|
rdoc_options: []
|
|
274
274
|
require_paths:
|
|
275
275
|
- lib
|