Releases: OpenAPITools/openapi-generator
v6.0.1 released
v6.0.1 is a patch release with enhancements, bug fixes covering 20 programming languages. As always, we appreciate the contributions from the awesome OpenAPI Generator community.
For the highlight of changes, please refer to the list below. For a full list of changes, please refer to the "Pull Request" tab.
General
- Idea plugin for marking source directories, and omitting gradle wrapper #12711
- Fix bugs in camelcase lambda, add tests for pascalcase #12639
- Add new option to customize inline model naming convention #12562
- Adds the ability to process and use model test cases, uses it in a new v3.0.3 unit test spec #12619
C
- [C][Client] Set the default value for the null json #12620
- [C][Client] Support free-form objects #12557
C#
- [csharp-netcore] fix: url escaping #12739
- [csharp-netcore] Add support for ComVisible, CLSCompliant attributes #12733
- Fix NPE when generating examples for parameter (object) #12538
C++
- [BUG] [CPP-UE4] Fix codegen for nested container types #12747
- [cpp-qt-client] Add support for AnyType objects #12642
Crystal
- [crystal][client] Skip generating operation examples when flag is set #12539
Dart
- [Dart][Client] Support parsing DateTime #12433
Documentation
- [html2] added recursion for nested objects #12428
Elixir
- Improved Elixir Code Generation #12751
Elm
- Fix for invalid elm code for paths containing UUIDs #12506
Go
- [Go] use EqualFold instead instead of comparing strings in lower case #12741
GraphQL
- Graphql nodejs express server lists fixup #12476
Haskell
- [haskell-http-client] relax Aeson constraint to allow Aeson 1 #12486
Java
- Update jackson databind to 2.12.6.1 #12698
- [Java] Update jackson-databind-nullable to 0.2.3 #12693
- [Java] Update RESTEasy lib to newer version #12688
- Fix HTML-escaped token and authorization URLs in Java libraries #12677
- [java][okhttp-gson] Keep AST small when using builder #12610
- [Spring] Fix cookies in parameters are always generated as required #12599
Kotlin
- [Kotlin][Client] replace java.nio.* to avoid crash on Android API 25 and bellow #12529
- [Kotlin] fix invalid code when allOf is used #12594
OCaml
- [OCaml] Code generation fixes #12395
PHP
- [PHP] Enhance Symfony generator #12532
- [php] fix @implements annotations in PHP client #11908
PowerShel
- [PowerShell] support enum integers #12752
Python
- Fixes double serialization bug in python-experimental #12561
- Adds sample client for v3.0.3 unit test spec including autogenerated model tests, test run in CI #12619
- Fixes GetItem not working for Client generated allOf model and broken since 5.2.0 #12239
- Use print() function in both Python 2 and Python 3 #12467
Rust
- Fixes double 'String' on string & UUID type #12409
R
- [R] Add toString method to oneOf/anyOf objects #12727
- [R] Fix nested oneOf/anyOf #12723
- [R] fix deserialization for models with special item names #12658
Swift
- [swift5] Make it possible to opt out of JSONEncodable conformance #12664
TypeScript
v6.0.0 released
We're happy to announce the release of v6.0.0 - a major release with lots of enhancements and bug fixes. More than 500 PRs contributed by the awesome OpenAPI Generator community have been included in this release.
For a list of breaking changes, please refer to the following:
For a list of generators/frameworks that have been deprecated/decommission, please refer to this list
General
- [Inline model resolver] Better support for inline schemas in parameters #12369
- [Inline model resolver] better handling of inline responses and bug fixes #12353
- [Inline model resolver] Fix inline allOf in request body #12348
- [Inline model resolver] various improvements #12293
- [Inline model resolver] Better inline model resolver to handle inline schema in array item #12104
- Use LinkedHashMap for deterministic iteration order #12230
- Configure apiNameSuffix via maven/gradle plugins #12062
- fix: respect configured generator URL in swagger config #12064
- Process additionalProperties: true as arbitrary type instead of object #11802
Ada
- [Ada] Fix typo in final Info message #11914
Android
- [Android] only support JDK8+ #11917
C
- [C][Client] Eliminate compiler warnings #12260
- [C][Client] Free list or map memory when json parsing fails #11866
C#
- [aspnetcore] Include appsettings.Development.json #12217
- [csharp-netcore] Add support for byte[] response deserialization #12188
- [csharp-netcore] Composed primitives support in generichost #11924
- [csharp-netcore] Fix incorrect FileParameter deserialization #11850
C++
- [cpp-qt][client] add support for primitives types body #12301
- [cpp-rest] better handling of property name with special characters #12288
- [C++][Pistache] Add support for validating arrays, use full namespace type with custom types #12221
- [cpp-restsdk] Change build folder structure to match include folder structure in installed client #11487
Documentation
- Add - Status colors in Wiki, Example per parameter #12394
- Confluence Wiki - Escape special characters #11786
Dart
Elixir
- Allow the baseUrl of elixir APIs to be overridden #12268
Go
- [GO] Fix exception in constructExampleCode with oneOf primitive type #12362
- [Go] fix oneOf naming #11863
Haskell
- [haskell-http-client] Update haskell-http-client generator to Aeson 2.x #12309
- Upgrade haskell-servant to latest LTS #12092
Java
- [java-micronaut] Allow default implementation to return HTTP 501 #12365
- Playframework oauth small upgrade #12332
- [java][resttemplate] avoid StringIndexOutOfBoundsException on empty HttpHeaders #12327
- [Micronaut] Improvements for Server and Client #12297
- [java] Add jersey3 support to the Java client #12046
- Upgrade to Spring Boot 2.6.6/2.5.12 and Spring Cloud 2021.0.1 #12027
- [java][jersey2] update junit from 4.x to 5.x (major upgrade) #11898
- [java native] Support arrays in QueryParameters deepObject style #11699
- Remove JDK7 support from Java Spring generators #11561
JavaScript
- [JS] Remove ES5 support #12033
Kotlin
- [BUG][Kotlin-client] Handling default values of parameters #12255
- [kotlin-server][jaxrs-spec] Remove obsolete imports from API template #11899
- [kotlin][spring] Rename extension to conform to kebab-case #1189
- Remove JDK 6, 7 supports in kotlin templates #11560
Perl
- Fix Perl client header params #11713
PHP
- [php] Bump required PHP version to 7.4 #12359
- [php-slim4] Add minimal GitHub Action config #11874
- [PHP] Fix deprecations in PHP 8.1 #11743
- [php-slim4] Add lazy CORS implementation #11941
Python
- [python-experimental] fixes delete endpoint with no body use case #12287
- [python-flask] Fix mypy error type annotation needed #12272
- Fix issue with fastapi generator converting all fields to snake_case #12261
PowerShell
- [PowerShell] better enum model support #12082
Protobuf
- [Protobuf-Schema] Add enum prefix #11548
R
- [R] Use snake_case in method parameter names #12390 Breaking change (without fallback)
- [R] update .Rbuildignore with more files/directories #12383
- [R] fix warnings in DESCRIPTION #12380
Ruby
- [Ruby] Add support for faraday 2.x #12112
Rust
Scala
- [Scala][sttp] various bug fixes #12254
- [scala-akka-http-server] model default value when field is not required #12068
Swift
- [swift5] Abstract away URLSession #12110
TypeScript
- [typescript-fetch] Support Sets in query parameters (when uniqueItems=true) #12318
- [typescript*] drop support typescript below 4.0 #12123
wsdl
- [Wsdl] Adding cli-option for generating different versions of WSDL-files regarding Media type versioning (content negotiation) #12206
v6.0.0-beta released
What's Changed
- [typescript-axios] Properly emit module as ES6 instead of commonJS when using ES6 by @ferferga in #10308
- [typescript-axios] Use CommonJS when using ES5 as target as per Typescript docs by @ferferga in #10316
- [Dart] jaguar remove in 6.x by @agilob in #10534
- Flash: remove by @agilob in #10535
- [java][jersey2] Rename enum constants by @wing328 in #10631
- [Java][okhttp] rename enum by @wing328 in #10642
- [java] use IllegalArgumentException instead of RuntimeException by @wing328 in #10745
- [csharp] Use the provided 'sourceFolder' property to generate the test folder by @Starkie in #10738
- Remove kotlin-server-deprecated generator by @agilob in #10851
- Remove deprecated TypeScriptAngularJsClientCodegen by @agilob in #10850
- Remove deprecated PhpSilexServerCodegen by @agilob in #10852
- [java][okhttp-gson-nextgen] Fix OAuth enum name by @wing328 in #11210
- Dart - update generator to support null safety by @agilob in #10637
- [Go] Parse integer array query parameters. Fix typos by @aliakseiz in #11105
- Revert supports for delete body in typescript-angular client by @cghislai in #10976
- Typescript-fetch: date is only converted to javascript date with runtime checks enabled by @kasperpeulen in #11481
- [typescript-rxjs] add rxjs 7 support by @denyo in #9958
- Adds inline composition examples to python-experimental by @spacether in #11420
- [TypeScript] Fix type array with uniqueItems by @ty-v1 in #11515
- [python-experimental] adds missing bases, performance improvements by @spacether in #11517
- [Java] [Feign] Fix duplicated Authorization headers when renewing a token on a retry by @ruijlpires in #11513
- Fix ClassCastException if expected type is Object by @lbilger in #11510
- [java][feign] fix javadoc warnings by @wing328 in #11527
- [Python] add missing } in __init__model.mustache by @zarlo in #11474
- [Bug][Java/Spring] OAS3 related bugfixes and enhancements by @cachescrubber in #11526
- [csharp-netcore] Add generichost samples by @devhl-labs in #11451
- Add cycle detection (#7532) by @eak24 in #11500
- [C++][Pistache] fix float literals in C++ Pistache codegen by @JulianGmp in #11483
- [csharp-nancyfx] Delete NancyFX by @devhl-labs in #11438
- [csharp-netcore]: Remove unused UrlEncode method from csharp-netcore template. by @jafin in #11453
- Add Numary as bronze sponsor of the project by @wing328 in #11539
- [java][Okhttp] replace okhttp-gson with okhttp-gson-nextgen by @wing328 in #11538
- [java][okhttp-gson] Update build.gradle, build.sbt by @wing328 in #11543
- [C#] test .net6 projects in Github actions by @wing328 in #11544
- Update swagger core, jackson to newer version by @wing328 in #11545
- Upgrade Scala sttp client generator to sttp3 by @borissmidt in #11260
- mockito 4.3.1 by @sullis in #11549
- [Swift5][client] try to fix JsonEncondable by @4brunu in #11541
- Remove the option to support JDK7 from Java generator and templates by @wing328 in #11547
- [Java] remove tabs from java templates by @wing328 in #11557
- Replace tabs with spaces in JavaScript templates by @wing328 in #11559
- [jax-rs] Remove JDK 6 support by @wing328 in #11558
- Remove JDK 6, 7 supports in kotlin templates by @wing328 in #11560
- Fix for multible tags in @operation annotation by @ugrave in #11475
- [PHP] Fix checking value of
Configuration::getAccessToken()
by @jtreminio in #11486 - [Kotlin][Multiplatform] Upgrade Kotlin to version 1.6.0 by @tkirshboim in #11022
- Update Micronaut to 3.3.1 by @sdelamo in #11569
- [java][vertx] moved HttpStatusException (vertx internal) to HttpException (public) by @seanbrown-com in #11550
- [Bug][Java] defaultValues for date and date-time params by @cachescrubber in #11536
- [spring] various bug fixes and enhancements by @cachescrubber in #11580
- [Java] fix deserialization of readonly properties by @borsch in #11495
- [Groovy] add Groovy client tests to Github workflow by @wing328 in #11593
- Implement Source DocumentationProvider,
spring-mvc
decommission by @cachescrubber in #11531 - [Scala] test Scala clients, servers in GitHub workflow by @wing328 in #11592
- [GO] Fix for Pass by value/Pass by Reference changes which is breaking the go client by @the-akhil-nair in #11466
- Test Java Play framework in Github action by @wing328 in #11598
- Test Java (native) client in JDK 11 by @wing328 in #11599
- [Java][jaxrs-spec] add fromString() method to generated enums as required by JAX RS spec by @upachler in #7494
- [Java][RestTemplate] fix mustache template doesn't use reserved words for local variables by @amra in #11583
- [csharp-netcore] Nrt (nullableReferenceTypes) refactor by @devhl-labs in #11452
- [Python] fix api file name & api var name by @JoeCqupt in #11051
- [PHP] Allows passing filename to deserialize by @jtreminio in #11582
- Remove JDK7 support from Java Spring generators by @wing328 in #11561
- [Java/Spring] Decomission threetenbp support. by @cachescrubber in #11608
- [JAVA] [Vertx/Web] Add default value to query parameters by @matthiasloeu in #11600
- [java][okhttp-gson] support multiple file upload by @lschwahn in #11361
- [java][Micronaut] avoid Double Brace Initialization (DBI) by @wing328 in #11609
- [charp-netcore] Constructor Improvements by @devhl-labs in #11502
- [Java][RestTemplate] Use class level RestTemplate for uri encoding by @Laurens-W in #11606
- [General] Better code format by @wing328 in #11612
- Spring hide controller impl by @cachescrubber in #11611
- Bump ajv from 6.6.2 to 6.12.6 in /website by @dependabot in #11584
- Bump shelljs from 0.8.3 to 0.8.5 in /website by @dependabot in #11324
- Support email validation in kotlin-spring in #11617
- [kotlin] add missing import, better code format for kotlin generators by @wing328 in #11619
- [java] No @NotNull annotation for readOnly (required) attributes by @daniel-sc in #108...
v5.4.0 released
v5.4.0 is the last stable release before next major release v6.0.0 scheduled in 2022 Q1/Q2. It comes many enhancements/bug fixes and 5 new generators/libraries:
- java-camel: Apache Camel Server Generator
- java-micronaut-server: Add Micronaut server generator
- jaxrs-spec (kotlin-server): Kotlin client: add volley library support.
- generichost (csharp-netcore) Adding generic host library
- python-experimental Adds a new python client with robust composition, spec naming, and type hints
Thanks for all the contributions from the OpenAPI Generator community.
For the highlight of changes, please refer to the list below. For a full list of changes, please refer to the "Pull Request" tab.
General
- Migrate to official Apache Maven Wrapper #11381
- Adds generator default template engine #11366
- Recursively search for types during import type collection in deeply nested schemas #11221
Avro
- Avro schema generation fix for properties with type ref to an enum #11201
C
- keyword conflict with zebos list_creat(), list_free() #11190
C++
- [CPP-QT-QHTTPENGINE Server] various bug fixes #11177
C#
- Improve example value handling in C# generators #11355
- [csharp-netcore] Fix: Add only first Authorization header #11325
- [BUG][csharp-netcore] Fix Multi Files for the same FormField #11259
- [csharp-netcore] Adding generic host library #10627
Go
- Handling golang client generation for oneOf with no discriminator and useOneOfDiscriminatorLookup is true #11178
Java
- [JAVA] new Feature interface: Documentation Provider and Annotation Library #11258
- Avoid using import mapping in model generation #11217
- [Java Spring OAS3] Fix numerous OAS3 related Bugs #11181
- Apache Camel Server Generator #11162 (New Generator)
- Change Helidon MP release in generated project from 1.x to 2.x #11076
- Add Micronaut server generator Enhancement: New generator #10270
JavaScript
- [JS][flow] update node-fetch to newer version #11378
Kotlin
- [KOTLIN][CLIENT] fix unused library additional properties on kotlin generator #11328
- [kotlin] Added fix for wrongly encoded backticks for reserved words when generating kotlin client #11310
- [kotlin-server][jax-rs] Added support for JAX-RS library into Kotlin Server generator #10830
PHP
- [PHP] Allow guzzlehttp/psr7 ^1.7 or ^2.0 #11240
- [php][bug] Fix DateTime microseconds bug in ObjectSerializer #11213
Python
- [Python] fix model to dict #11234
- feat(python-asyncio): add support for proxy config using system env vars #11171
- Adds python-experimental which uses dynamic base classes #8325
Rust
- Rust Client: Add support for collectionFormat="multi" #11169
Scala
- [scala-gatling] use the official Gradle plugin #11208
Swift
- Make moduleObject.mustache confirms to JSONEncodable #11202
- [swift5] Add property x-null-encodable extension for full control over encoding value/nil or nothing #11141
TypeScript
v5.3.1 released
v5.3.1 is the last stable release in 2021. It comes many enhancements/bug fixes and 2 new generators/libraries:
- csharp-netcore-functions: [C#] new Azure functions generator
- volley (kotlin): Kotlin client: add volley library support.
Thanks for all the contributions from the OpenAPI Generator community. We would like to take this opportunity to wish everyone Happy Holdiays!
For the highlight of changes, please refer to the list below. For a full list of changes, please refer to the "Pull Request" tab.
General
- Fixes paramName and dataType for request body anyType parameters #11075
- Compare HTTP auth security schema names case-insensitive #10989
- Better handling of NPE in parser when referencing invalid schema #10882
Bash
- [Bash] Support post form data #10795
C
- [C][Client] Support a custom data type (IntOrString) #11074
- [C][Client] Use cpack to build deb package #10935
C#
- [C#] new Azure functions generator #11020
- [C#] Update C# dependencies to newer version #10761
- [csharp-netcore] Support Net 6.0 #10634
C++
- [cpp-pistache-server]: Fix build with pistache #10829
- [cpprestsdk] CMake build system improvements #10660
- [Qt][C++] Oauth2 Authorization Code Flow and Implicit Flow Support #10183
Crystal
- [crystal][client] Update crystal client gitignore.mustache with shards related files #10698
Dart
- [dart][dio][built_value] Fix missing serializer factory builders for additionalProperties #11011
- [dart-dio-next] Removes dioLibrary option #10931
Go
- [GO] dont canonize headers #10779
Groovy
- Fix build-info-extractor-gradle in groovy build.gradle #10760
Kotlin
- [kotlin][client] update request exceptions #11065
- [Kotlin] Fully qualified "Any" for enums in encode and decode function #10985
- [Kotlin][Multiplatform] Support custom Ktor HTTP client configuration #10968
- [kotlin][spring] Add validation to headers #10703
Java
- [java][okhttp-gson-nextgen] Better null handling in oneOf, anyOf model #11056
- Add operation level servers support for java okhttp-gson client #10925
- [Java][okhttp-gson] Support text/plain body #10885
- Fix library generation compatibility with Gradle 7.2 #10716
- [java][microprofile] update dependency to newer version #10714
- Allow Spring generated code to use new OAS 3 annotations #9775
K6
- [K6 Generator] various enhancements (request body example data extraction, support for generating scenario tests and load tests out of the box, and much more) #11106
Php
- [php-slim4] Bump required PHP version to 7.4 #11039
- [php-slim4] Switch to Packaged Body Parsing Middleware #9562
PowerShell
- [powershell] add file upload support #10735
Protobuf
- [Protobuf-Schema] Add numbered field number list switch #10893
- [Protobuf-Schema] Add enum as model support #10868
Python
Rust
- [rust][client] fix breaking regression introduced by #10432
- [rust] Update to modern hyper and futures crates #9919
Scala
- [scala-akka-http-server] Fix array optional parameter invalid default value #10676
Swift
- [swift5][client] allow request cancellation and authentication flow to work together #11019
- [swift5] Refactor encodeToJSON #10961
TypeScript
v5.3.0 released
v5.3.0 comes with many bug fixes and enhancements with breaking changes (with fallbacks). Almost 240 PRs (covered more than 20 programming languages) contributed by the OpenAPI Generator community. Thank you.
For the highlight of changes, please refer to the list below. For a full list of changes, please refer to the "Pull Request" tab.
General
- Add snake case lambda #10658
- Add try-with-resources to unclosed streams #10641
- Improve version management, update dependencies, remove unused dependencies #10544
- Fix Windows build failure in some environments #10529
- Updated model generation, addProps handling moved into type object and anyType handling #10505
Bash
- Changing from scriptName to x-codegen-script-name to fix dockerfile #10594
C
- Libcurl CMake adaptations #10249
C#
- Fix compilation issues in the CSharpOperationTest class #10574
- [csharp-netcore]For conditionalSerialization do not initialize the default value. #10551
C++
- [cpp-rest-sdk-client] Serialize boolean parameters as true/false instead of 1/0 #10554
- [cpp][qt] Start cleanup of cpp qt readme #10549
- Improve templates for C++ Restbed #10543
- [cpprestsdk] fix string conversion, add integer enum support #10531
Crystal
- [crystal] Fix some issues in crystal client templates #10629
Dart
- Dart: mark jaguar for deprecation #10533
- [dart] json_serializable: remove experimental generator #10532
- [dart][dio] Respect import-mappings parameter #10528
- [dart-dio-next] Adds an option for using the dio_http package Client: Dart Enhancement: Feature #10497
Elm
- [elm] fix for invalid code being generated for enums #10328
- [bugfix][Elm] Fix template when response schema is Map #10310
Go
- [go]: fix anyOf compilation error #10431
- [go-server] Fix: param names clash with variables, added suffix #10243
Haskell
- [haskell-http-client] add ability to choose additional characters in querystring which should not be encoded (e.g. "+" or ":") #10424
HTML
- Updated the HTML2 Doc Curl Examples to provide sample Request Body & Query Param examples #10323
Java
- [java][jersey2] update dependencies #10659
- Improve Apache Httpclient support #10624
- [Java][Feign] Add http status to feign result #10583
- [Java][RestTemplate] Fix RestTemplate not handling ApiKey in cookie #10578
- [java][jersey2] use implementation, add min version of maven, gradle in the README #10571
- [java] Update Gradle to 7.2 #10538
K6
- [ K6 Generator ] Support for extracting examples defined at parameter level of Swagger/OpenAPI specification, plus minor fixes #9750
Kotlin
- Fix kotlin enum default value #10592
- Kotlin multiplatform updated to fit future Kotlin 1.6.0 release #10468
PHP
- [PHP] Update GuzzleHttp version to 7 #10585
- [php] fix 'mixed' invalid for settype() #10576
- [php-slim4] Migrate PHPUnit config #10230
PowerShell
- Add decimal support to the powershell generator #10486
Python
- [Python] fixes setitem throwing an error for composed instance #10197
- Python client - fixes boolean enum use case #9926
R
- Add decimal support to R client generator #10487
Ruby
- Ruby: Fix deprecation warning for Faraday #10559
- [REQ] [RUBY] [FARADAY] Allow middleware to be configured #10495
Rust
- Fixes doubles type as &str&str for type:string; format:uuid parameter #10569
Scala
- fix: don't send just " " in body, send an empty string #10561
Swift
- [swift5][client] add support for async await #10442
TypeScript
- [typescript-axios] Update to Axios 0.23.0 #10626
- fix(NestJS): use correct typing for default headers #10616
- [typescript-axios] Fix invalid query params usage #10512
WSDL
v5.2.1 released
v5.2.1 release comes with 2 new generators:
- java-micronaut-client
- php-dt: new client generator for PHP language. Generated client is lightweight and extensible, relies on Data Transfer for handling request/response content and complies with PSR-7, PSR-11, PSR-17 and PSR-18.
Thanks for all the contributions from the OpenAPI Generator community.
For the highlight of changes, please refer to the list below. For a full list of changes, please refer to the "Pull Request" tab.
C
- [C][Client] Allocate memory for the element of array when the type is number #10124
C#
- [csharp-netcore] Fixed the utc time issue for httpSigning auth #10139
- [csharp] Obsolete attribute on deprecated operations and properties #10084
C++
- [cpp-pistache-server] Fix missing semicolon in template and missing code to set default values of model schema #10136
- [cpp-ue4] Added support for bool in URL parameters, now writes true/false #9951
Dart
- [dart][dio] Nullable parameters & defaults for header/query parameters #10147
- [dart-dio-next] Don't use encodeCollectionQueryParameter on maps #10116
- [dart-dio] Fix parameter generation problems #10061
Elixir
- [Elixir] Adding :package and :description to mix.exs template #9945
Erlang
- [erlang-server] Dialyzer spec #9983
Go
- [go-server] Feat: add required assertions to models #10068
- [go] More idiomatic godoc comments #10044
Haskell
- Haskell-http-generator - Make endpoints which don't return anything yield NoContent #9916
Java
- [BUG][Java] Fix a race condition in RetryingOAuth.mustache #10087
- Add support for Micronaut Client #10063
- [Spring] Use fully qualified name for Pageable #10045
- [jaxrs-resteasy] fix java8 datetime issue #10014
Kotlin
- Add AnyType support to Kotlin generators #10070
- [Kotlin][Multiplatform] Add missing JVM dependency #10051
PHP
- Make php's array primitive #10093
- [PHP] Deprecated annotation on operations and fields #10085
- [PHP] New client generator php-dt #10041
Python
- [python-flask] Fix NoneType when deserialize optional date #10081
Ruby
- [Ruby] Add new Ruby versions to the Travis CI build matrix configuration #9971
Rust
- [rust-client] Fix typo related to the form parameters #10096
TypeScript
- Typescript-angular: Added missing semi colon to interface file #10121
- [typescript-fetch] Add initOverrides #10050
Swift
- [swift5 client] fix filename for binary downloads #9989
v5.2.0 released
v5.2.0, containing breaking changes with fallbacks, has been released with bug fixes, enhancements and 3 new generators:
- cpp-tiny
- python-fastapi
- wsdl-schema
Please give these a try let us know if you've any feedback.
The release comes with 190+ PRs contributed by the OpenAPI Generator community. Once again, we would like to thank all contributors for their contributions.
For the highlight of changes, please refer to the list below. For a full list of changes, please refer to the "Pull Request" tab.
General
- Better null check to surpress SonarCloud warning #9888
- operationId: Allow getting only the method name #9724
- Avoid using Properties.clone() which is broken in Gradle plug-in #9653
- Adds isShort + isUnboundedInteger to IJsonSchemaValidationProperties implementers #9519
- Fix Gradle Plugin ValidateTask not working under Gradle 7.0 #9453
Android
- [Android] update httpclient version, fix compilation issue in the sample #9728
Bash
- [Bash] Fix matching of header parameters #9370
C
- [C]: Fix enum values #9537
C#
- Conditionally apply serialization on certain properties #9807
- [aspnetcore] avoid empty string enum value in the option #9501
- [csharp][httpclient] Introduce FileParameter as an abstraction #9426
- [csharp][netcore] Handle Deserialization Asynchronously #9424
C++
- [C++][pistache] string enum code generation improvement #9786
- [cpp-ue4] API calls not return the http request for further manipulation #9693
- [cpp-restsdk] Update json double/float parse #9577
- [cpp][tiny] rename generator, update samples #9560
- [C++] Rename Qt5 to Qt #9490 Breaking change (with fallback)
- New generator | Arduino cpp #9489
Crystal
- [crystal][client] Support authorization #9488
- [crystal] Update crystal version 1.0.0 (from 0.35.1) #9477
Dart
- [dart][dart-dio] Add support for query collection parameter format #9635
- [dart][dart-dio-next] Improve support for file uploads #9542
- [dart] Improve content-type handling #9517
Erlang
Go
- [go-server] Add go-chi generator to go-server via a router property #9748
- [go-gin-server] add PATCH method support #9662
- [goserver] Fix single inheritance code generation for goserver #8356
Haskell
Java
- [Java] [Native] Unify exception messages for async, add the status code #9825
- [Java][Feign] Skip oauth-related files when the spec has no oauth defined #9760
- Hide buildOauthRequestInterceptor under isOAuth section #9736
- [Java][WebClient] add ResponseEntity return for webclient #9327
Kotlin
- Add support for generating a Set for a list with uniqueItems set to true #9849
- [Kotlin Multiplatform] Update and fixes for Kotlin 1.5.10 and Kotlinx.serialization 1.2.1 #9755
- [kotlin][client] fix Android crash on API level 25 and bellow #9578
- [Kotlin][retrofit2] replace okhttpclient with callfactory #9451
- [Kotlin] Allow optional header parameters with Kotlin and retrofit2 #9306
JavaScript
- [JS][Flow] Better code format, update samples #943
- [Javascript-Flowtyped] Handle joining uniqueItems in api template #9417
PHP
PowerShell
- [PowerShell] Improve generated PowerShell examples #9836
Python
- New python-fastapi generator #9611
- Fix python generation when custom files and templates are specified #9572
- [python][client] allow passing floats for request timeout #9532
- [python] readonly constructors #9409
- [python] Fixes additional_properties_type for models #8802 Breaking change (with fallback)
R
- Add support for Boolean in R client generator #9469
Rust
- [rust-client]: fix reqwest not support client::options #9745
Scala
Swift
- [Swift5] support Vapor 4 client library #9625
- [Swift5] namespace changes #9624
- [Swift5] Add useClasses cli option #9608
- Add hashableModels to additional properties #9495
- [swift5][client] make AnyCodable optional #9479
- [swift5] Map file and binary to Data #9419
- [swift5][client] add option to generate or not the model additional properties #9375
- [swift5] Add support for oneOfs #8714
TypeScript
- [typescript-fetch] Support for async accessToken #9659
- Typescript: add paramPropertyNaming #9546
- [typescript-axios] properly mark 'deprecated' routes in #9505
- Add OAuth2 to typescript template #9466
- [typescript] Fix uncompilable output when using allOf #9275
- [Typescript Fetch] New optional mode with redux saga & immutablejs (saga & records) #8578
WSDL
- New generator: WSDL #9545
v5.1.1 released
v5.1.1 is a patch release with enhancements, bug fixes covering 15+ programming languages. As always, we appreciate the contributions from the awesome OpenAPI Generator community. In this release, we've added a new go-echo-server
generator.
For the highlight of changes, please refer to the list below. For a full list of changes, please refer to the "Pull Request" tab.
General
- [Enhancement] added support for custom type & format mapping #9285
- [Docker] support multi-arch build #9246
- Gradle plugin -
@Input
and@Internal
should not be apply on the same property #9059 - [core] Allow using lists as globalProperty in config files #8339
- Add executionId to filehash in OpenAPI Generator Maven Plugin #7848
Bash
C#
- [csharp-netcore][httpclient] Issues managing error statuses #9389
- [csharp][netcore-httpclient] Refactor of constructors: removed obsolete attribute #9373
- [C#][netcore] Add multiple frameworks support #9196
- [C#] fix integer enum without format #9136
- [csharp][netcore-httpclient] Reuse HttpClient, Allow use of external HttpClient, Fix Socket Exhaustion, Alternative With Constructor Injection #9085
- [csharp][aspnetcore] Fix FileUpload Parameter Generation for aspnetcore #9000
C++
- [cpp-ue4] Improved retry system to use Unreal's FHttpRetrySystem #9382
- UE4 - Support FGuid with in/out Helpers #9291
- C++ Qt5 support date format enum #9283
- Include QVariant helpers header #9161
- [C++] remove pthread from CMakeLists.txt #9130
Dart
- [dart][dart-dio] Add built_value date support w/o timemachine #9180
- [dart] Improve types & imports #9167
- [Dart2] Add initial support to use an isolate to offload JSON serialization/deserialization #9100
- [Dart] Use interrupted exception instead of just exception #9092
Go
- Add Go echo server codegen #9224
- [Go][server] parse bool in query parameter #9171
- [Go] Parse int arrays and respect the 'required' property #9120
- [go] Add constructor and IsValid method to enum types #8224
Java
- [java][okhttp] Default Java client to Java 8 instead of Java 7 #9344
- [Java][Spring] Different in-parameter types generated for api and delegate for binary (application/octet-stream) #9331
- [Java][JavaJaxRS] Respect readOnly/writeOnly attribute markers #9276
- [Java] [Native] Add response body to exception message #9169
- [BUG] Java (jersey2) ApiClient debug cannot be enabled #8756
- [JAVA][jaxrs-spec] Added custom methods to add/remove elements from java collections #6468
Javascript
- Use prepare script instead of prepack in Javascript package.json #7807
Kotlin
- [Kotlin] Make ApiClient in jvm-retrofit2 be able to add additional retrofit Converter Factory #9316
- Kotlin jvm-retrofit2: Add missing ResponseBody import for binary responses #9239
- [Kotlin] add BigDecimal, BigInteger support #8880
Nim
- [nim] camelize names #9255
PHP
- [php-symfony] remove nested Valid constrain #8994
- [PHP] Fix parentSchema conditional causing parent call when parent isn't present #8705
PowerShell
- [PS] minor improvements to the auto-generated appveyor.yml #9300
- [PowerShell] improve return type documentation #9295
Python
- [Python] Fix exclusive min and max #9340
- Fixes serialization of array items in model_to_dict [python] #9153
Ruby
Rust
- [Rust] Add enum suffix support #9107
- [rust-server] Update templating docs to correct the name of x-response-id #7839
Scala
- [Scala][Akka] Use Files.createTempFile to address security concerns #9348
- [scala-akka-http-server] allows generation of managed sources only #9012
Swift
- Swift5 models improvements #9205
- Add Hashable for Struct #9166
- [swift5] Add useSPMFileStructure #9074
TypeScript
- [typescript-axios] add missing baseName for array params #9273
- typescript-angular: Fix Cannot read property 'apiKey' of undefined #9260
- Resolve response type name conflict in angular typescript lib #9216
- Resolve responseType name conflict in Angular Typescript lib #9202
- [typescript-angular] Provide return value for all code paths #9176
- [typescript-axios] handle uniqueItems in query and header parameters #8965
v5.1.0 released
v5.1.0, the first minor release after the v5.0.0 major release, contains breaking changes with fallbacks, security fixes, new generators and more. For a full list of changes, please refer to https://github.com/OpenAPITools/openapi-generator/pulls?q=is%3Amerged+is%3Apr+milestone%3A5.1.0+
Below are some highlights of the changes:
General
- Adds getAdditionalPropertiesIsAnyType to java schema classes #8908
- Correct use of loggers with placeholders and remove some redundant operations #8842
- [maven plugin] fix security issues #8795
- [online] use Files.createTempFile to address security concerns #8788
- Add an option to skip operation examples #8731
- [Gradle Plugin] Allow to set additional property of any type. Useful for Boolean values #8507
Documentation
- Use Files.createTempFile in asciidoc generator tests if possible #8794
Android
- [android][volley] various improvements #8968
C
- [C][Client] Generate API and module documents automatically #8981
C#
- [C#][netcore] Call static method without creating instance #8889
- [csharp-netcore] Make Blazor Webassembly compatible #8876
- [C#][netcore] update dependencies to newer versions #8872
- [csharp-netcore] Fix handling of Dictionary query parameters and fix deepObject style parameter handling #8848
- C# Netcore WebRequest and HttpClient functionality #8821
- Add ASP.NET Core 5.0 support #8717
- [aspnetcore] Improve model inheritance support by including JsonSubTypes to properly handle serialization #8384
C++
- [C++][Qt]Replace usage of QVariant with a more intuitive optional wrapper #8960
- Fix not processing enums in cpp-pistache-server #8886
- Qt client handle deprecated #8766
- [cpp-qt5-client ] Improve CMake #8724
- [Qt5][C++] Adding Parameter Styling Support for Qt5 #8587
Dart
- [dart][dart-dio] Next-gen dart-dio generator #8869
- [dart][dart-dio] Lower upper bound for built_value #8947
- [dart] Fix api client deserialization for json_serializable #8882
- [dart][dart-dio] Nullable support/improvements #8727 Breaking change (with fallback)
- [dart][dart-dio] Raise min Dart to 2.7.0 & update built_value constraint #8684
Erlang
- [Erlang][Client] better code, update sample #8853
Go
- [Go] bug fix (breaking), minor code format enhancement #8715
- [GO] Add additional AWS v4 signature config options to go client generator #8706
- [REQ] [GO] Added enumClassPrefix option to go-gin-server #8681
- Fix generated go client cannot upload file #8393
Flash/ActionScript
- Remove flash templates #8741
Java
- [JaxRS] Fix ambiguous dependency #8923
- Changed virtualan version from 1.0.0 to 2.1.7 #8910
- [Java] use Files.createTempFile instead #8787
- Update jackson dependencies to address security issues #8778
- [Java][Client] JSON-B serialization support #8729
- [webclient] bug fix to double URL encoding #8660
- [java native][dotnetcore] Implement QueryParameter deepObject style #8563
JavaScript
- Make JS client case sensitive wrt. reserved words #8905
- [JS] the replace statement in parseDate is too greedy #8633
JMeter
- [JMeter] fix header parameter naming #8861
Kotlin
- [Kotlin][Client] create request config method #8617
- Replace deprecated import for kotlin Parcelize annotation #8590
OCaml
- [OCaml] Fix enum returnType in of_json.mustache for Api Impl #8631
Perl
- [Perl] minor improvements #8967
PHP
- [PHP] Use a valid php type for maps #8718
PowerShell
- [REQ][PowerShell] Add additional reserved words list for parameter name in PowerShell #8935
Python
- [python][template] move _path_to_item of simple init to avoid name error #8737
Ruby
- [ruby] Fix syntax error #8675
Rust
- [Rust Client] several small fixes to code generation errors #8845
- Rust: Add support for lists (and sets) of enum values #8693
- [rust client] upgrade reqwest crate to 0.11 #8603
Scala
- [Scala][Finch] use Files.createTempFile to avoid potential security issues #8791
Swift
- Fix for StackOverflow in Swift5 CodeGeneration #8672