Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@plutov
Copy link
Owner

@plutov plutov commented Sep 16, 2025

  1. Use goreleaser
  2. Publish Homebrew cask

Summary by CodeRabbit

  • New Features
    • Cross-platform release artifacts now published for Linux, macOS, and Windows (amd64, arm64; 386 where supported).
    • Added Homebrew install: brew install plutov/tap/oq.
  • Documentation
    • Installation section updated with Homebrew and go install instructions.
  • Chores
    • Release pipeline migrated to GoReleaser; releases are built and published from tagged pushes.

@plutov plutov self-assigned this Sep 16, 2025
@coderabbitai
Copy link

coderabbitai bot commented Sep 16, 2025

Caution

Review failed

The pull request is closed.

Walkthrough

Converts the release workflow to a GoReleaser-based pipeline triggered on tagged pushes, adds a .goreleaser.yaml to define multi-OS/arch builds, archives, and release publishing, and updates README with Homebrew and go install instructions.

Changes

Cohort / File(s) Summary
CI workflow migration
.github/workflows/release.yaml
Renames workflow, changes trigger to tag pushes, drops matrix build, adds steps: checkout (fetch-depth: 0), setup Go 1.25, run GoReleaser action with release --clean; trims permissions and removes prior release-action usage.
GoReleaser configuration
.goreleaser.yaml
Introduces GoReleaser config: CGO disabled; builds for linux/windows/darwin with 386/amd64/arm64 (excluding darwin/386, windows/arm64); tar.gz by default, zip on Windows; bundles LICENSE and README; configures GitHub release and Homebrew tap metadata.
Documentation
README.md
Adds installation methods: Homebrew (brew install plutov/tap/oq) and go install (go install github.com/plutov/oq@latest).

Sequence Diagram(s)

sequenceDiagram
    autonumber
    actor Dev as Developer
    participant GH as GitHub
    participant GHA as GitHub Actions (goreleaser)
    participant GL as GoReleaser
    participant GR as GitHub Releases
    participant Tap as homebrew-tap repo

    Dev->>GH: Push tag (vX.Y.Z)
    GH-->>GHA: Trigger workflow (on: push tags)
    GHA->>GHA: Checkout (fetch-depth: 0)
    GHA->>GHA: Setup Go 1.25
    GHA->>GL: Run release --clean
    Note right of GL: Build linux/windows/darwin<br/>amd64/arm64/386 (filtered)
    GL->>GR: Create/Update release assets<br/>archives + checksums
    GL->>Tap: Update tap formula (per config)
    GR-->>Dev: Release published (non-draft / prerelease:auto)
Loading

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Poem

I tagged the moon with v and glee,
GoReleaser hops for me.
Tarballs roll and zips take flight,
Taps refreshed by brew’s delight.
With one push, artifacts bloom—
A happy hare deploys the plume. 🐇✨

✨ Finishing touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch feat/goreleaser

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between b0deebf and 92dfaa6.

📒 Files selected for processing (3)
  • .github/workflows/release.yaml (1 hunks)
  • .goreleaser.yaml (1 hunks)
  • README.md (1 hunks)

Tip

👮 Agentic pre-merge checks are now available in preview!

Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.

  • Built-in checks – Quickly apply ready-made checks to enforce title conventions, require pull request descriptions that follow templates, validate linked issues for compliance, and more.
  • Custom agentic checks – Define your own rules using CodeRabbit’s advanced agentic capabilities to enforce organization-specific policies and workflows. For example, you can instruct CodeRabbit’s agent to verify that API documentation is updated whenever API schema files are modified in a PR. Note: Upto 5 custom checks are currently allowed during the preview period. Pricing for this feature will be announced in a few weeks.

Please see the documentation for more information.

Example:

reviews:
  pre_merge_checks:
    custom_checks:
      - name: "Undocumented Breaking Changes"
        mode: "warning"
        instructions: |
          Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).

Please share your feedback with us on this Discord post.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@plutov plutov merged commit a82ee6f into main Sep 16, 2025
1 of 2 checks passed
@plutov plutov deleted the feat/goreleaser branch September 16, 2025 07:55
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