Skip to content

Commit 0d79568

Browse files
Release 0.27.0 (#1330)
> [!IMPORTANT] > Merging this pull request will create this release ## Breaking Changes ### Drop support for Python 3.9 Both `openapi-python-client` itself and any generated clients no longer support Python 3.9. ### Generated models now use `from __future__ import annotations` This simplifies using forward references with the newer union syntax. ## Features ### Upgrade generated clients to 3.10 union syntax All generated types now use the `A | B` syntax instead of `Union[A, B]` or `Optional[A]`. ## Fixes - Drop generated `requires-python` upper bounds for uv and PDM (#1329) ### Change default Ruff hook to `--fix-only` This should enable `openapi-python-client` to keep auto-fixing lints (like removing unused imports) but _not_ fail to generate when unfixable lints are violated. Since it's now unlikely for breaking changes to affect our usage (and by popular request), the upper bound of `ruff` has been lifted. Newer versions of `openapi-python-client` should no longer be required to support newer versions of `ruff`. ## Notes - Minimum Typer version is now 0.16 Co-authored-by: knope-bot[bot] <152252888+knope-bot[bot]@users.noreply.github.com>
1 parent 345bbbb commit 0d79568

7 files changed

+35
-38
lines changed

.changeset/change_default_ruff_hook_to_fix_only.md

Lines changed: 0 additions & 11 deletions
This file was deleted.

.changeset/drop_support_for_python_39.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/generated_models_now_use_from_future_import_annotations.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/minimum_typer_version_is_now_016.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/upgrade_generated_clients_to_310_union_syntax.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,40 @@ Programmatic usage of this project (e.g., importing it as a Python module) and t
1313

1414
The 0.x prefix used in versions for this project is to indicate that breaking changes are expected frequently (several times a year). Breaking changes will increment the minor number, all other changes will increment the patch number. You can track the progress toward 1.0 [here](https://github.com/openapi-generators/openapi-python-client/projects/2).
1515

16+
## 0.27.0 (2025-10-28)
17+
18+
### Breaking Changes
19+
20+
#### Drop support for Python 3.9
21+
22+
Both `openapi-python-client` itself and any generated clients no longer support Python 3.9.
23+
24+
#### Generated models now use `from __future__ import annotations`
25+
26+
This simplifies using forward references with the newer union syntax.
27+
28+
### Features
29+
30+
#### Upgrade generated clients to 3.10 union syntax
31+
32+
All generated types now use the `A | B` syntax instead of `Union[A, B]` or `Optional[A]`.
33+
34+
### Fixes
35+
36+
- Drop generated `requires-python` upper bounds for uv and PDM (#1329)
37+
38+
#### Change default Ruff hook to `--fix-only`
39+
40+
This should enable `openapi-python-client` to keep auto-fixing lints (like removing unused imports) but _not_ fail to
41+
generate when unfixable lints are violated.
42+
43+
Since it's now unlikely for breaking changes to affect our usage (and by popular request), the upper bound of `ruff`
44+
has been lifted. Newer versions of `openapi-python-client` should no longer be required to support newer versions of `ruff`.
45+
46+
### Notes
47+
48+
- Minimum Typer version is now 0.16
49+
1650
## 0.26.2 (2025-10-06)
1751

1852
### Fixes

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ dependencies = [
1717
"ruff>=0.2",
1818
]
1919
name = "openapi-python-client"
20-
version = "0.26.2"
20+
version = "0.27.0"
2121
description = "Generate modern Python clients from OpenAPI"
2222
keywords = [
2323
"OpenAPI",

0 commit comments

Comments
 (0)