Athou
911a5ca099
reorder imports using google java format
2026-07-29 20:36:03 +02:00
Athou
1bd9b71215
use google java formatter to avoid downloading eclipse during build
2026-07-05 11:14:17 +02:00
Athou
ca8438623d
prevent access to ULA and CGNAT addresses
2026-07-05 08:48:02 +02:00
Athou
a5f84a3f6d
search now also works for starred entries ( #2217 )
2026-07-04 17:57:08 +02:00
Athou
bdf2a6a915
the Pocket service has been discontinued
2026-07-03 22:40:38 +02:00
Athou
00d7be735a
static random fields should not be used with graalvm as they are seeded at compile time and thus not random anymore
2026-06-13 12:03:50 +02:00
Athou
1388fba8e4
apply xml cleaning to opml files
2026-06-13 11:32:57 +02:00
Athou
c43644861f
use a secure algorithm to generate image urls so that only server-side generated urls can be used
2026-06-13 11:21:16 +02:00
Athou
1faba92ecc
remove unused relationships
2026-05-27 07:28:19 +02:00
Athou
03eb09c68c
limit the number of favicon retries
2026-05-23 11:17:59 +02:00
Athou
5755ff762b
Trie is thread-safe, no need to recreate one every time
2026-05-22 20:29:48 +02:00
Athou
4a8be29616
add support for declared icons in feeds ( #2048 )
2026-05-10 21:05:33 +02:00
Athou
f207bfaddd
format empty records and anonymous types as a single line
2026-05-08 17:56:26 +02:00
Athou
9452c3e74c
remove warning
2026-04-27 18:01:02 +02:00
Athou
f826f1d543
create comparator only once
2026-04-27 18:01:02 +02:00
Athou
fd13c80e5a
allow reuse of TLS connections
2026-04-27 17:52:40 +02:00
Athou
75871348d5
compile pattern once
2026-04-27 17:46:50 +02:00
Athou
da3977b0e2
fix error message not correctly returned
2026-04-20 08:39:24 +02:00
Athou
6d2fb5acc2
refactor
2026-04-10 15:17:27 +02:00
Athou
ec35d846cf
Merge branch 'perf/batch-guid-check-on-feed-refresh' of https://github.com/ingokegel/commafeed into ingokegel-perf/batch-guid-check-on-feed-refresh
2026-04-10 14:22:32 +02:00
Ingo Kegel
1d23907652
Use batched IN clause for GUID existence check during feed refresh
...
Instead of fetching all existing GUID hashes for a feed from the database only check the GUIDs present in the current feed XML using a SQL IN clause. GUIDs are partitioned into batches of 1000.
Also adds an integration test verifying that refreshing an up-to-date feed does not create duplicate entries.
2026-04-10 10:13:37 +02:00
Athou
3d5bc9ef0e
adapt to passay 2.0 api
2026-04-07 02:11:37 +02:00
Ingo Kegel
76dbbdfbf9
batch guid existence check on feed refresh
...
Instead of querying the database once per entry to check if it already
exists, fetch all existing guids for a feed in a single query upfront
and filter new entries in memory before the per-entry loop.
The per-entry findExisting call inside addEntry is kept as a safety net
for concurrent inserts, but is now only reached for new entries.
Profiling in real usage showed a ~50% reduction in guidHash queries,
with the check falling from the most expensive query to sixth in the ranking.
2026-03-18 18:56:40 +01:00
Athou
eaa5bc896e
stop the application between tests to make sure that there are no active transactions when we truncate the tables
2026-03-04 13:58:06 +01:00
Athou
78c017ddaf
wait for tasks to complete when shutting down
2026-03-04 12:49:06 +01:00
Athou
8fe2d0bc0e
fix typo
2026-02-21 23:58:49 +01:00
Athou
33a0568895
delay task so that it doesn't run at the same time at OrphanedContentsCleanupTask
2026-02-20 15:55:09 +01:00
Athou
721d728906
prevent SSRF by blocking redirects from public websites to local addresses
2026-02-20 15:07:11 +01:00
Athou
3fd5cfdecd
add a setting to mark entries of a feed as read after a number of days ( #2041 )
2026-02-20 13:24:40 +01:00
Athou
6fe326f052
cleanup
2026-02-19 23:21:09 +01:00
Athou
de7e4e9c69
add a button for testing push notification settings
2026-02-19 22:50:34 +01:00
Athou
ba3214bf10
remove the possibility to receive notifications when subscribing because that sends a lot of notifications, one for each entry in the feed
2026-02-19 16:08:54 +01:00
Athou
a81de48cfb
change the default value of blockLocalAddresses
2026-02-18 20:53:23 +01:00
Athou
2be61e8b1c
refactor
2026-02-18 20:37:11 +01:00
Louis POIROT--HATTERMANN
e54151d2eb
feat: send notification for new entries with Gotify, ntfy or Pushover, configurable per feed.
2026-02-15 18:45:28 +01:00
Athou
d444a7080d
migrate filtering expressions to safer CEL and add a query builder
2026-02-15 16:13:10 +01:00
Athou
6fa8d4be34
keep starred entries ( #1581 )
2026-02-09 06:59:41 +01:00
Athou
6c68fda572
make "disable pull to refresh" false by default ( #2030 )
2026-01-25 10:49:11 +01:00
Athou
a858380121
cleanup
2026-01-23 08:34:10 +01:00
Athou
afe957ba59
create a dedicated password reset page ( #2023 )
2026-01-19 20:55:26 +01:00
Athou
714681bc50
don't set "en" as the default language, use the preferred language of the browser ( #2018 )
2026-01-17 20:09:23 +01:00
Athou
5a95b95801
validate password in the frontend too ( #2017 )
2026-01-15 21:36:00 +01:00
Athou
d711cbab49
requiring an email address for users is now configurable ( #1914 )
2026-01-10 18:11:35 +01:00
Athou
2e8fd737af
remove complex password requirements ( #1916 )
2026-01-10 17:53:48 +01:00
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