Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
184 commits
Select commit Hold shift + click to select a range
d76650c
ci: test on node 22 and 24
B4nan May 17, 2025
9eb9aae
refactor: convert to native ESM
B4nan May 19, 2025
8a1c2bb
refactor: remove deprecated crawler options
B4nan May 20, 2025
ad349a4
refactor: make crawling context strict and remove the error fallback
B4nan May 20, 2025
da5dada
refactor: remove `additionalBlockedStatusCodes` parameter of `Session…
B4nan May 20, 2025
1a87646
refactor: remove `additionalBlockedStatusCodes` parameter of `Session…
B4nan May 20, 2025
04c37c3
chore: skip docker image builds for v4
B4nan May 20, 2025
b8c08e6
chore: use `v4` dist tag
B4nan May 20, 2025
25f3a69
chore: run tests on v4 branch
B4nan May 20, 2025
f1e8867
chore: fix build
B4nan May 20, 2025
88c511c
chore: fix v4 publishing
B4nan May 20, 2025
c7a5461
chore: use node 24 in e2e tests and project templates
B4nan May 21, 2025
e23347e
chore: improve types to get rid of some `as any`
B4nan Jun 4, 2025
7ce3d75
chore: remove some deadcode
B4nan Jun 4, 2025
71ceba0
chore: bump a few more dependencies
B4nan Jun 11, 2025
97fd383
fix CLI
B4nan Jun 11, 2025
a68e1f2
fix CLI 2
B4nan Jun 11, 2025
ff611de
fix: remove old system info implementation
B4nan Jun 11, 2025
8ba0794
chore: replace `lodash.isequal` with `util.isDeepStrictEqual`
B4nan Jun 17, 2025
267a50f
refactor!: Introduce the `ContextPipeline` abstraction (#3119)
janbuchar Nov 24, 2025
7c47064
feat: store `ProxyInfo` inside `Session` instances (#3199)
barjin Nov 26, 2025
27c3176
feat!: use native `Request` / `Response` interface (#3163)
barjin Nov 27, 2025
ddd945f
chore: fix build errors from `master` rebase (#3285)
barjin Dec 1, 2025
0ce63a1
chore: fix broken types in docs examples (#3287)
barjin Dec 1, 2025
ee74d7d
chore(docs): Add (temporary) 4.0 docs snapshot (#3292)
janbuchar Dec 2, 2025
a525224
chore: Fix HttpCrawler context types (#3291)
janbuchar Dec 2, 2025
da7bf32
fix: `KVS.getPublicUrl()` reads the public URL directly from storage …
barjin Dec 2, 2025
e921f8e
feat: replace `got`-specific `HttpRequest` with native `Request` inte…
barjin Dec 5, 2025
c95cb9f
feat: drop `gotOptions` params from the public interface (#3300)
barjin Dec 16, 2025
44fd52c
fix: patch `GotScrapingHttpClient` header handling and proxies (#3308)
barjin Dec 17, 2025
268cadf
feat: custom `httpClient` implementation for `@crawlee/utils` and `Re…
barjin Dec 18, 2025
e1e02ea
fix: log warning on sharing `useState()`, add `id` option to `BasicCr…
barjin Dec 18, 2025
78c6dc4
fix: `sendRequest` uses correct `Session` instance and allows for ove…
barjin Dec 18, 2025
4c3875e
feat: `fetch` API for custom http clients (#3326)
barjin Jan 20, 2026
f43a76f
chore: drop `got-scraping` as the direct `crawlee` dependency (#3358)
barjin Jan 21, 2026
41f4dae
chore: add `discoverValidSitemaps` utility (#3392)
barjin Feb 6, 2026
e1122f1
fix: Fix file download hang (#3411)
janbuchar Feb 16, 2026
5202be6
fix: rectify transformRequestFunction precedence rules (#3372)
l2ysho Feb 17, 2026
8f7e8d6
refactor!: Extract service management from Configuration into Service…
janbuchar Feb 23, 2026
aa9fc61
fix: treat `CookieJar` write methods as potentially throwing (#3426)
Copilot Feb 23, 2026
4ab1ff5
chore(deps): update got-scraping package (#3452)
l2ysho Feb 27, 2026
bca23fb
feat: decouple log configuration from apifylog (#3399)
l2ysho Mar 3, 2026
1c58253
refactor: use `ContextPipeline` to initialize `BasicCrawler`'s contex…
barjin Mar 4, 2026
b5bd71c
chore: Lint
janbuchar Mar 5, 2026
1555834
fix: Migrate StagehandCrawler to ContextPipeline
janbuchar Mar 6, 2026
c1f0810
chore: Fix more build issues
janbuchar Mar 6, 2026
8625fcd
chore: run linter
barjin Mar 9, 2026
6ba709c
docs: sync 4.0 version with the latest changes in `master`
barjin Mar 9, 2026
55db799
chore: fix TypeScript errors in tests
barjin Mar 9, 2026
052b890
docs: fix types in docs examples
barjin Mar 9, 2026
0ee89ab
chore: fix tests (new error messages)
barjin Mar 10, 2026
4ba67fc
chore: bump vitest to `beta`, fix failing ALS tests
barjin Mar 10, 2026
07c348b
feat: add `AbortSignal` and rename `timeout` → `timeoutMillis` in `Se…
Copilot Mar 10, 2026
b5f2b03
chore: Fix rebase conflict resolution errors
janbuchar Mar 11, 2026
39cc434
chore(memory-storage): sort dependencies and update yarn.lock (#3493)
l2ysho Mar 16, 2026
771740f
fix: improve ServiceConflictError message readability (#3480)
l2ysho Mar 16, 2026
9b03a79
feat: drop `useSessionPool` option, make `SessionPool` required in al…
barjin Mar 17, 2026
1815c4d
docs: add custom logger guide (#3473)
l2ysho Mar 17, 2026
39b62f2
refactor: use `BasicCrawler` session in browser launch context (#3489)
barjin Mar 18, 2026
1de7f59
refactor: move blocked HTTP status code management to `BasicCrawler` …
barjin Mar 19, 2026
a9e7a5d
feat: lazy-initialize `SessionPool`, drop `SessionPool.open()` (#3513)
barjin Mar 24, 2026
bf6475c
refactor: replace service locator forwarding object with Proxy (#3515)
B4nan Mar 25, 2026
9133c24
refactor: resolve last direct @apify/log calls
l2ysho Mar 25, 2026
5be1209
fix: Fix `skipNavigation` behavior in `HttpCrawler` subclasses (#3381)
janbuchar Mar 26, 2026
60e61ea
fix: clean-up cookie handling precedence rules (#3517)
barjin Mar 31, 2026
b5f18c4
fix(puppeteer-crawler): migrate cookie handling to browser-context AP…
B4nan Apr 15, 2026
cfa35ce
chore: migrate from eslint/biome to oxlint/oxfmt (#3569)
B4nan Apr 17, 2026
19f6541
feat: share `SessionPool` instance between crawlers (#3499)
barjin Apr 17, 2026
39d502b
feat: allow binding a Session instance to a Request (#3518)
barjin Apr 17, 2026
9f3e94e
chore: migrate to pnpm and enable minimum release age (#3581)
B4nan Apr 20, 2026
753a8a6
chore: migrate `patch-package` to `pnpm patch` (#3585)
barjin Apr 21, 2026
b84ca54
refactor!: Overhaul the StorageClient interface (#3570)
janbuchar Apr 22, 2026
dc58576
feat(`session-pool`): add `sessionReuseStrategy` option (#3587)
barjin Apr 23, 2026
4d7e935
refactor: move `describe` helper to `@crawlee/utils` as `inspectValue…
l2ysho Apr 27, 2026
fa621a6
chore: use `@apify/oxlint-config` as shared lint preset (#3607)
B4nan Apr 28, 2026
5ab0233
chore(deps-dev): bump oxlint to 1.62 and oxfmt to 0.46 (#3608)
B4nan Apr 28, 2026
894fbc7
chore: pass --no-error-on-unmatched-pattern to oxlint in lint-staged …
B4nan Apr 29, 2026
fa2eff5
feat: redesign `Configuration` class for v4 (#3484)
B4nan Apr 29, 2026
e941944
chore(ci): pin lerna's minimatch to v3 and fail step on lerna error
B4nan Apr 29, 2026
7784c1d
chore(ci): treat any non-prod dist-tag as canary in publish workflow
B4nan Apr 29, 2026
2df37a4
chore(ci): bake --yes into publish scripts
B4nan Apr 29, 2026
fae93d6
chore(ci): restore Docker image dispatch, gated to master
B4nan Apr 29, 2026
bc3cc1c
refactor!: remove `tieredProxyUrls` support (#3599)
barjin Apr 30, 2026
90d693b
fix(linkedom-crawler): declare cheerio as a dependency (#3620)
B4nan Apr 30, 2026
4fcd232
feat: reuse `Sessions` correctly in `BasicCrawler` (#3605)
barjin May 4, 2026
9b9c623
feat: rename `persistCookiesPerSession` to `saveResponseCookies`, var…
barjin May 6, 2026
ba88ff8
refactor!: treat session errors as regular request retries (#3631)
barjin May 11, 2026
4aed3bf
refactor!: Rename StorageManager to StorageInstanceManager and use it…
janbuchar May 11, 2026
9db9ed1
refactor: add `Configuration.reset()` static method (#3649)
B4nan May 12, 2026
3b26e97
chore: migrate v4 to pnpm 11 (#3645)
B4nan May 12, 2026
8049837
ci: disable pnpm 11's verifyDepsBeforeRun to unbreak parallel turbo c…
B4nan May 13, 2026
75f848a
refactor: revert Configuration.reset() static method (#3651)
B4nan May 13, 2026
b3671b6
refactor!: remove the `EventEmitter` interface from `SessionPool` (#3…
barjin May 15, 2026
270e158
feat: export `SessionPool` interface, minimize `ISession`, allow cust…
barjin May 25, 2026
73fa17f
chore: bump puppeteer to 25 and playwright to 1.60 (#3703)
barjin Jun 1, 2026
0c76a11
refactor!: Align `DatasetClient` and `KeyValueStoreClient` interfaces…
janbuchar Jun 1, 2026
9b2dc45
feat: Implement storage aliases (#3636)
janbuchar Jun 4, 2026
1edc316
feat: store browser / HTTP client fingerprint in Session (#3646)
barjin Jun 5, 2026
347e198
feat: allow navigation hooks to override crawling context members (#3…
barjin Jun 8, 2026
62b82f3
refactor!: Finalize transition to IRequestManager and IRequestLoader …
janbuchar Jun 9, 2026
3be90b3
refactor!: Introduce IBrowserPool interface and utilize it in Browser…
janbuchar Jun 10, 2026
f32a5bf
refactor!: Align `RequestQueueClient` interface with its Python count…
janbuchar Jun 15, 2026
170a073
refactor!: Split MemoryStorage into FileSystemStorageClient and Memor…
janbuchar Jun 17, 2026
325230b
feat: make `impit` the default HTTP client (#3767)
barjin Jun 23, 2026
a510ce0
docs: reflect the recent `SessionPool` changes in a guide (#3724)
barjin Jun 24, 2026
aa8e7a5
refactor!: Centralize KVS value semantics in @crawlee/core (#3774)
janbuchar Jun 24, 2026
bf08a65
feat: rename KVS objects from `SDK_` to `CRAWLEE_` (#3783)
barjin Jun 26, 2026
c30448e
fix: read content encoding hints from `<meta>` tags (#3780)
barjin Jun 30, 2026
93c1dd3
fix: disable storage access on `requestHandler` timeouts (#3788)
barjin Jul 1, 2026
4b97c12
docs: Autogenerated public API documentation (#3798)
janbuchar Jul 1, 2026
168ce8a
refactor!: Dissolve @crawlee/memory-storage into @crawlee/core (#3802)
janbuchar Jul 1, 2026
bb435db
fix: `RequestManagerTandem` returns correct total count (#3804)
barjin Jul 1, 2026
f1852d6
fix: Prevent browser-based crawling mode in AdaptivePlaywrightCrawler…
janbuchar Jul 1, 2026
4065e2c
fix(e2e): repair E2E test infrastructure for pnpm + crawlee v4 (#3805)
janbuchar Jul 2, 2026
10b50bf
fix: Fix repeated Storage.open() using the legacy idOrName parameter …
janbuchar Jul 2, 2026
5804787
fix: Rectify inconsistencies in the StorageClient interface family (#…
janbuchar Jul 5, 2026
73b8740
test: Eliminate MemoryStorageEmulator (#3806)
janbuchar Jul 5, 2026
5b8d7f8
refactor!: Rewrite the FilesystemStorageClient to use apify/crawlee-s…
janbuchar Jul 5, 2026
db2ec41
refactor!: Move status message handling from StorageClient to the eve…
janbuchar Jul 5, 2026
bf70b7e
fix(memory-storage): store JSON snapshots in `DatasetClient.pushData(…
AmariahAK Jul 9, 2026
f8e49da
refactor!: Rename `StorageClient` to `StorageBackend` (#3825)
janbuchar Jul 13, 2026
f31615f
ci: exclude `@crawlee/fs-storage-native` from canary/pin version rewr…
B4nan Jul 13, 2026
df360fb
feat: connect to remote browser services (#3545)
l2ysho Jul 14, 2026
f1731f0
feat: unify extended unique key format with Python, add `alwaysEnqueu…
barjin Jul 15, 2026
a437f86
chore: fix `v4` CI build issues (#3856)
barjin Jul 15, 2026
48d0941
feat: make `cheerio` and `proxy-chain` imports dynamic (#3836)
barjin Jul 15, 2026
f0b4720
chore: make `format:check` actually check the formatting (#3858)
B4nan Jul 15, 2026
da680c1
test: run the browser crawler tests serially (#3859)
B4nan Jul 15, 2026
aceb6c0
chore: fix master-v4 rebase issues
barjin Jul 20, 2026
a0ba92d
chore: regenerate TypeScript API reports
barjin Jul 20, 2026
3d0b31a
chore: fix oxlint errors
barjin Jul 20, 2026
d67c617
chore(ci): fix failing e2e and docs actions after rebase (#3874)
barjin Jul 21, 2026
c6f3256
feat: move autoscaling helpers to `@crawlee/core` (#3835)
barjin Jul 21, 2026
7b0a5b1
fix: remove noisy implicit configuration warning from service locator…
barjin Jul 21, 2026
3e87467
fix: Invoke deferred cleanup after error handling (#3876)
janbuchar Jul 22, 2026
b317a47
test: fix storage pollution in browser crawler tests (#3861)
B4nan Jul 22, 2026
088dc38
refactor!: Remove unnecessary parameters to storage frontend construc…
janbuchar Jul 22, 2026
469ef94
chore: Exclude internal symbols from public API docs (#3882)
janbuchar Jul 23, 2026
b3d2b09
fix: Fix ErrorHandler type (#3881)
janbuchar Jul 23, 2026
ca772a5
feat: use crawler id for `Statistics` and non-default `RequestQueue`s…
barjin Jul 23, 2026
bc5812b
refactor: Introduce IProxyConfiguration (#3892)
janbuchar Jul 24, 2026
58f9401
refactor!: Privatize unintentionally exposed internals (#3893)
janbuchar Jul 24, 2026
72fdabf
feat: Finalize AdaptivePlaywrightCrawler (#3907)
janbuchar Jul 24, 2026
f7129d1
fix: Run extendContext before navigation hooks (#3908)
janbuchar Jul 24, 2026
faf5726
docs: Fill in missing stuff in upgrading guide (#3914)
janbuchar Jul 27, 2026
00437df
refactor: Introduce OwnedOrInjected dependency tracking helper (#3891)
janbuchar Jul 27, 2026
829299b
chore: Hide ignored symbols in public API spec (#3915)
janbuchar Jul 27, 2026
f18c957
refactor: move debug helpers to `@crawlee/core` (#3916)
barjin Jul 29, 2026
7319310
feat: infer router route map on the crawler & type request inputs (#3…
B4nan Jul 29, 2026
fb75701
refactor!: unify `config` and `configuration` naming (#3926)
B4nan Jul 29, 2026
979ec3e
refactor!: remove unused exports from `@crawlee/utils` (#3929)
barjin Jul 30, 2026
ef6ad42
refactor!: Split off ConcurrencySystem from AutoscaledPool (#3917)
janbuchar Jul 30, 2026
bffcb1e
refactor: Introduce IRenderingTypePredictor and unify the ownership p…
janbuchar Jul 31, 2026
c4213b0
refactor: drop re-exported types from `@crawlee/utils` (#3931)
barjin Jul 31, 2026
237c821
refactor: move buffer and stream helpers to `@crawlee/core` (#3928)
barjin Jul 31, 2026
ed0c9d8
refactor!: Make AutoscaledPool internal (#3947)
janbuchar Aug 3, 2026
acb5f24
fix(core): log a warning on malformed cookie fragments in `mergeCooki…
barjin Aug 3, 2026
6636f4b
refactor: move async iterable helpers to `@crawlee/core` (#3930)
barjin Aug 3, 2026
f021af5
fix(core): preserve subclass overrides when binding methods to a scop…
B4nan Aug 3, 2026
8dbcd63
fix(browser-crawler): persist session cookies after requestHandler (#…
Ayush7614 Aug 4, 2026
0ddb865
feat: redesign request timeouts and allow per-route overrides (#3860)
B4nan Aug 5, 2026
0ef731e
refactor: Remove unnecessary retries when enqueueing new requests (#3…
janbuchar Aug 5, 2026
fb3afb3
chore: Improve public API snapshot generation (#3964)
janbuchar Aug 5, 2026
1b4dc3c
feat: simplify `enqueueLinks` interface (#3533)
l2ysho Aug 5, 2026
2d262a9
chore: Add missing upgrading guide entries (#3965)
janbuchar Aug 5, 2026
0ff70b1
docs: Reorganize the v4 upgrading guide (#3967)
janbuchar Aug 5, 2026
2470c7e
refactor: drop `fs-extra` dependency (#3969)
barjin Aug 6, 2026
77f20f2
perf: lazy-load `cheerio` in `playwright`/`puppeteer` `parseWithCheer…
barjin Aug 6, 2026
f474472
docs: document removal of gotoOptions argument from browser navigatio…
B4nan Aug 6, 2026
dc00ed4
docs: Update SessionPool section in upgrading guide (#3974)
janbuchar Aug 6, 2026
954beb1
test: fix flaky gotoOptions assertion in browser crawler test (#3973)
B4nan Aug 6, 2026
9a55bb4
refactor!: Accept a pre-configured Statistics instance in crawlers in…
janbuchar Aug 6, 2026
d34179e
feat: add user data generics to browser navigation hooks (#3970)
B4nan Aug 6, 2026
c94808c
feat!: Transactional storage access (#3953)
janbuchar Aug 6, 2026
9cd3d16
docs: Document LoadSignal customization for ConcurrencySystem (#3976)
janbuchar Aug 6, 2026
8396f39
refactor!: use native private class fields and remove underscore pref…
B4nan Aug 6, 2026
ceda174
fix: don't ship `idcac-playwright` as a hard dependency (#3977)
barjin Aug 7, 2026
08fb721
fix: declare own `CookieJar` types in `@crawlee/types` (#3978)
barjin Aug 7, 2026
98f62d5
fix(browser-pool): make PlaywrightBrowser.browserType() return the br…
B4nan Aug 7, 2026
5be8c82
perf: lazy-load `file-type` and `csv-stringify` (#3989)
barjin Aug 7, 2026
030c555
feat(core): pass Request to onSkippedRequest, lazily so it's only bui…
barjin Aug 7, 2026
da8d7d0
docs: note onSkippedRequest signature change in v4 upgrading guide
barjin Aug 7, 2026
d3f8906
fix(core): drop misleading Request cast on requestsOverLimit in enque…
barjin Aug 10, 2026
0c8731b
perf(core): avoid retaining full skipped requests when onSkippedReque…
barjin Aug 10, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
13 changes: 2 additions & 11 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,21 +25,12 @@ jobs:
node-version: 24
package-manager-cache: false

- name: Enable corepack
run: |
corepack enable
corepack prepare yarn@stable --activate
- uses: apify/workflows/pnpm-install@main

- name: Build & deploy docs
run: |
# install project deps
yarn
# go to website dir
cd website
# install website deps
yarn
# build the docs
yarn build
pnpm build
env:
APIFY_SIGNING_TOKEN: ${{ secrets.APIFY_SIGNING_TOKEN }}
SEGMENT_TOKEN: ${{ secrets.SEGMENT_TOKEN }}
Expand Down
27 changes: 8 additions & 19 deletions .github/workflows/publish-to-npm.yml
Original file line number Diff line number Diff line change
Expand Up @@ -49,16 +49,6 @@ jobs:
node-version: 24
package-manager-cache: false

- name: Enable corepack
run: |
corepack enable
corepack prepare yarn@stable --activate

- name: Activate cache for Node.js 24
uses: actions/setup-node@v7
with:
cache: 'yarn'

- name: Turbo cache
id: turbo-cache
uses: actions/cache@v6
Expand All @@ -68,19 +58,18 @@ jobs:
restore-keys: |
turbo-${{ github.job }}-${{ github.ref_name }}-

- name: Install dependencies
run: yarn
- uses: apify/workflows/pnpm-install@main

- name: Build packages
run: yarn ci:build
run: pnpm ci:build

- name: Bump canary versions
if: inputs.dist-tag == 'next'
if: inputs.dist-tag != 'prod'
run: |
yarn turbo copy --force -- --canary --preid=beta
pnpm turbo copy --force -- --canary=major --preid=beta

- name: Commit changes
if: inputs.dist-tag == 'next'
if: inputs.dist-tag != 'prod'
uses: EndBug/add-and-commit@v10
id: commit
with:
Expand All @@ -96,17 +85,17 @@ jobs:
timeout_minutes: 10
max_attempts: 5
retry_wait_seconds: 30
command: git checkout . && yarn publish:prod --yes
command: git checkout . && pnpm publish:prod
env:
GH_TOKEN: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}

- name: Publish to NPM (@next)
if: inputs.dist-tag == 'next'
if: inputs.dist-tag != 'prod'
uses: nick-fields/retry@v4
with:
timeout_minutes: 10
max_attempts: 5
retry_wait_seconds: 30
command: git checkout . && yarn publish:next --yes
command: git checkout . && pnpm publish:next
env:
GH_TOKEN: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}
76 changes: 14 additions & 62 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
name: Release @latest

env:
YARN_IGNORE_NODE: 1
RETRY_TESTS: 1

on:
Expand Down Expand Up @@ -37,7 +36,7 @@ jobs:
matrix:
# We don't test on Windows as the tests are flaky
os: [ ubuntu-22.04 ]
node-version: [ 20, 22, 24 ]
node-version: [ 22, 24 ]

runs-on: ${{ matrix.os }}

Expand All @@ -51,16 +50,6 @@ jobs:
node-version: ${{ matrix.node-version }}
package-manager-cache: false

- name: Enable corepack
run: |
corepack enable
corepack prepare yarn@stable --activate

- name: Activate cache for Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v7
with:
cache: 'yarn'

- name: Turbo cache
id: turbo-cache
uses: actions/cache@v6
Expand All @@ -70,26 +59,16 @@ jobs:
restore-keys: |
turbo-${{ github.job }}-${{ github.ref_name }}-

- name: Install Dependencies
run: yarn

- name: Cache Playwright browsers
uses: actions/cache@v6
with:
path: ~/.cache/ms-playwright
key: playwright-${{ runner.os }}-${{ hashFiles('**/yarn.lock') }}
restore-keys: |
playwright-${{ runner.os }}-
- uses: apify/workflows/pnpm-install@main

- name: Install Playwright browsers
timeout-minutes: 10
run: yarn playwright install --with-deps
run: pnpm exec playwright install --with-deps

- name: Build
run: yarn ci:build
run: pnpm ci:build

- name: Tests
run: yarn test
run: pnpm test

release:
name: "Bump Crawlee: ${{ inputs.version }} version (${{ inputs.custom_version || 'n/a' }} custom version)"
Expand All @@ -110,16 +89,6 @@ jobs:
node-version: 24
package-manager-cache: false

- name: Enable corepack
run: |
corepack enable
corepack prepare yarn@stable --activate

- name: Activate cache for Node.js 24
uses: actions/setup-node@v7
with:
cache: 'yarn'

- name: Turbo cache
id: turbo-cache
uses: actions/cache@v6
Expand All @@ -129,15 +98,14 @@ jobs:
restore-keys: |
turbo-${{ github.job }}-${{ github.ref_name }}-

- name: Install Dependencies
run: yarn
- uses: apify/workflows/pnpm-install@main

- name: Build
run: yarn ci:build
run: pnpm ci:build

- name: Bump version to custom version
if: ${{ github.event.inputs.version == 'custom' && github.event.inputs.custom_version != '' }}
run: yarn lerna version ${{ github.event.inputs.custom_version }} --force-publish --yes
run: pnpm exec lerna version ${{ github.event.inputs.custom_version }} --force-publish --yes
env:
GH_TOKEN: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}
GIT_AUTHOR_NAME: Apify Release Bot
Expand All @@ -147,7 +115,7 @@ jobs:

- name: Bump version to ${{ github.event.inputs.version }} version
if: ${{ github.event.inputs.version != 'custom' }}
run: yarn lerna version ${{ github.event.inputs.version }} --force-publish --yes
run: pnpm exec lerna version ${{ github.event.inputs.version }} --force-publish --yes
env:
GH_TOKEN: ${{ secrets.APIFY_SERVICE_ACCOUNT_GITHUB_TOKEN }}
GIT_AUTHOR_NAME: Apify Release Bot
Expand All @@ -157,8 +125,8 @@ jobs:

- name: Pin versions in internal dependencies and update lockfile
run: |
yarn release:pin-versions
yarn install --no-immutable
pnpm release:pin-versions
pnpm install --no-frozen-lockfile

- name: Commit changes
id: commit
Expand Down Expand Up @@ -208,23 +176,7 @@ jobs:
- name: Install jq
run: sudo apt-get install jq

- name: Enable corepack
run: |
corepack enable
corepack prepare yarn@stable --activate

- name: Activate cache for Node.js 24
uses: actions/setup-node@v7
with:
cache: 'yarn'

- name: Install dependencies
run: |
# install project deps
yarn
# install website deps
cd website
yarn
- uses: apify/workflows/pnpm-install@main

- name: Snapshot the current version
run: |
Expand All @@ -236,8 +188,8 @@ jobs:
fi
echo "VERSION=$VERSION" >> "$GITHUB_ENV"
MAJOR_MINOR=$(echo $VERSION | cut -d. -f1,2)
yarn docusaurus docs:version $MAJOR_MINOR
yarn docusaurus api:version $MAJOR_MINOR
pnpm docusaurus docs:version $MAJOR_MINOR
pnpm docusaurus api:version $MAJOR_MINOR

- name: Commit and push the version snapshot
uses: EndBug/add-and-commit@v10
Expand Down
Loading
Loading