openapi-generators / openapi-python-client

Generate modern Python clients from OpenAPI
MIT License
1.28k stars 197 forks source link

chore: prepare release 0.21.0 #1053

Closed dbanty closed 3 months ago

dbanty commented 3 months ago

This PR was created by Knope. Merging it will create a new release

Breaking Changes

Removed the update command

The update command is no more, you can (mostly) replace its usage with some new flags on the generate command.

If you had a package named my-api-client in the current working directory, the update command previously would update the my_api_client module within it. You can now almost perfectly replicate this behavior using openapi-python-client generate --meta=none --output-path=my-api-client/my_api_client --overwrite.

The only difference is that my-api-client would have run post_hooks in the my-api-client directory, but generate will run post_hooks in the output-path directory.

Alternatively, you can now also run openapi-python-client generate --meta=<your-meta-type> --overwrite to regenerate the entire client, if you don't care about keeping any changes you've made to the generated client.

Please comment on discussion #824 (or a new discussion, as appropriate) to aid in designing future features that fill any gaps this leaves for you.

Features

Added an --output-path option to generate

Rather than changing directories before running generate you can now specify an output directory with --output-path. Note that the project name will not be appended to the --output-path, whatever path you specify is where the generated code will be placed.

Added an --overwrite flag to generate

You can now tell openapi-python-client to overwrite an existing directory, rather than deleting it yourself before running generate.