1.9 KiB
1.9 KiB
- To test opencode in
packages/opencode, runbun dev. - To regenerate the JavaScript SDK, run
./packages/sdk/js/script/build.ts. - ALWAYS USE PARALLEL TOOLS WHEN APPLICABLE.
- The default branch in this repo is
feat/qimingcode. - Release Workflow:
- Changelog: Update
CHANGELOG-qimingcode.mdwith new version details. - Bump Version: Update
packages/opencode/package.jsonversion field. 2.1 Version Consistency Rule (Mandatory):packages/opencode/package.jsonis the only version source of truth.- All
optionalDependenciesentries matchingqimingcode-*must equal the same version. - Rebuild binaries before publish, then run:
bun run script/check-version-consistency.ts --phase pre --version <version>
- After publish, run:
bun run script/check-version-consistency.ts --phase post --version <version>
- Any mismatch must fail the release immediately.
- Commit & Push: Push changes to
feat/qimingcodebranch. - Tag & Trigger CI:
git tag v<version> && git push origin v<version>- CI (
.github/workflows/build-release.yml) builds all 11 platform targets on a single ubuntu-24.04 runner via Bun cross-compilation. - Produces 13 archives: darwin (arm64, x64, x64-baseline), linux (arm64, x64, x64-baseline, arm64-musl, x64-musl, x64-baseline-musl), windows (x64, x64-baseline, each with .tar.gz + .zip).
- Auto-creates GitHub Release and uploads all assets.
- CI (
- Verify: Check release at
https://github.com/qiming-ai/qimingcode/releases/tag/v<version>. - Electron Integration: Update
QIMINGCODE_VERSIONin Electron client'sscripts/prepare/prepare-qimingcode.jsandinstallVersioninsrc/main/services/system/dependencies.ts, then runnode scripts/prepare/prepare-qimingcode.js. - npm publish (optional): Run
./release.sh <new_version>for npm registry publish.
- Changelog: Update