fix: pin click>=8.1 to prevent Python 3.14/Homebrew env isolation crash#1648
Merged
mnriem merged 2 commits intogithub:mainfrom Feb 20, 2026
Merged
Conversation
…lures Fixes github#1631. When uv installs specify-cli on macOS with Homebrew Python 3.14, the virtual environment can fail to fully isolate from the system site-packages, causing Homebrew's click to be loaded instead of the one uv installed. If that system click is older than 8.1, it lacks the `ctx` keyword argument in `ParamType.get_metavar()`, which typer 0.24.0 requires, resulting in: TypeError: ParamType.get_metavar() got an unexpected keyword argument 'ctx' Adding an explicit `click>=8.1` dependency gives uv a hard constraint so the correct version is always resolved and installed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR aims to prevent a TypeError crash on macOS/Homebrew Python 3.14 installs by explicitly requiring a Click version new enough for Typer’s help rendering path.
Changes:
- Bump
specify-cliversion from0.1.1to0.1.2. - Add an explicit runtime dependency
click>=8.1. - Document the fix in
CHANGELOG.md.
Reviewed changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
pyproject.toml |
Adds click>=8.1 to runtime deps and bumps package version to 0.1.2. |
CHANGELOG.md |
Adds a 0.1.2 entry describing the Click lower-bound fix for the Python 3.14/Homebrew scenario. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 2 out of 2 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
markhazleton
pushed a commit
to markhazleton/spec-kit
that referenced
this pull request
Feb 20, 2026
…sh (github#1648) * fix: pin click>=8.1 to prevent Python 3.14/Homebrew env isolation failures Fixes github#1631. When uv installs specify-cli on macOS with Homebrew Python 3.14, the virtual environment can fail to fully isolate from the system site-packages, causing Homebrew's click to be loaded instead of the one uv installed. If that system click is older than 8.1, it lacks the `ctx` keyword argument in `ParamType.get_metavar()`, which typer 0.24.0 requires, resulting in: TypeError: ParamType.get_metavar() got an unexpected keyword argument 'ctx' Adding an explicit `click>=8.1` dependency gives uv a hard constraint so the correct version is always resolved and installed. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Update CHANGELOG.md Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
Fixes #1631.
When installing
specify-cliviauvon macOS with Homebrew Python 3.14, the uv virtual environment can fail to fully isolate from Homebrew's systemsite-packages. If the systemclickpackage is older than 8.1, it gets loaded instead of the version uv installed, causing:typer 0.24.0callsParamType.get_metavar(ctx= thectxkeyword argument was added in **click 8.1**. Any older click bleeds through and crashes immediately onspecify init --help.ctx)Fix
Add an explicit
click>=8.1dependency topyproject.toml. This gives uv (and pip) a hard lower-bound constraint so a compatible version is always resolved and installed, regardless of what the system Python environment contains.Changes
pyproject.toml: addclick>=8.1dependency, bump version to0.1.2CHANGELOG.md: document the fix