mirror of
https://github.com/OpenAPITools/openapi-generator.git
synced 2025-12-03 17:00:43 +00:00
Compare commits
218 Commits
gradle-pub
...
csharp-net
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f702631649 | ||
|
|
178f4fbad8 | ||
|
|
bae20c1887 | ||
|
|
d9920a5b81 | ||
|
|
37451fa569 | ||
|
|
e47e7041f7 | ||
|
|
69fcfeff38 | ||
|
|
dd4143b75e | ||
|
|
a460b7ea87 | ||
|
|
61fde48501 | ||
|
|
6be4d2e082 | ||
|
|
2ca958642b | ||
|
|
2c25443260 | ||
|
|
d1b148a7d3 | ||
|
|
8860d967c0 | ||
|
|
322afeacd4 | ||
|
|
c8b3da7388 | ||
|
|
91ac75ff05 | ||
|
|
6da264b0f8 | ||
|
|
53289263d9 | ||
|
|
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 |
@@ -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": [
|
||||
|
||||
3
.github/PULL_REQUEST_TEMPLATE.md
vendored
3
.github/PULL_REQUEST_TEMPLATE.md
vendored
@@ -11,10 +11,11 @@
|
||||
./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/).
|
||||
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.
|
||||
|
||||
3
.github/workflows/docker.yaml
vendored
3
.github/workflows/docker.yaml
vendored
@@ -1,6 +1,7 @@
|
||||
name: Docker tests
|
||||
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
paths:
|
||||
- Dockerfile
|
||||
@@ -27,7 +28,7 @@ jobs:
|
||||
shell: bash
|
||||
run: |
|
||||
sed -i 's/ -it / /g' run-in-docker.sh
|
||||
./run-in-docker.sh mvn clean install
|
||||
./run-in-docker.sh mvn -B clean install
|
||||
|
||||
- name: Build Dockerfile
|
||||
shell: bash
|
||||
|
||||
4
.github/workflows/linux.yaml
vendored
4
.github/workflows/linux.yaml
vendored
@@ -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
|
||||
@@ -87,7 +87,7 @@ jobs:
|
||||
- name: Check out code
|
||||
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/samples-cpp-qt-client.yaml
vendored
2
.github/workflows/samples-cpp-qt-client.yaml
vendored
@@ -29,7 +29,7 @@ jobs:
|
||||
runs-on: ${{ matrix.os }}
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: jurplel/install-qt-action@v3
|
||||
- uses: jurplel/install-qt-action@v4
|
||||
with:
|
||||
version: ${{ matrix.qt-version }}
|
||||
tools: ${{ matrix.tools }}
|
||||
|
||||
4
.github/workflows/samples-dotnet.yaml
vendored
4
.github/workflows/samples-dotnet.yaml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Samples C# .Net 7
|
||||
name: Samples C# .Net 8
|
||||
|
||||
on:
|
||||
push:
|
||||
@@ -45,7 +45,7 @@ jobs:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-dotnet@v3.2.0
|
||||
with:
|
||||
dotnet-version: '7.0.x'
|
||||
dotnet-version: '8.0.x'
|
||||
- name: Build
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: dotnet build Org.OpenAPITools.sln
|
||||
|
||||
@@ -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
|
||||
|
||||
18
.github/workflows/samples-dotnet6-client.yaml
vendored
18
.github/workflows/samples-dotnet6-client.yaml
vendored
@@ -16,9 +16,9 @@ on:
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net47/**
|
||||
# build C# API client (.net framework 4.8)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net48/**
|
||||
# build C# API client (.net 5.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net5.0/**
|
||||
# build C# API client (.net 5.0 with ConditionalSerialization)
|
||||
# build C# API client (.net 7.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net7.0/**
|
||||
# build C# API client (.net 7.0 with ConditionalSerialization)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/**
|
||||
# build C# API client (property, parameter name mappings)
|
||||
- samples/client/petstore/csharp-restsharp-name-parameter-mappings/**
|
||||
@@ -37,9 +37,9 @@ on:
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net47/**
|
||||
# build C# API client (.net framework 4.8)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net48/**
|
||||
# build C# API client (.net 5.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net5.0/**
|
||||
# build C# API client (.net 5.0 with ConditionalSerialization)
|
||||
# build C# API client (.net 7.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net7.0/**
|
||||
# build C# API client (.net 7.0 with ConditionalSerialization)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/**
|
||||
# build C# API client (property, parameter name mappings)
|
||||
- samples/client/petstore/csharp-restsharp-name-parameter-mappings/**
|
||||
@@ -65,9 +65,9 @@ jobs:
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net47/
|
||||
# build C# API client (.net framework 4.8)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net48/
|
||||
# build C# API client (.net 5.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net5.0/
|
||||
# build C# API client (.net 5.0 with ConditionalSerialization)
|
||||
# build C# API client (.net 7.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net7.0/
|
||||
# build C# API client (.net 7.0 with ConditionalSerialization)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/
|
||||
# build C# API client (property, parameter name mappings)
|
||||
- samples/client/petstore/csharp-restsharp-name-parameter-mappings
|
||||
|
||||
81
.github/workflows/samples-dotnet7-client.yaml
vendored
Normal file
81
.github/workflows/samples-dotnet7-client.yaml
vendored
Normal file
@@ -0,0 +1,81 @@
|
||||
name: Samples C# .Net 7
|
||||
|
||||
on:
|
||||
push:
|
||||
paths:
|
||||
# build C# API client (multiple frameworks)
|
||||
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/**
|
||||
# build C# API client (httpclient)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-httpclient/**
|
||||
# build C# API client (generichost)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/**
|
||||
# build C# API client (netcore)
|
||||
- samples/client/petstore/csharp/OpenAPIClient/**
|
||||
- samples/client/petstore/csharp/OpenAPIClientCore/**
|
||||
# build C# API client (.net framework 4.7)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net47/**
|
||||
# build C# API client (.net framework 4.8)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net48/**
|
||||
# build C# API client (.net 7.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net7.0/**
|
||||
# build C# API client (.net 7.0 with ConditionalSerialization)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/**
|
||||
# build C# API client (property, parameter name mappings)
|
||||
- samples/client/petstore/csharp-restsharp-name-parameter-mappings/**
|
||||
pull_request:
|
||||
paths:
|
||||
# build C# API client (multiple frameworks)
|
||||
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/**
|
||||
# build C# API client (httpclient)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-httpclient/**
|
||||
# build C# API client (generichost)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/**
|
||||
# build C# API client (netcore)
|
||||
- samples/client/petstore/csharp/OpenAPIClient/**
|
||||
- samples/client/petstore/csharp/OpenAPIClientCore/**
|
||||
# build C# API client (.net framework 4.7)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net47/**
|
||||
# build C# API client (.net framework 4.8)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net48/**
|
||||
# build C# API client (.net 7.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net7.0/**
|
||||
# build C# API client (.net 7.0 with ConditionalSerialization)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/**
|
||||
# build C# API client (property, parameter name mappings)
|
||||
- samples/client/petstore/csharp-restsharp-name-parameter-mappings/**
|
||||
jobs:
|
||||
build:
|
||||
name: Build .Net clients
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
fail-fast: false
|
||||
matrix:
|
||||
sample:
|
||||
# clients
|
||||
# build C# API client (multiple frameworks)
|
||||
- samples/client/petstore/csharp/OpenAPIClientCoreAndNet47/
|
||||
# build C# API client (httpclient)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-httpclient/
|
||||
# build C# API client (generichost)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-generichost-netstandard2.0/
|
||||
# build C# API client (netcore)
|
||||
- samples/client/petstore/csharp/OpenAPIClient/
|
||||
- samples/client/petstore/csharp/OpenAPIClientCore/
|
||||
# build C# API client (.net framework 4.7)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net47/
|
||||
# build C# API client (.net framework 4.8)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net48/
|
||||
# build C# API client (.net 7.0)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-net7.0/
|
||||
# build C# API client (.net 7.0 with ConditionalSerialization)
|
||||
- samples/client/petstore/csharp/OpenAPIClient-ConditionalSerialization/
|
||||
# build C# API client (property, parameter name mappings)
|
||||
- samples/client/petstore/csharp-restsharp-name-parameter-mappings
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-dotnet@v3.2.0
|
||||
with:
|
||||
dotnet-version: '7.0.x'
|
||||
- name: Build
|
||||
working-directory: ${{ matrix.sample }}
|
||||
run: dotnet build Org.OpenAPITools.sln
|
||||
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
|
||||
@@ -19,6 +19,7 @@ jobs:
|
||||
- samples/client/echo_api/java/apache-httpclient
|
||||
- samples/client/echo_api/java/native
|
||||
- samples/client/echo_api/java/feign-gson
|
||||
- samples/client/echo_api/java/resttemplate
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
@@ -34,7 +35,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
|
||||
|
||||
@@ -6,11 +6,13 @@ on:
|
||||
- samples/client/echo_api/java/apache-httpclient/**
|
||||
- samples/client/echo_api/java/feign-gson/**
|
||||
- samples/client/echo_api/java/okhttp-gson/**
|
||||
- samples/client/echo_api/java/resttemplate/**
|
||||
pull_request:
|
||||
paths:
|
||||
- samples/client/echo_api/java/apache-httpclient/**
|
||||
- samples/client/echo_api/java/feign-gson/**
|
||||
- samples/client/echo_api/java/okhttp-gson/**
|
||||
- samples/client/echo_api/java/resttemplate/**
|
||||
jobs:
|
||||
build:
|
||||
name: Build Java Client JDK8
|
||||
@@ -23,6 +25,7 @@ jobs:
|
||||
- samples/client/echo_api/java/apache-httpclient
|
||||
- samples/client/echo_api/java/feign-gson
|
||||
- samples/client/echo_api/java/okhttp-gson
|
||||
- samples/client/echo_api/java/resttemplate
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
- uses: actions/setup-java@v3
|
||||
@@ -38,7 +41,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
|
||||
|
||||
11
.github/workflows/samples-java-client-jdk11.yaml
vendored
11
.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
|
||||
@@ -52,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/
|
||||
@@ -61,6 +67,9 @@ 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@v4
|
||||
- uses: actions/setup-java@v3
|
||||
|
||||
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
|
||||
2
.github/workflows/samples-jaxrs.yaml
vendored
2
.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
|
||||
|
||||
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@v4
|
||||
- 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
|
||||
1
.github/workflows/samples-spring.yaml
vendored
1
.github/workflows/samples-spring.yaml
vendored
@@ -55,6 +55,7 @@ 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@v4
|
||||
- uses: actions/setup-java@v3
|
||||
|
||||
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
|
||||
2
.github/workflows/samples-zapier.yaml
vendored
2
.github/workflows/samples-zapier.yaml
vendored
@@ -20,7 +20,7 @@ jobs:
|
||||
steps:
|
||||
- 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/windows.yaml
vendored
2
.github/workflows/windows.yaml
vendored
@@ -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
|
||||
|
||||
2
.gitignore
vendored
2
.gitignore
vendored
@@ -90,7 +90,6 @@ samples/client/petstore/cpp-restsdk/cmake_install.cmake
|
||||
samples/client/petstore/java/hello.txt
|
||||
samples/client/petstore/java/okhttp-gson/hello.txt
|
||||
samples/client/petstore/java/okhttp-gson-3.1/hello.txt
|
||||
samples/client/petstore/java/jersey1/hello.txt
|
||||
samples/client/petstore/java/jersey2-java8/hello.txt
|
||||
samples/client/petstore/java/jersey2/hello.txt
|
||||
samples/client/petstore/android/default/hello.txt
|
||||
@@ -272,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
|
||||
|
||||
@@ -3,19 +3,19 @@
|
||||
##
|
||||
## You can build _just_ this part with:
|
||||
## docker --target builder -t container-name:builder -f .hub.cli.dockerfile .
|
||||
FROM maven:3.6.3-jdk-11-openj9 as builder
|
||||
FROM maven:3-eclipse-temurin-17 as builder
|
||||
|
||||
ENV GEN_DIR /opt/openapi-generator
|
||||
WORKDIR ${GEN_DIR}
|
||||
COPY . ${GEN_DIR}
|
||||
|
||||
# Pre-compile openapi-generator-cli
|
||||
RUN mvn -am -pl "modules/openapi-generator-cli" package
|
||||
RUN mvn -B -am -pl "modules/openapi-generator-cli" package
|
||||
|
||||
## The final (release) image
|
||||
## The resulting container here only needs the target jar
|
||||
## and ca-certificates (to be able to query HTTPS hosted specs)
|
||||
FROM openjdk:11.0.8-jre-slim-buster
|
||||
FROM eclipse-temurin:17-jre
|
||||
|
||||
ENV GEN_DIR /opt/openapi-generator
|
||||
|
||||
|
||||
@@ -3,18 +3,18 @@
|
||||
##
|
||||
## You can build _just_ this part with:
|
||||
## docker --target builder -t container-name:builder -f .hub.online.dockerfile .
|
||||
FROM maven:3.6.3-jdk-11-openj9 as builder
|
||||
FROM maven:3-eclipse-temurin-17 as builder
|
||||
|
||||
ENV GEN_DIR /opt/openapi-generator
|
||||
WORKDIR ${GEN_DIR}
|
||||
COPY . ${GEN_DIR}
|
||||
|
||||
# Pre-compile openapi-generator-online
|
||||
RUN mvn -am -pl "modules/openapi-generator-online" package
|
||||
RUN mvn -B -am -pl "modules/openapi-generator-online" package
|
||||
|
||||
## The final (release) image
|
||||
## The resulting container here only needs the target jar
|
||||
FROM openjdk:11.0.8-jre-slim-buster
|
||||
FROM eclipse-temurin:17-jre
|
||||
|
||||
ENV GEN_DIR /opt/openapi-generator
|
||||
ENV TARGET_DIR /generator
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM maven:3.6.3-jdk-11-openj9
|
||||
FROM maven:3-eclipse-temurin-17
|
||||
|
||||
ENV GEN_DIR /opt/openapi-generator
|
||||
WORKDIR ${GEN_DIR}
|
||||
@@ -20,7 +20,7 @@ COPY ./modules/openapi-generator ${GEN_DIR}/modules/openapi-generator
|
||||
COPY ./pom.xml ${GEN_DIR}
|
||||
|
||||
# Pre-compile openapi-generator-cli
|
||||
RUN mvn -am -pl "modules/openapi-generator-cli" package
|
||||
RUN mvn -B -am -pl "modules/openapi-generator-cli" package
|
||||
|
||||
# This exists at the end of the file to benefit from cached layers when modifying docker-entrypoint.sh.
|
||||
COPY docker-entrypoint.sh /usr/local/bin/
|
||||
|
||||
32
README.md
32
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.1.0`):
|
||||
[Master](https://github.com/OpenAPITools/openapi-generator/tree/master) (`7.2.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,20 +60,25 @@ 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/) |
|
||||
@@ -115,8 +120,8 @@ The OpenAPI Specification has undergone 3 revisions since initial creation in 20
|
||||
|
||||
| OpenAPI Generator Version | Release Date | Notes |
|
||||
| --------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------- |
|
||||
| 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) |
|
||||
| 7.2.0 (upcoming minor release) [SNAPSHOT](https://oss.sonatype.org/content/repositories/snapshots/org/openapitools/openapi-generator-cli/7.2.0-SNAPSHOT/) | 15.12.2023 | Minor release with breaking changes (with fallback) |
|
||||
| [7.1.0](https://github.com/OpenAPITools/openapi-generator/releases/tag/v7.1.0) (latest stable release) | 13.11.2023 | Minor release with breaking changes (with fallback) |
|
||||
| [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) |
|
||||
@@ -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.1/openapi-generator-cli-7.0.1.jar`
|
||||
JAR location: `https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.1.0/openapi-generator-cli-7.1.0.jar`
|
||||
|
||||
For **Mac/Linux** users:
|
||||
```sh
|
||||
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
|
||||
wget https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.1.0/openapi-generator-cli-7.1.0.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.1/openapi-generator-cli-7.0.1.jar
|
||||
Invoke-WebRequest -OutFile openapi-generator-cli.jar https://repo1.maven.org/maven2/org/openapitools/openapi-generator-cli/7.1.0/openapi-generator-cli-7.1.0.jar
|
||||
```
|
||||
|
||||
After downloading the JAR, run `java -jar openapi-generator-cli.jar help` to show the usage.
|
||||
@@ -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)
|
||||
@@ -1004,6 +1010,7 @@ Here is a list of template creators:
|
||||
* 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
|
||||
@@ -1166,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 | @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) |
|
||||
@@ -1259,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
|
||||
@@ -56,8 +56,8 @@ test_script:
|
||||
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net47\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
|
||||
# test C# API client (.net framework 4.8)
|
||||
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net48\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
|
||||
# test C# API client (.net 5.0)
|
||||
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net5.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
|
||||
# test C# API client (.net 7.0)
|
||||
- dotnet test samples\client\petstore\csharp\OpenAPIClient-net7.0\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
|
||||
# test C# API Client using conditional-serialization
|
||||
- dotnet test samples\client\petstore\csharp\OpenAPIClient-ConditionalSerialization\src\Org.OpenAPITools.Test\Org.OpenAPITools.Test.csproj
|
||||
|
||||
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
useCompareNetObjects: true
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
nullableReferenceTypes: true
|
||||
equatable: true
|
||||
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
useCompareNetObjects: true
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
nullableReferenceTypes: true
|
||||
equatable: true
|
||||
|
||||
@@ -10,3 +10,4 @@ additionalProperties:
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
useSourceGeneration: true
|
||||
packageName: UseSourceGeneration
|
||||
equatable: true
|
||||
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
useCompareNetObjects: true
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
nullableReferenceTypes: true
|
||||
equatable: true
|
||||
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
useCompareNetObjects: true
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
nullableReferenceTypes: true
|
||||
equatable: true
|
||||
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
useCompareNetObjects: true
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
nullableReferenceTypes: false
|
||||
equatable: true
|
||||
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
useCompareNetObjects: true
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
targetFramework: netstandard2.0
|
||||
equatable: true
|
||||
|
||||
@@ -10,3 +10,4 @@ additionalProperties:
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
useOneOfDiscriminatorLookup: true
|
||||
targetFramework: netstandard2.0
|
||||
equatable: true
|
||||
|
||||
@@ -7,3 +7,4 @@ additionalProperties:
|
||||
targetFramework: net6.0
|
||||
setCompareNetObjects: "true"
|
||||
hideGenerationTimestamp: "true"
|
||||
equatable: true
|
||||
|
||||
@@ -6,3 +6,4 @@ additionalProperties:
|
||||
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
|
||||
targetFramework: netstandard2.1;net47
|
||||
useCompareNetObjects: "true"
|
||||
equatable: true
|
||||
|
||||
@@ -10,3 +10,4 @@ additionalProperties:
|
||||
useOneOfDiscriminatorLookup: true
|
||||
targetFramework: net47
|
||||
skipOneOfAnyOfGetter: true
|
||||
equatable: true
|
||||
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
useOneOfDiscriminatorLookup: true
|
||||
targetFramework: net48
|
||||
equatable: true
|
||||
|
||||
@@ -16,3 +16,4 @@ additionalProperties:
|
||||
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
|
||||
hideGenerationTimestamp: "true"
|
||||
targetFramework: net6.0
|
||||
equatable: true
|
||||
|
||||
@@ -6,3 +6,4 @@ additionalProperties:
|
||||
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
|
||||
targetFramework: net7.0
|
||||
useCompareNetObjects: "true"
|
||||
equatable: true
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# for .net standard
|
||||
generatorName: csharp
|
||||
outputDir: samples/client/petstore/csharp/OpenAPIClient-net5.0
|
||||
outputDir: samples/client/petstore/csharp/OpenAPIClient-net7.0
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/csharp
|
||||
additionalProperties:
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
useOneOfDiscriminatorLookup: true
|
||||
targetFramework: net7.0
|
||||
equatable: true
|
||||
|
||||
11
bin/configs/csharp-restsharp-net8.0.yaml
Normal file
11
bin/configs/csharp-restsharp-net8.0.yaml
Normal file
@@ -0,0 +1,11 @@
|
||||
generatorName: csharp
|
||||
outputDir: samples/client/petstore/csharp/OpenAPIClient-net8.0
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/csharp/petstore-with-fake-endpoints-models-for-testing-with-http-signature.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/csharp
|
||||
additionalProperties:
|
||||
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
|
||||
useCompareNetObjects: true
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
useOneOfDiscriminatorLookup: true
|
||||
targetFramework: net8.0
|
||||
equatable: true
|
||||
@@ -6,5 +6,6 @@ additionalProperties:
|
||||
packageGuid: '{321C8C3F-0156-40C1-AE42-D59761FB9B6C}'
|
||||
targetFramework: netstandard2.0
|
||||
useCompareNetObjects: "true"
|
||||
equatable: true
|
||||
globalProperties:
|
||||
skipFormModel: "false"
|
||||
|
||||
@@ -10,3 +10,4 @@ additionalProperties:
|
||||
useOneOfDiscriminatorLookup: true
|
||||
targetFramework: netstandard2.0
|
||||
conditionalSerialization: true
|
||||
equatable: true
|
||||
|
||||
@@ -9,3 +9,4 @@ additionalProperties:
|
||||
disallowAdditionalPropertiesIfNotPresent: false
|
||||
useOneOfDiscriminatorLookup: true
|
||||
targetFramework: netstandard2.0
|
||||
equatable: true
|
||||
|
||||
@@ -6,3 +6,4 @@ templateDir: modules/openapi-generator/src/main/resources/csharp
|
||||
library: unityWebRequest
|
||||
additionalProperties:
|
||||
targetFramework: netstandard2.0
|
||||
equatable: 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
|
||||
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
|
||||
|
||||
10
bin/configs/java-resttemplate-echo-api.yaml
Normal file
10
bin/configs/java-resttemplate-echo-api.yaml
Normal file
@@ -0,0 +1,10 @@
|
||||
generatorName: java
|
||||
outputDir: samples/client/echo_api/java/resttemplate
|
||||
library: resttemplate
|
||||
inputSpec: modules/openapi-generator/src/test/resources/3_0/echo_api.yaml
|
||||
templateDir: modules/openapi-generator/src/main/resources/Java
|
||||
additionalProperties:
|
||||
artifactId: echo-api-resttemplate
|
||||
hideGenerationTimestamp: "true"
|
||||
java8: true
|
||||
containerDefaultToNull: true
|
||||
@@ -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
|
||||
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"
|
||||
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
|
||||
@@ -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"
|
||||
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"
|
||||
@@ -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
|
||||
|
||||
@@ -4,7 +4,7 @@ set -euo pipefail
|
||||
|
||||
# GEN_DIR allows to share the entrypoint between Dockerfile and run-in-docker.sh (backward compatible)
|
||||
GEN_DIR=${GEN_DIR:-/opt/openapi-generator}
|
||||
JAVA_OPTS=${JAVA_OPTS:-"-Xmx1024M -DloggerPath=conf/log4j.properties"}
|
||||
JAVA_OPTS=${JAVA_OPTS:-"-DloggerPath=conf/log4j.properties"}
|
||||
|
||||
cli="${GEN_DIR}/modules/openapi-generator-cli"
|
||||
codegen="${cli}/target/openapi-generator-cli.jar"
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -25,7 +25,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|dateFormat|The default Date format (only `generichost` library supports this option).| |yyyy'-'MM'-'dd|
|
||||
|dateTimeFormat|The default DateTime format (only `generichost` library supports this option).| |yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffffK|
|
||||
|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|
|
||||
|equatable|Overrides Equals and GetHashCode methods.| |true|
|
||||
|equatable|Overrides Equals and GetHashCode methods.| |false|
|
||||
|hideGenerationTimestamp|Hides the generation timestamp when files are generated.| |true|
|
||||
|interfacePrefix|Prefix interfaces with a community standard or widely accepted prefix.| |I|
|
||||
|library|HTTP library template (sub-template) to use|<dl><dt>**generichost**</dt><dd>HttpClient with Generic Host dependency injection (https://docs.microsoft.com/en-us/dotnet/core/extensions/generic-host) (Experimental. Subject to breaking changes without notice.)</dd><dt>**httpclient**</dt><dd>HttpClient (https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclient) (Experimental. Subject to breaking changes without notice.)</dd><dt>**unityWebRequest**</dt><dd>UnityWebRequest (...) (Experimental. Subject to breaking changes without notice.)</dd><dt>**restsharp**</dt><dd>RestSharp (https://github.com/restsharp/RestSharp)</dd></dl>|restsharp|
|
||||
@@ -45,7 +45,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|releaseNote|Release note, default to 'Minor update'.| |Minor update|
|
||||
|returnICollection|Return ICollection<T> instead of the concrete type.| |false|
|
||||
|sourceFolder|source folder for generated code| |src|
|
||||
|targetFramework|The target .NET framework version. To target multiple frameworks, use `;` as the separator, e.g. `netstandard2.1;netcoreapp3.1`|<dl><dt>**netstandard1.3**</dt><dd>.NET Standard 1.3</dd><dt>**netstandard1.4**</dt><dd>.NET Standard 1.4</dd><dt>**netstandard1.5**</dt><dd>.NET Standard 1.5</dd><dt>**netstandard1.6**</dt><dd>.NET Standard 1.6</dd><dt>**netstandard2.0**</dt><dd>.NET Standard 2.0</dd><dt>**netstandard2.1**</dt><dd>.NET Standard 2.1</dd><dt>**net47**</dt><dd>.NET Framework 4.7</dd><dt>**net48**</dt><dd>.NET Framework 4.8</dd><dt>**net6.0**</dt><dd>.NET 6.0 (End of Support 12 November 2024)</dd><dt>**net7.0**</dt><dd>.NET 7.0</dd></dl>|net7.0|
|
||||
|targetFramework|The target .NET framework version. To target multiple frameworks, use `;` as the separator, e.g. `netstandard2.1;netcoreapp3.1`|<dl><dt>**netstandard1.3**</dt><dd>.NET Standard 1.3</dd><dt>**netstandard1.4**</dt><dd>.NET Standard 1.4</dd><dt>**netstandard1.5**</dt><dd>.NET Standard 1.5</dd><dt>**netstandard1.6**</dt><dd>.NET Standard 1.6</dd><dt>**netstandard2.0**</dt><dd>.NET Standard 2.0</dd><dt>**netstandard2.1**</dt><dd>.NET Standard 2.1</dd><dt>**net47**</dt><dd>.NET Framework 4.7</dd><dt>**net48**</dt><dd>.NET Framework 4.8</dd><dt>**net6.0**</dt><dd>.NET 6.0 (End of Support 12 November 2024)</dd><dt>**net7.0**</dt><dd>.NET 7.0</dd><dt>**net8.0**</dt><dd>.NET 8.0</dd></dl>|net8.0|
|
||||
|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|
|
||||
@@ -115,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
|
||||
|
||||
@@ -49,7 +49,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|implicitHeadersRegex|Skip header parameters that matches given regex in the generated API methods using @ApiImplicitParams annotation. Note: this parameter is ignored when implicitHeaders=true| |null|
|
||||
|invokerPackage|root package for generated code| |org.openapitools.api|
|
||||
|legacyDiscriminatorBehavior|Set to false for generators with better support for discriminators. (Python, Java, Go, PowerShell, C# have this enabled by default).|<dl><dt>**true**</dt><dd>The mapping in the discriminator includes descendent schemas that allOf inherit from self and the discriminator mapping schemas in the OAS document.</dd><dt>**false**</dt><dd>The mapping in the discriminator includes any descendent schemas that allOf inherit from self, any oneOf schemas, any anyOf schemas, any x-discriminator-values, and the discriminator mapping schemas in the OAS document AND Codegen validates that oneOf and anyOf schemas contain the required discriminator and throws an error if the discriminator is missing.</dd></dl>|true|
|
||||
|library|library template (sub-template)|<dl><dt>**jersey1**</dt><dd>Jersey core 1.x</dd><dt>**jersey2**</dt><dd>Jersey core 2.x</dd></dl>|jersey2|
|
||||
|library|library template (sub-template)|<dl><dt>**jersey2**</dt><dd>Jersey core 2.x</dd></dl>|jersey2|
|
||||
|licenseName|The name of the license| |Unlicense|
|
||||
|licenseUrl|The URL of the license| |http://unlicense.org|
|
||||
|modelPackage|package for generated models| |org.openapitools.model|
|
||||
|
||||
@@ -57,7 +57,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|implicitHeadersRegex|Skip header parameters that matches given regex in the generated API methods using @ApiImplicitParams annotation. Note: this parameter is ignored when implicitHeaders=true| |null|
|
||||
|invokerPackage|root package for generated code| |org.openapitools.client|
|
||||
|legacyDiscriminatorBehavior|Set to false for generators with better support for discriminators. (Python, Java, Go, PowerShell, C# have this enabled by default).|<dl><dt>**true**</dt><dd>The mapping in the discriminator includes descendent schemas that allOf inherit from self and the discriminator mapping schemas in the OAS document.</dd><dt>**false**</dt><dd>The mapping in the discriminator includes any descendent schemas that allOf inherit from self, any oneOf schemas, any anyOf schemas, any x-discriminator-values, and the discriminator mapping schemas in the OAS document AND Codegen validates that oneOf and anyOf schemas contain the required discriminator and throws an error if the discriminator is missing.</dd></dl>|true|
|
||||
|library|library template (sub-template) to use|<dl><dt>**jersey1**</dt><dd>HTTP client: Jersey client 1.19.x. JSON processing: Jackson 2.9.x. Enable gzip request encoding using '-DuseGzipFeature=true'. IMPORTANT NOTE: jersey 1.x is no longer actively maintained so please upgrade to 'jersey3' or other HTTP libraries instead.</dd><dt>**jersey2**</dt><dd>HTTP client: Jersey client 2.25.1. JSON processing: Jackson 2.9.x</dd><dt>**jersey3**</dt><dd>HTTP client: Jersey client 3.x. JSON processing: Jackson 2.x</dd><dt>**feign**</dt><dd>HTTP client: OpenFeign 10.x. JSON processing: Jackson 2.9.x. or Gson 2.x</dd><dt>**okhttp-gson**</dt><dd>[DEFAULT] HTTP client: OkHttp 3.x. JSON processing: Gson 2.8.x. Enable Parcelable models on Android using '-DparcelableModel=true'. Enable gzip request encoding using '-DuseGzipFeature=true'.</dd><dt>**retrofit2**</dt><dd>HTTP client: OkHttp 3.x. JSON processing: Gson 2.x (Retrofit 2.3.0). Enable the RxJava adapter using '-DuseRxJava[2/3]=true'. (RxJava 1.x or 2.x or 3.x)</dd><dt>**resttemplate**</dt><dd>HTTP client: Spring RestTemplate 4.x. JSON processing: Jackson 2.9.x</dd><dt>**webclient**</dt><dd>HTTP client: Spring WebClient 5.x. JSON processing: Jackson 2.9.x</dd><dt>**resteasy**</dt><dd>HTTP client: Resteasy client 3.x. JSON processing: Jackson 2.9.x</dd><dt>**vertx**</dt><dd>HTTP client: VertX client 3.x. JSON processing: Jackson 2.9.x</dd><dt>**google-api-client**</dt><dd>HTTP client: Google API client 1.x. JSON processing: Jackson 2.9.x</dd><dt>**rest-assured**</dt><dd>HTTP client: rest-assured : 4.x. JSON processing: Gson 2.x or Jackson 2.10.x. Only for Java 8</dd><dt>**native**</dt><dd>HTTP client: Java native HttpClient. JSON processing: Jackson 2.9.x. Only for Java11+</dd><dt>**microprofile**</dt><dd>HTTP client: Microprofile client 1.x. JSON processing: JSON-B or Jackson 2.9.x</dd><dt>**apache-httpclient**</dt><dd>HTTP client: Apache httpclient 5.x</dd></dl>|okhttp-gson|
|
||||
|library|library template (sub-template) to use|<dl><dt>**jersey2**</dt><dd>HTTP client: Jersey client 2.25.1. JSON processing: Jackson 2.9.x</dd><dt>**jersey3**</dt><dd>HTTP client: Jersey client 3.x. JSON processing: Jackson 2.x</dd><dt>**feign**</dt><dd>HTTP client: OpenFeign 10.x. JSON processing: Jackson 2.9.x. or Gson 2.x</dd><dt>**okhttp-gson**</dt><dd>[DEFAULT] HTTP client: OkHttp 3.x. JSON processing: Gson 2.8.x. Enable Parcelable models on Android using '-DparcelableModel=true'. Enable gzip request encoding using '-DuseGzipFeature=true'.</dd><dt>**retrofit2**</dt><dd>HTTP client: OkHttp 3.x. JSON processing: Gson 2.x (Retrofit 2.3.0). Enable the RxJava adapter using '-DuseRxJava[2/3]=true'. (RxJava 1.x or 2.x or 3.x)</dd><dt>**resttemplate**</dt><dd>HTTP client: Spring RestTemplate 4.x. JSON processing: Jackson 2.9.x</dd><dt>**webclient**</dt><dd>HTTP client: Spring WebClient 5.x. JSON processing: Jackson 2.9.x</dd><dt>**resteasy**</dt><dd>HTTP client: Resteasy client 3.x. JSON processing: Jackson 2.9.x</dd><dt>**vertx**</dt><dd>HTTP client: VertX client 3.x. JSON processing: Jackson 2.9.x</dd><dt>**google-api-client**</dt><dd>HTTP client: Google API client 1.x. JSON processing: Jackson 2.9.x</dd><dt>**rest-assured**</dt><dd>HTTP client: rest-assured : 4.x. JSON processing: Gson 2.x or Jackson 2.10.x. Only for Java 8</dd><dt>**native**</dt><dd>HTTP client: Java native HttpClient. JSON processing: Jackson 2.9.x. Only for Java11+</dd><dt>**microprofile**</dt><dd>HTTP client: Microprofile client 1.x. JSON processing: JSON-B or Jackson 2.9.x</dd><dt>**apache-httpclient**</dt><dd>HTTP client: Apache httpclient 5.x</dd></dl>|okhttp-gson|
|
||||
|licenseName|The name of the license| |Unlicense|
|
||||
|licenseUrl|The URL of the license| |http://unlicense.org|
|
||||
|microprofileFramework|Framework for microprofile. Possible values "kumuluzee"| |null|
|
||||
@@ -92,7 +92,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|useOneOfInterfaces|whether to use a java interface to describe a set of oneOf options, where each option is a class that implements the interface| |false|
|
||||
|usePlayWS|Use Play! Async HTTP client (Play WS API)| |false|
|
||||
|useReflectionEqualsHashCode|Use org.apache.commons.lang3.builder for equals and hashCode in the models. WARNING: This will fail under a security manager, unless the appropriate permissions are set up correctly and also there's potential performance impact.| |false|
|
||||
|useRuntimeException|Use RuntimeException instead of Exception. Only jersey, jersey2, jersey3, okhttp-gson, vertx, microprofile support this option.| |false|
|
||||
|useRuntimeException|Use RuntimeException instead of Exception. Only jersey2, jersey3, okhttp-gson, vertx, microprofile support this option.| |false|
|
||||
|useRxJava2|Whether to use the RxJava2 adapter with the retrofit2 library. IMPORTANT: This option has been deprecated.| |false|
|
||||
|useRxJava3|Whether to use the RxJava3 adapter with the retrofit2 library. IMPORTANT: This option has been deprecated.| |false|
|
||||
|useSingleRequestParameter|Setting this property to true will generate functions with a single argument containing all API endpoint parameters instead of one argument per parameter. ONLY jersey2, jersey3, okhttp-gson support this option.| |false|
|
||||
|
||||
@@ -49,7 +49,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|implicitHeadersRegex|Skip header parameters that matches given regex in the generated API methods using @ApiImplicitParams annotation. Note: this parameter is ignored when implicitHeaders=true| |null|
|
||||
|invokerPackage|root package for generated code| |org.openapitools.api|
|
||||
|legacyDiscriminatorBehavior|Set to false for generators with better support for discriminators. (Python, Java, Go, PowerShell, C# have this enabled by default).|<dl><dt>**true**</dt><dd>The mapping in the discriminator includes descendent schemas that allOf inherit from self and the discriminator mapping schemas in the OAS document.</dd><dt>**false**</dt><dd>The mapping in the discriminator includes any descendent schemas that allOf inherit from self, any oneOf schemas, any anyOf schemas, any x-discriminator-values, and the discriminator mapping schemas in the OAS document AND Codegen validates that oneOf and anyOf schemas contain the required discriminator and throws an error if the discriminator is missing.</dd></dl>|true|
|
||||
|library|library template (sub-template)|<dl><dt>**jersey1**</dt><dd>Jersey core 1.x</dd><dt>**jersey2**</dt><dd>Jersey core 2.x</dd></dl>|jersey2|
|
||||
|library|library template (sub-template)|<dl><dt>**jersey2**</dt><dd>Jersey core 2.x</dd><dt>**jersey3**</dt><dd>Jersey core 3.x</dd></dl>|jersey2|
|
||||
|licenseName|The name of the license| |Unlicense|
|
||||
|licenseUrl|The URL of the license| |http://unlicense.org|
|
||||
|modelPackage|package for generated models| |org.openapitools.model|
|
||||
@@ -67,7 +67,6 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true|
|
||||
|sortParamsByRequiredFlag|Sort method arguments to place required parameters before optional parameters.| |true|
|
||||
|sourceFolder|source folder for generated code| |src/gen/java|
|
||||
|supportJava6|Whether to support Java6 with the Jersey1/2 library.| |false|
|
||||
|testOutput|Set output folder for models and APIs tests| |${project.build.directory}/generated-test-sources/openapi|
|
||||
|title|a title describing the application| |OpenAPI Server|
|
||||
|useBeanValidation|Use BeanValidation API annotations| |true|
|
||||
|
||||
@@ -39,7 +39,6 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|parcelizeModels|toggle "@Parcelize" for generated models| |null|
|
||||
|returnResponse|Whether generate API interface should return javax.ws.rs.core.Response instead of a deserialized entity. Only useful if interfaceOnly is true. This option is currently supported only when using jaxrs-spec library.| |false|
|
||||
|serializableModel|boolean - toggle "implements Serializable" for generated models| |null|
|
||||
|serializationLibrary|What serialization library to use: 'moshi' (default), or 'gson' or 'jackson' or 'kotlinx_serialization'| |moshi|
|
||||
|sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |null|
|
||||
|sortParamsByRequiredFlag|Sort method arguments to place required parameters before optional parameters.| |null|
|
||||
|sourceFolder|source folder for generated code| |src/main/kotlin|
|
||||
|
||||
@@ -41,7 +41,6 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|parcelizeModels|toggle "@Parcelize" for generated models| |null|
|
||||
|reactive|use coroutines for reactive behavior| |false|
|
||||
|serializableModel|boolean - toggle "implements Serializable" for generated models| |null|
|
||||
|serializationLibrary|What serialization library to use: 'moshi' (default), or 'gson' or 'jackson' or 'kotlinx_serialization'| |moshi|
|
||||
|serverPort|configuration the port in which the sever is to run on| |8080|
|
||||
|serviceImplementation|generate stub service implementations that extends service interfaces. If this is set to true service interfaces will also be generated| |false|
|
||||
|serviceInterface|generate service interfaces to go alongside controllers. In most cases this option would be used to update an existing project, so not to override implementations. Useful to help facilitate the generation gap pattern| |false|
|
||||
|
||||
@@ -28,7 +28,6 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|packageName|Generated artifact package name.| |org.openapitools|
|
||||
|parcelizeModels|toggle "@Parcelize" for generated models| |null|
|
||||
|serializableModel|boolean - toggle "implements Serializable" for generated models| |null|
|
||||
|serializationLibrary|What serialization library to use: 'moshi' (default), or 'gson' or 'jackson' or 'kotlinx_serialization'| |moshi|
|
||||
|sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |null|
|
||||
|sortParamsByRequiredFlag|Sort method arguments to place required parameters before optional parameters.| |null|
|
||||
|sourceFolder|source folder for generated code| |src/main/kotlin|
|
||||
|
||||
@@ -78,10 +78,12 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>async</li>
|
||||
<li>auth_settings</li>
|
||||
<li>await</li>
|
||||
<li>base64</li>
|
||||
<li>body_params</li>
|
||||
<li>break</li>
|
||||
<li>class</li>
|
||||
<li>continue</li>
|
||||
<li>date</li>
|
||||
<li>def</li>
|
||||
<li>del</li>
|
||||
<li>elif</li>
|
||||
@@ -90,6 +92,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>exec</li>
|
||||
<li>false</li>
|
||||
<li>finally</li>
|
||||
<li>float</li>
|
||||
<li>for</li>
|
||||
<li>form_params</li>
|
||||
<li>from</li>
|
||||
@@ -99,6 +102,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>import</li>
|
||||
<li>in</li>
|
||||
<li>is</li>
|
||||
<li>json</li>
|
||||
<li>lambda</li>
|
||||
<li>local_var_files</li>
|
||||
<li>none</li>
|
||||
@@ -113,6 +117,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>raise</li>
|
||||
<li>resource_path</li>
|
||||
<li>return</li>
|
||||
<li>schema</li>
|
||||
<li>self</li>
|
||||
<li>true</li>
|
||||
<li>try</li>
|
||||
|
||||
@@ -78,10 +78,12 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>async</li>
|
||||
<li>auth_settings</li>
|
||||
<li>await</li>
|
||||
<li>base64</li>
|
||||
<li>body_params</li>
|
||||
<li>break</li>
|
||||
<li>class</li>
|
||||
<li>continue</li>
|
||||
<li>date</li>
|
||||
<li>def</li>
|
||||
<li>del</li>
|
||||
<li>elif</li>
|
||||
@@ -90,6 +92,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>exec</li>
|
||||
<li>false</li>
|
||||
<li>finally</li>
|
||||
<li>float</li>
|
||||
<li>for</li>
|
||||
<li>form_params</li>
|
||||
<li>from</li>
|
||||
@@ -99,6 +102,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>import</li>
|
||||
<li>in</li>
|
||||
<li>is</li>
|
||||
<li>json</li>
|
||||
<li>lambda</li>
|
||||
<li>local_var_files</li>
|
||||
<li>none</li>
|
||||
@@ -113,6 +117,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>raise</li>
|
||||
<li>resource_path</li>
|
||||
<li>return</li>
|
||||
<li>schema</li>
|
||||
<li>self</li>
|
||||
<li>true</li>
|
||||
<li>try</li>
|
||||
|
||||
@@ -73,10 +73,12 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>async</li>
|
||||
<li>auth_settings</li>
|
||||
<li>await</li>
|
||||
<li>base64</li>
|
||||
<li>body_params</li>
|
||||
<li>break</li>
|
||||
<li>class</li>
|
||||
<li>continue</li>
|
||||
<li>date</li>
|
||||
<li>def</li>
|
||||
<li>del</li>
|
||||
<li>elif</li>
|
||||
@@ -85,6 +87,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>exec</li>
|
||||
<li>false</li>
|
||||
<li>finally</li>
|
||||
<li>float</li>
|
||||
<li>for</li>
|
||||
<li>form_params</li>
|
||||
<li>from</li>
|
||||
@@ -94,6 +97,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>import</li>
|
||||
<li>in</li>
|
||||
<li>is</li>
|
||||
<li>json</li>
|
||||
<li>lambda</li>
|
||||
<li>local_var_files</li>
|
||||
<li>none</li>
|
||||
@@ -108,6 +112,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>raise</li>
|
||||
<li>resource_path</li>
|
||||
<li>return</li>
|
||||
<li>schema</li>
|
||||
<li>self</li>
|
||||
<li>true</li>
|
||||
<li>try</li>
|
||||
|
||||
@@ -78,10 +78,12 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>async</li>
|
||||
<li>auth_settings</li>
|
||||
<li>await</li>
|
||||
<li>base64</li>
|
||||
<li>body_params</li>
|
||||
<li>break</li>
|
||||
<li>class</li>
|
||||
<li>continue</li>
|
||||
<li>date</li>
|
||||
<li>def</li>
|
||||
<li>del</li>
|
||||
<li>elif</li>
|
||||
@@ -90,6 +92,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>exec</li>
|
||||
<li>false</li>
|
||||
<li>finally</li>
|
||||
<li>float</li>
|
||||
<li>for</li>
|
||||
<li>form_params</li>
|
||||
<li>from</li>
|
||||
@@ -99,6 +102,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>import</li>
|
||||
<li>in</li>
|
||||
<li>is</li>
|
||||
<li>json</li>
|
||||
<li>lambda</li>
|
||||
<li>local_var_files</li>
|
||||
<li>none</li>
|
||||
@@ -113,6 +117,7 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>raise</li>
|
||||
<li>resource_path</li>
|
||||
<li>return</li>
|
||||
<li>schema</li>
|
||||
<li>self</li>
|
||||
<li>true</li>
|
||||
<li>try</li>
|
||||
|
||||
232
docs/generators/python-pydantic-v1.md
Normal file
232
docs/generators/python-pydantic-v1.md
Normal file
@@ -0,0 +1,232 @@
|
||||
---
|
||||
title: Documentation for the python-pydantic-v1 Generator
|
||||
---
|
||||
|
||||
## METADATA
|
||||
|
||||
| Property | Value | Notes |
|
||||
| -------- | ----- | ----- |
|
||||
| generator name | python-pydantic-v1 | pass this to the generate command after -g |
|
||||
| generator stability | STABLE | |
|
||||
| generator type | CLIENT | |
|
||||
| generator language | Python | |
|
||||
| generator language version | 3.7+ | |
|
||||
| generator default templating engine | mustache | |
|
||||
| helpTxt | Generates a Python client library. | |
|
||||
|
||||
## CONFIG OPTIONS
|
||||
These options may be applied as additional-properties (cli) or configOptions (plugins). Refer to [configuration docs](https://openapi-generator.tech/docs/configuration) for more details.
|
||||
|
||||
| Option | Description | Values | Default |
|
||||
| ------ | ----------- | ------ | ------- |
|
||||
|dateFormat|date format for query parameters| |%Y-%m-%d|
|
||||
|datetimeFormat|datetime format for query parameters| |%Y-%m-%dT%H:%M:%S%z|
|
||||
|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|
|
||||
|generateSourceCodeOnly|Specifies that only a library source code is to be generated.| |false|
|
||||
|hideGenerationTimestamp|Hides the generation timestamp when files are generated.| |true|
|
||||
|library|library template (sub-template) to use: asyncio, tornado (deprecated), urllib3| |urllib3|
|
||||
|mapNumberTo|Map number to Union[StrictFloat, StrictInt], StrictStr or float.| |Union[StrictFloat, StrictInt]|
|
||||
|packageName|python package name (convention: snake_case).| |openapi_client|
|
||||
|packageUrl|python package URL.| |null|
|
||||
|packageVersion|python package version.| |1.0.0|
|
||||
|projectName|python project name in setup.py (e.g. petstore-api).| |null|
|
||||
|recursionLimit|Set the recursion limit. If not set, use the system default value.| |null|
|
||||
|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|
|
||||
|
||||
## IMPORT MAPPING
|
||||
|
||||
| Type/Alias | Imports |
|
||||
| ---------- | ------- |
|
||||
|
||||
|
||||
## INSTANTIATION TYPES
|
||||
|
||||
| Type/Alias | Instantiated By |
|
||||
| ---------- | --------------- |
|
||||
|
||||
|
||||
## LANGUAGE PRIMITIVES
|
||||
|
||||
<ul class="column-ul">
|
||||
<li>Dict</li>
|
||||
<li>List</li>
|
||||
<li>bool</li>
|
||||
<li>bytearray</li>
|
||||
<li>bytes</li>
|
||||
<li>date</li>
|
||||
<li>datetime</li>
|
||||
<li>decimal.Decimal</li>
|
||||
<li>dict</li>
|
||||
<li>float</li>
|
||||
<li>int</li>
|
||||
<li>list</li>
|
||||
<li>none_type</li>
|
||||
<li>object</li>
|
||||
<li>str</li>
|
||||
</ul>
|
||||
|
||||
## RESERVED WORDS
|
||||
|
||||
<ul class="column-ul">
|
||||
<li>and</li>
|
||||
<li>as</li>
|
||||
<li>assert</li>
|
||||
<li>async</li>
|
||||
<li>await</li>
|
||||
<li>base64</li>
|
||||
<li>break</li>
|
||||
<li>class</li>
|
||||
<li>continue</li>
|
||||
<li>date</li>
|
||||
<li>def</li>
|
||||
<li>del</li>
|
||||
<li>elif</li>
|
||||
<li>else</li>
|
||||
<li>except</li>
|
||||
<li>exec</li>
|
||||
<li>false</li>
|
||||
<li>finally</li>
|
||||
<li>for</li>
|
||||
<li>from</li>
|
||||
<li>global</li>
|
||||
<li>if</li>
|
||||
<li>import</li>
|
||||
<li>in</li>
|
||||
<li>is</li>
|
||||
<li>json</li>
|
||||
<li>lambda</li>
|
||||
<li>none</li>
|
||||
<li>nonlocal</li>
|
||||
<li>not</li>
|
||||
<li>or</li>
|
||||
<li>pass</li>
|
||||
<li>print</li>
|
||||
<li>property</li>
|
||||
<li>raise</li>
|
||||
<li>return</li>
|
||||
<li>schema</li>
|
||||
<li>self</li>
|
||||
<li>true</li>
|
||||
<li>try</li>
|
||||
<li>while</li>
|
||||
<li>with</li>
|
||||
<li>yield</li>
|
||||
</ul>
|
||||
|
||||
## FEATURE SET
|
||||
|
||||
|
||||
### Client Modification Feature
|
||||
| Name | Supported | Defined By |
|
||||
| ---- | --------- | ---------- |
|
||||
|BasePath|✗|ToolingExtension
|
||||
|Authorizations|✗|ToolingExtension
|
||||
|UserAgent|✗|ToolingExtension
|
||||
|MockServer|✗|ToolingExtension
|
||||
|
||||
### Data Type Feature
|
||||
| Name | Supported | Defined By |
|
||||
| ---- | --------- | ---------- |
|
||||
|Custom|✗|OAS2,OAS3
|
||||
|Int32|✓|OAS2,OAS3
|
||||
|Int64|✓|OAS2,OAS3
|
||||
|Float|✓|OAS2,OAS3
|
||||
|Double|✓|OAS2,OAS3
|
||||
|Decimal|✓|ToolingExtension
|
||||
|String|✓|OAS2,OAS3
|
||||
|Byte|✓|OAS2,OAS3
|
||||
|Binary|✓|OAS2,OAS3
|
||||
|Boolean|✓|OAS2,OAS3
|
||||
|Date|✓|OAS2,OAS3
|
||||
|DateTime|✓|OAS2,OAS3
|
||||
|Password|✓|OAS2,OAS3
|
||||
|File|✓|OAS2
|
||||
|Uuid|✗|
|
||||
|Array|✓|OAS2,OAS3
|
||||
|Null|✗|OAS3
|
||||
|AnyType|✗|OAS2,OAS3
|
||||
|Object|✓|OAS2,OAS3
|
||||
|Maps|✓|ToolingExtension
|
||||
|CollectionFormat|✓|OAS2
|
||||
|CollectionFormatMulti|✓|OAS2
|
||||
|Enum|✓|OAS2,OAS3
|
||||
|ArrayOfEnum|✓|ToolingExtension
|
||||
|ArrayOfModel|✓|ToolingExtension
|
||||
|ArrayOfCollectionOfPrimitives|✓|ToolingExtension
|
||||
|ArrayOfCollectionOfModel|✓|ToolingExtension
|
||||
|ArrayOfCollectionOfEnum|✓|ToolingExtension
|
||||
|MapOfEnum|✓|ToolingExtension
|
||||
|MapOfModel|✓|ToolingExtension
|
||||
|MapOfCollectionOfPrimitives|✓|ToolingExtension
|
||||
|MapOfCollectionOfModel|✓|ToolingExtension
|
||||
|MapOfCollectionOfEnum|✓|ToolingExtension
|
||||
|
||||
### Documentation Feature
|
||||
| Name | Supported | Defined By |
|
||||
| ---- | --------- | ---------- |
|
||||
|Readme|✓|ToolingExtension
|
||||
|Model|✓|ToolingExtension
|
||||
|Api|✓|ToolingExtension
|
||||
|
||||
### Global Feature
|
||||
| Name | Supported | Defined By |
|
||||
| ---- | --------- | ---------- |
|
||||
|Host|✓|OAS2,OAS3
|
||||
|BasePath|✓|OAS2,OAS3
|
||||
|Info|✓|OAS2,OAS3
|
||||
|Schemes|✗|OAS2,OAS3
|
||||
|PartialSchemes|✓|OAS2,OAS3
|
||||
|Consumes|✓|OAS2
|
||||
|Produces|✓|OAS2
|
||||
|ExternalDocumentation|✓|OAS2,OAS3
|
||||
|Examples|✓|OAS2,OAS3
|
||||
|XMLStructureDefinitions|✗|OAS2,OAS3
|
||||
|MultiServer|✗|OAS3
|
||||
|ParameterizedServer|✗|OAS3
|
||||
|ParameterStyling|✗|OAS3
|
||||
|Callbacks|✗|OAS3
|
||||
|LinkObjects|✗|OAS3
|
||||
|
||||
### Parameter Feature
|
||||
| Name | Supported | Defined By |
|
||||
| ---- | --------- | ---------- |
|
||||
|Path|✓|OAS2,OAS3
|
||||
|Query|✓|OAS2,OAS3
|
||||
|Header|✓|OAS2,OAS3
|
||||
|Body|✓|OAS2
|
||||
|FormUnencoded|✓|OAS2
|
||||
|FormMultipart|✓|OAS2
|
||||
|Cookie|✗|OAS3
|
||||
|
||||
### Schema Support Feature
|
||||
| Name | Supported | Defined By |
|
||||
| ---- | --------- | ---------- |
|
||||
|Simple|✓|OAS2,OAS3
|
||||
|Composite|✓|OAS2,OAS3
|
||||
|Polymorphism|✓|OAS2,OAS3
|
||||
|Union|✗|OAS3
|
||||
|allOf|✓|OAS2,OAS3
|
||||
|anyOf|✓|OAS3
|
||||
|oneOf|✓|OAS3
|
||||
|not|✗|OAS3
|
||||
|
||||
### Security Feature
|
||||
| Name | Supported | Defined By |
|
||||
| ---- | --------- | ---------- |
|
||||
|BasicAuth|✓|OAS2,OAS3
|
||||
|ApiKey|✓|OAS2,OAS3
|
||||
|OpenIDConnect|✗|OAS3
|
||||
|BearerToken|✓|OAS3
|
||||
|OAuth2_Implicit|✓|OAS2,OAS3
|
||||
|OAuth2_Password|✗|OAS2,OAS3
|
||||
|OAuth2_ClientCredentials|✗|OAS2,OAS3
|
||||
|OAuth2_AuthorizationCode|✗|OAS2,OAS3
|
||||
|SignatureAuth|✓|OAS3
|
||||
|
||||
### Wire Format Feature
|
||||
| Name | Supported | Defined By |
|
||||
| ---- | --------- | ---------- |
|
||||
|JSON|✓|OAS2,OAS3
|
||||
|XML|✓|OAS2,OAS3
|
||||
|PROTOBUF|✗|ToolingExtension
|
||||
|Custom|✓|OAS2,OAS3
|
||||
@@ -68,12 +68,15 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
## RESERVED WORDS
|
||||
|
||||
<ul class="column-ul">
|
||||
<li>all_params</li>
|
||||
<li>and</li>
|
||||
<li>as</li>
|
||||
<li>assert</li>
|
||||
<li>async</li>
|
||||
<li>auth_settings</li>
|
||||
<li>await</li>
|
||||
<li>base64</li>
|
||||
<li>body_params</li>
|
||||
<li>break</li>
|
||||
<li>class</li>
|
||||
<li>continue</li>
|
||||
@@ -86,23 +89,30 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
<li>exec</li>
|
||||
<li>false</li>
|
||||
<li>finally</li>
|
||||
<li>float</li>
|
||||
<li>for</li>
|
||||
<li>form_params</li>
|
||||
<li>from</li>
|
||||
<li>global</li>
|
||||
<li>header_params</li>
|
||||
<li>if</li>
|
||||
<li>import</li>
|
||||
<li>in</li>
|
||||
<li>is</li>
|
||||
<li>json</li>
|
||||
<li>lambda</li>
|
||||
<li>local_var_files</li>
|
||||
<li>none</li>
|
||||
<li>nonlocal</li>
|
||||
<li>not</li>
|
||||
<li>or</li>
|
||||
<li>pass</li>
|
||||
<li>path_params</li>
|
||||
<li>print</li>
|
||||
<li>property</li>
|
||||
<li>query_params</li>
|
||||
<li>raise</li>
|
||||
<li>resource_path</li>
|
||||
<li>return</li>
|
||||
<li>schema</li>
|
||||
<li>self</li>
|
||||
|
||||
@@ -27,13 +27,14 @@ These options may be applied as additional-properties (cli) or configOptions (pl
|
||||
|gemDescription|gem description. | |This gem maps to a REST API|
|
||||
|gemHomepage|gem homepage. | |https://openapi-generator.tech|
|
||||
|gemLicense|gem license. | |unlicense|
|
||||
|gemMetadata|gem metadata.| |{}|
|
||||
|gemName|gem name (convention: underscore_case).| |openapi_client|
|
||||
|gemRequiredRubyVersion|gem required Ruby version. | |>= 2.4|
|
||||
|gemSummary|gem summary. | |A ruby wrapper for the REST APIs|
|
||||
|gemVersion|gem version.| |1.0.0|
|
||||
|hideGenerationTimestamp|Hides the generation timestamp when files are generated.| |true|
|
||||
|legacyDiscriminatorBehavior|Set to false for generators with better support for discriminators. (Python, Java, Go, PowerShell, C# have this enabled by default).|<dl><dt>**true**</dt><dd>The mapping in the discriminator includes descendent schemas that allOf inherit from self and the discriminator mapping schemas in the OAS document.</dd><dt>**false**</dt><dd>The mapping in the discriminator includes any descendent schemas that allOf inherit from self, any oneOf schemas, any anyOf schemas, any x-discriminator-values, and the discriminator mapping schemas in the OAS document AND Codegen validates that oneOf and anyOf schemas contain the required discriminator and throws an error if the discriminator is missing.</dd></dl>|true|
|
||||
|library|HTTP library template (sub-template) to use|<dl><dt>**faraday**</dt><dd>Faraday >= 1.0.1 (https://github.com/lostisland/faraday)</dd><dt>**typhoeus**</dt><dd>Typhoeus >= 1.0.1 (https://github.com/typhoeus/typhoeus)</dd></dl>|typhoeus|
|
||||
|library|HTTP library template (sub-template) to use|<dl><dt>**faraday**</dt><dd>Faraday >= 1.0.1 (https://github.com/lostisland/faraday)</dd><dt>**httpx**</dt><dd>HTTPX >= 1.0.0 (https://gitlab.com/os85/httpx)</dd><dt>**typhoeus**</dt><dd>Typhoeus >= 1.0.1 (https://github.com/typhoeus/typhoeus)</dd></dl>|typhoeus|
|
||||
|moduleName|top module name (convention: CamelCase, usually corresponding to gem name).| |OpenAPIClient|
|
||||
|prependFormOrBodyParameters|Add form or body parameters to the beginning of the parameter list.| |false|
|
||||
|sortModelPropertiesByRequiredFlag|Sort model properties to place required parameters before optional parameters.| |true|
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM openjdk:11.0-jre-buster
|
||||
FROM amazoncorretto:17.0.8-alpine3.18
|
||||
|
||||
ADD target/openapi-generator-cli.jar /opt/openapi-generator/modules/openapi-generator-cli/target/openapi-generator-cli.jar
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
<groupId>org.openapitools</groupId>
|
||||
<artifactId>openapi-generator-project</artifactId>
|
||||
<!-- RELEASE_VERSION -->
|
||||
<version>7.0.1</version>
|
||||
<version>7.2.0-SNAPSHOT</version>
|
||||
<!-- /RELEASE_VERSION -->
|
||||
<relativePath>../..</relativePath>
|
||||
</parent>
|
||||
|
||||
@@ -89,6 +89,9 @@ public class ConfigHelp extends OpenApiGeneratorCommand {
|
||||
@Option(name = {"--model-name-mappings"}, title = "model name mappings", description = "displays the model name mappings (none)")
|
||||
private Boolean modelNameMappings;
|
||||
|
||||
@Option(name = {"--enum-name-mappings"}, title = "enum name mappings", description = "displays the enum name mappings (none)")
|
||||
private Boolean enumNameMappings;
|
||||
|
||||
@Option(name = {"--openapi-normalizer"}, title = "openapi normalizer rules", description = "displays the OpenAPI normalizer rules (none)")
|
||||
private Boolean openapiNormalizer;
|
||||
|
||||
@@ -542,6 +545,18 @@ public class ConfigHelp extends OpenApiGeneratorCommand {
|
||||
sb.append(newline);
|
||||
}
|
||||
|
||||
if (Boolean.TRUE.equals(enumNameMappings)) {
|
||||
sb.append(newline).append("ENUM NAME MAPPING").append(newline).append(newline);
|
||||
Map<String, String> map = config.enumNameMapping()
|
||||
.entrySet()
|
||||
.stream()
|
||||
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue, (a, b) -> {
|
||||
throw new IllegalStateException(String.format(Locale.ROOT, "Duplicated options! %s and %s", a, b));
|
||||
}, TreeMap::new));
|
||||
writePlainTextFromMap(sb, map, optIndent, optNestedIndent, "enum name", "Mapped to");
|
||||
sb.append(newline);
|
||||
}
|
||||
|
||||
if (Boolean.TRUE.equals(openapiNormalizer)) {
|
||||
sb.append(newline).append("OPENAPI NORMALIZER RULES").append(newline).append(newline);
|
||||
Map<String, String> map = config.openapiNormalizer()
|
||||
|
||||
@@ -209,6 +209,13 @@ public class Generate extends OpenApiGeneratorCommand {
|
||||
+ " You can also have multiple occurrences of this option.")
|
||||
private List<String> modelNameMappings = new ArrayList<>();
|
||||
|
||||
@Option(
|
||||
name = {"--enum-name-mappings"},
|
||||
title = "enum name mappings",
|
||||
description = "specifies mappings between the enum name and the new name in the format of enum_name=AnotherName,enum_name2=OtherName2."
|
||||
+ " You can also have multiple occurrences of this option.")
|
||||
private List<String> enumNameMappings = new ArrayList<>();
|
||||
|
||||
@Option(
|
||||
name = {"--openapi-normalizer"},
|
||||
title = "OpenAPI normalizer rules",
|
||||
@@ -492,6 +499,7 @@ public class Generate extends OpenApiGeneratorCommand {
|
||||
applyNameMappingsKvpList(nameMappings, configurator);
|
||||
applyParameterNameMappingsKvpList(parameterNameMappings, configurator);
|
||||
applyModelNameMappingsKvpList(modelNameMappings, configurator);
|
||||
applyEnumNameMappingsKvpList(enumNameMappings, configurator);
|
||||
applyOpenAPINormalizerKvpList(openapiNormalizer, configurator);
|
||||
applyTypeMappingsKvpList(typeMappings, configurator);
|
||||
applyAdditionalPropertiesKvpList(additionalProperties, configurator);
|
||||
|
||||
@@ -6,7 +6,7 @@
|
||||
<artifactId>openapi-generator-project</artifactId>
|
||||
<groupId>org.openapitools</groupId>
|
||||
<!-- RELEASE_VERSION -->
|
||||
<version>7.0.1</version>
|
||||
<version>7.2.0-SNAPSHOT</version>
|
||||
<!-- /RELEASE_VERSION -->
|
||||
<relativePath>../..</relativePath>
|
||||
</parent>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user