Commit Graph

194 Commits

Author SHA1 Message Date
Athou
a080ede15b add a setup landing page instead of creating a default admin account 2026-01-10 17:30:22 +01:00
Athou
799e6c082c cleanup 2026-01-06 22:53:37 +01:00
Athou
19663b0f38 Java 25+ is now required 2026-01-05 07:25:26 +01:00
Athou
3bf4a004d4 ReadKit sends the md5 hash of the password in uppercase (#1602) 2025-12-30 20:22:41 +01:00
Athou
1139df0637 use existing constants 2025-12-24 07:02:01 +01:00
Athou
c1810de316 use a brotli decoder that uses java and not native code 2025-12-23 17:01:19 +01:00
Athou
863ced57f8 specify explicitly what encoders we support, don't rely on httpclient5 autodetection 2025-12-23 16:21:10 +01:00
Athou
ae78e4691d make "disable pull to refresh" a setting (#1168) 2025-11-17 09:02:52 +01:00
Athou
9c058cf6d6 disable xml entity expansion limits enabled in JDK24+ (#1961) 2025-11-17 06:43:55 +01:00
Athou
e5c271ca1c add support for more emojis (#1955) 2025-11-16 09:37:36 +01:00
Athou
8871ae894f handle invalid relative urls (#1939) 2025-10-17 09:04:38 +02:00
Athou
297c76006a use more records 2025-10-02 21:54:40 +02:00
Athou
5bbe76d56e remove log.trace calls 2025-09-28 07:36:12 +02:00
Athou
c548462eef cleanup 2025-09-27 19:10:41 +02:00
AnasRazy /
65014d330a Fix off-by-one bug in HttpGetter.toByteArray()
What this PR does:
Fixes an off-by-one error in HttpGetter.toByteArray where responses of exactly maxBytes were being rejected.
Now allows responses up to maxBytes, and only throws if the response is larger.

Why this change is needed:
Some feeds return responses exactly equal to the limit.
Current implementation incorrectly throws an exception, breaking parsing.

How it works:
Reads up to maxBytes + 1 bytes.
If actual size exceeds maxBytes, throws exception.
Otherwise returns full content.

Other notes:
No breaking API changes.
Safe for existing usage.
2025-09-27 15:32:31 +05:30
Athou
58bf86d25d remove warnings 2025-07-30 13:30:27 +02:00
Athou
ff7aa890a6 fix build warning 2025-07-28 19:55:36 +02:00
Athou
23a91aab12 providers can now return multiple urls 2025-07-21 16:57:10 +02:00
Athou
085a3cbb50 unwanted entries are already filtered at the dao level 2025-07-21 16:57:10 +02:00
Athou
fb9d875c31 extract image proxying from FeedUtils 2025-07-21 16:57:10 +02:00
Athou
5ee15c6f68 we no longer need to generate OPML 1.1 files 2025-07-21 16:57:10 +02:00
Athou
9853205849 remove workaround for #39 as it's not valid rdf 0.9 according to the spec 2025-07-21 16:57:10 +02:00
Athou
2c9ce7e8fc remove workaround for #140 that is no longer needed 2025-07-21 16:57:10 +02:00
Athou
f7ae2e6689 add even more integration tests 2025-07-21 11:50:10 +02:00
Athou
f894fdf564 extract url utils from FeedUtils 2025-07-20 07:26:43 +02:00
Athou
d6df979d0d remove more warnings 2025-07-19 23:47:22 +02:00
Athou
3f09e3ca64 remove warnings 2025-07-19 11:33:38 +02:00
Athou
0f2de651ff remove more warnings 2025-07-18 23:07:40 +02:00
Athou
3b8f62ff11 fix sonar warnings 2025-07-18 21:49:00 +02:00
Athou
d46ee7f673 remove deprecated usage of saveOrUpdate in preparation of hibernate 7 2025-06-13 14:49:22 +02:00
Athou
59b0103ed5 add an option to navigate to the next unread category/feed when marking all as read (#1807) 2025-06-04 09:10:03 +02:00
Athou
2f05e53e14 remove feed/refresh rest endpoint as it's unused and does not honor the force-refresh-cooldown-duration setting (#1802) 2025-05-30 11:19:26 +02:00
Athou
0e96307726 ignore scheme case 2025-05-18 17:40:06 +02:00
Athou
915506527a add theme color picker (#1598) 2025-04-10 14:17:44 +02:00
flisk
c4ec249bc4 don't throw NotModifiedException on etag/lm changes
A well-behaved server should return 304 if our If-Modified-Since and If-None-Match indicate that we don't have the latest version of a resource cached. Having these extra conditions where we consider our local version fresh is not necessary, and may in fact lead to resource updates being missed when only one header changes.

We should instead trust the server to know whether it needs to send us a new resource or not based on the cache headers we provide.
2025-04-04 11:00:47 +02:00
Athou
fb7f041454 normalize line endings 2025-03-10 08:48:26 +01:00
Athou
1aa263a6c0 simplify UnitOfWork code 2025-03-03 22:29:21 +01:00
Athou
c1305b56e3 insert jakarta imports where javax import were positioned 2025-03-02 11:37:06 +01:00
Athou
60fdc79563 don't expose rome's FeedException 2025-02-18 08:57:24 +01:00
Athou
6729ebc6ea throw a specific exception if we can't parse the url's content (#1684) 2025-02-18 07:41:02 +01:00
Athou
f519aa039f block local addresses to prevent SSRF attacks 2025-02-14 16:20:04 +01:00
Athou
c3782bd7d2 also constrain to lower bound 2025-02-12 18:04:56 +01:00
Athou
469420b5bf feed refresh engine previously hardcoded values are now configurable (#1677) 2025-02-12 17:08:20 +01:00
Athou
bde556d41f start to back off when we repeatedly receive a 429 2025-02-12 08:00:27 +01:00
Athou
8edd6a1e2d correctly handle 0 as a Retry-Header value (#1671) 2025-02-05 07:50:10 +01:00
Athou
c451eee406 fix(deps): update dependency org.apache.httpcomponents.client5:httpclient5 to v5.4.2
remove workaround that is no longer needed
2025-02-02 15:58:59 +01:00
Athou
37cf711cbc add support for the Retry-After header sent by OpenRSS 2025-01-27 07:48:19 +01:00
Athou
fde8dab8cd simplify youtube channels url detection 2025-01-23 21:49:52 +01:00
Athou
62d3ed16e6 remove DOCTYPE declarations (#1260) 2025-01-10 16:18:49 +01:00
Athou
a073d843ab ignore invalid cache control values (#1619) 2024-12-02 18:43:46 +01:00