{"id":"src_l1iMj2I4cMlNg5gXIgZo8","slug":"crawlee","name":"Crawlee","type":"github","url":"https://github.com/apify/crawlee","orgId":"org_QIsfs_sOWdKi13zrUMWyy","org":{"slug":"apify","name":"Apify"},"isPrimary":false,"metadata":"{\"evaluatedMethod\":\"github\",\"evaluatedAt\":\"2026-04-11T14:04:22.983Z\",\"changelogUrl\":\"https://github.com/apify/crawlee/blob/HEAD/CHANGELOG.md\",\"changelogDetectedAt\":\"2026-04-11T14:06:13.127Z\"}","releaseCount":100,"releasesLast30Days":0,"avgReleasesPerWeek":0.1,"latestVersion":"v3.16.0","latestDate":"2026-02-06T14:05:47.000Z","changelogUrl":"https://github.com/apify/crawlee/blob/HEAD/CHANGELOG.md","hasChangelogFile":true,"lastFetchedAt":"2026-04-18T14:07:49.653Z","trackingSince":"2021-03-19T17:46:49.000Z","releases":[{"id":"rel_c5ndyjDJZ3U5CysMw03e4","version":"v3.16.0","title":"v3.16.0","summary":"# [3.16.0](https://github.com/apify/crawlee/compare/v3.15.3...v3.16.0) (2026-02-06)\n\n\n### Bug Fixes\n\n* **adaptive-crawler:** Fix persistence of render...","content":"# [3.16.0](https://github.com/apify/crawlee/compare/v3.15.3...v3.16.0) (2026-02-06)\n\n\n### Bug Fixes\n\n* **adaptive-crawler:** Fix persistence of rendering type detection results ([#3368](https://github.com/apify/crawlee/issues/3368)) ([4abca8b](https://github.com/apify/crawlee/commit/4abca8bacf0636961251b05359f92129f72b7a5c))\n* certain redirect responses change request methods ([#3296](https://github.com/apify/crawlee/issues/3296)) ([efac644](https://github.com/apify/crawlee/commit/efac644af2e2fbe942087f160dbd843d9ce3521e)), closes [#2586](https://github.com/apify/crawlee/issues/2586)\n* clean turbo cache and tsbuildinfo files in yarn clean ([#3348](https://github.com/apify/crawlee/issues/3348)) ([6cd9456](https://github.com/apify/crawlee/commit/6cd9456b28c4c43cdc1587043854da35b263d680))\n* **core:** ensure `maxCrawlDepth` warning is logged only once ([#3337](https://github.com/apify/crawlee/issues/3337)) ([9d01334](https://github.com/apify/crawlee/commit/9d013342c539dd76783bea3cf807041445d3f8f5)), closes [#3336](https://github.com/apify/crawlee/issues/3336)\n* handle multiple `BasicCrawler.stop()` calls correctly ([#3324](https://github.com/apify/crawlee/issues/3324)) ([9c0580b](https://github.com/apify/crawlee/commit/9c0580b0c6fefe6f62ce28adacab27c02e7599f1)), closes [#3257](https://github.com/apify/crawlee/issues/3257)\n* **impit-client:** pause fromWeb stream to prevent early consumption ([#3347](https://github.com/apify/crawlee/issues/3347)) ([72aacb4](https://github.com/apify/crawlee/commit/72aacb44eaa4802ba81583b4639787d0570f9626)), closes [#555](https://github.com/apify/crawlee/issues/555)\n* more permissive accept ([#3373](https://github.com/apify/crawlee/issues/3373)) ([d03af1b](https://github.com/apify/crawlee/commit/d03af1bee6bceae54f18e36386bbeaabdeaf3c2a)), closes [#3242](https://github.com/apify/crawlee/issues/3242)\n* remove deprecation from `RequestQueueV1` ([#3341](https://github.com/apify/crawlee/issues/3341)) ([89309bc](https://github.com/apify/crawlee/commit/89309bc00e903f3f5381fa7ef89e566eb3c80706))\n* suppress info message for undefined maxRequestsPerCrawl ([#3237](https://github.com/apify/crawlee/issues/3237)) ([f3d9a79](https://github.com/apify/crawlee/commit/f3d9a7967da19fc55837b2433b5dfae312e4b8a7))\n\n\n### Features\n\n* add `@crawlee/stagehand` package for AI-powered browser automation ([#3331](https://github.com/apify/crawlee/issues/3331)) ([a89cb5a](https://github.com/apify/crawlee/commit/a89cb5abc06ddaa841c98b9b29af13b14dea98f5)), closes [#3064](https://github.com/apify/crawlee/issues/3064)\n* Add a counter of in-flight rendering type detections ([#3355](https://github.com/apify/crawlee/issues/3355)) ([565fc34](https://github.com/apify/crawlee/commit/565fc346378b632df690d328ff45b755530cf368))\n* implements async iterators ([#3352](https://github.com/apify/crawlee/issues/3352)) ([7f7a4ab](https://github.com/apify/crawlee/commit/7f7a4ab3e21b801983c7d3be2aff84f4a0e83f6e)), closes [#3338](https://github.com/apify/crawlee/issues/3338)\n* make `handleCloudflareChallenge` more configurable ([#3247](https://github.com/apify/crawlee/issues/3247)) ([629daf8](https://github.com/apify/crawlee/commit/629daf84aa29aecb5b0326150b0e3fadece9e87a)), closes [#3127](https://github.com/apify/crawlee/issues/3127)\n* **utils:** add `discoverValidSitemaps` utility ([#3339](https://github.com/apify/crawlee/issues/3339)) ([29f52ed](https://github.com/apify/crawlee/commit/29f52eddd4992b6b78b96c27e5424074a33f2496))\n\n\n### Performance Improvements\n\n* drop `tsbuildinfo` from published packages ([#3243](https://github.com/apify/crawlee/issues/3243)) ([3450f27](https://github.com/apify/crawlee/commit/3450f27880afb9e9d857a54d9212b54c397aed91)), closes [#3239](https://github.com/apify/crawlee/issues/3239)\n\n\n\n","publishedAt":"2026-02-06T14:05:47.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.16.0","media":[]},{"id":"rel_HJYtMay4jGSuxiRN-G82t","version":"v3.15.3","title":"v3.15.3","summary":"## [3.15.3](https://github.com/apify/crawlee/compare/v3.15.2...v3.15.3) (2025-11-10)\n\n\n### Bug Fixes\n\n* await retries inside `_timeoutAndRetry` ([#320...","content":"## [3.15.3](https://github.com/apify/crawlee/compare/v3.15.2...v3.15.3) (2025-11-10)\n\n\n### Bug Fixes\n\n* await retries inside `_timeoutAndRetry` ([#3206](https://github.com/apify/crawlee/issues/3206)) ([9c1cf6d](https://github.com/apify/crawlee/commit/9c1cf6d68acd356af8b7dbd682141357d789e3fb)), closes [/github.com/apify/crawlee/pull/3188#discussion_r2410256271](https://github.com//github.com/apify/crawlee/pull/3188/issues/discussion_r2410256271)\n* **cli:** support creating projects with names that start with a number ([#3219](https://github.com/apify/crawlee/issues/3219)) ([3f37845](https://github.com/apify/crawlee/commit/3f37845899a88d4e41df56c996aa05b5ee28a2e8)), closes [#3213](https://github.com/apify/crawlee/issues/3213)\n* use shared enqueue links wrapper in `AdaptivePlaywrightCrawler` ([#3188](https://github.com/apify/crawlee/issues/3188)) ([9569d19](https://github.com/apify/crawlee/commit/9569d191933325d93f6c66754274b63fd272fc59))\n\n\n### Features\n\n* support custom `userAgent` with `respectRobotsTxtFile` ([#3226](https://github.com/apify/crawlee/issues/3226)) ([354252d](https://github.com/apify/crawlee/commit/354252dee44c5ea618a12e087acb24b9e0f555c7)), closes [#3222](https://github.com/apify/crawlee/issues/3222)\n\n\n\n","publishedAt":"2025-11-10T19:29:03.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.15.3","media":[]},{"id":"rel_T-SsrvN58SsneEek06qtI","version":"v3.15.2","title":"v3.15.2","summary":"## [3.15.2](https://github.com/apify/crawlee/compare/v3.15.1...v3.15.2) (2025-10-23)\r\n\r\n\r\n### Bug Fixes\r\n\r\n* correctly apply `launchOptions` with `use...","content":"## [3.15.2](https://github.com/apify/crawlee/compare/v3.15.1...v3.15.2) (2025-10-23)\r\n\r\n\r\n### Bug Fixes\r\n\r\n* correctly apply `launchOptions` with `useIncognitoPages` ([#3181](https://github.com/apify/crawlee/issues/3181)) ([84a4b70](https://github.com/apify/crawlee/commit/84a4b709ee59d9edbcdc9a19559fefa4e9139ba4)), closes [#3173](https://github.com/apify/crawlee/issues/3173) [#3173](https://github.com/apify/crawlee/issues/3173)\r\n* enable `systemInfoV2` by default ([#3208](https://github.com/apify/crawlee/issues/3208)) ([617a343](https://github.com/apify/crawlee/commit/617a343d4f594635adfff3c41a3632a19144749a))\r\n* Re-export MemoryStorage from the crawlee package ([#3200](https://github.com/apify/crawlee/issues/3200)) ([e183ea9](https://github.com/apify/crawlee/commit/e183ea9b239a985fe64729dd8132fbe4d13f73d8))\r\n\r\n\r\n### Features\r\n\r\n* export cheerio types in all crawler packages ([#3204](https://github.com/apify/crawlee/issues/3204)) ([f05790b](https://github.com/apify/crawlee/commit/f05790b8c4e77056fd3cdbdd6d6abe3186ddf104))\r\n\r\n\r\n### Performance Improvements\r\n\r\n* don't await `crawler.setStatusMessage` ([#3207](https://github.com/apify/crawlee/issues/3207)) ([1a67ffb](https://github.com/apify/crawlee/commit/1a67ffbf22e0ecf034d30a2215c4bd0f0ecbf41e))\r\n\r\n\r\n\r\n","publishedAt":"2025-10-23T13:04:59.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.15.2","media":[]},{"id":"rel_7dS5tx-63aLRRbWPavxw7","version":"v3.15.1","title":"v3.15.1","summary":"## [3.15.1](https://github.com/apify/crawlee/compare/v3.15.0...v3.15.1) (2025-09-26)\n\n\n### Bug Fixes\n\n* use correct config for storage classes to avoi...","content":"## [3.15.1](https://github.com/apify/crawlee/compare/v3.15.0...v3.15.1) (2025-09-26)\n\n\n### Bug Fixes\n\n* use correct config for storage classes to avoid memory leaks ([#3144](https://github.com/apify/crawlee/issues/3144)) ([911a2eb](https://github.com/apify/crawlee/commit/911a2eb45cdb5e3fc0e6a96471af86b43bc828bf))\n\n\n### Performance Improvements\n\n* Improve glob performance by reusing minimatch objects ([#3168](https://github.com/apify/crawlee/issues/3168)) ([e5632e2](https://github.com/apify/crawlee/commit/e5632e2700198d75ca955ef3d2ffb609dbf0f050))\n\n\n\n","publishedAt":"2025-09-26T13:19:12.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.15.1","media":[]},{"id":"rel_uf0XJTIFJq4jHlE4dZWx8","version":"v3.15.0","title":"v3.15.0","summary":"# [3.15.0](https://github.com/apify/crawlee/compare/v3.14.1...v3.15.0) (2025-09-17)\n\n\n### Bug Fixes\n\n* `ImpitHttpClient` respects the internal `Reques...","content":"# [3.15.0](https://github.com/apify/crawlee/compare/v3.14.1...v3.15.0) (2025-09-17)\n\n\n### Bug Fixes\n\n* `ImpitHttpClient` respects the internal `Request` timeout ([#3103](https://github.com/apify/crawlee/issues/3103)) ([a35376d](https://github.com/apify/crawlee/commit/a35376d2ce0a7dee15ec01aa04f42ba59bb82ea8))\n* `proxyUrls` list can contain `null` ([#3142](https://github.com/apify/crawlee/issues/3142)) ([dc39cc2](https://github.com/apify/crawlee/commit/dc39cc223a90d0c97c60c5a715bdf524cc32bbac)), closes [#3136](https://github.com/apify/crawlee/issues/3136)\n* don't fail `exportData` calls on empty datasets ([#3115](https://github.com/apify/crawlee/issues/3115)) ([298f170](https://github.com/apify/crawlee/commit/298f170ef032f76d5b252e2a08971bfd161a7ef5)), closes [#2734](https://github.com/apify/crawlee/issues/2734)\n* respect `maxCrawlDepth` with a custom enqueueLinks `transformRequestFunction` ([#3159](https://github.com/apify/crawlee/issues/3159)) ([e2ecb74](https://github.com/apify/crawlee/commit/e2ecb745da6105d8d083b30b8b68197e53b1cf84))\n\n\n### Features\n\n* add `collectAllKeys` option for `BasicCrawler.exportData` ([#3129](https://github.com/apify/crawlee/issues/3129)) ([2ddfc9c](https://github.com/apify/crawlee/commit/2ddfc9c6108207d3289ee92fe3c5b646611cc508)), closes [#3007](https://github.com/apify/crawlee/issues/3007)\n* add `TandemRequestProvider` for combined `RequestList` and `RequestQueue` usage ([#2914](https://github.com/apify/crawlee/issues/2914)) ([4ca450f](https://github.com/apify/crawlee/commit/4ca450f08b9fb69ae3b2ba3fc66361f14631b15b)), closes [#2499](https://github.com/apify/crawlee/issues/2499)\n\n\n\n","publishedAt":"2025-09-17T12:48:07.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.15.0","media":[]},{"id":"rel_MGdGiWiJyBfQzNqdheR7k","version":"v3.14.1","title":"v3.14.1","summary":"## [3.14.1](https://github.com/apify/crawlee/compare/v3.14.0...v3.14.1) (2025-08-05)\n\n**Note:** Version bump only for package @crawlee/root\n\n\n\n","content":"## [3.14.1](https://github.com/apify/crawlee/compare/v3.14.0...v3.14.1) (2025-08-05)\n\n**Note:** Version bump only for package @crawlee/root\n\n\n\n","publishedAt":"2025-08-05T11:53:09.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.14.1","media":[]},{"id":"rel_ic-NFRggDAVExl7BjgWp8","version":"v3.14.0","title":"v3.14.0","summary":"# [3.14.0](https://github.com/apify/crawlee/compare/v3.13.10...v3.14.0) (2025-07-25)\r\n\r\n\r\n### Bug Fixes\r\n\r\n* don't retire browsers with long-running `...","content":"# [3.14.0](https://github.com/apify/crawlee/compare/v3.13.10...v3.14.0) (2025-07-25)\r\n\r\n\r\n### Bug Fixes\r\n\r\n* don't retire browsers with long-running `pre|postLaunchHooks` prematurely ([#3062](https://github.com/apify/crawlee/issues/3062)) ([681660e](https://github.com/apify/crawlee/commit/681660e35a1ceaca5e96a7f61d5a7c66ec32bcde))\r\n* respect `exclude` option in `enqueueLinksByClickingElements` ([#3058](https://github.com/apify/crawlee/issues/3058)) ([013eb02](https://github.com/apify/crawlee/commit/013eb028b6ecf05f83f8790a4a6164b9c4873733))\r\n* retry on blocked status codes in `HttpCrawler` ([#3060](https://github.com/apify/crawlee/issues/3060)) ([b5fcd79](https://github.com/apify/crawlee/commit/b5fcd79324ed61c6591fbdc9ffba67b35dc54fde)), closes [#3029](https://github.com/apify/crawlee/issues/3029)\r\n* validation of iterables when adding requests to the queue ([#3091](https://github.com/apify/crawlee/issues/3091)) ([529a1dd](https://github.com/apify/crawlee/commit/529a1dd57278efef4fb2013e79a09fd1bc8594a5)), closes [#3063](https://github.com/apify/crawlee/issues/3063)\r\n\r\n\r\n### Features\r\n\r\n* add `maxCrawlDepth` crawler option ([#3045](https://github.com/apify/crawlee/issues/3045)) ([0090df9](https://github.com/apify/crawlee/commit/0090df93a12df9918d016cf2f1378f1f7d40557d)), closes [#2633](https://github.com/apify/crawlee/issues/2633)\r\n\r\n\r\n","publishedAt":"2025-07-25T09:34:27.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.14.0","media":[]},{"id":"rel_qLR63Kos9_yTHk-fzbyFG","version":"v3.13.10","title":"v3.13.10","summary":"## [3.13.10](https://github.com/apify/crawlee/compare/v3.13.9...v3.13.10) (2025-07-09)\n\n\n### Bug Fixes\n\n* call `onSkippedRequest` for `AdaptivePlaywri...","content":"## [3.13.10](https://github.com/apify/crawlee/compare/v3.13.9...v3.13.10) (2025-07-09)\n\n\n### Bug Fixes\n\n* call `onSkippedRequest` for `AdaptivePlaywrightCrawler.enqueueLinks` ([#3043](https://github.com/apify/crawlee/issues/3043)) ([fc23d34](https://github.com/apify/crawlee/commit/fc23d34ba7fa0daded253a0a958fe9b7bb32e5ca)), closes [#3026](https://github.com/apify/crawlee/issues/3026) [#3039](https://github.com/apify/crawlee/issues/3039)\n* improve enqueueLinks `limit` checking ([#3038](https://github.com/apify/crawlee/issues/3038)) ([2774124](https://github.com/apify/crawlee/commit/277412468dc00a385080c3570c24faac76e764ca)), closes [#3037](https://github.com/apify/crawlee/issues/3037)\n\n\n\n","publishedAt":"2025-07-09T11:51:27.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.10","media":[]},{"id":"rel_3rLoCK1nt4sKH3gKu5i9v","version":"v3.13.9","title":"v3.13.9","summary":"## [3.13.9](https://github.com/apify/crawlee/compare/v3.13.8...v3.13.9) (2025-06-27)\n\n\n### Bug Fixes\n\n* Do not log 'malformed sitemap content' on netw...","content":"## [3.13.9](https://github.com/apify/crawlee/compare/v3.13.8...v3.13.9) (2025-06-27)\n\n\n### Bug Fixes\n\n* Do not log 'malformed sitemap content' on network errors in `Sitemap.tryCommonNames` ([#3015](https://github.com/apify/crawlee/issues/3015)) ([64a090f](https://github.com/apify/crawlee/commit/64a090ffbba5c69730ec0616e415a1eadf4bc7b3)), closes [#2884](https://github.com/apify/crawlee/issues/2884)\n* Fix link filtering in enqueueLinks in AdaptivePlaywrightCrawler ([#3021](https://github.com/apify/crawlee/issues/3021)) ([8a3b6f8](https://github.com/apify/crawlee/commit/8a3b6f8847586eb3b0865fe93053468e1605399c)), closes [#2525](https://github.com/apify/crawlee/issues/2525)\n\n\n### Features\n\n* Accept (Async)Iterables in `addRequests` methods ([#3013](https://github.com/apify/crawlee/issues/3013)) ([a4ab748](https://github.com/apify/crawlee/commit/a4ab74852c3c60bdbc96035f54b16d125220f699)), closes [#2980](https://github.com/apify/crawlee/issues/2980)\n* Report links skipped because of various filter conditions ([#3026](https://github.com/apify/crawlee/issues/3026)) ([5a867bc](https://github.com/apify/crawlee/commit/5a867bc28135803b55c765ec12e6fd04017ce53d)), closes [#3016](https://github.com/apify/crawlee/issues/3016)\n\n\n\n","publishedAt":"2025-06-27T07:45:40.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.9","media":[]},{"id":"rel_yvt1zlevc4BSkVaW0xwG6","version":"v3.13.8","title":"v3.13.8","summary":"## [3.13.8](https://github.com/apify/crawlee/compare/v3.13.7...v3.13.8) (2025-06-16)\n\n\n### Bug Fixes\n\n* Do not enqueue more links than what the crawle...","content":"## [3.13.8](https://github.com/apify/crawlee/compare/v3.13.7...v3.13.8) (2025-06-16)\n\n\n### Bug Fixes\n\n* Do not enqueue more links than what the crawler is capable of processing ([#2990](https://github.com/apify/crawlee/issues/2990)) ([ea094c8](https://github.com/apify/crawlee/commit/ea094c819232e0b30bc550270836d10506eb9454)), closes [#2728](https://github.com/apify/crawlee/issues/2728)\n* Persist rendering type detection results in `AdaptivePlaywrightCrawler` ([#2987](https://github.com/apify/crawlee/issues/2987)) ([76431ba](https://github.com/apify/crawlee/commit/76431badf8a55892303d9b53fe23e029fad9cb18)), closes [#2899](https://github.com/apify/crawlee/issues/2899)\n\n\n### Features\n\n* **dataset:** add collectAllKeys option for full CSV export ([#2945](https://github.com/apify/crawlee/issues/2945)) ([#3007](https://github.com/apify/crawlee/issues/3007)) ([3b629da](https://github.com/apify/crawlee/commit/3b629da9418c052419381087d3ab1871a5c8718b))\n* support `KVS.listKeys()` `prefix` and `collection` parameters ([#3001](https://github.com/apify/crawlee/issues/3001)) ([5c4726d](https://github.com/apify/crawlee/commit/5c4726df96e358a9bbf44a0cd2760e4e269f0fae)), closes [#2974](https://github.com/apify/crawlee/issues/2974)\n\n\n\n","publishedAt":"2025-06-16T21:57:57.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.8","media":[]},{"id":"rel_awL4HjYjZxYi6II_GiCVR","version":"v3.13.7","title":"v3.13.7","summary":"## [3.13.7](https://github.com/apify/crawlee/compare/v3.13.6...v3.13.7) (2025-06-06)\n\n\n### Bug Fixes\n\n* use merged cookies correctly in `GotScrapingHt...","content":"## [3.13.7](https://github.com/apify/crawlee/compare/v3.13.6...v3.13.7) (2025-06-06)\n\n\n### Bug Fixes\n\n* use merged cookies correctly in `GotScrapingHttpClient` ([#3000](https://github.com/apify/crawlee/issues/3000)) ([a2985f2](https://github.com/apify/crawlee/commit/a2985f259f068fbe00aed931a812b8a8755282cb)), closes [#2991](https://github.com/apify/crawlee/issues/2991)\n\n\n\n","publishedAt":"2025-06-06T11:47:23.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.7","media":[]},{"id":"rel_KUwCJYOGiMyq6sYuIxT59","version":"v3.13.6","title":"v3.13.6","summary":"## [3.13.6](https://github.com/apify/crawlee/compare/v3.13.5...v3.13.6) (2025-06-05)\n\n\n### Bug Fixes\n\n* enable full cookie support for `ImpitHttpClien...","content":"## [3.13.6](https://github.com/apify/crawlee/compare/v3.13.5...v3.13.6) (2025-06-05)\n\n\n### Bug Fixes\n\n* enable full cookie support for `ImpitHttpClient` ([#2991](https://github.com/apify/crawlee/issues/2991)) ([120f0a7](https://github.com/apify/crawlee/commit/120f0a7968670eaab14d217e12c09b4dba216d7d))\n* ensure `PlaywrightGotoOptions` won't result in `unknown` when playwright is not installed ([#2995](https://github.com/apify/crawlee/issues/2995)) ([93eba38](https://github.com/apify/crawlee/commit/93eba38b9cd88e543717f885b2c5644f63979bc9)), closes [#2994](https://github.com/apify/crawlee/issues/2994)\n* extract only `body` from `iframe` elements ([#2986](https://github.com/apify/crawlee/issues/2986)) ([c36166e](https://github.com/apify/crawlee/commit/c36166e24887ca6de12f0c60ef010256fa830c31)), closes [#2979](https://github.com/apify/crawlee/issues/2979)\n\n\n\n","publishedAt":"2025-06-05T15:06:37.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.6","media":[]},{"id":"rel_uojedNVwV1tDCqm8qW87X","version":"v3.13.5","title":"v3.13.5","summary":"## [3.13.5](https://github.com/apify/crawlee/compare/v3.13.4...v3.13.5) (2025-05-20)\n\n\n### Features\n\n* add `MinimumSpeedStream` and `ByteCounterStream...","content":"## [3.13.5](https://github.com/apify/crawlee/compare/v3.13.4...v3.13.5) (2025-05-20)\n\n\n### Features\n\n* add `MinimumSpeedStream` and `ByteCounterStream` helpers ([#2970](https://github.com/apify/crawlee/issues/2970)) ([921c4ee](https://github.com/apify/crawlee/commit/921c4ee3401bd41b8a197b955474bc297152e58b))\n* Allow the AdaptivePlaywrightCrawler result comparator to signal an inconclusive result ([#2975](https://github.com/apify/crawlee/issues/2975)) ([7ba8906](https://github.com/apify/crawlee/commit/7ba8906158e2dbc474de1b1e89937562abe76877))\n\n\n\n","publishedAt":"2025-05-20T08:29:58.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.5","media":[]},{"id":"rel_VtV8OzUCa3k44z4TykUD2","version":"v3.13.4","title":"v3.13.4","summary":"## [3.13.4](https://github.com/apify/crawlee/compare/v3.13.3...v3.13.4) (2025-05-14)\r\n\r\n\r\n### Bug Fixes\r\n\r\n* **core:** respect `systemInfoV2` in snaps...","content":"## [3.13.4](https://github.com/apify/crawlee/compare/v3.13.3...v3.13.4) (2025-05-14)\r\n\r\n\r\n### Bug Fixes\r\n\r\n* **core:** respect `systemInfoV2` in snapshotter ([#2961](https://github.com/apify/crawlee/issues/2961)) ([4100eab](https://github.com/apify/crawlee/commit/4100eabf171d1dfc33ff312cbedf4e178d34ebdf)), closes [#2958](https://github.com/apify/crawlee/issues/2958)\r\n* **core:** use short timeouts for periodic `KVS.setRecord` calls ([#2962](https://github.com/apify/crawlee/issues/2962)) ([d31d90e](https://github.com/apify/crawlee/commit/d31d90e5288ea80b3ed6ec4a75a4b8f87686a2c4))\r\n* **core:** optimize request unlocking to get rid of unnecessary unlock calls ([#2963](https://github.com/apify/crawlee/issues/2963)) ([a433037](https://github.com/apify/crawlee/commit/a433037f307ed3490a1ef5df334f1f9a9044510d))\r\n* **social:** extract emails from each text node separately ([#2952](https://github.com/apify/crawlee/issues/2952)) ([799afc1](https://github.com/apify/crawlee/commit/799afc1dbb6843efa9d585823674ea75b9b352ea))\r\n\r\n\r\n### Features\r\n\r\n* **impit-client:** bump `impit` version to v0.4 ([#2954](https://github.com/apify/crawlee/issues/2954)) ([7a1bf10](https://github.com/apify/crawlee/commit/7a1bf101250757d3a89f17c8bfd07267a46750bb))\r\n\r\n\r\n\r\n","publishedAt":"2025-05-14T13:19:14.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.4","media":[]},{"id":"rel_4W-5FkLPe3Y0If45mhRwY","version":"v3.13.3","title":"v3.13.3","summary":"## [3.13.3](https://github.com/apify/crawlee/compare/v3.13.2...v3.13.3) (2025-05-05)\r\n\r\n\r\n### Bug Fixes\r\n\r\n* await `_createPageForBrowser` in browser ...","content":"## [3.13.3](https://github.com/apify/crawlee/compare/v3.13.2...v3.13.3) (2025-05-05)\r\n\r\n\r\n### Bug Fixes\r\n\r\n* await `_createPageForBrowser` in browser pool ([#2950](https://github.com/apify/crawlee/issues/2950)) ([27ba74b](https://github.com/apify/crawlee/commit/27ba74bacfcaa0467e7d97eb27d6a9c1d9cea9be)), closes [#2789](https://github.com/apify/crawlee/issues/2789)\r\n* convert `@apilink` to `@link` on build ([#2949](https://github.com/apify/crawlee/issues/2949)) ([abe1dee](https://github.com/apify/crawlee/commit/abe1deeb87adef74ad9cabab97593243fcb29c0b)), closes [#2717](https://github.com/apify/crawlee/issues/2717)\r\n* disable default fingerprints in the Camoufox template ([#2928](https://github.com/apify/crawlee/issues/2928)) ([6dffa00](https://github.com/apify/crawlee/commit/6dffa00d2b2077e8caece3983ac555d4c629d4fe))\r\n* Fix trailing slash removal in BrowserPool ([#2921](https://github.com/apify/crawlee/issues/2921)) ([c1fc439](https://github.com/apify/crawlee/commit/c1fc439e8e9cf74808912c66a1915f1bfd345b5f)), closes [#2878](https://github.com/apify/crawlee/issues/2878)\r\n* Fix useState behavior in adaptive crawler ([#2941](https://github.com/apify/crawlee/issues/2941)) ([5282381](https://github.com/apify/crawlee/commit/52823818bd66995c1512b433e6d82755c487cb58))\r\n* Persist SitemapRequestList state periodically ([#2923](https://github.com/apify/crawlee/issues/2923)) ([e6e7a9f](https://github.com/apify/crawlee/commit/e6e7a9feed5d8281c36a83fc5edc2f5cb6e783fd)), closes [#2897](https://github.com/apify/crawlee/issues/2897)\r\n* respect `autoscaledPoolOptions.isTaskReadyFunction` option ([#2948](https://github.com/apify/crawlee/issues/2948)) ([fe2d206](https://github.com/apify/crawlee/commit/fe2d206b46afabb18c83e8af11fa03f085f4cd4e)), closes [#2922](https://github.com/apify/crawlee/issues/2922)\r\n* **statistics:** track actual request.retryCount in Statistics ([#2940](https://github.com/apify/crawlee/issues/2940)) ([c9f7f54](https://github.com/apify/crawlee/commit/c9f7f5494ac4895a30b283a5defe382db0cdea26))\r\n\r\n\r\n### Features\r\n\r\n* pass `response` to `FileDownload.streamHandler` ([#2930](https://github.com/apify/crawlee/issues/2930)) ([008c4c7](https://github.com/apify/crawlee/commit/008c4c7d879195a492bbbdb9dcda23acad4d51e1))\r\n\r\n\r\n\r\n","publishedAt":"2025-05-05T07:09:26.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.3","media":[]},{"id":"rel_1Dk0STaBW0mL6pQdAEN8P","version":"v3.13.2","title":"v3.13.2","summary":"## [3.13.2](https://github.com/apify/crawlee/compare/v3.13.1...v3.13.2) (2025-04-08)\n\n\n### Features\n\n* add `onSkippedRequest` option ([#2916](https://...","content":"## [3.13.2](https://github.com/apify/crawlee/compare/v3.13.1...v3.13.2) (2025-04-08)\n\n\n### Features\n\n* add `onSkippedRequest` option ([#2916](https://github.com/apify/crawlee/issues/2916)) ([764f992](https://github.com/apify/crawlee/commit/764f99203627b6a44d2ee90d623b8b0e6ecbffb5)), closes [#2910](https://github.com/apify/crawlee/issues/2910)\n\n\n\n","publishedAt":"2025-04-08T10:14:19.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.2","media":[]},{"id":"rel_jPGxQFAuFlErqRxZxPqwi","version":"v3.13.1","title":"v3.13.1","summary":"## [3.13.1](https://github.com/apify/crawlee/compare/v3.13.0...v3.13.1) (2025-04-07)\n\n\n### Bug Fixes\n\n* don't double increment session usage count in ...","content":"## [3.13.1](https://github.com/apify/crawlee/compare/v3.13.0...v3.13.1) (2025-04-07)\n\n\n### Bug Fixes\n\n* don't double increment session usage count in `BrowserCrawler` ([#2908](https://github.com/apify/crawlee/issues/2908)) ([3107e55](https://github.com/apify/crawlee/commit/3107e5511142a3579adc2348fcb6a9dcadd5c0b9)), closes [#2851](https://github.com/apify/crawlee/issues/2851)\n* rename `RobotsFile` to `RobotsTxtFile` ([#2913](https://github.com/apify/crawlee/issues/2913)) ([3160f71](https://github.com/apify/crawlee/commit/3160f717e865326476d78089d778cbc7d35aa58d)), closes [#2910](https://github.com/apify/crawlee/issues/2910)\n* treat `406` as other `4xx` status codes in `HttpCrawler` ([#2907](https://github.com/apify/crawlee/issues/2907)) ([b0e6f6d](https://github.com/apify/crawlee/commit/b0e6f6d3fc4455de467baf666e0f67f8738cc57f)), closes [#2892](https://github.com/apify/crawlee/issues/2892)\n\n\n### Features\n\n* add `respectRobotsTxtFile` crawler option ([#2910](https://github.com/apify/crawlee/issues/2910)) ([0eabed1](https://github.com/apify/crawlee/commit/0eabed1f13070d902c2c67b340621830a7f64464))\n\n\n\n","publishedAt":"2025-04-07T06:55:14.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.1","media":[]},{"id":"rel_epv8hFflstR60QVQP4zUA","version":"v3.13.0","title":"v3.13.0","summary":"# [3.13.0](https://github.com/apify/crawlee/compare/v3.12.2...v3.13.0) (2025-03-04)\n\n\n### Bug Fixes\n\n* **cheerio:** don't decode HTML entities in `con...","content":"# [3.13.0](https://github.com/apify/crawlee/compare/v3.12.2...v3.13.0) (2025-03-04)\n\n\n### Bug Fixes\n\n* **cheerio:** don't decode HTML entities in `context.body` ([#2838](https://github.com/apify/crawlee/issues/2838)) ([32d6d0e](https://github.com/apify/crawlee/commit/32d6d0ee7e7eaad1a401f4884926f31e0f68cc55)), closes [#2401](https://github.com/apify/crawlee/issues/2401)\n* install browser in the `camoufox` template correctly ([#2864](https://github.com/apify/crawlee/issues/2864)) ([a9d008c](https://github.com/apify/crawlee/commit/a9d008c6f36a6cb1b6bc827cb0323ed9d6f6b536)), closes [#2863](https://github.com/apify/crawlee/issues/2863)\n* Make log message in RequestQueue.isFinished more accurate ([#2848](https://github.com/apify/crawlee/issues/2848)) ([3d124ae](https://github.com/apify/crawlee/commit/3d124aee8f6fa096df0daafad4bb9d07b0ae4684))\n* Simplified RequestQueueV2 implementation ([#2775](https://github.com/apify/crawlee/issues/2775)) ([d1a094a](https://github.com/apify/crawlee/commit/d1a094a47eaecbf367b222f9b8c14d7da5d3e03a)), closes [#2767](https://github.com/apify/crawlee/issues/2767) [#2700](https://github.com/apify/crawlee/issues/2700)\n\n\n### Features\n\n* Camoufox-based crawler template ([#2842](https://github.com/apify/crawlee/issues/2842)) ([7f08de4](https://github.com/apify/crawlee/commit/7f08de4c73812cb957828dec9946ca7f385739e4)), closes [#2836](https://github.com/apify/crawlee/issues/2836)\n* improved cross platform metric collection ([#2834](https://github.com/apify/crawlee/issues/2834)) ([e41b2f7](https://github.com/apify/crawlee/commit/e41b2f744513dd80aa05336eedfa1c08c54d3832)), closes [#2771](https://github.com/apify/crawlee/issues/2771)\n* **playwright:** add `handleCloudflareChallenge` helper ([#2865](https://github.com/apify/crawlee/issues/2865)) ([9a1725f](https://github.com/apify/crawlee/commit/9a1725f7b87fb70194fc31858500cb35639fb964))\n* remove old docker CI ([#2831](https://github.com/apify/crawlee/issues/2831)) ([7f09d56](https://github.com/apify/crawlee/commit/7f09d56ed5776d92a11feee3a5e61255301d0099))\n* use native `impit` streaming ([#2833](https://github.com/apify/crawlee/issues/2833)) ([af2fe23](https://github.com/apify/crawlee/commit/af2fe2315b3b36e7e2466f452c1df9c63abd156b)), closes [#2756](https://github.com/apify/crawlee/issues/2756)\n\n\n\n","publishedAt":"2025-03-04T09:13:36.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.13.0","media":[]},{"id":"rel_fzGmsDGn7Fcv1WhsMjQhq","version":"v3.12.2","title":"v3.12.2","summary":"## [3.12.2](https://github.com/apify/crawlee/compare/v3.12.1...v3.12.2) (2025-01-27)\n\n\n### Bug Fixes\n\n* **core:** type definition of Dataset.reduce ([...","content":"## [3.12.2](https://github.com/apify/crawlee/compare/v3.12.1...v3.12.2) (2025-01-27)\n\n\n### Bug Fixes\n\n* **core:** type definition of Dataset.reduce ([#2774](https://github.com/apify/crawlee/issues/2774)) ([59bc6d1](https://github.com/apify/crawlee/commit/59bc6d12cbd9e81c06ee18d0a6390b7806e346ae)), closes [#2773](https://github.com/apify/crawlee/issues/2773)\n* destructure `CrawlerRunOptions` before passing them to `addRequests` ([#2803](https://github.com/apify/crawlee/issues/2803)) ([02a598c](https://github.com/apify/crawlee/commit/02a598c2a501957f04ca3a2362bcee289ef861c0)), closes [#2802](https://github.com/apify/crawlee/issues/2802)\n* graceful `BasicCrawler` tidy-up on `CriticalError` ([#2817](https://github.com/apify/crawlee/issues/2817)) ([53331e8](https://github.com/apify/crawlee/commit/53331e82ee66274316add7cadb4afec1ce2d4bcf)), closes [#2807](https://github.com/apify/crawlee/issues/2807)\n\n\n### Features\n\n* `impit`-based `HttpClient` implementation ([#2787](https://github.com/apify/crawlee/issues/2787)) ([61d7ffa](https://github.com/apify/crawlee/commit/61d7ffae8aff8dd4451fea63ecc0d25c243a6271))\n* add support for parsing comma-separated list environment variables ([#2765](https://github.com/apify/crawlee/issues/2765)) ([4e50c47](https://github.com/apify/crawlee/commit/4e50c474f60df66585c6decf07532c790c8e63a7))\n* stopping the crawlers gracefully with `BasicCrawler.stop()` ([#2792](https://github.com/apify/crawlee/issues/2792)) ([af2966f](https://github.com/apify/crawlee/commit/af2966f65caeaf4273fd0a8ab583a7857e4330ab)), closes [#2777](https://github.com/apify/crawlee/issues/2777)\n\n\n\n","publishedAt":"2025-01-27T08:16:29.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.12.2","media":[]},{"id":"rel_k9JmGEVaaeKy-2lf-Ahdq","version":"v3.12.1","title":"v3.12.1","summary":"## [3.12.1](https://github.com/apify/crawlee/compare/v3.12.0...v3.12.1) (2024-12-04)\n\n\n### Bug Fixes\n\n* log status message timeouts to debug level ([5...","content":"## [3.12.1](https://github.com/apify/crawlee/compare/v3.12.0...v3.12.1) (2024-12-04)\n\n\n### Bug Fixes\n\n* log status message timeouts to debug level ([55ee44a](https://github.com/apify/crawlee/commit/55ee44aaf5e73c2a9d96d973a4aae111ab2e0025))\n* **social:** support new URL formats for Facebook, YouTube and X ([#2758](https://github.com/apify/crawlee/issues/2758)) ([4c95847](https://github.com/apify/crawlee/commit/4c95847d5cedd6514620ccab31d5b242ba76de80)), closes [#525](https://github.com/apify/crawlee/issues/525)\n\n\n### Features\n\n* `tieredProxyUrls` accept `null` for switching the proxy off ([#2743](https://github.com/apify/crawlee/issues/2743)) ([82f4ea9](https://github.com/apify/crawlee/commit/82f4ea99f632526649ad73e3246b9bdf63a6788a)), closes [#2740](https://github.com/apify/crawlee/issues/2740)\n\n\n\n","publishedAt":"2024-12-04T09:26:53.000Z","url":"https://github.com/apify/crawlee/releases/tag/v3.12.1","media":[]}],"pagination":{"page":1,"pageSize":20,"totalPages":5,"totalItems":100},"summaries":{"rolling":{"windowDays":90,"summary":"Crawlee v3.16.0 focused on stability and correctness in adaptive crawling. The release fixed persistence of rendering type detection in the adaptive crawler, corrected HTTP redirect handling that was incorrectly changing request methods, and improved build cleanliness by removing turbo cache artifacts.","releaseCount":1,"generatedAt":"2026-04-11T14:06:14.669Z"},"monthly":[]}}