summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--bun.lock5
-rw-r--r--nix/hashes.json2
-rw-r--r--package.json2
-rw-r--r--packages/script/package.json3
-rw-r--r--packages/script/src/index.ts3
5 files changed, 12 insertions, 3 deletions
diff --git a/bun.lock b/bun.lock
index 7b6963eaf..e7b9dc09c 100644
--- a/bun.lock
+++ b/bun.lock
@@ -16,6 +16,7 @@
"@tsconfig/bun": "catalog:",
"husky": "9.1.7",
"prettier": "3.6.2",
+ "semver": "^7.6.0",
"sst": "3.17.23",
"turbo": "2.5.6",
},
@@ -374,6 +375,7 @@
"name": "@opencode-ai/script",
"devDependencies": {
"@types/bun": "catalog:",
+ "@types/semver": "catalog:",
},
},
"packages/sdk/js": {
@@ -514,6 +516,7 @@
"@types/bun": "1.3.5",
"@types/luxon": "3.7.1",
"@types/node": "22.13.9",
+ "@types/semver": "7.7.1",
"@typescript/native-preview": "7.0.0-dev.20251207.1",
"ai": "5.0.119",
"diff": "8.0.2",
@@ -1849,6 +1852,8 @@
"@types/scheduler": ["@types/[email protected]", "", {}, "sha512-WFHp9YUJQ6CKshqoC37iOlHnQSmxNc795UhB26CyBBttrN9svdIrUjl/NjnNmfcwtncN0h/0PPAFWv9ovP8mLA=="],
+ "@types/semver": ["@types/[email protected]", "", {}, "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA=="],
+
"@types/send": ["@types/[email protected]", "", { "dependencies": { "@types/mime": "^1", "@types/node": "*" } }, "sha512-Uqt8rPBE8SY0RK8JB1EzVOIZ32uqy8HwdxCnoCOsYrvnswqmFZ/k+9Ikidlk/ImhsdvBsloHbAlewb2IEBV/Og=="],
"@types/serve-static": ["@types/[email protected]", "", { "dependencies": { "@types/http-errors": "*", "@types/node": "*", "@types/send": "<1" } }, "sha512-tRs1dB+g8Itk72rlSI2ZrW6vZg0YrLI81iQSTkMmOqnqCaNr/8Ek4VwWcN5vZgCYWbg/JJSGBlUaYGAOP73qBw=="],
diff --git a/nix/hashes.json b/nix/hashes.json
index fa91b3b31..658128a33 100644
--- a/nix/hashes.json
+++ b/nix/hashes.json
@@ -1,6 +1,6 @@
{
"nodeModules": {
- "x86_64-linux": "sha256-80+b7FwUy4mRWTzEjPrBWuR5Um67I1Rn4U/n/s/lBjs=",
+ "x86_64-linux": "sha256-AbPldHboLnT/sRYYEBKBx0EsQtA3uIOn85sl3rsg56s=",
"aarch64-linux": "sha256-xH/Grwh3b+HWsUkKN8LMcyMaMcmnIJYlgp38WJCat5E=",
"aarch64-darwin": "sha256-Izv6PE9gNaeYYfcqDwjTU/WYtD1y+j65annwvLzkMD8=",
"x86_64-darwin": "sha256-EG1Z0uAeyFiOeVsv0Sz1sa8/mdXuw/uvbYYrkFR3EAg="
diff --git a/package.json b/package.json
index ca9602174..4267ef645 100644
--- a/package.json
+++ b/package.json
@@ -28,6 +28,7 @@
"@kobalte/core": "0.13.11",
"@types/luxon": "3.7.1",
"@types/node": "22.13.9",
+ "@types/semver": "7.7.1",
"@tsconfig/node22": "22.0.2",
"@tsconfig/bun": "1.0.9",
"@cloudflare/workers-types": "4.20251008.0",
@@ -66,6 +67,7 @@
"@tsconfig/bun": "catalog:",
"husky": "9.1.7",
"prettier": "3.6.2",
+ "semver": "^7.6.0",
"sst": "3.17.23",
"turbo": "2.5.6"
},
diff --git a/packages/script/package.json b/packages/script/package.json
index 45de3bcb9..08a817026 100644
--- a/packages/script/package.json
+++ b/packages/script/package.json
@@ -3,7 +3,8 @@
"name": "@opencode-ai/script",
"license": "MIT",
"devDependencies": {
- "@types/bun": "catalog:"
+ "@types/bun": "catalog:",
+ "@types/semver": "catalog:"
},
"exports": {
".": "./src/index.ts"
diff --git a/packages/script/src/index.ts b/packages/script/src/index.ts
index 09ebb4463..9d3c6821c 100644
--- a/packages/script/src/index.ts
+++ b/packages/script/src/index.ts
@@ -1,5 +1,6 @@
import { $ } from "bun"
import path from "path"
+import { satisfies } from "semver"
const rootPkgPath = path.resolve(import.meta.dir, "../../../package.json")
const rootPkg = await Bun.file(rootPkgPath).json()
@@ -9,7 +10,7 @@ if (!expectedBunVersion) {
throw new Error("packageManager field not found in root package.json")
}
-if (process.versions.bun !== expectedBunVersion) {
+if (!satisfies(process.versions.bun, expectedBunVersion)) {
throw new Error(`This script requires bun@${expectedBunVersion}, but you are using bun@${process.versions.bun}`)
}