Skip to content

Releases: pullboxapp/pullbox

Pullbox v1.1.1

Choose a tag to compare

@github-actions github-actions released this 23 Aug 20:49
a3fe725

What's Changed

Patch release improving direct-download reliability for collected issue packs.

Fixed

  • Accept safe, separately packaged contiguous direct-download issue packs when
    their declared coverage includes the requested issue; extract and import the
    explicitly selected issue plus any other wanted members without replacing
    existing files.
  • Preserve direct-acquisition fallback source metadata and accept configured
    alternate series names when validating extracted pack members.

CI / Build

  • Refreshed narrow Docker Hardened Image vulnerability exceptions for the
    current Debian 13 package revisions that have no upstream fix.

Commit Details

✨ Features

  • import separable direct-download issue packs

🐛 Bug Fixes

  • harden direct pack post-processing
  • preserve direct pack acquisition intent
  • accept spaced direct pack ranges
  • accept direct packs for covered issues
  • validate separable direct-download packs

🧰 Chores

  • bump version to 1.1.1 for release

🏗️ CI / Build

  • refresh DHI vulnerability exceptions

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.1.1
docker pull docker.io/pullbox/pullbox:1.1.1

Digest: sha256:35d97268159f0f22481632c5c2fdf8accc6dfab4df2b7a4b1e46685b4e3754f9

🔐 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.1$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:35d97268159f0f22481632c5c2fdf8accc6dfab4df2b7a4b1e46685b4e3754f9

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.1.1$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:35d97268159f0f22481632c5c2fdf8accc6dfab4df2b7a4b1e46685b4e3754f9

Full Changelog: v1.1.0...v1.1.1

Pullbox v1.1.0

Choose a tag to compare

@github-actions github-actions released this 19 Aug 03:35
47cac24

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 .gd domains.
  • 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.0

Digest: 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:251f032037d0d2354e1c7ebc5f6e12b3b3a7586895065987a9cf2be74b667b72

Full Changelog: v1.0.6...v1.1.0

Pullbox v1.0.6

Choose a tag to compare

@github-actions github-actions released this 24 Jul 15:19
v1.0.6
d0c30c5

What's Changed

Patch release focused on reliable wanted searches, user-controlled series
lifecycle status, and faster large-library management.

Added

  • Added manual continuing and ended lifecycle overrides on series details;
    metadata refreshes preserve the user-selected status.
  • Added configurable Pull List page sizes, lifecycle status in the series list,
    acquisition most-to-least and least-to-most sorting, and file-explorer-style
    checkbox selection with Shift and Command/Ctrl modifiers.

Fixed

  • Made automatic and manual wanted searches recover promptly from indexer
    backoff, stream outcomes progressively, and preserve search-on-add results.
  • Serialized shared database-session work during concurrent searches without
    reducing provider request concurrency.
  • Cleaned completed Usenet source directories and preserved expanded download
    history details during live refreshes.
  • Preserved Pull List breadcrumb context when opening and returning from series
    details.
  • Prevented provider metadata refreshes from restoring an end year on series
    manually marked as continuing.

CI / Build

  • Updated Tailwind dependencies and pinned GitHub Actions releases.

Commit Details

✨ Features

  • add file explorer selection controls
  • add acquisition sorting to series
  • show lifecycle status in series list
  • add pull list page size control
  • add manual series lifecycle overrides

🐛 Bug Fixes

  • address release review regressions
  • address search concurrency and lifecycle overrides
  • preserve pull list breadcrumb origin
  • clean completed usenet source directories
  • preserve open download history details
  • stream search-on-add results progressively
  • stream wanted search results progressively
  • make indexer backoff recoverable

🧪 Testing

  • isolate selection modifier coverage

🧰 Chores

  • bump version to 1.0.6 for release
  • bump Tailwind packages to 4.3.3
  • sync develop after v1.0.5 release

🏗️ CI / Build

  • update pinned GitHub Actions

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.0.6
docker pull docker.io/pullbox/pullbox:1.0.6

Digest: sha256:99988fb96bb7a2847ae313f288f5c217cd75cc4b56859df1247cab702e7231bb

🔐 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.0.6$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:99988fb96bb7a2847ae313f288f5c217cd75cc4b56859df1247cab702e7231bb

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.0.6$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:99988fb96bb7a2847ae313f288f5c217cd75cc4b56859df1247cab702e7231bb

Full Changelog: v1.0.5...v1.0.6

Pullbox v1.0.5

Choose a tag to compare

@github-actions github-actions released this 15 Jul 19:37
v1.0.5
93f7518

What's Changed

Patch release focused on production reliability under sustained background work
and large-library metadata synchronization.

Fixed

  • Hardened indexer, download-client, scheduled-search, metadata, and ComicInfo
    background workflows against remote failures, provider throttling, and SQLite
    lock contention.
  • Preserved failed and rejected indexer outcomes so retry, intervention, and
    blocklist handling remain visible instead of silently losing results.
  • Deferred ComicInfo enrichment safely when providers throttle requests, while
    allowing imports to complete and enrichment to resume later.
  • Made series sorting deterministic across all pages and compatible with native
    PostgreSQL enum columns.
  • Reconciled issue wanted/skipped states during bulk monitor changes across all
    selected results.
  • Preserved the active page and selected series during metadata hydration, and
    stopped expanded search-history details from flashing during live polling.
  • Prevented automatic health checks from probing disabled indexers.
  • Corrected scheduled-task table styling and pointer feedback for enabled import
    rule saves.

Commit Details

🐛 Bug Fixes

  • harden series sorting and search lock retries
  • pause search history polling for open details
  • preserve series selection during metadata sync
  • keep series metadata refresh on active page
  • make series sorting deterministic across pages
  • reconcile issue states during bulk monitoring
  • round scheduled task table header
  • show pointer for enabled import rules save
  • avoid automatic disabled indexer checks
  • preserve failed indexer search outcomes
  • defer ComicInfo enrichment after provider throttling
  • prevent background metadata database contention
  • harden download client health checks
  • handle rejected torrent retries gracefully
  • harden indexer checks for production load

🧰 Chores

  • bump version to 1.0.5 for release
  • sync develop after v1.0.4 release

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.0.5
docker pull docker.io/pullbox/pullbox:1.0.5

Digest: sha256:e1b079926bcfde3c5af40672847d642df57e79329464a58813efcb1ebf82ba61

🔐 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.0.5$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:e1b079926bcfde3c5af40672847d642df57e79329464a58813efcb1ebf82ba61

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.0.5$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:e1b079926bcfde3c5af40672847d642df57e79329464a58813efcb1ebf82ba61

Full Changelog: v1.0.4...v1.0.5

Pullbox v1.0.4

Choose a tag to compare

@github-actions github-actions released this 13 Jul 17:34
v1.0.4
9ccabcb

What's Changed

Maintenance release focused on reliable multi-platform publication across
Docker runtimes with classic image stores.

CI / Build

  • Evicted the digest-selected image between AMD64 and ARM64 runtime checks so
    sequential verification cannot fail with Docker's cannot overwrite digest
    error after manifests are published.

Commit Details

🧰 Chores

  • bump version to 1.0.4 for release
  • sync develop after v1.0.3 release

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.0.4
docker pull docker.io/pullbox/pullbox:1.0.4

Digest: sha256:6ddc2b70a71896d2ecea8bdaa879db546d507cdba804633ad8141c840424d6c6

🔐 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.0.4$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:6ddc2b70a71896d2ecea8bdaa879db546d507cdba804633ad8141c840424d6c6

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.0.4$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:6ddc2b70a71896d2ecea8bdaa879db546d507cdba804633ad8141c840424d6c6

Full Changelog: v1.0.3...v1.0.4

Pullbox v1.0.3

Choose a tag to compare

@github-actions github-actions released this 13 Jul 17:08
v1.0.3
a776c12

What's Changed

Maintenance release focused on faster multi-architecture image publication and
dependency security while preserving the existing release gates.

Fixed

  • Raised the Pillow dependency floor to 12.3.0 to include upstream fixes for
    crafted font/image memory exhaustion and Windows viewer command injection.

CI / Build

  • Parallelized AMD64 and ARM64 release builds across two Docker runners while
    preserving Grype, smoke-test, dual-registry, attestation, and signing gates.

Commit Details

🐛 Bug Fixes

  • evict platform image between release checks (#81)

🧰 Chores

  • bump version to 1.0.3 for release
  • sync develop after v1.0.2 release

🏗️ CI / Build

  • parallelize Docker release platform builds (#79)
  • add isolated Docker release benchmark (#77) (#78)
  • add isolated Docker release benchmark (#77)

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.0.3
docker pull docker.io/pullbox/pullbox:1.0.3

Digest: sha256:3672f34321deef16fae9cb5367813a24e23966e85e736cdd6310807f9be47a5c

🔐 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.0.3$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:3672f34321deef16fae9cb5367813a24e23966e85e736cdd6310807f9be47a5c

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.0.3$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:3672f34321deef16fae9cb5367813a24e23966e85e736cdd6310807f9be47a5c

Full Changelog: v1.0.2...v1.0.3

Pullbox v1.0.2

Choose a tag to compare

@github-actions github-actions released this 13 Jul 05:38
v1.0.2
74ef781

What's Changed

Maintenance release focused on container runtime reliability, migration
correctness, and faster self-hosted CI without weakening release gates.

Fixed

  • Added the missing PostgreSQL enum migration for paused import jobs so
    PostgreSQL deployments upgrade cleanly.
  • Made shell-free production images resilient to Python path changes between
    Docker Hardened Image builder and runtime releases.

CI / Build

  • Hardened release image validation with an Expat runtime floor, exact reviewed
    Grype exceptions, and pre-signing checks for both AMD64 and ARM64 images.
  • Routed lightweight checks to a dedicated runner, increased Python test
    parallelism, sharded browser tests, and disabled routine E2E video encoding
    while retaining opt-in diagnostics.
  • Updated the pinned CodeQL actions to 4.37.0.

Commit Details

🐛 Bug Fixes

  • preserve venv interpreter in DHI runtime (#74)
  • harden container validation and enum migrations (#72)

🧰 Chores

  • bump version to 1.0.2 for release
  • sync develop after v1.0.1 release

🏗️ CI / Build

  • bump the actions-all group across 1 directory with 3 updates (#70)
  • separate lightweight checks from test runners (#73)

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.0.2
docker pull docker.io/pullbox/pullbox:1.0.2

Digest: sha256:fb5952ac34f13bbfdf93803732bceac1dd6569b316911fe7223f5ea08474b00d

🔐 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.0.2$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:fb5952ac34f13bbfdf93803732bceac1dd6569b316911fe7223f5ea08474b00d

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.0.2$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:fb5952ac34f13bbfdf93803732bceac1dd6569b316911fe7223f5ea08474b00d

Full Changelog: v1.0.1...v1.0.2

Pullbox v1.0.1

Choose a tag to compare

@github-actions github-actions released this 07 Jul 13:42
v1.0.1
0f2aa2c

What's Changed

Patch maintenance release focused on dependency freshness and release-pipeline
hygiene after the 1.0 launch.

CI / Build

  • Updated pinned GitHub Actions used by CI, Docker validation, CodeQL branch
    probing, release image publication, and security scanning workflows.
  • Updated Tailwind CSS and the Tailwind CLI to 4.3.2 and regenerated the
    compiled stylesheet.
  • Added a narrow local and CI pip-audit ignore for the current Safety
    toolchain's transitive nltk advisory while no fixed upstream version is
    available.

Commit Details

🧰 Chores

  • bump version to 1.0.1 for release
  • integrate dependabot maintenance batch
  • bump @tailwindcss/cli from 4.3.1 to 4.3.2
  • bump tailwindcss from 4.3.1 to 4.3.2
  • sync develop after v1.0.0 release

🏗️ CI / Build

  • bump the actions-all group with 8 updates

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.0.1
docker pull docker.io/pullbox/pullbox:1.0.1

Digest: sha256:aa066660091db96a20ddea2075ba673409e6bfeb6970e495d92d33be9d5981fd

🔐 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.0.1$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:aa066660091db96a20ddea2075ba673409e6bfeb6970e495d92d33be9d5981fd

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.0.1$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:aa066660091db96a20ddea2075ba673409e6bfeb6970e495d92d33be9d5981fd

Full Changelog: v1.0.0...v1.0.1

Pullbox v1.0.0

Choose a tag to compare

@github-actions github-actions released this 29 Jun 20:57
v1.0.0
281daa2

What's Changed

The first stable release. Pullbox 1.0 is a complete, self-hosted comic library
manager: pull list automation, weekly release discovery, a matching engine built
for how comics actually get named, and the operational depth to run unattended
on your server.

Library & Collection

  • Series management with eleven distinct series types, including annuals, trade
    paperbacks, omnibuses, hardcovers, one-shots, and more, so collections
    organize the way comics actually work.
  • Pull list monitoring: mark a series monitored and new issues are searched,
    grabbed, and filed automatically.
  • Review-first collection import: scan a folder, match against ComicVine,
    resolve conflicts and duplicates explicitly, then import with full rollback.
  • Mylar3 importer: reads a Mylar3 database strictly read-only, preserves its
    ComicVine matches as high-confidence imports, and preserves external source
    folders during import.
  • File-level tracking with naming templates per series type, configurable
    transfer methods, and ComicInfo.xml metadata writing.

Acquisition

  • Five download clients with full lifecycle management: SABnzbd, NZBGet,
    qBittorrent, Transmission, and Deluge.
  • Indexer support: Prowlarr integration plus direct Newznab and Torznab
    connections, with health checks and per-indexer priority.
  • Matching engine: a three-stage parse, match, validate pipeline developed
    against a corpus of more than 20,000 real-world release names, with an
    intervention queue for ambiguous matches instead of silent wrong grabs.
  • Universal blocklist across all client types, with configurable expiry,
    wildcard release-group patterns, and per-series clearing.
  • Two-pass search with configurable thresholds, size guardrails, scoring
    weights, and ignored-phrase filters.

Weekly Release Discovery

  • What's New: this week's releases, filterable by publisher.
  • Coming Soon: upcoming weeks, with graceful offline fallback to cached data.

Metadata

  • ComicVine integration with your own free API key, encrypted at rest, with
    aggressive caching and internal rate limiting to stay well inside ComicVine's
    limits.

Utilities

  • Seven built-in tools, job-queue backed with live progress: File Converter,
    Mass Convert, Mass Rename, Integrity Check, Library Permissions, DB Check &
    Cleanup, and Export Library.

Operations

  • Health dashboard covering database, filesystem, ComicVine, clients, indexers,
    scheduler, and system resources, with actionable guidance on failures.
  • One-click diagnostics packages with secrets redacted.
  • Scheduled database backups with retention and restore.
  • Audit log of security-relevant events.
  • Full REST API behind the same auth as the UI, with an interactive reference
    served from the instance at /docs.

Security & Runtime

  • Ships on Python 3.14 using Docker Hardened Images, running as a fixed non-root
    user with a minimal attack surface.
  • Encrypted credentials at rest, CSRF protection, tiered rate limiting, bcrypt
    password hashing, signed sessions, and API keys stored as hashes.
  • Native HTTPS with your own certificates, or reverse-proxy friendly with
    trusted-proxy support.
  • Multi-architecture images for amd64 and arm64 on GHCR and Docker Hub.
  • Anonymous usage telemetry that is opt-in, off by default, and documented
    field-by-field on the public transparency page.

Interface

  • Light and dark themes with system-preference detection.
  • Responsive layout from phone to desktop.
  • Targets WCAG 2.2 AA with automated contrast, keyboard, focus, and axe
    regression checks.

Commit Details

✨ Features

  • support issue file replacement workflows

🐛 Bug Fixes

  • harden issue replacement cancellation
  • address release review findings
  • show intervention bulk action progress
  • force history issue links to navigate
  • stagger metadata refresh schedule
  • show pointer cursor on library file rows
  • report manual import transfer progress
  • keep partial-catalog duplicates importable
  • refresh import review after series override
  • strip parenthesized webrip metadata
  • weight step 2 import eta
  • preserve collection import sources
  • protect imports from scheduler contention
  • reload search history diagnostics after navigation
  • stabilize search on add annual handling
  • align dashboard outcomes table contract
  • rename bulk utility preview badges
  • stabilize download history detail toggle
  • cache versioned cover images
  • show pointer cursor on pagination controls

🧪 Testing

  • align ci expectations with current import behavior

🧰 Chores

  • prepare v1.0.0 release

🏗️ CI / Build

  • bump actions/setup-python in the actions-all group

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.0.0
docker pull docker.io/pullbox/pullbox:1.0.0

Digest: sha256:859d2a7bf37249c823585e5381094ec4e48b04e4a5061ff38e6723893cae4e66

🔐 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.0.0$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:859d2a7bf37249c823585e5381094ec4e48b04e4a5061ff38e6723893cae4e66

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.0.0$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:859d2a7bf37249c823585e5381094ec4e48b04e4a5061ff38e6723893cae4e66

Full Changelog: v1.0.0-rc1...v1.0.0

Pullbox v1.0.0-rc1

Pullbox v1.0.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 23 Jun 18:02
v1.0.0-rc1
2e13a2b

What's Changed

Release candidate for the v1.0 production burn-in, focused on Mylar3 migration
correctness, rollback safety, metadata recovery, download retry handling, and
large-library UI stability.

Changed

  • Adopted matching source folders during Mylar3 and folder imports when the
    source already lives inside the Pullbox library root, preserving adjacent
    Mylar artifacts instead of creating duplicate target folders.
  • Surfaced catalog hydration state in series views so missing post-import
    metadata is visible while background recovery catches up.

Fixed

  • Fixed import rollback cleanup for adopted folders, renamed folders, failed
    files, empty target directories, and rollback details that were previously
    not persisted early enough for later recovery.
  • Fixed a stale intervention issue link interaction that could swap an issue
    detail page into the intervention table instead of navigating normally.
  • Fixed pending download retries that could remain in retry pending without
    being failed and blocklisted when no active downloads were polling.
  • Fixed import result retry visibility for file failures that need recovery
    after review or rollback.

Performance

  • Reused catalog hydration indicators and import metadata recovery paths to
    keep large-library views responsive after production-scale imports.

Testing

  • Added coverage for folder adoption, rollback edge cases, pending download
    retry processing, intervention navigation, import result recovery, catalog
    hydration banners, and reviewed template-safe macro attributes.

Commit Details

🐛 Bug Fixes

  • preserve folder adoption during import rollback
  • harden import folder adoption rollback
  • prevent intervention issue links from htmx swapping
  • process pending download retries when idle
  • harden import rollback file cleanup
  • surface catalog hydration after imports
  • adopt library source folders during import

🧪 Testing

  • review mission control safe attrs

🧰 Chores

  • bump version to 1.0.0-rc1 for release
  • bump develop to 0.9.13-dev

🐳 Docker Images

docker pull ghcr.io/pullboxapp/pullbox:1.0.0-rc1
docker pull docker.io/pullbox/pullbox:1.0.0-rc1

Digest: sha256:bd1e3f48bd15a1e6d837fd867937a5f96af3cf1ed8e04bcb39ff140e6510074d

🔐 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.0.0-rc1$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  ghcr.io/pullboxapp/pullbox@sha256:bd1e3f48bd15a1e6d837fd867937a5f96af3cf1ed8e04bcb39ff140e6510074d

cosign verify \
  --certificate-identity-regexp '^https://github.com/pullboxapp/pullbox/\.github/workflows/docker-release\.yml@refs/tags/v1.0.0-rc1$' \
  --certificate-oidc-issuer 'https://token.actions.githubusercontent.com' \
  docker.io/pullbox/pullbox@sha256:bd1e3f48bd15a1e6d837fd867937a5f96af3cf1ed8e04bcb39ff140e6510074d

Full Changelog: v0.9.12...v1.0.0-rc1