Commit 13d7d5a
fix(release): make publish-time build work under prod-only install
The new release flow's `pnpm install --filter <pkg>... --prod` install
broke for every workspace package that uses the standard `tsc --noEmit
&& tsdown` build script. Three independent root causes, all surfacing
at the Build step before reaching pnpm publish; verified locally for
@mysten/{sui,ledger-signer,walrus,docs,dapp-kit-core,dapp-kit-react,
enoki,seal,signers,aws-kms-signer,gcp-kms-signer,webcrypto-signer}.
(1) Workspace peer deps weren't being auto-installed under --prod.
21 packages declare @mysten/sui (and a few others) as both peerDep AND
devDep — the duplication satisfied dev installs while autoInstallPeers
was set to false in pnpm-workspace.yaml. Under --prod, the devDep entry
took precedence and was excluded, leaving sui unresolvable at build
time. Flipped autoInstallPeers: false -> true and dropped the
peer+devDep duplications across 22 package.jsons. Workspace peers now
auto-install under --prod, dev installs still get sui via the same
mechanism, and devDeps stay out of the release runner.
(2) packages/wallet-{sdk,standard} declared @mysten/sui as `*` in
peerDependencies. Wildcard ranges aren't satisfied by workspace
resolution, so pnpm pulled the npm-published @mysten/sui@2.16.0
alongside the workspace one — two distinct `Transaction` types caused
TS2322 errors throughout the dapp-kit / walrus chain. Switched to
`workspace:^` (resolves to ^<version> at publish), also a real
improvement vs. accepting any sui version.
(3) Source trees included build-time devDep imports the prod install
can't satisfy:
- packages/sui/src/transactions/__tests__/{Transaction,bcs}.test.ts
moved to test/unit/transactions/ (vitest is a workspace devDep).
- packages/dapp-kit-core/src/web/*.stories.ts moved to stories/
(@storybook/web-components is a workspace devDep). Updated
.storybook/main.ts glob, added stories/tsconfig.json mirroring
the test/ pattern, and chained the new project into test:typecheck
via `tsc -b ./test ./stories` so stories keep getting typechecked
outside the publish build. Verified `storybook build` and
`test:typecheck` both still pass.
- packages/docs/scripts/build-docs.ts dropped its `npx prettier`
post-processing — pure formatting of generated LLM markdown that
didn't need it, and prettier isn't in the prod install.
Also, in the release template:
- Added @types/semver to the tools list of release-{ledger-signer,
signers,ledgerjs-hw-app-sui}.yml. semver itself is a runtime dep;
only the types are devDep-only and tsc --noEmit needs them.
- Moved the artifact-slug step from after Build to after Checkout.
Previously, when Build failed, the always() artifact upload used
an empty slug and produced the invalid `name: tarball-`.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>1 parent 7429f15 commit 13d7d5a
42 files changed
Lines changed: 254 additions & 317 deletions
File tree
- .github/workflows
- packages
- dapp-kit/packages
- dapp-kit-core
- .storybook
- stories
- dapp-kit-react
- legacy
- deepbook-v3
- docs/scripts
- enoki-connect
- enoki
- kiosk
- pas
- payment-kit
- seal
- signers
- aws
- gcp
- ledger
- webcrypto
- slush-wallet
- suins
- sui
- src
- jsonRpc
- test/unit
- client
- transactions
- wallet-sdk
- wallet-standard
- walletconnect-wallet
- walrus
- zksend
- test
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
72 | 72 | | |
73 | 73 | | |
74 | 74 | | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
75 | 89 | | |
76 | 90 | | |
77 | 91 | | |
| |||
150 | 164 | | |
151 | 165 | | |
152 | 166 | | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | 167 | | |
166 | 168 | | |
167 | 169 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
31 | 31 | | |
32 | 32 | | |
33 | 33 | | |
34 | | - | |
| 34 | + | |
| 35 | + | |
35 | 36 | | |
36 | 37 | | |
37 | 38 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
| 11 | + | |
12 | 12 | | |
13 | 13 | | |
14 | 14 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
| 45 | + | |
46 | 46 | | |
47 | 47 | | |
48 | 48 | | |
| |||
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
60 | | - | |
61 | 60 | | |
62 | 61 | | |
63 | 62 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
7 | | - | |
| 6 | + | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
7 | | - | |
| 6 | + | |
| 7 | + | |
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
| |||
Lines changed: 12 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
0 commit comments