github apify/crawlee v3.17.0

5 hours ago

3.17.0 (2026-06-04)

Bug Fixes

  • add network timeouts to discoverValidSitemaps to prevent indefinite hangs (#3429) (ee90835)
  • bind Browser.pages() correctly in PuppeteerPlugin (#3439) (c3a4b3b)
  • browser-pool: allow unsetting launch context proxy URL (#3621) (d5ab219)
  • browser-pool: preserve caller's AbortContext across p-limit queue (#3673) (c4d58d9), closes #3670
  • BrowserCrawler closes ctx.page before errorHandler runs on navig… (#3655) (ab34886)
  • change sequential approach to parallel for Iterator first page (#3402) (adf3dae), closes #3395
  • core: apply object searchParams in HTTP request options (#3622) (d32946e)
  • core: release storage open queue slot on failure (#3662) (18ebc61), closes #3661
  • correct failed requests delta count in periodic log message (#3482) (a098f42)
  • Correctly track the number of requests handled by a crawler (#3410) (b2296ce), closes #3083 #3330
  • e2e: resolve flaky Camoufox tests due to GitHub rate limits (#3527) (08c98cf), closes #3524
  • honor custom respectRobotsTxtFile userAgent in enqueueLinks (#3578) (1d2528b)
  • log warning when Sitemap.load returns empty sitemap due to loading error (#3462) (2cf9c1c)
  • parse proxy URLs correctly when using useIncognitoPages (#3433) (db2bb68)
  • Prevent accidental request dropping with maxRequestsPerCrawl (#3531) (b23319b)
  • prevent iframe expansion failure on pages with Trusted Types CSP (#3590) (c0b9b50), closes #3588
  • prevent v3 sitemap discovery init hangs in discoverValidSitemaps (#3434) (6c04f92), closes #3412
  • unref BrowserController.close() fallback timer to avoid keeping Node alive longer than needed (#3671) (eef94d4)
  • using GET for candidate checks - sitemaps (#3464) (f82eb04), closes #3463

Features

  • adaptive-crawler: add shouldPropagateError callback to prevent browser fallback (#3635) (d3a29d9)
  • add ignoreProxyCertificate option for the internal proxy-chain instance (#3418) (02eec66), closes #3369
  • add abortDownload context helper to FileDownload (#3528) (3b3d8f6)
  • Dynamic memory snapshots (#3471) (87c67dc), closes #3408
  • expose Download objects on PlaywrightCrawlingContext (#3596) (5dc1627), closes #3583
  • Modularize SystemStatus to allow custom backpressure mechanisms (#3529) (7159a13)
  • templates: use ImpitHttpClient and install optional deps in Docker (#3603) (113dca6), closes #3601
  • utils: add sitemapFilter option to parseSitemap (#3557) (1d4f6b9)

Performance Improvements

  • add lazyIterablePromise to kvs iterators (#3413) (2658610)

Don't miss a new crawlee release

NewReleases is sending notifications on new releases.