Fix more 'Lint/ShadowingOuterLocalVar' warnings reported by ameba
This commit is contained in:
parent
1c91110464
commit
12b818a83c
10 changed files with 22 additions and 18 deletions
|
@ -96,7 +96,7 @@ def get_about_info(ucid, locale) : AboutChannel
|
||||||
total_views = channel_about_meta["viewCountText"]?.try &.["simpleText"]?.try &.as_s.gsub(/\D/, "").to_i64? || 0_i64
|
total_views = channel_about_meta["viewCountText"]?.try &.["simpleText"]?.try &.as_s.gsub(/\D/, "").to_i64? || 0_i64
|
||||||
|
|
||||||
# The joined text is split to several sub strings. The reduce joins those strings before parsing the date.
|
# The joined text is split to several sub strings. The reduce joins those strings before parsing the date.
|
||||||
joined = channel_about_meta["joinedDateText"]?.try &.["runs"]?.try &.as_a.reduce("") { |acc, node| acc + node["text"].as_s }
|
joined = channel_about_meta["joinedDateText"]?.try &.["runs"]?.try &.as_a.reduce("") { |acc, nd| acc + nd["text"].as_s }
|
||||||
.try { |text| Time.parse(text, "Joined %b %-d, %Y", Time::Location.local) } || Time.unix(0)
|
.try { |text| Time.parse(text, "Joined %b %-d, %Y", Time::Location.local) } || Time.unix(0)
|
||||||
|
|
||||||
# Normal Auto-generated channels
|
# Normal Auto-generated channels
|
||||||
|
@ -136,7 +136,8 @@ def fetch_related_channels(about_channel : AboutChannel) : Array(AboutRelatedCha
|
||||||
channels = YoutubeAPI.browse(browse_id: about_channel.ucid, params: "EghjaGFubmVscw%3D%3D")
|
channels = YoutubeAPI.browse(browse_id: about_channel.ucid, params: "EghjaGFubmVscw%3D%3D")
|
||||||
|
|
||||||
tabs = channels.dig?("contents", "twoColumnBrowseResultsRenderer", "tabs").try(&.as_a?) || [] of JSON::Any
|
tabs = channels.dig?("contents", "twoColumnBrowseResultsRenderer", "tabs").try(&.as_a?) || [] of JSON::Any
|
||||||
tab = tabs.find { |tab| tab.dig?("tabRenderer", "title").try(&.as_s?) == "Channels" }
|
tab = tabs.find(&.dig?("tabRenderer", "title").try(&.as_s?).try(&.== "Channels"))
|
||||||
|
|
||||||
return [] of AboutRelatedChannel if tab.nil?
|
return [] of AboutRelatedChannel if tab.nil?
|
||||||
|
|
||||||
items = tab.dig?("tabRenderer", "content", "sectionListRenderer", "contents", 0, "itemSectionRenderer", "contents", 0, "gridRenderer", "items").try(&.as_a?) || [] of JSON::Any
|
items = tab.dig?("tabRenderer", "content", "sectionListRenderer", "contents", 0, "itemSectionRenderer", "contents", 0, "gridRenderer", "items").try(&.as_a?) || [] of JSON::Any
|
||||||
|
|
|
@ -94,8 +94,8 @@ def translate(locale : String?, key : String, text : String | Nil = nil) : Strin
|
||||||
translation = ""
|
translation = ""
|
||||||
match_length = 0
|
match_length = 0
|
||||||
|
|
||||||
raw_data.as_h.each do |key, value|
|
raw_data.as_h.each do |hash_key, value|
|
||||||
if md = text.try &.match(/#{key}/)
|
if md = text.try &.match(/#{hash_key}/)
|
||||||
if md[0].size >= match_length
|
if md[0].size >= match_length
|
||||||
translation = value.as_s
|
translation = value.as_s
|
||||||
match_length = md[0].size
|
match_length = md[0].size
|
||||||
|
|
|
@ -98,9 +98,9 @@ module JSONFilter
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
group_name.split('/').each do |group_name|
|
group_name.split('/').each do |name|
|
||||||
nest_stack.push({
|
nest_stack.push({
|
||||||
group_name: group_name,
|
group_name: name,
|
||||||
closing_bracket_index: closing_bracket_index,
|
closing_bracket_index: closing_bracket_index,
|
||||||
})
|
})
|
||||||
end
|
end
|
||||||
|
|
|
@ -175,9 +175,9 @@ module Kemal
|
||||||
|
|
||||||
if @cached_files.sum(&.[1][:data].bytesize) + (size = File.size(file_path)) < CACHE_LIMIT
|
if @cached_files.sum(&.[1][:data].bytesize) + (size = File.size(file_path)) < CACHE_LIMIT
|
||||||
data = Bytes.new(size)
|
data = Bytes.new(size)
|
||||||
File.open(file_path) do |file|
|
|
||||||
file.read(data)
|
File.open(file_path) { |f| f.read(data) }
|
||||||
end
|
|
||||||
filestat = File.info(file_path)
|
filestat = File.info(file_path)
|
||||||
|
|
||||||
@cached_files[file_path] = {data: data, filestat: filestat}
|
@cached_files[file_path] = {data: data, filestat: filestat}
|
||||||
|
|
|
@ -42,6 +42,9 @@ end
|
||||||
def sign_token(key, hash)
|
def sign_token(key, hash)
|
||||||
string_to_sign = [] of String
|
string_to_sign = [] of String
|
||||||
|
|
||||||
|
# TODO: figure out which "key" variable is used
|
||||||
|
# Ameba reports a warning for "Lint/ShadowingOuterLocalVar" on this
|
||||||
|
# variable, but its preferrable to not touch that (works fine atm).
|
||||||
hash.each do |key, value|
|
hash.each do |key, value|
|
||||||
next if key == "signature"
|
next if key == "signature"
|
||||||
|
|
||||||
|
|
|
@ -292,8 +292,8 @@ def parse_range(range)
|
||||||
end
|
end
|
||||||
|
|
||||||
ranges = range.lchop("bytes=").split(',')
|
ranges = range.lchop("bytes=").split(',')
|
||||||
ranges.each do |range|
|
ranges.each do |r|
|
||||||
start_range, end_range = range.split('-')
|
start_range, end_range = r.split('-')
|
||||||
|
|
||||||
start_range = start_range.to_i64? || 0_i64
|
start_range = start_range.to_i64? || 0_i64
|
||||||
end_range = end_range.to_i64?
|
end_range = end_range.to_i64?
|
||||||
|
|
|
@ -202,8 +202,8 @@ struct InvidiousPlaylist
|
||||||
end
|
end
|
||||||
|
|
||||||
videos = get_playlist_videos(self, offset: offset, video_id: video_id)
|
videos = get_playlist_videos(self, offset: offset, video_id: video_id)
|
||||||
videos.each_with_index do |video, index|
|
videos.each_with_index do |video, idx|
|
||||||
video.to_json(json, offset + index)
|
video.to_json(json, offset + idx)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -98,7 +98,7 @@ module Invidious::Routes::API::Manifest
|
||||||
height = fmt["height"].as_i
|
height = fmt["height"].as_i
|
||||||
|
|
||||||
# Resolutions reported by YouTube player (may not accurately reflect source)
|
# Resolutions reported by YouTube player (may not accurately reflect source)
|
||||||
height = potential_heights.min_by { |i| (height - i).abs }
|
height = potential_heights.min_by { |x| (height - x).abs }
|
||||||
next if unique_res && heights.includes? height
|
next if unique_res && heights.includes? height
|
||||||
heights << height
|
heights << height
|
||||||
|
|
||||||
|
|
|
@ -425,9 +425,9 @@ module Invidious::Routes::Login
|
||||||
|
|
||||||
found_valid_captcha = false
|
found_valid_captcha = false
|
||||||
error_exception = Exception.new
|
error_exception = Exception.new
|
||||||
tokens.each do |token|
|
tokens.each do |tok|
|
||||||
begin
|
begin
|
||||||
validate_request(token, answer, env.request, HMAC_KEY, locale)
|
validate_request(tok, answer, env.request, HMAC_KEY, locale)
|
||||||
found_valid_captcha = true
|
found_valid_captcha = true
|
||||||
rescue ex
|
rescue ex
|
||||||
error_exception = ex
|
error_exception = ex
|
||||||
|
|
|
@ -661,8 +661,8 @@ struct Video
|
||||||
url = URI.parse(storyboards.shift)
|
url = URI.parse(storyboards.shift)
|
||||||
params = HTTP::Params.parse(url.query || "")
|
params = HTTP::Params.parse(url.query || "")
|
||||||
|
|
||||||
storyboards.each_with_index do |storyboard, i|
|
storyboards.each_with_index do |sb, i|
|
||||||
width, height, count, storyboard_width, storyboard_height, interval, _, sigh = storyboard.split("#")
|
width, height, count, storyboard_width, storyboard_height, interval, _, sigh = sb.split("#")
|
||||||
params["sigh"] = sigh
|
params["sigh"] = sigh
|
||||||
url.query = params.to_s
|
url.query = params.to_s
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue