32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
# File 'lib/dependabot/metadata_finders/base/release_finder.rb', line 32
def self.from_tag(tag, source_url:)
name = T.cast(tag["name"], Object)
release = T.cast(tag["release"], Object)
commit = T.cast(tag["commit"], Object)
return unless name.is_a?(String)
return unless release.is_a?(Gitlab::ObjectifiedHash)
return unless commit.is_a?(Gitlab::ObjectifiedHash)
tag_name = T.cast(release["tag_name"], Object)
return unless tag_name.is_a?(String)
authored_at = time_value(T.cast(commit["authored_date"], Object))
return unless authored_at
description = T.cast(release["description"], Object)
new(
name: name,
tag_name: tag_name,
body: description.is_a?(String) ? description : nil,
html_url: "#{source_url}/tags/#{name}",
authored_at: authored_at
)
end
|