From 17c4202ea8a16cde5c965c2cec76a3b46e1e7e02 Mon Sep 17 00:00:00 2001 From: Michael Banucu Date: Tue, 20 Jan 2026 18:34:00 +0100 Subject: [PATCH] fix(opencode): Allow compatible Bun versions in packageManager field (#9597) Co-authored-by: Aiden Cline <63023139+rekram1-node@users.noreply.github.com> Co-authored-by: Aiden Cline --- bun.lock | 5 +++++ nix/hashes.json | 2 +- package.json | 2 ++ packages/script/package.json | 3 ++- packages/script/src/index.ts | 3 ++- 5 files changed, 12 insertions(+), 3 deletions(-) diff --git a/bun.lock b/bun.lock index 7b6963eafe..e7b9dc09ce 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/scheduler@0.26.0", "", {}, "sha512-WFHp9YUJQ6CKshqoC37iOlHnQSmxNc795UhB26CyBBttrN9svdIrUjl/NjnNmfcwtncN0h/0PPAFWv9ovP8mLA=="], + "@types/semver": ["@types/semver@7.7.1", "", {}, "sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA=="], + "@types/send": ["@types/send@0.17.6", "", { "dependencies": { "@types/mime": "^1", "@types/node": "*" } }, "sha512-Uqt8rPBE8SY0RK8JB1EzVOIZ32uqy8HwdxCnoCOsYrvnswqmFZ/k+9Ikidlk/ImhsdvBsloHbAlewb2IEBV/Og=="], "@types/serve-static": ["@types/serve-static@1.15.10", "", { "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 fa91b3b310..658128a337 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 ca9602174a..4267ef6456 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 45de3bcb99..08a8170269 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 09ebb44635..9d3c6821ce 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}`) }