diff options
| author | Féry Mathieu (Mathius) <ferymathieuy@gmail.com> | 2022-02-22 01:35:35 +0100 |
|---|---|---|
| committer | Féry Mathieu (Mathius) <ferymathieuy@gmail.com> | 2022-02-22 01:35:35 +0100 |
| commit | fd0ac3a6719b3d6280ce2e784ad370c8d10a6129 (patch) | |
| tree | 4882a3620734d8c8cc21a4ff35dcf8324b51f4fb | |
| parent | f109d812a1d8ea92a4ebdeb7ce03ad93bcbd9a91 (diff) | |
| download | invidious-fd0ac3a6719b3d6280ce2e784ad370c8d10a6129.tar.gz invidious-fd0ac3a6719b3d6280ce2e784ad370c8d10a6129.tar.bz2 invidious-fd0ac3a6719b3d6280ce2e784ad370c8d10a6129.zip | |
Update management of channel_refresh_interval
Follow indications:
https://github.com/iv-org/invidious/pull/2915#discussion_r811373503
| -rw-r--r-- | config/config.example.yml | 6 | ||||
| -rw-r--r-- | docker-compose.yml | 2 | ||||
| -rw-r--r-- | src/invidious/helpers/utils.cr | 18 | ||||
| -rw-r--r-- | src/invidious/user/preferences.cr | 6 |
4 files changed, 25 insertions, 7 deletions
diff --git a/config/config.example.yml b/config/config.example.yml index 9519f34a..a6440e3d 100644 --- a/config/config.example.yml +++ b/config/config.example.yml @@ -317,10 +317,10 @@ channel_threads: 1 ## ## Time between two jobs for crawling videos from channels ## -## Accepted values: a valid time interval (hours:min:seconds) -## Default: 00:30:00 +## Accepted values: a valid time interval (like 1h30m or 90min) +## Default: 30m ## -channel_refresh_interval: 00:30:00 +channel_refresh_interval: 30min ## ## Forcefully dump and re-download the entire list of uploaded diff --git a/docker-compose.yml b/docker-compose.yml index ab35a496..4fdad921 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -25,7 +25,7 @@ services: INVIDIOUS_CONFIG: | log_level: Info channel_threads: 1 - channel_refresh_interval: 00:30:00 + channel_refresh_interval: 30m check_tables: true feed_threads: 1 db: diff --git a/src/invidious/helpers/utils.cr b/src/invidious/helpers/utils.cr index 22575c57..53f64f4e 100644 --- a/src/invidious/helpers/utils.cr +++ b/src/invidious/helpers/utils.cr @@ -53,6 +53,24 @@ def recode_length_seconds(time : Int32) : String end end +def decode_interval(string : String) : Time::Span + rawMinutes = string.try &.to_i32? + + if !rawMinutes + hours = /(?<hours>\d+)h/.match(string).try &.["hours"].try &.to_i32 + hours ||= 0 + + minutes = /(?<minutes>\d+)m(?!s)/.match(string).try &.["minutes"].try &.to_i32 + minutes ||= 0 + + time = Time::Span.new(hours: hours, minutes: minutes) + else + time = Time::Span.new(minutes: rawMinutes) + end + + return time +end + def decode_time(string) time = string.try &.to_f? diff --git a/src/invidious/user/preferences.cr b/src/invidious/user/preferences.cr index c01bdd82..9eeed53f 100644 --- a/src/invidious/user/preferences.cr +++ b/src/invidious/user/preferences.cr @@ -259,15 +259,15 @@ struct Preferences module TimeSpanConverter def self.to_yaml(value : Time::Span, yaml : YAML::Nodes::Builder) - return yaml.scalar recode_length_seconds(value.total_seconds.to_i32) + return 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_time_span(node.value) + return decode_interval(node.value) else node.raise "Expected scalar, not #{node.class}" end end end -end
\ No newline at end of file +end |
