Skip to content

Commit 476f647

Browse files
committed
fixed nilable type after adding sorbet type strict for url updateer
1 parent 1fc6f54 commit 476f647

File tree

5 files changed

+13
-8
lines changed

5 files changed

+13
-8
lines changed

python/lib/dependabot/python/authed_url_builder.rb

+6-1
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,14 @@
1-
# typed: true
1+
# typed: strict
22
# frozen_string_literal: true
33

4+
require "sorbet-runtime"
5+
46
module Dependabot
57
module Python
68
class AuthedUrlBuilder
9+
extend T::Sig
10+
11+
sig { params(credential: Credential).returns(T.nilable(String)) }
712
def self.authed_url(credential:)
813
token = credential.fetch("token", nil)
914
url = credential.fetch("index-url", nil)

python/lib/dependabot/python/file_updater.rb

+3-3
Original file line numberDiff line numberDiff line change
@@ -132,15 +132,15 @@ def updated_requirement_based_files
132132
).updated_dependency_files
133133
end
134134

135-
sig { returns(T::Array[String]) }
135+
sig { returns(T.nilable(T::Array[String])) }
136136
def pip_compile_index_urls
137137
if credentials.any?(&:replaces_base?)
138-
credentials.select(&:replaces_base?).map { |cred| AuthedUrlBuilder.authed_url(credential: cred) }
138+
credentials.select(&:replaces_base?).map { |cred| AuthedUrlBuilder.authed_url(credential: cred) }.compact
139139
else
140140
urls = credentials.map { |cred| AuthedUrlBuilder.authed_url(credential: cred) }
141141
# If there are no credentials that replace the base, we need to
142142
# ensure that the base URL is included in the list of extra-index-urls.
143-
[nil, *urls]
143+
[nil, *urls].compact
144144
end
145145
end
146146

python/lib/dependabot/python/file_updater/pipfile_preparer.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ def sub_auth_url(source, credentials)
8888

8989
return nil if source_cred.nil?
9090

91-
source["url"] = AuthedUrlBuilder.authed_url(credential: source_cred)
91+
source["url"] = T.must(AuthedUrlBuilder.authed_url(credential: source_cred))
9292
end
9393

9494
source

python/lib/dependabot/python/metadata_finder.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -196,7 +196,7 @@ def possible_listing_urls
196196
.map { |c| AuthedUrlBuilder.authed_url(credential: c) }
197197

198198
(credential_urls + [MAIN_PYPI_URL]).map do |base_url|
199-
base_url.gsub(%r{/$}, "") + "/#{normalised_dependency_name}/json"
199+
T.must(base_url&.gsub(%r{/$}, "")) + "/#{normalised_dependency_name}/json"
200200
end
201201
end
202202

python/lib/dependabot/python/package/package_registry_finder.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ def pyproject_index_urls
140140
end
141141

142142
def config_variable_index_urls
143-
urls = { main: nil, extra: [] }
143+
urls = { main: T.let(nil, T.nilable(String)), extra: [] }
144144

145145
index_url_creds = credentials
146146
.select { |cred| cred["type"] == "python_index" }
@@ -190,7 +190,7 @@ def authed_base_url(base_url)
190190
cred = credential_for(base_url)
191191
return base_url unless cred
192192

193-
AuthedUrlBuilder.authed_url(credential: cred).gsub(%r{/*$}, "") + "/"
193+
T.must(AuthedUrlBuilder.authed_url(credential: cred)&.gsub(%r{/*$}, "")) + "/"
194194
end
195195

196196
def credential_for(url)

0 commit comments

Comments
 (0)