From 2b2052e3459f51eac3aed751fe59bee93cf182ba Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Sun, 24 Aug 2025 21:53:17 +0800 Subject: [PATCH 01/13] fix(root): add packageManager field in package.json to comply with Turbo v2 requirement --- package.json | 1 + 1 file changed, 1 insertion(+) diff --git a/package.json b/package.json index 0c2102f7..62e5621f 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,7 @@ "contract" ] }, + "packageManager": "npm@10.2.3", "dependencies": { "@midnight-ntwrk/compact-runtime": "^0.8.1", "@midnight-ntwrk/dapp-connector-api": "^3.0.0", From f0fca5524c8d22e2ac3f5fbee03d61799bacc30c Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Sun, 24 Aug 2025 21:54:34 +0800 Subject: [PATCH 02/13] fix(root): move turbo.json to repo root to comply with Turbo v2 requirement --- bboard-cli/turbo.json => turbo.json | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename bboard-cli/turbo.json => turbo.json (100%) diff --git a/bboard-cli/turbo.json b/turbo.json similarity index 100% rename from bboard-cli/turbo.json rename to turbo.json From 7d02ceb7cbae7239d6d2feb76b9ba8c2d0749546 Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Sun, 24 Aug 2025 21:55:11 +0800 Subject: [PATCH 03/13] fix(turbo): replace deprecated `outputMode` with `outputLogs` in turbo.json for Turbo v2 --- turbo.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/turbo.json b/turbo.json index ad6effd3..668f4fb2 100644 --- a/turbo.json +++ b/turbo.json @@ -4,16 +4,16 @@ "pipeline": { "build": { "dependsOn": ["compact"], - "outputMode": "new-only", + "outputLogs": "new-only", "inputs": ["src/**/*.ts", "src/**/*.mts", "src/**/*.tsx", "!src/**/*.test.ts", "tsconfig.json", "tsconfig.build.json"], "outputs": ["dist/**"] }, "lint": { - "outputMode": "new-only", + "outputLogs": "new-only", "dependsOn": ["compact", "build"] }, "test": { - "outputMode": "new-only", + "outputLogs": "new-only", "dependsOn": ["build", "compact"], "inputs": ["src/**/*.ts", "jest.config.ts", "tsconfig.json", "*.yml", "dist/**/.js"], "outputs": ["reports/**"] From 5faff54aa97b2f07db817da85b527d6ff296c02b Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Sun, 24 Aug 2025 21:55:43 +0800 Subject: [PATCH 04/13] fix(turbo): rename `pipeline` to `tasks` in turbo.json for Turbo v2 --- turbo.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/turbo.json b/turbo.json index 668f4fb2..500faf01 100644 --- a/turbo.json +++ b/turbo.json @@ -1,7 +1,7 @@ { "extends": ["//"], "$schema": "https://turbo.build/schema.json", - "pipeline": { + "tasks": { "build": { "dependsOn": ["compact"], "outputLogs": "new-only", From 395609a766db02882a1164da9d76c262385b2178 Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Sun, 24 Aug 2025 22:02:00 +0800 Subject: [PATCH 05/13] fix(turbo): update `dependsOn` syntax for Turbo v2 to reference correct compact task --- turbo.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/turbo.json b/turbo.json index 500faf01..1344e52f 100644 --- a/turbo.json +++ b/turbo.json @@ -3,18 +3,18 @@ "$schema": "https://turbo.build/schema.json", "tasks": { "build": { - "dependsOn": ["compact"], + "dependsOn": ["^compact"], "outputLogs": "new-only", "inputs": ["src/**/*.ts", "src/**/*.mts", "src/**/*.tsx", "!src/**/*.test.ts", "tsconfig.json", "tsconfig.build.json"], "outputs": ["dist/**"] }, "lint": { "outputLogs": "new-only", - "dependsOn": ["compact", "build"] + "dependsOn": ["^compact", "build"] }, "test": { "outputLogs": "new-only", - "dependsOn": ["build", "compact"], + "dependsOn": ["build", "^compact"], "inputs": ["src/**/*.ts", "jest.config.ts", "tsconfig.json", "*.yml", "dist/**/.js"], "outputs": ["reports/**"] } From f158a5663b7ca8fa3d8eb12bfb062d36b5cd061e Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Sun, 24 Aug 2025 22:02:13 +0800 Subject: [PATCH 06/13] chore: add .turbo to .gitignore --- .gitignore | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 1bbe080e..2523f928 100644 --- a/.gitignore +++ b/.gitignore @@ -58,4 +58,7 @@ jspm_packages/ *.sln # Compact -managed/ \ No newline at end of file +managed/ + +# Turbo +.turbo \ No newline at end of file From 072e28247de71a24b3c7756c814a6cb158d9eaaa Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Wed, 3 Sep 2025 11:14:35 +0800 Subject: [PATCH 07/13] Fix: update packageManager to npm@11.5.2 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 70abb737..4aff1b1c 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "contract" ] }, - "packageManager": "npm@10.2.3", + "packageManager": "npm@11.5.2", "dependencies": { "@midnight-ntwrk/compact-runtime": "^0.8.1", "@midnight-ntwrk/dapp-connector-api": "^3.0.0", From 753a0f59b3e6edb90168d230fab4d3c4537a886f Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Wed, 3 Sep 2025 11:21:33 +0800 Subject: [PATCH 08/13] config: Set packageManager to yarn@1.22.22 --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 4aff1b1c..95ac4a68 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ "contract" ] }, - "packageManager": "npm@11.5.2", + "packageManager": "yarn@1.22.22", "dependencies": { "@midnight-ntwrk/compact-runtime": "^0.8.1", "@midnight-ntwrk/dapp-connector-api": "^3.0.0", From ce69d574b758f0ec0b02f99fdb0593173269c27a Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Wed, 3 Sep 2025 11:37:07 +0800 Subject: [PATCH 09/13] chore: run standalone using ts-node/esm from source instead of compiled JS --- bboard-cli/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bboard-cli/package.json b/bboard-cli/package.json index d0470c58..9b00bee7 100644 --- a/bboard-cli/package.json +++ b/bboard-cli/package.json @@ -10,7 +10,7 @@ "ci": "npm run typecheck && npm run lint && npm run build", "lint": "eslint src", "prepack": "npm run build", - "standalone": "docker compose -f standalone.yml pull && node --experimental-specifier-resolution=node dist/launcher/standalone.js", + "standalone": "docker compose -f standalone.yml pull && node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/standalone.ts", "testnet-remote": "node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/testnet-remote.ts", "testnet-remote-ps": "node --experimental-specifier-resolution=node dist/launcher/testnet-remote-start-proof-server.js", "testnet-local": "node --experimental-specifier-resolution=node dist/launcher/testnet-local.js", From f404ab967d53fcd3a41c309d2c5166813300f224 Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Wed, 3 Sep 2025 11:38:07 +0800 Subject: [PATCH 10/13] fix: run standalone fully via Docker to avoid Node ESM/CJS conflict --- bboard-cli/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bboard-cli/package.json b/bboard-cli/package.json index 9b00bee7..3363a77b 100644 --- a/bboard-cli/package.json +++ b/bboard-cli/package.json @@ -10,7 +10,7 @@ "ci": "npm run typecheck && npm run lint && npm run build", "lint": "eslint src", "prepack": "npm run build", - "standalone": "docker compose -f standalone.yml pull && node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/standalone.ts", + "standalone": "docker compose -f standalone.yml pull && docker compose -f standalone.yml up", "testnet-remote": "node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/testnet-remote.ts", "testnet-remote-ps": "node --experimental-specifier-resolution=node dist/launcher/testnet-remote-start-proof-server.js", "testnet-local": "node --experimental-specifier-resolution=node dist/launcher/testnet-local.js", From 2601433adf95a6cd73e2fe126ef3070a04c6d46f Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Wed, 3 Sep 2025 11:54:36 +0800 Subject: [PATCH 11/13] Specify Node 20+ requirement in package.json - Added "engines" field to enforce Node version >=20 - Standalone script remains using ts-node/esm with experimental specifier resolution --- bboard-cli/package.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/bboard-cli/package.json b/bboard-cli/package.json index 3363a77b..b797416a 100644 --- a/bboard-cli/package.json +++ b/bboard-cli/package.json @@ -5,12 +5,15 @@ "license": "MIT", "private": true, "type": "module", + "engines": { + "node": ">=20.0.0" + }, "scripts": { "build": "rm -rf dist && tsc --project tsconfig.build.json && cp -R ../contract/src/managed dist/contract/src/managed", "ci": "npm run typecheck && npm run lint && npm run build", "lint": "eslint src", "prepack": "npm run build", - "standalone": "docker compose -f standalone.yml pull && docker compose -f standalone.yml up", + "standalone": "docker compose -f standalone.yml pull && node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/standalone.ts", "testnet-remote": "node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/testnet-remote.ts", "testnet-remote-ps": "node --experimental-specifier-resolution=node dist/launcher/testnet-remote-start-proof-server.js", "testnet-local": "node --experimental-specifier-resolution=node dist/launcher/testnet-local.js", From 1957f018aaae8533e96799d616ccb63ac07eefb5 Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Fri, 5 Sep 2025 08:17:32 +0800 Subject: [PATCH 12/13] fix: disable package manager check in turbo.json Add dangerouslyDisablePackageManagerCheck flag to resolve build failures when running npx turbo build. This allows flexibility in package manager usage without requiring a specific npm version in packageManager field. ref: https://turborepo.com/docs/reference/configuration#dangerouslydisablepackagemanagercheck --- package.json | 1 - turbo.json | 1 + 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 95ac4a68..ece52a1d 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,6 @@ "contract" ] }, - "packageManager": "yarn@1.22.22", "dependencies": { "@midnight-ntwrk/compact-runtime": "^0.8.1", "@midnight-ntwrk/dapp-connector-api": "^3.0.0", diff --git a/turbo.json b/turbo.json index 1344e52f..51934c99 100644 --- a/turbo.json +++ b/turbo.json @@ -1,6 +1,7 @@ { "extends": ["//"], "$schema": "https://turbo.build/schema.json", + "dangerouslyDisablePackageManagerCheck": true, "tasks": { "build": { "dependsOn": ["^compact"], From da25a16da5f5720d8624b920530e6395f374bbbe Mon Sep 17 00:00:00 2001 From: ShawnTseng Date: Fri, 5 Sep 2025 08:18:09 +0800 Subject: [PATCH 13/13] chore: remove unnecessary whitespace --- bboard-cli/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bboard-cli/package.json b/bboard-cli/package.json index b797416a..499438a1 100644 --- a/bboard-cli/package.json +++ b/bboard-cli/package.json @@ -13,7 +13,7 @@ "ci": "npm run typecheck && npm run lint && npm run build", "lint": "eslint src", "prepack": "npm run build", - "standalone": "docker compose -f standalone.yml pull && node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/standalone.ts", + "standalone": "docker compose -f standalone.yml pull && node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/standalone.ts", "testnet-remote": "node --experimental-specifier-resolution=node --loader ts-node/esm src/launcher/testnet-remote.ts", "testnet-remote-ps": "node --experimental-specifier-resolution=node dist/launcher/testnet-remote-start-proof-server.js", "testnet-local": "node --experimental-specifier-resolution=node dist/launcher/testnet-local.js",