Skip to content

Bump to 3.0.2 and drop Homebrew deprecation-shim formula#13

Open
manuelgruber wants to merge 3 commits into
mainfrom
C/bump-version-3-0-2
Open

Bump to 3.0.2 and drop Homebrew deprecation-shim formula#13
manuelgruber wants to merge 3 commits into
mainfrom
C/bump-version-3-0-2

Conversation

@manuelgruber
Copy link
Copy Markdown
Member

@manuelgruber manuelgruber commented May 12, 2026

Bumps the crate to 3.0.2, refreshes dependencies, and moves clap_mangen to 0.3 to pick up upstream fixes. Drops the legacy git-same deprecation-shim Homebrew formula so the tap now ships only the cask and the git-same-cli formula. Simplifies render-formula.sh, verify-tap.sh, the S3-Publish-Homebrew workflow, and the toolkit README to match the slimmer tap layout. Also drops --strict from the earlier brew style call so the S3 verify-tap step works on current Homebrew.

Summary by Sourcery

Drop the legacy Homebrew deprecation shim and streamline Homebrew tooling while bumping the git-same crate and dependencies.

Enhancements:

  • Simplify Homebrew formula rendering and verification scripts to only handle the git-same-cli formula and cask, removing kind-specific logic and the shim flow.
  • Update the S3-Publish-Homebrew workflow and toolkit documentation to reflect the slimmer tap layout without the git-same shim formula.
  • Bump the crate version to 3.0.2 and update the clap_mangen dependency to 0.3 to pick up upstream fixes.

CI:

  • Adjust the Homebrew publishing CI to stop generating, auditing, and publishing the git-same shim formula, and to relax brew style invocation for compatibility with current Homebrew.

Documentation:

  • Refresh user- and maintainer-facing documentation to describe the current Homebrew distribution paths without referencing the deprecated git-same formula shim.

Chores:

  • Remove the obsolete formula-shim template and checklist items related to ensuring the old git-same formula path still works.

Summary by CodeRabbit

  • Changes

    • Homebrew installation now exclusively uses cask distribution on macOS. Update via brew upgrade --cask git-same.
  • Documentation

    • Clarified macOS installation guidance for cask-based distribution.
  • Chores

    • Released version 3.0.2; updated build dependencies.

Refresh Cargo.lock to the latest semver-compatible versions of cc,
clap_complete, hashbrown, tokio, and zerofrom to pick up upstream
bugfixes and security patches.

Bump clap_mangen from 0.2 to 0.3. The wrapper in src/bin/gen_manpage.rs
uses only Man::new + render, both unchanged in 0.3, so no code edits
were needed. Verified end-to-end by regenerating the manpage and shell
completions under --features release-tools.
…-same-cli

The shim was a transitional formula that depended on git-same-cli and
emitted a deprecation warning. Removing it now since the cask + CLI
formula cover both audiences (macOS GUI users and Linux/headless).

Note: the published Formula/git-same.rb in zaai-com/homebrew-tap is not
removed by this change; it needs a manual git rm in the tap repo after
S3 next runs.
Copilot AI review requested due to automatic review settings May 12, 2026 22:02
@sourcery-ai
Copy link
Copy Markdown

sourcery-ai Bot commented May 12, 2026

Reviewer's Guide

Bumps git-same to 3.0.2 with refreshed dependencies, upgrades clap_mangen, and simplifies the Homebrew toolkit by dropping the legacy git-same deprecation shim formula, consolidating scripts and workflows around a single git-same-cli formula plus cask, and updating docs and release checklist accordingly.

File-Level Changes

Change Details Files
Simplified render-formula.sh to only render the git-same-cli formula template and removed support for the shim formula.
  • Removed the --kind flag and all shim-related options, arguments, and validation paths.
  • Hard-wired the script to use formula-cli.rb.tmpl and require URL plus four platform SHA flags.
  • Simplified the sed rendering logic to only substitute CLI-related placeholders.
toolkit/homebrew/render-formula.sh
Updated the S3-Publish-Homebrew workflow to stop generating and publishing the shim formula and to verify only the cli formula plus cask.
  • Removed FORMULA_SHIM_NAME and deprecation_date outputs from the workflow environment and version step.
  • Removed the step computing the source-archive SHA and the shim rendering step.
  • Adjusted the verify-tap invocation to only pass cask and cli formula, and updated the tap layout, copy, and commit message to exclude the shim formula.
.github/workflows/S3-Publish-Homebrew.yml
Simplified Homebrew toolkit documentation to match the new tap layout (cask + git-same-cli only) and updated script usage examples.
  • Removed references to formula-shim.rb.tmpl and the deprecation shim behavior from the README decision tree and templates table.
  • Updated render-formula.sh usage docs and examples to no longer mention --kind and to show the new argument format.
  • Simplified verify-tap.sh usage and example to only include the cli formula and cask, and removed shim-specific checklist items.
toolkit/homebrew/README.md
toolkit/packaging/release-checklist.md
docs/README.md
Simplified verify-tap.sh to operate on only the cask and git-same-cli formula and relaxed brew style invocation.
  • Removed --formula-shim argument, required file checks, and copying of the shim into the temp tap.
  • Dropped the separate brew audit call for the shim formula.
  • Changed the brew style invocation to run without --strict and updated log messages from "formulae" to "formula".
toolkit/homebrew/verify-tap.sh
Updated crate versioning and dependencies to release 3.0.2 and pick up clap_mangen 0.3.
  • Bumped the git-same crate version from 3.0.1 to 3.0.2 in Cargo.toml.
  • Upgraded clap_mangen from 0.2 to 0.3 under the release-tools feature.
  • Regenerated Cargo.lock to reflect the new version and dependency graph.
Cargo.toml
Cargo.lock
Removed the legacy Homebrew shim formula template.
  • Deleted the formula-shim.rb.tmpl file from the Homebrew toolkit.
  • Relied on the remaining CLI formula template and cask template as the only Homebrew artifacts.
  • Ensured that all scripts and workflows no longer reference the deleted template.
toolkit/homebrew/formula-shim.rb.tmpl

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented May 12, 2026

Walkthrough

This PR removes the deprecated Homebrew formula-shim from the entire publishing pipeline. The shim template file is deleted, rendering and verification scripts are simplified to remove --kind and --formula-shim parameters, the CI workflow is updated to stage and publish only the cask and CLI formula, and documentation and version metadata reflect the simplification.

Changes

Formula Rendering and Verification Simplification

Layer / File(s) Summary
Render script simplification
toolkit/homebrew/render-formula.sh
Remove --kind switch and shim rendering path, requiring only --url and four SHA256 flags. Replace case-based template selection with a single unconditional formula-cli.rb.tmpl render pipeline with unified sed substitutions for version, URL, and platform-specific SHAs.
Verification script consolidation
toolkit/homebrew/verify-tap.sh
Remove --formula-shim parameter and simplify tap staging to only cask and formula-cli. Update brew audit to run only on the two staged artifacts instead of three, streamlining the validation flow.
Deprecated template removal
toolkit/homebrew/formula-shim.rb.tmpl
Delete the entire Homebrew Formula deprecation shim that provided a no-op install and dependency redirection. This removes the GitSame class that was used to migrate users from the old formula name.

Publishing Workflow Integration

Layer / File(s) Summary
CI/CD workflow update
.github/workflows/S3-Publish-Homebrew.yml
Remove FORMULA_SHIM_NAME env variable and deprecation-date output. Update formula rendering and verification steps to invoke simplified scripts with only CLI-formula flags. Simplify tap staging to exclude shim formula and update commit message to mention only "cask + formula-cli".

Documentation and Manifest Updates

Layer / File(s) Summary
Homebrew toolkit documentation
toolkit/homebrew/README.md
Remove all shim-related instructions and decision trees. Simplify rendered-formula documentation to a single template render. Update local pre-publish smoke steps to invoke render script without --kind and verify with only --cask and --formula-cli flags.
Installation and release guidance
docs/README.md, toolkit/packaging/release-checklist.md, Cargo.toml
Clarify macOS Homebrew cask deprecation in user-facing docs. Remove legacy formula verification from release checklist. Bump version to 3.0.2 and update clap_mangen dependency to 0.3 for release tooling.

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~20 minutes

Possibly related PRs

  • ZAAI-com/git-same#12: Introduced the cask+shim publishing flow in S3-Publish-Homebrew.yml and related scripts; this PR removes the shim path that was added there.

Poem

A shim once held the old way near,
But now the cask and CLI clear
The path ahead—no more pretend,
The formula's journey finds its end! 🐇✨

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title accurately summarizes the two main changes: bumping version to 3.0.2 and removing the Homebrew deprecation-shim formula.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch C/bump-version-3-0-2

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

Copy link
Copy Markdown

@sourcery-ai sourcery-ai Bot left a comment

Choose a reason for hiding this comment

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

Hey - I've reviewed your changes and they look great!


Sourcery is free for open source - if you like our reviews please consider sharing them ✨
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.

Copy link
Copy Markdown
Contributor

@coderabbitai coderabbitai Bot left a comment

Choose a reason for hiding this comment

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

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
.github/workflows/S3-Publish-Homebrew.yml (1)

107-125: ⚠️ Potential issue | 🟠 Major | ⚡ Quick win

Legacy shim formula is never removed from the tap.

This workflow stages updates for two files but does not delete/stage removal of Formula/git-same.rb, so the deprecated shim can remain published even after this PR.

Suggested fix
       - name: Stage rendered files into tap
         run: |
           mkdir -p tap/Formula tap/Casks
           cp formula-cli.rb  "tap/Formula/${FORMULA_NAME}.rb"
           cp cask.rb         "tap/Casks/${CASK_NAME}.rb"
+          rm -f "tap/Formula/git-same.rb"

       - name: Commit and push to tap
         run: |
           cd tap
           git config user.name "github-actions[bot]"
           git config user.email "github-actions[bot]@users.noreply.github.com"
-          git add \
-            "Formula/${FORMULA_NAME}.rb" \
-            "Casks/${CASK_NAME}.rb"
+          git add -A "Formula" "Casks"
           if git diff --cached --quiet; then
             echo "Cask + formula unchanged, skipping commit"
           else
             git commit -m "Update git-same to ${{ steps.version.outputs.version }} (cask + formula-cli)"
             git push origin HEAD
           fi
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In @.github/workflows/S3-Publish-Homebrew.yml around lines 107 - 125, The
workflow stages new formula and cask but never removes the legacy shim
Formula/git-same.rb; update the "Stage rendered files into tap" / "Commit and
push to tap" steps so the job also removes and stages deletion of the legacy
file (e.g., ensure Formula/git-same.rb is deleted if present before committing).
Specifically, after copying formula-cli.rb and cask.rb (the FORMULA_NAME and
CASK_NAME targets), add a step to remove Formula/git-same.rb when it exists and
ensure the git add/git commit stage will include that deletion so the deprecated
shim is removed from the tap on push.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Outside diff comments:
In @.github/workflows/S3-Publish-Homebrew.yml:
- Around line 107-125: The workflow stages new formula and cask but never
removes the legacy shim Formula/git-same.rb; update the "Stage rendered files
into tap" / "Commit and push to tap" steps so the job also removes and stages
deletion of the legacy file (e.g., ensure Formula/git-same.rb is deleted if
present before committing). Specifically, after copying formula-cli.rb and
cask.rb (the FORMULA_NAME and CASK_NAME targets), add a step to remove
Formula/git-same.rb when it exists and ensure the git add/git commit stage will
include that deletion so the deprecated shim is removed from the tap on push.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro

Run ID: 8564c4eb-ff8b-49e0-8996-d964f9bceaf6

📥 Commits

Reviewing files that changed from the base of the PR and between f2b103a and 7db7ebe.

⛔ Files ignored due to path filters (1)
  • Cargo.lock is excluded by !**/*.lock
📒 Files selected for processing (8)
  • .github/workflows/S3-Publish-Homebrew.yml
  • Cargo.toml
  • docs/README.md
  • toolkit/homebrew/README.md
  • toolkit/homebrew/formula-shim.rb.tmpl
  • toolkit/homebrew/render-formula.sh
  • toolkit/homebrew/verify-tap.sh
  • toolkit/packaging/release-checklist.md
💤 Files with no reviewable changes (1)
  • toolkit/homebrew/formula-shim.rb.tmpl

Copy link
Copy Markdown

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

This PR updates the crate to 3.0.2 (including dependency refreshes like clap_mangen → 0.3) and simplifies the Homebrew tap/tooling by removing the legacy git-same deprecation-shim formula so the tap ships only the cask (git-same) and the CLI formula (git-same-cli).

Changes:

  • Bump crate version to 3.0.2 and refresh dependencies (notably clap_mangen to 0.3).
  • Remove the Homebrew deprecation-shim formula and update scripts/docs accordingly (render-formula.sh, verify-tap.sh, README/checklist).
  • Simplify the S3 Homebrew publishing workflow to render/verify/publish only the cask and CLI formula.

Reviewed changes

Copilot reviewed 8 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
toolkit/packaging/release-checklist.md Updates release steps to reflect the removal of the shim formula.
toolkit/homebrew/verify-tap.sh Drops shim handling and verifies only cask + CLI formula; keeps brew style compatible with current Homebrew.
toolkit/homebrew/render-formula.sh Removes --kind and shim rendering; always renders the CLI formula template.
toolkit/homebrew/README.md Updates documentation and local smoke steps for the slimmer tap layout.
toolkit/homebrew/formula-shim.rb.tmpl Deletes the deprecated shim formula template.
docs/README.md Removes outdated note about the deprecated macOS formula path now that the shim is gone.
Cargo.toml Bumps version to 3.0.2 and updates clap_mangen dependency to 0.3.
Cargo.lock Updates lockfile to match the version bump and dependency refreshes.
.github/workflows/S3-Publish-Homebrew.yml Simplifies S3 publishing to render/verify/publish only cask + CLI formula (no shim).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

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.

2 participants