Skip to content

Releases: openapi-generators/openapi-python-client

0.29.0 (2026-05-30)

Choose a tag to compare

@knope-bot knope-bot released this 30 May 20:31
Immutable release. Only release title and notes can be modified.
7939364

Breaking Changes

  • Drop support for Python 3.10
  • Raise minimum httpx version to 0.23.1

Features

  • replace python-dateutil with stdlib datetime.fromisoformat (#1429)

Fixes

  • Remove some generated casts that aren't necessary with mypy v2 (#1436)
  • Explicitly set boundary for multipart/form-data (#1005)

0.28.4 (2026-05-11)

Choose a tag to compare

@knope-bot knope-bot released this 11 May 19:43
284576f

Features

  • Update uv_build to 0.11 when using --meta=uv (#1434)

Add support for x-enum-varnames to string enums

#1358 by @mbbush

You can now customize the variable names of the generated string enumerations using the x-enum-varnames openapi extension. Previously, this was only possible for integer enumerations.

0.28.3 (2026-02-17)

Choose a tag to compare

@knope-bot knope-bot released this 05 Mar 23:44
b18a0a9

Fixes

  • sort remaining lazy imports in model template (#1400)

0.28.2 (2026-02-09)

Choose a tag to compare

@dbanty dbanty released this 12 Feb 01:34
410784b

Features

  • Update uv_build 0.10 when using --meta=uv (#1396)

0.28.1 (2026-01-10)

Choose a tag to compare

@knope-bot knope-bot released this 10 Jan 23:19
454f989

Fixes

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

0.28.0 (2025-12-03)

Choose a tag to compare

@knope-bot knope-bot released this 03 Dec 20:53
49fa8fc

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)

Choose a tag to compare

@knope-bot knope-bot released this 03 Nov 15:30
c41e22a

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)

Choose a tag to compare

@knope-bot knope-bot released this 28 Oct 00:43
0d79568

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)

Choose a tag to compare

@knope-bot knope-bot released this 06 Oct 14:20
f8cadc0

Fixes

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

0.26.1 (2025-09-13)

Choose a tag to compare

@knope-bot knope-bot released this 13 Sep 05:49
afdf068

Features

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