gudvinr
983291c78b
refactor(cli): use time.Duration for cleanup tasks
2025-08-20 19:45:24 -07:00
gudvinr
7060ecc163
refactor(cli): use time.Duration for scheduler frequency
...
Polling frequency is undocumented so it's not exacly clear what units were.
2025-08-20 19:45:24 -07:00
gudvinr
4af12a4129
refactor(metric): use time.Duration for refresh duration
2025-08-20 19:45:24 -07:00
gudvinr
c6536e8d90
refactor(http): use time.Duration for refresh interval
...
It's not clear which units of time used for refresh interval.
Convert to time.Duration for clarity.
2025-08-20 19:45:24 -07:00
gudvinr
30453ad7ec
refactor(fetcher): use time.Duration for client timeout values
...
All functions use time.Duration, so instead of converting everywhere, do it once.
2025-08-20 19:45:24 -07:00
gudvinr
71af68becd
refactor(server): use time.Duration for timeout values
...
Instead of converting at the very last moment,
it's simpler and more readable to use time.Duration ASAP.
2025-08-20 19:45:24 -07:00
gudvinr
ed3bf59356
refactor(reader): use time.Duration instead of minutes count
...
In general, duration is used as time unit representation.
At some places when int is returned, there's no documentation which unit is used.
So just convert to time.Duration ASAP.
2025-08-20 19:45:24 -07:00
gudvinr
ce6cadc176
refactor(mediaproxy): use *url.URL for MEDIA_PROXY_CUSTOM_URL
...
Same behaviour as for HTTP_CLIENT_PROXY.
2025-08-15 18:12:44 -07:00
gudvinr
ab26a4e20f
refactor(config): fix typos in test
2025-08-15 16:24:48 -07:00
Frédéric Guillot
34499b887b
feat: add POLLING_LIMIT_PER_HOST
to limit concurrent requests per host
...
Each batch of feeds sent to the worker pool is now guaranteed to contain unique feed URLs.
When `POLLING_LIMIT_PER_HOST` is set, an additional limit is applied to the number of concurrent requests per hostname, helping to prevent overloading a single server.
Note: Additional requests may still be made during feed refresh. For example, to fetch feed icons or when the web scraper is enabled for a particular feed.
2025-08-08 12:33:46 -07:00
Ingmar Stein
8fa5041c37
feat: Allow multiple listen addresses
...
This change implements the ability to specify multiple listen addresses.
This allows the application to listen on different interfaces or ports simultaneously,
or a combination of IP addresses and Unix sockets.
Closes #3343
2025-06-20 12:46:34 -07:00
Frédéric Guillot
d291d6a74d
refactor(config): remove deprecated config options
2025-06-15 14:42:28 -07:00
jvoisin
117c031f1c
feat(integration)!: remove Pocket integration
...
BREAKING CHANGE: Pocket will no longer be available after July 8, 2025.
https://support.mozilla.org/en-US/kb/future-of-pocket#w_when-is-pocket-shutting-down
2025-06-15 13:29:55 -07:00
Frédéric Guillot
ac44507af2
refactor(sanitizer): use a map for iframe allow list
2025-06-13 21:05:23 -07:00
Frédéric Guillot
c87c93d85f
feat(config): add SCHEDULER_ROUND_ROBIN_MAX_INTERVAL
option
...
Add option to cap maximum refresh interval when RSS TTL, Retry-After, Cache-Control, or Expires headers specify excessively high values.
2025-04-11 15:40:32 -07:00
Frédéric Guillot
535fd050b7
feat: add proxy rotation functionality
2025-04-06 14:59:00 -07:00
telnet23
7e2b50efee
feat: optionally fetch watch time from YouTube API instead of website
2024-12-07 16:00:35 -08:00
Qeynos
bcbf9f4025
feat: add FETCH_BILIBILI_WATCH_TIME
config option
2024-08-01 19:52:31 -07:00
Frédéric Guillot
d048d59d39
fix: use BASE_URL instead of r.Host
to generate absolute media proxy URL
2024-07-29 16:04:31 -07:00
fin444
a631bd527d
options: add FETCH_NEBULA_WATCH_TIME
2024-05-02 16:30:01 -07:00
Frédéric Guillot
c2311e316c
Rename PROXY_* options to MEDIA_PROXY_*
2024-03-20 21:28:28 -07:00
jvoisin
61af08a721
Use .WriteString( instead of .Write([]byte(…
2024-02-28 19:47:30 -08:00
notsmarthuman
4590da2fc3
Add FORCE_REFRESH_INTERVAL
config option
2024-01-02 18:33:15 -08:00
Shizun Ge
bcb0978e9e
improve scheduler tests.
...
Capture timeNow() before calculation next check at.
Check if the desired interval is set.
2023-12-03 15:01:19 -08:00
Shizun Ge
70b69ecd19
Add SCHEDULER_ROUND_ROBIN_MIN_INTERVAL
...
Separated from POLLING_FREQUENCY.
2023-11-29 19:52:14 -08:00
Frédéric Guillot
c0e954f19d
Implement structured logging using log/slog package
2023-09-24 22:37:33 -07:00
Frédéric Guillot
fbce915d84
Add profile scope to OIDC integration to support accounts without email
2023-09-08 20:26:42 -07:00
Dror Levin
bea9017b48
Add factor for entry_frequency scheduler
...
Allow the user to increase the frequency of the entry_frequency
scheduler by a configurable factor in order to shorten the time between
updates.
2023-08-31 20:27:09 -07:00
Frédéric Guillot
168a870c02
Move internal packages to an internal folder
...
For reference: https://go.dev/doc/go1.4#internalpackages
2023-08-10 20:29:34 -07:00