diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5e768b6b..45a0e2b7 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -4,6 +4,11 @@ on: pull_request: branches: - main + - 1.12-compat + push: + branches: + - main + - 1.12-compat workflow_dispatch: jobs: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 3ac57963..cea0ba14 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -66,7 +66,9 @@ jobs: fi # Obsidian only downloads main.js, manifest.json, styles.css. - # manifest-beta.json lives in the repo root for BRAT and is not a release asset. + # BRAT (v1.1.0+) reads manifest.json from the release assets directly + # and ignores manifest-beta.json entirely — there's no separate beta + # manifest to publish. gh release create "$tag" \ --title="$tag" \ $prerelease_flag \ diff --git a/AGENTS.md b/AGENTS.md index b9346e09..98a7e0d8 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -110,8 +110,7 @@ Tests live in `tests/`. No test framework for Svelte components — TypeScript l ## Versioning & releases -- Use `bun run version:prod` or `bun run version:beta` to bump versions. -- Beta releases use `manifest-beta.json`. +- Use `bun run version:prod` or `bun run version:beta` to bump versions — both bump `manifest.json`; `version:beta` just expects `package.json`'s version to carry a `-beta.N` suffix, which is what marks the release a prerelease. - Release tags must match `manifest.json` version exactly (no leading `v`). - Attach `main.js`, `manifest.json`, `styles.css` to the GitHub release. diff --git a/CHANGELOG.md b/CHANGELOG.md index d32de6a8..de13000d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 * Inline Dataview fields are now recognized inside blockquotes and callouts — `> up:: [[Note]]` (and `> - up:: [[Note]]`) now creates the `up` edge, matching the behavior already shipped on the 1.12 maintenance line (4.14.3, #724). A trailing link on the same line still stays ordinary prose, per the #731 fix. +### Build + +* Retired `manifest-beta.json` and the separate `version-bump-beta.mjs` script. The 4.15.0 changelog noted BRAT reads `manifest-beta.json` from the repo root, which was true of older BRAT versions; as of BRAT v1.1.0 it's ignored entirely — beta installs are resolved by pinning a release tag and reading that release's `manifest.json` directly. `version:beta` now bumps `manifest.json` the same way `version:prod` does; the only thing that still needs to differ going into a beta release is `package.json`'s version carrying a `-beta.N` suffix. +* `release:beta` no longer pushes to a hardcoded branch — it pushes whatever branch is currently checked out. The hardcoded `main:main` was harmless on `main` but had been copied verbatim onto the `1.12-compat` branch as `master:master`, a branch that doesn't exist, silently breaking the script there. +* CI now runs on push to `main` and `1.12-compat`, not only on pull requests. A broken TypeScript pin sat on `main` for two months because nothing ever ran CI against the branch directly. + ## 4.X ### [4.21.3](https://github.com/michaelpporter/breadcrumbs/compare/4.21.2...4.21.3) (2026-07-25) diff --git a/package.json b/package.json index 6411e1a2..42681d91 100644 --- a/package.json +++ b/package.json @@ -13,8 +13,8 @@ "build:esbuild": "tsc -noEmit -skipLibCheck && svelte-check && bun run esbuild.config.mjs production", "build": "bun run clean && bun run build:css && bun run build:esbuild", "version:prod": "bun run version-bump.mjs && git add manifest.json versions.json package.json", - "version:beta": "bun run version-bump-beta.mjs && git add manifest-beta.json versions.json package.json", - "release:beta": "bun run version:beta && git commit -m 'release:beta' && git push origin main:main && git tag -a $npm_package_version -m \"$npm_package_version\" && git push --tags", + "version:beta": "bun run version-bump.mjs && git add manifest.json versions.json package.json", + "release:beta": "bun run version:beta && git commit -m 'release:beta' && git push origin HEAD:$(git symbolic-ref --short HEAD) && git tag -a $npm_package_version -m \"$npm_package_version\" && git push --tags", "test": "vitest --config vite.config.mjs", "coverage:ui": "vitest run --config vite.config.mjs --coverage --coverage.include 'src/**' --coverage.reporter html && vite preview --outDir ./coverage --open", "fmt": "bun run wasm:fmt && bun run prettier --write ./src",