Skip to content

Releases: OpenAPITools/openapi-generator

v4.0.0-beta3 release

04 Apr 12:51
b3146c9
Compare
Choose a tag to compare
v4.0.0-beta3 release Pre-release
Pre-release

General

  • Update TestNG Version #2582
  • Change default inline object name #2569
  • Deprecate initialCaps and replace with camelize #2546 Breaking change (without fallback)
  • Fix out-of-memory issue with nested objects with arrays with maxItems set #2536
  • Add rule to maven-enforcer-plugin to prevent usage of SNAPSHOT versions #2509
  • Better handling of operationId with slashes #2469 Breaking change (without fallback)
  • Update documentation mustache templates for proper linting #2458
  • Option to overwrite only changed files #2451
  • Implement yamlsample config help output #2443
  • Implemented yaml parsing for config file #2434
  • Add packageName configuration to maven plug-in #2429
  • [Maven plug-in] fix failure to read schema from the classpath #2409
  • [MAVEN PLUGIN] fix javadoc, fix sonarlint issues in module openapi-generator-cli #2399
  • PR for ability to easily debug newly created codegen classes #2388
  • Fixing various issues reported by Sonar (part 2) #2295
  • Update swagger-parser to '2.0.11-OpenAPITools.org-1' #2262
  • Fix NPE when array item is undefined #2247
  • Better info message about using generateAliasAsModel #2246
  • Fix various issues reported by SonarCloud reports #2229
  • Refactor and use some Java 7 features #2225
  • Fix missing nullable #2189
  • Gradle - make GenerateTask properties optional #2185
  • [core] fix referenced enum case #2175
  • [core] consider schema in headers when computing unused schemas #2138
  • [core] Fix NullPointer when schema is not set in header #2133
  • Add servers support to the path and operation #2048
  • Add methods to name interfaces (allOf, anyOf, oneOf) #2046
  • Fix isFreeFormObject check for allOf, oneOf, anyOf #2044
  • Making completion work with openapi-generator-cli or openapi-generator #2027

Android

  • [GRADLE] upgrade to 2.14.1 in java/scala/androit client to fix vulnerabilities #2416

C#

  • Remove emitDefaultValue option from C# generators #2559 Breaking change (with fallback)
  • [C#][ASP.NET] fix "EmitDefaultValue" default value with false #2558
  • [Aspnetcore] add nullable support to parameters and properties #2529
  • [Csharp] add nullable support to API client #2528
  • [aspnetcore] Feature/cleanup (contributor rebase) #2506
  • [Java][C#][JS] remove localVariablePrefix #2423 Breaking change (without fallback)
  • Updates the toInstantiationType method in the csharp generator, Adds spec additionalProperties + nullable examples #2405
  • [C#][netcore] Fix package name in the localVar types #2378
  • Rename generator: csharp-refactor => csharp-netcore #2348
  • [aspnetcore] more configurable and generate abstract class library #2282
  • [aspnetcore] migrate the docker image for the aspnetcore generator #2281
  • C# refactor improvements: .NET Standard and .NET Core #2187

C++

  • [C++][Qt5] Fix generation of optional file when model name prefix is selected #2341
  • [C++] [Qt5] Add enum support for client and server #2339
  • [C++] [Qt5 Server] server allow api handler override of generated code #2308
  • [C++] [Qt5 Server] Add support for free form object in requests #2288
  • [C++][Qt5] Fix import for models with underscore #2168

Elixir

  • [Elixir] Deserialize responses based on status code #2355
  • [Elixir] Update Tesla dependency to version 1.0 #2326

Elm

  • [elm] Update ISO 8601 library (fixes missing time zone designator) #2545
  • [elm] Import types in operations #2488

Dart

  • [Dart] Fix authentication for HTTP basic, API keys #2419
  • [Dart] query arguments of requests are now url encoded #2250

Go

  • [go] support decoding plain string responses #2414
  • [Go] Fix up json check regexp and support vendor-specific mime types #2322
  • Apply GIN_MODE=release for the Dockerfile of go-gin-server #2283

Haskell

  • [haskell-http-client] add cli option customTestInstanceModule #2406
  • [haskell-http-client] fix bug in test for Maybe A.Value #2382
  • [haskell-http-client] add support for import-mappings #2381
  • [haskell-http-client] use a decreasing size for Gen (Maybe a), to prevent infinite recursion #2343
  • haskell-http-client: fix indentation in .cabal file #2306
  • haskell-http-client: update katip version bound #2305
  • [haskell-http-client] Allow logger selection via cabal flags. Emit Consumes / for requestBody when not specified #2258

Java

  • [Java][Feign] Support OAuth without 'expires_in' data #2563
  • Minor improvements to Java API clients (feign, okhttp, retrofit, retrofit2) #2521
  • Fix JavaDoc errors in ApiClient for resttemplate #2515
  • Update Java Vertx client dependency #2507
  • [Java] Instantiate HttpBearerToken authentications if so declared #2485
  • [Java] Jersey2 - Always render setBearerToken no matter if OAuth2 is in use #2479
  • [Java] Fix Javadoc issue in the client #2435
  • [Java][C#][JS] remove localVariablePrefix #2423 Breaking change (without fallback)
  • [Java - OkHttp] Fix for the added interceptor and tests #2420
  • [GRADLE] upgrade to 2.14.1 in java/scala/androit client to fix Vulnerability #2416
  • Update Java client (okhttp-gson) dependencies #2368
  • Add more tests to the Java client #2365
  • [Java] Update Javadocs for HttpBearerAuth #2364
  • [Java][okhttp-gson] Fix incorrect use of OkHttp interceptors #2356
  • [JAVA] Use specified data type in enum's fromValue instead of string #2347
  • [java-server-msf4j] fix and upgrade #2303
  • [Spring] fix datatype for non-multipart file request body #2271
  • Java RESTEASY : fix defaultValue annotation double quoted in API operation #2268
  • Java Spring : fix defaultValue annotation double quoted in api operation #2267
  • [Java][JaxRs] bean validation annotation (e.g. NotNull) is applied to body param of api interface #2239
  • rest-template: allow array parameters in path using collectionFormat #2177
  • okhttp-gson: allow array parameters in path using collectionFormat #2137
  • [Java] Bean Validation for decimalmin/max incorrect when exclusive set #2115
  • [Java] Getter/Setter naming convention not followed in generated models #2095 Breaking change (without fallback)
  • Remove localVarPrefix from Java client #2045 Breaking change (without fallback)
  • [Java] adds snapshotVersion CLI option and uses API version as artifactVersion by default #2033
  • Update CXF and Jackson to latest version #2017

JavaScript

  • [JS] fix NPE for null string and improve Travis config file #2553
  • [JavaScript] fix index.js, ApiClient.js and test files generated to incorrect location (invokerPackage) #2511
  • [JS][Flow] Fix body serialization when body is falsy #2499
  • Add build script and remove babel #2439
  • [JS][Flow] various improvements #2298
  • [JavaScript] Add petstore integration test to JS ES6 client (OAS3) #2245
  • [JavaScript] fix JS default ot ES6 #2084
  • Add "servers" support to operation, path in the JS client #2060
  • Add Bearer authentication support to JS client #2020

Kotlin

  • [Kotlin SpringBoot Server] alternative: fix optional parameter not correctly declared in service #2539
  • [KOTLIN] fix variable name not correctly sanitized #2537
  • Fix Kotlin default value #2513
  • [Kotlin client] fix warning when else all covered #2470
  • [kotlin-spring] use spring resource for file handling #2455
  • [Kotlin] Add optional parameters to the method of api #2432
  • Kotlin model name camelize #2430
  • [BUG][Kotlin Client] API using case other than camelCase not generated properly #2391
  • [KOTLIN Client] Update to latest kotlin version #2375 Breaking change (without fallback)
  • [Kotlin] Add ability to use modelNamePrefix/modelNameSuffix #2349
  • [Kotlin Server Ktor] upgrade to stable version (1.1.3) #2333
  • [kotlin][client] bytearray conversion #2166

PHP

  • Remove global options from PHP generators #2403
  • [PHP] fix bad links in Model docs #2316
  • [Symfony] Replace deprecated Controller with new one #2146
  • [PHP-Symfony] Validate input objects #2144
  • [PHP-Symfony] Use Symfony Validator service #2143
  • [PHP] remove deprecated options #2083
  • [PHP-Symfony] Catch serializer exception #2074
  • [PHP-Symfony] Don't try to detect response format if method return nothing #2073
  • Add "servers" support to the operation, path in PHP API client #2072
  • Add controller.service_arguments tag to controllers to make them public #2059
  • [PHP-Symfony] Fix JMSSerializerBundle version #2057
  • Enable serialization of non-null negative values (array, false, etc) #2032
  • [PHP] Replace File.seperator with slashes in PHP projects #2007

Python

  • Added proxy headers option for urllib3 #2467
  • Adding retries option to override default value 3 of urllib3 #2460
  • Adds exceptions module to python clients #2393
  • [python-flask] Do not skip unit tests when underlying type defines json #2390
  • [Python][Flask] pythonic params #2374
  • [Python] add cookie support for authentication in the client #2367
  • Fix regex in Python server model code #2314
  • Removal of number being default to example in python client #2228
  • [Python] remove default value from being fallback to example #2213
  • Add python-blueplanet server generator #2184
  • [Python] Add "servers" support in path, operation #2052
  • [python-flask] [python-aiohttp] [bug] Fixed handling of dotted module names #2041
  • [Python] handle nullable parameters with None added to allowed_values #2034
  • [python] [bug] Fixed handling of dotted module names #2016
  • [python] [bug]Use actual value of generateSourceCodeOnly #2015

R

  • Add better example code for R object #2492
  • [R] url-encode path parameters #2397
  • [R] skip error when directory already exists in the test script #2379
  • [R sample] fix CircleCI error of outdated sample #2313
  • [R] Fix NPE issue due to default value using example value #2231
  • R client refactoring #2215 Breaking change (without fallback)
  • [R] Fix query parameters in the API client #2214

Ruby

  • [Ruby] Use Integer instead of Fixnum in Ruby client (#2475) #2481
  • Add RuboCop to Gemfile #2464
  • Fix boolean example value in ruby c...
Read more

v4.0.0-beta2 release

31 Jan 23:06
6a414af
Compare
Choose a tag to compare
v4.0.0-beta2 release Pre-release
Pre-release

General

  • Document 'x-enum-descriptions' and 'x-enum-varnames' #2010
  • [Website] Add CNAME, Google Analytics ID #1958
  • Add migration note about change in basePath #1957
  • [core] cleanup: remove OpenAPI parameter from CodegenConfig methods #1953
  • [Swagger-Parser] Update to version 2.0.8-OpenAPITools.org-2 #1924
  • Update Maven plugin README with new options #1917
  • Better NPE handling for undefined request body #1896
  • Clean up file output handling #1895
  • [gradle] Add 4 boolean properties supported by codegenConfigurator #1881
  • Add additional properties to Java CodegenModel #1854
  • Fix missing RequestBody.required of inline request body #1847
  • Add options to maven plugin #1845
  • Update isModel flag when setting codegen parameter flags #1844
  • Better support for composed schema (allOf) #1842
  • Fix inline resolver in handling forward slash #1839
  • Better handling of OAuth security schema #1838
  • Better error message when parameter ref not defined #1837
  • Delete langs command #1836
  • Add primitive types support to ExampleGenerator #1835
  • Add test cases for ExampleGenerator #1802
  • [gradle-plugin] Array model change #1789
  • Refactor InlineModelResolver #1788
  • Improve test codes of InlineModelResolver #1787

C

  • Minor fixes: remove unnecessary override #1906

C++

  • [C++][Client][C++ Rest SDK] Fix path parameters with format #1987
  • [C++] [Qt5] Update Readme for qt5 server #1912
  • [C++] [Qt5] Fix typo in Qt5 Server template #1859
  • [C++][QT5] Emit worker also in response signal #1829
  • [C++][Pistache] Fix missing const keyword in array and maps #1828
  • [C++][QT5] plain object compilation fix #1826

C#

  • Fix C# discriminator's mapping name #1942
  • Fix response headers in CSharp #1935
  • [C#][Refactor] Fix nullable required property in the constructor #1819
  • Fix various typos in the templates (Ruby, C#) #1803

Dart

  • [DART2]: fix Map<String, nativeType> fromJson #1936
  • [DART] fix: set fields to null if json value is null #1798

GraphQL

  • Rename graphql-server to graphql-nodejs-express-server #1822 (breaking changes with fallback)

HTML (documentation)

  • [html] Use ModelUtils to avoid NullPointerException #1948

Java

  • Update CXF and Jackson to latest version #2017
  • [core] Handle referenced enum case correctly #2001
  • Fix customized source folder in Java client #1978
  • [java-jaxrs] Add Javadoc to enum (x-enum-descriptions) #1951
  • Update Java default value in pom.xml #1949
  • SCM and license parameters are now also for resteasy clients available #1934
  • [Java] Generate OAuth related files only if OAuth security schema is used #1907
  • [Java] Update okhttp version to the latest #1897
  • [java-client][okhttp-gson] no oauth2 usage when hasOAuthMethods is false #1872
  • Fix a problem that points to a folder that doesn't exist #1863
  • [JAVA][JAX-RS] don't forget to support @JsonValue for enum #1833
  • Deprecated initialCaps #1821
  • Fix security issue with dependencies #1820

JavaScript

  • Add Bearer authentication support to JS client #2020
  • Add multiple servers support to JS API client #1974
  • Use JS ES6 as the default #1825 (breaking changes with fallback)
  • [JavaScript][es6][promise] better error response #1814 (Breaking change without fallback)
  • [JavaScript] Added plugins variable for the javascript/ES6 client #1797

Perl

  • Use 4-space instead of tab in Perl templates #1830

PHP

  • Add Bearer authentication to PHP API client #2013
  • [Slim] Update Readme #1995
  • Add multiple servers support to PHP client #1964
  • [PHP][php-ze-ph] Support for PHP 7.1+, Zend Expressive 3.2 and PathHander 0.4 #1902 (breaking changes without fallback)

PowerShell

  • Add process utils class to add index to properties #1796

Python

  • Add Bearer authentication support to Python client #1999
  • Add multiple servers support to Python client #1969
  • [Python][AIOHTTP] Fix missing init.py #1933

R

  • [R] various bug fixes and enhancements #1965

Ruby

  • Fix Ruby invalid enum generation for numeric enums #1945
  • Minor fixes: remove unnecessary override #1906
  • Fix various typos in the templates (Ruby, C#) #1803

TypeScript

  • Add bearer authentication support to typescript-angular package #1986
  • [BUG][typescript-node] Generated package causes compilation errors #1911
  • Add new generator: typescript-rxjs #1884
  • [TS][Angular] fixing wrong model file suffix when identical with model suffix #1876
  • [TypeScript-Node] support setting the content-type header per-call #1868
  • [TS][Axios] Remove redundant right parenthesis #1864
  • Minor Angular type improvements #1843

v4.0.0-beta release

31 Dec 10:49
Compare
Choose a tag to compare
v4.0.0-beta release Pre-release
Pre-release

4.0.0-beta is a pre-release before the official release of 4.0.0 in Jan/Feb 2019. It contains breaking changes (with or without fallback) and refactoring in the core modules to keep the project maintainable while enhancing it to support new features in OpenAPI v3 spec (e.g. nullable, oneOf, etc).

📕 = Breaking changes without fallback
📒 = Breaking changes with fallback

General

  • Delete unused method #1744 📕
  • Fix top-level group parameter #1779
  • Add test case for InlineModelResolver: inline array response #1778
  • Add test case for InlineModelResolver: inline array request body #1777
  • Add test case for InlineModelResolver: inline array schema #1772
  • Add test case for InlineModelResolver #1771
  • Resolve inline models before preprocess #1761
  • Add online generator tests #1759
  • Remove self-reference import #1758
  • Better handling of allOf (composition) #1757
  • Minor fixes for InlineModelResolver #1756
  • Maven plugins dependencies version update #1754
  • Various fixes for free-form objects #1751
  • [OAS 3.0] Fix composed oneOf type #1750
  • Swagger parser update: 2.0.8-OpenAPITools.org-1 #1721
  • Fix enum and map of enum issue (regression) #1706
  • [core] support for 'x-enum-varnames' for enums in arrays #1703
  • Add support for multiple inheritance #1664
  • Fix alias to free form object & map #1638
  • Replace a deprecated method (java.lang.Class.newInstance) #1635
  • Remove isNotContainer (mustache tag)#1629 📒
  • Fix NPE in ModelUtils.isFreeFormObject() #1625
  • [core] Fix NPE for endpoints without responses #1617
  • Introduced GeneratorProperties as a thread-safe clone of System Properties #1598
  • Improve checkout script on NPMJS wrapper #1595
  • Delete --lang option #1592 📕
  • Add tests to online generator #1591
  • Replace <tt> tags with <code> to make new javadoc work #1585
  • Better OpenAPI spec v3 support: allOf, anyOf, oneOf #1360
  • Remove deprecated methods in default codegen #1031
  • [cli] Don't log to STDOUT if debug flags are set #474

C

  • [C] various bug fixes and enhancements #1497

C#

  • Use CompareNetObject for object comparison in C# client (refactor) #1765
  • Fix C# client (refactor) warnings #173
  • [csharp-refactor] Minor csharp refactor changes #1723
  • Various fixes, enhancements to csharp-refactor client #1711
  • [csharp] fix bug with useDateTimeOffset due to incorrect type name #1544
  • [C#] Fix non-nullable enums on operation parameters not compiling #1543

C++

  • [cpp rest-sdk] Add status code to response handler #1541
  • [cpp-qt5] client response headers and validation of properties for client and server #1508
  • [cpp-qt5] Sanitize names in case number is present #1409
  • [cpp-qt5] improvements for server and client #1284 📕

Clojure

  • [Clojure] Fix tests: stop dashizing props names #1310
  • [Clojure] Add model generation and conforming #122 📕

Dart

  • [Dart][Jaguar] various improvements #1596

Elm

  • [elm] Enable setting Http request trackers #1609
  • [elm] Allow setting base path for each request #1538
  • Add support for UUIDs #1516 📕
  • Update Elm for elm/http 2.0.0 #1510 📕

Erlang

  • Add instructions for erlang-server #1643
  • Introduce optional weight function for commands and other improvements #1618
  • Upgrade the erlang-server dependency from cowboy1.x to cowboy2.x #1364 📕

GraphQL

Haskell

  • Upgrade haskell-servant generator to latest LTS #1469

Java

  • [Java] Update dependencies to address vulnerabilities #1735
  • Skip default value for container in Spring generators #1725
  • Improve Java model with instantiated lists #1683
  • Add nullable support to JAXRS-CXF parameters #1679
  • Add mavenCentral to build.gradle #1674
  • Fix the bug header bean validation is not performed #1661
  • Fix serializableModel option for Java jaxrs-cxf #1656
  • [Java][okhttp-gson] Fix bug when performing OAuth token retry #1576
  • [JAVA][Server] Fixed issue #1525: Fix model class field initializations (Regression since 3.3.1) #1549

Kotlin

  • Fix type inference error #1773
  • Fix UUID support #1746
  • [kotlin-spring] Allow DateTime to be remapped to others (LocalDateTIme) #1740
  • Fix missing closing parenthesis #1739

Perl

  • Add "nullable" support to Perl operation's parameters #1690
  • Add multiple inheritance support to Perl client #1681

PHP

  • [Slim] Add PHP CodeSniffer config template Breaking change (with fallback) #1764 📒
  • [PHP] bugfix: Array and Map inner schema definition can be missing #1586
  • [PHP] Bump minimum required version to PHP7.1 #1491 📕
  • [Slim] Abstract API controllers #1483 📕
  • [Slim] Migration to PHP7 #1263 📕
  • [PHP-Lumen] Lumen 5.6 support #212 📕

Python

  • [python/asyncio] use ssl argument instead of ssl_context (deprecated) #1724
  • Fix escaped regex values in Python client (#1517) #1539
  • Set Python's pool_threads default value to 1 #1403 📒

Ruby

  • Improve model class of ruby-client #1670

Rust

  • [Rust] Support formParams and fix list-params #1678
  • Generic JSON body support in rust-server #1523
  • Allow package version to be passed on CLI (Rust fix) #1286
  • Better context errors #1198 📕

Swift

  • [Swift 4] Use Info.version for podspec version #1760
  • [Swift 4] Add createURLRequest method #1727
  • [swift4] Use RequestBuilder directly for RxSwift and PromiseKit #1718
  • Mark swift3 generator as deprecated #1675
  • [Swift] Updates for Swift 4.2 #1443

TypeScript

  • Add nullable support to typescript-axios #1743
  • Fix discriminator name not following variable naming convention #1742
  • [Typescript-Angular] add nullable support #1730
  • [TS][Angular] Fix TS version detection #1616
  • [typescript-angular] Angular 7 compatibility of dependencies and package generator #1613
  • [TS][Angular] Avoid strictNullChecks errors for apiKeys #1611
  • [Typescript][Fetch] Fix bugs with new typescript-fetch generator #1545
  • [Typescript][Fetch] client refactoring #569 📕

Release 3.3.4

30 Nov 17:06
Compare
Choose a tag to compare

The bi-weekly patch release comes with the 100th generator to the project: C client generator (Thanks @PowerOfCreation and @zhemant for their contributions). This is also the last patch release before the upcoming major release v4.0.0.

Here are the highlights of the changes from the awesome community:

General

  • Update NPM installation instruction #1556
  • [Maven Plugin] Add option to skip maven execution if the source is older than output #1502
  • Improve error message when the spec is not found #1495
  • Better warning message and default value #1492
  • Add utility methods for free-form objects (isFreeFormObject) #1338
  • Skip model generation if it's a top-level map or array #1296

C

  • Add C client generator #516

C#

  • Fix NPE in the C# Nancy generator #1478

C++

  • [cpp rest-sdk] Response headers handler #1511
  • Fix NPE with cpp-restsdk client generator #1477

Elixir

  • Better handling of string type with different format #1558
  • [elixir] Fixes BadMapError for header parameters #1537
  • [elixir] Decode list with primitives #1536
  • [elixir] Typespec: Fixes issue with formatted primitives as parameters #1534
  • [elixir] Typespec - allow null on optional struct-attributes #1514
  • Fix the function name starting with numbers #1513
  • [Elixir] fix ":body" handling #1504

Elm

  • [elm] Add support for nested Lists & Dicts #1528

HTML

  • Fix header parameters display in the documentation #1579

Java

  • [Java][okhttp-gson] Add option to employ builders for API requests #1341
  • [Spring] Add an option to return success code #1197

JavaScript

  • Update JS client dependency #1578
  • Fix boolean value handling in HTTP request body #1515
  • Fix array of enum class in JavaScript client #1484

Kotlin

  • [Kotlin] support array, list in collection type #1564

PHP

  • [PHP client] Fix README.md template for php #1540
  • [PHP-Symfony] Fix wrong PHP Symfony typehint #1453

Python

  • Fix openapi_types generation error in Python Flask's models #1256

Ruby

  • Fix regexp in ruby-client #1521

Scala

  • Fix NPE for Scala Gatling generator #1479

TypeScript

  • Bump Zone.js to remove warnings when using angular >=6 #1522

Release 3.3.3

15 Nov 02:55
Compare
Choose a tag to compare

A bi-weekly patch release covering enhancements and bug fixes for 14 different languages. A refactored C# client (csharp-refactor) has also been added so let us know if you've any feedback or question by opening an issue. A complete list of changes can be found in the pull request page. Below are the highlights of the changes included in this release:

General

  • Test all generators with fake petstore spec 2.0, 3.0 #1439
  • Fix run-in-docker by disabling useSystemClassLoader #1418
  • Fix NPE when the paramName is null #1416
  • Add tip about running online openapi-generator via Docker #1415
  • [Docker] Change entrypoint to docker-entrypoint.sh #1413
  • Add top level x-group-parameters support #1405
  • Improve ensure-up-to-date script #1362
  • Update Gradle plugin's Readme.adoc with note about use of system properties #1356
  • Feature: Run OpenApi-Generator maven plug-in from within Eclipse #1332

Android

  • [Android] Fix compilation errors when there's no model defined #1438

Apex

  • Fix Java exception when using Apex client generator #1395

C++

  • Add file post-processing to C++ client, server generators #1440
  • [cpp-qt5] Sanitize Model and API filenames #1411
  • [cpp -qt5] Fixes double prefixing during model import #1398
  • [cpp-pistache]Add support for map #1359
  • [cpp rest-sdk]Fix precision #1293

C#

  • Fix issue with C# generator when the model name is "File" #1428
  • Fix incorrect pattern in ASP.NET Core generator #1371
  • [C#] Fix issue #1088 with generation of enum classes referenced from other objects #1089
  • C# template refactor #737

Dart

  • Fix defaultValue for String schema in Dart #1342

Java

  • [JAVA] generating Map with jaxrs-reasteasy does not import the hashmap #1426
  • Java Spring POJO: fix javadoc comment #1384
  • Fixes an issue where code generator for Java produces not compileable code #1357
  • [Java][okhttp-gson] Add new ApiClient constructors for access token retry #1319

Kotlin

  • Add file post-processing to Kotlin generators #1400
  • Add parcelizeModels CLI option #1289

Lua

  • Remove duplicated imports #1414

PHP

  • Add file post-processing to PHP generators #1402

Python

  • [python] Avoid creating unused ThreadPools #1387
  • [Flask] Upgrade to flask-connexion 2.0.0 #1382

Ruby

  • Fix return_type parameter examples in ruby-client #1399
  • Fix regex generated in Ruby client #1393
  • Fix issue with Ruby client where strings from example properties are not wrapped with quotes #987

Rust

  • [rust-server] Re-instate ApiRequestParser #1388
  • Bug fix: Array and Map inner schema definition can be missing. #1363
  • [rust-server] Enables the use of text/html responses as plaintext #1329

Swift

  • Updates the Swift4 templates to address the warnings produced by the Swift 4.2 compiler #1407
  • [Swift4] bug fix for date encoding Issues #1442

TypeScript

  • Fix name sanitation when using kebab case file naming #1314

Release 3.3.2

31 Oct 12:50
0cc9b69
Compare
Choose a tag to compare

v3.3.2 patch release includes Angular 7.x support, Erlang (PropEr) client generator and more. For a full list of changes, please refer to the list. Below please find some highights of the changes.

General

  • Test JDK10 in Shippable, fix javadoc issue #1335
  • Fix Maven repo URL (security warnings) for openapi-generator-cli #1333
  • [CLI] Fix help command #1279
  • Fix Gradle download link #1254
  • Better handling of boolean options in the Maven plugin #1252
  • [General] fix InlineModelResolver's logic and use openapi-generator's InlineModelResolver, so that nested "required" works correctly #1200

C++

  • [cpp rest-sdk] Improve method signatures to use const when the value won't change #1295
  • [cpp-restsdk] Add ref support inside fromProperty #1235

C#

  • [csharp] Added constructor without parameter for C# template #1234

Elixir

  • removed unused import to fix build #1326

Elm

  • [elm] Add flag to prefix custom type variants #1288
  • [elm] Add support for additionalProperties (map/hash/dictionary) #1262

Erlang

  • [Erlang][Server] Add two options: packageName and openAPISpecName #1303
  • [Erlang] add PropEr (property-based testing tool) support #1102

Documentation

  • [html] fix bug in default infoUrl #1301

Go

  • [Golang][client] fix response decode error handling #1291

Java

  • Update CXF and Jackson to latest version #1343
  • Update Spring core version #1265
  • Fix jackson-databind (Java) security issue #1259
  • [Java][jaxrs-resteasy] add @Valid when bean validation is enabled #1237
  • Don't generate unused ApiException class for java/webclient #1165
  • Add support for using Spring HATEOAS to add links in the Spring generator #1130
  • [Java][Spring] Add bean validation for email data type #1115
  • Add file post-processing support for Java generators #1052

JavaScript

  • [JavaScript] Fix duplicated superclass constructor calls #1270

Lua

  • [Lua] Remove outdated comment #1268

PHP

  • Add group parameter support to PHP client #1337

Python

  • Fix W605 warning and reenable flake8 #1334

Ruby

  • Add "servers" support to Ruby API client #1280

Rust

  • [Rust] Client library choice between hyper and reqwest #1258

Scala

  • Update Scala (akka) dependencies #1294

TypeScript

  • [TypeScript] Add Angular v7 support #1297
  • [TypeScript][Axios]: Added possibility to add custom axios instance #1274

Release 3.3.1

15 Oct 15:23
0136aee
Compare
Choose a tag to compare

v3.3.1 comes with 30+ PRs for bug fixes, enhancements and more. Please to this page for a full list of PRs included in this release. Thanks again for the contributions from the awesome community.

Users using Java 9 or Java 10 can now also build the project directly (mvn clean install) without using Docker.

General

  • Add an option to enable file post-processing #1241
  • [General][CI] fix gradle build error on java9+ #1240
  • [cli] config-help writes doc-compat output #1239
  • Fix export_generator shell script on Linux #1223
  • Add JDK 9 support #1188
  • Update maven plugin version #1184
  • Improve "allOf" support #1169
  • Update (broken) Vagrant configuration #1156

C#

  • Add files post processing to C# generators #1238
  • [C#] Fixed issue #1126 with invalid generation of C# children models in allOf clauses #1127

C++

  • [C++][Restbed] Fix default value for Restbed #1186

Dart

  • Fix enum value without escaping HTML special characters #1193

Go

  • Verify updatePetWithForm in Go client #1212
  • [Go] Fix for form parameters (x-www-form-urlencoded) #1187
  • Improve Go code format without gofmt #1173
  • Add x-go-custom-tag to go-server generator #1146

Java

  • [Spring] Fix character conversion error #1195
  • [Spring] Update spring-cloud generator to use openfeign #1191
  • [Java][okhttp-gson] Fix bug when specifying grant-type (flow) for OAuth token retry #1183
  • [Spring] Fix false in the Maven plugin #1179
  • Allow specifying/overriding the parent in the pom file for Java and Spring #1132
  • Refactor default and example values in Java generators #1045

Perl

  • Rename perl environment variable for post-processing file #1172

Python

  • Bug fix: python/asyncio no-ssl-verify affects verification of server certs #1211
  • [Flask] Upgrade to flask connexion 2.0.0rc3 #1192

Ruby

  • Better format for Ruby tests #1166

Scala

  • Fix enum value without escaping HTML special characters #1193

Typescript

  • [TS][Axios] fix return type for API interface #1218
  • FIX: remove special quotation marks from filename generation #1157
  • Fix: allow colons in TS interface property names #1152

v3.3.0 - a minor release with 4 new generators

01 Oct 16:01
e22c7c1
Compare
Choose a tag to compare

Thanks for all the awesome contributions by the community, we've released the minor version v3.3.0 with 4 new generators: Dart Jaguar client, Go Gin server, MySQL schema, TypeScript Axios client, and many enhancements to various generators. This release contains breaking changes with fallbacks so please refer to the pull request list for more information.

❗️= Breaking change (with fallback)

General

  • Fix top-level enum class checking #1120
  • Update openapi-generator-cli dependency #1116
  • Fix alias to map response #1067
  • [All] Add leading slash in path if missing #1034
  • [gradle plugin] Support Gradle 4.10 #1011
  • Add a CLI option to control logging level #1000
  • Ignore modules/openapi-generator-gradle-plugin/bin/ #983
  • Trim trailing '/' from basePathWithoutHost #967
  • [docs] publish documentation for the generators #932
  • Refactor StringUtils functions #859
  • Set swagger-parser to version 2.0.4 #787

Ada

  • [Ada] Operation security scopes are ignored when generating the server #1044

C#

  • Update the Asp.Net core server generator to support Asp.net Core 2.1 #1008 ❗️

C++

  • [C++] [cpp-rest-sdk] Avoid use of an empty key value #991
  • [C++] [cpp-rest-sdk] Check for null values #990
  • [C++ Pistache server] Support basic query handling #943
  • [C++ Qt5 server] Improvements for Qt5 server #942
  • [C++][Restbed] Fix default values for Restbed Server generator #761

Dart

  • Rename Dart env variable for post processing file #1101
  • Fix model generator for snake case open api definition on dart-jaguar #1076
  • Minor improvement to Dart generators #1042
  • Minor fixes (dependency update, etc) for Jaguar Dart client #1016
  • Fix generation of jaguar api with auth #1009
  • [Dart2] bug fix: maps could not be deserialized #1007
  • [Dart2] improved error reporting #1006
  • New Generator: Dart (Jaguar) client generator #998
  • [Dart2] Fix petstore tests #954
  • Set Dart2 as default, better format Dart code with dartfmt #949 ❗️
  • [Dart 2] Add support for Dart 2 #754

Elm

  • [elm] Fix Byte encoder/decoder names #1151
  • [elm] Major refactoring; add discriminator support #1104 ❗️
  • Better handling of different types in Elm generator #1100
  • Rename environment variable for Elm to post-process file #1094
  • Add logic to handle uuid in Elm generator (0.19) #1075
  • Use elm-format to format Elm API client #959
  • [elm] Add support for Elm 0.19 #937 ❗️

Go

  • [Go][go-gin-server] Fix path parameter naming #1141
  • Rename environment variable for Go to post-process file #1091
  • [Go][client] fix go import issue #1083
  • [Go][server] Add a generator for the gin framework #1048
  • Better process handling in Go postProcessFile #950
  • Add postProcessFile, implement in Go generators to run gofmt #929 ❗️

Haskell

  • Add post processing to files generated by Haskell generators #968

Java

  • [Java][okhttp-gson] Add support for OAuth access token retry #1058
  • [JaxRS-Spec] Fixes in generated pom #1035
  • [Java][Retrofit2] The part name is not added to the annotation #1029
  • [Java][Jersey] add @Valid when bean validation is enabled #1019
  • [Java][Feign] Add option to set Feign version #1005
  • [Java][Feign] Add support for Feign 10 #988
  • [Java][Spring] Fix reactive + delegatePattern option #978
  • Better code format for Java (okhttp-gson) client #971
  • [Java][Webclient ]Avoid double encoding on query params #924
  • [Java][Spring] Use better return types for the reactive option #913 ❗️
  • [Java][Spring] Service Virtualization Feature enhancement #196

JavaScript/NodeJS

  • Add js-beautify support to JS generator #961
  • [JS] Fix cookie support in Node.js client #895

Kotlin

  • [KOTLIN][SPRING] Bug fix for optional / default types #1107
  • Kotlin Spring server codegen improvements #1070
  • Bug fix: Kotlin generator doesn't support inheritance #1026
  • [KOTLIN][SPRING] Minor bug fixes to generator #1001

MySQl

  • Minor enhancements to the MySQL generator #1148
  • New Generator: MySQL Schema Generator #1055

Perl

  • Add perltidy to format Perl code #970

PHP

  • Fix error when giving an array as parameter to an endpoint body request #1037
  • [PHP] Drop support for PHP5.5 on php-client #993
  • [PHP]Generated lumen code can contain dots in routes #985
  • [PHP] Add interface/abstract/trait helpers #906
  • [Slim] Add PHPLint tool to check syntax #898❗️
  • [PHP] Upgrade php-cs-fixer to 2.12, enables PHP >= 7.2 support #769 ❗️
  • [PHP] Fix deserialize ApiException as a Model #757

Python

  • Add nullable support to Python client #1073
  • Add post processing to files generated by Python generators #1072
  • Fix Python Flask connexion support #1066
  • Fix circular import issue in Python Flask #946
  • [PYTHON] Api doc python with multiple authentications #928

Ruby

  • Add file post processing to Ruby generators #1062
  • Add nullable support to Ruby client #1059
  • Add pry-byebug to make it easier to debug the Ruby client during development #979
  • Generate a Gemfile.lock for the Ruby client #966
  • Update Ruby Petstore client's Gemfile #948

Rust

  • [rust-server] Restore support for nullable #936

Scala

  • Rename Scala post processing env variable to SCALA_POST_PROCESS_FILE #1143
  • [Scala-Akka] Generate default values for optional model fields #1119
  • Add option to enable scalafmt for code formatting #1032

Swift

  • Add file post-processing to Swift 3.x, 4.x generators #1069
  • [Swift4] Use CodeableHelper's dateformatter in encode() if configured #984
  • [Swift] add default value to Swift 3.x, 4.x podspec #921
  • [Swift4] Fix default value for enums (#652) #656

TypeScript

  • Add post processing to files generated by TS generators #1063
  • [Typescript] add missing type mapping #973
  • [TypeScript] add new generator for Axios #892
  • [typescript-angular] Add fileNaming configuration property #767

Release 3.2.3

30 Aug 11:24
5745f6d
Compare
Choose a tag to compare

v3.2.3 release comes with a new generator "Kotlin Spring Boot server generator"(kotlin-spring) and more feature support for OpenAPI specification v3 such as callback and nullable.

General

  • [all] add "x-enum-varnames" extension to control enum varname #917
  • [docker] Fixes hub dockerfile for online project Docker Issue: Bug #914
  • Add a test script to detect stack overflow error #904
  • Use JsonIgnoreProperties to fix Infinite recursion (StackOverflowError) #903
  • [CI] use regex to check if TRAVIS_BRANCH is a working branch #899
  • [build] create jar without version in openapi-generator-online #876
  • Add nullable support #873, #889, #930
  • Add callback model #861
  • Refactor StringUtils functions #859
  • [CLI] Improvements for meta and list command #799

C++

  • [cpp-pistache] removed model namespace when unused for operations #775
  • [qt5 server] various improvements #725

Elm

  • Remove EOF from Elm mustache template for better code format #879

Go

  • Add XML attr support in Go client #867

Kotlin

  • [KOTLIN] Spring Boot Server Generator #820

Java

  • [Java][JAXRS] improve generated readme #920
  • Update swagger annotation version in Java clients #915
  • [Java] Retrofit2 Play! Framework 2.6.x support #901
  • [Java][Webclient] Init authentication on ApiClient instantiation #887
  • [Java][Webclient] Add constructor to allow custom WebClient to be passed into ApiClient #882

PHP

  • [Slim] Add PHP CodeSniffer to check coding style #897
  • Add support for Api key in cookie for Symfony #884

Python

  • fix: python-asyncio/aiohttp with disabled ssl verification #891

TypeScript

  • [TS][Angular] fix typo in README.md #871

Release 3.2.2

22 Aug 08:49
3259bf7
Compare
Choose a tag to compare

v3.2.2 release includes some improvements for OpenAPI Spec v3 in the Default generator, e.g. better server variable support, option to skip "form" model generation, support for Free-Form objects, referenced headers and more. Here are the highlights of the release:

General

  • Escape various descriptions in the spec #866
  • Forbiddenapis check and fixes #672
  • Consider referenced headers #863
  • Fix unescaped description in requestBody #857
  • Support for Free-Form Objects #849
  • [gradle-plugin] better README notes on multiple specs #847
  • [docker] build files for automated builds #836
  • Added server variable support #816
  • Add support for multi consumes in inline schema #789
  • Add an option to skip "form" model generation #700

C++

  • Add auto-generated readme for cpprestsdk client #814
  • [cpprestsdk] Add localVar prefix to parameterized functions variables #731

Erlang

  • Fix Erlang optional/required parameters #829

Java

  • [Vert.x] Adjust client response handler to be backward compatible with older versions (< 3.5) of Vert.x #854
  • [Rest-assured] add more information about operations using "swagger-annotations", fix generated javadoc #815, #822, #831
  • [JAXRS] use contextPath variable for @ApplicationPath in RestApplication #850
  • [JAXRS-spec] Add option useSwaggerAnnotations (for MicroProfile-OpenAPI) #813
  • [Java-server] Fix improper quoting of default values for query parameters #708
  • [java] Generated code do not use forbiddenapis #672

PHP

  • [Slim] Update main documentation #839
  • [Slim] Official htaccess #838
  • Improve Symfony 4.1 compatibility #830
  • [PHP] Add gitignore to AbstractPhpCodegen #765

Swift

  • Update swift samples #738
  • [Swift4] Use thread safe manager store dictionary #864

TypeScript

  • Fix problems in typescript jquery generator #801
  • [TS][Fetch] Add possibility to pass baseOptions to the API Configuration #642