5600 Commits

Author SHA1 Message Date
wing328
639f88918a [Java][RESTEasy] fix resteasy dependency issue in pom.xml (#6556)
* fix resteasy dependency issue

* add java resteasy petstore to circleci test
2017-09-24 12:49:43 +08:00
Akihito Nakano
8f8515486f [PHP] Improve Model template (#6460)
* Update samples

./bin/php-petstore.sh

* Remove unnecessary implements entry

ModelInterface, ArrayAccess are already implemented in parent

* Remove field `container` which is already defined in parent

* Change snake case to lower camel case

- invalid_properties
- allowed_values

* Improve doc commenct style

* Improve description length

* Improve length

* Doc comment short description must start with a capital letter

* Add a line between @param and @return

* Delete an additinal blank line at end of doc comment

* Udpate petstore-security-test
2017-09-23 21:36:05 +08:00
Esteban Marin
4a89d23619 [typescript-angular] apply encodeURIComponent to path-parameter (#6525)
* #6524: [typescript-angular] apply encodeURIComponent to path-parameter

* #6524: [typescript-angular2] update samples

* #6524: [typescript-angularjs] update samples
2017-09-23 17:23:45 +08:00
Jean-François Côté
1baa5fca45 [Typescript-jQuery] Fix for issue #6505 (#6541)
* Fix that prevented the default version to generate the model files

* Add generated samples
2017-09-23 16:57:48 +08:00
stoetti
07df0759d3 [TypeScript][Angular] Better support for "Accept", "Content-Type" (#6454)
* add consumes and produces as corresponding headers if present

* add check for empty array
fix copy/paste error

* fix styling

* add isJsonMime
filter produces- and consumes-Arrays for json-mime items
2017-09-23 15:48:05 +08:00
WendellDuncan
8698444fb2 Propsed fix for the ApiClient runtime crash (#6523) 2017-09-23 15:34:12 +08:00
Brad Crumb
c5c639b62b Zend Expressive fix and upgrade to version 2 (#6461)
* upgraded zend-expressive from version 1 to 2

* Changed error handler for compatibility with Zend Expressive 2

* generated newest sample files for Petstore ze-ph

* removed ErrorMiddleware because it is never been used anymore. Regenerated samples

* removed ErrorMiddleware Template from Codegen

* remove ErrorMiddleware from petstore sample

* Fixed some code styles

* regenerated ze-ph samples with corrected code styles

* added new line at the end of the file
2017-09-23 15:31:20 +08:00
CK
c74c31bcfc produce correct enum for jaxrs resteasy eap (#6489) 2017-09-23 15:05:05 +08:00
Jean-François Côté
bcfd14551a Fixing conversion when it's an item of a collection + add missing isUuid in objects (#6473) 2017-09-22 00:54:10 +08:00
lukoyanov
7f6bccb4ed [Java] Added Play! WS filters support for retrofit2 client (#6499)
* added play! ws filters support

* samples updated
2017-09-20 12:32:52 +08:00
Akihito Nakano
594b390e11 [PHP] Fix #6474: Bug with 'format: date' when using --model-name-prefix (#6510)
* Add test case which repeats the issue #6474

* Add "date" to type mapping

* Update samples

./bin/php-petstore.sh
./bin/security/php-petstore.sh
2017-09-19 18:07:37 +08:00
Larry Bordowitz
65d788396b [6313] Add imports to perl objects. (#6500) 2017-09-19 10:11:38 +08:00
ehyche
146b107774 Eliminate all Java compilation warnings for swift4 codegen module (#6467) 2017-09-19 09:46:27 +08:00
stkrwork
5443c0a94c [QT5][CPP] Fixing issue with maps in models (#6479)
* [QT5][CPP] Fixing issue with maps in models

- Adjusted init function to init map correctly
- Adjusted cleanup function to cleanup maps correctly

* Fixed formatting for samples
2017-09-19 09:31:53 +08:00
Mehdy Bohlool
f3c41e866c [Python] Add configuration.{connection_pool_maxsize, assert_hostname} (#6508)
* Backport kubernetes client features:

- assert_hostname
- connection_pool_maxsize
- cleanups

* Update petstore sample
2017-09-19 01:25:33 +08:00
Jon Schoning
d928617b69 [haskell-http-client] use katip logger, default strict (#6478)
* change strictFields cli option default to True;

* use katip logging; add cli-option for monad-logger

* fix date parsing

* remove package.yaml
2017-09-19 01:24:38 +08:00
Barry Andrews
5f566255ac Add support for reserved-words-mappings to cpprest (#6501)
* Also handles automatic escaping for reserved words, i.e.
  by default, no need to provide a mapping.
Fix #6498
2017-09-19 01:14:47 +08:00
ehyche
b807f6ff96 Support object schemas with only additionalProperties. (#6492)
Previously, we had implemented the Codable protocol by simply claiming conformance, and making sure that each of our internal classes also implemented the Codable protocol. So our model classes looked like:

class MyModel: Codable {
   var propInt: Int
   var propString: String
}

class MyOtherModel: Codable {
   var propModel: MyModel
}

Previously, our additionalProperties implementation would have meant an object schema with an additionalProperties of Int type would have looked like:

class MyModelWithAdditionalProperties: Codable {
   var additionalProperties: [String: Int]
}

But the default implementation of Codable would have serialized MyModelWithAdditionalProperties like this:

{
  "additionalProperties": {
    "myInt1": 1,
    "myInt2": 2,
    "myInt3": 3
  }
}

The default implementation would put the additionalProperties in its own dictionary (which would be incorrect), as opposed to the desired serialization of:

{
  "myInt1": 1,
  "myInt2": 2,
  "myInt3": 3
}

So therefore, the only way to support this was to do our own implementation of the Codable protocol. The Codable protocol is actually two protocols: Encodable and Decodable.

So therefore, this change generates implementations of Encodable and Decodable for each generated model class. So the new generated classes look like:

class MyModel: Codable {
   var propInt: Int
   var propString: String

   // Encodable protocol methods

   public func encode(to encoder: Encoder) throws {

        var container = encoder.container(keyedBy: String.self)

        try container.encode(propInt, forKey: "propInt")
        try container.encode(propString, forKey: "propString")
    }

    // Decodable protocol methods

    public required init(from decoder: Decoder) throws {
        let container = try decoder.container(keyedBy: String.self)

        propInt = try container.decode(Int.self, forKey: "propInt")
        propString = try container.decode(String.self, forKey: "propString")
    }

}

class MyOtherModel: Codable {
   var propModel: MyModel

   // Encodable protocol methods

   public func encode(to encoder: Encoder) throws {

        var container = encoder.container(keyedBy: String.self)

        try container.encode(propModel, forKey: "propModel")
    }

    // Decodable protocol methods

    public required init(from decoder: Decoder) throws {
        let container = try decoder.container(keyedBy: String.self)

        propModel = try container.decode(MyModel.self, forKey: "propModel")
    }

}
2017-09-19 01:04:50 +08:00
ehyche
8067612e06 Handle when response is a file URL. (#6469)
This is the equivalent change in the swift4 module which was made in the swift3 module in this PR:

https://github.com/swagger-api/swagger-codegen/pull/6274

This updates AlamofireImplementations.mustache to handle when the response is an URL. It also makes changes in the generated sample code for:

* default configuration (no promisekit or rxswift)
* promisekit
* rxswift

Also, in order to build, the generated code needed to be updated with the change in CodableHelper which changes dataDecodingStrategy to ".base64" from its previous definition in earlier Xcode 9 betas.
*
2017-09-12 14:37:39 +08:00
wing328
591149bcb7 Better logic to handle tags with special characters (#6466)
* better logic to handle tag with special characters

* update test cases

* comment out swift test cases

* restore the swift tests
2017-09-12 11:41:14 +08:00
wing328
9e0911b376 [ObjC] fix NPE when getting swagger type (#6465)
* fix npe in swagger type (objc)

* remove trailing spaces
2017-09-11 17:39:12 +08:00
Lance Hannestad
a6d6432e6d [Python][Flask] Upgraded connxion to 1.1.15 (now supports multi collection format arrays) (#6463)
* [Python][Flask] Upgraded connxion to 1.1.15 (now supports multi collection format arrays)

* Was modified by ./bin/python-petstore.sh
2017-09-11 10:23:38 +08:00
wing328
afb75d64d0 fix NPE in get swagger type (#6462) 2017-09-10 02:16:08 +08:00
wing328
a2cb35b1e9 Merge branch 'master' of https://github.com/swagger-api/swagger-codegen 2017-09-09 17:18:16 +08:00
wing328
35cf42996a add note to deprecate swift generator 2017-09-09 17:16:04 +08:00
Jon Schoning
4fb612c2e8 [haskell-http-client] update documentation; refactoring; add 'strictFields' cli option (#6458)
* update readme; remove unused DeriveAnyClass extension

* refactor request/param utility functions

* add strictFields cli option

* add CONTRIBUTING.md
2017-09-09 17:11:46 +08:00
Jon Schoning
4310ea326c [haskell-http-client] update readme; improve lens generation; fix dateFormat (#6448)
* point readme links to canonical locations

* use lenses for non-required model fields, instead of traversals

* fix .gitignore generation

* fix dateFormat cli option bug
2017-09-07 23:17:49 +08:00
ecolleu
3cd3b907f6 [ANDROID][volley] Handle UnsupportedEncodingException in invokeAPI (#6436)
* [ANDROID][volley] Handle UnsupportedEncodingException in invokeAPI (Issue #6432)
The constructor of StringEntity can throw UnsupportedEncodingException, which is not catch nor thrown by createRequest method.
Therefore the build of android client fails with:

ApiInvoker.java:448: error: unreported exception UnsupportedEncodingException; must be caught or declared to be thrown

This commit adds a try ... catch on UnsupportedEncodingException in invokeAPI methods and declare this exception to be thrown in createRequest

* [ANDROID][volley] Handle UnsupportedEncodingException in invokeAPI (Issue #6432)
The constructor of StringEntity can throw UnsupportedEncodingException, which is not catch nor thrown by createRequest method.
Therefore the build of android client fails with:

ApiInvoker.java:448: error: unreported exception UnsupportedEncodingException; must be caught or declared to be thrown

This commit adds a try ... catch on UnsupportedEncodingException in invokeAPI methods and declare this exception to be thrown in createRequest

* [ANDROID][Volley] Handle UnsupportedEncodingException (Issue #6432)
Throw more precise ApiException
2017-09-07 18:12:09 +08:00
Jean-François Côté
0cf82d7ae3 [All generators] Supports of hyphen-case to camelCase (#6399)
* Supports of hyphen-case to camelCase

* Add unit tests for the new section in the camelize function.
2017-09-07 13:14:22 +08:00
Dário Tavares Antunes
29a3a4b336 [Java] Handle Long in enum correctly (#6342)
Resolves #6338
2017-09-07 02:19:19 +08:00
jaz-ah
565844585e [Swift3/Swift4] update all cocoapods for swift3/swift4 (#6441)
* [Swift] update all cocoapods for swift3/swift4

* fix subspec specification
2017-09-07 00:56:48 +08:00
wing328
845f54da99 [Java] fix bug to only remove "CustomInstantDeserializer" for Play v2.5 (#6444)
* fix bug to only remove CustomInstantDeserializer for play25

* revise logic

* fix logic for CustomInstantDeserializer.java
2017-09-07 00:18:39 +08:00
manuc66
a41e8bed97 [csharp] Support inheritance instead of duplicating parent properties in derived classes (#5922)
* [csharp] Explicitly set supportsInheritance

* [csharp] set supportsInheritance for client

This includes supportsInheritance only for the client codegen at the
moment, because setting in AbstractCSharpCodegen would require the
change to be tested in all derived generators, possibly including
similar template changes to this commit's.

* include nice improvement of https://github.com/jimschubert/swagger-codegen/tree/csharp/3829 and leverage https://github.com/manuc66/JsonSubTypes for subtype deserialization

* remove duplicate base validations

* remove useless tests

* restore documentation for properties coming from parent

* launch bin/security/csharp-petstore.sh

* it's impossible to call an explicitly implemented interface-method on the base class
(https://stackoverflow.com/questions/5976216/how-to-call-an-explicitly-implemented-interface-method-on-the-base-class)

* restore portion of code that was lost

* regenerate more

* fix missing using

* take the multi .net compatible revision

* keep generated model simple when no hierarchy involved

* regenerate with:
- bin/csharp-petstore-all.sh && bin/security/csharp-petstore.sh
- bin/csharp-dotnet2-petstore.sh && bin/csharp-petstore.sh && bin/csharp-petstore-netcore-project.sh && bin/csharp-petstore-net-standard.sh && bin/csharp-property-changed-petstore.sh

* fix sln indentation and the missing windows runner for dotnet2

* fix inheritance GetHashCode and Equals

* override instead of hiding the base method
+ fix the csharp-property-changed-petstore.bat

* By default the value of the discriminator property must be the name of the current schema

* Add test for subtype deserialisation from parent type

* add missing '.bat' and use the 'call' template from javascript-petstore-all.bat

add missing file to trigger it on windows

* fix default value bug

* cleanup copyright information

* formatting after merge

* fix merge

* applying bin/csharp-petstore-all.sh

* applying bin/security/csharp-petstore.sh
2017-09-06 17:22:20 +08:00
wing328
b8183fbd09 remove spaces in templates 2017-09-06 16:54:36 +08:00
lukoyanov
f623aa1f5b [Java] Play! retrofit2 client content-type handling fixes (#6440)
* proper content-type handling (npe fixed when content-type is absent, improved content-length calculation)

* samples updated

* fixed missing imports, samples updated
2017-09-06 15:43:19 +08:00
Jon Schoning
c7d145a4ba add haskell-http-client-generator (#6429) 2017-09-06 00:33:48 +08:00
Alex
4eab5406c5 Added ModelInterface for PHP Models (#6331)
All Model classes include a set of methods - it makes sense to align them to a concrete interface to improve strict typing when referencing these models.
2017-09-05 22:22:18 +08:00
Takuro Wada
84bb749cc3 [typescript-angular] add customized encoder to use '+' char in query parameter #6306 (#6334) 2017-09-05 22:04:23 +08:00
wing328
a4c0975aa4 [R] Add new R client generator (#6351)
* add r client codegen

* update r api, model templates

* various fix

* rename Json to JSON

* more enhancements

* fix json handling

* add file upload support, var name to handle hyphen

* use httr::upload_file
2017-09-04 00:21:32 +08:00
wing328
c1f5de91bb add comment, update ruby, php samples 2017-09-03 23:20:55 +08:00
Daniel Ochoa Rodríguez
cfa2074802 Fix Uuid parse (#6382)
* Fix Uuid parse

* Add isString = true when property is Uuid

This will not break previous code

* Update conversionBegin.mustache

* Update conversionEnd.mustache
2017-09-03 23:10:25 +08:00
Giacomo
a1c1a82725 - Added javax.validation.Valid annotation to modules/swagger-codegen/… (#6398)
* - Added javax.validation.Valid annotation to modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/bodyParams.mustache
- Added bean validation and api description to modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/headerParams.mustache
- Added api description to modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/queryParams.mustache
- Added interfaceOnly parameter management to modules/swagger-codegen/src/main/java/io/swagger/codegen/languages/JavaJAXRSSpecServerCodegen.java to generate only interfaces and models.
- Added interfaceOnly parameter management to modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/api.mustache
- Added throws java.lang.Exception to modules/swagger-codegen/src/main/resources/JavaJaxRS/spec/api.mustache

* Run ./bin/jaxrs-spec-petstore-server.sh

* jaxrs-spec: javax.validation.Valid model attributes for array items

* Run ./bin/jaxrs-spec-petstore-server.sh
2017-09-03 22:45:35 +08:00
Florent Chamfroy
5007a1b1ba Problem with enumOuterClass (#6428)
rewrite enumOuterClass based on modelEnum in Java swagger-codegen
templates.

https://github.com/swagger-api/swagger-codegen/blob/master/modules/swagger-codegen/src/main/resources/Java/modelEnum.mustache
2017-09-03 22:36:10 +08:00
jaz-ah
19694ae4e3 [Swift3] Make sure decode doesn't fail on optional arguments (#6423)
* two fixes: 1) extra ?'s at end of some url's 2) enums not being called out w/ rawValue to get the proper string name

* update samples

* one step closer

* closer implementation

* break on optional decode failing since it's an optional we don't want to fail the whole decode

* update samples
2017-09-03 22:30:42 +08:00
jaz-ah
b19fa25521 [Swift3] Missing decoders for Array elements (#6422)
* two fixes: 1) extra ?'s at end of some url's 2) enums not being called out w/ rawValue to get the proper string name

* update samples

* one step closer

* closer implementation

* add back in array decoders

* regenerate samples
2017-09-03 22:30:21 +08:00
wing328
1f2730c587 Revert "Revert "[Java][Retrofit2] Return ResponseBody if response is "file"" (#6421)" (#6426)
This reverts commit a6561e7d21a26abbcbb2d51ba3270ec3c7798731.
2017-09-02 21:33:55 +08:00
Rene Cacheaux
da8f1e58bd [Swift4] Updates syntax in Codable helper template. (#6417) 2017-09-02 18:33:38 +08:00
wing328
1097375d7f fix file upload in retrofit2 (without play) (#6425) 2017-09-02 17:35:46 +08:00
wing328
a6561e7d21 Revert "[Java][Retrofit2] Return ResponseBody if response is "file"" (#6421)
* Revert "Make the Rust codegen compile. (#6411)"

This reverts commit 60766c62103a997b0846355b8ff6d6f88b835694.

* Revert "[Kotlin] Fix model enum generation (#6383)"

This reverts commit adf5d643d567162c8540a57b46b29a78cc91bff0.

* Revert "Global namespaces for ruby basic types (#6418)"

This reverts commit 070894dc95f4e6da524cf98e7a60260fc46abb8c.

* Revert "add ehyche to swift tech comm"

This reverts commit 5c62ba182e25e4003e662bf172346b0655aba72d.

* Revert "[python-client] Thread pool fix (#6396)"

This reverts commit a28ce0b604b56206d414eb5c01b46fbac304aa05.

* Revert "update retrofit2 petstore samples"

This reverts commit 0f1a61d9c27ee570b0098d2f7c84b0b4a0a8df89.

* Revert "Retrofit2: Return ResponseBody if response if file. (#6407)"

This reverts commit 481c040373be1bbdae587b121b24b44a2520a6ce.
2017-09-02 01:26:42 +08:00
Ahmed Charles
60766c6210 Make the Rust codegen compile. (#6411)
* Use the right package name for the Rust crate.

* Change getters on models to return Option for non-required fields.

* Cleanup Rust generation and get example compiling again.

* Use underscore names for functions.
2017-09-02 00:06:55 +08:00