%global _empty_manifest_terminate_build 0 Name: python-swagger-codegen Version: 0.1.31 Release: 1 Summary: Generate API clients by parsing Swagger definitions License: MIT URL: https://github.com/asyncee/swagger_codegen Source0: https://mirrors.nju.edu.cn/pypi/web/packages/77/95/3019581fec32e932e701d1f965fb4ead814dbfffc7c086037c2b1e8f6e7d/swagger-codegen-0.1.31.tar.gz BuildArch: noarch Requires: python3-pydantic Requires: python3-multidict Requires: python3-jinja2 Requires: python3-click Requires: python3-typer Requires: python3-toml Requires: python3-inflection Requires: python3-schemathesis Requires: python3-boltons Requires: python3-rich Requires: python3-httpx Requires: python3-aiohttp Requires: python3-requests %description ## Swagger codegen for Python ![Continuous Integration](https://github.com/asyncee/swagger_codegen/workflows/Continuous%20Integration/badge.svg) ### Installation ```bash pip install swagger-codegen ``` ### Swagger version Currently, only OpenApi 3.x (aka Swagger 3) is supported. ### Usage example ``` # Generate Petstore Api client using 'petstore' package name. swagger_codegen generate https://petstore3.swagger.io/api/v3/openapi.json petstore python Python 3.8.1 (default, Jan 23 2020, 13:58:52) [Clang 11.0.0 (clang-1100.0.33.16)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> from petstore import new_client, Configuration >>> from swagger_codegen.api.adapter.requests import RequestsAdapter >>> from petstore.apis.user.createUser import User >>> client = new_client(RequestsAdapter(), Configuration(host="http://petstore3.swagger.io")) >>> pets = client.pet.findPetsByStatus() >>> print(pets) [Pet(category=Category(id=1, name='Dogs'), id=69, name='aHldog', photoUrls=['string'], status='available',...] ``` You can see [example source code](https://github.com/asyncee/swagger_codegen/tree/master/example) for [PetStore](http://petstore3.swagger.io/) Api in example directory of a project. You can test example client with following command: ```bash # Run from project directory. python -m example.petstore_example ``` ### Code generators (also known as renderers) There are two code generator strategies in project: 1. Render client as usual python package via `PackageRenderer` 2. Render client as installable python package via `InstallablePackageRenderer` You can choose what renderer to use by specifying `renderer` key in `.swagger-codegen.toml` file. Please see `.swagger-codegen.toml.example` for allowed values. ### Known issues - Content of generated files differs run-to-run because each time functions or data transfer objects ordered differently. Functionally clients stay the same, but each time the code is generated there are a large diff generated by git. - Not fully Openapi compliant: the project was built to fulfill my personal needs: a support for FastAPI-generated schemas, and I needed this feature quickly, that is why there are too many large dependencies (`schemathesis`) and incompatibilities. Anyway, I'm looking forward to fixing this issues by time. - There are may be delays in reaction to issues due to small amount of free time (however PR's with tests are merged asap). ### Work in progress Though library gives nice results for generated API, it is still in development. Some tests are missing. API is a subject to change until stable release. Anyway backward compatibility will be kept as much as possible. The code is not optimized yet and mostly dirty because the project was born as a holiday prototype. Also `example` directory may be out of sync with actual generated code. ### Contributors You can see all people who helped this project [at the contributors page](https://github.com/asyncee/swagger_codegen/graphs/contributors) %package -n python3-swagger-codegen Summary: Generate API clients by parsing Swagger definitions Provides: python-swagger-codegen BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-swagger-codegen ## Swagger codegen for Python ![Continuous Integration](https://github.com/asyncee/swagger_codegen/workflows/Continuous%20Integration/badge.svg) ### Installation ```bash pip install swagger-codegen ``` ### Swagger version Currently, only OpenApi 3.x (aka Swagger 3) is supported. ### Usage example ``` # Generate Petstore Api client using 'petstore' package name. swagger_codegen generate https://petstore3.swagger.io/api/v3/openapi.json petstore python Python 3.8.1 (default, Jan 23 2020, 13:58:52) [Clang 11.0.0 (clang-1100.0.33.16)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> from petstore import new_client, Configuration >>> from swagger_codegen.api.adapter.requests import RequestsAdapter >>> from petstore.apis.user.createUser import User >>> client = new_client(RequestsAdapter(), Configuration(host="http://petstore3.swagger.io")) >>> pets = client.pet.findPetsByStatus() >>> print(pets) [Pet(category=Category(id=1, name='Dogs'), id=69, name='aHldog', photoUrls=['string'], status='available',...] ``` You can see [example source code](https://github.com/asyncee/swagger_codegen/tree/master/example) for [PetStore](http://petstore3.swagger.io/) Api in example directory of a project. You can test example client with following command: ```bash # Run from project directory. python -m example.petstore_example ``` ### Code generators (also known as renderers) There are two code generator strategies in project: 1. Render client as usual python package via `PackageRenderer` 2. Render client as installable python package via `InstallablePackageRenderer` You can choose what renderer to use by specifying `renderer` key in `.swagger-codegen.toml` file. Please see `.swagger-codegen.toml.example` for allowed values. ### Known issues - Content of generated files differs run-to-run because each time functions or data transfer objects ordered differently. Functionally clients stay the same, but each time the code is generated there are a large diff generated by git. - Not fully Openapi compliant: the project was built to fulfill my personal needs: a support for FastAPI-generated schemas, and I needed this feature quickly, that is why there are too many large dependencies (`schemathesis`) and incompatibilities. Anyway, I'm looking forward to fixing this issues by time. - There are may be delays in reaction to issues due to small amount of free time (however PR's with tests are merged asap). ### Work in progress Though library gives nice results for generated API, it is still in development. Some tests are missing. API is a subject to change until stable release. Anyway backward compatibility will be kept as much as possible. The code is not optimized yet and mostly dirty because the project was born as a holiday prototype. Also `example` directory may be out of sync with actual generated code. ### Contributors You can see all people who helped this project [at the contributors page](https://github.com/asyncee/swagger_codegen/graphs/contributors) %package help Summary: Development documents and examples for swagger-codegen Provides: python3-swagger-codegen-doc %description help ## Swagger codegen for Python ![Continuous Integration](https://github.com/asyncee/swagger_codegen/workflows/Continuous%20Integration/badge.svg) ### Installation ```bash pip install swagger-codegen ``` ### Swagger version Currently, only OpenApi 3.x (aka Swagger 3) is supported. ### Usage example ``` # Generate Petstore Api client using 'petstore' package name. swagger_codegen generate https://petstore3.swagger.io/api/v3/openapi.json petstore python Python 3.8.1 (default, Jan 23 2020, 13:58:52) [Clang 11.0.0 (clang-1100.0.33.16)] on darwin Type "help", "copyright", "credits" or "license" for more information. >>> from petstore import new_client, Configuration >>> from swagger_codegen.api.adapter.requests import RequestsAdapter >>> from petstore.apis.user.createUser import User >>> client = new_client(RequestsAdapter(), Configuration(host="http://petstore3.swagger.io")) >>> pets = client.pet.findPetsByStatus() >>> print(pets) [Pet(category=Category(id=1, name='Dogs'), id=69, name='aHldog', photoUrls=['string'], status='available',...] ``` You can see [example source code](https://github.com/asyncee/swagger_codegen/tree/master/example) for [PetStore](http://petstore3.swagger.io/) Api in example directory of a project. You can test example client with following command: ```bash # Run from project directory. python -m example.petstore_example ``` ### Code generators (also known as renderers) There are two code generator strategies in project: 1. Render client as usual python package via `PackageRenderer` 2. Render client as installable python package via `InstallablePackageRenderer` You can choose what renderer to use by specifying `renderer` key in `.swagger-codegen.toml` file. Please see `.swagger-codegen.toml.example` for allowed values. ### Known issues - Content of generated files differs run-to-run because each time functions or data transfer objects ordered differently. Functionally clients stay the same, but each time the code is generated there are a large diff generated by git. - Not fully Openapi compliant: the project was built to fulfill my personal needs: a support for FastAPI-generated schemas, and I needed this feature quickly, that is why there are too many large dependencies (`schemathesis`) and incompatibilities. Anyway, I'm looking forward to fixing this issues by time. - There are may be delays in reaction to issues due to small amount of free time (however PR's with tests are merged asap). ### Work in progress Though library gives nice results for generated API, it is still in development. Some tests are missing. API is a subject to change until stable release. Anyway backward compatibility will be kept as much as possible. The code is not optimized yet and mostly dirty because the project was born as a holiday prototype. Also `example` directory may be out of sync with actual generated code. ### Contributors You can see all people who helped this project [at the contributors page](https://github.com/asyncee/swagger_codegen/graphs/contributors) %prep %autosetup -n swagger-codegen-0.1.31 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-swagger-codegen -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Tue May 30 2023 Python_Bot - 0.1.31-1 - Package Spec generated