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
- GraphQL Server #1603
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 📕