diff options
Diffstat (limited to 'litestar.spec')
| -rw-r--r-- | litestar.spec | 97 |
1 files changed, 53 insertions, 44 deletions
diff --git a/litestar.spec b/litestar.spec index 38a9720..17a3c84 100644 --- a/litestar.spec +++ b/litestar.spec @@ -1,73 +1,81 @@ -# topdir: litestar-2.25.0 (produced by tar --transform on git clone) -# Build system: hatchling.build via pyproject.toml -# Pure Python package, no C extensions -# Python target: 3.11+ (chroot provides python3 3.11.6) -# - exceptiongroup / importlib-metadata / importlib-resources markers -# (python_version < 3.11 / 3.10 / 3.9) all evaluate False on 3.11 → skipped +# topdir: python-litestar-2.25.0 +# build-system: hatchling (pyproject.toml build-backend = hatchling.build) +# build plan: pyproject (openEuler 24.03 LTS SP4+ supports pyproject-rpm-macros) +# lessons applied: +# - python/framework-companion-package-deps: litestar-htmx already built in user +# COPR project; treated as BuildRequires/Requires (no need to weaken to Recommends). +# - python/pyproject-install-auto-deps-redundancy: pythondistdeps.py auto-generates +# python3.11dist(...) Requires from dist-info/METADATA after pyproject_install, +# so spec intentionally omits hand-written runtime Requires to avoid duplicates. + %global pypi_name litestar Name: python-%{pypi_name} Version: 2.25.0 Release: 1%{?dist} -Summary: Production-ready, highly performant, extensible ASGI API Framework +Summary: Litestar - A production-ready, highly performant, extensible ASGI API Framework License: MIT URL: https://github.com/litestar-org/litestar -Source0: %{url}/archive/v%{version}/%{name}-%{version}.tar.gz +Source0: %{url}/archive/refs/tags/v%{version}/%{name}-%{version}.tar.gz BuildArch: noarch -BuildRequires: python3-devel -BuildRequires: python3-pip -BuildRequires: pyproject-rpm-macros -BuildRequires: python3-hatchling - %description -Litestar is a production-ready, highly performant, extensible ASGI API -framework. It provides comprehensive support for HTTP routing, OpenAPI -schema generation, dependency injection, plugins, templating, authentication, -background tasks, websocket handling, and many other features required for -building modern HTTP and WebSocket APIs in Python. +Litestar is a production-ready, highly performant, extensible ASGI API Framework. +It offers a synchronous and asynchronous API for building REST APIs, WebSocket +endpoints, background tasks, and more, with first-class support for type hints, +dependency injection, OpenAPI schema generation, and plugin extensibility. %package -n python3-%{pypi_name} -Summary: Production-ready, highly performant, extensible ASGI API Framework +Summary: Litestar - A production-ready, highly performant, extensible ASGI API Framework Provides: python-%{pypi_name} Provides: python3dist(%{pypi_name}) = %{version} -Provides: python3-%{pypi_name} = %{version}-%{release} -Requires: python3-anyio >= 3 -Requires: python3-httpx >= 0.22 -Requires: python3-msgspec >= 0.18.2 -Requires: python3-multidict >= 6.0.2 -Requires: python3-polyfactory >= 2.6.3 -Requires: python3-pyyaml -Requires: python3-typing-extensions -Requires: python3-click -Requires: python3-rich >= 13.0.0 -Requires: python3-rich-click -Requires: python3-multipart >= 1.2.0 -Requires: python3-sniffio >= 1.3.1 -Requires: python3-litestar-htmx >= 0.4.0 +Provides: python3.11dist(%{pypi_name}) = %{version} + +# Build backend +BuildRequires: python3-devel +BuildRequires: python3-pip +BuildRequires: pyproject-rpm-macros +BuildRequires: python3-hatchling + +# Runtime deps as BuildRequires (pyproject_build isolation needs importable deps) +BuildRequires: python3-anyio >= 3 +BuildRequires: python3-httpx >= 0.22 +BuildRequires: python3-msgspec >= 0.18.2 +BuildRequires: python3-multidict >= 6.0.2 +BuildRequires: python3-polyfactory >= 2.6.3 +BuildRequires: python3-pyyaml +BuildRequires: python3-typing-extensions +BuildRequires: python3-click +BuildRequires: python3-rich >= 13.0.0 +BuildRequires: python3-rich-click +BuildRequires: python3-multipart >= 1.2.0 +BuildRequires: python3-sniffio >= 1.3.1 +BuildRequires: python3-litestar-htmx >= 0.4.0 +# exceptiongroup only needed for python < 3.11; SP4 ships py3.11 so it is optional, +# kept here for parity with pyproject.toml [project.dependencies]. +BuildRequires: python3-exceptiongroup >= 1.2.2 + +# Runtime Requires intentionally omitted: pythondistdeps.py auto-generates +# python3.11dist(...) Requires from dist-info/METADATA after pyproject_install. %description -n python3-%{pypi_name} -Litestar is a production-ready, highly performant, extensible ASGI API -framework. It provides comprehensive support for HTTP routing, OpenAPI -schema generation, dependency injection, plugins, templating, authentication, -background tasks, websocket handling, and many other features required for -building modern HTTP and WebSocket APIs in Python. +Litestar is a production-ready, highly performant, extensible ASGI API Framework. +It offers a synchronous and asynchronous API for building REST APIs, WebSocket +endpoints, background tasks, and more, with first-class support for type hints, +dependency injection, OpenAPI schema generation, and plugin extensibility. %package help Summary: Development documents and examples for %{pypi_name} -Provides: python3-%{pypi_name}-doc -BuildArch: noarch Requires: python3-%{pypi_name} - +Provides: python3-%{pypi_name}-doc %description help -This package provides documentation and examples for the Litestar ASGI API -framework. +Development documents and examples for %{pypi_name}. %prep -%autosetup -n %{pypi_name}-%{version} -p1 +%autosetup -n %{name}-%{version} -p1 %build @@ -84,6 +92,7 @@ framework. %{python3_sitelib}/litestar/ %{python3_sitelib}/litestar-%{version}*.dist-info/ + %files help %license LICENSE %doc README.md |
