Download Latest Version v7.23.0 released source code.zip (109.4 MB)
Email in envelope

Get an email when there's a new version of OpenAPI Generator

Home / v7.23.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2026-06-08 6.8 kB
v7.23.0 released source code.tar.gz 2026-06-08 55.4 MB
v7.23.0 released source code.zip 2026-06-08 109.4 MB
Totals: 3 Items   164.8 MB 2

v7.23.0 stable release (breaking changes with fallbacks) comes with 170+ enhancements and bug fixes.

This release comes with 2 breaking changes (with fallback):

  • [jaxrs-spec][quarkus] Emit @RolesAllowed({"**"}) for HTTP Basic, Bearer, api-key and OAuth2 or OpenID with empty scopes and rename "useQuarkusSecurityAnnotations" to "useJakartaSecurityAnnotations" (Breaking change (with fallback)) [#23680]
  • fix(Kotlin): use the global apiNamePrefix and apiNameSuffix settings instead of apiSuffix (generator's option) (Breaking change (with fallback)) [#23926]

Below are the highlights of the changes. For a full list of changes, please refer to the "Pull Request" tab.

General

  • Normalizer: new rule LOOSE_NULL_DEFINITIONS to allow more null definitions in 3.0 spec. [#23932]
  • fix(InlineModelResolver): prevent numbered duplicate models from multi-file OAS 3.1 specs [#23856]
  • fix(core): normalize OAS 3.1 content media schemas [#23851]
  • [GRADLE-WRAPPER] feat: add configurable worker isolation and max heap size for code generation [#23648] by
  • [GRADLE-WRAPPER] bug fix - pass maven java_home to gradle correctly [#23646]
  • Add security schemes filter normalizer option [#23174]

C

  • [csharp][generichost] Deserialize present-but-null nullable enums [#23912]
  • [csharp] Fix HTTP signature auth failure on .NET 8 when query params contain special characters [#23714]
  • [csharp][restsharp] add throwOnAnyError option to surface client errors [#23663]
  • Fix/csharp reserved headers and file parameter not serialising correctly [#23593]
  • [csharp] Extend HostConfiguration with additional AddApiHttpClients signatures [#22500]

Dart

  • feat(dart): make requests abortable [#23930]
  • [Dart] Preserve uppercase names with trailing digits [#23894]
  • [BUG][DART] fix nullable nested array item handling [#23365]

Go

  • fix(go): avoid duplicate unknown enum defaults [#23909]
  • [go] support io.Reader and []byte response types in client decode [#23789]

Java

  • [Java][restclient] Build XmlMapper via builder when useJackson3=true [#23872]
  • [Java] [vertx] Allow PoolOptions configuration when vertx 5 [#23829]
  • feat(java/jersey3): add jackson 3 support [#23819]
  • feat(java/jersey3): Update jakarta annotation and validation libs [#23810]
  • [JAVA-SPRING] spring http interface library should support 'useBeanValidation' [#23803]
  • [jaxrs-spec][quarkus] Emit @PermitAll for unauthenticated operations (op/global empty security, anonymous OR alternative, no security defined) [#23782]
  • [JavaJaxRS] [CXF] Add Support for Jackson3 [#23767]
  • [jaxrs-spec][quarkus] Emit @RolesAllowed({scope}) for OAuth2 and OpenID Connect operations with explicit scopes [#23752]
  • [jaxrs-spec][quarkus] - Add CLI flag (useQuarkusSecurityAnnotations) to enable emitting security annotation (@Authenticated, @RolesAllowed, @PermitAll) [#23699]
  • [JAVA-SPRING;KOTLIN-SPRING] feature - add support for 'substituteGenericPagedModel' also for 'spring-cloud' libraries [#23690]
  • [jaxrs-spec][quarkus] Emit @RolesAllowed({"**"}) for HTTP Basic, Bearer, api-key and OAuth2 or OpenID with empty scopes and rename "useQuarkusSecurityAnnotations" to "useJakartaSecurityAnnotations" (Breaking change (with fallback)) [#23680]
  • [jaxrs-spec][quarkus]: Emit @ResponseStatus annotation for 2XX success codes [#23673]
  • [Java] [vertx] Make supportVertxFuture compatible with vertx 5 [#23660]
  • Fix Jspecify nullable issue with spring boot 4 [#23649]
  • [java][spring] fix: disableDiscriminatorJsonIgnoreProperties not working [#23640]
  • [java] Support 'time-local' format [#23555]
  • [java] Support 'date-time-local' format [#23395]
  • [Spring] Add clientRegistrationId option for OAuth2 HTTP Interface [#22726]

Kotlin

  • fix(Kotlin): use the global apiNamePrefix and apiNameSuffix settings instead of apiSuffix (generator's option) (Breaking change (with fallback)) [#23926]
  • [kotlin-client][jvm-ktor] Support nullable response types [#23870]
  • feat(kotlin-client): support dynamic auth credentials for okhttp client (#23835) [#23836]
  • [KOTLIN-SPRING] - add support for 'openApiNullable' - jackson nullable library to handle non-required AND nullable: true properties [#23804]
  • [Kotlin] Fix explicitApi/nonPublicApi/generateOneOfAnyOfWrappers generation for kotlinx_serialization [#23796]
  • [Kotlin][ktor] add delegate pattern support [#23756]
  • [JAVA-SPRING;KOTLIN-SPRING] feature - add support for 'substituteGenericPagedModel' also for 'spring-cloud' libraries [#23690]
  • [KOTLIN-SPRING] Feature - add support for 'useDeductionForOneOfInterfaces' [#23677]
  • [KOTLIN]: add 'bestEffortBacktick' naming option for Kotlin enums [#23620]
  • feat(kotlin-spring): add suspendFunctions option for coroutine support [#23444]

Python

  • [Python] fix constraint settings for decimalType [#23928]
  • [python] Fix invalid pip syntax for httpx/tornado in requirements.txt [#23889]
  • [python-fastapi] type binary multipart fields as UploadFile [#23793]
  • Fix Python (e.g. FastApi) example generation [#23537]

PHP

  • [php-nextgen] Check for $openApiType === "string" instead of "\DateTime" in ObjectSerializer [#23937]

PowerShell

  • PowerShell: fix enum string starting with a number [#23715]

Rust

  • [rust-salvo] Add Rust server generator targeting the Salvo web framework (New Generator) [#23772]

Scala

  • [scala-http4s] Fix name mapping of discriminator property [#23853]
  • [scala-http4s] Preserve underscores in enum names [#23842]
  • [scala-sttp4-jsoniter] extend Primitive type with UUID, LocalDate and OffsetDateTime [#23801]
  • [Fix][scala-sttp] Register JSON value type in importMapping to avoid model-package-prefixed import [#23652]
  • feat: add support for oneOf in sttp4 client [#22916]

Swift

  • [swift5][swift6] Add additionalModelObjectAttributes/EnumAttributes/Imports [#23773]
  • [BUG][SWIFT6] unalias additionalProperties before building map type declaration [#23668]
  • [swift5/swift6] Fix oneOf decoding when enumUnknownDefaultCase is enabled [#23496]

TypeScript

  • [Typescript] Enum types (#18531) [#23921]
  • [typescript-nestjs] Use paramName for URL path substitution (fixes [#16668]) [#23868]
  • [typescript-fetch] Fix nested oneOf generating uncompilable interface extends on union type [#23501]
  • [typescript-fetch] Fix oneOf with mixed array types causing TypeScript compile error [#23500]
  • [typescript-fetch] Fix instanceOf type guards for discriminated unions [#23497]
  • [typescript-fetch] Bugfix additional properties in multipart requests
Source: README.md, updated 2026-06-08