Pullbox v1.1.0
What's Changed
Minor release introducing native direct acquisition, an embedded comic reader,
and significant operational resilience improvements for large libraries and
long-running imports.
Added
- Added native Jackett indexer management with Prowlarr-consistent test and
synchronization controls, one independently managed Torznab source per
configured tracker, and duplicate-manager warnings. - Added direct acquisition as a first-class search and download path, with
GetComics and Anna's Archive provider support, source-aware matching, and
user-controlled provider priority. - Added configured artifact-host support for PixelDrain, MEGA, MediaFire,
TeraBox, DataNodes, Rootz, and generic HTTPS routes, including encrypted
credentials, reachability checks, fallback routing, per-host blocklisting,
and manual source switching. - Added browser challenge resolvers with ranked FlareSolverr, ByParr, and TRAWL
support for direct providers and manually configured Torznab indexers. - Added a lightweight embedded comic reader with private reading progress,
bounded page caching, responsive controls, and operational cache limits. - Added direct-download recovery entries to the Intervention Queue so users can
retry failed mirrors with a newly planned route instead of reusing a stale
artifact. - Added a database optimization utility and expanded health detail for direct
acquisition routes, Jackett indexers, and database maintenance. - Added manual refresh for stale What's New release data.
Changed
- Preserve missing Prowlarr and Jackett tracker records as unavailable history
instead of deleting them, and give Jackett-managed searches a proxy-aware
timeout and request cadence while Jackett retains challenge ownership. - Allow Anna's Archive users to edit the configured official URL while limiting
the accepted values to the supported.gl,.pk, and.gddomains. - Reworked direct-download settings into consistent provider, artifact-host,
and challenge-resolver configuration surfaces with connection status and
ordered preference controls. - Extended matching for collected editions, graphic novels, omnibuses, titled
trade volumes, one-shots, and subtitle-bearing releases while preserving the
review-first path for uncertain matches. - Improved download and intervention history with direct-provider and artifact
host context, parsed release details, and clearer recovery actions.
Fixed
- Corrected direct acquisition planning when a release exposes multiple
artifact mirrors, including unavailable or unsafe routes, stale landing
pages, host fallback, and source-specific retries. - Routed one-click issue downloads through the same cross-source acquisition
path as scheduled searches, so direct results honor source priority and work
when no indexer result is available. - Kept direct-review and direct-recovery entries actionable when background
dispatch cannot start, instead of resolving them before a transfer is queued. - Prevented direct downloads from appearing stalled during slow transfers and
report a clear slow-source status after sustained low throughput. - Preserved direct-download issue state as downloading throughout acquisition
and corrected post-processing source resolution across mounted paths. - Kept recovery-only Intervention Queue rows out of generic bulk approve and
reject actions, and report untested enabled direct routes as needing
attention rather than falsely healthy. - Improved import safety-review rematching, folder naming tokens, targeted
import type classification, and rematch review refresh behavior. - Preserved in-place series monitoring changes, list state after deletion, and
interactive cursor affordances across the application. - Prevented reader worker, progress-write, cache-budget, fullscreen, and image
validation edge cases from disrupting reading sessions.
Performance
- Reduced sidebar navigation query work and kept manual monitoring changes
reactive without full-page reloads. - Improved database contention handling for concurrent imports, scheduled work,
health checks, and direct acquisition recovery.
Testing
- Expanded direct acquisition, reader, health, intervention, import, and
browser workflow regression coverage.
Documentation
CI / Build
- Updated GitHub Actions and axe-core dependencies and recorded the reviewed
base-image OpenSSL CVE triage.
Internal
Commit Details
✨ Features
- separate direct download recovery from match review
- add Jackett indexer health monitoring
- include direct sources in health checks
- add database optimization utility
- harden reader runtime and operations
- add responsive embedded comic reader
- add reader delivery and private progress
- add bounded comic page sources
- add resilient direct download source switching
- add durable wanted sweeps and source fallback
- refine manual Torznab indexer setup
- refresh stale What's New data on demand
- show artifact hosts in download history
- add dedicated challenge resolvers settings tab
- scope artifact hosts to provider capabilities
- track artifact host reachability
- order artifact hosts by preference
- align artifact host configuration
- simplify direct download settings hierarchy
- refine direct provider configuration
- add native Jackett indexer management
- add browser resolution for manual Torznab
- add ranked browser resolver chains
- support DataNodes premium downloads through TRAWL
- add resilient direct download host routing
- integrate direct downloads into search and acquisition
- finalize artifact host release modes
- record artifact host account health
- add native artifact host settings UI
- add direct artifact host settings API
- add durable direct acquisition execution
- add secure direct artifact transport
- add native artifact host adapters
- define artifact host registry contract
- add bounded browser challenge resolver
- add direct provider protocol registration
- add direct acquisition persistence foundation
🐛 Bug Fixes
- route direct issue downloads consistently
- harden intervention and direct route health
- open post-processing issues as full pages
- update monitored series in place
- keep approved safety files actionable during rematch
- distinguish one-shot targeted import folders
- honor type token during targeted imports
- enforce reader page cache budget
- make initial reader progress writes atomic
- avoid reader compression false positives
- target reader shell for fullscreen
- swap comic reader footer controls
- verify baseline PNG reader pages safely
- retain reader worker bounds on cancellation
- materialize direct imports safely
- close direct download review gaps
- preserve MEGA bridge loader path
- tolerate fast MEGA bridge close
- harden direct transfer review paths
- align candidate union ordering
- sync direct download issue status
- reuse safety-reviewed direct artifacts
- open download queue issues as full pages
- classify non-standard series from metadata evidence
- honor direct provider priority after matching
- match subtitle-bearing graphic novels
- resolve collection download alternatives
- distinguish collected editions from numbered issues
- match titled collection volumes correctly
- preserve series list state after deletion
- standardize interactive cursor affordances
- clarify incomplete intervention routes
- improve collection matching and fallback
- accept exact collection download alternatives
- fall back from unsafe artifact routes
- honor source and indexer priorities
- classify unavailable direct download mirrors
- improve direct download intervention and progress feedback
- harden direct download planning and fallback
- allow keyless manual indexers
- align search language dropdown contract
- restore settings indexer card spacing
- keep indexer action status visible
- allow indexer priority updates after tests
- show artifact host intervention details
- stabilize intervention history details
- skip retired direct-download artifact hosts
- preserve download queue actions across polling
- align resolver settings and preserve health history
- simplify Jackett connection guidance
- harden direct download transfer recovery
- harden direct acquisition recovery checkpoints
🧪 Testing
- stabilize release validation contracts
- wait for reader resume after reopen
- align search flow integration seams
📝 Docs
- record reader acceptance benchmark
🧰 Chores
- bump version to 1.1.0 for release
- update actions and axe-core
- raise cryptography security floor
- sync develop after v1.0.6 release
🏗️ CI / Build
- triage deferred openssl base image cve
⚡ Performance
- reduce sidebar navigation query cost
- add direct download readiness baseline
🐳 Docker Images
docker pull ghcr.io/pullboxapp/pullbox:1.1.0
docker pull docker.io/pullbox/pullbox:1.1.0Digest: sha256:251f032037d0d2354e1c7ebc5f6e12b3b3a7586895065987a9cf2be74b667b72
🔐 Image Verification
Release images are signed with keyless Sigstore/Cosign using GitHub Actions OIDC.
These commands verify the exact multi-architecture image digest published by this release.
cosign verify \
--certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.1.0$' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
ghcr.io/pullboxapp/pullbox@sha256:251f032037d0d2354e1c7ebc5f6e12b3b3a7586895065987a9cf2be74b667b72
cosign verify \
--certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.1.0$' \
--certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
docker.io/pullbox/pullbox@sha256:251f032037d0d2354e1c7ebc5f6e12b3b3a7586895065987a9cf2be74b667b72Full Changelog: v1.0.6...v1.1.0