Commit Graph

11019 Commits

Author SHA1 Message Date
Benjamin Gill
a3e5185e39 Ignore additional properties (#671)
* Ignore additionalProperties

rust-server doen't yet support them, and they cause quite a bit of havoc at the moment (ending up as the `HashMap` type).

* Use .equals() rather than `==`
2018-07-30 23:06:05 +08:00
William Cheng
1cbfca4887 Update instruction to disable validateSpec (#684) 2018-07-30 13:29:05 +02:00
Benjamin Gill
b0909ade6f [rust-server] add support for '|' in path segments (#667)
* Added encoding for vertical bar character in object IDs for client requests

* Updated sample
2018-07-30 18:38:52 +08:00
William Cheng
036fa6918c
fix operation id starting with number for python client (#682) 2018-07-30 15:42:06 +08:00
sunn
b587052de4 cpp-tizen extends AbstractCppCodegen (#676)
* cpp-tizen extends AbstractCppCodegen

* Update javadoc comment
2018-07-30 15:33:00 +08:00
Benjamin Gill
cb9a734ebb [rust-server] add support for multiple samples (#658)
* Add support for multiple rust-server samples

Though we only have the one as yet. This will make it easier to move rust-server back on to the main test spec, whilst preserving the ability to have rust-specific test specs.

* Rust samples need unique names

* Move samples to a dedicated directory

So that there is nothing else in the folder where they live so that the workspace definition in the root Cargo.toml can be simple.
2018-07-30 15:31:55 +08:00
William Cheng
01dbb8b693
fix base path when it's not defined in the spec (#678) 2018-07-30 15:09:56 +08:00
Rubén Martínez
68d80ab67d [Java][Client][RestTemplate] Fixed invalid URL-encoding of query parameters (#646)
Fix for the #644
2018-07-30 08:38:10 +02:00
Jérémie Bresson
14ab3d763e
Consider cases where complexType is null (#680) 2018-07-29 13:10:58 +02:00
Benjamin Gill
3c3ac0a071 Add extra modules to main dockerfile (#650)
So that the mvn build is successful
2018-07-28 16:10:49 +08:00
Rytis Karpuška
0b88889cdf [cpp] Sanitize identifier names (#631)
* [cpp] Sanitize identifier names

* Remove duplicated methods in cpp code generator subclasses.

* Fix unintended codegen differences in cpp tizen caused by it not extending AbstractCppCodegen class.
2018-07-28 15:23:35 +08:00
William Cheng
b33f1f945b
add stop wait to spring pom (#670) 2018-07-27 23:41:31 +08:00
Jérémie Bresson
c7953ac137 Split release_version_update script in 2 scripts (#657) 2018-07-27 18:32:13 +08:00
sunn
534b6b5978 [cpp qt5 server] Improve qt5 server naming (#655)
* Adapted according to reviews

* Add changed files

* Update beta tag to the naming
2018-07-27 01:49:26 +08:00
Benjamin Gill
b6fc29050d Implement stack for Swagger Context (#612) 2018-07-27 01:48:43 +08:00
William Cheng
7e494e52ab
Various improvements (#653)
* improve validation error message

* minor improvement to qt5 c++ server

* fix invalid spec (causing shippable failure)

* Revert "minor improvement to qt5 c++ server"

This reverts commit 56f356cc511479d7a039309afed6328a7865f4b7.
2018-07-26 23:10:15 +08:00
Benjamin Gill
7624a1ff85 Various enhancements to html2 docsgen (#643)
This commit includes the following changes:

- Fix docs not generating parameter descriptions, add rust sample.
- Add example to doc output.
- Add basic scope reporting.
- Stringify the JSON "Example" objects for response schemas.
- Prettify JSON examples in response schemas.
- Parse and present multiline response descriptions.
- Add API error details to docsgen.
- Add read only markers to read only properties.
- Fix up style document indentation.
- Add support for `x-shared-errors`, an extension to define common error types that can be shared across a microservice framework.
2018-07-26 21:57:57 +08:00
Benjamin Gill
1d72edddf6 Avoid HTML escaping of rust-server output (#645) 2018-07-26 21:46:59 +08:00
Akihito Nakano
c9b934147a [PHP] Escape media type (#615)
* Move escapeMediaType() to AbstractPhpCodegen

* Escape media type

* Update samples

- bin/php-lumen-petstore-server.sh

* Refactoring: remove unused 'import'
2018-07-26 21:26:01 +08:00
sunn
65bad61abb [Qt5 Server] Add Support for Qt5 server using QHttpEngine (#322)
* Initial wiring to get the QHttpEngine Server running for Qt5 server

* Add wiring for build environment

* Add current generated files

* Update README.md

* Solved Build for Docker and Host
Wired up main
TODO : Route API call to handlers

* Wire up routes

* Wiring up routes update

* Convert Path to QHttpEngine format

* Rename some files

* Extract query Parameters and path parameters

* Removed pri file, Qt can read CMakeLists.txt

* Initial support of deserialization

* Adding initial support for response serialization

* Setup simple signal handler to quite the server with Ctrl+C in a container and on the host

* Remove unneeded function

* Add executable permission to script and move from Debian to Alpine for Dockerfile

* Add stringValue of missing types

* Unify toJson'xxx' APIs the same way like setValue

* Rework to remove all pointer usages, pass by const references, simplify model, add emit signals to default handlers
2018-07-26 18:30:13 +08:00
Jim Schubert
77df3d6770 Validate spec on generation by default (#251)
* Validate spec on generation by default

Adds a validation parameter to CodegenConfigurator, and passes through
options from CLI, Maven Plugin and Gradle Plugin to that property.

Default is to validate the spec during generation. If spec has errors,
we will output errors as well as warnings to the user.

Option can be disabled by passing false to validateSpec (Maven/Gradle)
or --validate-spec (CLI).

* Prepare version 3.1.1-SNAPSHOT

* fix version

* Use last prod version for the sample

* Update README.md

Fix

* [cli] Option parser does not support true/false for boolean options
2018-07-26 17:36:08 +08:00
Jérémie Bresson
a8e8acead7
[java] add useNullForUnknownEnumValue option (#633) 2018-07-26 11:00:45 +02:00
Rytis Karpuška
44d419c1a1 Fix inconsistent parameter names when ensuring uniqueness. (#640) 2018-07-25 21:46:56 +02:00
Jérémie Bresson
60c81eae0a
Prepare version 3.2.0 (#651) 2018-07-25 20:27:16 +02:00
Jeremie Bresson
00246f3ea0 Merge remote-tracking branch 'origin/master' into 3.2.x
* Solve Conflicts
* Activate "ensure_up_to_date" script
* Remove references to the "3.2.x" branch

# Conflicts:
#	CI/pom.xml.bash
#	CI/pom.xml.circleci
#	CI/pom.xml.circleci.java7
#	CI/pom.xml.ios
#	modules/openapi-generator-cli/pom.xml
#	modules/openapi-generator-gradle-plugin/gradle.properties
#	modules/openapi-generator-gradle-plugin/pom.xml
#	modules/openapi-generator-maven-plugin/pom.xml
#	modules/openapi-generator-online/Dockerfile
#	modules/openapi-generator-online/pom.xml
#	modules/openapi-generator/pom.xml
#	pom.xml
2018-07-25 18:19:37 +02:00
William Cheng
6f19fa7e91 Release 3.1.2 (#647) 2018-07-25 18:09:52 +02:00
Jeremie Bresson
70cdd27e75 Merge remote-tracking branch 'origin/master' into 3.2.x 2018-07-25 16:51:19 +02:00
Jim Schubert
c6004a8f89 Adds a simple bash completion script (#277)
* Adds a simple bash completion script

This works with any loading script named openapi-generator-cli.
That is, if you've installed via homebrew or created a script similar
to https://gist.github.com/jimschubert/ce241b0c78140e364f46914ef8ec4103

This script is relatively simple, relying on fallback to the recently
add "completion" command to the CLI project.

The script includes a possible extension to allow for per-language
options to autocomplete when the user is applying additional properties.
This work is currently commented out, as it may be simplified a bit in
the CLI first.

* Add launcher script and "install" instructions
2018-07-25 19:12:41 +08:00
Jérémie Bresson
85f0909c7f
Fix parameter in PathItem (#639) 2018-07-25 12:27:05 +02:00
Marvin
37be47fc56 [Java] Escaping properties for java (#628) 2018-07-24 12:41:18 +02:00
William Cheng
86d7009f4c
replace tab with spaces, fix empty spaces in new lines (#632) 2018-07-24 17:30:54 +08:00
Daniel Miller
530065137d [cpp-restsdk] Generate mockable APIs (#595)
* Port GMock feature from NativeInstruments

swagger-codegen fork:
https://github.com/NativeInstruments/swagger-codegen/pull/9

* Update petstore for Mockable APIs

* Fix shared_ptr in templates for File params

* Add guards in templates for GMock APIs

* Regenerate samples without GMocks

* Add useful constructors for GMock APIs

* Add constructors to API header interface

* Update samples with explicit monadic constructors

* Add default implementations for destructors
2018-07-24 15:31:21 +08:00
Benjamin Gill
59d38d7dd2 Update the set of propose PR branches (#627) 2018-07-24 07:20:17 +02:00
Ted Epstein
59bd3b6dcb Add RepreZen API Studio to Companies/Projects (#620)
* Add RepreZen API Studio to Companies/Projects

Per discussion with @wing328

* Corrected alphabetical order

Corrected alphabetical order of implementations, in response to review comment from @wing238.
2018-07-24 12:13:28 +08:00
William Cheng
27a356dacf
default isAddExternalLibs to true (#626) 2018-07-24 12:08:29 +08:00
くろねこまいける
2e1add83e7 BugFix: Dart-lang template bugs (#567)
* BugFix: [Dart] Cannot get/set data from json when underscore("_") is included in spec.yaml's property name

Because the property name is always lowerCamelCase

* BugFix: When type is "Date", it is not correctly output
2018-07-23 23:48:20 +08:00
Euan Kemp
2e6bec7345 [Rust] Split out request logic, implement form parameters (#528)
* [Rust] Move request logic into standalone file

This reduces the number of variables which are used in the generated
operations, thus fixing #512.

This also fixed a TODO related to URI parsing errors.
Other than that, it is meant to be functionally identical.

* [Rust] Add support for non-file form params

Up until now, they just weren't there at all

* [Rust] Use more rustic terms in example
2018-07-23 23:10:53 +08:00
William Cheng
667e3130fe Merge remote-tracking branch 'origin/master' into 3.2.x 2018-07-23 23:04:28 +08:00
Benjamin Gill
a9961a062a [rust-server] Drop file support (#547)
* [rust-server] drop 'file' support

In swagger v2, we had 'binary', 'byte', and 'file'. OpenAPI v3 only has
the former two. This commit drops the old 'file' handling. This has the
side-effect of removing a half-complete implementation of form parameter handling.

This removes the ability to send files as streams, so will make life
harder for those wishing to send large files without running out of
memory.

* Remove all remaining uses of `hasFile`
2018-07-23 18:46:35 +08:00
John Wang
af3ca293e4 Add link to Go contribution quickstart article (#622) 2018-07-23 18:36:39 +08:00
Jérémie Bresson
d42ff75ceb
Handle variables in server declaration (#614) 2018-07-23 06:20:41 +02:00
William Cheng
4156bb9f01 remove cpp pistache petstore test from travis ci 2018-07-23 01:01:32 +08:00
William Cheng
5328f103da
Add C++ Pistache petstore server to Travis CI (#616)
* test cpp pistache petstore in travis

* make build_petstore executable

* add submodule update init

* use addExternalLibs option

* update samples

* update gcc version to 5

* fix addon, env

* restore cargo path

* trigger build failure, add cache

* undo build failure change
2018-07-22 16:41:20 +08:00
sunn
1dee3e227c [cpp-pistache] add the option to fetch dependencies (#495)
* Add the Possibility to fetch dependencies needed by the generated code

* Fix typo

* Make External Libraries default to false

* Add parameter string to the javadoc comment
2018-07-22 10:46:38 +08:00
Rubén Martínez
0da55081c9 [Java][Client][RestTemplate] Do not create new Object for empty body (#605)
#513 Fixed error that causes exception when trying to perform HTTP requests without a body and an empty Object is used as body instead. In these cases an exception is thrown indicating that it is not possible to find a message converter for java.lang.Object and application/json.
2018-07-20 17:49:12 +02:00
Akihito Nakano
af9d57e4b9 [PHP] Remove platform dependency from file path (#610) 2018-07-20 17:45:24 +02:00
Tomasz Prus
8867d2b34c Support for python 3.7 by renaming async to async_req (#519)
* feat: support for python 3.7

* fix: regenerate other sample clients
2018-07-20 22:14:18 +08:00
William Cheng
eeda132e73
add badge to maven store and twitter (#607) 2018-07-20 22:12:48 +08:00
sunn
97d6b71460 [cpp-pistache] Fix compilation of petstore for Pistache (#497)
* Fix compilation of petstore for Pistache
Add Map support

* Add support for ByteArray

* Add Support for ByteArray in cpprest

* Implement TODOs
2018-07-20 22:04:25 +08:00
William Cheng
1b2d12286f
CircleCI: run Java8, Java7 tests in parallel (#608)
* run circle jobs in parallel

* fix circleci file

* disable parallel run

* fix build type

* fix circleci config parse error

* move mvn install to circle.yml

* revise circleci tests

* trigger test failures

* remove failure trigger
2018-07-20 18:45:14 +08:00