• v26.06.01.0 — sidecar synthetic cleanup + tier-gated reclassification
    CI / lint (push) Successful in 5s
    CI / frontend-build (push) Successful in 22s
    CI / backend-lint-and-test (push) Successful in 28s
    CI / intimp (push) Successful in 3m54s
    Build images / sign-extension (push) Has been skipped
    Build images / build-web (push) Successful in 1m1s
    Build images / build-ml (push) Successful in 1m21s
    CI / intapi (push) Successful in 7m31s
    CI / intcore (push) Successful in 8m0s
    Stable

    bvandeusen released this 2026-06-01 00:20:24 -04:00 | 471 commits to dev since this release

    What's in

    PR #39 (merge commit 856e910).

    Sidecar synthetic anchor cleanup (6fc8ae3)

    • SourceService.list() hides url LIKE 'sidecar:%' anchors from /api/sources by default — no more phantom subscriptions in the Subscriptions hub.
    • importer._source_for_sidecar prefers real (non-sidecar) Sources over synthetic anchors when both exist for the same (artist, platform). Fixes silent attachment of gallery-dl Posts to the wrong row.
    • alembic 0028 collapses the synth+real coexisting case on deploy — repoints Posts / ImageProvenance / DownloadEvent.source_id onto the real Source, deletes the synthetic. Lone synthetics (no real twin) intentionally stay; they anchor imported content.

    Download event classifier + missing dep (66f19d6)

    • [patreon][warning] Not allowed to view post N now classifies as TIER_LIMITED regardless of return code (was gated on 1, 4, fell through to UNKNOWN_ERROR when gallery-dl set other exit bits). Paywalled-post syncs stop bumping consecutive_failures.
    • Gallery-dl subprocess timeout dropped from 900s → 870s — wins the race against Celery's 900s soft_time_limit so TimeoutExpired always captures partial output. Empty-log "stranded by recovery sweep" events become rare.
    • yt-dlp>=2025.1 added to requirements.txt — video posts download cleanly.

    Deploy

    Run alembic upgrade — 0028 is included. Existing DPMaker-shape rows collapse to one row; phantoms disappear from the UI; tier-gated Patreon syncs render as 'ok'.

    Downloads