mirror of
https://github.com/astral-sh/uv.git
synced 2025-08-05 03:18:01 +00:00

Releasing 0.2.15 with a few additions over 0.2.14. Motivated by the incorrect tagging of 0.2.14 (#4474). Generated the changelog with a small patch to Rooster allowing me to force the previous commit to be correct. ```diff diff --git a/src/rooster/_cli.py b/src/rooster/_cli.py index 2a4f61b..4ec1299 100644 --- a/src/rooster/_cli.py +++ b/src/rooster/_cli.py @@ -38,6 +38,7 @@ def release( without_sections: list[str] = typer.Option( [], help="Sections to exclude from the changelog" ), + previous_commit: str = None, ): """ Create a new release. @@ -58,7 +59,11 @@ def release( typer.echo("It looks like there are no version tags for this project.") # Get the commits since the last release - changes = list(get_commits_between(config, repo, last_version)) + changes = list( + get_commits_between( + config, repo, last_version, force_first_commit=previous_commit + ) + ) since = "since last release" if last_version else "in the project" typer.echo(f"Found {len(changes)} commits {since}.") diff --git a/src/rooster/_git.py b/src/rooster/_git.py index 597bb88..66bc54e 100644 --- a/src/rooster/_git.py +++ b/src/rooster/_git.py @@ -29,12 +29,13 @@ def get_commits_between( target: Path, first_version: Version | None = None, second_version: Version | None = None, + force_first_commit: str | None = None, ) -> Generator[git.Commit, None, None]: """ Yield all commits between two tags """ repo = git.repository.Repository(target.absolute()) - first_commit = ( + first_commit = force_first_commit or ( repo.lookup_reference( TAG_PREFIX + config.version_tag_prefix + str(first_version) ) ```
12 KiB
12 KiB
Changelog
0.2.15
0.2.14
Preview features
- Expose
toolchain-preference
as a CLI and configuration file option (#4424) - Improve handling of command arguments in
uv run
anduv tool run
(#4404) - Add
tool.uv.sources
support foruv add
(#4406) - Use correct lock path for workspace dependencies (#4421)
- Filter out sibling dependencies in resolver forks (#4415)
0.2.13
Preview features
- Add
--workspace
option touv add
(#4362) - Ignore query errors during
uv toolchain list
(#4382) - Respect
.python-version
files and fetch manged toolchains in uv project commands (#4361) - Respect
.python-version
inuv venv --preview
(#4360)
0.2.12
Preview features
- Add
--force
option touv toolchain install
(#4313) - Add
--no-build
,--no-build-package
, and binary variants (#4322) - Add
EXTERNALLY-MANAGED
markers to managed toolchains (#4312) - Add
uv toolchain find
(#4206) - Add persistent configuration for non-
pip
APIs (#4294) - Add support for adding/removing development dependencies (#4327)
- Add support for listing system toolchains (#4172)
- Add support for toolchain requests by key (#4332)
- Allow multiple toolchains to be requested in
uv toolchain install
(#4334) - Fix relative and absolute path handling in lockfiles (#4266)
- Load configuration options from workspace root (#4295)
- Omit project name from workspace errors (#4299)
- Read Python version files during toolchain installs (#4335)
- Remove extraneous installations in
uv sync
by default (#4366) - Respect
requires-python
inuv lock
(#4282) - Respect workspace-wide
requires-python
in interpreter selection (#4298) - Support unnamed requirements in
uv add
(#4326) - Use portable slash paths in lockfile (#4324)
- Use registry URL for fetching source distributions from lockfile (#4280)
uv sync --no-clean
(#4367)- Filter dependencies by tracking markers on resolver forks (#4339)
- Use
Requires-Python
to filter dependencies during universal resolution (#4273)
0.2.11
Preview features
- Add changelog for preview changes (#4251)
- Allow direct URLs for dev dependencies (#4233)
- Create temporary environments in dedicated cache bucket (#4223)
- Improve output when an older toolchain version is already installed (#4248)
- Initial implementation of
uv add
anduv remove
(#4193) - Refactor project interpreter request for
requires-python
specifiers (#4216) - Replace
toolchain fetch
withtoolchain install
(#4228) - Support locking relative paths (#4205)
- Warn when 'requires-python' does not include a lower bound (#4234)
0.2.10
Preview features
- Add
uv toolchain install
(#4164) - Add
uv toolchain list
(#4163) - Add extra and dev dependency validation to lockfile (#4112)
- Add markers to edges rather than distributions (#4166)
- Cap
Requires-Python
comparisons at the patch version (#4150) - Do not create a virtual environment when locking (#4147)
- Don't panic with invalid wheel source (#4191)
- Fetch managed toolchains in
uv run
(#4143) - Fix PEP 508 link in preview doc
specifying_dependencies
(#4158) - Ignore tags in universal resolution (#4174)
- Implement
Toolchain::find_or_fetch
and use inuv venv --preview
(#4138) - Lock all packages in workspace (#4016)
- Recreate project environment if
--python
orrequires-python
doesn't match (#3945) - Respect
--find-links
inlock
andsync
(#4183) - Set
--dev
to default foruv run
anduv sync
(#4118) - Track
Markers
via a PubGrub package variant (#4123) - Use union of
requires-python
in workspace (#4041) - make universal resolver fork only when markers are disjoint (#4135)
0.2.9
Preview features
- Add support for development dependencies (#4036)
- Avoid enforcing distribution ID uniqueness for extras (#4104)
- Ignore upper-bounds on
Requires-Python
(#4086)
0.2.8
Preview features
- Default to current Python minor if
Requires-Python
is absent (#4070) - Enforce
Requires-Python
when syncing (#4068) - Track supported Python range in lockfile (#4065)
0.2.7
Preview features
- Fix a bug where no warning is output when parsing of workspace settings fails. (#4014)
- Normalize extras in lockfile (#3958)
- Respect
Requires-Python
in universal resolution (#3998)
0.2.6
Preview features
- Add
uv run --package
(#3864) - Add index URL parameters to Project CLI (#3984)
- Avoid re-adding solutions to forked state (#3967)
- Draft for user docs for workspaces (#3866)
- Include all extras when generating lockfile (#3912)
- Remove unstable uv lock from pip interface (#3970)
- Respect resolved Git SHAs in
uv lock
(#3956) - Use lockfile in
uv run
(#3894) - Use lockfile versions as resolution preferences (#3921)
- Use universal resolution in
uv lock
(#3969)
0.2.5
Preview features
- Add context to failed
uv tool run
(#3882) - Add persistent storage of installed toolchains (#3797)
- Gate discovery of managed toolchains with preview (#3835)
- Initial workspace support (#3705)
- Move editable discovery behind
--preview
for now (#3884)
0.2.4
0.2.3
Preview features
- Allow specification of additional requirements in
uv tool run
(#3678)
0.2.2
0.2.1
Preview features
- Allow users to specify a custom source package to
uv tool run
(#3677)
0.2.0
Preview features
- Add initial implementation of
uv tool run
(#3657) - Add offline support to
uv tool run
anduv run
(#3676) - Better error message for
uv run
failures (#3691) - Discover workspaces without using them in resolution (#3585)
- Support editables in
uv sync
(#3692) - Track editable requirements in lockfile (#3725)
0.1.45
Preview features
- Add direct URL conversion to lockfile (#3633)
- Add hashes and versions to all distributions (#3589)
- Add local path conversions from lockfile (#3609)
- Add missing
"directory"
branch in source match (#3608) - Add registry file size to lockfile (#3652)
- Add registry source distribution support to lockfile (#3649)
- Refactor editables for supporting them in bluejay commands (#3639)
- Rename
sourcedist
tosdist
in lockfile (#3590) - Respect installed packages in
uv run
(#3603) - Support lossless serialization for Git dependencies in lockfile (#3630)
0.1.44
0.1.43
Preview features
- Create virtualenv if it doesn't exist in project API (#3499)
- Discover
uv run
projects hierarchically (#3494) - Read and write
uv.lock
based on project root (#3497) - Read package name from
pyproject.toml
inuv run
(#3496) - Rebrand workspace API as project API (#3489)
0.1.42
Preview features
- Use environment layering for
uv run --with
(#3447) - Warn when missing minimal bounds when using
tool.uv.sources
(#3452)
0.1.41
0.1.40
Preview features
- Add basic
tool.uv.sources
support (#3263) - Improve non-git error message (#3403)
- Preserve given for
tool.uv.sources
paths (#3412) - Restore verbatim in error message (#3402)
- Use preview mode for tool.uv.sources (#3277)
- Use top-level
--isolated
foruv run
(#3431) - add basic "install from lock file" operation (#3340)
- uv-resolver: add initial version of universal lock file format (#3314)