diff --git a/.ameba.yml b/.ameba.yml
index 96d910be5..6b177fa5f 100644
--- a/.ameba.yml
+++ b/.ameba.yml
@@ -31,9 +31,6 @@ Lint/SpecFilename:
# Style
#
-Style/RedundantReturn:
- Enabled: false
-
Style/RedundantNext:
Enabled: false
diff --git a/spec/http_server/handlers/static_assets_handler_spec.cr b/spec/http_server/handlers/static_assets_handler_spec.cr
index 268c4b2f4..8619380eb 100644
--- a/spec/http_server/handlers/static_assets_handler_spec.cr
+++ b/spec/http_server/handlers/static_assets_handler_spec.cr
@@ -14,7 +14,7 @@ require "spectator"
require "../../../src/invidious/http_server/static_assets_handler.cr"
private def get_static_assets_handler
- return Invidious::HttpServer::StaticAssetsHandler.new "spec/http_server/handlers/static_assets_handler", directory_listing: false
+ Invidious::HttpServer::StaticAssetsHandler.new "spec/http_server/handlers/static_assets_handler", directory_listing: false
end
# Slightly modified version of `handle` function from
@@ -125,7 +125,7 @@ Spectator.describe StaticAssetsHandler do
gzip.gets_to_end
end
- return expect(decompressed)
+ expect(decompressed)
end
it "For full file requests" do
diff --git a/spec/invidious/user/imports_spec.cr b/spec/invidious/user/imports_spec.cr
index 58b5d4aab..2dffa1a9f 100644
--- a/spec/invidious/user/imports_spec.cr
+++ b/spec/invidious/user/imports_spec.cr
@@ -7,7 +7,7 @@ Spectator.configure do |config|
end
def csv_sample
- return <<-CSV
+ <<-CSV
Kanal-ID,Kanal-URL,Kanaltitel
UC0hHW5Y08ggq-9kbrGgWj0A,http://www.youtube.com/channel/UC0hHW5Y08ggq-9kbrGgWj0A,Matias Marolla
UC0vBXGSyV14uvJ4hECDOl0Q,http://www.youtube.com/channel/UC0vBXGSyV14uvJ4hECDOl0Q,Techquickie
diff --git a/spec/parsers_helper.cr b/spec/parsers_helper.cr
index 6589acad8..79e256d2d 100644
--- a/spec/parsers_helper.cr
+++ b/spec/parsers_helper.cr
@@ -26,7 +26,7 @@ def load_mock(file) : Hash(String, JSON::Any)
file = File.join(__DIR__, "..", "mocks", file + ".json")
content = File.read(file)
- return JSON.parse(content).as_h
+ JSON.parse(content).as_h
end
Spectator.configure do |config|
diff --git a/src/invidious/channels/channels.cr b/src/invidious/channels/channels.cr
index 3c15d6359..400483bac 100644
--- a/src/invidious/channels/channels.cr
+++ b/src/invidious/channels/channels.cr
@@ -141,7 +141,7 @@ def get_batch_channels(channels)
end
end
- return final
+ final
end
def get_channel(id) : InvidiousChannel
@@ -152,7 +152,7 @@ def get_channel(id) : InvidiousChannel
Invidious::Database::Channels.insert(channel, update_on_conflict: true)
end
- return channel
+ channel
end
def fetch_channel(ucid, pull_all_videos : Bool)
@@ -292,5 +292,5 @@ def fetch_channel(ucid, pull_all_videos : Bool)
end
channel.updated = Time.utc
- return channel
+ channel
end
diff --git a/src/invidious/channels/community.cr b/src/invidious/channels/community.cr
index 4256230cb..48d089690 100644
--- a/src/invidious/channels/community.cr
+++ b/src/invidious/channels/community.cr
@@ -21,7 +21,7 @@ def fetch_channel_community(ucid, cursor, locale, format, thin_mode)
items = container.as_a
end
- return extract_channel_community(items, ucid: ucid, locale: locale, format: format, thin_mode: thin_mode)
+ extract_channel_community(items, ucid: ucid, locale: locale, format: format, thin_mode: thin_mode)
end
def decode_ucid_from_post_protobuf(params)
@@ -30,7 +30,7 @@ def decode_ucid_from_post_protobuf(params)
.try { |i| IO::Memory.new(i) }
.try { |i| Protodec::Any.parse(i) }
- return decoded_protobuf.try(&.["56:0:embedded"]["2:0:string"].as_s)
+ decoded_protobuf.try(&.["56:0:embedded"]["2:0:string"].as_s)
end
def fetch_channel_community_post(ucid, post_id, locale, format, thin_mode)
@@ -53,7 +53,7 @@ def fetch_channel_community_post(ucid, post_id, locale, format, thin_mode)
items << item
end
- return extract_channel_community(items, ucid: ucid, locale: locale, format: format, thin_mode: thin_mode, is_single_post: true)
+ extract_channel_community(items, ucid: ucid, locale: locale, format: format, thin_mode: thin_mode, is_single_post: true)
end
def extract_channel_community(items, *, ucid, locale, format, thin_mode, is_single_post : Bool = false)
@@ -294,7 +294,7 @@ def extract_channel_community(items, *, ucid, locale, format, thin_mode, is_sing
end
end
- return response
+ response
end
def produce_channel_community_continuation(ucid, cursor)
@@ -310,7 +310,7 @@ def produce_channel_community_continuation(ucid, cursor)
.try { |i| Base64.urlsafe_encode(i) }
.try { |i| URI.encode_www_form(i) }
- return continuation
+ continuation
end
def extract_channel_community_cursor(continuation)
diff --git a/src/invidious/channels/playlists.cr b/src/invidious/channels/playlists.cr
index cba1abd9c..0f0089eab 100644
--- a/src/invidious/channels/playlists.cr
+++ b/src/invidious/channels/playlists.cr
@@ -24,7 +24,7 @@ def fetch_channel_playlists(ucid, author, continuation, sort_by)
initial_data = YoutubeAPI.browse(ucid, params: params || "")
end
- return extract_items(initial_data, author, ucid)
+ extract_items(initial_data, author, ucid)
end
def fetch_channel_podcasts(ucid, author, continuation)
@@ -33,7 +33,7 @@ def fetch_channel_podcasts(ucid, author, continuation)
else
initial_data = YoutubeAPI.browse(ucid, params: "Eghwb2RjYXN0c_IGBQoDugEA")
end
- return extract_items(initial_data, author, ucid)
+ extract_items(initial_data, author, ucid)
end
def fetch_channel_releases(ucid, author, continuation)
@@ -42,7 +42,7 @@ def fetch_channel_releases(ucid, author, continuation)
else
initial_data = YoutubeAPI.browse(ucid, params: "EghyZWxlYXNlc_IGBQoDsgEA")
end
- return extract_items(initial_data, author, ucid)
+ extract_items(initial_data, author, ucid)
end
def fetch_channel_courses(ucid, author, continuation)
@@ -51,5 +51,5 @@ def fetch_channel_courses(ucid, author, continuation)
else
initial_data = YoutubeAPI.browse(ucid, params: "Egdjb3Vyc2Vz8gYFCgPCAQA%3D")
end
- return extract_items(initial_data, author, ucid)
+ extract_items(initial_data, author, ucid)
end
diff --git a/src/invidious/channels/videos.cr b/src/invidious/channels/videos.cr
index 96400f471..c5c66a513 100644
--- a/src/invidious/channels/videos.cr
+++ b/src/invidious/channels/videos.cr
@@ -9,7 +9,7 @@ module Invidious::Channel::Tabs
# an author name and ucid directly (e.g in RSS feeds).
# TODO: figure out how to get rid of that
def get_videos(channel : AboutChannel, *, continuation : String? = nil, sort_by = "newest")
- return get_videos(
+ get_videos(
channel.author, channel.ucid,
continuation: continuation, sort_by: sort_by
)
@@ -19,7 +19,7 @@ module Invidious::Channel::Tabs
# an author name and ucid directly (e.g in RSS feeds).
# TODO: figure out how to get rid of that
def get_videos(channel : InvidiousChannel, *, continuation : String? = nil, sort_by = "newest")
- return get_videos(
+ get_videos(
channel.author, channel.id,
continuation: continuation, sort_by: sort_by
)
@@ -29,7 +29,7 @@ module Invidious::Channel::Tabs
continuation ||= make_initial_videos_ctoken(ucid, sort_by)
initial_data = YoutubeAPI.browse(continuation: continuation)
- return extract_items(initial_data, author, ucid)
+ extract_items(initial_data, author, ucid)
end
def get_60_videos(channel : AboutChannel, *, continuation : String? = nil, sort_by = "newest")
@@ -59,7 +59,7 @@ module Invidious::Channel::Tabs
continuation ||= make_initial_shorts_ctoken(channel.ucid, sort_by)
initial_data = YoutubeAPI.browse(continuation: continuation)
- return extract_items(initial_data, channel.author, channel.ucid)
+ extract_items(initial_data, channel.author, channel.ucid)
end
# -------------------
@@ -70,7 +70,7 @@ module Invidious::Channel::Tabs
continuation ||= make_initial_livestreams_ctoken(channel.ucid, sort_by)
initial_data = YoutubeAPI.browse(continuation: continuation)
- return extract_items(initial_data, channel.author, channel.ucid)
+ extract_items(initial_data, channel.author, channel.ucid)
end
def get_60_livestreams(channel : AboutChannel, *, continuation : String? = nil, sort_by = "newest")
@@ -98,10 +98,10 @@ module Invidious::Channel::Tabs
private def sort_options_videos_short(sort_by : String)
case sort_by
- when "newest" then return 4_i64
- when "popular" then return 2_i64
- when "oldest" then return 5_i64
- else return 4_i64 # Fallback to "newest"
+ when "newest" then 4_i64
+ when "popular" then 2_i64
+ when "oldest" then 5_i64
+ else 4_i64 # Fallback to "newest"
end
end
@@ -118,7 +118,7 @@ module Invidious::Channel::Tabs
},
}
- return channel_ctoken_wrap(ucid, object)
+ channel_ctoken_wrap(ucid, object)
end
# Generate the initial "continuation token" to get the first page of the
@@ -134,7 +134,7 @@ module Invidious::Channel::Tabs
},
}
- return channel_ctoken_wrap(ucid, object)
+ channel_ctoken_wrap(ucid, object)
end
# Generate the initial "continuation token" to get the first page of the
@@ -158,7 +158,7 @@ module Invidious::Channel::Tabs
},
}
- return channel_ctoken_wrap(ucid, object)
+ channel_ctoken_wrap(ucid, object)
end
# The protobuf structure common between videos/shorts/livestreams
@@ -187,6 +187,6 @@ module Invidious::Channel::Tabs
.try { |i| Base64.urlsafe_encode(i) }
.try { |i| URI.encode_www_form(i) }
- return continuation
+ continuation
end
end
diff --git a/src/invidious/comments/content.cr b/src/invidious/comments/content.cr
index 1f55bfe65..bd29b229a 100644
--- a/src/invidious/comments/content.cr
+++ b/src/invidious/comments/content.cr
@@ -37,7 +37,7 @@ def text_to_parsed_content(text : String) : JSON::Any
nodes << (node)
end
end
- return JSON.parse({"runs" => nodes}.to_json)
+ JSON.parse({"runs" => nodes}.to_json)
end
def parse_content(content : JSON::Any, video_id : String? = "") : String
@@ -85,5 +85,5 @@ def content_to_comment_html(content, video_id : String? = "")
text
end
- return html_array.join("").delete('\ufeff')
+ html_array.join("").delete('\ufeff')
end
diff --git a/src/invidious/comments/links_util.cr b/src/invidious/comments/links_util.cr
index f89b86d32..c82345191 100644
--- a/src/invidious/comments/links_util.cr
+++ b/src/invidious/comments/links_util.cr
@@ -45,7 +45,7 @@ module Invidious::Comments
html = node
end
- return html.to_xml(options: XML::SaveOptions::NO_DECL)
+ html.to_xml(options: XML::SaveOptions::NO_DECL)
end
def fill_links(html, scheme, host)
@@ -71,6 +71,6 @@ module Invidious::Comments
html = html.xpath_node(%q(//body/p)).not_nil!
end
- return html.to_xml(options: XML::SaveOptions::NO_DECL)
+ html.to_xml(options: XML::SaveOptions::NO_DECL)
end
end
diff --git a/src/invidious/comments/youtube.cr b/src/invidious/comments/youtube.cr
index e923b2f8d..c74342699 100644
--- a/src/invidious/comments/youtube.cr
+++ b/src/invidious/comments/youtube.cr
@@ -13,7 +13,7 @@ module Invidious::Comments
client_config = YoutubeAPI::ClientConfig.new(region: region)
response = YoutubeAPI.next(continuation: ctoken, client_config: client_config)
- return parse_youtube(id, response, format, locale, thin_mode, sort_by)
+ parse_youtube(id, response, format, locale, thin_mode, sort_by)
end
def fetch_community_post_comments(ucid, post_id, sort_by = "top")
@@ -58,7 +58,7 @@ module Invidious::Comments
.try { |i| URI.encode_www_form(i) }
initial_data = YoutubeAPI.browse(continuation: continuation)
- return initial_data
+ initial_data
end
def parse_youtube(id, response, format, locale, thin_mode, sort_by = "top", is_post = false)
@@ -320,7 +320,7 @@ module Invidious::Comments
end
end
- return response
+ response
end
def produce_continuation(video_id, cursor = "", sort_by = "top")
@@ -364,6 +364,6 @@ module Invidious::Comments
.try { |i| Base64.urlsafe_encode(i) }
.try { |i| URI.encode_www_form(i) }
- return continuation
+ continuation
end
end
diff --git a/src/invidious/config.cr b/src/invidious/config.cr
index d24939923..e439b0645 100644
--- a/src/invidious/config.cr
+++ b/src/invidious/config.cr
@@ -183,15 +183,15 @@ class Config
def disabled?(option)
case disabled = CONFIG.disable_proxy
when Bool
- return disabled
+ disabled
when Array
if disabled.includes? option
- return true
+ true
else
- return false
+ false
end
else
- return false
+ false
end
end
@@ -318,6 +318,6 @@ class Config
end
end
- return config
+ config
end
end
diff --git a/src/invidious/database/annotations.cr b/src/invidious/database/annotations.cr
index f1659509a..4bd3a2cf7 100644
--- a/src/invidious/database/annotations.cr
+++ b/src/invidious/database/annotations.cr
@@ -19,6 +19,6 @@ module Invidious::Database::Annotations
WHERE id = $1
SQL
- return PG_DB.query_one?(request, id, as: Annotation)
+ PG_DB.query_one?(request, id, as: Annotation)
end
end
diff --git a/src/invidious/database/base.cr b/src/invidious/database/base.cr
index 85ff620b7..a70516f2d 100644
--- a/src/invidious/database/base.cr
+++ b/src/invidious/database/base.cr
@@ -132,6 +132,6 @@ module Invidious::Database
end
end
- return column_array
+ column_array
end
end
diff --git a/src/invidious/database/channels.cr b/src/invidious/database/channels.cr
index 3e7f480ce..e967332c5 100644
--- a/src/invidious/database/channels.cr
+++ b/src/invidious/database/channels.cr
@@ -72,7 +72,7 @@ module Invidious::Database::Channels
WHERE id = $1
SQL
- return PG_DB.query_one?(request, id, as: InvidiousChannel)
+ PG_DB.query_one?(request, id, as: InvidiousChannel)
end
def select(ids : Array(String)) : Array(InvidiousChannel)?
@@ -83,7 +83,7 @@ module Invidious::Database::Channels
WHERE id = ANY($1)
SQL
- return PG_DB.query_all(request, ids, as: InvidiousChannel)
+ PG_DB.query_all(request, ids, as: InvidiousChannel)
end
end
@@ -114,7 +114,7 @@ module Invidious::Database::ChannelVideos
RETURNING (xmax=0) AS was_insert
SQL
- return PG_DB.query_one(request, *video.to_tuple, as: Bool)
+ PG_DB.query_one(request, *video.to_tuple, as: Bool)
end
# -------------------
@@ -130,7 +130,7 @@ module Invidious::Database::ChannelVideos
ORDER BY published DESC
SQL
- return PG_DB.query_all(request, ids, as: ChannelVideo)
+ PG_DB.query_all(request, ids, as: ChannelVideo)
end
def select_notfications(ucid : String, since : Time) : Array(ChannelVideo)
@@ -141,7 +141,7 @@ module Invidious::Database::ChannelVideos
LIMIT 15
SQL
- return PG_DB.query_all(request, ucid, since, as: ChannelVideo)
+ PG_DB.query_all(request, ucid, since, as: ChannelVideo)
end
def select_popular_videos : Array(ChannelVideo)
diff --git a/src/invidious/database/nonces.cr b/src/invidious/database/nonces.cr
index 55c8d8560..38b8d44d1 100644
--- a/src/invidious/database/nonces.cr
+++ b/src/invidious/database/nonces.cr
@@ -50,6 +50,6 @@ module Invidious::Database::Nonces
WHERE nonce = $1
SQL
- return PG_DB.query_one?(request, nonce, as: {String, Time})
+ PG_DB.query_one?(request, nonce, as: {String, Time})
end
end
diff --git a/src/invidious/database/playlists.cr b/src/invidious/database/playlists.cr
index ba1e5b0a8..fe06c52cc 100644
--- a/src/invidious/database/playlists.cr
+++ b/src/invidious/database/playlists.cr
@@ -100,7 +100,7 @@ module Invidious::Database::Playlists
WHERE id = $1
SQL
- return PG_DB.query_one?(request, id, as: InvidiousPlaylist)
+ PG_DB.query_one?(request, id, as: InvidiousPlaylist)
end
def select_all(*, author : String) : Array(InvidiousPlaylist)
@@ -109,7 +109,7 @@ module Invidious::Database::Playlists
WHERE author = $1
SQL
- return PG_DB.query_all(request, author, as: InvidiousPlaylist)
+ PG_DB.query_all(request, author, as: InvidiousPlaylist)
end
# -------------------
@@ -157,7 +157,7 @@ module Invidious::Database::Playlists
WHERE id = $1
SQL
- return PG_DB.query_one?(request, id, as: String).nil?
+ PG_DB.query_one?(request, id, as: String).nil?
end
# Count how many playlist a user has created.
@@ -167,7 +167,7 @@ module Invidious::Database::Playlists
WHERE author = $1
SQL
- return PG_DB.query_one?(request, author, as: Int64) || 0_i64
+ PG_DB.query_one?(request, author, as: Int64) || 0_i64
end
end
@@ -225,7 +225,7 @@ module Invidious::Database::PlaylistVideos
OFFSET $4
SQL
- return PG_DB.query_all(request, plid, index, limit, offset, as: PlaylistVideo)
+ PG_DB.query_all(request, plid, index, limit, offset, as: PlaylistVideo)
end
def select_index(plid : String, vid : String) : Int64?
@@ -235,7 +235,7 @@ module Invidious::Database::PlaylistVideos
LIMIT 1
SQL
- return PG_DB.query_one?(request, plid, vid, as: Int64)
+ PG_DB.query_one?(request, plid, vid, as: Int64)
end
def select_one_id(plid : String, index : VideoIndex) : String?
@@ -246,7 +246,7 @@ module Invidious::Database::PlaylistVideos
LIMIT 1
SQL
- return PG_DB.query_one?(request, plid, index, as: String)
+ PG_DB.query_one?(request, plid, index, as: String)
end
def select_ids(plid : String, index : VideoIndex, limit = 500) : Array(String)
@@ -257,6 +257,6 @@ module Invidious::Database::PlaylistVideos
LIMIT $3
SQL
- return PG_DB.query_all(request, plid, index, limit, as: String)
+ PG_DB.query_all(request, plid, index, limit, as: String)
end
end
diff --git a/src/invidious/database/users.cr b/src/invidious/database/users.cr
index 9b297930f..15149cae3 100644
--- a/src/invidious/database/users.cr
+++ b/src/invidious/database/users.cr
@@ -194,7 +194,7 @@ module Invidious::Database::Users
WHERE email = $1
SQL
- return PG_DB.query_one?(request, email, as: User)
+ PG_DB.query_one?(request, email, as: User)
end
# Same as select, but can raise an exception
@@ -204,7 +204,7 @@ module Invidious::Database::Users
WHERE email = $1
SQL
- return PG_DB.query_one(request, email, as: User)
+ PG_DB.query_one(request, email, as: User)
end
def select(*, token : String) : User?
@@ -213,7 +213,7 @@ module Invidious::Database::Users
WHERE token = $1
SQL
- return PG_DB.query_one?(request, token, as: User)
+ PG_DB.query_one?(request, token, as: User)
end
def select_notifications(user : User) : Array(String)
@@ -223,6 +223,6 @@ module Invidious::Database::Users
WHERE email = $1
SQL
- return PG_DB.query_one(request, user.email, as: Array(String))
+ PG_DB.query_one(request, user.email, as: Array(String))
end
end
diff --git a/src/invidious/database/videos.cr b/src/invidious/database/videos.cr
index 40bafaf1d..28ac8850a 100644
--- a/src/invidious/database/videos.cr
+++ b/src/invidious/database/videos.cr
@@ -47,6 +47,6 @@ module Invidious::Database::Videos
WHERE id = $1
SQL
- return PG_DB.query_one?(request, id, as: Video)
+ PG_DB.query_one?(request, id, as: Video)
end
end
diff --git a/src/invidious/exceptions.cr b/src/invidious/exceptions.cr
index 690db9077..b8416811a 100644
--- a/src/invidious/exceptions.cr
+++ b/src/invidious/exceptions.cr
@@ -23,7 +23,7 @@ class BrokenTubeException < Exception
end
def message
- return "Missing JSON element \"#{@element}\""
+ "Missing JSON element \"#{@element}\""
end
end
diff --git a/src/invidious/frontend/channel_page.cr b/src/invidious/frontend/channel_page.cr
index 4fe21b964..afcb69fc6 100644
--- a/src/invidious/frontend/channel_page.cr
+++ b/src/invidious/frontend/channel_page.cr
@@ -14,7 +14,7 @@ module Invidious::Frontend::ChannelPage
end
def generate_tabs_links(locale : String, channel : AboutChannel, selected_tab : TabsAvailable)
- return String.build(1500) do |str|
+ String.build(1500) do |str|
base_url = "/channel/#{channel.ucid}"
TabsAvailable.each do |tab|
diff --git a/src/invidious/frontend/misc.cr b/src/invidious/frontend/misc.cr
index 9c30724a5..961ec2de4 100644
--- a/src/invidious/frontend/misc.cr
+++ b/src/invidious/frontend/misc.cr
@@ -6,9 +6,9 @@ module Invidious::Frontend::Misc
if preferences.automatic_instance_redirect
current_page = env.get?("current_page").as(String)
- return "/redirect?referer=#{current_page}"
+ "/redirect?referer=#{current_page}"
else
- return "https://redirect.invidious.io#{env.request.resource}"
+ "https://redirect.invidious.io#{env.request.resource}"
end
end
end
diff --git a/src/invidious/frontend/pagination.cr b/src/invidious/frontend/pagination.cr
index d2bf0e7e6..e3ab7b3ea 100644
--- a/src/invidious/frontend/pagination.cr
+++ b/src/invidious/frontend/pagination.cr
@@ -60,7 +60,7 @@ module Invidious::Frontend::Pagination
end
def nav_numeric(locale : String?, *, base_url : String | URI, current_page : Int, show_next : Bool = true)
- return String.build do |str|
+ String.build do |str|
str << %(
\n)
str << %(
\n)
@@ -91,7 +91,7 @@ module Invidious::Frontend::Pagination
end
def nav_ctoken(locale : String?, *, base_url : String | URI, ctoken : String?, first_page : Bool, params : URI::Params)
- return String.build do |str|
+ String.build do |str|
str << %(
\n)
str << %(
\n)
diff --git a/src/invidious/frontend/search_filters.cr b/src/invidious/frontend/search_filters.cr
index 2ad6c6395..1e27ae51d 100644
--- a/src/invidious/frontend/search_filters.cr
+++ b/src/invidious/frontend/search_filters.cr
@@ -3,7 +3,7 @@ module Invidious::Frontend::SearchFilters
# Generate the search filters collapsable widget.
def generate(filters : Search::Filters, query : String, page : Int, locale : String) : String
- return String.build(8000) do |str|
+ String.build(8000) do |str|
str << "
\n"
str << "\t
"
str << "\t\t" << translate(locale, "search_filters_title") << "
\n"
diff --git a/src/invidious/frontend/watch_page.cr b/src/invidious/frontend/watch_page.cr
index 14e169e88..110637610 100644
--- a/src/invidious/frontend/watch_page.cr
+++ b/src/invidious/frontend/watch_page.cr
@@ -33,7 +33,7 @@ module Invidious::Frontend::WatchPage
url = "#{invidious_companion.public_url}/download?check=#{invidious_companion_encrypt(video.id)}"
end
- return String.build(4000) do |str|
+ String.build(4000) do |str|
str << " )
- return HTML.escape(details)
+ HTML.escape(details)
end
def get_issue_template(env : HTTP::Server::Context, exception : Exception) : Tuple(String, String)
@@ -86,7 +86,7 @@ def error_template_helper(env : HTTP::Server::Context, status_code : Int32, exce
# proposed above the error message, just worded differently.
next_steps = ""
- return templated "error"
+ templated "error"
end
def error_template_helper(env : HTTP::Server::Context, status_code : Int32, message : String)
@@ -98,7 +98,7 @@ def error_template_helper(env : HTTP::Server::Context, status_code : Int32, mess
error_message = translate(locale, message)
next_steps = error_redirect_helper(env)
- return templated "error"
+ templated "error"
end
# -------------------
@@ -117,14 +117,14 @@ def error_atom_helper(env : HTTP::Server::Context, status_code : Int32, exceptio
env.response.content_type = "application/atom+xml"
env.response.status_code = status_code
- return "
#{exception.inspect_with_backtrace}"
+ "
#{exception.inspect_with_backtrace}"
end
def error_atom_helper(env : HTTP::Server::Context, status_code : Int32, message : String)
env.response.content_type = "application/atom+xml"
env.response.status_code = status_code
- return "
#{message}"
+ "
#{message}"
end
# -------------------
@@ -154,7 +154,7 @@ def error_json_helper(
error_message = error_message.merge(additional_fields)
end
- return error_message.to_json
+ error_message.to_json
end
def error_json_helper(
@@ -172,7 +172,7 @@ def error_json_helper(
error_message = error_message.merge(additional_fields)
end
- return error_message.to_json
+ error_message.to_json
end
# -------------------
@@ -191,7 +191,7 @@ def error_redirect_helper(env : HTTP::Server::Context)
go_to_youtube = translate(locale, "next_steps_error_message_go_to_youtube")
switch_instance = translate(locale, "Switch Invidious Instance")
- return <<-HTML
+ <<-HTML
#{next_steps_text}
-
@@ -206,6 +206,6 @@ def error_redirect_helper(env : HTTP::Server::Context)
HTML
else
- return ""
+ ""
end
end
diff --git a/src/invidious/helpers/helpers.cr b/src/invidious/helpers/helpers.cr
index 6add0237f..2a50ebd0d 100644
--- a/src/invidious/helpers/helpers.cr
+++ b/src/invidious/helpers/helpers.cr
@@ -32,7 +32,7 @@ def html_to_content(description_html : String)
description = XML.parse_html(description).content.strip("\n ")
end
- return description
+ description
end
def cache_annotation(id, annotations)
@@ -165,7 +165,7 @@ def create_notification_stream(env, topics, connection_channel)
end
def extract_initial_data(body) : Hash(String, JSON::Any)
- return JSON.parse(body.match(/(window\["ytInitialData"\]|var\s*ytInitialData)\s*=\s*(?
{.*?});<\/script>/mx).try &.["info"] || "{}").as_h
+ JSON.parse(body.match(/(window\["ytInitialData"\]|var\s*ytInitialData)\s*=\s*(?{.*?});<\/script>/mx).try &.["info"] || "{}").as_h
end
def proxy_file(response, env)
@@ -196,5 +196,5 @@ def get_playback_statistic
Invidious::Jobs::StatisticsRefreshJob::STATISTICS["playback"] = tracker
end
- return tracker.as(Hash(String, Int64 | Float64))
+ tracker.as(Hash(String, Int64 | Float64))
end
diff --git a/src/invidious/helpers/i18n.cr b/src/invidious/helpers/i18n.cr
index 497501ce7..e638f5cde 100644
--- a/src/invidious/helpers/i18n.cr
+++ b/src/invidious/helpers/i18n.cr
@@ -91,7 +91,7 @@ def load_all_locales
locales[name] = JSON.parse(File.read("locales/#{name}.json")).as_h
end
- return locales
+ locales
end
def translate(locale : String?, key : String, text : String | Hash(String, String)? = nil) : String
@@ -141,7 +141,7 @@ def translate(locale : String?, key : String, text : String | Hash(String, Strin
end
end
- return translation
+ translation
end
def translate_count(locale : String, key : String, count : Int, format = NumberFormatting::None) : String
@@ -177,15 +177,15 @@ def translate_count(locale : String, key : String, count : Int, format = NumberF
else count_txt = count.to_s
end
- return translation.gsub("{{count}}", count_txt)
+ translation.gsub("{{count}}", count_txt)
end
def translate_bool(locale : String?, translation : Bool)
case translation
when true
- return translate(locale, "Yes")
+ translate(locale, "Yes")
when false
- return translate(locale, "No")
+ translate(locale, "No")
end
end
@@ -195,5 +195,5 @@ def locale_is_rtl?(locale : String?)
# Arabic, Persian, Hebrew
# See https://en.wikipedia.org/wiki/Right-to-left_script#List_of_RTL_scripts
- return {"ar", "fa", "he"}.includes? locale
+ {"ar", "fa", "he"}.includes? locale
end
diff --git a/src/invidious/helpers/i18next.cr b/src/invidious/helpers/i18next.cr
index 520bb9e99..9ae47dd1f 100644
--- a/src/invidious/helpers/i18next.cr
+++ b/src/invidious/helpers/i18next.cr
@@ -175,7 +175,7 @@ module I18next::Plurals
# If nothing was found, then use the most common form, i.e
# one singular and one plural, as in english. Not perfect,
# but better than yielding an exception at the user.
- return PluralForms::Single_not_one
+ PluralForms::Single_not_one
end
def get_suffix(locale : String, count : Int) : String
@@ -183,19 +183,19 @@ module I18next::Plurals
# determine if comparison should be done on a signed or unsigned integer,
# but this variable is never set, resulting in the comparison always
# being done on absolute numbers.
- return get_suffix_retrocompat(locale, count.abs)
+ get_suffix_retrocompat(locale, count.abs)
end
# Emulate the `rule.numbers.size == 2 && rule.numbers[0] == 1` check
# from original i18next code
private def simple_plural?(form : PluralForms) : Bool
case form
- when .single_gt_one? then return true
- when .single_not_one? then return true
- when .special_icelandic? then return true
- when .special_macedonian? then return true
+ when .single_gt_one? then true
+ when .single_not_one? then true
+ when .special_icelandic? then true
+ when .special_macedonian? then true
else
- return false
+ false
end
end
@@ -226,7 +226,7 @@ module I18next::Plurals
# when 2
# return "_#{suffix}"
# else # v3
- return "_#{idx}"
+ "_#{idx}"
# end
end
end
@@ -238,35 +238,35 @@ module I18next::Plurals
module SuffixIndex
def self.get_index(plural_form : PluralForms, count : Int) : UInt8
case plural_form
- when .single_gt_one? then return (count > 1) ? 1_u8 : 0_u8
- when .single_not_one? then return (count != 1) ? 1_u8 : 0_u8
- when .none? then return 0_u8
- when .dual_slavic? then return dual_slavic(count)
- when .special_arabic? then return special_arabic(count)
- when .special_czech_slovak? then return special_czech_slovak(count)
- when .special_polish_kashubian? then return special_polish_kashubian(count)
- when .special_welsh? then return special_welsh(count)
- when .special_irish? then return special_irish(count)
- when .special_scottish_gaelic? then return special_scottish_gaelic(count)
- when .special_icelandic? then return special_icelandic(count)
- when .special_javanese? then return special_javanese(count)
- when .special_cornish? then return special_cornish(count)
- when .special_lithuanian? then return special_lithuanian(count)
- when .special_latvian? then return special_latvian(count)
- when .special_macedonian? then return special_macedonian(count)
- when .special_mandinka? then return special_mandinka(count)
- when .special_maltese? then return special_maltese(count)
- when .special_romanian? then return special_romanian(count)
- when .special_slovenian? then return special_slovenian(count)
- when .special_hebrew? then return special_hebrew(count)
- when .special_odia? then return special_odia(count)
+ when .single_gt_one? then (count > 1) ? 1_u8 : 0_u8
+ when .single_not_one? then (count != 1) ? 1_u8 : 0_u8
+ when .none? then 0_u8
+ when .dual_slavic? then dual_slavic(count)
+ when .special_arabic? then special_arabic(count)
+ when .special_czech_slovak? then special_czech_slovak(count)
+ when .special_polish_kashubian? then special_polish_kashubian(count)
+ when .special_welsh? then special_welsh(count)
+ when .special_irish? then special_irish(count)
+ when .special_scottish_gaelic? then special_scottish_gaelic(count)
+ when .special_icelandic? then special_icelandic(count)
+ when .special_javanese? then special_javanese(count)
+ when .special_cornish? then special_cornish(count)
+ when .special_lithuanian? then special_lithuanian(count)
+ when .special_latvian? then special_latvian(count)
+ when .special_macedonian? then special_macedonian(count)
+ when .special_mandinka? then special_mandinka(count)
+ when .special_maltese? then special_maltese(count)
+ when .special_romanian? then special_romanian(count)
+ when .special_slovenian? then special_slovenian(count)
+ when .special_hebrew? then special_hebrew(count)
+ when .special_odia? then special_odia(count)
# Mixed v3/v4 forms
- when .special_spanish_italian? then return special_cldr_spanish_italian(count)
- when .special_french_portuguese? then return special_cldr_french_portuguese(count)
- when .special_hungarian_serbian? then return special_cldr_hungarian_serbian(count)
+ when .special_spanish_italian? then special_cldr_spanish_italian(count)
+ when .special_french_portuguese? then special_cldr_french_portuguese(count)
+ when .special_hungarian_serbian? then special_cldr_hungarian_serbian(count)
else
# default, if nothing matched above
- return 0_u8
+ 0_u8
end
end
@@ -280,11 +280,11 @@ module I18next::Plurals
n_mod_100 = count % 100
if n_mod_10 == 1 && n_mod_100 != 11
- return 0_u8
+ 0_u8
elsif n_mod_10 >= 2 && n_mod_10 <= 4 && (n_mod_100 < 10 || n_mod_100 >= 20)
- return 1_u8
+ 1_u8
else
- return 2_u8
+ 2_u8
end
end
@@ -300,7 +300,7 @@ module I18next::Plurals
return 3_u8 if (n_mod_100 >= 3 && n_mod_100 <= 10)
return 4_u8 if (n_mod_100 >= 11)
- return 5_u8
+ 5_u8
end
# Plural form for Czech and Slovak languages
@@ -311,7 +311,7 @@ module I18next::Plurals
def self.special_czech_slovak(count : Int) : UInt8
return 0_u8 if (count == 1)
return 1_u8 if (count >= 2 && count <= 4)
- return 2_u8
+ 2_u8
end
# Plural form for Polish and Kashubian languages
@@ -326,9 +326,9 @@ module I18next::Plurals
n_mod_100 = count % 100
if n_mod_10 >= 2 && n_mod_10 <= 4 && (n_mod_100 < 10 || n_mod_100 >= 20)
- return 1_u8
+ 1_u8
else
- return 2_u8
+ 2_u8
end
end
@@ -341,7 +341,7 @@ module I18next::Plurals
return 0_u8 if (count == 1)
return 1_u8 if (count == 2)
return 2_u8 if (count != 8 && count != 11)
- return 3_u8
+ 3_u8
end
# Plural form for Irish language
@@ -354,7 +354,7 @@ module I18next::Plurals
return 1_u8 if (count == 2)
return 2_u8 if (count < 7)
return 3_u8 if (count < 11)
- return 4_u8
+ 4_u8
end
# Plural form for Gaelic language
@@ -366,7 +366,7 @@ module I18next::Plurals
return 0_u8 if (count == 1 || count == 11)
return 1_u8 if (count == 2 || count == 12)
return 2_u8 if (count > 2 && count < 20)
- return 3_u8
+ 3_u8
end
# Plural form for Icelandic language
@@ -376,9 +376,9 @@ module I18next::Plurals
#
def self.special_icelandic(count : Int) : UInt8
if (count % 10) != 1 || (count % 100) == 11
- return 1_u8
+ 1_u8
else
- return 0_u8
+ 0_u8
end
end
@@ -388,7 +388,7 @@ module I18next::Plurals
# Rule: (n !== 0)
#
def self.special_javanese(count : Int) : UInt8
- return (count != 0) ? 1_u8 : 0_u8
+ (count != 0) ? 1_u8 : 0_u8
end
# Plural form for Cornish language
@@ -400,7 +400,7 @@ module I18next::Plurals
return 0_u8 if count == 1
return 1_u8 if count == 2
return 2_u8 if count == 3
- return 3_u8
+ 3_u8
end
# Plural form for Lithuanian language
@@ -413,11 +413,11 @@ module I18next::Plurals
n_mod_100 = count % 100
if n_mod_10 == 1 && n_mod_100 != 11
- return 0_u8
+ 0_u8
elsif n_mod_10 >= 2 && (n_mod_100 < 10 || n_mod_100 >= 20)
- return 1_u8
+ 1_u8
else
- return 2_u8
+ 2_u8
end
end
@@ -428,11 +428,11 @@ module I18next::Plurals
#
def self.special_latvian(count : Int) : UInt8
if (count % 10) == 1 && (count % 100) != 11
- return 0_u8
+ 0_u8
elsif count != 0
- return 1_u8
+ 1_u8
else
- return 2_u8
+ 2_u8
end
end
@@ -443,9 +443,9 @@ module I18next::Plurals
#
def self.special_macedonian(count : Int) : UInt8
if count == 1 || ((count % 10) == 1 && (count % 100) != 11)
- return 0_u8
+ 0_u8
else
- return 1_u8
+ 1_u8
end
end
@@ -455,7 +455,7 @@ module I18next::Plurals
# Rule: (n==0 ? 0 : n==1 ? 1 : 2)
#
def self.special_mandinka(count : Int) : UInt8
- return (count == 0 || count == 1) ? count.to_u8 : 2_u8
+ (count == 0 || count == 1) ? count.to_u8 : 2_u8
end
# Plural form for Maltese language
@@ -470,7 +470,7 @@ module I18next::Plurals
n_mod_100 = count % 100
return 1_u8 if (n_mod_100 > 1 && n_mod_100 < 11)
return 2_u8 if (n_mod_100 > 10 && n_mod_100 < 20)
- return 3_u8
+ 3_u8
end
# Plural form for Romanian language
@@ -484,7 +484,7 @@ module I18next::Plurals
n_mod_100 = count % 100
return 1_u8 if (n_mod_100 > 0 && n_mod_100 < 20)
- return 2_u8
+ 2_u8
end
# Plural form for Slovenian language
@@ -497,7 +497,7 @@ module I18next::Plurals
return 1_u8 if (n_mod_100 == 1)
return 2_u8 if (n_mod_100 == 2)
return 3_u8 if (n_mod_100 == 3 || n_mod_100 == 4)
- return 0_u8
+ 0_u8
end
# Plural form for Hebrew language
@@ -510,9 +510,9 @@ module I18next::Plurals
return 1_u8 if (count == 2)
if (count < 0 || count > 10) && (count % 10) == 0
- return 2_u8
+ 2_u8
else
- return 3_u8
+ 3_u8
end
end
@@ -523,7 +523,7 @@ module I18next::Plurals
# special rule for it.
#
def self.special_odia(count : Int) : UInt8
- return (count == 1) ? 0_u8 : 1_u8
+ (count == 1) ? 0_u8 : 1_u8
end
# -------------------
@@ -537,7 +537,7 @@ module I18next::Plurals
def self.special_cldr_spanish_italian(count : Int) : UInt8
return 0_u8 if (count == 1) # one
return 1_u8 if (count != 0 && count % 1_000_000 == 0) # many
- return 2_u8 # other
+ 2_u8 # other
end
# Plural form for French and Portuguese
@@ -547,7 +547,7 @@ module I18next::Plurals
def self.special_cldr_french_portuguese(count : Int) : UInt8
return 0_u8 if (count == 0 || count == 1) # one
return 1_u8 if (count % 1_000_000 == 0) # many
- return 2_u8 # other
+ 2_u8 # other
end
# Plural form for Hungarian and Serbian
@@ -560,7 +560,7 @@ module I18next::Plurals
return 0_u8 if (n_mod_10 == 1 && n_mod_100 != 11) # one
return 1_u8 if (2 <= n_mod_10 <= 4 && (n_mod_100 < 12 || 14 < n_mod_100)) # few
- return 2_u8 # other
+ 2_u8 # other
end
end
end
diff --git a/src/invidious/helpers/serialized_yt_data.cr b/src/invidious/helpers/serialized_yt_data.cr
index a13db1fc8..c7054d896 100644
--- a/src/invidious/helpers/serialized_yt_data.cr
+++ b/src/invidious/helpers/serialized_yt_data.cr
@@ -315,7 +315,7 @@ struct ProblematicTimelineItem
# Provides compatibility with PlaylistVideo
def to_json(json : JSON::Builder, *args, **kwargs)
- return to_json("", json)
+ to_json("", json)
end
def to_xml(env, locale, xml : XML::Builder)
diff --git a/src/invidious/helpers/tokens.cr b/src/invidious/helpers/tokens.cr
index 926863323..9ea9918d1 100644
--- a/src/invidious/helpers/tokens.cr
+++ b/src/invidious/helpers/tokens.cr
@@ -16,7 +16,7 @@ def generate_token(email, scopes, expire, key)
token["signature"] = sign_token(key, token)
- return token.to_json
+ token.to_json
end
def generate_response(session, scopes, key, expire = 6.hours, use_nonce = false)
@@ -36,7 +36,7 @@ def generate_response(session, scopes, key, expire = 6.hours, use_nonce = false)
token["signature"] = sign_token(key, token)
- return token.to_json
+ token.to_json
end
def sign_token(key, hash)
@@ -63,7 +63,7 @@ def sign_token(key, hash)
end
string_to_sign = string_to_sign.sort.join("\n")
- return Base64.urlsafe_encode(OpenSSL::HMAC.digest(:sha256, key, string_to_sign)).strip
+ Base64.urlsafe_encode(OpenSSL::HMAC.digest(:sha256, key, string_to_sign)).strip
end
def validate_request(token, session, request, key, locale = nil)
@@ -131,7 +131,7 @@ def scope_includes_scope(scope, subset)
return false
end
- return true
+ true
end
def scopes_include_scope(scopes, subset)
@@ -141,5 +141,5 @@ def scopes_include_scope(scopes, subset)
end
end
- return false
+ false
end
diff --git a/src/invidious/helpers/utils.cr b/src/invidious/helpers/utils.cr
index 97bce2634..abaf3a7eb 100644
--- a/src/invidious/helpers/utils.cr
+++ b/src/invidious/helpers/utils.cr
@@ -8,7 +8,7 @@ def ci_lower_bound(pos, n)
z = 1.96
phat = 1.0*pos/n
- return (phat + z*z/(2*n) - z * Math.sqrt((phat*(1 - phat) + z*z/(4*n))/n))/(1 + z*z/n)
+ (phat + z*z/(2*n) - z * Math.sqrt((phat*(1 - phat) + z*z/(4*n))/n))/(1 + z*z/n)
end
def elapsed_text(elapsed)
@@ -31,12 +31,12 @@ def decode_length_seconds(string)
seconds: length_seconds[2]
).total_seconds.to_i32
- return length_seconds
+ length_seconds
end
def recode_length_seconds(time)
if time <= 0
- return ""
+ ""
else
time = time.seconds
text = "#{time.minutes.to_s.rjust(2, '0')}:#{time.seconds.to_s.rjust(2, '0')}"
@@ -47,7 +47,7 @@ def recode_length_seconds(time)
text = text.lchop('0')
- return text
+ text
end
end
@@ -66,7 +66,7 @@ def decode_interval(string : String) : Time::Span
time = Time::Span.new(minutes: raw_minutes)
end
- return time
+ time
end
def decode_time(string)
@@ -88,7 +88,7 @@ def decode_time(string)
time = hours * 3600 + minutes * 60 + seconds + millis // 1000
end
- return time
+ time
end
def decode_date(string : String)
@@ -136,26 +136,26 @@ def decode_date(string : String)
raise "Could not parse #{string}"
end
- return Time.utc - delta
+ Time.utc - delta
end
def recode_date(time : Time, locale)
span = Time.utc - time
if span.total_days > 365.0
- return translate_count(locale, "generic_count_years", span.total_days.to_i // 365)
+ translate_count(locale, "generic_count_years", span.total_days.to_i // 365)
elsif span.total_days > 30.0
- return translate_count(locale, "generic_count_months", span.total_days.to_i // 30)
+ translate_count(locale, "generic_count_months", span.total_days.to_i // 30)
elsif span.total_days > 7.0
- return translate_count(locale, "generic_count_weeks", span.total_days.to_i // 7)
+ translate_count(locale, "generic_count_weeks", span.total_days.to_i // 7)
elsif span.total_hours > 24.0
- return translate_count(locale, "generic_count_days", span.total_days.to_i)
+ translate_count(locale, "generic_count_days", span.total_days.to_i)
elsif span.total_minutes > 60.0
- return translate_count(locale, "generic_count_hours", span.total_hours.to_i)
+ translate_count(locale, "generic_count_hours", span.total_hours.to_i)
elsif span.total_seconds > 60.0
- return translate_count(locale, "generic_count_minutes", span.total_minutes.to_i)
+ translate_count(locale, "generic_count_minutes", span.total_minutes.to_i)
else
- return translate_count(locale, "generic_count_seconds", span.total_seconds.to_i)
+ translate_count(locale, "generic_count_seconds", span.total_seconds.to_i)
end
end
@@ -173,9 +173,9 @@ def short_text_to_number(short_text : String) : Int64
when "b" then number *= 1_000_000_000
end
- return number.to_i64
+ number.to_i64
rescue ex
- return 0_i64
+ 0_i64
end
def number_to_short_text(number)
@@ -208,7 +208,7 @@ def arg_array(array, start = 1)
args = args.join(",")
end
- return args
+ args
end
def make_host_url(kemal_config)
@@ -234,7 +234,7 @@ def make_host_url(kemal_config)
host = CONFIG.domain.not_nil!.lchop(".")
- return "#{scheme}#{host}#{port}"
+ "#{scheme}#{host}#{port}"
end
def get_referer(env, fallback = "/", unroll = true)
@@ -267,13 +267,13 @@ def get_referer(env, fallback = "/", unroll = true)
referer = fallback
end
- return referer
+ referer
end
def sha256(text)
digest = OpenSSL::Digest.new("SHA256")
digest << text
- return digest.final.hexstring
+ digest.final.hexstring
end
def subscribe_pubsub(topic, key)
@@ -301,7 +301,7 @@ def subscribe_pubsub(topic, key)
"hub.secret" => key.to_s,
}
- return make_client(PUBSUB_URL, &.post("/subscribe", form: body))
+ make_client(PUBSUB_URL, &.post("/subscribe", form: body))
end
def parse_range(range)
@@ -327,7 +327,7 @@ def reduce_uri(uri : URI | String, max_length : Int32 = 50, suffix : String = "
if str.size > max_length
str = "#{str[0, max_length]}#{suffix}"
end
- return str
+ str
end
# Get the html link from a NavigationEndpoint or an innertubeCommand
@@ -380,7 +380,7 @@ def parse_link_endpoint(endpoint : JSON::Any, text : String, video_id : String)
text = %(#{reduce_uri(text)})
end
end
- return text
+ text
end
def encrypt_ecb_without_salt(data, key)
@@ -393,11 +393,11 @@ def encrypt_ecb_without_salt(data, key)
io.write(cipher.final)
io.rewind
- return io
+ io
end
def invidious_companion_encrypt(data)
timestamp = Time.utc.to_unix
encrypted_data = encrypt_ecb_without_salt("#{timestamp}|#{data}", CONFIG.invidious_companion_key)
- return Base64.urlsafe_encode(encrypted_data)
+ Base64.urlsafe_encode(encrypted_data)
end
diff --git a/src/invidious/helpers/webvtt.cr b/src/invidious/helpers/webvtt.cr
index 777f05bf1..212ab2e4c 100644
--- a/src/invidious/helpers/webvtt.cr
+++ b/src/invidious/helpers/webvtt.cr
@@ -40,7 +40,7 @@ module WebVTT
end
private def escape(text : String) : String
- return text.gsub(ESCAPE_SUBSTITUTIONS)
+ text.gsub(ESCAPE_SUBSTITUTIONS)
end
def document(setting_fields : Hash(String, String)? = nil, &)
diff --git a/src/invidious/http_server/static_assets_handler.cr b/src/invidious/http_server/static_assets_handler.cr
index 024b693dd..8b8a6732b 100644
--- a/src/invidious/http_server/static_assets_handler.cr
+++ b/src/invidious/http_server/static_assets_handler.cr
@@ -68,7 +68,7 @@ module Invidious::HttpServer
end
end
- return flush_io_to_cache(retrieve_bytes_from, file_path, file_info)
+ flush_io_to_cache(retrieve_bytes_from, file_path, file_info)
end
# Writes file data to the cache
@@ -114,7 +114,7 @@ module Invidious::HttpServer
# This is only used in the specs to clear the cache before each handler test
def self.clear_cache
@@current_cache_size = 0
- return @@cached_files.clear
+ @@cached_files.clear
end
end
end
diff --git a/src/invidious/http_server/utils.cr b/src/invidious/http_server/utils.cr
index 623a91771..fd8cda4c0 100644
--- a/src/invidious/http_server/utils.cr
+++ b/src/invidious/http_server/utils.cr
@@ -14,9 +14,9 @@ module Invidious::HttpServer
url.query_params = params
if absolute
- return "#{HOST_URL}#{url.request_target}"
+ "#{HOST_URL}#{url.request_target}"
else
- return url.request_target
+ url.request_target
end
end
@@ -35,7 +35,7 @@ module Invidious::HttpServer
str << params
end
- return url
+ url
end
end
end
diff --git a/src/invidious/jobs/instance_refresh_job.cr b/src/invidious/jobs/instance_refresh_job.cr
index 6e90c9e68..bcf9fff6d 100644
--- a/src/invidious/jobs/instance_refresh_job.cr
+++ b/src/invidious/jobs/instance_refresh_job.cr
@@ -73,7 +73,7 @@ class Invidious::Jobs::InstanceListRefreshJob < Invidious::Jobs::BaseJob
raw_instance_list = [] of JSON::Any
end
- return raw_instance_list
+ raw_instance_list
end
# Checks if the given target instance is outdated
@@ -84,7 +84,7 @@ class Invidious::Jobs::InstanceListRefreshJob < Invidious::Jobs::BaseJob
remote_commit_date = Time.parse(remote_commit_date[0], "%Y.%m.%d", Time::Location::UTC)
local_commit_date = Time.parse(CURRENT_VERSION, "%Y.%m.%d", Time::Location::UTC)
- return (remote_commit_date - local_commit_date).abs.days > 30
+ (remote_commit_date - local_commit_date).abs.days > 30
end
# Checks if the uptime of the target instance is greater than 90% over a 30 day period
@@ -92,6 +92,6 @@ class Invidious::Jobs::InstanceListRefreshJob < Invidious::Jobs::BaseJob
return true if !target_instance_health_monitor["down"].as_bool == false
return true if target_instance_health_monitor["uptime"].as_f < 90
- return false
+ false
end
end
diff --git a/src/invidious/mixes.cr b/src/invidious/mixes.cr
index 31f53e8dd..66bb7fc8b 100644
--- a/src/invidious/mixes.cr
+++ b/src/invidious/mixes.cr
@@ -74,7 +74,7 @@ def fetch_mix(rdid, video_id, cookies = nil, locale = nil)
videos.uniq!(&.id)
videos = videos.first(50)
- return Mix.new({
+ Mix.new({
title: mix_title,
id: rdid,
videos: videos,
diff --git a/src/invidious/playlists.cr b/src/invidious/playlists.cr
index 4f1f09d01..ab824c8a6 100644
--- a/src/invidious/playlists.cr
+++ b/src/invidious/playlists.cr
@@ -180,7 +180,7 @@ struct InvidiousPlaylist
module PlaylistPrivacyConverter
def self.from_rs(rs)
- return PlaylistPrivacy.parse(String.new(rs.read(Slice(UInt8))))
+ PlaylistPrivacy.parse(String.new(rs.read(Slice(UInt8))))
end
end
@@ -265,7 +265,7 @@ def create_playlist(title, privacy, user)
Invidious::Database::Playlists.insert(playlist)
- return playlist
+ playlist
end
def subscribe_playlist(user, playlist)
@@ -283,7 +283,7 @@ def subscribe_playlist(user, playlist)
Invidious::Database::Playlists.insert(playlist)
- return playlist
+ playlist
end
def produce_playlist_continuation(id, index)
@@ -318,18 +318,18 @@ def produce_playlist_continuation(id, index)
.try { |i| Base64.urlsafe_encode(i) }
.try { |i| URI.encode_www_form(i) }
- return continuation
+ continuation
end
def get_playlist(plid : String)
if plid.starts_with? "IV"
if playlist = Invidious::Database::Playlists.select(id: plid)
- return playlist
+ playlist
else
raise NotFoundException.new("Playlist does not exist.")
end
else
- return fetch_playlist(plid)
+ fetch_playlist(plid)
end
end
@@ -398,7 +398,7 @@ def fetch_playlist(plid : String)
ucid = author_info.dig?("title", "runs", 0, "navigationEndpoint", "browseEndpoint", "browseId").try &.as_s || ""
end
- return Playlist.new({
+ Playlist.new({
title: title,
id: plid,
author: author,
@@ -443,7 +443,7 @@ def get_playlist_videos(playlist : InvidiousPlaylist | Playlist, offset : Int32,
offset += 100
end
- return videos
+ videos
end
end
@@ -504,7 +504,7 @@ def extract_playlist_videos(initial_data : Hash(String, JSON::Any))
videos << ProblematicTimelineItem.new(parse_exception: ex)
end
- return videos
+ videos
end
def template_playlist(playlist, listen)
diff --git a/src/invidious/routes/account.cr b/src/invidious/routes/account.cr
index c8db207c2..9a1131b63 100644
--- a/src/invidious/routes/account.cr
+++ b/src/invidious/routes/account.cr
@@ -337,10 +337,10 @@ module Invidious::Routes::Account
end
if redirect
- return env.redirect referer
+ env.redirect referer
else
env.response.content_type = "application/json"
- return "{}"
+ "{}"
end
end
end
diff --git a/src/invidious/routes/api/manifest.cr b/src/invidious/routes/api/manifest.cr
index c27caad73..36a19642b 100644
--- a/src/invidious/routes/api/manifest.cr
+++ b/src/invidious/routes/api/manifest.cr
@@ -140,7 +140,7 @@ module Invidious::Routes::API::Manifest
end
end
- return manifest
+ manifest
end
# /api/manifest/dash/id/videoplayback
diff --git a/src/invidious/routes/api/v1/authenticated.cr b/src/invidious/routes/api/v1/authenticated.cr
index d56befa3a..b8b049f28 100644
--- a/src/invidious/routes/api/v1/authenticated.cr
+++ b/src/invidious/routes/api/v1/authenticated.cr
@@ -35,7 +35,7 @@ module Invidious::Routes::API::V1::Authenticated
env.response.content_type = "application/json"
user = env.get("user").as(User)
- return Invidious::User::Export.to_invidious(user)
+ Invidious::User::Export.to_invidious(user)
end
def self.import_invidious(env)
@@ -71,7 +71,7 @@ module Invidious::Routes::API::V1::Authenticated
end
watched ||= [] of String
- return watched.to_json
+ watched.to_json
end
def self.mark_watched(env)
@@ -423,7 +423,7 @@ module Invidious::Routes::API::V1::Authenticated
env.response.content_type = "text/html"
csrf_token = generate_response(sid, {":authorize_token"}, HMAC_KEY, use_nonce: true)
- return templated "user/authorize_token"
+ templated "user/authorize_token"
else
env.response.content_type = "application/json"
diff --git a/src/invidious/routes/api/v1/channels.cr b/src/invidious/routes/api/v1/channels.cr
index f7658126e..c2a1b8970 100644
--- a/src/invidious/routes/api/v1/channels.cr
+++ b/src/invidious/routes/api/v1/channels.cr
@@ -137,7 +137,7 @@ module Invidious::Routes::API::V1::Channels
env.params.query.delete("sort_by") if env.params.query.has_key?("sort_by")
env.params.query.delete("continuation") if env.params.query.has_key?("continuation")
- return videos(env)
+ videos(env)
end
def self.videos(env)
@@ -173,7 +173,7 @@ module Invidious::Routes::API::V1::Channels
end
end
- return JSON.build do |json|
+ JSON.build do |json|
json.object do
json.field "videos" do
json.array do
@@ -219,7 +219,7 @@ module Invidious::Routes::API::V1::Channels
end
end
- return JSON.build do |json|
+ JSON.build do |json|
json.object do
json.field "videos" do
json.array do
@@ -265,7 +265,7 @@ module Invidious::Routes::API::V1::Channels
end
end
- return JSON.build do |json|
+ JSON.build do |json|
json.object do
json.field "videos" do
json.array do
@@ -416,7 +416,7 @@ module Invidious::Routes::API::V1::Channels
begin
fetch_channel_community(ucid, continuation, locale, format, thin_mode)
rescue ex
- return error_json(500, ex)
+ error_json(500, ex)
end
end
@@ -444,7 +444,7 @@ module Invidious::Routes::API::V1::Channels
begin
fetch_channel_community_post(ucid, id, locale, format, thin_mode)
rescue ex
- return error_json(500, ex)
+ error_json(500, ex)
end
end
@@ -472,7 +472,7 @@ module Invidious::Routes::API::V1::Channels
else
comments = YoutubeAPI.browse(continuation: continuation)
end
- return Comments.parse_youtube(id, comments, format, locale, thin_mode, is_post: true)
+ Comments.parse_youtube(id, comments, format, locale, thin_mode, is_post: true)
end
def self.channels(env)
diff --git a/src/invidious/routes/api/v1/misc.cr b/src/invidious/routes/api/v1/misc.cr
index 4ae877a8b..8f4def408 100644
--- a/src/invidious/routes/api/v1/misc.cr
+++ b/src/invidious/routes/api/v1/misc.cr
@@ -4,7 +4,7 @@ module Invidious::Routes::API::V1::Misc
env.response.content_type = "application/json"
if !CONFIG.statistics_enabled
- return {"software" => SOFTWARE}.to_json
+ {"software" => SOFTWARE}.to_json
else
# Calculate playback success rate
if (tracker = Invidious::Jobs::StatisticsRefreshJob::STATISTICS["playback"]?)
@@ -22,7 +22,7 @@ module Invidious::Routes::API::V1::Misc
end
end
- return Invidious::Jobs::StatisticsRefreshJob::STATISTICS.to_json
+ Invidious::Jobs::StatisticsRefreshJob::STATISTICS.to_json
end
end
diff --git a/src/invidious/routes/api/v1/search.cr b/src/invidious/routes/api/v1/search.cr
index 59a30745e..2b02a90b9 100644
--- a/src/invidious/routes/api/v1/search.cr
+++ b/src/invidious/routes/api/v1/search.cr
@@ -53,7 +53,7 @@ module Invidious::Routes::API::V1::Search
end
end
rescue ex
- return error_json(500, ex)
+ error_json(500, ex)
end
end
diff --git a/src/invidious/routes/api/v1/videos.cr b/src/invidious/routes/api/v1/videos.cr
index 6a3eb8ae3..3651d2c80 100644
--- a/src/invidious/routes/api/v1/videos.cr
+++ b/src/invidious/routes/api/v1/videos.cr
@@ -18,7 +18,7 @@ module Invidious::Routes::API::V1::Videos
return error_json(500, ex)
end
- return JSON.build do |json|
+ JSON.build do |json|
Invidious::JSONify::APIv1.video(video, json, locale: locale, proxy: proxy)
end
end
@@ -247,7 +247,7 @@ module Invidious::Routes::API::V1::Videos
# videojs-vtt-thumbnails is not compliant to the VTT specification, it
# doesn't unescape the HTML entities, so we have to do it here:
# TODO: remove this when we migrate to VideoJS 8
- return HTML.unescape(vtt_file)
+ HTML.unescape(vtt_file)
end
def self.annotations(env)
@@ -352,7 +352,7 @@ module Invidious::Routes::API::V1::Videos
return error_json(500, ex)
end
- return comments
+ comments
elsif source == "reddit"
sort_by ||= "confidence"
@@ -418,7 +418,7 @@ module Invidious::Routes::API::V1::Videos
return error_json(500, ex)
end
- return JSON.build do |json|
+ JSON.build do |json|
json.object do
json.field "startTime", start_time
json.field "endTime", end_time
@@ -513,6 +513,6 @@ module Invidious::Routes::API::V1::Videos
return error_json(500, ex)
end
- return transcript.to_json
+ transcript.to_json
end
end
diff --git a/src/invidious/routes/channels.cr b/src/invidious/routes/channels.cr
index 696132341..f59b23b21 100644
--- a/src/invidious/routes/channels.cr
+++ b/src/invidious/routes/channels.cr
@@ -4,7 +4,7 @@ module Invidious::Routes::Channels
# Redirection for unsupported routes ("tabs")
def self.redirect_home(env)
ucid = env.params.url["ucid"]
- return env.redirect "/channel/#{URI.encode_www_form(ucid)}"
+ env.redirect "/channel/#{URI.encode_www_form(ucid)}"
end
def self.home(env)
@@ -365,7 +365,7 @@ module Invidious::Routes::Channels
url += "?#{invidious_url_params}" if !invidious_url_params.empty?
- return env.redirect url
+ env.redirect url
end
# Handles redirects for the /profile endpoint
@@ -378,7 +378,7 @@ module Invidious::Routes::Channels
user = env.params.query["user"]?
if !user
- return error_template(404, "This channel does not exist.")
+ error_template(404, "This channel does not exist.")
else
env.redirect "/user/#{user}#{uri_params}"
end
diff --git a/src/invidious/routes/companion.cr b/src/invidious/routes/companion.cr
index 23235bd84..ae715b0b1 100644
--- a/src/invidious/routes/companion.cr
+++ b/src/invidious/routes/companion.cr
@@ -55,6 +55,6 @@ module Invidious::Routes::Companion
env.response.headers[key] = value
end
- return IO.copy response.body_io, env.response
+ IO.copy response.body_io, env.response
end
end
diff --git a/src/invidious/routes/images.cr b/src/invidious/routes/images.cr
index 83df60432..1dde5990b 100644
--- a/src/invidious/routes/images.cr
+++ b/src/invidious/routes/images.cr
@@ -148,6 +148,6 @@ module Invidious::Routes::Images
return env.response.headers.delete("Transfer-Encoding")
end
- return proxy_file(response, env)
+ proxy_file(response, env)
end
end
diff --git a/src/invidious/routes/video_playback.cr b/src/invidious/routes/video_playback.cr
index 083087a91..f045b310d 100644
--- a/src/invidious/routes/video_playback.cr
+++ b/src/invidious/routes/video_playback.cr
@@ -241,7 +241,7 @@ module Invidious::Routes::VideoPlayback
query_params = HTTP::Params.new(raw_params)
env.response.headers["Access-Control-Allow-Origin"] = "*"
- return env.redirect "/videoplayback?#{query_params}"
+ env.redirect "/videoplayback?#{query_params}"
end
# /videoplayback/* && /videoplayback/*
@@ -307,6 +307,6 @@ module Invidious::Routes::VideoPlayback
url += "&title=#{URI.encode_www_form(title, space_to_plus: false)}" if title
end
- return env.redirect url
+ env.redirect url
end
end
diff --git a/src/invidious/routes/watch.cr b/src/invidious/routes/watch.cr
index 4575dae28..f3e526521 100644
--- a/src/invidious/routes/watch.cr
+++ b/src/invidious/routes/watch.cr
@@ -215,7 +215,7 @@ module Invidious::Routes::Watch
url += "{env.params.query}"
end
- return env.redirect url
+ env.redirect url
end
def self.mark_watched(env)
@@ -289,9 +289,9 @@ module Invidious::Routes::Watch
env.params.query["end"] = end_time.to_s if end_time != nil
end
- return env.redirect "/watch?v=#{video_id}{env.params.query}"
+ env.redirect "/watch?v=#{video_id}{env.params.query}"
else
- return error_template(404, "The requested clip doesn't exist")
+ error_template(404, "The requested clip doesn't exist")
end
end
@@ -330,16 +330,16 @@ module Invidious::Routes::Watch
env.params.query["title"] = filename
env.params.query["label"] = URI.decode_www_form(label.as_s)
- return Invidious::Routes::API::V1::Videos.captions(env)
+ Invidious::Routes::API::V1::Videos.captions(env)
elsif itag = download_widget["itag"]?.try &.as_i.to_s
# URL params specific to /latest_version
env.params.query["id"] = video_id
env.params.query["title"] = filename
env.params.query["local"] = "true"
- return Invidious::Routes::VideoPlayback.latest_version(env)
+ Invidious::Routes::VideoPlayback.latest_version(env)
else
- return error_template(400, "Invalid label or itag")
+ error_template(400, "Invalid label or itag")
end
end
end
diff --git a/src/invidious/search/ctoken.cr b/src/invidious/search/ctoken.cr
index 161065e0f..21b625329 100644
--- a/src/invidious/search/ctoken.cr
+++ b/src/invidious/search/ctoken.cr
@@ -28,5 +28,5 @@ def produce_channel_search_continuation(ucid, query, page)
.try { |i| Base64.urlsafe_encode(i) }
.try { |i| URI.encode_www_form(i) }
- return continuation
+ continuation
end
diff --git a/src/invidious/search/filters.cr b/src/invidious/search/filters.cr
index bc2715cf1..03241a6a6 100644
--- a/src/invidious/search/filters.cr
+++ b/src/invidious/search/filters.cr
@@ -80,7 +80,7 @@ module Invidious::Search
end
def default? : Bool
- return @date.none? && @type.all? && @duration.none? && \
+ @date.none? && @type.all? && @duration.none? && \
@features.none? && @sort.relevance?
end
@@ -110,7 +110,7 @@ module Invidious::Search
end
end
- return features
+ features
end
def self.format_features(features : Features) : String
@@ -132,7 +132,7 @@ module Invidious::Search
str << "location" if features.location?
str << "purchased" if features.purchased?
- return str.join(',')
+ str.join(',')
end
def self.from_legacy_filters(str : String) : {Filters, String, String, Bool}
@@ -230,7 +230,7 @@ module Invidious::Search
params.delete("sort")
end
- return filters
+ filters
end
def to_iv_params : HTTP::Params
@@ -249,7 +249,7 @@ module Invidious::Search
raw_params["features"] = [Filters.format_features(@features)]
end
- return HTTP::Params.new(raw_params)
+ HTTP::Params.new(raw_params)
end
# -------------------
@@ -304,7 +304,7 @@ module Invidious::Search
# See https://github.com/iv-org/invidious/issues/4398
object["30:varint"] = 1.to_i64
- return object
+ object
.try { |i| Protodec::Any.cast_json(i) }
.try { |i| Protodec::Any.from_json(i) }
.try { |i| Base64.urlsafe_encode(i) }
@@ -370,7 +370,7 @@ module Invidious::Search
# Remove URL parameter and return result
params.delete("sp")
- return filters
+ filters
end
end
end
diff --git a/src/invidious/search/processors.cr b/src/invidious/search/processors.cr
index 7d86a6066..c0d5d9670 100644
--- a/src/invidious/search/processors.cr
+++ b/src/invidious/search/processors.cr
@@ -10,7 +10,7 @@ module Invidious::Search
initial_data = YoutubeAPI.search(query.text, search_params, client_config: client_config)
items, _ = extract_items(initial_data)
- return items.reject!(Category)
+ items.reject!(Category)
end
# Search a youtube channel
@@ -32,14 +32,14 @@ module Invidious::Search
response_json = YoutubeAPI.browse(continuation)
items, _ = extract_items(response_json, "", ucid)
- return items.reject!(Category)
+ items.reject!(Category)
end
# Search inside of user subscriptions
def subscriptions(query : Query, user : Invidious::User) : Array(ChannelVideo)
view_name = "subscriptions_#{sha256(user.email)}"
- return PG_DB.query_all(<<-SQL, query.text, (query.page - 1) * 20, as: ChannelVideo)
+ PG_DB.query_all(<<-SQL, query.text, (query.page - 1) * 20, as: ChannelVideo)
SELECT id,title,published,updated,ucid,author,length_seconds
FROM (
SELECT *,
diff --git a/src/invidious/search/query.cr b/src/invidious/search/query.cr
index fe3744f79..a24c49f77 100644
--- a/src/invidious/search/query.cr
+++ b/src/invidious/search/query.cr
@@ -25,19 +25,19 @@ module Invidious::Search
# Return true if @raw_query is either `nil` or empty
private def empty_raw_query?
- return @raw_query.empty?
+ @raw_query.empty?
end
# Same as `empty_raw_query?`, but named for external use
def empty?
- return empty_raw_query?
+ empty_raw_query?
end
# Getter for the query string.
# It is named `text` to reduce confusion (`search_query.text` makes more
# sense than `search_query.query`)
def text
- return @query
+ @query
end
# Initialize a new search query.
@@ -135,7 +135,7 @@ module Invidious::Search
end
end
- return items
+ items
end
# Return the HTTP::Params corresponding to this Query (invidious format)
@@ -145,7 +145,7 @@ module Invidious::Search
params["q"] = @query
params["channel"] = @channel if !@channel.empty?
- return params
+ params
end
# Checks if the query is a standalone URL
@@ -160,7 +160,7 @@ module Invidious::Search
return false if !@filters.default?
# Simple heuristics: domain name
- return @raw_query.starts_with?(
+ @raw_query.starts_with?(
/(https?:\/\/)?(www\.)?(m\.)?youtu(\.be|be\.com)\//
)
end
diff --git a/src/invidious/user/captcha.cr b/src/invidious/user/captcha.cr
index 79cfcbfab..0364d6f31 100644
--- a/src/invidious/user/captcha.cr
+++ b/src/invidious/user/captcha.cr
@@ -53,7 +53,7 @@ struct Invidious::User
answer = "#{hour}:#{minute.to_s.rjust(2, '0')}:#{second.to_s.rjust(2, '0')}"
answer = OpenSSL::HMAC.hexdigest(:sha256, key, answer)
- return {
+ {
question: image,
tokens: {generate_response(answer, {":login"}, key, use_nonce: true)},
}
diff --git a/src/invidious/user/cookies.cr b/src/invidious/user/cookies.cr
index 654efc15b..97daba962 100644
--- a/src/invidious/user/cookies.cr
+++ b/src/invidious/user/cookies.cr
@@ -11,7 +11,7 @@ struct Invidious::User
# Session ID (SID) cookie
# Parameter "domain" comes from the global config
def sid(domain : String?, sid) : HTTP::Cookie
- return HTTP::Cookie.new(
+ HTTP::Cookie.new(
name: "SID",
domain: domain,
value: sid,
@@ -25,7 +25,7 @@ struct Invidious::User
# Preferences (PREFS) cookie
# Parameter "domain" comes from the global config
def prefs(domain : String?, preferences : Preferences) : HTTP::Cookie
- return HTTP::Cookie.new(
+ HTTP::Cookie.new(
name: "PREFS",
domain: domain,
value: URI.encode_www_form(preferences.to_json),
diff --git a/src/invidious/user/exports.cr b/src/invidious/user/exports.cr
index b52503c93..1f25cb810 100644
--- a/src/invidious/user/exports.cr
+++ b/src/invidious/user/exports.cr
@@ -5,7 +5,7 @@ struct Invidious::User
def to_invidious(user : User)
playlists = Invidious::Database::Playlists.select_like_iv(user.email)
- return JSON.build do |json|
+ JSON.build do |json|
json.object do
json.field "subscriptions", user.subscriptions
json.field "watch_history", user.watched
diff --git a/src/invidious/user/imports.cr b/src/invidious/user/imports.cr
index 007eb666b..40c02ce65 100644
--- a/src/invidious/user/imports.cr
+++ b/src/invidious/user/imports.cr
@@ -27,7 +27,7 @@ struct Invidious::User
subscriptions << channel_id
end
- return subscriptions
+ subscriptions
end
def parse_playlist_export_csv(user : User, raw_input : String)
@@ -81,7 +81,7 @@ struct Invidious::User
end
end
- return playlist
+ playlist
end
# -------------------
@@ -171,7 +171,7 @@ struct Invidious::User
opml_extensions = ["xml", "opml"]
- return opml_mimetypes.any?(&.== mimetype) || opml_extensions.any?(&.== extension)
+ opml_mimetypes.any?(&.== mimetype) || opml_extensions.any?(&.== extension)
end
# Import subscribed channels from Youtube
@@ -200,7 +200,7 @@ struct Invidious::User
user.subscriptions = get_batch_channels(user.subscriptions)
Invidious::Database::Users.update_subscriptions(user)
- return true
+ true
end
def from_youtube_pl(user : User, body : String, filename : String, type : String) : Bool
@@ -209,12 +209,12 @@ struct Invidious::User
if extension == "csv" || type == "text/csv"
playlist = parse_playlist_export_csv(user, body)
if playlist
- return true
+ true
else
- return false
+ false
end
else
- return false
+ false
end
end
@@ -232,9 +232,9 @@ struct Invidious::User
user.watched += watched
user.watched.uniq!
Invidious::Database::Users.update_watch_history(user)
- return true
+ true
else
- return false
+ false
end
end
@@ -328,7 +328,7 @@ struct Invidious::User
end
# Success!
- return true
+ true
end
end # module
end
diff --git a/src/invidious/user/preferences.cr b/src/invidious/user/preferences.cr
index 18d7e3167..8e71f866c 100644
--- a/src/invidious/user/preferences.cr
+++ b/src/invidious/user/preferences.cr
@@ -260,12 +260,12 @@ struct Preferences
module TimeSpanConverter
def self.to_yaml(value : Time::Span, yaml : YAML::Nodes::Builder)
- return yaml.scalar value.total_minutes.to_i32
+ yaml.scalar value.total_minutes.to_i32
end
def self.from_yaml(ctx : YAML::ParseContext, node : YAML::Nodes::Node) : Time::Span
if node.is_a?(YAML::Nodes::Scalar)
- return decode_interval(node.value)
+ decode_interval(node.value)
else
node.raise "Expected scalar, not #{node.class}"
end
diff --git a/src/invidious/videos.cr b/src/invidious/videos.cr
index 7081a7dd3..63fb93033 100644
--- a/src/invidious/videos.cr
+++ b/src/invidious/videos.cr
@@ -56,15 +56,15 @@ struct Video
def video_type : VideoType
video_type = info["videoType"]?.try &.as_s || "video"
- return VideoType.parse?(video_type) || VideoType::Video
+ VideoType.parse?(video_type) || VideoType::Video
end
def schema_version : Int
- return info["version"]?.try &.as_i || 1
+ info["version"]?.try &.as_i || 1
end
def published : Time
- return info["published"]?
+ info["published"]?
.try { |t| Time.parse(t.as_s, "%Y-%m-%d", Time::Location::UTC) } || Time.utc
end
@@ -73,11 +73,11 @@ struct Video
end
def live_now
- return (video_type == VideoType::Livestream)
+ (video_type == VideoType::Livestream)
end
def post_live_dvr
- return info["isPostLiveDvr"].as_bool
+ info["isPostLiveDvr"].as_bool
end
def premiere_timestamp : Time?
@@ -94,21 +94,21 @@ struct Video
def fmt_stream : Array(Hash(String, JSON::Any))
if formats = info.dig?("streamingData", "formats")
- return formats
+ formats
.as_a.map(&.as_h)
.sort_by! { |f| f["width"]?.try &.as_i || 0 }
else
- return [] of Hash(String, JSON::Any)
+ [] of Hash(String, JSON::Any)
end
end
def adaptive_fmts : Array(Hash(String, JSON::Any))
if formats = info.dig?("streamingData", "adaptiveFormats")
- return formats
+ formats
.as_a.map(&.as_h)
.sort_by! { |f| f["width"]?.try &.as_i || f["audioTrack"]?.try { |a| a["audioIsDefault"]?.try { |v| v.as_bool ? -1 : 0 } } || 0 }
else
- return [] of Hash(String, JSON::Any)
+ [] of Hash(String, JSON::Any)
end
end
@@ -124,11 +124,11 @@ struct Video
def storyboards
container = info.dig?("storyboards") || JSON::Any.new("{}")
- return IV::Videos::Storyboard.from_yt_json(container, length_seconds)
+ IV::Videos::Storyboard.from_yt_json(container, length_seconds)
end
def paid
- return (reason || "").includes? "requires payment"
+ (reason || "").includes? "requires payment"
end
def premium
@@ -140,7 +140,7 @@ struct Video
@captions = Invidious::Videos::Captions::Metadata.from_yt_json(info["captions"])
end
- return @captions
+ @captions
end
def hls_manifest_url : String?
@@ -162,7 +162,7 @@ struct Video
dash_url.query = "#{dash_query}&mpd_version=5"
end
- return dash_url.to_s
+ dash_url.to_s
end
def genre_url : String?
@@ -170,11 +170,11 @@ struct Video
end
def vr? : Bool?
- return {"EQUIRECTANGULAR", "MESH"}.includes? projection_type
+ {"EQUIRECTANGULAR", "MESH"}.includes? projection_type
end
def projection_type : String?
- return info.dig?("streamingData", "adaptiveFormats", 0, "projectionType").try &.as_s
+ info.dig?("streamingData", "adaptiveFormats", 0, "projectionType").try &.as_s
end
def reason : String?
@@ -197,7 +197,7 @@ struct Video
private macro getset_string(name)
# Return {{ name.stringify }} from `info`
def {{ name.id.underscore }} : String
- return info[{{ name.stringify }}]?.try &.as_s || ""
+ info[{{ name.stringify }}]?.try &.as_s || ""
end
# Update {{ name.stringify }} into `info`
@@ -211,7 +211,7 @@ struct Video
private macro getset_string_array(name)
# Return {{ name.stringify }} from `info`
def {{ name.id.underscore }} : Array(String)
- return info[{{ name.stringify }}]?.try &.as_a.map &.as_s || [] of String
+ info[{{ name.stringify }}]?.try &.as_a.map &.as_s || [] of String
end
# Update {{ name.stringify }} into `info`
@@ -225,7 +225,7 @@ struct Video
{% for op, type in {i32: Int32, i64: Int64} %}
private macro getset_{{ op }}(name)
def \{{name.id.underscore}} : {{ type }}
- return info[\{{name.stringify}}]?.try &.as_i64.to_{{ op }} || 0_{{ op }}
+ info[\{{name.stringify}}]?.try &.as_i64.to_{{ op }} || 0_{{ op }}
end
def \{{name.id.underscore}}=(value : Int)
@@ -239,7 +239,7 @@ struct Video
private macro getset_bool(name)
# Return {{ name.stringify }} from `info`
def {{ name.id.underscore }} : Bool
- return info[{{ name.stringify }}]?.try &.as_bool || false
+ info[{{ name.stringify }}]?.try &.as_bool || false
end
# Update {{ name.stringify }} into `info`
@@ -254,7 +254,7 @@ struct Video
private macro predicate_bool(method_name, name)
# Return {{ name.stringify }} from `info`
def {{ method_name.id.underscore }}? : Bool
- return info[{{ name.stringify }}]?.try &.as_bool || false
+ info[{{ name.stringify }}]?.try &.as_bool || false
end
# Update {{ name.stringify }} into `info`
@@ -316,11 +316,11 @@ def get_video(id, refresh = true, region = nil, force_refresh = false)
Invidious::Database::Videos.insert(video) if !region
end
- return video
+ video
rescue DB::Error
# Avoid common `DB::PoolRetryAttemptsExceeded` error and friends
# Note: All DB errors inherit from `DB::Error`
- return fetch_video(id, region)
+ fetch_video(id, region)
end
def fetch_video(id, region)
@@ -350,7 +350,7 @@ def fetch_video(id, region)
updated: Time.utc,
})
- return video
+ video
end
def process_continuation(query, plid, id)
diff --git a/src/invidious/videos/caption.cr b/src/invidious/videos/caption.cr
index c811cfe1b..7f81f1894 100644
--- a/src/invidious/videos/caption.cr
+++ b/src/invidious/videos/caption.cr
@@ -33,7 +33,7 @@ module Invidious::Videos
captions_list << Captions::Metadata.new(name, language_code, base_url, auto_generated)
end
- return captions_list
+ captions_list
end
def timedtext_to_vtt(timedtext : String, tlang = nil) : String
@@ -82,7 +82,7 @@ module Invidious::Videos
end
end
- return result
+ result
end
end
diff --git a/src/invidious/videos/description.cr b/src/invidious/videos/description.cr
index 1371bebb0..dbe295897 100644
--- a/src/invidious/videos/description.cr
+++ b/src/invidious/videos/description.cr
@@ -26,7 +26,7 @@ private def copy_string(str : String::Builder, iter : Iterator, count : Int) : I
copied += 1
end
- return copied
+ copied
end
def parse_description(desc, video_id : String) : String?
@@ -52,7 +52,7 @@ def parse_description(desc, video_id : String) : String?
index = 0
- return String.build do |str|
+ String.build do |str|
commands.each do |command|
cmd_start = command["startIndex"].as_i
cmd_length = command["length"].as_i
diff --git a/src/invidious/videos/formats.cr b/src/invidious/videos/formats.cr
index e98e7257c..9f18456c6 100644
--- a/src/invidious/videos/formats.cr
+++ b/src/invidious/videos/formats.cr
@@ -1,6 +1,6 @@
module Invidious::Videos::Formats
def self.itag_to_metadata?(itag : JSON::Any)
- return FORMATS[itag.to_s]?
+ FORMATS[itag.to_s]?
end
# See https://github.com/rg3/youtube-dl/blob/master/youtube_dl/extractor/youtube.py#L380-#L476
diff --git a/src/invidious/videos/parser.cr b/src/invidious/videos/parser.cr
index 87974e686..03643547b 100644
--- a/src/invidious/videos/parser.cr
+++ b/src/invidious/videos/parser.cr
@@ -40,7 +40,7 @@ def parse_related_video(related : JSON::Any) : Hash(String, JSON::Any)?
# TODO: when refactoring video types, make a struct for related videos
# or reuse an existing type, if that fits.
- return {
+ {
"id" => related["videoId"],
"title" => related["title"]["simpleText"],
"author" => author || JSON::Any.new(""),
@@ -128,7 +128,7 @@ def extract_video_info(video_id : String)
# Data structure version, for cache control
params["version"] = JSON::Any.new(Video::SCHEMA_VERSION.to_i64)
- return params
+ params
end
def try_fetch_streaming_data(id : String, client_config : YoutubeAPI::ClientConfig) : Hash(String, JSON::Any)?
@@ -145,7 +145,7 @@ def try_fetch_streaming_data(id : String, client_config : YoutubeAPI::ClientConf
"The video returned by YouTube isn't the requested one. (#{client_config.client_type} client)"
)
elsif playability_status == "OK"
- return response
+ response
else
return
end
@@ -440,7 +440,7 @@ def parse_video_info(video_id : String, player_response : Hash(String, JSON::Any
"subCountText" => JSON::Any.new(subs_text || "-"),
}
- return params
+ params
end
private def convert_url(fmt)
@@ -457,9 +457,9 @@ private def convert_url(fmt)
url.query_params = params
LOGGER.trace("convert_url: new url is '#{url}'")
- return url.to_s
+ url.to_s
rescue ex
LOGGER.debug("convert_url: Error when parsing video URL")
LOGGER.trace(ex.inspect_with_backtrace)
- return ""
+ ""
end
diff --git a/src/invidious/videos/storyboard.cr b/src/invidious/videos/storyboard.cr
index bd0eef598..5c4e06948 100644
--- a/src/invidious/videos/storyboard.cr
+++ b/src/invidious/videos/storyboard.cr
@@ -62,7 +62,7 @@ module Invidious::Videos
# The base URL is the first chunk
base_url = URI.parse(storyboards.shift)
- return storyboards.map_with_index do |sb, i|
+ storyboards.map_with_index do |sb, i|
# Separate the different storyboard parameters:
# width/height: respective dimensions, in pixels, of a single thumbnail
# count: how many thumbnails are displayed across the full video
diff --git a/src/invidious/videos/transcript.cr b/src/invidious/videos/transcript.cr
index ee1272d16..ccbeeab51 100644
--- a/src/invidious/videos/transcript.cr
+++ b/src/invidious/videos/transcript.cr
@@ -45,7 +45,7 @@ module Invidious::Videos
.try { |i| Base64.urlsafe_encode(i) }
.try { |i| URI.encode_www_form(i) }
- return params
+ params
end
# Constructs a Transcripts struct from the initial YouTube response
@@ -92,7 +92,7 @@ module Invidious::Videos
lines << line_type.new(start_ms, end_ms, text)
end
- return Transcript.new(
+ Transcript.new(
lines: lines,
language_code: language_code,
auto_generated: auto_generated,
@@ -120,7 +120,7 @@ module Invidious::Videos
end
end
- return vtt
+ vtt
end
def to_json(json : JSON::Builder)
diff --git a/src/invidious/videos/video_preferences.cr b/src/invidious/videos/video_preferences.cr
index 48177bd88..a8a4b9ee3 100644
--- a/src/invidious/videos/video_preferences.cr
+++ b/src/invidious/videos/video_preferences.cr
@@ -158,5 +158,5 @@ def process_video_params(query, preferences)
save_player_pos: save_player_pos,
})
- return params
+ params
end
diff --git a/src/invidious/yt_backend/connection_pool.cr b/src/invidious/yt_backend/connection_pool.cr
index 42241d159..a967a68d4 100644
--- a/src/invidious/yt_backend/connection_pool.cr
+++ b/src/invidious/yt_backend/connection_pool.cr
@@ -133,7 +133,7 @@ def make_client(url : URI, region = nil, force_resolve : Bool = false, force_you
client.read_timeout = 10.seconds
client.connect_timeout = 10.seconds
- return client
+ client
end
def make_client(url : URI, region = nil, force_resolve : Bool = false, use_http_proxy : Bool = true, &)
@@ -149,7 +149,7 @@ def make_configured_http_proxy_client
# This method is only called when configuration for an HTTP proxy are set
config_proxy = CONFIG.http_proxy.not_nil!
- return HTTP::Proxy::Client.new(
+ HTTP::Proxy::Client.new(
config_proxy.host,
config_proxy.port,
@@ -163,12 +163,12 @@ end
# Creates a new one when the specified pool for the subdomain does not exist
def get_ytimg_pool(subdomain)
if pool = YTIMG_POOLS[subdomain]?
- return pool
+ pool
else
LOGGER.info("ytimg_pool: Creating a new HTTP pool for \"https://#{subdomain}.ytimg.com\"")
pool = YoutubeConnectionPool.new(URI.parse("https://#{subdomain}.ytimg.com"), capacity: CONFIG.pool_size)
YTIMG_POOLS[subdomain] = pool
- return pool
+ pool
end
end
diff --git a/src/invidious/yt_backend/extractors.cr b/src/invidious/yt_backend/extractors.cr
index fcb1b83af..2f96c3e5d 100644
--- a/src/invidious/yt_backend/extractors.cr
+++ b/src/invidious/yt_backend/extractors.cr
@@ -37,7 +37,7 @@ record AuthorFallback, name : String, id : String
private module Parsers
module BaseParser
def parse(*args)
- return parse_internal(*args)
+ parse_internal(*args)
rescue ex
LOGGER.debug("#{{{ @type.name }}}: Failed to render item.")
LOGGER.debug("#{{{ @type.name }}}: Got exception: #{ex.message}")
@@ -170,7 +170,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -237,7 +237,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -277,7 +277,7 @@ private module Parsers
end
end
- return SearchHashtag.new({
+ SearchHashtag.new({
title: title,
url: url,
video_count: short_text_to_number(video_count_txt || ""),
@@ -286,7 +286,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -331,7 +331,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -392,7 +392,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -464,7 +464,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -489,11 +489,11 @@ private module Parsers
child = VideoRendererParser.process(item_contents, author_fallback)
child ||= PlaylistRendererParser.process(item_contents, author_fallback)
- return child
+ child
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -520,11 +520,11 @@ private module Parsers
child ||= PlaylistRendererParser.process(item_contents, author_fallback)
child ||= LockupViewModelParser.process(item_contents, author_fallback)
child ||= ShortsLockupViewModelParser.process(item_contents, author_fallback)
- return child
+ child
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -623,7 +623,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -688,7 +688,7 @@ private module Parsers
# item_contents.dig("rendererContext", "commandContext", "onTap", "innertubeCommand", "watchEndpoint")
# Available fields: "videoId", "playlistId", "params"
- return SearchPlaylist.new({
+ SearchPlaylist.new({
title: title,
id: playlist_id,
author: author_fallback.name,
@@ -701,7 +701,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -759,7 +759,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -788,7 +788,7 @@ private module Parsers
end
def self.parser_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
end
@@ -842,7 +842,7 @@ private module Extractors
raw_items = rich_grid_contents.as_a
end
- return raw_items
+ raw_items
end
private def self.unpack_section_list(contents)
@@ -856,7 +856,7 @@ private module Extractors
end
end
- return raw_items
+ raw_items
end
private def self.unpack_item_section(contents)
@@ -871,11 +871,11 @@ private module Extractors
end
end
- return raw_items
+ raw_items
end
def self.extractor_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -912,11 +912,11 @@ private module Extractors
end
end
- return raw_items.flatten
+ raw_items.flatten
end
def self.extractor_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
@@ -946,11 +946,11 @@ private module Extractors
content ||= target.dig?("gridContinuation", "items")
content ||= target.dig?("richGridContinuation", "contents")
- return content.nil? ? [] of JSON::Any : content.as_a
+ content.nil? ? [] of JSON::Any : content.as_a
end
def self.extractor_name
- return {{ @type.name }}
+ {{ @type.name }}
end
end
end
@@ -966,14 +966,14 @@ module HelperExtractors
def self.get_video_count(container : JSON::Any) : Int32
if box = container["videoCountText"]?
if (extracted_text = extract_text(box)) && !extracted_text.includes? " subscriber"
- return extracted_text.gsub(/\D/, "").to_i
+ extracted_text.gsub(/\D/, "").to_i
else
- return 0
+ 0
end
elsif box = container["videoCount"]?
- return box.as_s.to_i
+ box.as_s.to_i
else
- return 0
+ 0
end
end
@@ -987,7 +987,7 @@ module HelperExtractors
# Simpletext: "4M views"
# runs: {"text": "1.1K"},{"text":" watching"}
- return box["simpleText"]?.try &.as_s.sub(" views", "") ||
+ box["simpleText"]?.try &.as_s.sub(" views", "") ||
box.dig?("runs", 0, "text").try &.as_s || "0"
end
@@ -997,7 +997,7 @@ module HelperExtractors
#
# Raises when it's unable to parse from the given JSON data.
def self.get_thumbnails(container : JSON::Any) : String
- return container.dig("thumbnail", "thumbnails", 0, "url").as_s
+ container.dig("thumbnail", "thumbnails", 0, "url").as_s
end
# ditto
@@ -1005,13 +1005,13 @@ module HelperExtractors
# YouTube sometimes sends the thumbnail as:
# {"thumbnails": [{"thumbnails": [{"url": "example.com"}, ...]}]}
def self.get_thumbnails_plural(container : JSON::Any) : String
- return container.dig("thumbnails", 0, "thumbnails", 0, "url").as_s
+ container.dig("thumbnails", 0, "thumbnails", 0, "url").as_s
end
# Retrieves the ID required for querying the InnerTube browse endpoint.
# Returns an empty string when it's unable to do so
def self.get_browse_id(container)
- return container.dig?("navigationEndpoint", "browseEndpoint", "browseId").try &.as_s || ""
+ container.dig?("navigationEndpoint", "browseEndpoint", "browseId").try &.as_s || ""
end
end
diff --git a/src/invidious/yt_backend/extractors_utils.cr b/src/invidious/yt_backend/extractors_utils.cr
index 3ee849d0b..caf6b1ec6 100644
--- a/src/invidious/yt_backend/extractors_utils.cr
+++ b/src/invidious/yt_backend/extractors_utils.cr
@@ -21,7 +21,7 @@ def extract_text(item : JSON::Any?) : String?
end
if text_container = item["simpleText"]?
- return text_container.as_s
+ text_container.as_s
elsif text_container = item["runs"]?
return text_container.as_a.map(&.["text"].as_s).join("")
end
@@ -58,18 +58,18 @@ def has_verified_badge?(badges : JSON::Any?)
return true if style == "BADGE_STYLE_TYPE_VERIFIED_ARTIST"
end
- return false
+ false
rescue ex
LOGGER.debug("Unable to parse owner badges. Got exception: #{ex.message}")
LOGGER.trace("Owner badges data: #{badges.to_json}")
- return false
+ false
end
# This function extracts SearchVideo items from a Category.
# Categories are commonly returned in search results and trending pages.
def extract_category(category : Category) : Array(SearchVideo)
- return category.contents.select(SearchVideo)
+ category.contents.select(SearchVideo)
end
# :ditto:
@@ -81,5 +81,5 @@ end
def extract_selected_tab(tabs)
# Extract the selected tab from the array of tabs Youtube returns
- return tabs.as_a.select(&.["tabRenderer"]?.try &.["selected"]?.try &.as_bool)[0]["tabRenderer"]
+ tabs.as_a.select(&.["tabRenderer"]?.try &.["selected"]?.try &.as_bool)[0]["tabRenderer"]
end
diff --git a/src/invidious/yt_backend/url_sanitizer.cr b/src/invidious/yt_backend/url_sanitizer.cr
index 856a18d68..edff243f4 100644
--- a/src/invidious/yt_backend/url_sanitizer.cr
+++ b/src/invidious/yt_backend/url_sanitizer.cr
@@ -30,7 +30,7 @@ module UrlSanitizer
return false
end
- return true
+ true
end
# Return which kind of parameters are allowed based on the
@@ -38,13 +38,13 @@ module UrlSanitizer
private def determine_allowed(path_root : String)
case path_root
when "watch", "w", "v", "embed", "e", "shorts", "clip"
- return :watch
+ :watch
when .starts_with?("@"), "c", "channel", "user", "profile", "attribution_link"
- return :channel
+ :channel
when "playlist", "mix"
- return :playlist
+ :playlist
when "results", "search"
- return :search
+ :search
else # hashtag, post, trending, brand URLs, etc..
return
end
@@ -61,7 +61,7 @@ module UrlSanitizer
end
end
- return new_params
+ new_params
end
# Transform any user-supplied youtube URL into something we can trust
@@ -116,6 +116,6 @@ module UrlSanitizer
new_uri.query_params = new_params
end
- return new_uri
+ new_uri
end
end
diff --git a/src/invidious/yt_backend/youtube_api.cr b/src/invidious/yt_backend/youtube_api.cr
index cc2bf0998..01d77c07d 100644
--- a/src/invidious/yt_backend/youtube_api.cr
+++ b/src/invidious/yt_backend/youtube_api.cr
@@ -267,7 +267,7 @@ module YoutubeAPI
# Convert to string, for logging purposes
def to_s
- return {
+ {
client_type: name,
region: @region,
}.to_s
@@ -331,7 +331,7 @@ module YoutubeAPI
client_context["client"]["platform"] = platform
end
- return client_context
+ client_context
end
####################################################################
@@ -360,7 +360,7 @@ module YoutubeAPI
"continuation" => continuation,
}
- return _post_json("/youtubei/v1/browse", data, client_config)
+ _post_json("/youtubei/v1/browse", data, client_config)
end
# :ditto:
@@ -382,7 +382,7 @@ module YoutubeAPI
data["params"] = params
end
- return _post_json("/youtubei/v1/browse", data, client_config)
+ _post_json("/youtubei/v1/browse", data, client_config)
end
####################################################################
@@ -428,7 +428,7 @@ module YoutubeAPI
"continuation" => continuation,
}
- return _post_json("/youtubei/v1/next", data, client_config)
+ _post_json("/youtubei/v1/next", data, client_config)
end
# :ditto:
@@ -438,12 +438,12 @@ module YoutubeAPI
"context" => make_context(client_config),
})
- return _post_json("/youtubei/v1/next", data2, client_config)
+ _post_json("/youtubei/v1/next", data2, client_config)
end
# Allow a NamedTuple to be passed, too.
def next(data : NamedTuple, *, client_config : ClientConfig? = nil)
- return self.next(data.to_h, client_config: client_config)
+ self.next(data.to_h, client_config: client_config)
end
####################################################################
@@ -461,7 +461,7 @@ module YoutubeAPI
}
if CONFIG.invidious_companion.present?
- return _post_invidious_companion("/youtubei/v1/player", data)
+ _post_invidious_companion("/youtubei/v1/player", data)
else
return
end
@@ -501,7 +501,7 @@ module YoutubeAPI
"url" => url,
}
- return _post_json("/youtubei/v1/navigation/resolve_url", data, client_config)
+ _post_json("/youtubei/v1/navigation/resolve_url", data, client_config)
end
####################################################################
@@ -530,7 +530,7 @@ module YoutubeAPI
"params" => params,
}
- return _post_json("/youtubei/v1/search", data, client_config)
+ _post_json("/youtubei/v1/search", data, client_config)
end
####################################################################
@@ -554,7 +554,7 @@ module YoutubeAPI
"params" => params,
}
- return _post_json("/youtubei/v1/get_transcript", data, client_config)
+ _post_json("/youtubei/v1/get_transcript", data, client_config)
end
####################################################################
@@ -623,7 +623,7 @@ module YoutubeAPI
error #{code} with message:
\"#{message}\"")
end
- return initial_data
+ initial_data
end
####################################################################
@@ -661,7 +661,7 @@ module YoutubeAPI
end
end
- return response_body
+ response_body
rescue ex
raise InfoException.new("Error while communicating with Invidious companion: " + (ex.message || "no extra info found"))
end
@@ -695,6 +695,6 @@ module YoutubeAPI
end
end
- return body_io.gets_to_end
+ body_io.gets_to_end
end
end # End of module