-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Expand file tree
/
Copy pathpnpm-workspace.yaml
More file actions
92 lines (84 loc) · 3.61 KB
/
Copy pathpnpm-workspace.yaml
File metadata and controls
92 lines (84 loc) · 3.61 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
packages:
- packages/*
- docs
- website
catalog:
zod: ^4.4.3
minimumReleaseAge: 1440
minimumReleaseAgeExclude:
- "@apify/*"
- "@crawlee/*"
- "apify-client"
- "apify"
- "crawlee"
- "got-scraping"
overrides:
playwright-core: 1.61.1
"@browserbasehq/stagehand": 3.0.7
# Dedup minimatch to v9 everywhere except inside lerna — lerna 9.x's bundled
# code (`__toESM(require('minimatch')).default(...)`) only works with v3,
# whose CJS export *is* the function. Pinning v9 there caused the publish
# step to silently report 0 changed packages.
minimatch: "^9.0.0"
tmp: "^0.2.7"
"@puppeteer/browsers": "^3.0.4"
form-data: "^4.0.6"
tar: "^7.5.16"
"lerna>js-yaml": "^4.2.0"
"lerna>minimatch": "^3.1.4"
# The e2e tests run the `apify` SDK against the local 4.x workspace packages.
# The default `latest`/`next` tags are the 3.x SDK, which is not runtime
# compatible with `@crawlee/core@4` (e.g. `Configuration.INTEGER_VARS` was
# removed), so keep the SDK on the latest v4 beta and force it to use the workspace `@crawlee/*`
# packages (mirroring the per-actor `overrides.apify` used for PLATFORM tests).
apify: "^4.0.0-beta.24"
"apify>@crawlee/core": "workspace:*"
"apify>@crawlee/types": "workspace:*"
"apify>@crawlee/utils": "workspace:*"
# header-generator (via fingerprint-generator, a direct dependency of @crawlee/browser-pool)
# bundles its own ow@0.28.2, while all @crawlee/* packages depend on ow@2.0.0 directly. The two
# copies' predicate types are nominally distinct (branded symbols), so a type built with one
# doesn't satisfy a shape built with the other — this broke `@crawlee/stagehand`'s build with
# `optionsShape`/`exactShape` mismatches. header-generator's ow usage is limited to the
# long-stable basic predicate API (string/number/object.exactShape/oneOf/ofType), so it's safe
# to dedupe onto the same major version everyone else uses.
"header-generator>ow": "^2.0.0"
# pnpm 11 replaces `onlyBuiltDependencies` with an explicit `allowBuilds` map.
# Each entry must be true (build allowed) or false (build skipped) — pnpm 11
# refuses to install if any dep needs a build decision that isn't in the map
# (combined with `strictDepBuilds: false` below so the install can still
# proceed when new build-requesting deps appear without a manual entry).
allowBuilds:
"@apify/ui-icons": true
"@playwright/browser-chromium": true
"@playwright/browser-firefox": true
"@playwright/browser-webkit": true
"@swc/core": true
better-sqlite3: true
bufferutil: true
core-js: true
core-js-pure: false
esbuild: true
nx: true
protobufjs: true
puppeteer: true
unrs-resolver: true
strictDepBuilds: false
# pnpm 11 wraps every `pnpm run X` with an automatic `pnpm install` (the
# `runDepsStatusCheck` feature) so scripts always see fresh deps. The
# publish workflow runs `pnpm turbo copy --force -- --canary=major` which
# fans `pnpm run copy` out across all 23 workspace packages in parallel —
# each invocation kicks off its own `pnpm install`, they contend on the
# store and lockfile, and one of them gets killed with SIGINT, failing the
# turbo task with "command exited (1)". Disabling the auto-install keeps
# the parallel scripts deterministic; we run `pnpm install --frozen-lockfile`
# explicitly in CI before any `pnpm run` step anyway.
verifyDepsBeforeRun: false
nodeLinker: hoisted
linkWorkspacePackages: true
preferWorkspacePackages: true
publicHoistPattern:
- "*"
patchedDependencies:
'@docusaurus/core@3.10.2': patches/@docusaurus__core@3.10.2.patch
'@signalwire/docusaurus-plugin-llms-txt@1.2.2': patches/@signalwire__docusaurus-plugin-llms-txt@1.2.2.patch