@wing328 wing328 released this Nov 15, 2018 · 12 commits to master since this release

Assets 2

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

@wing328 wing328 released this Oct 31, 2018 · 61 commits to master since this release

Assets 2

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

@wing328 wing328 released this Oct 15, 2018 · 113 commits to master since this release

Assets 2

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

@wing328 wing328 released this Oct 1, 2018 · 150 commits to master since this release

Assets 2

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

@cbornet cbornet released this Aug 30, 2018 · 266 commits to master since this release

Assets 2

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

@wing328 wing328 released this Aug 22, 2018 · 299 commits to master since this release

Assets 2

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

@wing328 wing328 released this Aug 14, 2018 · 337 commits to master since this release

Assets 2

v3.2.1 comes with 20+ PRs from the community as part of our regular weekly patch release. If you've any question or feedback, please open an issue with the details. Here are the higlights of the release:

General

  • [generator] Cleanup debugOpenAPI usage/display text #804
  • Correct URL for openapi-generator.cli.sh in README.md #770
  • [gradle] Support nullable system property values #764
  • [Core] Resolve Inline Models #736
  • Fixed the generation of model properties whose data type is a composed (allOf) schema #704

C++

  • [cpp-restsdk] Support multi-line descriptions #753
  • [C++][Restbed/Pistache] Added fix for byte array #752
  • [cpp pistache] use model namespace only on Model import #733
  • [cpprestsdk] Fix broken non-mockable builds due to conflicting destructors #732
  • [cpp pistache] fix leading number in model names and apply modelNamePrefix in all cases #730

C#

  • Fix float/double default value in C# generator #791
  • Fix C# client enum issue #774

HTML

  • Enhancements to documentation generators (samples, default values, etc) #790

Java

  • [Java][jaxrs-jersey] add sample with jaxrs-jersey + openapi v3 #778
  • [jaxrs-spec] fix incorrect @Path-Generation for resource-path "/" #771
  • [jaxrs-spec] setup test for samples, repair import and dependency #755

JavaScript

  • [JavaScript] Update vulnerable dependencies #784

PHP

  • [PHP][Laravel] Remove duplicate variable declaration #792

Python

  • Minor update to Python generator usage #762

Ruby

  • [Ruby] Fix method split #780

TypeScript

  • Fixed date formatting in typescript node client #786

@wing328 wing328 released this Aug 6, 2018 · 365 commits to master since this release

Assets 2

We're glad to release v3.2.0 (minor) with 50+ PRs from the awesome community. This release comes with 2 new generators:

For a list of breaking changes with fallbacks, please refer to the list (6 PRs) and the upgrade note in the PR for more information.

General

  • Update swagger-parser #696
  • Update Q&A based on feedback from users #695
  • Use Released version in maven samples #693
  • Better handling of operationId starting with numbers #691
  • Migration Guide: add "Validate spec on generation by default" section #683
  • [all] Fix NullPointerException with list of simple types #680
  • Improve validation error message to show how to disable the validation #653
  • [all] Fix inconsistent parameter names when ensuring uniqueness #640
  • Support for discriminator.mapping #536
  • Validate spec on generation by default #251

Apex

  • Re-implementation of Apex client code gen #698
  • [Apex] migrating to OpenAPI Generator project #692

C++

  • Update cpp-tizen class to extend AbstractCppCodegen #676
  • [qt5 server] Improvement in response handling #675
  • [qt5 server] Improve qt5 server naming #655
  • [cpp] Sanitize identifier names #631
  • [C++][Pistache] Default isAddExternalLibs to true #626
  • [Qt5 Server] Add Support for Qt5 server using QHttpEngine #322

Documentation Generators

  • [html2] Various enhancements #643

Elm

  • [Elm] Template improvements #661

Go

  • [Go] Prefix enum number with _ #703

Java

  • Fix Javadoc string error in Java (rest-assured) client #702
  • [JAVA][Rest-assured] Added constants #697
  • [Java][Spring] Add stopWait to pom.xml #670
  • [Java][RestTemplate] Fixed invalid URL-encoding of query parameters #646
  • [Java] add useNullForUnknownEnumValue option #633

PHP

  • [PHP] better operationId handling, add CI for PHP slim server #723
  • [PHP] [Laravel] Fix syntax errors in models #721
  • [PHP] Decommission "packagePath", add new option "packageName" #681
  • [PHP] Escape media type #615
  • [Slim] Add Basic authentication middleware #606
  • [PHP][LARAVEL] initial PHP-laravel integration #574

Python

  • Fix operationId starting with a number for Python client #682
  • Support for python 3.7 by renaming async to async_req #519

Ruby

  • [Ruby] Better handling of operationId starting with a number #719
  • Add Dockerfile for ROR generator #718
  • Prevent throwing another exception if the request fails eg connection reset #715
  • [RubyOnRails] Add option to select DB adapter in ROR #711
  • Underscore classVarName to fix route issue in ROR #706

Rust

  • [Rust] Ignore additional properties #671
  • [rust-server] add support for '|' in path segments #667
  • [rust-server] add support for multiple samples #658
  • [rust-server] Avoid HTML escaping of output #645
  • [rust-server] Implement stack for Context #612

TypeScript

  • [typescript] allow $ in var name #694

@wing328 wing328 released this Jul 25, 2018 · 432 commits to master since this release

Assets 2

General

  • Parameter enhancement in PathItem #639
  • Handle variables in server declaration #614
  • Fix for arrays with maxItems 2147483647 #603
  • Add "docExtension" option to customize generated file extension for docs #591
  • Adds a simple bash completion script #277

C++

  • [C++][restsdk] Replace tab with spaces, fix empty spaces in new lines #632
  • [cpp-restsdk] Generate mockable APIs #595
  • [cpp-pistache] Various fixes for Pistache #497
  • [cpp-pistache] add the option to fetch dependencies #495

Dart

  • Dart-lang template bugs fixed with "baseName" #567

Go

  • [Golang][client] Add option for standard Go generated code comment #555

Java

  • [Java] Escaping properties to better handle special characters #628
  • [Java][Client][RestTemplate] Do not create new Object for empty body #605
  • [Java][RESTEasy] Fixed setting of custom headers #599
  • [Java][RESTEasy] Update Gradle dependency #597
  • [Java][RESTEasy] Fix version incompatibility #594

PHP

  • [PHP] Remove platform dependency from file path #610
  • [php-symfony] Fixed a bug with access of non-existing property in generated code #578

Rust

  • [rust-server] enhance support for middlewares #552
  • [rust-server] Drop file support #547
  • [Rust] Split out request logic, implement form parameters #528

TypeScript

  • [typescript][jQuery] Fix promise resolution #581
  • Multiple enhancements to typescript fetch generator #145

@jmini jmini released this Jul 18, 2018 · 466 commits to master since this release

Assets 2

General

  • Fix NPE in body parameter due to incorrect parameter/consume (#563)
  • This fix the problem of having UNKNOWN_BASE_TYPE and "Object" type (#383)
  • Add default http scheme for server URL (#498)

CLI:

  • Add --generator-name / -g to config-help (#491)
  • Add graceful error handling for unknown command (#494)

Release engineering

  • Improve CircleCI caching (#539)
  • Remove secondary dependencies in pom.xml (#529)
  • Add release checkout script (#485)
  • Regenerate haskell-http-client samples (#492)

C++

  • Fix handling of UUID types (#554)
  • Fix memory leaks in Pet Store client sample (#270)

Java

  • Java6 support: fix pom and gradle files, avoid diamond notation (#560) and CI to test it on travis (#568)
  • Spring: add check for list size before attempting to set last element field value. (#557)
  • Update CXF and Jackson to latest version (#496)

Go

  • [client] fix formData file parameter name use (#506)
  • Fx cache-expires-ineffassign (#466)
  • Add RFC-3339 formatting to parameterToString (#502)

PHP

  • Refactor php client generator (#504)
  • [Slim] Generation of UnitTest stubs (#566)

Python

  • [Client] pure library client package (#470)
  • Use local_var_params to avoid collision with api parameters (#521)
  • Improve logging in Python client (#480)
  • Update and fix python samples (#489)

Ruby

  • Abstract Ruby Codegen (#562)
  • Rename files/folders (#534)

Rust

  • Mark rust-server as migrated (#584)
  • Handle headers correctly (#549)