Skip to content

oakum 0.3.2

Choose a tag to compare

@oakoss oakoss released this 17 Sep 20:53
· 89 commits to main since this release
c7e5d64

Fixed

The version pull request is titled chore(release): version packages, the same sentence as the version commit. Where a repository takes its squash subject from the pull request title (squash_merge_commit_title = PR_TITLE), the old default — Version Packages — landed on the default branch instead, and a conventional-commit gate reading there refused the one commit oakum generates; the conventional message it wrote never appeared. GitHub's own default, COMMIT_OR_PR_TITLE, takes the subject from the single commit, so a repository left at that setting never saw this, and neither did one merging or rebasing, where the version commit lands carrying its own message. The two defaults sat four lines apart in the same file and disagreed either way. Set title in .changeset/_config.toml to keep the old string; its schema description now says what it falls back to and that a configured commit-message does not move it.

check names a package that changed outside HEAD — staged, edited or untracked — instead of passing over it. The coverage look reads commits while intent is read from the working tree, so a change that is not yet a commit was in neither half, and --strict exited 0 on a tree it refuses one commit later. The scope report now names both ends of the diff (<base>...HEAD) rather than reading as a comparison against the tree in front of you.

What that look could not read is said too: a working tree git status cannot walk, or can walk only in part, is reported rather than passed over in silence. Both are advisory, like the rest of this half — they name what went unread without changing any exit outcome. release reports them on the same terms.

ci pr-status says why it posted nothing on each of its three non-posting paths: an empty plan, the version pull request, and pr-status = "none". Only the fork and token failures announced themselves before, so an empty plan and a swallowed failure looked alike from the workflow's side. A leftover plan comment this run's token could not remove is named as well, rather than leaving a line about what was not written to imply nothing was left behind.

Every git child now runs under LC_ALL=C, so the diagnostics oakum quotes back to you are in one language whatever the surrounding locale.

check names a package whose coverage a pull request will not receive. Changed packages are read from commits while intent is read from the working tree, so a bump file that is not committed — or one that is committed and has since been edited to name another package — covered a change that was committed, and --strict exited 0 while the ref you were about to push exited 1, with nothing said. The mirror of the change named outside HEAD, which this release also carries: there the change is invisible, here the coverage is.

The question is asked of HEAD itself, reading the intent its tree carries rather than guessing from which files are staged. That is what catches the ordinary flow: commit a bump file, touch a second package later, add a line to the file you already have. It costs nothing where there is no intent on disk to rest on, and nothing at all under conventional-commits, where both halves already read commits.

Advisory, like the rest of that half: it names what a pull request will not get without changing any exit outcome. An uncommitted bump file is the normal state seconds after oakum add, so refusing would fire on nearly every local loop.

Install oakum 0.3.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/oakoss/oakum/releases/download/v0.3.2/oakum-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/oakoss/oakum/releases/download/v0.3.2/oakum-installer.ps1 | iex"

Install prebuilt binaries via Homebrew

brew install oakoss/tap/oakum

Install prebuilt binaries into your npm project

npm install @oakoss/oakum@0.3.2

Download oakum 0.3.2

File Platform Checksum
oakum-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
oakum-x86_64-apple-darwin.tar.xz Intel macOS checksum
oakum-x86_64-pc-windows-msvc.zip x64 Windows checksum
oakum-aarch64-unknown-linux-gnu.tar.xz ARM64 Linux checksum
oakum-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum
oakum-x86_64-unknown-linux-musl.tar.xz x64 MUSL Linux checksum

Verifying GitHub Artifact Attestations

The artifacts in this release have attestations generated with GitHub Artifact Attestations. These can be verified by using the GitHub CLI:

gh attestation verify <file-path of downloaded artifact> --repo oakoss/oakum

You can also download the attestation from GitHub and verify against that directly:

gh attestation verify <file-path of downloaded artifact> --bundle <file-path of downloaded attestation>