All notable changes to this project are documented in this file. This changelog is automatically generated from GitHub Releases.
0.6.0 - 2026-04-30
- Dropped Python 3.9 runtime support - Package metadata now requires Python 3.10 or newer, removes the Python 3.9 classifier, and updates the supported runtime range to Python 3.10 through 3.14 (#514)
- Dropped Python 3.9 target generation - The CLI
--python-versionchoices no longer include3.9, so users generating Python 3.9-compatible output need to stay on an older release or target Python 3.10+ (#534)
- Removed the Pydantic v1 BaseModel output option -
--output-model-typeno longer exposespydantic.BaseModel, and scripts that pass that value need to switch to a supported output backend (#534)
- Changed the default model backend to Pydantic v2 -
--output-model-typenow defaults topydantic_v2.BaseModel, which changes generated model imports and configuration unless users explicitly choose another backend (#534)
- Changed generated FastAPI parameter and model output - Optional query parameters may now use explicit
Query(...)defaults or aliases, and generated models move from Pydantic v1 patterns to Pydantic v2-style configuration (#534)
- remove typed-ast (EOL) from dependencies and update poetry.lock by @marcoemorais in #483
- Bump pytest-cov from 5.0.0 to 7.1.0 by @dependabot[bot] in #502
- chore: migrate to uv and support Python 3.10-3.14 by @koxudaxi in #514
- Add CLI E2E coverage pipeline by @koxudaxi in #516
- Port workflow and docs automation stack by @koxudaxi in #517
- Update hatchling requirement from >=1.27 to >=1.29.0 by @dependabot[bot] in #528
- Align CI/CD hardening workflows by @koxudaxi in #538
- Align CI workflows with datamodel-code-generator by @koxudaxi in #539
- Harden generated docs CI checks by @koxudaxi in #551
- Update datamodel-code-generator to 0.56.1 by @koxudaxi in #534
- fix: Allow hyphen in tags by @koxudaxi in #552
- fix: Allow hyphen in tags by @tobias-bahls in #497
- Fix a versioning issue with click by @relaxbox in #498
- Support for use-annotated by @jnu in #518
- Fix PR 518 followups by @koxudaxi in #555
- Preserve router path parameter names by @koxudaxi in #554
- Expose plain arguments by @LuisHsu in #454
- Fix multiple file upload generation by @koxudaxi in #553
- Add support for setting strict_nullable from CLI by @greg80303 in #493
- Fix specify-tags router filtering by @koxudaxi in #558
- Fix stringcase dependency with setuptools 78.0.0 by @koxudaxi in #565
- Add faux immutability option by @koxudaxi in #569
- Fix discriminated union simple types by @koxudaxi in #566
- Expose reuse model option by @koxudaxi in #568
- Preserve query array parameter types by @koxudaxi in #567
- Restore release draft analysis by @koxudaxi in #571
- Fix release draft gh repository context by @koxudaxi in #572
- Fix release draft label permissions by @koxudaxi in #573
- Use REST API for release draft labels by @koxudaxi in #574
- Fix release draft PR label scope by @koxudaxi in #575
- @marcoemorais made their first contribution in #483
- @tobias-bahls made their first contribution in #497
- @relaxbox made their first contribution in #498
- @LuisHsu made their first contribution in #454
- @greg80303 made their first contribution in #493
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.5.4...0.6.0
0.5.4 - 2025-04-29
- Remove deprecated datamodel-code-generator patch by @sternakt in #489
- Bump version by @sternakt in #490
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.5.3...0.5.4
0.5.3 - 2025-04-16
- Improve code generation with fixes for recursion, aliasing, and modular references by @sternakt in #484
- Fix docs build in CI by @davorrunje in #485
- Fix publish in CI by @davorrunje in #486
- @sternakt made their first contribution in #484
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.5.2...0.5.3
0.5.3rc0 - 2025-04-16
- Improve code generation with fixes for recursion, aliasing, and modular references by @sternakt in #484
- Fix docs build in CI by @davorrunje in #485
- Fix publish in CI by @davorrunje in #486
- @sternakt made their first contribution in #484
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.5.2...0.5.3rc0
0.5.2 - 2024-12-14
- Fix target_python_version by @chantera in #445
- Fix parameter field name by @chantera in #446
- Add
--model-template-diroption by @chantera in #447
- @chantera made their first contribution in #445
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.5.1...0.5.2
0.5.1 - 2024-07-02
- Update typer by @davorrunje in #430
- Support for Pydantic 2 & additional python versions by @jnu in #414
- Fix generate_code args by @koxudaxi in #436
- fix inconsistency routers<>tags arrays by @azdolinski in #417
- 419 / Support for parsing callbacks by @jnu in #420
- @davorrunje made their first contribution in #430
- @jnu made their first contribution in #414
- @azdolinski made their first contribution in #417
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.5.0...0.5.1
0.5.0 - 2024-05-02
- Update pydantic to v2 and update datamodel-code-generator to 0.25.6 by @kumaranvpl in #408
- @kumaranvpl made their first contribution in #408
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.4.4...0.5.0
0.4.4 - 2023-09-07
- Generate correct python code if path is camel case by @yyamano in #380
- Generate valid python code if query param exists and requestBody is required by @yyamano in #382
- Allow modular output with custom templates by @notpushkin in #384
- Fixed broken test (Added option for inputting encoding of file #334) by @yyamano in #383
- @notpushkin made their first contribution in #384
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.4.3...0.4.4
0.4.3 - 2023-08-19
- Don't overwrite files in tests/data at testing time by @yyamano in #373
- Add file upload support for both octet-stream and form-data by @yyamano in #374
- Generate valid python code if query param has default value and requestBody is required by @yyamano in #377
- Generate an empty model file if an api spec file have no "schemas". by @yyamano in #375
- @yyamano made their first contribution in #373
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.4.2...0.4.3
0.4.2 - 2023-04-27
- Feature/generate routers by @v1kAn0v in #344
- Enable custom visitors when enum_field_as_literal parameter is passed by @dmille in #332
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.4.1...0.4.2
0.4.1 - 2023-02-15
- Add support for file upload (application/octet-stream) by @david-westreicher in #313
- Add
--disable-timestampby @ytoml in #324
- @david-westreicher made their first contribution in #313
- @ytoml made their first contribution in #324
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.4.0...0.4.1
0.4.0 - 2023-01-17
- add tags to default template by @n0nvme in #309
- Update datamodel-code-generator by @koxudaxi in #311
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.3.6...0.4.0
0.3.6 - 2022-10-24
- Fix tests - Issue #260 by @jcarlosgalvezm in #266
- add custom variables support by @sofianhnaide in #247
- Bump jinja2 from 3.0.3 to 3.1.2 by @dependabot in #250
- add .pre-commit-config.yaml by @koxudaxi in #283
- Update dependencies by @koxudaxi in #284
- @jcarlosgalvezm made their first contribution in #266
- @sofianhnaide made their first contribution in #247
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.3.5...0.3.6
0.3.5 - 2022-05-13
- Update datamodel code generator to 0.11.19 by @n0nvme in #231
- @n0nvme made their first contribution in #231
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.3.4...0.3.5
0.3.4 - 2021-12-03
- Adding support for datamodel-code-generator's enum-field-as-literal argument by @LongBeachHXC in #224
- @LongBeachHXC made their first contribution in #224
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.3.3...0.3.4
0.3.3 - 2021-12-03
- Fix model file by @koxudaxi in #223
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.3.2...0.3.3
0.3.2 - 2021-11-29
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.3.1...0.3.2
0.3.1 - 2021-11-28
- Add description on operation by @koxudaxi in #187
- Bump datamodel-code-generator from 0.11.9 to 0.11.11 by @dependabot in #188
- Bump typer from 0.3.2 to 0.4.0 by @dependabot in #193
- Bump pytest from 6.2.4 to 6.2.5 by @dependabot in #194
- Update datamodel-code-generator to 0.11.12 by @koxudaxi in #195
- Bump datamodel-code-generator from 0.11.12 to 0.11.13 by @dependabot in #198
- Bump datamodel-code-generator from 0.11.13 to 0.11.14 by @dependabot in #200
- Bump jinja2 from 3.0.1 to 3.0.3 by @dependabot in #211
- Bump pytest-cov from 2.12.1 to 3.0.0 by @dependabot in #202
- Fix typed-ast by @koxudaxi in #216
- Add additional responses by @rominf in #203
- Added option to specify model file instead of defaulting to models.py by @baophamtd in #204
- Add servers by @rominf in #206
Full Changelog: https://github.com/koxudaxi/fastapi-code-generator/compare/0.3.0...0.3.1
0.3.0 - 2021-08-08
- Refactor parser [#167]
0.2.7 - 2021-06-17
- Fix invalid argument order [#174]
0.2.6 - 2021-05-29
- Add the various parameter in operators for query, path, header, body [#162] by @allen-munsch
Thanks to @allen-munsch
0.2.5 - 2021-05-04
- Update datamodel-code-generator to 0.11.3 [#150]
- Support content in parameters [#149]
0.2.4 - 2021-04-29
- now it's possible to use tags in templates [#144] by @yetanotherjsontodatabaseexporter
Thanks to @yetanotherjsontodatabaseexporter
0.2.3 - 2021-03-01
- Support form with Request [#121]
0.2.2 - 2021-02-19
Add model module name [#113]
0.2.1 - 2021-02-18
- Update datamodel-code-generator to 0.8.1 [#112]
0.2.0 - 2021-01-25
- Support embedded array schema [#100]
- Support embedded schema [#99]
- Update datamodel-code-generator to 0.6.22 [#91]
0.1.1 - 2021-01-12
- Fix resolving template path [#87]
0.1.0 - 2021-01-07
- update datamodel-code-generator to 0.6.17 [#83]
- Support multi-line string values for openapi keys [#80] by @ bpow
Thanks to @bpow
0.0.19 - 2020-12-02
- move black to dev dependencies [#65]
0.0.18 - 2020-11-21
- support summary [#63]
0.0.17 - 2020-11-14
- Support python39 [#59]
- Support python37 [#58]
- Support remote ref on parameters, requestBodies and responses [#57]
- Use re.compiled object [#50] by @ioggstream
Thanks to @ioggstream
0.0.16 - 2020-11-10
- support $ref parameter [#49]
0.0.15 - 2020-11-09
- support application json variant [#47 ]
0.0.14 - 2020-11-04
- improve model management [#45]
- add info parser [#42] by @akuma5157
- support $ref in response [#29]
Thanks to @akuma5157
0.0.13 - 2020-07-27
- Yaml is a superset of json. [#23] by @ioggstream
Thanks to @ioggstream
0.0.12 - 2020-06-26
- Support security [#22]
0.0.11 - 2020-06-20
- fix invalid query parameter [#21]
0.0.10 - 2020-06-20
- fix default [#20]
0.0.9 - 2020-06-19
- fix default value of query parameter [#18]
0.0.8 - 2020-06-18
- fix invalid required [#14]
0.0.7 - 2020-06-18
- Support aliased query parameter [#11]
0.0.6 - 2020-06-17
- add fields to argument [#10]
0.0.5 - 2020-06-17
- fix default arguments [#9]
0.0.4 - 2020-06-16
- fix invalid root_path and parameters [#8]
0.0.3 - 2020-06-16
- refactor parse paths method [#5]
0.0.2 - 2020-06-15
- Refactor openapi parser [#4]
0.0.1 - 2020-06-14
- support to generate simple main.py