Artifact 2959b3eea336a72cb503a9fa1574501e7598ba678686e3d82b8b0a99aaa2d896:
- File
.goreleaser.yml
— part of check-in
[233d9d94d5]
at
2026-04-30 15:55:51
on branch trunk
— fix(release): skip Homebrew formula update on prereleases
Adds skip_upload: auto to the brews block. With release.prerelease: auto, GoReleaser correctly marks rc/beta/alpha tags as GitHub prereleases — but without skip_upload: auto, the Homebrew formula was still being updated for those prereleases. Effect: brew upgrade edgesync would pull the rc binary as a stable update.
skip_upload: auto skips brew formula updates whenever the release is marked as prerelease. Stable releases (vX.Y.Z without suffix) still update the formula. (user: [email protected], size: 2544) [annotate] [blame] [check-ins using] [more...]
# GoReleaser config for edgesync. # https://goreleaser.com # # Cross-compiles edgesync for macOS and Linux on amd64/arm64, archives # as tarballs, generates checksums, publishes a GitHub release, and # updates the Homebrew formula in danmestas/homebrew-tap. version: 2 before: hooks: - go mod tidy builds: - id: edgesync main: ./cmd/edgesync binary: edgesync env: - CGO_ENABLED=0 flags: - -trimpath - -buildvcs=false ldflags: - -s -w - -X main.version={{.Version}} - -X main.commit={{.ShortCommit}} - -X main.date={{.CommitDate}} goos: - linux - darwin goarch: - amd64 - arm64 archives: - id: edgesync formats: [tar.gz] name_template: >- {{ .ProjectName }}_ {{- .Version }}_ {{- .Os }}_ {{- if eq .Arch "amd64" }}x86_64 {{- else }}{{ .Arch }}{{ end }} files: - LICENSE* - README* checksum: name_template: 'checksums.txt' algorithm: sha256 snapshot: version_template: "{{ incpatch .Version }}-next" changelog: sort: asc use: github groups: - title: 'Features' regexp: '^.*?feat(\(.+\))??!?:.+$' order: 0 - title: 'Bug fixes' regexp: '^.*?fix(\(.+\))??!?:.+$' order: 1 - title: 'Other' order: 999 filters: exclude: - '^docs:' - '^chore:' - '^test:' - '^ci:' - 'merge conflict' - 'Merge PR' - 'Merge pull request' - 'Merge remote-tracking branch' - 'Merge branch' release: github: owner: danmestas name: EdgeSync draft: false prerelease: auto name_template: "{{.ProjectName}} v{{.Version}}" footer: | **Full Changelog**: https://github.com/danmestas/EdgeSync/compare/{{ .PreviousTag }}...{{ .Tag }} ## Install ### Homebrew (macOS / Linux) ```bash brew install danmestas/tap/edgesync ``` ### Go ```bash go install github.com/danmestas/EdgeSync/cmd/edgesync@{{ .Tag }} ``` ### Direct download Pick a binary from the assets above for your OS/arch. brews: - name: edgesync skip_upload: auto repository: owner: danmestas name: homebrew-tap token: "{{ .Env.HOMEBREW_PAT_TOKEN }}" directory: Formula homepage: https://github.com/danmestas/EdgeSync description: "Sync engine for distributed teams: NATS messaging or peer-to-peer Fossil sync." license: Apache-2.0 install: | bin.install "edgesync" test: | system "#{bin}/edgesync --version"