Skip to content

Releases: openapi-generators/openapi-python-client

0.28.1 (2026-01-10)

10 Jan 23:19
454f989

Choose a tag to compare

Fixes

  • Apply required overrides from allOf schemas (#1384)
  • Sort lazy imports to increase stability of generated code (#1378)

0.28.0 (2025-12-03)

03 Dec 20:53
49fa8fc

Choose a tag to compare

Breaking Changes

  • URL-encode path parameters in generated endpoints (#1349)

Fixes

Fix bad code generation

#1360 by @EricAtORS

This fixes:

  • missing parenthesis in to_multipart
    #1338 #1318
  • missing imports in the lazy eval in to_multipart:
    #931 and #1051

Fix optional bodies

If a body is not required (the default), it will now:

  1. Have Unset as part of its type annotation.
  2. Default to a value of UNSET
  3. Not be included in the request if it is UNSET

Thanks @orelmaliach for the report! Fixes #1354

0.27.1 (2025-11-03)

03 Nov 15:30
c41e22a

Choose a tag to compare

Fixes

  • Remove non-existent CHANGELOG.md references from UV and Poetry templates (#1344)
  • Initialize optional lists as UNSET, not [] (#1346)
  • Correct docstring typos in client template (#1347)
  • Replace bare except blocks with specific exception types (#1348)

Update uv_build to 0.9

#1352 by @johnthagen

uv has been in the 0.9.x release cycle for a while, so update templates to use the corresponding uv_build range.

0.27.0 (2025-10-28)

28 Oct 00:43
0d79568

Choose a tag to compare

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

0.26.2 (2025-10-06)

06 Oct 14:20
f8cadc0

Choose a tag to compare

Fixes

  • ambigious tilde specifier requires-python with--meta=uv (#1321)

0.26.1 (2025-09-13)

13 Sep 05:49
afdf068

Choose a tag to compare

Features

  • Reference schema support (#800) (#1307)
  • Support Ruff 0.13

0.26.0 (2025-08-26)

26 Aug 03:01
655b218

Choose a tag to compare

Breaking Changes

Change some union variant names

When creating a union with oneOf, anyOf, or a list of type, the name of each variant used to be type_{index}
where the index is based on the order of the types in the union.

This made some modules difficult to understand, what is a my_type_type_0 after all?
It also meant that reordering union members, while not a breaking change to the API, would be a breaking change
for generated clients.

Now, if an individual variant has a title attribute, that title will be used in the name instead.
This is only an enhancement for documents which use title in union variants, and only a breaking change for
inline models (not #/components/schemas which should already have used more descriptive names).

Thanks @wallagib for PR #962!

Features

Support patterned and default HTTP statuses

HTTP statuses like 2XX and default are now supported!

A big thank you to:

Closes #1271 and #832

Note

Custom template users: the endpoint.responses type has changed quite a bit. Check out #1303 for the changes.

0.25.3 (2025-07-21)

28 Jul 01:25
1bbbaf3

Choose a tag to compare

Features

  • Add --meta uv for generating astral-sh/uv compatible packages. (#1286)
  • Switch to uv_build build backend. (#1290)

0.25.2 (2025-07-03)

03 Jul 02:41
77fe4ec

Choose a tag to compare

Fixes

0.25.1 (2025-06-19)

19 Jun 15:14
b46474c

Choose a tag to compare

Fixes

  • Support ruff 0.12 (#1270)