mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-12-05 05:46:15 +00:00
Compare commits
257 Commits
addproperi
...
v7.1.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e2a62ace74 | ||
|
|
c9f7af752f | ||
|
|
ec3c484ce9 | ||
|
|
7e529926a6 | ||
|
|
2f655f1a9c | ||
|
|
5693eee4e0 | ||
|
|
f83e4ffb9b | ||
|
|
c377fdf62d | ||
|
|
372894dd1d | ||
|
|
6917aad760 | ||
|
|
2b9ee8c5f6 | ||
|
|
40b1d37368 | ||
|
|
09060c6c22 | ||
|
|
279a92c2ed | ||
|
|
c48cddd640 | ||
|
|
92daacd6a2 | ||
|
|
f35b132068 | ||
|
|
ced31f49b3 | ||
|
|
166ebc50b0 | ||
|
|
291ce353ce | ||
|
|
e9507077fc | ||
|
|
ced9660123 | ||
|
|
d945499073 | ||
|
|
74163f0ac8 | ||
|
|
ba8546189a | ||
|
|
c301004b7e | ||
|
|
a31b38b223 | ||
|
|
849cf88ba7 | ||
|
|
8e98671ba6 | ||
|
|
65ccf0492c | ||
|
|
0673897746 | ||
|
|
74363a3eb8 | ||
|
|
49208144e1 | ||
|
|
339596aeec | ||
|
|
588e2598f6 | ||
|
|
a853adb4b0 | ||
|
|
de8599906e | ||
|
|
db9fd9a094 | ||
|
|
5d03c4ac82 | ||
|
|
482c759a10 | ||
|
|
5e8e301869 | ||
|
|
f83cb60f27 | ||
|
|
61629ae8ed | ||
|
|
c4b18f206d | ||
|
|
171cc67caa | ||
|
|
fe547dd0b5 | ||
|
|
1092593841 | ||
|
|
7b8a515dcb | ||
|
|
39347ec37b | ||
|
|
e4cfd626c8 | ||
|
|
fbbfa12096 | ||
|
|
832947c895 | ||
|
|
5c5ec36500 | ||
|
|
83822d269a | ||
|
|
6425fbe3ed | ||
|
|
4402635d49 | ||
|
|
4302d37f52 | ||
|
|
a4267ee630 | ||
|
|
8893c7136a | ||
|
|
8d76ab9511 | ||
|
|
c2a4163bdb | ||
|
|
739390a682 | ||
|
|
bfe6157d07 | ||
|
|
6cd73eba2b | ||
|
|
08d518319e | ||
|
|
8827da8012 | ||
|
|
3422ef1e64 | ||
|
|
c1c6237eec | ||
|
|
5a5ee163dc | ||
|
|
677b6e64c1 | ||
|
|
244a3b4c13 | ||
|
|
05b796aadc | ||
|
|
58f058f3e9 | ||
|
|
d671b83a5f | ||
|
|
fbd02554f5 | ||
|
|
eb5b781e20 | ||
|
|
eae2051d37 | ||
|
|
b13a1a05ef | ||
|
|
091cff60c3 | ||
|
|
0aff1a6504 | ||
|
|
cb85358aa5 | ||
|
|
cdbb73aa55 | ||
|
|
ae590c4712 | ||
|
|
f16744a2bb | ||
|
|
bf9fae641e | ||
|
|
5f71bb9afa | ||
|
|
7347daec61 | ||
|
|
77687a8ea5 | ||
|
|
d6421411c9 | ||
|
|
8feef52d6b | ||
|
|
e0738a6e42 | ||
|
|
1dd9590064 | ||
|
|
d1fa38e286 | ||
|
|
2f214ee6c6 | ||
|
|
8bb473316e | ||
|
|
b6db4f73f1 | ||
|
|
438bf25a47 | ||
|
|
769990d654 | ||
|
|
694f5a05a1 | ||
|
|
c5d6884c63 | ||
|
|
8db9af9873 | ||
|
|
1fc0cec75f | ||
|
|
b4f9d8103f | ||
|
|
3bc4f67333 | ||
|
|
571aefa3da | ||
|
|
ba367e60e8 | ||
|
|
75ce5968bf | ||
|
|
1dfdeaff59 | ||
|
|
34265e52b1 | ||
|
|
2cfce7cd2d | ||
|
|
e3958cba75 | ||
|
|
fe55938363 | ||
|
|
015f000f70 | ||
|
|
384ff941ae | ||
|
|
2b6b3b0883 | ||
|
|
bbf9ccd0c0 | ||
|
|
f180aa0eec | ||
|
|
7af459396c | ||
|
|
1bbbb73690 | ||
|
|
f03cbea971 | ||
|
|
9e07f85eb5 | ||
|
|
7bb75f4bb4 | ||
|
|
87f9d53c3a | ||
|
|
494ee489ad | ||
|
|
594308f821 | ||
|
|
4a17c22905 | ||
|
|
3e9dba01ee | ||
|
|
23c5db602f | ||
|
|
e3db882ed4 | ||
|
|
48f454cf72 | ||
|
|
5fb6fcf9ef | ||
|
|
f5680019b2 | ||
|
|
893154d766 | ||
|
|
050e463872 | ||
|
|
effbe8caad | ||
|
|
6722f1300d | ||
|
|
c306ca3cf2 | ||
|
|
822568b664 | ||
|
|
4a0ab21ba4 | ||
|
|
a1d00e4785 | ||
|
|
7087b332f0 | ||
|
|
f5f9a7e091 | ||
|
|
11771a8ccf | ||
|
|
4075a52dce | ||
|
|
baf33f0537 | ||
|
|
9fd4cc1e63 | ||
|
|
97ee910a2c | ||
|
|
cec5b8965a | ||
|
|
bd1caf69cb | ||
|
|
ee5d9f6ad3 | ||
|
|
2eca00f87d | ||
|
|
039c1698b0 | ||
|
|
03781d3a93 | ||
|
|
56bc383dc1 | ||
|
|
ce4b2fe7bd | ||
|
|
3fcf5584c6 | ||
|
|
c6e9a4e1ae | ||
|
|
e2f249ba35 | ||
|
|
67b129fda9 | ||
|
|
3c4561ece2 | ||
|
|
04fa53b692 | ||
|
|
af352df10f | ||
|
|
bb3096c99c | ||
|
|
beb67aa74d | ||
|
|
4f8d61c05c | ||
|
|
fdd179e60a | ||
|
|
fce2dcbb37 | ||
|
|
6c1a937663 | ||
|
|
1cff462d90 | ||
|
|
077744a7af | ||
|
|
3b95f701e5 | ||
|
|
d58e68f8c0 | ||
|
|
d165b8879f | ||
|
|
7d60a46bc7 | ||
|
|
e892d50075 | ||
|
|
2ca99bdf8e | ||
|
|
f99002a974 | ||
|
|
19d8dbc7d5 | ||
|
|
7d154c988c | ||
|
|
a68eba649f | ||
|
|
55c580579e | ||
|
|
0f2a27d3c5 | ||
|
|
1a4b574a48 | ||
|
|
e5a29b6328 | ||
|
|
29033bf62a | ||
|
|
1bcf79236f | ||
|
|
8f8fd85fd6 | ||
|
|
254b359a56 | ||
|
|
9b39887eba | ||
|
|
16c6cff28f | ||
|
|
25b67dd6bf | ||
|
|
f530496f21 | ||
|
|
a2f6b8eae5 | ||
|
|
69bc994ba7 | ||
|
|
df994b77f2 | ||
|
|
bab67e44e4 | ||
|
|
5e8e2d7f6d | ||
|
|
5b720ded0c | ||
|
|
875c3ecd3c | ||
|
|
352182a7b9 | ||
|
|
8c8be7482b | ||
|
|
7d86adccc4 | ||
|
|
5f0d7053e4 | ||
|
|
70bffffc5a | ||
|
|
4b87606665 | ||
|
|
d671fe24ee | ||
|
|
e75e5a2c57 | ||
|
|
ec59334904 | ||
|
|
82e3590eed | ||
|
|
353507ef23 | ||
|
|
9170e1030f | ||
|
|
4260c7aaf0 | ||
|
|
781ccae722 | ||
|
|
5b4d97016a | ||
|
|
9c4f6c46f7 | ||
|
|
a5f79a7bdc | ||
|
|
70543126f2 | ||
|
|
d6695056fe | ||
|
|
196c2b1642 | ||
|
|
c6d355e8d4 | ||
|
|
ad589c7700 | ||
|
|
cd0fde41f1 | ||
|
|
8b15d4820e | ||
|
|
1901bf23ea | ||
|
|
78f3b19b58 | ||
|
|
5ee18156db | ||
|
|
14cfca7b06 | ||
|
|
c354bf86ff | ||
|
|
4e15e1a813 | ||
|
|
18df6ed85f | ||
|
|
128d9da8a1 | ||
|
|
75c2e934da | ||
|
|
c614b9d9b1 | ||
|
|
026fa514c3 | ||
|
|
6ea8ff3a17 | ||
|
|
005566c6e3 | ||
|
|
dee536f7f7 | ||
|
|
fbff32c5d7 | ||
|
|
d1808405ca | ||
|
|
3817e40f47 | ||
|
|
270238e060 | ||
|
|
75ac4a2f58 | ||
|
|
acb798b58b | ||
|
|
b1ec110aa3 | ||
|
|
b34a10aee7 | ||
|
|
0192baed42 | ||
|
|
ecb56f1e88 | ||
|
|
1b32088c2d | ||
|
|
4b7a808a9f | ||
|
|
065b48177b | ||
|
|
8608103c9f | ||
|
|
a9301a6c16 | ||
|
|
29f0d22713 | ||
|
|
f3eb07408d | ||
|
|
4418b59b47 | ||
|
|
616e8df8d0 | ||
|
|
74cd73bd6c |
@@ -57,54 +57,43 @@ commands: # a reusable command with parameters
|
||||
- run: docker ps -a
|
||||
- run: sleep 30
|
||||
- run: cat /etc/hosts
|
||||
# Test
|
||||
- run: ./mvnw --no-snapshot-updates --quiet clean install -Dorg.slf4j.simpleLogger.defaultLogLevel=error
|
||||
- run: export MAVEN_OPTS="-Xmx1024m -XX:MaxPermSize=128m"
|
||||
- run:
|
||||
name: "Setup custom environment variables"
|
||||
command: echo 'export CIRCLE_NODE_INDEX="<<parameters.nodeNo>>"' >> $BASH_ENV
|
||||
- run: ./CI/circle_parallel.sh
|
||||
# Save dependency cache
|
||||
- save_cache:
|
||||
key: source-v2-{{ .Branch }}-{{ .Revision }}
|
||||
paths:
|
||||
# This is a broad list of cache paths to include many possible development environments
|
||||
# You can probably delete some of these entries
|
||||
- vendor/bundle
|
||||
- ~/.nvm
|
||||
- ~/.pyenv
|
||||
- ~/virtualenvs
|
||||
- ~/.m2
|
||||
- ~/.ivy2
|
||||
- ~/.sbt
|
||||
- ~/.bundle
|
||||
- ~/.go_workspace
|
||||
- ~/.gradle
|
||||
- ~/.cache/bower
|
||||
- ".git"
|
||||
- ~/.stack
|
||||
- /home/circleci/OpenAPITools/openapi-generator/samples/client/petstore/haskell-http-client/.stack-work
|
||||
- ~/R
|
||||
# save "default" cache using the key "source-v2-"
|
||||
- save_cache:
|
||||
key: source-v2-
|
||||
paths:
|
||||
# This is a broad list of cache paths to include many possible development environments
|
||||
# You can probably delete some of these entries
|
||||
- vendor/bundle
|
||||
- ~/.nvm
|
||||
- ~/.pyenv
|
||||
- ~/virtualenvs
|
||||
- ~/.m2
|
||||
- ~/.ivy2
|
||||
- ~/.sbt
|
||||
- ~/.bundle
|
||||
- ~/.go_workspace
|
||||
- ~/.gradle
|
||||
- ~/.cache/bower
|
||||
- ".git"
|
||||
- ~/.stack
|
||||
- /home/circleci/OpenAPITools/openapi-generator/samples/client/petstore/haskell-http-client/.stack-work
|
||||
- ~/R
|
||||
#- save_cache:
|
||||
# key: source-v2-{{ .Branch }}-{{ .Revision }}
|
||||
# paths:
|
||||
# # This is a broad list of cache paths to include many possible development environments
|
||||
# # You can probably delete some of these entries
|
||||
# - ~/.m2
|
||||
# - ~/.ivy2
|
||||
# - ~/.sbt
|
||||
# - ~/.bundle
|
||||
# - ~/.go_workspace
|
||||
# - ~/.gradle
|
||||
# - ".git"
|
||||
# - ~/.stack
|
||||
# - ~/R
|
||||
## save "default" cache using the key "source-v2-"
|
||||
#- save_cache:
|
||||
# key: source-v2-
|
||||
# paths:
|
||||
# # This is a broad list of cache paths to include many possible development environments
|
||||
# # You can probably delete some of these entries
|
||||
# - vendor/bundle
|
||||
# - ~/.m2
|
||||
# - ~/.ivy2
|
||||
# - ~/.sbt
|
||||
# - ~/.bundle
|
||||
# - ~/.go_workspace
|
||||
# - ~/.gradle
|
||||
# - ~/.cache/bower
|
||||
# - ".git"
|
||||
# - ~/.stack
|
||||
# - ~/R
|
||||
# Teardown
|
||||
# If you break your build into multiple jobs with workflows, you will probably want to do the parts of this that are relevant in each
|
||||
# Save test results
|
||||
|
||||
18
.github/.test/samples.json
vendored
18
.github/.test/samples.json
vendored
@@ -319,12 +319,6 @@
|
||||
"Client: Java"
|
||||
]
|
||||
},
|
||||
{
|
||||
"input": "java-petstore-jersey1.sh",
|
||||
"matches": [
|
||||
"Client: Java"
|
||||
]
|
||||
},
|
||||
{
|
||||
"input": "java-petstore-jersey2-java6.sh",
|
||||
"matches": [
|
||||
@@ -584,18 +578,6 @@
|
||||
"Server: Java"
|
||||
]
|
||||
},
|
||||
{
|
||||
"input": "jaxrs-jersey1-petstore-server.sh",
|
||||
"matches": [
|
||||
"Server: Java"
|
||||
]
|
||||
},
|
||||
{
|
||||
"input": "jaxrs-jersey1-usetags-petstore-server.sh",
|
||||
"matches": [
|
||||
"Server: Java"
|
||||
]
|
||||
},
|
||||
{
|
||||
"input": "jaxrs-petstore-server-datelib-j8.sh",
|
||||
"matches": [
|
||||
|
||||
12
.github/PULL_REQUEST_TEMPLATE.md
vendored
12
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -8,18 +8,14 @@
|
||||
- [ ] Run the following to [build the project](https://github.com/OpenAPITools/openapi-generator#14---build-projects) and update samples:
|
||||
```
|
||||
./mvnw clean package
|
||||
./bin/generate-samples.sh
|
||||
./bin/generate-samples.sh ./bin/configs/*.yaml
|
||||
./bin/utils/export_docs_generators.sh
|
||||
```
|
||||
(For Windows users, please run the script in [Git BASH](https://gitforwindows.org/))
|
||||
Commit all changed files.
|
||||
This is important, as CI jobs will verify _all_ generator outputs of your HEAD commit as it would merge with master.
|
||||
These must match the expectations made by your contribution.
|
||||
You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example `./bin/generate-samples.sh bin/configs/java*`.
|
||||
For Windows users, please run the script in [Git BASH](https://gitforwindows.org/).
|
||||
- [ ] In case you are adding a new generator, run the following additional script :
|
||||
```
|
||||
./bin/utils/ensure-up-to-date
|
||||
```
|
||||
Commit all changed files.
|
||||
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (7.0.1 - patch release), `7.1.x` (minor release - breaking changes with fallbacks), `8.0.x` (breaking changes without fallbacks)
|
||||
IMPORTANT: Do **NOT** purge/delete any folders/files (e.g. tests) when regenerating the samples as manually written tests may be removed.
|
||||
- [ ] File the PR against the [correct branch](https://github.com/OpenAPITools/openapi-generator/wiki/Git-Branches): `master` (upcoming 7.1.0 minor release - breaking changes with fallbacks), `8.0.x` (breaking changes without fallbacks)
|
||||
- [ ] If your PR is targeting a particular programming language, @mention the [technical committee](https://github.com/openapitools/openapi-generator/#62---openapi-generator-technical-committee) members, so they are more likely to review the pull request.
|
||||
|
||||
2
.github/workflows/docker.yaml
vendored
2
.github/workflows/docker.yaml
vendored
@@ -21,7 +21,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Test run-in-docker.sh
|
||||
shell: bash
|
||||
|
||||
2
.github/workflows/gradle-plugin-tests.yaml
vendored
2
.github/workflows/gradle-plugin-tests.yaml
vendored
@@ -13,7 +13,7 @@ jobs:
|
||||
name: Gradle plugin tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up JDK 11
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
|
||||
2
.github/workflows/gradle-test.yaml
vendored
2
.github/workflows/gradle-test.yaml
vendored
@@ -30,7 +30,7 @@ jobs:
|
||||
- samples/client/petstore/java/okhttp-gson-group-parameter
|
||||
- samples/client/petstore/java/webclient-swagger2
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
8
.github/workflows/linux.yaml
vendored
8
.github/workflows/linux.yaml
vendored
@@ -20,7 +20,7 @@ jobs:
|
||||
os: [ubuntu-latest]
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
|
||||
- name: Set up JDK ${{ matrix.java }}
|
||||
uses: actions/setup-java@v3
|
||||
@@ -45,7 +45,7 @@ jobs:
|
||||
${{ runner.os }}-gradle-
|
||||
|
||||
- name: Setup Maven
|
||||
uses: s4u/setup-maven-action@v1.9.0
|
||||
uses: s4u/setup-maven-action@v1.10.0
|
||||
with:
|
||||
java-version: ${{ matrix.java }}
|
||||
maven-version: 3.8.8
|
||||
@@ -85,9 +85,9 @@ jobs:
|
||||
os: [ubuntu-latest]
|
||||
steps:
|
||||
- name: Check out code
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@v4
|
||||
- name: Setup Maven
|
||||
uses: s4u/setup-maven-action@v1.9.0
|
||||
uses: s4u/setup-maven-action@v1.10.0
|
||||
with:
|
||||
java-version: 11
|
||||
maven-version: 3.8.8
|
||||
|
||||
2
.github/workflows/maven-plugin-tests.yaml
vendored
2
.github/workflows/maven-plugin-tests.yaml
vendored
@@ -13,7 +13,7 @@ jobs:
|
||||
name: Maven plugin tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up JDK 11
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
|
||||
2
.github/workflows/misc-test.yaml
vendored
2
.github/workflows/misc-test.yaml
vendored
@@ -15,7 +15,7 @@ jobs:
|
||||
name: Misc tests
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: ruby/setup-ruby@v1
|
||||
with:
|
||||
ruby-version: '2.6'
|
||||
|
||||
8
.github/workflows/openapi-generator.yaml
vendored
8
.github/workflows/openapi-generator.yaml
vendored
@@ -15,7 +15,7 @@ jobs:
|
||||
name: Build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up JDK 11
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
@@ -53,7 +53,7 @@ jobs:
|
||||
needs:
|
||||
- build
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up JDK 11
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
@@ -90,7 +90,7 @@ jobs:
|
||||
needs:
|
||||
- build
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up JDK 11
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
@@ -129,7 +129,7 @@ jobs:
|
||||
- build
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up JDK 11
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
|
||||
@@ -13,7 +13,7 @@ jobs:
|
||||
name: Build c libcurl client
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Prepare
|
||||
run: |
|
||||
sudo apt-get update
|
||||
|
||||
4
.github/workflows/samples-cpp-qt-client.yaml
vendored
4
.github/workflows/samples-cpp-qt-client.yaml
vendored
@@ -28,8 +28,8 @@ jobs:
|
||||
tools: 'tools_openssl_x64'
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: jurplel/install-qt-action@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: jurplel/install-qt-action@v4
|
||||
with:
|
||||
version: ${{ matrix.qt-version }}
|
||||
tools: ${{ matrix.tools }}
|
||||
|
||||
2
.github/workflows/samples-dart.yaml
vendored
2
.github/workflows/samples-dart.yaml
vendored
@@ -17,7 +17,7 @@ jobs:
|
||||
name: Tests Dart
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
@@ -18,7 +18,7 @@ jobs:
|
||||
# clients
|
||||
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-dotnet@v3.2.0
|
||||
with:
|
||||
dotnet-version: 3.1.*
|
||||
|
||||
2
.github/workflows/samples-dotnet.yaml
vendored
2
.github/workflows/samples-dotnet.yaml
vendored
@@ -42,7 +42,7 @@ jobs:
|
||||
- samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
|
||||
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-dotnet@v3.2.0
|
||||
with:
|
||||
dotnet-version: '7.0.x'
|
||||
|
||||
@@ -18,7 +18,7 @@ jobs:
|
||||
# clients
|
||||
- samples/client/echo_api/csharp-restsharp/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-dotnet@v3.2.0
|
||||
with:
|
||||
dotnet-version: '6.0.x'
|
||||
@@ -28,4 +28,6 @@ jobs:
|
||||
(cd http-echo-server && npm install && npm start &)
|
||||
- name: Build
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: dotnet build Org.OpenAPITools.sln
|
||||
run: |
|
||||
dotnet build Org.OpenAPITools.sln
|
||||
dotnet test Org.OpenAPITools.sln
|
||||
|
||||
@@ -72,7 +72,7 @@ jobs:
|
||||
# build C# API client (property, parameter name mappings)
|
||||
- samples/client/petstore/csharp-restsharp-name-parameter-mappings
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-dotnet@v3.2.0
|
||||
with:
|
||||
dotnet-version: '6.0.x'
|
||||
|
||||
@@ -29,7 +29,7 @@ jobs:
|
||||
- samples/server/petstore/aspnetcore-6.0-NewtonsoftFalse
|
||||
- samples/server/petstore/aspnetcore-6.0-nullableReferenceTypes
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-dotnet@v3.2.0
|
||||
with:
|
||||
dotnet-version: '6.0.x'
|
||||
|
||||
2
.github/workflows/samples-elm.yaml
vendored
2
.github/workflows/samples-elm.yaml
vendored
@@ -21,7 +21,7 @@ jobs:
|
||||
- samples/client/petstore/elm
|
||||
- samples/openapi3/client/elm
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: jorelali/setup-elm@v5
|
||||
with:
|
||||
elm-version: 0.19.1
|
||||
|
||||
2
.github/workflows/samples-erlang.yaml
vendored
2
.github/workflows/samples-erlang.yaml
vendored
@@ -26,7 +26,7 @@ jobs:
|
||||
- samples/client/petstore/erlang-client/
|
||||
- samples/client/petstore/erlang-proper/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: erlef/setup-beam@v1
|
||||
with:
|
||||
otp-version: '22.2'
|
||||
|
||||
32
.github/workflows/samples-go-client-echo-api.yaml
vendored
Normal file
32
.github/workflows/samples-go-client-echo-api.yaml
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
name: Go Client (Echo API)
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/client/echo_api/go/**
|
||||
- .github/workflows/samples-go-client-echo-api.yaml
|
||||
jobs:
|
||||
build:
|
||||
name: Test Go client
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
sample:
|
||||
# clients
|
||||
- samples/client/echo_api/go
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v4
|
||||
with:
|
||||
go-version: "stable"
|
||||
- name: Setup node.js
|
||||
uses: actions/setup-node@v4
|
||||
- name: Run echo server
|
||||
run: |
|
||||
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
|
||||
(cd http-echo-server && npm install && npm start &)
|
||||
- run: go version
|
||||
- name: Run test
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: go test -mod=mod -v
|
||||
2
.github/workflows/samples-go.yaml
vendored
2
.github/workflows/samples-go.yaml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
- samples/server/petstore/go-api-server/
|
||||
- samples/server/petstore/go-chi-server/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-go@v4
|
||||
with:
|
||||
go-version: "stable"
|
||||
|
||||
2
.github/workflows/samples-groovy.yaml
vendored
2
.github/workflows/samples-groovy.yaml
vendored
@@ -21,7 +21,7 @@ jobs:
|
||||
sample:
|
||||
- samples/client/petstore/groovy
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
2
.github/workflows/samples-haskell.yaml
vendored
2
.github/workflows/samples-haskell.yaml
vendored
@@ -24,7 +24,7 @@ jobs:
|
||||
- samples/server/petstore/haskell-servant/
|
||||
- samples/client/petstore/haskell-http-client/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: haskell/actions/setup@v2
|
||||
with:
|
||||
# ghc-version: '8.8.4' # Exact version of ghc to use
|
||||
|
||||
@@ -20,7 +20,7 @@ jobs:
|
||||
- samples/client/echo_api/java/native
|
||||
- samples/client/echo_api/java/feign-gson
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
@@ -34,7 +34,7 @@ jobs:
|
||||
~/.m2
|
||||
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
|
||||
- name: Setup node.js
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
- name: Run echo server
|
||||
run: |
|
||||
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
|
||||
|
||||
@@ -24,7 +24,7 @@ jobs:
|
||||
- samples/client/echo_api/java/feign-gson
|
||||
- samples/client/echo_api/java/okhttp-gson
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
@@ -38,7 +38,7 @@ jobs:
|
||||
~/.m2
|
||||
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
|
||||
- name: Setup node.js
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
- name: Run echo server
|
||||
run: |
|
||||
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
|
||||
|
||||
16
.github/workflows/samples-java-client-jdk11.yaml
vendored
16
.github/workflows/samples-java-client-jdk11.yaml
vendored
@@ -10,6 +10,9 @@ on:
|
||||
- samples/openapi3/client/petstore/java/jersey2-java8-swagger1/**
|
||||
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/**
|
||||
- samples/openapi3/client/petstore/java/native**
|
||||
- samples/client/others/java/okhttp-gson-oneOf/**
|
||||
- samples/client/others/java/resttemplate-useAbstractionForFiles/**
|
||||
- samples/client/others/java/webclient-useAbstractionForFiles/**
|
||||
pull_request:
|
||||
paths:
|
||||
- 'samples/client/petstore/java/**'
|
||||
@@ -19,6 +22,9 @@ on:
|
||||
- samples/openapi3/client/petstore/java/jersey2-java8-swagger1/**
|
||||
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/**
|
||||
- samples/openapi3/client/petstore/java/native**
|
||||
- samples/client/others/java/okhttp-gson-oneOf/**
|
||||
- samples/client/others/java/resttemplate-useAbstractionForFiles/**
|
||||
- samples/client/others/java/webclient-useAbstractionForFiles/**
|
||||
jobs:
|
||||
build:
|
||||
name: Build Java Client JDK11
|
||||
@@ -43,7 +49,6 @@ jobs:
|
||||
- samples/client/petstore/java/webclient-swagger2
|
||||
- samples/client/petstore/java/vertx
|
||||
- samples/client/petstore/java/jersey2-java8-localdatetime
|
||||
- samples/client/petstore/java/resteasy
|
||||
- samples/client/petstore/java/google-api-client
|
||||
- samples/client/petstore/java/rest-assured
|
||||
- samples/client/petstore/java/rest-assured-jackson
|
||||
@@ -53,7 +58,7 @@ jobs:
|
||||
- samples/client/petstore/java/microprofile-rest-client-3.0-jackson-with-xml
|
||||
- samples/client/petstore/java/apache-httpclient
|
||||
- samples/client/petstore/java/feign
|
||||
- samples/client/petstore/java/jersey1
|
||||
- samples/client/petstore/java/okhttp-gson-awsv4signature
|
||||
- samples/openapi3/client/petstore/java/jersey2-java8-special-characters
|
||||
- samples/openapi3/client/petstore/java/native
|
||||
- samples/client/petstore/java/okhttp-gson-swagger1/
|
||||
@@ -62,8 +67,11 @@ jobs:
|
||||
- samples/client/petstore/java/okhttp-gson-swagger2/
|
||||
- samples/client/petstore/java/resttemplate-swagger2/
|
||||
- samples/openapi3/client/petstore/java/jersey2-java8-swagger2/
|
||||
- samples/client/others/java/okhttp-gson-oneOf/
|
||||
- samples/client/others/java/resttemplate-useAbstractionForFiles/
|
||||
- samples/client/others/java/webclient-useAbstractionForFiles/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
@@ -78,4 +86,4 @@ jobs:
|
||||
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
|
||||
- name: Build
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: mvn clean package
|
||||
run: mvn clean package
|
||||
|
||||
@@ -21,7 +21,7 @@ jobs:
|
||||
- samples/client/petstore/java/resttemplate-jakarta
|
||||
- samples/client/petstore/java/webclient-jakarta
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
2
.github/workflows/samples-java-helidon.yaml
vendored
2
.github/workflows/samples-java-helidon.yaml
vendored
@@ -23,7 +23,7 @@ jobs:
|
||||
- samples/server/petstore/java-helidon-server/se
|
||||
version: [17]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
@@ -29,7 +29,7 @@ jobs:
|
||||
- samples/server/petstore/java-play-framework-no-swagger-ui
|
||||
- samples/server/petstore/java-play-framework-no-wrap-calls
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
@@ -8,6 +8,7 @@ on:
|
||||
- 'samples/server/petstore/java-vertx-web/**'
|
||||
- 'samples/server/petstore/java-inflector/**'
|
||||
- 'samples/server/petstore/java-pkmst/**'
|
||||
# test in circleci instead
|
||||
- 'samples/server/petstore/java-undertow/**'
|
||||
pull_request:
|
||||
paths:
|
||||
@@ -15,7 +16,7 @@ on:
|
||||
- 'samples/server/petstore/java-vertx-web/**'
|
||||
- 'samples/server/petstore/java-inflector/**'
|
||||
- 'samples/server/petstore/java-pkmst/**'
|
||||
- 'samples/server/petstore/java-undertow/**'
|
||||
#- 'samples/server/petstore/java-undertow/**'
|
||||
jobs:
|
||||
build:
|
||||
name: Build Java Server
|
||||
@@ -29,9 +30,9 @@ jobs:
|
||||
- samples/server/petstore/java-vertx-web/
|
||||
- samples/server/petstore/java-inflector/
|
||||
- samples/server/petstore/java-pkmst/
|
||||
- samples/server/petstore/java-undertow/
|
||||
#- samples/server/petstore/java-undertow/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
36
.github/workflows/samples-jaxrs-jdk11.yaml
vendored
Normal file
36
.github/workflows/samples-jaxrs-jdk11.yaml
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
name: Samples JAX-RS (JDK11)
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- samples/server/petstore/jaxrs/jersey3/**
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/server/petstore/jaxrs/jersey3/**
|
||||
jobs:
|
||||
build:
|
||||
name: Build JAX-RS
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
sample:
|
||||
# servers
|
||||
- samples/server/petstore/jaxrs/jersey3
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
java-version: 11
|
||||
- name: Cache maven dependencies
|
||||
uses: actions/cache@v3
|
||||
env:
|
||||
cache-name: maven-repository
|
||||
with:
|
||||
path: |
|
||||
~/.m2
|
||||
key: ${{ runner.os }}-${{ github.job }}-${{ env.cache-name }}-${{ hashFiles('**/pom.xml') }}
|
||||
- name: Build
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: mvn clean package
|
||||
4
.github/workflows/samples-jaxrs.yaml
vendored
4
.github/workflows/samples-jaxrs.yaml
vendored
@@ -26,8 +26,6 @@ jobs:
|
||||
- samples/server/petstore/jaxrs-spec
|
||||
- samples/server/petstore/jaxrs-spec-interface
|
||||
- samples/server/petstore/jaxrs-spec-interface-response
|
||||
- samples/server/petstore/jaxrs/jersey1
|
||||
- samples/server/petstore/jaxrs/jersey1-useTags
|
||||
- samples/server/petstore/jaxrs-datelib-j8
|
||||
- samples/server/petstore/jaxrs-resteasy/default
|
||||
- samples/server/petstore/jaxrs-resteasy/eap
|
||||
@@ -40,7 +38,7 @@ jobs:
|
||||
- samples/server/petstore/jaxrs-cxf-non-spring-app
|
||||
- samples/server/petstore/jaxrs-spec-microprofile-openapi-annotations
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
2
.github/workflows/samples-jdk17.yaml
vendored
2
.github/workflows/samples-jdk17.yaml
vendored
@@ -45,7 +45,7 @@ jobs:
|
||||
- samples/client/petstore/spring-http-interface-reactive
|
||||
- samples/client/petstore/spring-http-interface
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
2
.github/workflows/samples-julia.yaml
vendored
2
.github/workflows/samples-julia.yaml
vendored
@@ -15,7 +15,7 @@ jobs:
|
||||
name: Tests Julia
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: julia-actions/setup-julia@v1
|
||||
with:
|
||||
version: 1.8
|
||||
|
||||
2
.github/workflows/samples-kotlin-client.yaml
vendored
2
.github/workflows/samples-kotlin-client.yaml
vendored
@@ -65,7 +65,7 @@ jobs:
|
||||
- samples/client/petstore/kotlin-name-parameter-mappings
|
||||
- samples/client/others/kotlin-jvm-okhttp-parameter-tests
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
@@ -28,7 +28,7 @@ jobs:
|
||||
# comment out due to gradle build failure
|
||||
# - samples/server/petstore/kotlin-spring-default/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
2
.github/workflows/samples-kotlin-server.yaml
vendored
2
.github/workflows/samples-kotlin-server.yaml
vendored
@@ -43,7 +43,7 @@ jobs:
|
||||
# no build.gradle file
|
||||
#- samples/server/petstore/kotlin-vertx-modelMutable
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
2
.github/workflows/samples-php7.yaml
vendored
2
.github/workflows/samples-php7.yaml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
# servers
|
||||
- samples/server/petstore/php-laravel/lib/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Setup PHP with tools
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
|
||||
2
.github/workflows/samples-php8.yaml
vendored
2
.github/workflows/samples-php8.yaml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
# servers
|
||||
- samples/server/petstore/php-symfony/SymfonyBundle-php/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Setup PHP with tools
|
||||
uses: shivammathur/setup-php@v2
|
||||
with:
|
||||
|
||||
44
.github/workflows/samples-python-client-echo-api.yaml
vendored
Normal file
44
.github/workflows/samples-python-client-echo-api.yaml
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
name: Python Client (Echo API)
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/client/echo_api/python/**
|
||||
- .github/workflows/samples-python-client-echo-api.yaml
|
||||
jobs:
|
||||
build:
|
||||
name: Test Python client
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
sample:
|
||||
# clients
|
||||
- samples/client/echo_api/python
|
||||
- samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent-true
|
||||
python-version:
|
||||
- "3.7"
|
||||
- "3.8"
|
||||
- "3.9"
|
||||
- "3.10"
|
||||
- "3.11"
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
- name: Setup node.js
|
||||
uses: actions/setup-node@v4
|
||||
- name: Run echo server
|
||||
run: |
|
||||
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
|
||||
(cd http-echo-server && npm install && npm start &)
|
||||
- name: Install
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: |
|
||||
pip install -r requirements.txt
|
||||
pip install -r test-requirements.txt
|
||||
|
||||
- name: Test
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: python -m pytest
|
||||
@@ -1,38 +0,0 @@
|
||||
name: Python Client (Echo API)
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
- samples/client/echo_api/python/**
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/client/echo_api/python/**
|
||||
jobs:
|
||||
build:
|
||||
name: Test Python client
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
sample:
|
||||
# clients
|
||||
- samples/client/echo_api/python
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.7'
|
||||
- name: Setup node.js
|
||||
uses: actions/setup-node@v3
|
||||
- name: Run echo server
|
||||
run: |
|
||||
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
|
||||
(cd http-echo-server && npm install && npm start &)
|
||||
- name: Install
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: |
|
||||
pip install -r requirements.txt
|
||||
pip install -r test-requirements.txt
|
||||
- name: Test
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: python -m pytest
|
||||
59
.github/workflows/samples-python-petstore.yaml
vendored
Normal file
59
.github/workflows/samples-python-petstore.yaml
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
name: "Python Client: Petstore"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/openapi3/client/petstore/python-aiohttp/**
|
||||
- samples/openapi3/client/petstore/python/**
|
||||
- .github/workflows/samples-python-petstore.yaml
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Test Python client
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version:
|
||||
- "3.7"
|
||||
- "3.8"
|
||||
- "3.9"
|
||||
- "3.10"
|
||||
- "3.11"
|
||||
sample:
|
||||
- samples/openapi3/client/petstore/python-aiohttp
|
||||
- samples/openapi3/client/petstore/python
|
||||
services:
|
||||
petstore-api:
|
||||
image: swaggerapi/petstore
|
||||
ports:
|
||||
- 80:8080
|
||||
env:
|
||||
SWAGGER_HOST: http://petstore.swagger.io
|
||||
SWAGGER_BASE_PATH: /v2
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v4
|
||||
id: py
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
key: ${{ runner.os }}-python-${{ steps.py.outputs.python-version }}-
|
||||
path: |
|
||||
~/.cache/pypoetry/virtualenvs/
|
||||
~/.local/pipx/venvs/poetry/
|
||||
.mypy_cache/
|
||||
|
||||
- name: Install poetry
|
||||
run: pipx install --python '${{ steps.py.outputs.python-path }}' poetry
|
||||
|
||||
- name: Install
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: poetry install
|
||||
|
||||
- name: Test
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: poetry run pytest -v
|
||||
44
.github/workflows/samples-python-pydantic-v1-client-echo-api.yaml
vendored
Normal file
44
.github/workflows/samples-python-pydantic-v1-client-echo-api.yaml
vendored
Normal file
@@ -0,0 +1,44 @@
|
||||
name: Python Client pydantic v1 (Echo API)
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/client/echo_api/python-pydantic-v1/**
|
||||
- .github/workflows/samples-python-pydantic-v1-client-echo-api.yaml
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Test Python client
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
sample:
|
||||
# clients
|
||||
- samples/client/echo_api/python-pydantic-v1/
|
||||
python-version:
|
||||
- "3.7"
|
||||
- "3.8"
|
||||
- "3.9"
|
||||
- "3.10"
|
||||
- "3.11"
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
- name: Setup node.js
|
||||
uses: actions/setup-node@v4
|
||||
- name: Run echo server
|
||||
run: |
|
||||
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
|
||||
(cd http-echo-server && npm install && npm start &)
|
||||
- name: Install
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: |
|
||||
pip install -r requirements.txt
|
||||
pip install -r test-requirements.txt
|
||||
|
||||
- name: Test
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: python -m pytest
|
||||
59
.github/workflows/samples-python-pydantic-v1-petstore.yaml
vendored
Normal file
59
.github/workflows/samples-python-pydantic-v1-petstore.yaml
vendored
Normal file
@@ -0,0 +1,59 @@
|
||||
name: "Python Client pydantic v1: Petstore"
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/openapi3/client/petstore/python-pydantic-v1-aiohttp/**
|
||||
- samples/openapi3/client/petstore/python-pydantic-v1/**
|
||||
- .github/workflows/samples-python-pydantic-v1-petstore.yaml
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Test Python client
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
python-version:
|
||||
- "3.7"
|
||||
- "3.8"
|
||||
- "3.9"
|
||||
- "3.10"
|
||||
- "3.11"
|
||||
sample:
|
||||
- samples/openapi3/client/petstore/python-pydantic-v1-aiohttp
|
||||
- samples/openapi3/client/petstore/python-pydantic-v1
|
||||
services:
|
||||
petstore-api:
|
||||
image: swaggerapi/petstore
|
||||
ports:
|
||||
- 80:8080
|
||||
env:
|
||||
SWAGGER_HOST: http://petstore.swagger.io
|
||||
SWAGGER_BASE_PATH: /v2
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v4
|
||||
id: py
|
||||
with:
|
||||
python-version: ${{ matrix.python-version }}
|
||||
|
||||
- name: Cache
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
key: ${{ runner.os }}-python-${{ steps.py.outputs.python-version }}-
|
||||
path: |
|
||||
~/.cache/pypoetry/virtualenvs/
|
||||
~/.local/pipx/venvs/poetry/
|
||||
.mypy_cache/
|
||||
|
||||
- name: Install poetry
|
||||
run: pipx install --python '${{ steps.py.outputs.python-path }}' poetry
|
||||
|
||||
- name: Install
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: poetry install
|
||||
|
||||
- name: Test
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: poetry run pytest -v
|
||||
2
.github/workflows/samples-python-server.yaml
vendored
2
.github/workflows/samples-python-server.yaml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
# servers
|
||||
- samples/server/petstore/python-aiohttp/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-python@v4
|
||||
with:
|
||||
python-version: '3.7'
|
||||
|
||||
2
.github/workflows/samples-rust.yaml
vendored
2
.github/workflows/samples-rust.yaml
vendored
@@ -25,7 +25,7 @@ jobs:
|
||||
- samples/client/petstore/rust/
|
||||
- samples/server/petstore/rust-server/
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions-rs/toolchain@v1
|
||||
with:
|
||||
toolchain: stable
|
||||
|
||||
2
.github/workflows/samples-scala.yaml
vendored
2
.github/workflows/samples-scala.yaml
vendored
@@ -31,7 +31,7 @@ jobs:
|
||||
- samples/server/petstore/scalatra
|
||||
- samples/server/petstore/scala-finch # cannot be tested with jdk11
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
2
.github/workflows/samples-spring-jdk17.yaml
vendored
2
.github/workflows/samples-spring-jdk17.yaml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
# clients
|
||||
- samples/openapi3/client/petstore/spring-cloud-3-with-optional
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
10
.github/workflows/samples-spring.yaml
vendored
10
.github/workflows/samples-spring.yaml
vendored
@@ -3,10 +3,16 @@ name: Samples Java Spring
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
# clients
|
||||
- 'samples/client/petstore/spring*/**'
|
||||
# servers
|
||||
- 'samples/server/petstore/spring*/**'
|
||||
- 'samples/openapi3/server/petstore/spring*/**'
|
||||
pull_request:
|
||||
paths:
|
||||
# clients
|
||||
- 'samples/client/petstore/spring*/**'
|
||||
# servers
|
||||
- 'samples/server/petstore/spring*/**'
|
||||
- 'samples/openapi3/server/petstore/spring*/**'
|
||||
jobs:
|
||||
@@ -27,6 +33,7 @@ jobs:
|
||||
- samples/openapi3/client/petstore/spring-cloud-async
|
||||
- samples/openapi3/client/petstore/spring-cloud-spring-pageable
|
||||
- samples/client/petstore/spring-cloud-tags
|
||||
- samples/client/petstore/spring-cloud-deprecated
|
||||
# servers
|
||||
- samples/server/petstore/springboot
|
||||
- samples/openapi3/server/petstore/springboot
|
||||
@@ -48,8 +55,9 @@ jobs:
|
||||
- samples/server/petstore/springboot-spring-pageable-delegatePattern
|
||||
- samples/server/petstore/springboot-spring-pageable-without-j8
|
||||
- samples/server/petstore/springboot-spring-pageable
|
||||
- samples/server/petstore/springboot-spring-provide-args
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
with:
|
||||
distribution: 'temurin'
|
||||
|
||||
2
.github/workflows/samples-swift.yaml
vendored
2
.github/workflows/samples-swift.yaml
vendored
@@ -40,7 +40,7 @@ jobs:
|
||||
name: Build Swift samples
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- uses: swift-actions/setup-swift@v1
|
||||
if: ${{ matrix.os == 'ubuntu-latest' }}
|
||||
with:
|
||||
|
||||
42
.github/workflows/samples-typescript-axios-echo-api.yaml
vendored
Normal file
42
.github/workflows/samples-typescript-axios-echo-api.yaml
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
name: TypeScript Axios Client (Echo API)
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/client/echo_api/typescript-axios/**
|
||||
- .github/workflows/samples-typescript-axios-echo-api.yaml
|
||||
jobs:
|
||||
build:
|
||||
name: Test TypeScript Axios client
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
sample:
|
||||
# clients
|
||||
- samples/client/echo_api/typescript-axios/test
|
||||
node-version:
|
||||
- 16
|
||||
- 18
|
||||
- 20
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions/setup-node@v4
|
||||
with:
|
||||
node-version: ${{ matrix.node-version }}
|
||||
|
||||
- name: Run echo server
|
||||
run: |
|
||||
git clone https://github.com/wing328/http-echo-server -b openapi-generator-test-server
|
||||
(cd http-echo-server && npm install && npm start &)
|
||||
|
||||
- name: Install
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: |
|
||||
npm run preinstall
|
||||
npm i
|
||||
|
||||
- name: Test
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: npm test
|
||||
4
.github/workflows/samples-zapier.yaml
vendored
4
.github/workflows/samples-zapier.yaml
vendored
@@ -18,9 +18,9 @@ jobs:
|
||||
sample:
|
||||
- samples/client/petstore/zapier
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Setup node
|
||||
uses: actions/setup-node@v3
|
||||
uses: actions/setup-node@v4
|
||||
- name: Install dependencies
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: |
|
||||
|
||||
2
.github/workflows/sonar.yml
vendored
2
.github/workflows/sonar.yml
vendored
@@ -12,7 +12,7 @@ jobs:
|
||||
runs-on: ubuntu-latest
|
||||
if: ${{ github.repository_owner == 'OpenAPITools' }}
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up JDK 11
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
|
||||
4
.github/workflows/windows.yaml
vendored
4
.github/workflows/windows.yaml
vendored
@@ -18,7 +18,7 @@ jobs:
|
||||
matrix:
|
||||
java: [11, 17]
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
- name: Set up JDK ${{ matrix.java }}
|
||||
uses: actions/setup-java@v3
|
||||
with:
|
||||
@@ -39,7 +39,7 @@ jobs:
|
||||
${{ runner.os }}-build-${{ env.cache-name }}-
|
||||
${{ runner.os }}-build-
|
||||
- name: Setup Maven
|
||||
uses: s4u/setup-maven-action@v1.9.0
|
||||
uses: s4u/setup-maven-action@v1.10.0
|
||||
with:
|
||||
java-version: ${{ matrix.java }}
|
||||
maven-version: 3.8.8
|
||||
|
||||
4
.gitignore
vendored
4
.gitignore
vendored
@@ -89,7 +89,7 @@ samples/client/petstore/cpp-restsdk/cmake_install.cmake
|
||||
**/.gradle
|
||||
samples/client/petstore/java/hello.txt
|
||||
samples/client/petstore/java/okhttp-gson/hello.txt
|
||||
samples/client/petstore/java/jersey1/hello.txt
|
||||
samples/client/petstore/java/okhttp-gson-3.1/hello.txt
|
||||
samples/client/petstore/java/jersey2-java8/hello.txt
|
||||
samples/client/petstore/java/jersey2/hello.txt
|
||||
samples/client/petstore/android/default/hello.txt
|
||||
@@ -211,6 +211,7 @@ samples/server/petstore/kotlin-server/ktor/build
|
||||
samples/server/petstore/kotlin-springboot/build
|
||||
samples/client/petstore/kotlin*/src/main/kotlin/test/
|
||||
samples/client/petstore/kotlin*/build/
|
||||
samples/server/others/kotlin-server/jaxrs-spec/build/
|
||||
|
||||
# haskell
|
||||
.stack-work
|
||||
@@ -270,6 +271,7 @@ samples/client/petstore/c/*.so
|
||||
# Ruby
|
||||
samples/openapi3/client/petstore/ruby/Gemfile.lock
|
||||
samples/openapi3/client/petstore/ruby-faraday/Gemfile.lock
|
||||
samples/openapi3/client/petstore/ruby-httpx/Gemfile.lock
|
||||
|
||||
# Crystal
|
||||
samples/client/petstore/crystal/lib
|
||||
|
||||
@@ -1 +1 @@
|
||||
1.8
|
||||
11
|
||||
|
||||
@@ -10,10 +10,13 @@ set -e
|
||||
export NODE_ENV=test
|
||||
|
||||
if [ "$NODE_INDEX" = "1" ]; then
|
||||
echo "Running node $NODE_INDEX to test 'samples.circleci' defined in pom.xml ..."
|
||||
echo "Running node $NODE_INDEX ..."
|
||||
java -version
|
||||
|
||||
./mvnw --no-snapshot-updates --quiet verify -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
|
||||
(cd samples/client/petstore/ruby && mvn integration-test)
|
||||
(cd samples/client/petstore/ruby-faraday && mvn integration-test)
|
||||
(cd samples/client/petstore/ruby-httpx && mvn integration-test)
|
||||
(cd samples/client/petstore/ruby-autoload && mvn integration-test)
|
||||
|
||||
elif [ "$NODE_INDEX" = "2" ]; then
|
||||
echo "Running node $NODE_INDEX to test Go"
|
||||
@@ -33,20 +36,14 @@ elif [ "$NODE_INDEX" = "2" ]; then
|
||||
export PATH="/usr/local/go1.18/go/bin:$PATH"
|
||||
go version
|
||||
|
||||
# run integration tests
|
||||
./mvnw --no-snapshot-updates --quiet verify -Psamples.misc -Dorg.slf4j.simpleLogger.defaultLogLevel=error
|
||||
# run go integration tests
|
||||
(cd samples/client/petstore/go && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/go && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/go-petstore-generateMarshalJSON-false && mvn integration-test)
|
||||
|
||||
elif [ "$NODE_INDEX" = "3" ]; then
|
||||
|
||||
echo "Running node $NODE_INDEX to test 'samples.circleci.node3' defined in pom.xml ..."
|
||||
#wget https://www.python.org/ftp/python/3.8.9/Python-3.8.9.tgz
|
||||
#tar -xf Python-3.8.9.tgz
|
||||
#cd Python-3.8.9
|
||||
#./configure --enable-optimizations
|
||||
#sudo make altinstall
|
||||
pyenv install --list
|
||||
pyenv install 3.7.12
|
||||
#pyenv install 2.7.14 #python2 no longer supported
|
||||
pyenv global 3.7.12
|
||||
echo "Running node $NODE_INDEX ... "
|
||||
|
||||
# Install node@stable (for angular 6)
|
||||
set +e
|
||||
@@ -63,23 +60,71 @@ elif [ "$NODE_INDEX" = "3" ]; then
|
||||
echo 'export NVM_DIR="/opt/circleci/.nvm"' >> $BASH_ENV
|
||||
echo "[ -s \"$NVM_DIR/nvm.sh\" ] && . \"$NVM_DIR/nvm.sh\"" >> $BASH_ENV
|
||||
|
||||
./mvnw --no-snapshot-updates --quiet verify -Psamples.circleci.node3 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
|
||||
(cd samples/client/others/typescript-angular && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-angular-v12-provided-in-root && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-angular-v13-provided-in-root && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-angular-v14-provided-in-root && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-angular-v15-provided-in-root && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-angular-v16-provided-in-root && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/builds/default && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/tests/default && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/builds/jquery && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/tests/jquery && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/builds/object_params && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/tests/object_params && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/builds/inversify && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/tests/inversify && mvn integration-test)
|
||||
#(cd samples/openapi3/client/petstore/typescript/tests/deno && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/builds/browser && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/typescript/tests/browser && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-fetch/builds/default && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-fetch/builds/es6-target && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-fetch/builds/with-npm-version && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-fetch/tests/default && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-node/npm && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-rxjs/builds/with-npm-version && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-axios/builds/with-npm-version && mvn integration-test)
|
||||
(cd samples/client/petstore/typescript-axios/tests/default && mvn integration-test)
|
||||
(cd samples/client/petstore/javascript-flowtyped && mvn integration-test)
|
||||
(cd samples/client/petstore/javascript-es6 && mvn integration-test)
|
||||
(cd samples/client/petstore/javascript-promise-es6 && mvn integration-test)
|
||||
|
||||
elif [ "$NODE_INDEX" = "4" ]; then
|
||||
echo "Running node $NODE_INDEX to test 'samples.circleci.node4' defined in pom.xml ..."
|
||||
echo "Running node $NODE_INDEX ..."
|
||||
|
||||
#mvn --no-snapshot-updates --quiet verify -Psamples.circleci.node4 -Dorg.slf4j.simpleLogger.defaultLogLevel=error
|
||||
#(cd samples/openapi3/client/petstore/python && make test)
|
||||
# comment out due to ModuleNotFoundError: No module named 'urllib3.request'
|
||||
#(cd samples/openapi3/client/petstore/python-prior && make test)
|
||||
#(cd samples/openapi3/client/3_0_3_unit_test/python && make test)
|
||||
#wget https://www.python.org/ftp/python/3.8.9/Python-3.8.9.tgz
|
||||
#tar -xf Python-3.8.9.tgz
|
||||
#cd Python-3.8.9
|
||||
#./configure --enable-optimizations
|
||||
#sudo make altinstall
|
||||
pyenv install --list
|
||||
pyenv install 3.7.12
|
||||
#pyenv install 2.7.14 #python2 no longer supported
|
||||
pyenv global 3.7.12
|
||||
|
||||
(cd samples/openapi3/client/petstore/python && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/python-pydantic-v1 && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/python-aiohttp && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/python-pydantic-v1-aiohttp && mvn integration-test)
|
||||
|
||||
else
|
||||
echo "Running node $NODE_INDEX to test 'samples.circleci.others' defined in pom.xml ..."
|
||||
echo "Running node $NODE_INDEX ..."
|
||||
java -version
|
||||
|
||||
./mvnw --no-snapshot-updates --quiet verify -Psamples.circleci.others -Dorg.slf4j.simpleLogger.defaultLogLevel=error
|
||||
./mvnw --no-snapshot-updates --quiet javadoc:javadoc -Psamples.circleci -Dorg.slf4j.simpleLogger.defaultLogLevel=error
|
||||
(cd samples/client/petstore/scala-akka && mvn integration-test)
|
||||
(cd samples/client/petstore/scala-sttp && mvn integration-test)
|
||||
(cd samples/client/petstore/scala-sttp4 && mvn integration-test)
|
||||
(cd samples/client/petstore/clojure && mvn integration-test)
|
||||
(cd samples/client/petstore/java/jersey2-java8 && mvn integration-test)
|
||||
(cd samples/openapi3/client/petstore/java/jersey2-java8 && mvn integration-test)
|
||||
(cd samples/client/petstore/java/jersey3 && mvn integration-test)
|
||||
(cd samples/client/others/java/okhttp-gson-streaming && mvn integration-test)
|
||||
(cd samples/client/petstore/java/okhttp-gson && mvn integration-test)
|
||||
(cd samples/client/petstore/java/okhttp-gson-3.1 && mvn integration-test)
|
||||
(cd samples/client/petstore/java/resteasy && mvn integration-test)
|
||||
(cd samples/client/petstore/java-micronaut-client && mvn integration-test)
|
||||
(cd samples/client/petstore/java/apache-httpclient && mvn integration-test)
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
44
README.md
44
README.md
@@ -9,13 +9,13 @@
|
||||
[](https://join.slack.com/t/openapi-generator/shared_invite/zt-12jxxd7p2-XUeQM~4pzsU9x~eGLQqX2g)
|
||||
[](https://twitter.com/oas_generator)
|
||||
[](https://gitpod.io/#https://github.com/OpenAPITools/openapi-generator)
|
||||
[](https://conan.io/center/openapi-generator)
|
||||
[](https://ge.openapi-generator.tech/scans)
|
||||
[](https://conan.io/center/recipes/openapi-generator)
|
||||
[](https://ge.openapi-generator.tech/scans)
|
||||
</div>
|
||||
|
||||
<div align="center">
|
||||
|
||||
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.0.1`):
|
||||
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.1.0`):
|
||||
[](https://app.travis-ci.com/github/OpenAPITools/openapi-generator/builds)
|
||||
[](https://circleci.com/gh/OpenAPITools/openapi-generator)
|
||||
[](https://ci.appveyor.com/project/WilliamCheng/openapi-generator)
|
||||
@@ -60,24 +60,29 @@ If you find OpenAPI Generator useful for work, please consider asking your compa
|
||||
[<img src="https://openapi-generator.tech/img/companies/finbourne.png" width="128" height="128">](https://www.finbourne.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
[<img src="https://openapi-generator.tech/img/companies/bumpsh.png" width="128" height="128">](https://bump.sh/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
[<img src="https://openapi-generator.tech/img/companies/bileto.png" width="128" height="128">](https://www.bileto.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
[<img src="https://openapi-generator.tech/img/companies/bairesdev.png" width="128" height="128">](https://www.bairesdev.com/sponsoring-open-source-projects/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
[<img src="https://openapi-generator.tech/img/companies/dmtech.jpeg" width="128" height="128">](https://www.dm-jobs.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
[<img src="https://openapi-generator.tech/img/companies/adyen.png" width="128" height="128">](https://adyen.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
[<img src="https://openapi-generator.tech/img/companies/fornex.png" width="128" height="128">](https://fornex.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
|
||||
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS and Checkly for sponsoring the API monitoring
|
||||
#### Thank you GoDaddy for sponsoring the domain names, Linode for sponsoring the VPS, Checkly for sponsoring the API monitoring and Gradle for sponsoring Develocity
|
||||
|
||||
[<img src="https://openapi-generator.tech/img/companies/godaddy.png" width="150">](https://www.godaddy.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
[](https://www.linode.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
[<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn%3AANd9GcRAhEYadUyZYzGUotZiSdXkVMqqLGuohyixLl4eUpUV6pAbUULL" width="150">](https://checklyhq.com/?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
|
||||
[<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/c/cb/Gradle_logo.png/320px-Gradle_logo.png" width="150">](https://gradle.org?utm_source=openapi_generator&utm_medium=github_webpage&utm_campaign=sponsor)
|
||||
|
||||
## Overview
|
||||
|
||||
OpenAPI Generator allows generation of API client libraries (SDK generation), server stubs, documentation and configuration automatically given an [OpenAPI Spec](https://github.com/OAI/OpenAPI-Specification) (both 2.0 and 3.0 are supported). Currently, the following languages/frameworks are supported:
|
||||
|
||||
| | Languages/Frameworks |
|
||||
| -------------------------------- |-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.1, .NET Core 3.1, .NET 5.0. Libraries: RestSharp, GenericHost, HttpClient), **C++** (Arduino, cpp-restsdk, Qt5, Tizen, Unreal Engine 4), **Clojure**, **Crystal**, **Dart**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Apache HttpClient 4.x, Apache HttpClient 5.x, Jersey1.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, MicroProfile Rest Client, Helidon), **Jetbrains HTTP Client**, **Julia**, **k6**, **Kotlin**, **Lua**, **N4JS**, **Nim**, **Node.js/JavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types, Apollo GraphQL DataStore), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (hyper, reqwest, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (9.x - 16.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs), **XoJo**, **Zapier** |
|
||||
| **API clients** | **ActionScript**, **Ada**, **Apex**, **Bash**, **C**, **C#** (.net 2.0, 3.5 or later, .NET Standard 1.3 - 2.1, .NET Core 3.1, .NET 5.0. Libraries: RestSharp, GenericHost, HttpClient), **C++** (Arduino, cpp-restsdk, Qt5, Tizen, Unreal Engine 4), **Clojure**, **Crystal**, **Dart**, **Elixir**, **Elm**, **Eiffel**, **Erlang**, **Go**, **Groovy**, **Haskell** (http-client, Servant), **Java** (Apache HttpClient 4.x, Apache HttpClient 5.x, Jersey2.x, OkHttp, Retrofit1.x, Retrofit2.x, Feign, RestTemplate, RESTEasy, Vertx, Google API Client Library for Java, Rest-assured, Spring 5 Web Client, MicroProfile Rest Client, Helidon), **Jetbrains HTTP Client**, **Julia**, **k6**, **Kotlin**, **Lua**, **N4JS**, **Nim**, **Node.js/JavaScript** (ES5, ES6, AngularJS with Google Closure Compiler annotations, Flow types, Apollo GraphQL DataStore), **Objective-C**, **OCaml**, **Perl**, **PHP**, **PowerShell**, **Python**, **R**, **Ruby**, **Rust** (hyper, reqwest, rust-server), **Scala** (akka, http4s, scalaz, sttp, swagger-async-httpclient), **Swift** (2.x, 3.x, 4.x, 5.x), **Typescript** (AngularJS, Angular (9.x - 16.x), Aurelia, Axios, Fetch, Inversify, jQuery, Nestjs, Node, redux-query, Rxjs), **XoJo**, **Zapier** |
|
||||
| **Server stubs** | **Ada**, **C#** (ASP.NET Core, Azure Functions), **C++** (Pistache, Restbed, Qt5 QHTTPEngine), **Erlang**, **F#** (Giraffe), **Go** (net/http, Gin, Echo), **Haskell** (Servant, Yesod), **Java** (MSF4J, Spring, Undertow, JAX-RS: CDI, CXF, Inflector, Jersey, RestEasy, Play Framework, [PKMST](https://github.com/ProKarma-Inc/pkmst-getting-started-examples), [Vert.x](https://vertx.io/), [Apache Camel](https://camel.apache.org/), [Helidon](https://helidon.io/)), **Julia**, **Kotlin** (Spring Boot, [Ktor](https://github.com/ktorio/ktor), [Vert.x](https://vertx.io/)), **PHP** (Laravel, Lumen, [Mezzio (fka Zend Expressive)](https://github.com/mezzio/mezzio), Slim, Silex, [Symfony](https://symfony.com/)), **Python** (FastAPI, Flask), **NodeJS**, **Ruby** (Sinatra, Rails5), **Rust** ([rust-server](https://openapi-generator.tech/docs/generators/rust-server/)), **Scala** (Akka, [Finch](https://github.com/finagle/finch), [Lagom](https://github.com/lagom/lagom), [Play](https://www.playframework.com/), Scalatra) |
|
||||
| **API documentation generators** | **HTML**, **Confluence Wiki**, **Asciidoc**, **Markdown**, **PlantUML** |
|
||||
| **Configuration files** | [**Apache2**](https://httpd.apache.org/) |
|
||||
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Protocol Buffer**, **WSDL** |
|
||||
| **Others** | **GraphQL**, **JMeter**, **Ktorm**, **MySQL Schema**, **Postman Collection**, **Protocol Buffer**, **WSDL** |
|
||||
|
||||
## Table of contents
|
||||
|
||||
@@ -115,13 +120,13 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
|
||||
|
||||
| OpenAPI Generator Version | Release Date | Notes |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
|
||||
| 7.0.1 (upcoming patch release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.0.1-SNAPSHOT/) | 08.09.2023 | Patch release (enhancements, bug fixes, etc) |
|
||||
| [7.0.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.0.0) (latest stable release) | 25.08.2023 | Major release with breaking changes (no fallback) |
|
||||
| 7.1.0 (upcoming patch release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.1.0-SNAPSHOT/) | 18.10.2023 | Minor release with breaking changes (with fallback) |
|
||||
| [7.0.1](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.0.1) (latest stable release) | 18.09.2023 | Patch release (enhancements, bug fixes, etc) |
|
||||
| [6.6.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v6.6.0) | 11.05.2023 | Minor release with breaking changes (with fallback) |
|
||||
| [5.4.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v5.4.0) | 31.01.2022 | Minor release with breaking changes (with fallback) |
|
||||
| [4.3.1](https://github.com/OpenAPITools/openapi-generator/releases/tag/v4.3.1) | 06.05.2020 | Patch release (enhancements, bug fixes, etc) |
|
||||
|
||||
OpenAPI Spec compatibility: 1.0, 1.1, 1.2, 2.0, 3.0
|
||||
OpenAPI Spec compatibility: 1.0, 1.1, 1.2, 2.0, 3.0, 3.1 (beta support)
|
||||
|
||||
(We do not publish daily/nightly build. Please use SNAPSHOT instead)
|
||||
|
||||
@@ -179,16 +184,16 @@ See the different versions of the [openapi-generator-cli](https://search.maven.o
|
||||
<!-- RELEASE_VERSION -->
|
||||
If you're looking for the latest stable version, you can grab it directly from Maven.org (Java 11 runtime at a minimum):
|
||||
|
||||
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.0.jar`
|
||||
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.1/openapi-generator-cli-7.0.1.jar`
|
||||
|
||||
For **Mac/Linux** users:
|
||||
```sh
|
||||
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.0.jar -O openapi-generator-cli.jar
|
||||
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.1/openapi-generator-cli-7.0.1.jar -O openapi-generator-cli.jar
|
||||
```
|
||||
|
||||
For **Windows** users, you will need to install [wget](http://gnuwin32.sourceforge.net/packages/wget.htm) or you can use Invoke-WebRequest in PowerShell (3.0+), e.g.
|
||||
```
|
||||
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.0.jar
|
||||
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.1/openapi-generator-cli-7.0.1.jar
|
||||
```
|
||||
|
||||
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
|
||||
@@ -423,7 +428,7 @@ openapi-generator-cli version
|
||||
To use a specific version of "openapi-generator-cli"
|
||||
|
||||
```sh
|
||||
openapi-generator-cli version-manager set 7.0.0
|
||||
openapi-generator-cli version-manager set 7.0.1
|
||||
```
|
||||
|
||||
Or install it as dev-dependency:
|
||||
@@ -447,7 +452,7 @@ java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generat
|
||||
(if you're on Windows, replace the last command with `java -jar modules\openapi-generator-cli\target\openapi-generator-cli.jar generate -i https://raw.githubusercontent.com/openapitools/openapi-generator/master/modules/openapi-generator/src/test/resources/3_0/petstore.yaml -g php -o c:\temp\php_api_client`)
|
||||
|
||||
<!-- RELEASE_VERSION -->
|
||||
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.0/openapi-generator-cli-7.0.0.jar)
|
||||
You can also download the JAR (latest release) directly from [maven.org](https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.0.1/openapi-generator-cli-7.0.1.jar)
|
||||
<!-- /RELEASE_VERSION -->
|
||||
|
||||
To get a list of **general** options available, please run `java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar help generate`
|
||||
@@ -689,6 +694,7 @@ Here are some companies/projects (alphabetical order) using OpenAPI Generator in
|
||||
- [RedHat](https://www.redhat.com)
|
||||
- [RepreZen API Studio](https://www.reprezen.com/swagger-openapi-code-generation-api-first-microservices-enterprise-development)
|
||||
- [REST United](https://restunited.com)
|
||||
- [Robocorp](https://www.robocorp.com)
|
||||
- [Robotinfra](https://www.robotinfra.com)
|
||||
- [SmartHR](https://smarthr.co.jp/)
|
||||
- [Sony Interactive Entertainment](https://www.sie.com/en/index.html)
|
||||
@@ -928,12 +934,9 @@ OpenAPI Generator core team members are contributors who have been making signif
|
||||
* [@cbornet](https://github.com/cbornet) (2016/05)
|
||||
* [@jmini](https://github.com/jmini) (2018/04) [:heart:](https://www.patreon.com/jmini)
|
||||
* [@etherealjoy](https://github.com/etherealjoy) (2019/06)
|
||||
* [@spacether](https://github.com/spacether) (2020/05) [:heart:][spacether sponsorship]
|
||||
|
||||
:heart: = Link to support the contributor directly
|
||||
|
||||
[spacether sponsorship]: https://github.com/sponsors/spacether/
|
||||
|
||||
#### Template Creator
|
||||
|
||||
**NOTE**: Embedded templates are only supported in _Mustache_ format. Support for all other formats is experimental and subject to change at any time.
|
||||
@@ -1004,8 +1007,10 @@ Here is a list of template creators:
|
||||
* PowerShell (refactored in 5.0.0): @wing328
|
||||
* Python: @spacether [:heart:][spacether sponsorship]
|
||||
* Python-Experimental: @spacether [:heart:][spacether sponsorship]
|
||||
* Python (refactored in 7.0.0): @wing328
|
||||
* R: @ramnov
|
||||
* Ruby (Faraday): @meganemura @dkliban
|
||||
* Ruby (HTTPX): @honeyryderchuck
|
||||
* Rust: @farcaller
|
||||
* Rust (rust-server): @metaswitch
|
||||
* Scala (scalaz & http4s): @tbrown1979
|
||||
@@ -1168,7 +1173,7 @@ If you want to join the committee, please kindly apply by sending an email to te
|
||||
| Perl | @wing328 (2017/07) [:heart:](https://www.patreon.com/wing328) @yue9944882 (2019/06) |
|
||||
| PHP | @jebentier (2017/07), @dkarlovi (2017/07), @mandrean (2017/08), @jfastnacht (2017/09), [@ybelenko](https://github.com/ybelenko) (2018/07), @renepardon (2018/12) |
|
||||
| PowerShell | @wing328 (2020/05) |
|
||||
| Python | @spacether (2019/11) [:heart:][spacether sponsorship] @krjakbrjak (2023/02) |
|
||||
| Python | @cbornet (2017/09) @tomplus (2018/10) @krjakbrjak (2023/02) @fa0311 (2023/10) @multani (2023/10) |
|
||||
| R | @Ramanth (2019/07) @saigiridhar21 (2019/07) |
|
||||
| Ruby | @cliffano (2017/07) @zlx (2017/09) @autopp (2019/02) |
|
||||
| Rust | @frol (2017/07) @farcaller (2017/08) @richardwhiuk (2019/07) @paladinzh (2020/05) @jacob-pro (2022/10) |
|
||||
@@ -1261,4 +1266,3 @@ See the License for the specific language governing permissions and
|
||||
limitations under the License.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ install:
|
||||
- cmd: docker run -d -e SWAGGER_HOST=http://petstore.swagger.io -e SWAGGER_BASE_PATH=/v2 -p 80:8080 swaggerapi/petstore
|
||||
- ps: Start-Sleep -s 120
|
||||
- ps: $PSVersionTable.PSVersion
|
||||
- ps: Install-Module -Name Pester -Force -Scope CurrentUser
|
||||
- ps: Install-Module -Name Pester -Force -Scope CurrentUser -SkipPublisherCheck
|
||||
build_script:
|
||||
- dotnet --info
|
||||
# build C# aspnetcore 5.0 server
|
||||
|
||||
@@ -0,0 +1,12 @@
|
||||
# for csharp generichost
|
||||
generatorName: csharp
|
||||
outputDir: samples/client/petstore/csharp/OpenAPIClient-generichost-net6.0-nrt-useSourceGeneration
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
|
||||
library: generichost
|
||||
templateDir: modules/openapi-generator/src/main/resources/csharp
|
||||
additionalProperties:
|
||||
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
|
||||
useCompareNetObjects: true
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
useSourceGeneration: true
|
||||
packageName: UseSourceGeneration
|
||||
6
bin/configs/go-echo-api.yaml
Normal file
6
bin/configs/go-echo-api.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
generatorName: go
|
||||
outputDir: samples/client/echo_api/go
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/go
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
9
bin/configs/go-petstore-generateMarshalJSON-false.yaml
Normal file
9
bin/configs/go-petstore-generateMarshalJSON-false.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
generatorName: go
|
||||
outputDir: samples/openapi3/client/petstore/go-petstore-generateMarshalJSON-false
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-addpet-only.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/go
|
||||
additionalProperties:
|
||||
enumClassPrefix: "true"
|
||||
packageName: petstore
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
generateMarshalJSON: false
|
||||
@@ -1,8 +0,0 @@
|
||||
generatorName: java
|
||||
outputDir: samples/client/petstore/java/jersey1
|
||||
library: jersey1
|
||||
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/Java
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
artifactId: petstore-java-client-jersey1
|
||||
16
bin/configs/java-okhttp-gson-3.1.yaml
Normal file
16
bin/configs/java-okhttp-gson-3.1.yaml
Normal file
@@ -0,0 +1,16 @@
|
||||
generatorName: java
|
||||
outputDir: samples/client/petstore/java/okhttp-gson-3.1
|
||||
library: okhttp-gson
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_1/java/petstore.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/Java
|
||||
nameMappings:
|
||||
_type: underscoreType
|
||||
type_: typeWithUnderscore
|
||||
parameterNameMappings:
|
||||
_type: underscoreType
|
||||
type_: typeWithUnderscore
|
||||
additionalProperties:
|
||||
artifactId: petstore-okhttp-gson-31
|
||||
hideGenerationTimestamp: "true"
|
||||
useOneOfDiscriminatorLookup: "true"
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
7
bin/configs/java-okhttp-gson-oneOf.yaml
Normal file
7
bin/configs/java-okhttp-gson-oneOf.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
generatorName: java
|
||||
outputDir: samples/client/others/java/okhttp-gson-oneOf
|
||||
library: okhttp-gson
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/oneOf_twoPrimitives.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/Java
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
@@ -14,3 +14,6 @@ additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
useOneOfDiscriminatorLookup: "true"
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
enumNameMappings:
|
||||
s: LOWER_CASE_S
|
||||
S: UPPER_CASE_S
|
||||
|
||||
@@ -0,0 +1,9 @@
|
||||
generatorName: java
|
||||
outputDir: samples/client/others/java/resttemplate-useAbstractionForFiles
|
||||
library: resttemplate
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/issue13146_file_abstraction_response.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/Java
|
||||
additionalProperties:
|
||||
artifactId: file-resttemplate
|
||||
hideGenerationTimestamp: "true"
|
||||
useAbstractionForFiles: true
|
||||
@@ -1,6 +0,0 @@
|
||||
generatorName: java-undertow-server
|
||||
outputDir: samples/server/petstore/java-undertow
|
||||
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/java-undertow-server
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
6
bin/configs/java-undertow-server.yaml
Normal file
6
bin/configs/java-undertow-server.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
generatorName: java-undertow-server
|
||||
outputDir: samples/server/petstore/java-undertow
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/java-undertow-server
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
9
bin/configs/java-webclient-useAbstractionForFiles.yaml
Normal file
9
bin/configs/java-webclient-useAbstractionForFiles.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
generatorName: java
|
||||
outputDir: samples/client/others/java/webclient-useAbstractionForFiles
|
||||
library: webclient
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/issue13146_file_abstraction_response.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/Java
|
||||
additionalProperties:
|
||||
artifactId: file-webclient
|
||||
hideGenerationTimestamp: "true"
|
||||
useAbstractionForFiles: true
|
||||
@@ -1,10 +0,0 @@
|
||||
generatorName: jaxrs-jersey
|
||||
outputDir: samples/server/petstore/jaxrs/jersey1-useTags
|
||||
library: jersey1
|
||||
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS
|
||||
additionalProperties:
|
||||
artifactId: jaxrs-jersey1-useTags
|
||||
hideGenerationTimestamp: "true"
|
||||
serverPort: "8082"
|
||||
useTags: "true"
|
||||
@@ -1,9 +0,0 @@
|
||||
generatorName: jaxrs-jersey
|
||||
outputDir: samples/server/petstore/jaxrs/jersey1
|
||||
library: jersey1
|
||||
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS
|
||||
additionalProperties:
|
||||
artifactId: jaxrs-jersey1-server
|
||||
hideGenerationTimestamp: "true"
|
||||
serverPort: "8082"
|
||||
9
bin/configs/jaxrs-jersey-jersey3.yaml
Normal file
9
bin/configs/jaxrs-jersey-jersey3.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
generatorName: jaxrs-jersey
|
||||
outputDir: samples/server/petstore/jaxrs/jersey3
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/JavaJaxRS
|
||||
library: jersey3
|
||||
additionalProperties:
|
||||
artifactId: jaxrs-jersey3-petstore-server
|
||||
hideGenerationTimestamp: "true"
|
||||
serverPort: "8082"
|
||||
@@ -4,3 +4,5 @@ inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/lua
|
||||
additionalProperties:
|
||||
packageName: petstore
|
||||
nameMappings:
|
||||
phone: mobile
|
||||
|
||||
@@ -4,3 +4,7 @@ inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-e
|
||||
templateDir: modules/openapi-generator/src/main/resources/perl
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
nameMappings:
|
||||
NullableMessage: system_message
|
||||
modelNameMappings:
|
||||
DeprecatedObject: DeprecatedModel
|
||||
|
||||
6
bin/configs/php-nextgen-echo-api.yaml
Normal file
6
bin/configs/php-nextgen-echo-api.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
generatorName: php-nextgen
|
||||
outputDir: samples/client/echo_api/php-nextgen
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/php-nextgen
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
@@ -1,4 +1,4 @@
|
||||
generatorName: php-nextgen
|
||||
outputDir: samples/client/petstore/php-nextgen/OpenAPIClient-php
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/php-nextgen/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/php-nextgen
|
||||
|
||||
7
bin/configs/powershell-echo-api.yaml
Normal file
7
bin/configs/powershell-echo-api.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
generatorName: powershell
|
||||
outputDir: samples/client/echo_api/powershell
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/powershell
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
packageGuid: a27b908d-2a20-467f-bc32-af6f3a654ac5
|
||||
@@ -14,3 +14,7 @@ additionalProperties:
|
||||
projectUri: https://github.com/OpenAPITools/openapi-generator
|
||||
releaseNotes: 'This is a sample project'
|
||||
tags: 'PetStore,powershell,sdk'
|
||||
nameMappings:
|
||||
name_mapping: SomethingElse
|
||||
modelNameMappings:
|
||||
model-mapping: NewModel
|
||||
|
||||
@@ -0,0 +1,7 @@
|
||||
generatorName: python
|
||||
outputDir: samples/client/echo_api/python-disallowAdditionalPropertiesIfNotPresent-true
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/python
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
disallowAdditionalPropertiesIfNotPresent: "true"
|
||||
@@ -1,4 +1,4 @@
|
||||
generatorName: python-flask
|
||||
outputDir: samples/server/petstore/python-flask
|
||||
inputSpec: modules/openapi-generator/src/test/resources/2_0/petstore.yaml
|
||||
inputSpec: modules/openapi-generator/src/test/resources/2_0/python-flask/petstore.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/python-flask
|
||||
|
||||
8
bin/configs/python-pydantic-v1-aiohttp.yaml
Normal file
8
bin/configs/python-pydantic-v1-aiohttp.yaml
Normal file
@@ -0,0 +1,8 @@
|
||||
generatorName: python-pydantic-v1
|
||||
outputDir: samples/openapi3/client/petstore/python-pydantic-v1-aiohttp
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/python/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/python-pydantic-v1
|
||||
library: asyncio
|
||||
additionalProperties:
|
||||
packageName: petstore_api
|
||||
mapNumberTo: float
|
||||
6
bin/configs/python-pydantic-v1-echo-api.yaml
Normal file
6
bin/configs/python-pydantic-v1-echo-api.yaml
Normal file
@@ -0,0 +1,6 @@
|
||||
generatorName: python-pydantic-v1
|
||||
outputDir: samples/client/echo_api/python-pydantic-v1
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/python-pydantic-v1
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
12
bin/configs/python-pydantic-v1.yaml
Normal file
12
bin/configs/python-pydantic-v1.yaml
Normal file
@@ -0,0 +1,12 @@
|
||||
generatorName: python-pydantic-v1
|
||||
outputDir: samples/openapi3/client/petstore/python-pydantic-v1
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/python/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/python-pydantic-v1
|
||||
additionalProperties:
|
||||
packageName: petstore_api
|
||||
useOneOfDiscriminatorLookup: "true"
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
mapNumberTo: StrictFloat
|
||||
nameMappings:
|
||||
_type: underscore_type
|
||||
type_: type_with_underscore
|
||||
7
bin/configs/ruby-httpx-echo-api.yaml
Normal file
7
bin/configs/ruby-httpx-echo-api.yaml
Normal file
@@ -0,0 +1,7 @@
|
||||
generatorName: ruby
|
||||
outputDir: samples/client/echo_api/ruby-httpx
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/ruby-client
|
||||
library: httpx
|
||||
additionalProperties:
|
||||
hideGenerationTimestamp: "true"
|
||||
10
bin/configs/ruby-httpx.yaml
Normal file
10
bin/configs/ruby-httpx.yaml
Normal file
@@ -0,0 +1,10 @@
|
||||
generatorName: ruby
|
||||
outputDir: samples/client/petstore/ruby-httpx
|
||||
library: httpx
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/ruby/petstore-with-fake-endpoints-models-for-testing.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/ruby-client
|
||||
additionalProperties:
|
||||
gemVersion: 1.0.0
|
||||
moduleName: Petstore
|
||||
gemName: petstore
|
||||
skipFormModel: "true"
|
||||
13
bin/configs/spring-cloud-deprecated-oas3.yaml
Normal file
13
bin/configs/spring-cloud-deprecated-oas3.yaml
Normal file
@@ -0,0 +1,13 @@
|
||||
generatorName: spring
|
||||
library: spring-cloud
|
||||
outputDir: samples/client/petstore/spring-cloud-deprecated
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/petstore-with-deprecated-fields.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
|
||||
additionalProperties:
|
||||
groupId: org.openapitools.openapi3
|
||||
documentationProvider: springdoc
|
||||
artifactId: spring-cloud-deprecated
|
||||
interfaceOnly: "true"
|
||||
singleContentTypes: "true"
|
||||
hideGenerationTimestamp: "true"
|
||||
useTags: "true"
|
||||
@@ -0,0 +1,8 @@
|
||||
generatorName: spring
|
||||
outputDir: samples/server/petstore/springboot-spring-provide-args
|
||||
library: spring-boot
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/spring/petstore-with-spring-provide-args.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/JavaSpring
|
||||
additionalProperties:
|
||||
artifactId: springboot-spring-provide-args
|
||||
hideGenerationTimestamp: 'true'
|
||||
9
bin/configs/typescript-axios-echo-api.yaml
Normal file
9
bin/configs/typescript-axios-echo-api.yaml
Normal file
@@ -0,0 +1,9 @@
|
||||
generatorName: typescript-axios
|
||||
outputDir: samples/client/echo_api/typescript-axios/build
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/typescript-axios
|
||||
additionalProperties:
|
||||
artifactId: echo-api-typescript-axios
|
||||
hideGenerationTimestamp: "true"
|
||||
npmVersion: 1.0.0
|
||||
npmName: '@openapitools/typescript-axios-echo-api'
|
||||
@@ -53,7 +53,7 @@ if [[ ${#files[@]} -eq 1 && "${files[0]}" != *'*'* ]]; then
|
||||
java ${JAVA_OPTS} -jar "$executable" generate -c ${files[0]} ${args[@]}
|
||||
else
|
||||
echo "Please press CTRL+C to stop or the script will continue in 5 seconds."
|
||||
sleep 5
|
||||
#sleep 5
|
||||
if [ ${#files[@]} -eq 0 ]; then
|
||||
files=("${root}"/bin/configs/*.yaml)
|
||||
fi
|
||||
|
||||
@@ -9,3 +9,9 @@
|
||||
# java okhttp gson test files
|
||||
- filename: "samples/client/petstore/java/okhttp-gson/src/test/java/org/openapitools/client/ClientTest.java"
|
||||
sha256: db505f7801fef62c13a08a8e9ca1fc4c5c947ab46b46f12943139d353feacf17
|
||||
- filename: "samples/client/petstore/java/okhttp-gson/src/test/java/org/openapitools/client/JSONTest.java"
|
||||
sha256: 6db714e9744c150c8982c3cb18e4f37a9c1ecd8f72f6d58943986e781ab4a344
|
||||
- filename: "samples/client/petstore/java/okhttp-gson/src/test/java/org/openapitools/client/api/PetApiTest.java"
|
||||
sha256: 0d64cdc11809a7b5b952ccdad2bd91bd0045b3894d6fabf3e368fa0be12b8217
|
||||
- filename: "samples/client/petstore/java/okhttp-gson/src/test/java/org/openapitools/client/model/PetTest.java"
|
||||
sha256: a1f8a70bf7b0c382a8def5bacf7b1fb189e687fabb40235aa799001e0597f545
|
||||
|
||||
@@ -78,7 +78,7 @@ Suppose you want to apply snake case naming to mysql schema outputs. Your config
|
||||
**CLI**
|
||||
|
||||
```
|
||||
openapi-generator -g mysql-schema -o out -i spec.yaml --additional-properties=identifierNamingConvention=snake_case
|
||||
openapi-generator -g mysql-schema -o out -i spec.yaml --additional-properties=identifierNamingConvention=snake_case,useSingleRequestParameter=true,withInterfaces=true
|
||||
```
|
||||
|
||||
It may seem like a typo but there are two `=` signs in the above example.
|
||||
|
||||
@@ -318,7 +318,6 @@ CONFIG OPTIONS
|
||||
...... (results omitted)
|
||||
library
|
||||
library template (sub-template) to use:
|
||||
jersey1 - HTTP client: Jersey client 1.18. JSON processing: Jackson 2.4.2
|
||||
jersey2 - HTTP client: Jersey client 2.6
|
||||
feign - HTTP client: Netflix Feign 8.1.1. JSON processing: Jackson 2.6.3
|
||||
okhttp-gson (default) - HTTP client: OkHttp 2.4.0. JSON processing: Gson 2.3.1
|
||||
@@ -422,7 +421,13 @@ java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generat
|
||||
```
|
||||
will rename the `Tag` schema to `Label` instead.
|
||||
|
||||
Not all generators support thess features yet. Please give it a try to confirm the behaviour and open an issue (ticket) to let us know which generators you would like to have this feature enabled and we'll prioritize accordingly. We also welcome PRs to add these features to generators. Related PRs for reference: #16209, #16234 (modelNameMappings), #16194, #16206 (nameMappings, parameterNameMappings).
|
||||
To map enum names, use `enumNameMappings` option, e.g.
|
||||
```sh
|
||||
java -jar modules/openapi-generator-cli/target/openapi-generator-cli.jar generate -g java -i modules/openapi-generator/src/test/resources/3_0/petstore.yaml -o /tmp/java/ --enum-name-mappings sold=UNAVAILABLE
|
||||
```
|
||||
will rename SOLD to UNAVAILABLE instead.
|
||||
|
||||
Not all generators support thess features yet. Please give it a try to confirm the behaviour and open an issue (ticket) to let us know which generators you would like to have this feature enabled and we'll prioritize accordingly. We also welcome PRs to add these features to generators. Related PRs for reference: #16209, #16234 (modelNameMappings), #16194, #16206 (nameMappings, parameterNameMappings), #17108 (enumNameMappings).
|
||||
|
||||
NOTE: some generators use `baseName` (original name obtained direclty from OpenAPI spec, e.g. `shipping-date`) mustache tag in the templates so the mapping feature won't work.
|
||||
|
||||
|
||||
@@ -53,6 +53,7 @@ The following generators are available:
|
||||
* [php-nextgen (beta)](generators/php-nextgen.md)
|
||||
* [powershell (beta)](generators/powershell.md)
|
||||
* [python](generators/python.md)
|
||||
* [python-pydantic-v1](generators/python-pydantic-v1.md)
|
||||
* [r](generators/r.md)
|
||||
* [ruby](generators/ruby.md)
|
||||
* [rust](generators/rust.md)
|
||||
|
||||
@@ -116,6 +116,9 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<ul class="column-ul">
|
||||
<li>Client</li>
|
||||
<li>Configuration</li>
|
||||
<li>Environment</li>
|
||||
<li>OperatingSystem</li>
|
||||
<li>TimeZone</li>
|
||||
<li>Version</li>
|
||||
<li>abstract</li>
|
||||
<li>as</li>
|
||||
|
||||
@@ -109,6 +109,9 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<ul class="column-ul">
|
||||
<li>Client</li>
|
||||
<li>Configuration</li>
|
||||
<li>Environment</li>
|
||||
<li>OperatingSystem</li>
|
||||
<li>TimeZone</li>
|
||||
<li>Version</li>
|
||||
<li>abstract</li>
|
||||
<li>as</li>
|
||||
|
||||
@@ -49,6 +49,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|useCollection|Deserialize array types to Collection<T> instead of List<T>.| |false|
|
||||
|useDateTimeOffset|Use DateTimeOffset to model date-time properties| |false|
|
||||
|useOneOfDiscriminatorLookup|Use the discriminator's mapping in oneOf to speed up the model lookup. IMPORTANT: Validation (e.g. one and only one match in oneOf's schemas) will be skipped.| |false|
|
||||
|useSourceGeneration|Use source generation where available (only `generichost` library supports this option).| |false|
|
||||
|validatable|Generates self-validatable models.| |true|
|
||||
|zeroBasedEnums|Enumerations with string values will start from 0 when true, 1 when false. If not set, enumerations with string values will start from 0 if the first value is 'unknown', case insensitive.| |null|
|
||||
|
||||
@@ -114,6 +115,9 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<ul class="column-ul">
|
||||
<li>Client</li>
|
||||
<li>Configuration</li>
|
||||
<li>Environment</li>
|
||||
<li>OperatingSystem</li>
|
||||
<li>TimeZone</li>
|
||||
<li>Version</li>
|
||||
<li>abstract</li>
|
||||
<li>as</li>
|
||||
|
||||
@@ -21,6 +21,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|disallowAdditionalPropertiesIfNotPresent|If false, the 'additionalProperties' implementation (set to true by default) is compliant with the OAS and JSON schema specifications. If true (default), keep the old (incorrect) behaviour that 'additionalProperties' is set to false by default.|<dl><dt>**false**</dt><dd>The 'additionalProperties' implementation is compliant with the OAS and JSON schema specifications.</dd><dt>**true**</dt><dd>Keep the old (incorrect) behaviour that 'additionalProperties' is set to false by default.</dd></dl>|true|
|
||||
|enumClassPrefix|Prefix enum with class name| |false|
|
||||
|generateInterfaces|Generate interfaces for api classes| |false|
|
||||
|generateMarshalJSON|Generate MarshalJSON method| |true|
|
||||
|hideGenerationTimestamp|Hides the generation timestamp when files are generated.| |true|
|
||||
|isGoSubmodule|whether the generated Go module is a submodule| |false|
|
||||
|packageName|Go package name (convention: lowercase).| |openapi|
|
||||
@@ -29,6 +30,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|structPrefix|whether to prefix struct with the class name. e.g. DeletePetOpts => PetApiDeletePetOpts| |false|
|
||||
|useOneOfDiscriminatorLookup|Use the discriminator's mapping in oneOf to speed up the model lookup. IMPORTANT: Validation (e.g. one and only one match in oneOf's schemas) will be skipped.| |false|
|
||||
|withAWSV4Signature|whether to include AWS v4 signature support| |false|
|
||||
|withGoMod|Generate go.mod and go.sum| |true|
|
||||
|withXml|whether to include support for application/xml content type and include XML annotations in the model (works with libraries that provide support for JSON and XML)| |false|
|
||||
|
||||
## IMPORT MAPPING
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user