-
-
Notifications
You must be signed in to change notification settings - Fork 293
Expand file tree
/
Copy pathpnpm-workspace.yaml
More file actions
104 lines (98 loc) · 4.4 KB
/
Copy pathpnpm-workspace.yaml
File metadata and controls
104 lines (98 loc) · 4.4 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
93
94
95
96
97
98
99
100
101
102
103
104
cleanupUnusedCatalogs: true
linkWorkspacePackages: true
preferWorkspacePackages: true
blockExoticSubdeps: true
trustPolicy: 'no-downgrade'
minimumReleaseAge: 1440
minimumReleaseAgeExclude:
- '[email protected]' # root dev dependency (TS7-native engine); freshly published
- '[email protected]' # transitive dependency of [email protected]
# Working closely with the aimock team; the e2e suite often needs fresh
# releases of this test-only mock as it tracks provider SDK changes.
- '@copilotkit/aimock'
# Build-time devDep; 0.6.0 is the release carrying the dts-5/Vite-8 fix
# (TanStack/config#403) this toolchain migration depends on.
- '@tanstack/[email protected]'
trustPolicyExclude:
- '[email protected]' # existing transitive from sass/nitro; latest v4 with v5 available
- '[email protected]' # existing Babel/jscodeshift transitive; latest v5, released years ago
- '[email protected]' # existing Babel transitive; latest v6, released years ago
- '[email protected]' # existing @types/node transitive via happy-dom/vitest, types-only
# pnpm v11 dropped support for these fields in package.json — they must live
# here. See https://github.com/pnpm/pnpm/releases/tag/v11.0.0.
overrides:
abbrev: ^3.0.0
# TypeScript 7's `typescript` package no longer ships the JS Compiler API
# (`ts.sys`, `ts.createProgram`, etc.). These framework tools embed that API,
# have no TS7 fallback, and don't declare `typescript` themselves — so they
# resolve the root-hoisted TS7 and crash. Inject the API-complete 6.0.2 shim
# into their own node_modules so they resolve it before walking up to root.
packageExtensions:
'@sveltejs/package':
dependencies:
typescript: 'npm:@typescript/[email protected]'
svelte-check:
dependencies:
typescript: 'npm:@typescript/[email protected]'
vue-tsc:
dependencies:
typescript: 'npm:@typescript/[email protected]'
# knip drives the TS JS API, which TS7 dropped. Inject the 6.0.2 shim into
# its node_modules so it resolves it instead of the root-hoisted TS7. knip's
# peer range already caps at `<7`. (kiira 0.6.0 type-checks with the project's
# native TS7 compiler directly, so it no longer needs the shim.)
knip:
dependencies:
typescript: 'npm:@typescript/[email protected]'
# @analogjs/vite-plugin-angular (ai-angular's vitest transform) declares no
# typescript, so it grabs the root-hoisted TS7 and calls JS-API functions
# (ts.createIncrementalCompilerHost) that TS7 dropped. Angular also can't run
# on TS7 at all, so pin it to 5.9.3 (ai-angular's own version, Angular-
# supported) rather than the 6.0.2 shim.
'@analogjs/vite-plugin-angular':
dependencies:
typescript: 5.9.3
patchedDependencies:
'@changesets/[email protected]': patches/@[email protected]
packages:
- 'packages/*'
- 'packages/ai-code-mode/models-eval'
- 'examples/*'
- 'testing/*'
- 'codemods'
allowBuilds:
# Vite + every transitive bundler-step needs the platform-specific binary.
esbuild: true
# @google/genai (used by @tanstack/ai-gemini in CI) loads files generated by
# protobufjs's postinstall. Its own `preinstall` is a no-op echo and
# `prepare` only runs when developing the SDK from a git checkout, so it
# has no runtime effect on consumers.
protobufjs: true
# Expo/Metro reaches this through msgpackr and can use the native extractor.
msgpackr-extract: true
# Everything below is reachable only from dev scripts (wrangler dev,
# examples/ts-code-mode-web), is a perf optimisation with a working JS
# fallback, or has a no-op postinstall — none are required for `pnpm test:ci`
# to pass. Flip to true case-by-case if a future change relies on the script.
'@openrouter/sdk': false
'@parcel/watcher': false
isolated-vm: false
nx: false
puppeteer: false
sharp: false
unrs-resolver: false
workerd: false
'@google/genai': false
lmdb: true
# dockerode (@tanstack/ai-sandbox-docker) pulls these only for SSH-based
# Docker connections; the local-socket path the provider uses has a working
# JS fallback, so their native builds are not required.
cpu-features: false
ssh2: false
# Prisma and better-sqlite3 are peer-resolution artifacts only — no workspace
# package depends on them, so nothing imports the generated client or the
# native addon and their build scripts have nothing to produce for us.
'@prisma/client': false
'@prisma/engines': false
prisma: false
better-sqlite3: false