v1.5.0: entry-dedup in één query + conditional get (ETag/Last-Modified)
- filter_entries: één SELECT per feed i.p.v. per-entry EXISTS (1082 queries → 20) - feed.etag/last_modified (migratie v9); parse_feed stuurt If-None-Match/If-Modified-Since, 304 → None - _poll_once telt unchanged (304-feeds); summary-regel uitgebreid met unchanged - _poll_feeds re-raised CancelledError (reload-stapeling duplicaten) + handler-cleanup
This commit is contained in:
parent
1f92b38ba6
commit
a03f76ca83
4 changed files with 59 additions and 25 deletions
|
|
@ -99,3 +99,9 @@ async def upgrade_v7(conn: Connection) -> None:
|
|||
@upgrade_table.register(description="Add paywalled flag to entries")
|
||||
async def upgrade_v8(conn: Connection) -> None:
|
||||
await conn.execute("ALTER TABLE entry ADD COLUMN paywalled BOOLEAN NOT NULL DEFAULT false")
|
||||
|
||||
|
||||
@upgrade_table.register(description="Add conditional-fetch headers to feeds")
|
||||
async def upgrade_v9(conn: Connection) -> None:
|
||||
await conn.execute("ALTER TABLE feed ADD COLUMN etag TEXT DEFAULT ''")
|
||||
await conn.execute("ALTER TABLE feed ADD COLUMN last_modified TEXT DEFAULT ''")
|
||||
|
|
|
|||
Loading…
Reference in a new issue