Skip to content

Migrate goreleaser config from brews to homebrew_casks#82

Merged
cboone merged 3 commits intomainfrom
chore/migrate-goreleaser-config
Mar 28, 2026
Merged

Migrate goreleaser config from brews to homebrew_casks#82
cboone merged 3 commits intomainfrom
chore/migrate-goreleaser-config

Conversation

@cboone
Copy link
Copy Markdown
Owner

@cboone cboone commented Mar 28, 2026

Summary

  • Replace the deprecated brews goreleaser config with homebrew_casks (supported since v2.10; CI uses v2.14.3)
  • Add url.verified for Homebrew URL audit compliance on this unsigned binary
  • Add a post-install hook to strip macOS quarantine attributes, preventing Gatekeeper dialogs
  • Drop license and test fields (not part of the Homebrew cask DSL)

Test plan

  • goreleaser check validates the new config cleanly
  • After merging and tagging a release, verify the cask is generated in cboone/homebrew-tap/Casks/
  • Verify brew install cboone/tap/fm works from the generated cask

Closes

Closes #62

cboone added 2 commits March 27, 2026 21:27
Replace the deprecated `brews` section with `homebrew_casks`, which
GoReleaser v2.10+ expects. Adds URL verification and a post-install
hook to strip macOS quarantine attributes from the unsigned binary.

Drops `license` and `test` fields (not part of the cask DSL).
Copilot AI review requested due to automatic review settings March 28, 2026 01:30
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Migrates the project’s GoReleaser Homebrew publishing configuration away from the deprecated brews block to the newer homebrew_casks mechanism, and documents the migration decision in the plans log.

Changes:

  • Replace .goreleaser.yml brews config with homebrew_casks, adding url.verified and a post-install hook.
  • Remove formula-only fields (directory, license, test) from the GoReleaser Homebrew config.
  • Add a “done” plan document describing the migration and follow-up steps for the external tap repo.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 4 comments.

File Description
.goreleaser.yml Switch Homebrew publishing from formula (brews) to cask (homebrew_casks), adding URL verification and a post-install hook.
docs/plans/done/2026-03-27-migrate-goreleaser-brews-to-homebrew-casks.md Records the rationale, field-by-field decisions, and follow-up steps for the Homebrew tap migration.

Comment thread .goreleaser.yml
Comment thread .goreleaser.yml
Prevent Copilot from flagging intentional patterns:
- homebrew_casks vs deprecated brews in .goreleaser.yml
- xattr quarantine removal hook in cask config
- plan documents not needing additional migration caveats
@cboone cboone merged commit 5b3a002 into main Mar 28, 2026
11 checks passed
@cboone cboone deleted the chore/migrate-goreleaser-config branch March 28, 2026 01:54
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.

chore: migrate goreleaser config from brews to homebrew_casks

2 participants