Openapi-python-client

Latest version: v0.23.1

Safety actively analyzes 701903 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 1 of 14

2.10

1176 by Viicos

Set `defer_build` to models that we know will fail to build, and call `model_rebuild`
in the `__init__.py` file.

1.2

This change switches the YAML parsing library to `ruamel.yaml` which follows the YAML 1.2 specification.
[There are breaking changes](https://yaml.readthedocs.io/en/latest/pyyaml/#defaulting-to-yaml-12-support) from YAML 1.1 to 1.2,
though they will not affect most use cases.

PR 1042 fixes 1041. Thanks rtaycher!

Features

- allow Ruff 0.4 (1031)

Fixes

Fix nullable and required properties in multipart bodies

Fixes 926.

> [!WARNING]
> This change is likely to break custom templates. Multipart body handling has been completely split from JSON bodies.

0.23.1

Features

- allow Ruff 0.9 (1192)

0.23.0

Breaking Changes

Delete fewer files with `--overwrite`

`--overwrite` will no longer delete the entire output directory before regenerating. Instead, it will only delete
specific, known directories within that directory. Right now, that is only the generated `models` and `api` directories.

Other generated files, like `README.md`, will be overwritten. Extra files and directories outside of those listed above
will be left untouched, so you can any extra modules or files around while still updating `pyproject.toml` automatically.

Closes 1105.

Features

- Support httpx 0.28 (1172)

Add `generate_all_tags` config option

You can now, optionally, generate **duplicate** endpoint functions/modules using _every_ tag for an endpoint,
not just the first one, by setting `generate_all_tags: true` in your configuration file.

Fixes

- Support Typer 0.14 and 0.15 (1173)

Fix minimum `attrs` version

The minimum `attrs` dependency version was incorrectly set to 21.3.0. This has been corrected to 22.2.0, the minimum
supported version since `openapi-python-client` 0.19.1.

Closes 1084, thanks astralblue!

0.22.0

Breaking Changes

Drop support for Python 3.8

Python 3.8 is no longer supported. "New" 3.9 syntax, like generics on builtin collections, is used both in the generator
and the generated code.

`type` is now a reserved field name

Because `type` is used in type annotations now, it is no longer a valid field name. Fields which were previously named
`type` will be renamed to `type_`.

Features

- Support Ruff 0.8 (1169)

0.21.7

Fixes

- allow required fields list to be specified as empty (651) (1149)
- import cast for required const properties, since it's used in the template (1153)

Page 1 of 14

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.