Buckets:
| import { $ } from "bun" | |
| import pkg from "../package.json" | |
| import { Script } from "@opencode-ai/script" | |
| import { fileURLToPath } from "url" | |
| const dir = fileURLToPath(new URL("..", import.meta.url)) | |
| process.chdir(dir) | |
| async function published(name: string, version: string) { | |
| return (await $`npm view ${name}@${version} version`.nothrow()).exitCode === 0 | |
| } | |
| async function publish(dir: string, name: string, version: string) { | |
| if (process.platform !== "win32") await $`chmod -R 755 .`.cwd(dir) | |
| if (await published(name, version)) return console.log(`already published ${name}@${version}`) | |
| await $`bun pm pack`.cwd(dir) | |
| await $`npm publish *.tgz --access public --tag ${Script.channel}`.cwd(dir) | |
| } | |
| const binaries: Record<string, string> = {} | |
| for (const filepath of new Bun.Glob("*/package.json").scanSync({ cwd: "./dist" })) { | |
| const item = await Bun.file(`./dist/${filepath}`).json() | |
| binaries[item.name] = item.version | |
| } | |
| console.log("binaries", binaries) | |
| const version = Object.values(binaries)[0] | |
| await $`mkdir -p ./dist/${pkg.name}/bin` | |
| await $`cp ./bin/lildax.cjs ./dist/${pkg.name}/bin/lildax` | |
| await Bun.file(`./dist/${pkg.name}/package.json`).write( | |
| JSON.stringify( | |
| { | |
| name: pkg.name, | |
| bin: { lildax: "./bin/lildax" }, | |
| version, | |
| license: pkg.license, | |
| repository: { type: "git", url: "git+https://github.com/anomalyco/opencode.git" }, | |
| os: ["darwin", "linux", "win32"], | |
| cpu: ["arm64", "x64"], | |
| optionalDependencies: binaries, | |
| }, | |
| null, | |
| 2, | |
| ), | |
| ) | |
| await Promise.all( | |
| Object.entries(binaries).map(([name, version]) => | |
| publish(`./dist/${name.replace("@opencode-ai/", "")}`, name, version), | |
| ), | |
| ) | |
| await publish(`./dist/${pkg.name}`, pkg.name, version) | |
Xet Storage Details
- Size:
- 1.75 kB
- Xet hash:
- 9b3e571f9d2356e8b5290a6ef8c834c3159fdcb9024a3c02e5564637d42734b8
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.