Skip to content

Releases: pulldit/pulldit.github.io

Pulldit v1.4.0

05 Jun 17:42
v1.4.0
0f1a3cc

Choose a tag to compare

Pulldit v1.4.0 — release-engineering tidy-up. The web app and the Pulldit Bridge extension now share a single version, defined once in package.json. Still 100% in your browser: no account, no tracking, no backend, strict CSP.

🔧 Changes

  • Unified versioningpackage.json is the single source of truth. scripts/sync-version.mjs propagates it to the app config, the extension manifest, and the landing page; npm run check (and CI) now fail on version drift. App and extension are both 1.4.0.
  • Tidier example input — the search placeholder, ZIP-name example, and parser test use a neutral example subreddit.

🛠 Internals

  • New scripts/sync-version.mjs (set + propagate + --check), wired into the build gate; the previous per-extension bump script is retired. 163 tests pass.

Full changelog: v1.3.0...v1.4.0

Pulldit v1.3.0

04 Jun 23:11
v1.3.0
e4706d2

Choose a tag to compare

Pulldit v1.3.0 — bulk-download quality-of-life: automatic ZIP batching, stop/pause controls, progress bars, and a tidier results view. Still 100% in your browser: no account, no tracking, no backend, strict CSP, no third-party requests.

✨ New

  • Automatic ZIP batching — select 1000 images with "Max files per ZIP" at 250 and one click now downloads all 4 ZIPs automatically (pulldit-<sub>-<sort>-1.zip, -2.zip, …), with a short gap between saves. No more re-clicking per batch.
  • Meaningful ZIP namespulldit-<subreddit | u-user | post-id>-<sort>[-<time>] from the last fetch, instead of pulldit-<count>.zip.
  • Stop & Pause/Resume — fetch and downloads can be stopped; downloads can also be paused and resumed (resume continues where it left off; finished ZIP batches are already saved). A stopped fetch keeps the pages it already got.
  • Fetch progress bar — indeterminate for a single request, determinate (items / target) while auto-paginating.
  • Results that scroll internally — the grid no longer turns 1000+ items into a kilometre-long page; it scrolls within a bounded area (per-card virtualization preserved).
  • Hide saved — a toolbar toggle clears already-downloaded ("✓ saved") items from view.
  • Extension version + update notice — the proxy panel shows the installed extension version and, when a newer build is released, an "update available" notice; the install modal shows the latest version.

🛠 Internals

  • downloadZip processes every selected item in batches (global progress, returns { zips }); downloadSingle forwards the abort signal; new pause-gate + AbortController plumbing. 163 tests pass.

Full changelog: v1.2.0...v1.3.0

Pulldit v1.2.0

04 Jun 22:47
v1.2.0
1922b5b

Choose a tag to compare

Pulldit v1.2.0 — auto-pagination past Reddit's 100-items-per-request cap. Still 100% in your browser: no account, no tracking, no backend, strict CSP, no third-party requests.

✨ New

  • Auto-pagination — Reddit caps a listing request at 100 items, so previously the Limit was stuck at 100. Now a Limit above 100 transparently fetches multiple pages (following Reddit's after cursor), de-dupes and merges them, and stops when your target is reached, the listing ends, a page adds nothing new, or a safety bound is hit.
    • The Limit field is raised and shows a hint when pagination kicks in (how many items / ~how many requests). With auto-pagination off it warns that only the first 100 will be fetched.
    • Robust failures: a failing first page surfaces the real error; a failing later page returns a partial result instead of losing everything.
    • The fetch statistics show a Pages count and the history entry notes N pages.
  • New Advanced settings: Auto-paginate past 100 (toggle, default on), Max items (pagination) total cap (100–2000, default 500), and Page request delay (ms) between page calls (default 400, to dodge Reddit rate limits).

🛠 Internals

  • New pure aggregatePages() in reddit.js (merge + de-dupe by id + summed counters + recomputed media breakdown), fully unit-tested. 163 tests pass.
  • Single-request behavior (post pages / auto-pagination off / Limit ≤ 100) is unchanged.

Full changelog: v1.1.0...v1.2.0

Pulldit v1.1.0

04 Jun 22:30
v1.1.0
2020a07

Choose a tag to compare

Pulldit v1.1.0 — a feature & hardening release. Everything still runs 100% in your browser: no account, no tracking, no backend, strict CSP, no third-party requests.

✨ New

  • Media validation — before any file is saved or zipped:
    • Check 1 (magic bytes): confirms each download is a genuine image/video and rejects mislabeled payloads — HTML error/“removed”/rate-limit pages, executables, archives, scripts. Pure & near-instant.
    • Check 2 (decode probe): optional, only runs on the few files with no known signature; decodes them to decide and frees the bitmap immediately. Catches corrupt/disguised media.
    • Both toggleable in Advanced settings (Check 2 only when Check 1 is on). This is content sniffing, not an antivirus — media is decoded data, not executed code.
  • Sticky header & footer — header (brand + GitHub · About · Extension · Disclaimer) and an always-visible footer with brand/version, local status pills (CI/CodeQL/Deploy/MIT, no external images) and a privacy note.
  • Activity history, detailed — second detail line (fetch: sort · time · proxy mode; download: filename · size; ZIP: skipped · elapsed), a configurable display limit, auto-overwrite vs. keep-everything, a “Show more” expander, and per-entry delete.
  • Link history — per-link delete plus an auto-save toggle (off = curate manually via “+ Add current link”).
  • Advanced settings — now also hosts the Clear stored data tool, the history limit/overwrite controls, link auto-save, and the two validation checks. Everything is saved locally and re-loaded automatically.

🛠 Changed / fixed

  • Consolidated all navigation in the header (removed the duplicate footer nav); added a real #disclaimer anchor.
  • New “invalid” download-failure category in the statistics.

🔒 Security

  • New src/media-validate.js (pure + browser-guarded), wired into single + ZIP downloads. 159 tests pass.
  • No CSP changes; the new status pills are local CSS (no github.com / shields.io requests).

Full changelog: v1.0.0...v1.1.0

Pulldit v1.0.0

04 Jun 15:54
v1.0.0
8c602e7

Choose a tag to compare

First public release — static, browser-only Reddit media downloader.

  • Switchable proxy modes: direct / your own Cloudflare Worker / public proxy
  • Strict CSP, locally vendored libs, host allowlisting, server-free
  • 65 unit tests, CI + CodeQL + dependency scanning, auto-deploy to Pages

See README for details. Not affiliated with Reddit, Inc.