Skip to content

chore: migrate from formula to cask#2

Merged
AnnatarHe merged 1 commit into
mainfrom
chore/migrate-formula-to-cask
Jun 22, 2026
Merged

chore: migrate from formula to cask#2
AnnatarHe merged 1 commit into
mainfrom
chore/migrate-formula-to-cask

Conversation

@AnnatarHe

Copy link
Copy Markdown
Contributor

Why

GoReleaser deprecated Homebrew formula publishing in favor of macOS-only casks (companion change: shelltime/cli#292). This tap needs to switch so existing users auto-migrate.

Changes

  • Add tap_migrations.json ({ "shelltime": "shelltime" }) — tells Homebrew the old shelltime formula is now a cask, so brew upgrade auto-migrates existing installs.
  • Remove Formula/shelltime.rb — obsolete; GoReleaser will now publish Casks/shelltime.rb on the next CLI release.
  • README — note the tap is macOS-only and point Linux users to the curl installer.

Ordering note

Casks/shelltime.rb only appears after the next CLI release runs the updated GoReleaser config. Merge/release shelltime/cli#292 first (or together) so there isn't a window where the formula is removed but the cask hasn't been published yet.

🤖 Generated with Claude Code

GoReleaser deprecated formula publishing in favor of macOS-only casks. Add
tap_migrations.json so existing 'shelltime' formula users auto-migrate to the
cask on upgrade, remove the obsolete Formula/shelltime.rb (GoReleaser now
publishes Casks/shelltime.rb), and note in the README that the tap is
macOS-only with the curl installer for Linux.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@chatgpt-codex-connector

Copy link
Copy Markdown

You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard.

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Code Review

This pull request removes the Shelltime formula, updates the README to clarify that the Homebrew tap is now a macOS-only Cask, and adds a tap_migrations.json file. The feedback advises removing the tap_migrations.json file because it uses an invalid tap name and is incorrect for formula-to-cask migrations. Additionally, it is recommended to add migration instructions in the README for existing macOS users transitioning from the formula to the cask.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread tap_migrations.json
Comment on lines +1 to +3
{
"shelltime": "shelltime"
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

high

The tap_migrations.json file should be removed entirely.

  1. Invalid Tap Name: The value "shelltime" is not a valid Homebrew tap name. Homebrew tap names must follow the user/repo format (e.g., shelltime/tap). Using an invalid tap name will cause Homebrew to raise a TapSpecificationError and crash/fail during brew update or brew tap for your users.
  2. Incorrect Usage: tap_migrations.json is designed to redirect formulas/casks that have moved to a different tap (e.g., from homebrew/core to shelltime/tap). It cannot be used to migrate a formula to a cask within the same tap.

Since there is no built-in automatic formula-to-cask migration mechanism in Homebrew for third-party taps, you should delete this file and instead instruct existing users to manually reinstall the package as a cask.

Comment thread README.md
Comment on lines +7 to +11
> [!NOTE]
> The Homebrew tap is distributed as a **macOS-only Cask**. On Linux, install with:
> ```bash
> curl -sSL https://shelltime.xyz/i | bash
> ```

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

medium

Since you are migrating from a formula to a cask, existing macOS users who previously installed shelltime as a formula will not be automatically upgraded to the cask. They will need to uninstall the formula and install the cask.

It would be highly beneficial to include these migration instructions in the note so existing users know how to transition. For example:

> [!NOTE]
> The Homebrew tap is distributed as a **macOS-only Cask**.
> - **On Linux**, install with:
>   ```bash
>   curl -sSL https://shelltime.xyz/i | bash
>   ```
> - **On macOS (existing formula users)**, migrate to the cask by running:
>   ```bash
>   brew uninstall shelltime
>   brew install shelltime
>   ```

@AnnatarHe

Copy link
Copy Markdown
Contributor Author

@claude ultrareview

@AnnatarHe AnnatarHe merged commit 81e6088 into main Jun 22, 2026
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