From 42b9937da46d836759b68d76fc73bd9808176260 Mon Sep 17 00:00:00 2001 From: Matthias Hochmeister Date: Fri, 13 Mar 2026 12:12:57 +0100 Subject: [PATCH] fix(sync): move typescript to dependencies to fix Docker build npm silently skips devDependencies in some Alpine+npm combinations, causing tsc to be missing even after npm install. Moving typescript to regular dependencies guarantees it is always installed and its .bin symlink is created regardless of NODE_ENV. Co-Authored-By: Claude Sonnet 4.6 --- sync/Dockerfile | 2 +- sync/package-lock.json | 7 +++---- sync/package.json | 6 +++--- 3 files changed, 7 insertions(+), 8 deletions(-) diff --git a/sync/Dockerfile b/sync/Dockerfile index 276ccaa..b162e48 100644 --- a/sync/Dockerfile +++ b/sync/Dockerfile @@ -6,7 +6,7 @@ COPY package*.json .npmrc ./ RUN npm install COPY tsconfig.json ./ COPY src ./src -RUN ./node_modules/.bin/tsc && npm prune --production +RUN npm run build && npm prune --production # Stage 2: runtime with Playwright FROM mcr.microsoft.com/playwright:v1.47.0-jammy diff --git a/sync/package-lock.json b/sync/package-lock.json index 51f868b..3ece866 100644 --- a/sync/package-lock.json +++ b/sync/package-lock.json @@ -10,13 +10,13 @@ "dependencies": { "@playwright/test": "^1.47.0", "dotenv": "^16.0.0", - "pg": "^8.11.0" + "pg": "^8.11.0", + "typescript": "^5.0.0" }, "devDependencies": { "@types/node": "^20.0.0", "@types/pg": "^8.10.0", - "ts-node": "^10.9.0", - "typescript": "^5.0.0" + "ts-node": "^10.9.0" } }, "node_modules/@cspotcode/source-map-support": { @@ -406,7 +406,6 @@ "version": "5.9.3", "resolved": "https://npm.apple.com/typescript/-/typescript-5.9.3.tgz", "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", - "dev": true, "peer": true, "bin": { "tsc": "bin/tsc", diff --git a/sync/package.json b/sync/package.json index 84dc83e..123fa8a 100644 --- a/sync/package.json +++ b/sync/package.json @@ -11,12 +11,12 @@ "dependencies": { "@playwright/test": "^1.47.0", "pg": "^8.11.0", - "dotenv": "^16.0.0" + "dotenv": "^16.0.0", + "typescript": "^5.0.0" }, "devDependencies": { "@types/node": "^20.0.0", "@types/pg": "^8.10.0", - "ts-node": "^10.9.0", - "typescript": "^5.0.0" + "ts-node": "^10.9.0" } }