Files
opentui/package.json
T
Simon Klee 998c6d6127 ci(release): release each version commit on main
A release needed a local commit and tag pushed by someone who can
bypass the rulesets, and nothing checked main's CI first.

release.yml now releases each push to main that changes the version in
packages/core/package.json. It waits for the checks of the commit the
release commit builds on, tags the commit, and then builds and
publishes as before. Dry-run and snapshot tags work as before.

`bun run release <patch|minor|major|version>` waits for main's checks,
commits "Release vX.Y.Z", pushes it to main, and follows the release run
until npm serves every package. With --pr it opens a release pull
request instead; the "Prepare Release" workflow runs that mode as the
release button, with only GITHUB_TOKEN. With --dry-run it pushes a
vX.Y.Z-dry.N tag and leaves main unchanged.

The smoke tests of the packed packages move to their own job, which runs
while the Windows DLLs are signed.
2026-10-07 11:19:31 +02:00

37 lines
1.8 KiB
JSON

{
"name": "@opentui",
"private": true,
"packageManager": "bun@1.4.1",
"workspaces": [
"packages/*",
"packages/solid/examples"
],
"scripts": {
"build": "cd packages/native && bun run build && cd ../core && bun scripts/build.ts --native --skip-zig && bun run build:lib && cd ../qrcode && bun run build && cd ../three && bun run build && cd ../solid && bun run build && cd ../react && bun run build && cd ../keymap && bun run build && cd ../ssh && bun run build",
"build:examples": "cd packages/examples && bun run build",
"clean": "bun scripts/clean.ts",
"examples:node": "node packages/examples/scripts/run-node26.mjs",
"fmt": "oxfmt --write .",
"fmt:check": "oxfmt --check .",
"lint": "oxlint .",
"lint:ci": "oxlint . --deny-warnings",
"lint:fix": "oxlint --fix .",
"pre-publish": "bun scripts/pre-publish.ts",
"publish": "bun run pre-publish && bun scripts/npm-publish.ts publish && bun scripts/npm-publish.ts wait",
"publish:core": "cd packages/core && bun run publish",
"publish:qrcode": "cd packages/qrcode && bun run publish",
"publish:three": "cd packages/three && bun run publish",
"publish:react": "cd packages/react && bun run publish",
"publish:solid": "cd packages/solid && bun run publish",
"publish:keymap": "cd packages/keymap && bun run publish",
"publish:ssh": "cd packages/ssh && bun run publish",
"prepare-release": "bun scripts/prepare-release.ts",
"release": "bun scripts/release.ts",
"test": "bun run --filter '@opentui/native' --filter '@opentui/core' --filter '@opentui/qrcode' --filter '@opentui/three' --filter '@opentui/solid' --filter '@opentui/react' --filter '@opentui/keymap' --filter '@opentui/ssh' --if-present test"
},
"devDependencies": {
"oxfmt": "0.41.0",
"oxlint": "1.56.0"
}
}