Skip to content

Write homebrew formula into Formula/ on the tap#4

Open
kshahbw wants to merge 1 commit intomainfrom
fix/goreleaser-brew-formula-dir
Open

Write homebrew formula into Formula/ on the tap#4
kshahbw wants to merge 1 commit intomainfrom
fix/goreleaser-brew-formula-dir

Conversation

@kshahbw
Copy link
Copy Markdown
Contributor

@kshahbw kshahbw commented Apr 17, 2026

Summary

v0.0.1-beta dropped band.rb at the root of Bandwidth/homebrew-tap, but Homebrew prefers Formula/ — and the tap already had a Formula/band.rb placeholder from initial setup. The result was two duplicate formulas on the tap and a broken brew install (Homebrew resolved to the old placeholder).

Add directory: Formula to the brews block so future releases write to Formula/band.rb directly, not the repo root.

Ordering

Merge Bandwidth/homebrew-tap#5 first — that consolidates the current state by replacing Formula/band.rb with the real v0.0.1-beta content and deleting the root copy. This PR only matters for the next release.

Known follow-up on the tap

GoReleaser always writes an explicit version "X.Y.Z" line in the generated formula. The tap's audit workflow runs brew audit --strict, which flags that line as redundant with the version scanned from the release URL — and fails the auto-generated PR. This will happen on every release PR until the tap drops --strict (or excludes this specific warning).

Loosening --strict on our own tap doesn't preclude submitting this formula to homebrew-core later — that's a separate, manually-maintained formula at submission time, where we'd fix the redundant version line then (or by then, GoReleaser may have fixed the template upstream). The functional audit checks — URL reachability, SHA match, Ruby parse, license, structure — all still run without --strict. Tracking as a tap-side change.

Test plan

  • Merge Bandwidth/homebrew-tap#5 first, verify brew install Bandwidth/tap/band succeeds
  • Merge this
  • Resolve the tap audit strictness before v0.0.2
  • On the next tagged release, verify GoReleaser opens the tap PR against Formula/band.rb (not root) and it passes audit

@kshahbw kshahbw requested review from a team as code owners April 17, 2026 18:56
@bwappsec
Copy link
Copy Markdown

bwappsec commented Apr 17, 2026

Snyk checks have passed. No issues have been found so far.

Status Scan Engine Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues
Code Security 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

The v0.0.1-beta release dropped `band.rb` at the repo root of
Bandwidth/homebrew-tap, but Homebrew prefers `Formula/` and the tap
already had a `Formula/band.rb` (a placeholder from initial setup).
Result: two duplicate formulas and a broken `brew install`.

Add `directory: Formula` to the brews block so future releases write
to `Formula/band.rb` directly, keeping the formula in the canonical
location and avoiding a second duplicate on the next release.

Known follow-up on the tap side: GoReleaser always writes an explicit
`version "X.Y.Z"` line in the generated formula, which the tap's
`brew audit --strict` flags as redundant with the version scanned
from the release URL. Every auto-generated PR will fail audit until
the tap drops `--strict` (or excludes that specific warning).
Loosening `--strict` on our tap doesn't preclude submitting this
formula to homebrew-core later — that's a separate, manually-
maintained formula at submission time — and the functional checks
(URL reachability, SHA match, Ruby parse, license, structure) all
still run without it.
@kshahbw kshahbw force-pushed the fix/goreleaser-brew-formula-dir branch from 2f79c50 to a631dfb Compare April 17, 2026 19:06
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.

3 participants