fix: patch qrcode-terminal import for Node 22
This commit is contained in:
@@ -59,6 +59,12 @@ docker compose exec clawdbot-gateway node dist/index.js health --token "$CLAWDBO
|
|||||||
scripts/e2e/onboard-docker.sh
|
scripts/e2e/onboard-docker.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### QR import smoke test (Docker)
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pnpm test:docker:qr
|
||||||
|
```
|
||||||
|
|
||||||
### Notes
|
### Notes
|
||||||
|
|
||||||
- Gateway bind defaults to `lan` for container use.
|
- Gateway bind defaults to `lan` for container use.
|
||||||
|
|||||||
@@ -33,3 +33,11 @@ scripts/e2e/onboard-docker.sh
|
|||||||
```
|
```
|
||||||
|
|
||||||
This script drives the interactive wizard via a pseudo-tty, verifies config/workspace/session files, then starts the gateway and runs `clawdbot health`.
|
This script drives the interactive wizard via a pseudo-tty, verifies config/workspace/session files, then starts the gateway and runs `clawdbot health`.
|
||||||
|
|
||||||
|
## QR import smoke (Docker)
|
||||||
|
|
||||||
|
Ensures `qrcode-terminal` loads under Node 22+ in Docker:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
pnpm test:docker:qr
|
||||||
|
```
|
||||||
|
|||||||
@@ -67,6 +67,7 @@
|
|||||||
"test:force": "tsx scripts/test-force.ts",
|
"test:force": "tsx scripts/test-force.ts",
|
||||||
"test:coverage": "vitest run --coverage",
|
"test:coverage": "vitest run --coverage",
|
||||||
"test:e2e": "vitest run --config vitest.e2e.config.ts",
|
"test:e2e": "vitest run --config vitest.e2e.config.ts",
|
||||||
|
"test:docker:qr": "bash scripts/e2e/qr-import-docker.sh",
|
||||||
"protocol:gen": "tsx scripts/protocol-gen.ts",
|
"protocol:gen": "tsx scripts/protocol-gen.ts",
|
||||||
"protocol:gen:swift": "tsx scripts/protocol-gen-swift.ts",
|
"protocol:gen:swift": "tsx scripts/protocol-gen-swift.ts",
|
||||||
"protocol:check": "pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/ClawdbotProtocol/GatewayModels.swift",
|
"protocol:check": "pnpm protocol:gen && pnpm protocol:gen:swift && git diff --exit-code -- dist/protocol.schema.json apps/macos/Sources/ClawdbotProtocol/GatewayModels.swift",
|
||||||
@@ -148,7 +149,8 @@
|
|||||||
"@sinclair/typebox": "0.34.46"
|
"@sinclair/typebox": "0.34.46"
|
||||||
},
|
},
|
||||||
"patchedDependencies": {
|
"patchedDependencies": {
|
||||||
"@mariozechner/pi-ai": "patches/@mariozechner__pi-ai.patch"
|
"@mariozechner/pi-ai": "patches/@mariozechner__pi-ai.patch",
|
||||||
|
"qrcode-terminal": "patches/qrcode-terminal.patch"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"vitest": {
|
"vitest": {
|
||||||
|
|||||||
12
patches/qrcode-terminal.patch
Normal file
12
patches/qrcode-terminal.patch
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
diff --git a/lib/main.js b/lib/main.js
|
||||||
|
index 488cc1aea9802b3d6ae13aee27556403bec55d1c..3de1f934868d81e8204f00e6a4bf2696a05f7340 100644
|
||||||
|
--- a/lib/main.js
|
||||||
|
+++ b/lib/main.js
|
||||||
|
@@ -1,5 +1,5 @@
|
||||||
|
-var QRCode = require('./../vendor/QRCode'),
|
||||||
|
- QRErrorCorrectLevel = require('./../vendor/QRCode/QRErrorCorrectLevel'),
|
||||||
|
+var QRCode = require('./../vendor/QRCode/index.js'),
|
||||||
|
+ QRErrorCorrectLevel = require('./../vendor/QRCode/QRErrorCorrectLevel.js'),
|
||||||
|
black = "\033[40m \033[0m",
|
||||||
|
white = "\033[47m \033[0m",
|
||||||
|
toCell = function (isBlack) {
|
||||||
7
pnpm-lock.yaml
generated
7
pnpm-lock.yaml
generated
@@ -11,6 +11,9 @@ patchedDependencies:
|
|||||||
'@mariozechner/pi-ai':
|
'@mariozechner/pi-ai':
|
||||||
hash: 628fb051b6f4886984a846a5ee7aa0a571c3360d35b8d114e4684e5edcd100c5
|
hash: 628fb051b6f4886984a846a5ee7aa0a571c3360d35b8d114e4684e5edcd100c5
|
||||||
path: patches/@mariozechner__pi-ai.patch
|
path: patches/@mariozechner__pi-ai.patch
|
||||||
|
qrcode-terminal:
|
||||||
|
hash: ed82029850dbdf551f5df1de320945af52b8ea8500cc7bd4f39258e7a3d92e12
|
||||||
|
path: patches/qrcode-terminal.patch
|
||||||
|
|
||||||
importers:
|
importers:
|
||||||
|
|
||||||
@@ -102,7 +105,7 @@ importers:
|
|||||||
version: 1.57.0
|
version: 1.57.0
|
||||||
qrcode-terminal:
|
qrcode-terminal:
|
||||||
specifier: ^0.12.0
|
specifier: ^0.12.0
|
||||||
version: 0.12.0
|
version: 0.12.0(patch_hash=ed82029850dbdf551f5df1de320945af52b8ea8500cc7bd4f39258e7a3d92e12)
|
||||||
sharp:
|
sharp:
|
||||||
specifier: ^0.34.5
|
specifier: ^0.34.5
|
||||||
version: 0.34.5
|
version: 0.34.5
|
||||||
@@ -5460,7 +5463,7 @@ snapshots:
|
|||||||
'@thi.ng/bitstream': 2.4.37
|
'@thi.ng/bitstream': 2.4.37
|
||||||
optional: true
|
optional: true
|
||||||
|
|
||||||
qrcode-terminal@0.12.0: {}
|
qrcode-terminal@0.12.0(patch_hash=ed82029850dbdf551f5df1de320945af52b8ea8500cc7bd4f39258e7a3d92e12): {}
|
||||||
|
|
||||||
qs@6.14.1:
|
qs@6.14.1:
|
||||||
dependencies:
|
dependencies:
|
||||||
|
|||||||
9
scripts/e2e/Dockerfile.qr-import
Normal file
9
scripts/e2e/Dockerfile.qr-import
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
FROM node:22-bookworm
|
||||||
|
|
||||||
|
RUN corepack enable
|
||||||
|
|
||||||
|
WORKDIR /app
|
||||||
|
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
RUN pnpm install --frozen-lockfile
|
||||||
11
scripts/e2e/qr-import-docker.sh
Executable file
11
scripts/e2e/qr-import-docker.sh
Executable file
@@ -0,0 +1,11 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
||||||
|
IMAGE_NAME="${CLAWDBOT_QR_SMOKE_IMAGE:-clawdbot-qr-smoke}"
|
||||||
|
|
||||||
|
echo "Building Docker image..."
|
||||||
|
docker build -t "$IMAGE_NAME" -f "$ROOT_DIR/scripts/e2e/Dockerfile.qr-import" "$ROOT_DIR"
|
||||||
|
|
||||||
|
echo "Running qrcode-terminal import smoke..."
|
||||||
|
docker run --rm -t "$IMAGE_NAME" node -e "import('qrcode-terminal').then((m)=>m.default.generate('qr-smoke',{small:true}))"
|
||||||
Reference in New Issue
Block a user