id: release-3-0-0
title: Release Notes: 3.0.0
sidebar_label: Release Notes: 3.0.0
- 
Docker
 
- 
7dfd94002 Docker: use correct MAVEN_CONFIG (#182)
 
- 
b5a0d173d Revise the usage of OpenAPI Generator online (docker image) (#73)
 
- 
e58dc2c77 Fix COPY in Dockerfile (#64)
 
- 
9d7feaaeb Fix online generator (docker push) (#58)
 
- 
9247cd01e Changes for Docker
 
- 
64037ee59 update docker-related files to ues jdk8
 
- 
Plug-ins
 
- 
b6b8c0db8 [gradle-plugin] Initial implementation (#162)
 
- 
0a28aad73 [MAVEN PLUGIN] Checking for null configOptions before looking for property
 
- 
9c79297d6 [MAVEN PLUGIN] Use latest version in dependencies snippet
 
- 
9e1bbe0c1 Add maven wrapper
 
- 
API Clients
 
- 
Ada
 
- 
edf6be8c0 [Ada] bug fix by defining x-is-model-type when property is local to the YML file
 
- 
9ba74f484 [Ada] Fix GNAT project and server skeleton to avoid sending a response when an error is returned
 
- 
ea27924f5 [Ada] changed default project/package name, to solve circular dependencies
 
- 
6b9d38d40 remove trailing spaces in ada template
 
- 
0de7f972f Fix the Ada server skeleton to check the authsMethods in the Shared_Instance generic package
 
- 
4bd8fc6e8 Fix 7511: [Ada] Client call is not correct with multiple parameters and application/x-www-urlencoded
 
- 
3035bc629 [Ada] Hotfix/ada model sort
 
- 
43f0e8692 Ada code generator corrected: "=>" instead of "->".
 
- 
7d2b49085 [Ada] wrong order for generated structures in models.ads files
 
- 
2b2b85eec [Ada] wrong JSON in POST operations
 
- 
C#
 
- 
0e34bcf4e [csharp] ctor params should always be camelCase
 
- 
872471996 [csharp] Support arrays of arrays for properties and models
 
- 
1c4e6b7d4 [csharp] Fix ToJson to work with composition and polymorphism
 
- 
ed7af73f6 [csharp] Reference this.Configuration in client API template
 
- 
C++
 
- 
e796e4c36 [C++] Add linux as a reserve keyword
 
- 
36f69a034 remove trailing spaces in qt5 c++ templates
 
- 
f192613f1 fix string type in c++ generator
 
- 
409015461 fix file type in qt5cpp
 
- 
a4bcb3bc7 fix datetime and map type for qt5cpp
 
- 
23b31aba8 [qt5cpp] Fix crash when API return a map container
 
- 
3b031ed2b [qt5cpp] delete callback data allocated before signal emission
 
- 
1bb1e44d1 [qt5cpp] Remove qt5 pro.user file
 
- 
194722015 Qt5cpp plug memleaks part2
 
- 
12f3661d6 Qt5cpp plug memleaks
 
- 
ea4b94842 [qt5cpp] Add nullptr guard to prevent crash when empty model is being serialized
 
- 
0bf430a80 Qt5cpp Add support for nested containers
 
- 
0b3ec6b1f fix NPE with cpp qt5, add logic to avoid NPE with composed schema
 
- 
7c734445b fix file parameter in header file (cpprest)
 
- 
070b5c00b fix object type declaration in cpprest
 
- 
bad1885b4 [cpprest] add parameterToString for number type with unspecified format (double)
 
- 
73bd24db7 [cpprest] Add support for nested vectors
 
- 
ee2eb74f7 [qt] update Qt client
 
- 
d82499944 Adding qt project generation fix
 
- 
9bd94b4db [qt] Fix warning message
 
- 
Clojure
 
- 
d7e374504 [Clojure] Add util method to set the api-context globally (#93)
 
- 
Dart
 
- 
f1638a659 [Dart] Allow setting an accessToken for OAuth
 
- 
a5e26a44f [Dart] - Rework Dart client generator to be flutter-compatible
 
- 
Elixir
 
- 
f9b2839a3 [Elixir] Check date value before calling to_iso8601
 
- 
Elm
 
- 
5a87fe695 [elm] Fix operations with empty responses (#171)
 
- 
a5cf27b60 Fix Petstore example for Elm (#96)
 
- 
c522927d5 Fix Elm generator for polymorphism (#78)
 
- 
7d9fb9f51 Add CI test for Elm in travis (#40)
 
- 
769a65c95 [Elm] Add support for array schemas
 
- 
56a0268e3 [elm] missing '->' in Main elm template
 
- 
Erlang
 
- 
c73118524 [erlang-client] Erlang request utils
 
- 
049eef9c5 Test erlang client, server petstore
 
- 
bcc7b788e fix erlang client compilation error
 
- 
Go
 
- 
acb63fd5e Fix go readme, remove resty install
 
- 
5d8362d85 Update go client, fix double body read
 
- 
47614bb76 Properly capitalize exported go types
 
- 
ee561fcd6 Add withXml option for Go language
 
- 
0f6696089 [Go] Use consistent indentation in readme
 
- 
72abb20f2 [Go] Fix operation files clobbering model files. [2.4.0]
 
- 
Haskell
 
- 
34db79b9b [haskell-http-client] update dependency versions + readme (#81)
 
- 
e45b3784f Fix NPE with Haskell client generator with OAS3 spec
 
- 
d3401396f [haskell-http-client] remove duplicates in produces/consumes; fix pathParam paramName issue
 
- 
4bc99b9da minor fixes to haskell http client generator
 
- 
2d0bafb6b [haskell-http-client] default InlineMimeTypes=true
 
- 
9fba9c325 [haskell-http-client] add config options: cabalPackage, cabalVersion, baseModule, requestType, configType
 
- 
Kotlin
 
- 
a3322fbf7 [kotlin] Add OkHttpClient.Builder to ApiClient.
 
- 
3c5fb1d80 [kotlin] Add json annotation to each enum value.
 
- 
39fa375e3 [kotlin] Fix NPE for POST/PUT/PATCH with empty request models.
 
- 
c599906f1 Kotlin: Correct data_class.mustache to use proper property for inner enum data type
 
- 
c69925b53 [Kotlin] Fix issues with threetenbp
 
- 
a811a48c3 minor fix to kotlin client genrator due to merge conflict
 
- 
914275fe7 [kotlin] support selection of datelibrary
 
- 
a61d23265 Fixed incorrect renaming of header and query param to camel cases for Kotlin Client template
 
- 
Lua
 
- 
dbe78e23e [Lua] Improve auto-generated test files
 
- 
6c79052ac Add auto-generated Lua spec files for APIs, models
 
- 
38a2c1dde [Lua] Fix Rockpec
 
- 
a2410b210 Add auto-generated rockspec file to Lua API client
 
- 
df10c725a Add lua test script, minor fix to Lua API files
 
- 
Java
 
- 
2e69e6c03 build.gradle should not have commas
 
- 
1a4e5a4e5 Java client: Add constants for libraries (#163)
 
- 
7db0201a8 Fix NPEs in Java generator (#154)
 
- 
4d7ff8cfb JavaDoc fixes for Java/RESTEasy client (#151)
 
- 
072ce070b resteasy: fix outer enum case (#139)
 
- 
ccd002966 [Java] rest-assured: fix javadoc in templates
 
- 
e7410d4c8 Allow $ in java var name
 
- 
03490e923 Fix Java binary mapping
 
- 
70b4b55fa Fix performance linting problem with maps in Java ApiClient template
 
- 
cddcda0fe [Java][Jersey2] Make generated client code thread safe
 
- 
298ca8d35 use correct jackson date library when using Java 8
 
- 
53eeb0c04 [Java] fix connection leak on retrofit OAuth token renewal
 
- 
61c25e711 [Java] Fixes for retrofit
 
- 
f02332755 [JAVA] 4709: codegen with parcelableMode fails to build if using arrays in swagger.
 
- 
4eeb974cb [Java][google-api-client] Fix bug with empty POST request not sending content-type
 
- 
d4543a99e [Java][retrofit2] file upload sets filename as baseName instead of a dynamic filename
 
- 
62a930223 [JAVA][Rest-assured] reqSpec() method has been added into api.mustache for requests custom…
 
- 
fec0363f7 [Java] Add back byte array enhancement
 
- 
59ff4c198 [Java][library: vertx] Add default value and required parameter support to vertx server temp…
 
- 
3bd2da9a8 [Java] Fix build warnings
 
- 
429b96ae7 [JAVA] equals and hashCode for models with byte[] and binary strings
 
- 
495971c2c [Java] use html entities in javadoc of generated code (#106)
 
- 
82ee8656f [java] Enum in array of array (#66)
 
- 
bf7e4e7df Java gson: add @SerializedName value as constant  (#22)
 
- 
30c1448d7 Fix build.gradle for Java RESTEasy client
 
- 
642c0566d [Java] Use Rx2 Completalbe for Void Retrofit2 responses
 
- 
72221b1cf Adding @Deprecated to retrofit2 client interfaces.
 
- 
47111b324 [Java] fix gson deserialize format byte
 
- 
9e06f7063 [Java] Fix assignment of new object instance to variable
 
- 
006f084b5 [Java] Allow to set values with setApiPackage(..) and setModelPackage(..)
 
- 
JavaScript/NodeJS
 
- 
d80e29585 Fix JS test using baseName in default value (#5)
 
- 
fe15f4690 fix toDefaultValueWithParam in JS
 
- 
90859575e Fixing variable name typo (instane -> instance)
 
- 
Objective-C
 
- 
9fb2c29a4 7644 objc deprecated afnetworking datataskwithrequest
 
- 
5d1874028 add class as a keyword in objc generator
 
- 
1b8df5c20 Update ObjcClientCodegen.java
 
- 
246ed5754 restore objc reserved word: property
 
- 
PHP
 
- 
3beeb4e77 [PHP] Not-required properties now shows as nullable (#129)
 
- 
37df59d6f [PHP] Adjust the names (script, sample folder, generator) to lang option (#159)
 
- 
4a5d16b23 [PHP] Fix string length validation
 
- 
d58835e57 [PHP] Improve: Make validation strict
 
- 
cf8d8d56f [PHP] Fix code example from README. Variable name was missing when using Basic auth.
 
- 
0adbf7e51 [PHP] Improve: update sample tests automatically
 
- 
32cf2f16f [PHP] Non required enum property
 
- 
3bcf0ff76 [PHP] Add path & file separator (/) to return the correct path when deserializing a file
 
- 
14e1e1980 [PHP] Improve validation on empty arrays
 
- 
809e1f4c9 [PHP] Cleanup tests
 
- 
76907cacd [PHP] declare property headerSelector
 
- 
Python
 
- 
7184f1ec6 [python] asyncio supports _preload_content; remove unused imports (#107)
 
- 
d74d2ba03 fix: python clients
 
- 
8e0a0ebd6 Fix python / tornado body handling
 
- 
b39c35c76 Fix inconsistency between model name and file name in python client
 
- 
dfbef4374 Fixed unicode error and supported allow_nonstandard_methods in tornado based python client
 
- 
f6e0e297e [python-asyncio] tests and fixes
 
- 
R
 
- 
61e58d649 Add R namespace file
 
- 
Ruby
 
- 
a08164592 fix ruby parameters in documentation, fix reuqiredParams, optionalParams
 
- 
8e34f9a98 update to newer version of ruby
 
- 
aa6b217bb [Ruby] Add auto-generated rubocop config file
 
- 
Rust
 
- 
b44357394 [Rust] Implement minimal auth support
 
- 
0b845a57e [Rust] Changes hard coded body to dynamic parameter name -
 
- 
a3c97753f [Rust] Handles UUID as string
 
- 
027df610b [Rust] Handle error response statuses
 
- 
66be7a791 [Rust] Add user agent handling for rust template (master)
 
- 
3029b7b0f [Rust] Format example with rustfmt
 
- 
Scala
 
- 
197b4481e normalize akka-scala and Java README
 
- 
612cfb7af [Akka-scala] Clean unused dependencies such swagger-core
 
- 
86697fedb [Scala][Gatling] correct body params filename
 
- 
832919b84 [Scala][Akka] Remove unused dep when model package is empty
 
- 
Swift
 
- 
40d5d0990 [Swift4] accept empty content with default client
 
- 
3b7230b17 [Swift 4] Fix APIHelper to accept array parameter
 
- 
e22faf4cd [Swift] Add public initializer for modelObject.
 
- 
b184fb1d9 [Swift3] escape URL parameters
 
- 
52f606b8d Fix Swift3 test cases and add pom.xml, travis config for iOS test
 
- 
a3d0f1d4b Swift4: make generated models structs instead of classes
 
- 
TypeScript
 
- 
f615d823f update ts node dependencies
 
- 
9ac9bc0dc [TypeScript] enhance ts import
 
- 
009dcf009 Mark not required swagger properties as optional typescript properties
 
- 
bdd2c2a4e Misc typescript Angular code generation improvements
 
- 
260375c9e Fix typescript-node generation of array type models
 
- 
d1933b5fc Fix a problem in the generation of typescript-jquery when we have enum in a query param
 
- 
20305139b [Feature][TypeScript] request param enum as literal unions
 
- 
524f162e6 Use supportsES6 flag in ts compilation for language typescript-angular
 
- 
9b8602311 [TypeScript] Make OpenAPI Generator serialize subclasses properly (#102)
 
- 
4bc5ffe86 [typescript-angular] add provided in support (#120)
 
- 
ef832e715 [Feature][TS Angular] improve docs angular import
 
- 
fc7e08346 [TS][Fetch] Add interfaces option
 
- 
157e6b7fa [angular] Add option to generate tagged unions
 
- 
7faaa091c Fix generated module imports in Aurelia APIs
 
- 
b5f0b24ba [TS] fix object declaration in model
 
- 
API Servers
 
- 
C++
 
- 
6fef0a7ff fix string issue with restbed generator
 
- 
a339422bd move get type declaration method to c++ restbed
 
- 
C#
 
- 
d9d653016 [aspnetcore] Make the use of Swashbuckle optional (#110)
 
- 
9a8183ab0 [aspnetcore] Fix openapi.json location rename (#56)
 
- 
12abfb968 [aspnetcore] Update Dockerfile
 
- 
866817587 [aspnetcore] Fix string enum generation
 
- 
Java
 
- 
bd50d368e [JAVA - jaxrs-reasteasy-eap] Add import to models (#179)
 
- 
7efda597c Fix issue with useBeanValidation option in Java server generators (#160)
 
- 
71b5de3ed Do not set contextPath for spring-boot (#104)
 
- 
b73ab0260 jaxrs-cxf-cdi: fix outer enum (#131)
 
- 
4d7fc046f [JaxRS] Add "validation-api" dependency in jetty (#30)
 
- 
ce930e7a6 [Jaxrs-cxf] Add bean-level cascaded beanvalidation for pojos (@Valid)
 
- 
386b9f432 Modify "postProcessOperations" for "jaxrs-cxf-client"
 
- 
5d92717dc update jaxrs to listent at port 10080
 
- 
7c2031675 update artifict id for jaxrs datelib j8
 
- 
88c5112f2 Adds support for returning response in jaxrs-spec interfaces
 
- 
6bf84d5fa [JAXRS-SPEC] Fix lowercase enums sent as uppercase
 
- 
3a1922bc9 Fix version for "spring-boot-maven-plugin" (#85)
 
- 
161948657 Add reactive option for Spring Boot (webflux)
 
- 
ff1178ad7 [Java][Spring] fix missing optional query params
 
- 
2103fadab Fix package declaration for play-framework
 
- 
2c6380c84 fix inner item (list, map) for play framework
 
- 
e33b350c8 Fix an issue in Play Framework generator where a CSV is empty and transferred to the controllerImp with an empty item.
 
- 
99fc27246 [JAX-RS][Spec] Removes throws Exception.
 
- 
fe2a44339 Fixes issue  (SpringCodeGen dateLibrary "java8-localdatetime" option is ignored).
 
- 
d890d733f [JaxRS][Java] issue with implFolder on windows, and required fields generation for containers (#88)
 
- 
c91ce17ae Feature/javaPlayWithAsynchronousControllers
 
- 
f00a1ef52 [JAVA] Correct consumes/produces attributes for Spring Controllers
 
- 
d14318cf2 [JAVA][Spring] Optional params with delegate
 
- 
3f81378d7 [java resteasy] fix string comparison (#134)
 
- 
5ea3d3bb1 [JAX-RS][SPEC] Bug fix that prevents generating interfaces when interfaceOnly is false.
 
- 
Kotlin
 
- 
7cad47dd3 [kotlin-server] --library=ktor (barebones implementation)
 
- 
752b36e66 [Kotlin] Sanitize enumeration name to add underscore when it starts with digits (#77)
 
- 
NodeJS
 
- 
6d88d073c [NodeJS] make serverPort configurable via CLI option
 
- 
e7f4fb3c4 Fix nodejs-server path issue in windows platform
 
- 
PHP
 
- 
d30fcbabb Fixes for php-ze-ph generator
 
- 
60e3339aa [Feature][PHP] Update for ze-ph generator
 
- 
Python
 
- 
62b93fc5c [Python][Flask] Handles UUID format -
 
- 
9999eac52 fix python flask parameter naming
 
- 
Scala
 
- 
d5c355a59 [Scalatra] Updated the version of Scalatra to the latest (2.6.2)
 
- 
52322c47c [finch] Allow finch server to compile for CI checks (#7)
 
- 
Ruby
 
- 
dcad9ae80 [Rails5] make version of the generated Rails stub server to strict Rails 5.0
 
- 
Rust
 
- 
37faaf926 [rust-server] API version constant and composite version support
 
- 
6c7813e79 [rust-server] asynchronous support via hyper v0.11
 
- 
Documentation
 
- 
25a6a9d44 html: fix typo in class name
 
- 
Miscellaneous
 
- 
f04213285 Cli error message improvements (#172)
 
- 
0ece706a4 Remove CodegenConfig.fromModel(String, Schema) method (#90)
 
- 
64f2bea37 Fix getReferenced...() methods in ModelUtils (#157)
 
- 
16ff5174e Update swagger-parser to 2.0.1 (#123)
 
- 
76b7307a6 DefaultGenerator: ignore only form param schemas (#74)
 
- 
a3aabd390 Create a default implementation of delegate if none could be autowired (#92)
 
- 
ca89af808 Switch to Java 8
 
- 
27426f7b5 Cli generator name option, replaces 'language' options in CLI and Maven Plugin (#57)
 
- 
a1ff50241 Rename datatype to dataType in CodegenProperty (#69)
 
- 
3b9a2a7c3 CaseFormatLambda has been added, params for Rest-assured client has been refactored (#91)
 
- 
488910362 Set parameters allowableValues dynamically (#65)
 
- 
2821f18b9 Meta: set version for "build-helper-maven-plugin" (#89)
 
- 
82d9e935e Add CORS configuration to openapi-generator-online (#71)
 
- 
e3814f51d Improvements to online codegen (#55)
 
- 
6b8079808 Consider minLength, maxLength and pattern in referenced schema (#45)
 
- 
7c5dfbfa0 Minor improvements to OpenAPI Generator Online (#54)
 
- 
8dd46a3fb Move online gen from jersey to spring boot (#44)
 
- 
803821e21 Fix an issue with example generator when array is too large (#46)
 
- 
673f2bc46 Add CodegenProperty.nameInSnakeCase  (#42)
 
- 
67ebe17dd Fix isPrimitiveType flag for array of form parameters (#38)
 
- 
10ac4024d Code clean-up: remove field declaration hiding existing fields (#35)
 
- 
ab9c4b5a6 Code clean-up: Add own private static final LOGGER in each class (#26)
 
- 
41b0ff351 Code clean-up: remove DefaultCodegen#getSimpleRef(String) (#19)
 
- 
13f084e7b Fix dataTypeWithEnum for array of form parameters
 
- 
fd3b883e8 [DefaultCodegen] Fill CodegenOperation::produces with unique media types
 
- 
db9a899a0 update getSchemaType variable, remove unused import
 
- 
d74b4cdf8 fix map type and collection format for form parameter (array)
 
- 
d99f46cff Revise how to obtain the example value
 
- 
b1eac05b2 Fix form datatype (array of string)
 
- 
3c666a6d4 Fix array of form parameters
 
- 
1492df6ce Override server port for Jetty configuration
 
- 
622a75b2c Fix data type shadowing
 
- 
861d11d01 use vendor extension in operation to set the body parameter name
 
- 
80c8b92cb add postProcessParamter for body, form parameter
 
- 
7fe555a51 Set collectionFormat default only for array
 
- 
16589de97 default collection format to csv according to the spec
 
- 
edbe4902a Consider '$ref' for consumes and produces in CodegenOperation
 
- 
e24238a35 Improve getter name handling for boolean properties
 
- 
6e2ca294b update discriminator to discriminatorName
 
- 
74075c087 Primitive datatype in Schema components
 
- 
d8abd4a14 support map in body parameter
 
- 
186594115 Update swagger-core to 2.0.1
 
- 
2034f61e5 Add HideGenerationTimestamp getter and setter in the CodegenConfig interface
 
- 
d0e2d7684 Getter and Setter for hideGenerationTimestamp
 
- 
adbde2fb6 replace fromOperation with postProcessOperations
 
- 
9d1ae0dd2 fix bigdecimal in default codegen
 
- 
ffa0e115d fix default value and type declaration
 
- 
0e744adb8 Apply collection format to SIMPLE enum style
 
- 
36ed29852 Tweak tests according to the parameter order changes
 
- 
17b082793 Move 'enum_query_double' to parameters section
 
- 
28fcf48f4 Add a method returns discriminator name
 
- 
7daa2ec5d Fix broken discriminator
 
- 
faa901640 Replace with the helper function: getTypeDeclaration
 
- 
c8650d0e3 Make optional properties in models optional parameters
 
- 
40c30dd2f Fix inputSpec for multi module builds
 
- 
5326152cc add option to reorder form/body parameter
 
- 
d1850091a Improve JMeter Template
 
- 
fedfb0cda Factorize addOption/addSwitch method
 
- 
e73eeb4fd fix for stripping prefix on single enums
 
- 
13e3db59e Add operationIdOriginal to store the original operationId
 
- 
0b2d80569 Expose getter/setter for serverPort to facilitate testing
 
- 
8e270f465 add vendorExtensions field in CodegenSecurity class
 
- 
1ee85de94 Added Intelli J ignore
 
- 
7b8e409cf Added gitignore generation function