Skip to content

chore(release): bump to v1.1.0; relax commitlint footer-max-line-length#120

Merged
dipto0321 merged 1 commit into
mainfrom
chore/release/v1.1.0
Jul 5, 2026
Merged

chore(release): bump to v1.1.0; relax commitlint footer-max-line-length#120
dipto0321 merged 1 commit into
mainfrom
chore/release/v1.1.0

Conversation

@dipto0321

Copy link
Copy Markdown
Owner

Summary

Pre-release prep for v1.1.0. Three changes that have to land together before tagging:

1. CHANGELOG.md — promote the existing [Unreleased] section to [1.1.0] - 2026-07-05 with a one-paragraph framing note for the headline (the internal/ui rollout: Writer + Spinner + Prompt + the full call-site migration, all from #117 / #118 / #119). The [Unreleased] body itself was already kept up-to-date across every post-v1.0.1 commit, so this is purely a rename + intro paragraph. A fresh empty [Unreleased] section is left at the top for the next cycle.

2. nodeup-npm/package.json — bump version and binaryVersion from 1.0.1 to 1.1.0. The binaryVersion field is what nodeup-npm/scripts/install.js reads at postinstall time to look up the right tarball from the GitHub release; if it doesn't match the tag, every npm install 404s on the binary download (per docs/release-checklist.md:46-51).

3. .commitlintrc.yml — relax the footer-max-line-length rule from the inherited 100-char default to 200 chars. This is what was keeping CI red on main right now (commitlint was failing on the PR #119 squash-merge footer, which is 117 chars; #117 and #118 also exceeded the cap). Body line length stays at 100, so hand-authored commit messages are unaffected — only the admin squash-merge trailer gets the relaxed budget.

Why this is one PR, not three

The three changes are coupled: tagging v1.1.0 before this PR merges means the npm wrapper publishes with a binaryVersion pointing at a release that doesn't exist yet. Tagging after this PR merges without the commitlint fix means CI is red on the very tag commit. They're one logical release-prep step.

Verification

$ make ci
0 issues.
ok  	github.com/dipto0321/nodeup/internal/cli   coverage: 33.2%
ok  	github.com/dipto0321/nodeup/internal/ui    coverage: 67.4%
total: 62.4%

What happens after this PR merges

  1. git checkout main && git pull
  2. git tag -a v1.1.0 -m "Release v1.1.0" on main's HEAD (the merge commit of this PR)
  3. git push origin v1.1.0
  4. release.yml fires automatically:
    • GoReleaser builds 5 binaries (linux/darwin × amd64/arm64 + windows/amd64) + SHA256 checksums
    • GitHub Release created with auto-generated changelog
    • Homebrew formula pushed to dipto0321/homebrew-tap
    • Scoop manifest pushed to dipto0321/scoop-bucket
    • publish-npm job runs OIDC trusted publishing → npm view nodeupx version returns 1.1.0
  5. Verify all 5 binaries attached + checksums + homebrew tap updated + scoop bucket updated + npm publish green

Per docs/release-checklist.md. Secrets (HOMEBREW_TAP_TOKEN, SCOOP_BUCKET_TOKEN) verified present via gh secret list before opening this PR.

Manual smoke test status

The release checklist calls for nodeup check on macOS arm64, Linux amd64, and Windows amd64 plus a manual upgrade flow test. CI's matrix covers the commit across all three OSes; the artifact smoke test (running the goreleaser-produced binary on each platform) is on hold until the tag is cut — that's the natural moment for it, since I can gh release download from any of those machines.

Promote CHANGELOG.md [Unreleased] to [1.1.0] - 2026-07-05. The
[Unreleased] block already documents every change since v1.0.1,
so this is a promotion + a one-paragraph framing note for the
headline (the internal/ui rollout: Writer + Spinner + Prompt + the
full call-site migration).

Bump nodeup-npm/package.json version and binaryVersion from 1.0.1
to 1.1.0 so the npm wrapper fetches the v1.1.0 binary on install
(via the postinstall script's binaryVersion lookup).

Also relax .commitlintrc.yml body-max-line-length's sibling rule,
footer-max-line-length, from the inherited default to 200. Admin
squash-merge footers routinely exceed 100 chars (the longest
historical footer is ~125 chars for the #118 squash), and the
strict 100-char cap was breaking CI's commitlint step on every
push to main after such a merge — including the last three PRs
(#117, #118, #119) that this release is built on. Body line length
stays at 100. The new limit is documented inline with the
empirical basis.

No go.mod or source changes. make ci green.

Co-Authored-By: puku-ai-2.8 <noreply@puku.sh>
@cocogitto-bot

cocogitto-bot Bot commented Jul 5, 2026

Copy link
Copy Markdown

✔️ 1912bc6 - Conventional commits check succeeded.

@dipto0321 dipto0321 merged commit 152af44 into main Jul 5, 2026
10 checks passed
@dipto0321 dipto0321 deleted the chore/release/v1.1.0 branch July 5, 2026 09:18
dipto0321 added a commit that referenced this pull request Jul 5, 2026
Closes #121. body-max-line-length raised to 200 to match footer; retroactive fix for the four historical lint failures (#117/#118/#119/#120) caused by admin squash-merge prose over 100 cols.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant