%global _empty_manifest_terminate_build 0 Name: python-fastapi-offline Version: 1.5.3 Release: 1 Summary: FastAPI without reliance on CDNs for docs License: MIT URL: https://github.com/turettn/fastapi_offline Source0: https://mirrors.aliyun.com/pypi/web/packages/83/2f/ca78208f99e06918b707333e0625c7485bea8be52ea1d057a08b0094b7d6/fastapi_offline-1.5.3.linux-x86_64.tar.gz BuildArch: noarch Requires: python3-fastapi Requires: python3-pytest Requires: python3-requests Requires: python3-starlette[full] %description # Overview [![](https://img.shields.io/pypi/v/fastapi-offline.svg)](https://pypi.python.org/pypi/fastapi-offline/) [![Test](https://github.com/turettn/fastapi_offline/actions/workflows/test.yml/badge.svg)](https://github.com/turettn/fastapi_offline/actions/workflows/test.yml) [![codecov](https://codecov.io/gh/turettn/fastapi_offline/branch/main/graph/badge.svg)](https://codecov.io/gh/turettn/fastapi_offline) [FastAPI](https://fastapi.tiangolo.com/) is awesome, but the documentation pages (Swagger or Redoc) all depend on external CDNs, which is problematic if you want to run on disconnected networks. This package includes the required files from the CDN and serves them locally. It also provides a super-simple way to get a FastAPI instance configured to use those files. Under the hood, this simply automates the process described in the official documentation [here](https://fastapi.tiangolo.com/advanced/extending-openapi/#self-hosting-javascript-and-css-for-docs). # Installation You can install this package from PyPi: ```bash pip install fastapi-offline ``` # Example Given the example from the [FastAPI tutorial](https://fastapi.tiangolo.com/tutorial/first-steps/): ```python from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "Hello World"} ``` Simply create a `fastapi_offline.FastAPIOffline` object instead: ```python from fastapi_offline import FastAPIOffline app = FastAPIOffline() @app.get("/") async def root(): return {"message": "Hello World"} ``` Any options passed to `FastAPIOffline()` except `docs_url`, `redoc_url`, `favicon_url`, and `static_url` are passed through to `FastAPI()`. `docs_url` and `redoc_url` are handled by `fastapi-offline`, and use the same syntax as normal `fastapi` library. `static_url` can be used to set the path for the static js/css files, e.g. `static_url=/static-files` (default: `/static-offline-docs`). # Using a custom shortcut icon By default, the FastAPI `favicon.png` is included and used as the shortcut icon on the docs pages. If you want to use a different one, you can specify it with the `favicon_url` argument: ```py app = FastAPIOffline( favicon_url="http://my.cool.site/favicon.png" ) ``` # Licensing * This code is released under the MIT license. * Parts of Swagger are included in this package. The original license ([Apache 2.0](https://swagger.io/license/)) and copyright apply to those files. * Parts of Redoc are included in this package. The original license ([MIT](https://github.com/Redocly/redoc/blob/master/LICENSE)) and copyright apply to those files. * The FastAPI `favicon.png` file is included in this package. The original license ([MIT](https://github.com/Redocly/redoc/blob/master/LICENSE)) and copyright apply to that file. %package -n python3-fastapi-offline Summary: FastAPI without reliance on CDNs for docs Provides: python-fastapi-offline BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-fastapi-offline # Overview [![](https://img.shields.io/pypi/v/fastapi-offline.svg)](https://pypi.python.org/pypi/fastapi-offline/) [![Test](https://github.com/turettn/fastapi_offline/actions/workflows/test.yml/badge.svg)](https://github.com/turettn/fastapi_offline/actions/workflows/test.yml) [![codecov](https://codecov.io/gh/turettn/fastapi_offline/branch/main/graph/badge.svg)](https://codecov.io/gh/turettn/fastapi_offline) [FastAPI](https://fastapi.tiangolo.com/) is awesome, but the documentation pages (Swagger or Redoc) all depend on external CDNs, which is problematic if you want to run on disconnected networks. This package includes the required files from the CDN and serves them locally. It also provides a super-simple way to get a FastAPI instance configured to use those files. Under the hood, this simply automates the process described in the official documentation [here](https://fastapi.tiangolo.com/advanced/extending-openapi/#self-hosting-javascript-and-css-for-docs). # Installation You can install this package from PyPi: ```bash pip install fastapi-offline ``` # Example Given the example from the [FastAPI tutorial](https://fastapi.tiangolo.com/tutorial/first-steps/): ```python from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "Hello World"} ``` Simply create a `fastapi_offline.FastAPIOffline` object instead: ```python from fastapi_offline import FastAPIOffline app = FastAPIOffline() @app.get("/") async def root(): return {"message": "Hello World"} ``` Any options passed to `FastAPIOffline()` except `docs_url`, `redoc_url`, `favicon_url`, and `static_url` are passed through to `FastAPI()`. `docs_url` and `redoc_url` are handled by `fastapi-offline`, and use the same syntax as normal `fastapi` library. `static_url` can be used to set the path for the static js/css files, e.g. `static_url=/static-files` (default: `/static-offline-docs`). # Using a custom shortcut icon By default, the FastAPI `favicon.png` is included and used as the shortcut icon on the docs pages. If you want to use a different one, you can specify it with the `favicon_url` argument: ```py app = FastAPIOffline( favicon_url="http://my.cool.site/favicon.png" ) ``` # Licensing * This code is released under the MIT license. * Parts of Swagger are included in this package. The original license ([Apache 2.0](https://swagger.io/license/)) and copyright apply to those files. * Parts of Redoc are included in this package. The original license ([MIT](https://github.com/Redocly/redoc/blob/master/LICENSE)) and copyright apply to those files. * The FastAPI `favicon.png` file is included in this package. The original license ([MIT](https://github.com/Redocly/redoc/blob/master/LICENSE)) and copyright apply to that file. %package help Summary: Development documents and examples for fastapi-offline Provides: python3-fastapi-offline-doc %description help # Overview [![](https://img.shields.io/pypi/v/fastapi-offline.svg)](https://pypi.python.org/pypi/fastapi-offline/) [![Test](https://github.com/turettn/fastapi_offline/actions/workflows/test.yml/badge.svg)](https://github.com/turettn/fastapi_offline/actions/workflows/test.yml) [![codecov](https://codecov.io/gh/turettn/fastapi_offline/branch/main/graph/badge.svg)](https://codecov.io/gh/turettn/fastapi_offline) [FastAPI](https://fastapi.tiangolo.com/) is awesome, but the documentation pages (Swagger or Redoc) all depend on external CDNs, which is problematic if you want to run on disconnected networks. This package includes the required files from the CDN and serves them locally. It also provides a super-simple way to get a FastAPI instance configured to use those files. Under the hood, this simply automates the process described in the official documentation [here](https://fastapi.tiangolo.com/advanced/extending-openapi/#self-hosting-javascript-and-css-for-docs). # Installation You can install this package from PyPi: ```bash pip install fastapi-offline ``` # Example Given the example from the [FastAPI tutorial](https://fastapi.tiangolo.com/tutorial/first-steps/): ```python from fastapi import FastAPI app = FastAPI() @app.get("/") async def root(): return {"message": "Hello World"} ``` Simply create a `fastapi_offline.FastAPIOffline` object instead: ```python from fastapi_offline import FastAPIOffline app = FastAPIOffline() @app.get("/") async def root(): return {"message": "Hello World"} ``` Any options passed to `FastAPIOffline()` except `docs_url`, `redoc_url`, `favicon_url`, and `static_url` are passed through to `FastAPI()`. `docs_url` and `redoc_url` are handled by `fastapi-offline`, and use the same syntax as normal `fastapi` library. `static_url` can be used to set the path for the static js/css files, e.g. `static_url=/static-files` (default: `/static-offline-docs`). # Using a custom shortcut icon By default, the FastAPI `favicon.png` is included and used as the shortcut icon on the docs pages. If you want to use a different one, you can specify it with the `favicon_url` argument: ```py app = FastAPIOffline( favicon_url="http://my.cool.site/favicon.png" ) ``` # Licensing * This code is released under the MIT license. * Parts of Swagger are included in this package. The original license ([Apache 2.0](https://swagger.io/license/)) and copyright apply to those files. * Parts of Redoc are included in this package. The original license ([MIT](https://github.com/Redocly/redoc/blob/master/LICENSE)) and copyright apply to those files. * The FastAPI `favicon.png` file is included in this package. The original license ([MIT](https://github.com/Redocly/redoc/blob/master/LICENSE)) and copyright apply to that file. %prep %autosetup -n fastapi_offline.linux-x86_64-1.5.3 %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-fastapi-offline -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Thu Jun 08 2023 Python_Bot - 1.5.3-1 - Package Spec generated