astral-sh / astral-sh/uv-pre-commit

`pyproject.toml` `required-version` or minor version support

Open
#74 2 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
348
Forks
27
PR merge metrics
No merged PRs in 30d

Description

Hey guys,

A common way I've seen `uv` used in larger projects is to set the following section to protect against unforseen changes in minor version bumps of the tool

`pyproject.toml`
```
...
[tool.uv]
required-version = "~=0.12.0"
...
```

This prevents devs from requiring the perfect `uv` version installed, but also protects the project from odd CI / dev env inconsistencies since plugins like `setup-uv` in GitHub Actions will read and install the `required-version` auto-magically.

Can we get either:

1. An automagical version resolution from the `pyproject.toml` (path-configurable with repo-root default), and/or
2. Minor version tags in this repo which are kept up to date with the latest matching patch tags (ie. `rev: 0.12` -> `rev 0.12.11` as of time of posting)?

The former seems to be the "unified" way - the latter is a relaxed option.

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with the proposed [tool.uv] required-version setting in pyproject.toml and review how setup-uv currently discovers it in GitHub Actions. Compare automatic version resolution with maintaining minor-version tags, then define which behavior and update rules would count as complete.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions, python
Domain
ci-cd, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.