diff --git a/.changeset/fix-tui-components-bundling.md b/.changeset/fix-tui-components-bundling.md new file mode 100644 index 00000000..dfd2f680 --- /dev/null +++ b/.changeset/fix-tui-components-bundling.md @@ -0,0 +1,11 @@ +--- +"perstack": patch +--- + +fix(perstack): bundle @perstack/tui-components to fix npm install failure + +The private package @perstack/tui-components was listed as a runtime dependency, +causing npm install to fail when installing perstack from npm registry. + +Now @perstack/tui-components is bundled into the CLI build using tsup's noExternal +option, so it doesn't need to be published separately. diff --git a/apps/perstack/package.json b/apps/perstack/package.json index a76ce244..1b727c04 100644 --- a/apps/perstack/package.json +++ b/apps/perstack/package.json @@ -24,7 +24,6 @@ "@perstack/core": "workspace:*", "@perstack/react": "workspace:*", "@perstack/runtime": "workspace:*", - "@perstack/tui-components": "workspace:*", "commander": "^14.0.2", "dotenv": "^17.2.3", "ink": "^6.5.1", @@ -35,6 +34,7 @@ "devDependencies": { "@perstack/filesystem-storage": "workspace:*", "@perstack/runner": "workspace:*", + "@perstack/tui-components": "workspace:*", "@tsconfig/node22": "^22.0.5", "@types/node": "^25.0.3", "@types/react": "^19.2.7", diff --git a/apps/perstack/tsup.config.ts b/apps/perstack/tsup.config.ts index 2d9c52ff..ffbdb6ec 100644 --- a/apps/perstack/tsup.config.ts +++ b/apps/perstack/tsup.config.ts @@ -7,6 +7,8 @@ export const cliConfig: Options = { entry: { "bin/cli": "bin/cli.ts", }, + // Bundle private packages that won't be published to npm + noExternal: ["@perstack/tui-components"], } export default defineConfig(cliConfig) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 24d3f4c0..3e11e889 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -46,7 +46,7 @@ importers: version: 4.21.0 turbo: specifier: latest - version: 2.7.2 + version: 2.7.5 typescript: specifier: ^5.9.3 version: 5.9.3 @@ -164,9 +164,6 @@ importers: '@perstack/runtime': specifier: workspace:* version: link:../runtime - '@perstack/tui-components': - specifier: workspace:* - version: link:../../packages/tui-components commander: specifier: ^14.0.2 version: 14.0.2 @@ -192,6 +189,9 @@ importers: '@perstack/runner': specifier: workspace:* version: link:../../packages/runner + '@perstack/tui-components': + specifier: workspace:* + version: link:../../packages/tui-components '@tsconfig/node22': specifier: ^22.0.5 version: 22.0.5 @@ -3778,38 +3778,38 @@ packages: engines: {node: '>=18.0.0'} hasBin: true - turbo-darwin-64@2.7.2: - resolution: {integrity: sha512-dxY3X6ezcT5vm3coK6VGixbrhplbQMwgNsCsvZamS/+/6JiebqW9DKt4NwpgYXhDY2HdH00I7FWs3wkVuan4rA==} + turbo-darwin-64@2.7.5: + resolution: {integrity: sha512-nN3wfLLj4OES/7awYyyM7fkU8U8sAFxsXau2bYJwAWi6T09jd87DgHD8N31zXaJ7LcpyppHWPRI2Ov9MuZEwnQ==} cpu: [x64] os: [darwin] - turbo-darwin-arm64@2.7.2: - resolution: {integrity: sha512-1bXmuwPLqNFt3mzrtYcVx1sdJ8UYb124Bf48nIgcpMCGZy3kDhgxNv1503kmuK/37OGOZbsWSQFU4I08feIuSg==} + turbo-darwin-arm64@2.7.5: + resolution: {integrity: sha512-wCoDHMiTf3FgLAbZHDDx/unNNonSGhsF5AbbYODbxnpYyoKDpEYacUEPjZD895vDhNvYCH0Nnk24YsP4n/cD6g==} cpu: [arm64] os: [darwin] - turbo-linux-64@2.7.2: - resolution: {integrity: sha512-kP+TiiMaiPugbRlv57VGLfcjFNsFbo8H64wMBCPV2270Or2TpDCBULMzZrvEsvWFjT3pBFvToYbdp8/Kw0jAQg==} + turbo-linux-64@2.7.5: + resolution: {integrity: sha512-KKPvhOmJMmzWj/yjeO4LywkQ85vOJyhru7AZk/+c4B6OUh/odQ++SiIJBSbTG2lm1CuV5gV5vXZnf/2AMlu3Zg==} cpu: [x64] os: [linux] - turbo-linux-arm64@2.7.2: - resolution: {integrity: sha512-VDJwQ0+8zjAfbyY6boNaWfP6RIez4ypKHxwkuB6SrWbOSk+vxTyW5/hEjytTwK8w/TsbKVcMDyvpora8tEsRFw==} + turbo-linux-arm64@2.7.5: + resolution: {integrity: sha512-8PIva4L6BQhiPikUTds9lSFSHXVDAsEvV6QUlgwPsXrtXVQMVi6Sv9p+IxtlWQFvGkdYJUgX9GnK2rC030Xcmw==} cpu: [arm64] os: [linux] - turbo-windows-64@2.7.2: - resolution: {integrity: sha512-rPjqQXVnI6A6oxgzNEE8DNb6Vdj2Wwyhfv3oDc+YM3U9P7CAcBIlKv/868mKl4vsBtz4ouWpTQNXG8vljgJO+w==} + turbo-windows-64@2.7.5: + resolution: {integrity: sha512-rupskv/mkIUgQXzX/wUiK00mKMorQcK8yzhGFha/D5lm05FEnLx8dsip6rWzMcVpvh+4GUMA56PgtnOgpel2AA==} cpu: [x64] os: [win32] - turbo-windows-arm64@2.7.2: - resolution: {integrity: sha512-tcnHvBhO515OheIFWdxA+qUvZzNqqcHbLVFc1+n+TJ1rrp8prYicQtbtmsiKgMvr/54jb9jOabU62URAobnB7g==} + turbo-windows-arm64@2.7.5: + resolution: {integrity: sha512-G377Gxn6P42RnCzfMyDvsqQV7j69kVHKlhz9J4RhtJOB5+DyY4yYh/w0oTIxZQ4JRMmhjwLu3w9zncMoQ6nNDw==} cpu: [arm64] os: [win32] - turbo@2.7.2: - resolution: {integrity: sha512-5JIA5aYBAJSAhrhbyag1ZuMSgUZnHtI+Sq3H8D3an4fL8PeF+L1yYvbEJg47akP1PFfATMf5ehkqFnxfkmuwZQ==} + turbo@2.7.5: + resolution: {integrity: sha512-7Imdmg37joOloTnj+DPrab9hIaQcDdJ5RwSzcauo/wMOSAgO+A/I/8b3hsGGs6PWQz70m/jkPgdqWsfNKtwwDQ==} hasBin: true type-fest@4.41.0: @@ -7267,32 +7267,32 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - turbo-darwin-64@2.7.2: + turbo-darwin-64@2.7.5: optional: true - turbo-darwin-arm64@2.7.2: + turbo-darwin-arm64@2.7.5: optional: true - turbo-linux-64@2.7.2: + turbo-linux-64@2.7.5: optional: true - turbo-linux-arm64@2.7.2: + turbo-linux-arm64@2.7.5: optional: true - turbo-windows-64@2.7.2: + turbo-windows-64@2.7.5: optional: true - turbo-windows-arm64@2.7.2: + turbo-windows-arm64@2.7.5: optional: true - turbo@2.7.2: + turbo@2.7.5: optionalDependencies: - turbo-darwin-64: 2.7.2 - turbo-darwin-arm64: 2.7.2 - turbo-linux-64: 2.7.2 - turbo-linux-arm64: 2.7.2 - turbo-windows-64: 2.7.2 - turbo-windows-arm64: 2.7.2 + turbo-darwin-64: 2.7.5 + turbo-darwin-arm64: 2.7.5 + turbo-linux-64: 2.7.5 + turbo-linux-arm64: 2.7.5 + turbo-windows-64: 2.7.5 + turbo-windows-arm64: 2.7.5 type-fest@4.41.0: {}