Skip to content

Releases: fastcrw/crw

v0.37.2

Choose a tag to compare

@us us released this 30 Sep 21:28

0.37.2 (2026-09-30)

Bug Fixes

  • mcp: npm launcher falls back to api.github.com and honours proxies (8a3360d), closes #597

v0.37.1

Choose a tag to compare

@us us released this 30 Sep 14:47

0.37.1 (2026-09-30)

Bug Fixes

  • renderer: own the Chrome profile dir and reap the browser tree on Windows (850bf3a), closes #594

v0.37.0

Choose a tag to compare

@us us released this 29 Sep 23:53

0.37.0 (2026-09-29)

Features

  • mcp: advertise maxAge on crw_scrape so callers can tune the fetch cache (c34da2d)
  • renderer: reach the solver tier on hosts that block datacenter addresses (63762e7)
  • server: expose and clear the per-host renderer preference learner (8d50185)

Bug Fixes

  • browse: give script actions an object item schema (9043cd7), closes #578
  • ci: stop the release audit calling a healthy publish broken (a0ac61e)
  • crawl: classify the current Cloudflare block page as cloudflare (139a21d)
  • docs: describe LightPanda as Zig-based, not Rust-based (b9c1554)
  • mcp: mode-gate maxAge to proxy mode after review (ee87661)
  • release: keep Cargo.lock in step with the workspace version (311ee8b)
  • release: publish and link from the fastcrw GitHub org (8de5ff3)
  • replace dead docs links and keep the legacy image updated (ee1b1d8)
  • search: keep github and research results when sources is set (f3a84f3)
  • v2: accept object-form sources and categories in /v2/search (c704f19)
  • v2: do not claim Firecrawl's DNS answer for any unreachable target (54108c7)
  • v2: match Firecrawl's success semantics, final URL and error envelope (5cfcb0e)

Performance

  • renderer: extend the hydration gate to 500 (a066f65)
  • renderer: stop spending the JS ladder on a 404 with nothing to hydrate (fc18b2c)

v0.36.0

Choose a tag to compare

@us us released this 19 Sep 00:47

0.36.0 (2026-09-19)

Features

  • scrape: cache the fetch so a repeat scrape skips the network (601d5f5)

Bug Fixes

  • crawl: do not fail a job because robots.txt could not be read (e8eea02)
  • crawl: keep the last robots rule of a file that lands on the size cap (1e41fb0)
  • extract: accumulate usage across legs, and report it on /v2/search (6623dce)
  • extract: forward reasoning_effort from the structured builder (dc161c1)
  • extract: stop corrupting markdown for non-HTML sources (0ae7c40)
  • extract: stop the rescue candidate from reintroducing page chrome (8272600)
  • harden consolidated crawl reliability changes (5691492)
  • mcp: let CRW_LOCAL actually keep the run local (abc05e2), closes #557
  • preserve crawl and renderer reliability invariants (65f385a)
  • renderer: connect CDP over every resolved address, not just the first (77c0c74)
  • scrape: scope the page cache per tenant (e0a583b)
  • sdk: return the map sitemaps and keep local mode local (76c59c0), closes #557
  • v2: carry llmUsage through to_v2_document (85fe020)

v0.35.1

Choose a tag to compare

@us us released this 10 Sep 23:39

0.35.1 (2026-09-10)

Bug Fixes

  • docker: cross-compile BoringSSL for the arm64 image leg (7d748e5)

v0.35.0

Choose a tag to compare

@us us released this 10 Sep 22:37

0.35.0 (2026-09-10)

Features

  • renderer: impersonated-http tier with a real Chrome TLS fingerprint (8a388ed)

Bug Fixes

  • release: read the crate checksum from the sparse index (ab43c40)

v0.34.1

Choose a tag to compare

@us us released this 10 Sep 15:23

0.34.1 (2026-09-10)

Bug Fixes

  • renderer: report failures truthfully, scope breaker verdicts (36f4a0a)

v0.34.0

Choose a tag to compare

@us us released this 08 Sep 12:24

0.34.0 (2026-09-08)

Features

  • renderer: align browser locale with the proxy exit country (6155ac6), closes #385
  • renderer: let camoufox wait out a JS challenge instead of reporting it (86766d5)

Bug Fixes

  • batch: retain failed scrape results (63b00af)
  • keep internal URLs and proxy credentials out of error strings (59f7a15)
  • renderer: escalate lightpanda to a tier the pool actually holds (5c9f6cc)
  • renderer: give the chrome_proxy recovery arm time to finish (595a3c5)
  • renderer: keep the HTTP shell from resurrecting a refused wall (c74bcf3)
  • renderer: poll the interstitial camoufox actually sees (49a3eb9)
  • renderer: report scrape outcomes truthfully (294eb3d)
  • renderer: stop camoufox polling out a page that already cleared (800a30c)
  • renderer: stop shipping an unclearable wall as a success (82a56f6)
  • server: make the retained batch failure legible on every surface (15e9bb9)
  • v2: report per-URL batch and crawl failures on the errors route (c486731)

v0.33.0

Choose a tag to compare

@us us released this 02 Sep 00:44

0.33.0 (2026-09-02)

Features

  • enhance crawl error diagnostics and configurable headers (93b4c11)

Bug Fixes

  • crawl: report unreadable pages and honour per-request headers (c58a8f6)
  • deps: move PDF parsing to lopdf 0.42, clearing RUSTSEC-2026-0187 (10f4341)
  • extract: enforce structured output on the chat transports (aeb55ca)
  • renderer: don't feed binary bodies to the HTML extractor (ab5e93e)
  • renderer: keep the binary-body check off real pages (4f741d5)
  • scrape: classify a wall and an empty result as failures (96a4b43)

v0.32.0

Choose a tag to compare

@us us released this 24 Aug 19:57

0.32.0 (2026-08-24)

Features

  • map: return discovered sitemap document URLs (c65ea1c), closes #440
  • setup: register MCP with detected agents on scripted setup (2cb5f71)

Bug Fixes

  • browse: satisfy the lints Rust 1.98 turned on (a338091)
  • map: report a sitemap by retrieval, not by entry count (38b1c1f), closes #440
  • mcp: bound the map sitemaps list like the links list (579910a), closes #440
  • mcp: pair the Smithery API key with the cloud API URL (566eb85)
  • renderer: stop treating a cleared page as a Cloudflare challenge (0b91afb)
  • research: restore arXiv coverage and unbreak the OpenAlex pool (a942b6d)
  • sdk: follow batch pagination and stop on cancel in both SDKs (47dd99b)