Skip to content

v4.1.0 released

Compare
Choose a tag to compare
@wing328 wing328 released this 09 Aug 14:35
· 8302 commits to master since this release
59c4e38

v4.1.0 (breaking changes with fallback) released with 4 new generators/libraries:

  • OCaml client generator: ocaml
  • NodeJS Express server generator (alpha): nodejs-express-server
  • Java 11 native HTTP client library: --additional-properties library=native
  • Ruby Faraday client library: --additional-properties library=faraday

Thanks for the OpenAPI Generator community to help move the project forward with another minor release.

We've also launched a new Slack workspace. Please join to discuss OpenAPI Generator.

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

General

  • Better handling of dot in inline model name #3498
  • [fix] Assign template directory to additional properties #3385
  • Updates to address recent lodash Object prototype vulnerability #3348
  • [openapi-yaml] Prerequisities for Swagger 2 template #3202
  • [core] Initial implementation of a validation framework in core #3183

Bash

  • Bash skip empty query param fix #3290

C#

  • [C#][client][csharp-netcore] Fix csharp netcore defaultheaders #3562
  • Fix logic of getNullableType of csharp server and client #3537
  • Fix DateTimeOffset nullable issue #3530
  • [aspnetcore] Support cookie parameter #3490
  • Adds default property values in ASP .NET Core models #3369

C++

  • [C++][Pistache] Do not use JSON for primitive types in request body #3509
  • [C++][Qt5] Remove QRandomGenerator #3508
  • Add modelNamePrefix option for qt5 #3431
  • qt5 client: strip whitespace #3406
  • [C++][Pistache] Add compatibility for nlohmann-json 3.5.0 #3306
  • Fix issue deserializing to nullptr #3572

Dart

  • [dart-jaguar] Fixes error accessing default converters #3361
  • [dart-jaguar] Adds option to customise the generated API client name #3234

Go

  • [Go][experimental-client]: make struct members pointers, provide custom marshalling #3371

Java

  • [java][client][jax-rs] Add a constant for Jackson @JsonProperty #3560
  • [java-client][okhttp-gson] fixes for interceptors in ApiClient.java #3502
  • Expand path templates via resttemplate's uriTemplateHandler #3500
  • [Java][RestTemplate] remove wrong Null Check #3481
  • [Java] Replace "useNullForUnknownEnumValue" option with the nullable attribute #3455
  • [Java] add nullable support to the clients #3453
  • [Java] Fix numeric field names #3436
  • Java 11 native HTTP client library #3434
  • [Java] add nullable annotation to pojo template for non-required fields #3409
  • [java rest-assured] prevent reqSpec reuse between requests #3375
  • [JaxRS-Spec] add openApiSpecFileLocation parameter #3344
  • [java] Support for number enum #3328
  • java-springcloud: No dependency management if parent overridden #3301
  • Enable async option for spring-cloud library #2670
  • Fix invalid spring properties prefix #3501
  • [java-client][okhttp-gson] support bearer authentication #3236

JavaScript/NodeJS

  • Add a new NodeJS Express server generator #3567
  • Upgrade babel packages for Javascript ES6 generator #3424

OCaml

  • [OCaml] Add file post-processing #3568
  • [OCaml] Response headers were not processed for enums collection #3526
  • [OCaml] various enhancements #3483
  • [OCaml] new client generator #3446

PHP

  • Fix PHP Symfony non-primitive return type being forced to be an array #3515

Python

  • [Python][server] Use range for dependencies in python-flask #3470

Rust

  • [rust] Stop deriving Eq for models #3463
  • [Rust][Client] Correct the Rust client generated documentation #3419
  • Better Rust client imports #3332
  • Fix enum types in structs #3309
  • [Rust Server] Support multipart/form_data request bodies #2846
  • [Rust Server] Generate valid Rustdocs for lazy_static items #3556
  • [Rust Server] Allow more than 32 configured paths #3494

R

  • [R] updated example in doc(.md) file #3429

Ruby

  • [Ruby] clean up Ruby dev dependencies #3551
  • [Ruby] remove auto-generated Gemfile.lock #3541
  • [Ruby][faraday] add TLS setting support #3527
  • [Ruby][Faraday] Various improvements #3520
  • [Ruby] add support for "faraday" #3405
  • Ruby-client: Don't encode slashes if strict-spec false #3204

Swift

  • [Swift4] Introduce XcodeGen #3396

Scala

  • [scala-play-server] Correct CLI option name #3340

TypeScript

  • typescript-fetch: allow configuration of headers and credentials #3586
  • [typescript-angular] fix string casting #3558
  • [typescript] change accessToken name parameter to optional #3555
  • typescript-fetch: Properly detect and encode container request body param #3517
  • [typescript-rxjs]: support reponseType blob #3437
  • typescript-axios string date format #3423
  • [typescript-rxjs] runtime and api cleanup #3316
  • [typescript-angular] use correct package with http-client #3465
  • [Typescript Axios] fix Content-type not set properly #2695
  • [typescript-node] fixed enum generator for top level enums #2266
  • Added serialization support for typescript on complex object headers #1874
  • Support importMapping definitions for TypeScriptNodeClientCodegen #3469
  • [typescript-angular] add flag for using string enums #3464
  • [typescript-node] Promise-based Authentication interface #3408
  • Fix NPM build for Typescript-fetch #3403
  • [typescript-angular] Add encoder configuration, fix default encoder #3389
  • typescript-fetch: fix basic type errors #3380
  • [typescript-fetch] support custom stringify for query string #3327
  • [typescript-fetch] Fix collection formats reference #3324
  • [typescript-fetch] Fix access token type #3323