Compare commits

...

4 Commits

5 changed files with 563 additions and 79 deletions

BIN
fastapi-0.115.8.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

BIN
fastapi-0.95.1.tar.gz (Stored with Git LFS)

Binary file not shown.

View File

@@ -1,3 +1,455 @@
-------------------------------------------------------------------
Fri Feb 7 11:00:37 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>
- Update to 0.115.8
* Fix `OAuth2PasswordRequestForm` and `OAuth2PasswordRequestFormStrict` fixed `grant_type` "password" RegEx.
* Simplify tests for body_multiple_params.
* Move duplicated code portion to a static method in the `APIKeyBase` super class.
* Simplify tests for request_files.
* Change the word "unwrap" to "unpack" in `docs/en/docs/tutorial/extra-models.md`.
* Update Request Body's `tutorial002` to deal with `tax=0` case.
* Update FastAPI People - Experts.
* Add Japanese translation for `docs/ja/docs/environment-variables.md`.
* Add Russian translation for `docs/ru/docs/advanced/async-tests.md`.
* Update Russian translation for `docs/ru/docs/tutorial/dependencies/dependencies-in-path-operation-decorators.md`.
* Add Russian translation for `docs/ru/docs/tutorial/bigger-applications.md`.
* Add support for Python 3.13.
* Upgrade AnyIO max version for tests, new range: `>=3.2.1,<5.0.0`.
* Update Sponsors badges.
* Fix `notify_translations.py` empty env var handling for PR label events vs workflow_dispatch.
* Refactor and move `scripts/notify_translations.py`, no need for a custom GitHub Action.
* Update FastAPI People Experts script, refactor and optimize data fetching to handle rate limits.
* Bump pypa/gh-action-pypi-publish from 1.12.3 to 1.12.4.
- from version 0.115.7
* Upgrade `python-multipart` to >=0.0.18.
* Bump Starlette to allow up to 0.45.0: `>=0.40.0,<0.46.0`.
* Upgrade `jinja2` to >=3.1.5.
* Simplify tests for websockets.
* Simplify tests for request_form_models.
* Simplify tests for separate_openapi_schemas.
* Simplify tests for security.
* Simplify tests for schema_extra_example.
* Simplify tests for request_model.
* Simplify tests for request_forms_and_files.
* Simplify tests for request_forms.
* Simplify tests for path_query_params.
* Simplify tests for path_operation_configurations.
* Simplify tests for header_params.
* Simplify tests for extra_models.
* Simplify tests for extra_data_types.
* Simplify tests for cookie_params.
* Simplify tests for dependencies.
* Simplify tests for body_updates.
* Simplify tests for body_nested_models.
* Simplify tests for body_multiple_params.
* Simplify tests for body_fields.
* Simplify tests for body.
* Simplify tests for bigger_applications.
* Simplify tests for background_tasks.
* Simplify tests for additional_status_codes.
* Update Strawberry integration docs.
* Remove unused Peewee tutorial files.
* Update image in body-nested-model docs.
* Update `fastapi-cli` UI examples in docs.
* Add new GitHub Action to update contributors, translators, and translation reviewers.
* Fix typo in `docs/en/docs/virtual-environments.md`.
* Fix error in `docs/en/docs/contributing.md`.
* Minor corrections in `docs/en/docs/tutorial/sql-databases.md`.
* Update includes in `docs/ru/docs/tutorial/query-param-models.md`.
* Fix typo in README installation instructions.
* Update docs for `fastapi-cli`.
* Update Portuguese Translation for `docs/pt/docs/tutorial/request-forms.md`.
* Update Portuguese translation for `docs/pt/docs/advanced/settings.md`.
* Add Portuguese translation for `docs/pt/docs/tutorial/security/oauth2-jwt.md`.
* Add Indonesian translation for `docs/id/docs/index.md`.
* Add Indonesian translation for `docs/id/docs/tutorial/static-files.md`.
* Add Portuguese translation for `docs/pt/docs/tutorial/security/get-current-user.md`.
* Remove Wrong Portuguese translations location for `docs/pt/docs/advanced/benchmarks.md`.
* Update Portuguese translations.
* Update Russian translation for `docs/ru/docs/tutorial/security/first-steps.md`.
* Delete unnecessary backspace in `docs/ja/docs/tutorial/path-params-numeric-validations.md`.
* Update Chinese translation for `docs/zh/docs/fastapi-cli.md`.
* Add new Spanish translations for all docs with new LLM-assisted system using PydanticAI.
* Update existing Spanish translations using the new LLM-assisted system using PydanticAI.
* Update Chinese translation for `docs/zh/docs/advanced/security/oauth2-scopes.md`.
* Add Indonesian translation for `docs/id/docs/tutorial/path-params.md`.
* Add Korean translation for `docs/ko/docs/tutorial/sql-databases.md`.
* Update Chinese translation for `docs/zh/docs/async.md`.
* Add Chinese translation for `docs/zh/docs/advanced/openapi-webhooks.md`.
* Add Chinese translation for `docs/zh/docs/advanced/async-tests.md`.
* Add Ukrainian translation for `docs/uk/docs/fastapi-cli.md`.
* Add Chinese translation for `docs/zh/docs/advanced/events.md`.
* Add Russian translation for `/docs/ru/docs/tutorial/sql-databases.md`.
* Update Chinese translation for `docs/zh/docs/advanced/testing-dependencies.md`.
* Update Traditional Chinese translation for `docs/zh-hant/docs/tutorial/index.md`.
* Add Chinese translation for `docs/zh/docs/tutorial/sql-databases.md`.
* Update Chinese translation for `docs/zh/docs/tutorial/query-params-str-validations.md`.
* Add Chinese translation for `docs/zh/docs/tutorial/header-param-models.md`.
* Update Chinese translation for `docs/zh/docs/tutorial/path-params.md`.
* Update Chinese translation for `docs/zh/docs/tutorial/first-steps.md`.
* Update Russian translation for `docs/ru/docs/deployment/docker.md`.
* Add Portuguese translation for `docs/pt/docs/advanced/generate-clients.md`.
* Add Indonesian translation for `docs/id/docs/tutorial/first-steps.md`.
* Add Chinese translation for `docs/zh/docs/tutorial/cookie-param-models.md`.
* Add Chinese translation for `docs/zh/docs/tutorial/request-form-models.md`.
* Add Russian translation for `docs/ru/docs/virtual-environments.md`.
* Add Korean translation for `docs/ko/docs/tutorial/testing.md`.
* Add Korean translation for `docs/ko/docs/advanced/async-test.md`.
* Add Russian translation for `docs/ru/docs/tutorial/security/oauth2-jwt.md`.
* Add Russian translation for `docs/ru/docs/tutorial/security/simple-oauth2.md`.
* Add Russian translation for `docs/ru/docs/tutorial/security/get-current-user.md`.
* Add Traditional Chinese translation for `docs/zh-hant/docs/features.md`.
* Add Traditional Chinese translation for `docs/zh-hant/docs/virtual-environments.md`.
* Add Korean translation for `docs/ko/docs/advanced/templates.md`.
* Add Russian translation for `docs/ru/docs/fastapi-cli.md`.
* Add Korean translation for `docs/ko/docs/tutorial/cookie-param-models.md`.
* Add Korean translation for `docs/ko/docs/tutorial/header-param-models.md`.
* Add Korean translation for `docs/ko/docs/tutorial/request-form-models.md`.
* Add Korean translation for `docs/ko/docs/tutorial/request-forms.md`.
* Add Korean translation for `docs/ko/docs/resources/index.md`.
* Add Korean translation for `docs/ko/docs/how-to/configure-swagger-ui.md`.
* Add Korean translation to `docs/ko/docs/advanced/additional-status-codes.md`.
* Add Traditional Chinese translation for `docs/zh-hant/docs/tutorial/first-steps.md`.
* Add Pydantic 2 trove classifier.
* Update FastAPI People - Sponsors.
* Refactor FastAPI People Sponsors to use 2 tokens.
* Update token for FastAPI People - Sponsors.
* Add independent CI automation for FastAPI People - Sponsors.
* Add retries to Smokeshow.
* Update Speakeasy sponsor graphic.
* Update FastAPI GitHub topic repositories.
* Add script for GitHub Topic Repositories and update External Links.
* Update FastAPI People - Contributors and Translators.
* Bump markdown-include-variants from 0.0.3 to 0.0.4.
* Bump inline-snapshot from 0.14.0 to 0.18.1.
* Bump mkdocs-macros-plugin from 1.0.5 to 1.3.7.
* Add internal scripts to generate language translations with PydanticAI, include Spanish prompt.
* Bump astral-sh/setup-uv from 4 to 5.
* Update sponsors: rename CryptAPI to BlockBee.
* Bump pypa/gh-action-pypi-publish from 1.12.2 to 1.12.3.
* Bump types-ujson from 5.7.0.1 to 5.10.0.20240515.
* Bump black from 24.3.0 to 24.10.0.
* Bump inline-snapshot from 0.13.0 to 0.14.0.
* Bump dirty-equals from 0.6.0 to 0.8.0.
* Bump cloudflare/wrangler-action from 3.12 to 3.13.
* Bump astral-sh/setup-uv from 3 to 4.
* Remove duplicate actions/checkout in `notify-translations.yml`.
* Update team members.
* Update sponsors: remove Codacy.
- Refresh remove-classifiers.patch
-------------------------------------------------------------------
Thu Dec 12 14:51:37 UTC 2024 - Ben Greiner <code@bnavigator.de>
- Skip a test because httpx 0.28 cosmetically changed the format
of a body response. Note that fastapi technically does not yet
support httpx 0.28 upstream.
-------------------------------------------------------------------
Thu Dec 5 14:49:59 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 0.115.6:
* Preserve traceback when an exception is raised in sync
dependency with `yield`. PR #5823 by @sombek.
* Update tests and internals for compatibility with Pydantic
>=2.10. PR #12971 by @tamird.
-------------------------------------------------------------------
Thu Nov 21 08:52:11 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 0.115.5:
* Update internal checks to support Pydantic 2.10.
* Fix error in `docs/en/docs/tutorial/middleware.md`.
- update to 0.115.4:
* Update logic to import and check `python-multipart` for
compatibility with newer version.
- update to 0.115.3:
* Upgrade Starlette to `>=0.40.0,<0.42.0`.
* Fix broken link in docs.
- drop allow-new-starlette.patch (obsolete)
-------------------------------------------------------------------
Thu Nov 7 09:16:23 UTC 2024 - Nico Krapp <nico.krapp@suse.com>
- disable PendingDeprecatingWarning
-------------------------------------------------------------------
Fri Oct 18 03:23:50 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 0.115.2:
* Upgrade Starlette to >=0.37.2,<0.41.0.
* Fix openapi generation with responses kwarg.
* Remove Required shadowing from fastapi using Pydantic v2.
* Add support for Pydantic models for parameters using Query, Cookie, Header
- Add patch allow-new-starlette.patch.
-------------------------------------------------------------------
Fri Sep 20 08:05:32 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 0.114.2:
* Fix form field regression with alias.
* Improve performance in request body parsing with a cache for internal
model fields.
* Add support for Pydantic models in Form parameters.
* Fix allow_inf_nan option for Param and Body classes.
* Ensure that app.include_router merges nested lifespans.
* Allow Starlette 0.38.x, update the pin to >=0.37.2,<0.39.0
- Drop patch allow-starlette-0.38.patch, included upstream.
-------------------------------------------------------------------
Wed Aug 14 02:13:46 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Add patch allow-starlette-0.38.patch:
* Allow starlette 0.38.
-------------------------------------------------------------------
Thu Aug 8 09:01:36 UTC 2024 - Daniel Garcia <daniel.garcia@suse.com>
- update to 0.112.0:
* Add support for pip install "fastapi[standard]" with standard
dependencies and python -m fastapi
- version 0.111.1:
* Remove orjson and ujson from default dependencies. These
dependencies are still installed when you install with pip install
"fastapi[all]"
* Restored Swagger-UI links to use the latest version possible
- version 0.111.0:
* Add FastAPI CLI, the new fastapi command
* Add configs and setup for fastapi-slim including optional extras
fastapi-slim[standard], and fastapi including by default the same
standard extras
-------------------------------------------------------------------
Sat Apr 20 20:50:12 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 0.110.2:
* Fix support for query parameters with list types, handle
JSON encoding Pydantic `UndefinedType`
* Simplify Pydantic configs in OpenAPI models in
`fastapi/openapi/models.py`.
* Add support for Pydantic's 2.7 new deprecated Field
parameter, remove URL from validation errors response.
- update to 0.110.1:
* Fix parameterless `Depends()` with generics.
* Update mypy.
* Simplify string format with f-strings in
`fastapi/applications.py`.
* Upgrade Starlette to >=0.37.2,<0.38.0, remove Starlette
filterwarning for internal tests. PR #11266 by @nothielf.
-------------------------------------------------------------------
Mon Mar 11 03:28:17 UTC 2024 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 0.110.0:
* Fix unhandled growing memory for internal server errors, refactor
dependencies with yield and except to require raising again as in
regular Python.
- Switch to pydantic version 2 by pulling in pydantic-settings.
-------------------------------------------------------------------
Tue Feb 6 14:19:32 UTC 2024 - Dirk Müller <dmueller@suse.com>
- update to 0.109.1 [bsc#1219610] CVE-2024-24762:
* Upgrade minimum version of `python-multipart` to `>=0.0.7`
to fix a vulnerability when using form data with a ReDos
attack. You can also simply upgrade `python-multipart`.
* Read more in the advisory: Content-Type Header ReDoS.
* Include HTTP 205 in status codes with no body.
* Fix broken link in `docs/tutorial/sql-databases.md` in
several languages.
* Remove broken links from `external_links.yml`.
* Update template docs with more info about `url_for`. PR
#5937 by @EzzEddin.
* Update usage of Token model in security docs.
* Update highlighted line in `docs/en/docs/tutorial/bigger-
applications.md`.
* Add External Link: Explore How to Effectively Use JWT With
FastAPI.
* Add hyperlink to `docs/en/docs/tutorial/static-files.md`.
* Add External Link: Instrument a FastAPI service adding
tracing with OpenTelemetry and send/show traces in Grafana
Tempo.
* Review and rewording of `en/docs/contributing.md`.
* Add External Link: ML serving and monitoring with FastAPI
and Evidently.
* Reword in docs, from "have in mind" to "keep in mind".
* Add External Link: Talk by Jeny Sadadia.
* Add location info to `tutorial/bigger-applications.md`.
-------------------------------------------------------------------
Sat Jan 13 20:37:39 UTC 2024 - Ben Greiner <code@bnavigator.de>
- Update to 0.109.0
* Add support for Python 3.12. PR #10666 by @Jamim.
* Upgrade Starlette to >=0.35.0,<0.36.0. PR #10938 by @tiangolo.
* Translation updates
-------------------------------------------------------------------
Wed Dec 27 09:43:26 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 0.108.0:
* Upgrade Starlette to `>=0.29.0,<0.33.0`, update docs and
usage of templates with new Starlette arguments.
-------------------------------------------------------------------
Thu Dec 14 10:14:31 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 0.105.0:
* Add support for multiple Annotated annotations, e.g.
`Annotated[str, Field(), Query()]`.
* Remove unused NoneType.
* Tweak default suggested configs for generating clients.
-------------------------------------------------------------------
Tue Nov 7 14:13:47 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 0.104.1:
* Pin Swagger UI version to 5.9.0 temporarily to handle a bug
crashing it in 5.9.1.
* Update data structure and render for external-links.
* Fix link to SPDX license identifier in
`docs/en/docs/tutorial/metadata.md`.
* Update example validation error from Pydantic v1 to match
Pydantic v2 in `docs/en/docs/tutorial/path-params.md`.
* Fix typos in emoji docs and in some source examples.
* Fix typo in `docs/en/docs/reference/dependencies.md`.
* Fix typos and rewordings in `docs/en/docs/tutorial/body-
nested-models.md`.
* Update docs, remove references to removed
`pydantic.Required` in `docs/en/docs/tutorial/query-params-
str-validations.md`.
* Fix typo in `docs/en/docs/reference/index.md`.
* Update Pydantic links to dotenv support.
* Update links in `docs/en/docs/async.md` and
`docs/zh/docs/async.md` to make them relative.
* Fix links in `docs/em/docs/async.md`.
* Fix typo in `docs/em/docs/index.md`
-------------------------------------------------------------------
Thu Oct 19 11:21:33 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.104.0
* Add reference (code API) docs with PEP 727, add subclass
with custom docstrings for BackgroundTasks, refactor docs structure.
- disable test_dependency_gets_exception -> https://github.com/tiangolo/fastapi/discussions/9934
-------------------------------------------------------------------
Sun Oct 1 15:35:20 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.103.2
* support Pydantic2 2.4
-------------------------------------------------------------------
Tue Sep 26 07:23:15 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- update to 0.103.1
* dd support for openapi_examples in all FastAPI parameters.
* Refactor tests for new Pydantic 2.2.1
* Add ResponseValidationError printable details, to show up in server error logs.
* Replace MultHostUrl to AnyUrl for compatibility with older versions of Pydantic v1.
* Support for Pydantic v2
-------------------------------------------------------------------
Sun Jun 25 17:54:32 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 0.98.0:
* Allow disabling `redirect_slashes` at the FastAPI app
level.
* Update `Annotated` notes in `docs/en/docs/tutorial/schema-
extra-example.md`. PR #9620 by @Alexandrhub.
* Fix typo `Annotation` -> `Annotated` in
`docs/en/docs/tutorial/query-params-str-validations.md`.
* Use in memory database for testing SQL in docs.
* Add Russian translation for
`docs/ru/docs/tutorial/metadata.md`.
* Fix typo in Spanish translation for
`docs/es/docs/tutorial/first-steps.md`.
* Add Russian translation for `docs/tutorial/path-operation-
configuration.md`.
* Add Chinese translation for
`docs/zh/docs/advanced/security/index.md`.
* Add Chinese translations for
`docs/zh/docs/advanced/settings.md`.
* Add Chinese translations for
`docs/zh/docs/advanced/websockets.md`.
* Add Chinese translation for
`docs/zh/docs/tutorial/testing.md`.
* Add Russian translation for `docs/tutorial/extra-
models.md`.
* Add Russian translation for `docs/tutorial/cors.md`.
* Add Polish translation for `docs/pl/docs/features.md`.
* Add Russian translation for `docs/ru/docs/tutorial/body-
nested-models.md`.
-------------------------------------------------------------------
Tue Jun 20 10:11:51 UTC 2023 - David Anes <david.anes@suse.com>
- update to 0.97.0:
* Features
- Add support for dependencies in WebSocket routes.
- Add exception handler for WebSocketRequestValidationError
(which also allows to override it).
* Refactors
- Upgrade and fully migrate to Ruff, remove isort, includes a
couple of tweaks suggested by the new version of Ruff.
- Update internal type annotations and upgrade mypy.
- Simplify AsyncExitStackMiddleware as without Python 3.6
AsyncExitStack is always available.
* Upgrades
- Upgrade Black.
-------------------------------------------------------------------
Sun Jun 11 11:52:48 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 0.96.1:
* Fix `HTTPException` header type annotations.
* Fix OpenAPI model fields int validations, `gte` to `ge`.
* Update minimum version of Pydantic to >=1.7.4.
-------------------------------------------------------------------
Mon Jun 5 13:26:32 UTC 2023 - David Anes <david.anes@suse.com>
- Update to version 0.96.0:
* Features
- Update create_cloned_field to use a global cache and improve
startup performance.
* Docs
- Update Deta deployment tutorial for compatibility with Deta
Space.
- Fix typo in Deta deployment tutorial.
* Translations
- Add Russian translation for docs/tutorial/body.md.
- Add Russian translation for docs/ru/docs/tutorial/static-files.md.
- Add Russian translation for docs/ru/docs/tutorial/query-params.md.
- Add Russian translation for docs/ru/docs/tutorial/first-steps.md.
- Add Russian translation for docs/ru/docs/tutorial/debugging.md.
- Add Russian translation for docs/ru/docs/tutorial/path-params.md.
- Add Chinese translation for docs/zh/docs/tutorial/static-files.md.
- Update Spanish translation including new illustrations in docs/es/docs/async.md.
- Add Russian translation for docs/ru/docs/tutorial/path-params-numeric-validations.md.
- Add Russian translation for docs/ru/docs/deployment/concepts.md.
- Add Russian translation for docs/ru/docs/tutorial/body-multiple-params.md.
-------------------------------------------------------------------
Wed May 17 07:38:30 UTC 2023 - David Anes <david.anes@suse.com>
- Update to version 0.95.2:
* Upgrade Starlette version to >=0.27.0 for a security release.
- Translations
* Add Portuguese translation for docs/pt/docs/advanced/events.md
* Add Russian translation for docs/ru/docs/deployment/manually.md
* Add setup for translations to Lao
* Add Russian translation for docs/ru/docs/tutorial/testing.md
* Add Russian translation for docs/ru/docs/deployment/https.md
* Fix command to install requirements in Windows.
* Add French translation for docs/fr/docs/advanced/response-directly.m*.
* Initiate Czech translation setup.
* Fix typo in Portuguese docs for docs/pt/docs/index.md
* Add Russian translation for docs/ru/docs/tutorial/response-status-co*.md
------------------------------------------------------------------- -------------------------------------------------------------------
Sat May 6 15:45:38 UTC 2023 - Dirk Müller <dmueller@suse.com> Sat May 6 15:45:38 UTC 2023 - Dirk Müller <dmueller@suse.com>

View File

@@ -1,7 +1,7 @@
# #
# spec file for package python-fastapi # spec file for package python-fastapi
# #
# Copyright (c) 2023 SUSE LLC # Copyright (c) 2025 SUSE LLC
# #
# All modifications and additions to the file contributed by third parties # All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed # remain the property of their copyright owners, unless otherwise agreed
@@ -18,8 +18,9 @@
# Keep extra test requirements out of Ring1 # Keep extra test requirements out of Ring1
%bcond_with ringdisabled %bcond_with ringdisabled
%{?sle15_python_module_pythons}
Name: python-fastapi Name: python-fastapi
Version: 0.95.1 Version: 0.115.8
Release: 0 Release: 0
Summary: FastAPI framework Summary: FastAPI framework
License: MIT License: MIT
@@ -29,30 +30,40 @@ Source: https://files.pythonhosted.org/packages/source/f/fastapi/fastapi
Patch0: remove-classifiers.patch Patch0: remove-classifiers.patch
BuildRequires: %{python_module hatchling} BuildRequires: %{python_module hatchling}
BuildRequires: %{python_module pip} BuildRequires: %{python_module pip}
BuildRequires: %{python_module pydantic >= 1.8.2} BuildRequires: %{python_module pydantic-settings >= 2.0.0}
BuildRequires: %{python_module starlette >= 0.22.0} BuildRequires: %{python_module starlette >= 0.40.0 with %python-starlette < 0.46.0}
BuildRequires: %{python_module typing_extensions >= 4.8.0}
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: python-rpm-macros BuildRequires: python-rpm-macros
Requires: python-pydantic >= 1.8.2 Requires: python-pydantic >= 1.8.2
Requires: python-starlette >= 0.24.0 Requires: python-typing_extensions >= 4.8.0
Requires: (python-starlette >= 0.40.0 with python-starlette < 0.46.0)
Requires(post): update-alternatives
Requires(postun): update-alternatives
BuildArch: noarch BuildArch: noarch
# SECTION test requirements # SECTION test requirements
BuildRequires: %{python_module pytest} BuildRequires: %{python_module pdm-backend}
BuildRequires: %{python_module Flask >= 1.1.2} BuildRequires: %{python_module Flask >= 1.1.2}
BuildRequires: %{python_module PyJWT}
BuildRequires: %{python_module PyYAML >= 5.3.1} BuildRequires: %{python_module PyYAML >= 5.3.1}
BuildRequires: %{python_module SQLAlchemy}
BuildRequires: %{python_module anyio >= 3.2.1} BuildRequires: %{python_module anyio >= 3.2.1}
BuildRequires: %{python_module coverage}
BuildRequires: %{python_module dirty-equals}
BuildRequires: %{python_module httpx >= 0.23.0} BuildRequires: %{python_module httpx >= 0.23.0}
BuildRequires: %{python_module python-multipart >= 0.0.5} BuildRequires: %{python_module pytest}
BuildRequires: %{python_module sqlalchemy >= 1.3.18 with %python-sqlalchemy < 2.0} BuildRequires: %{python_module python-multipart >= 0.0.18}
BuildRequires: %{python_module trio} BuildRequires: %{python_module trio}
%if !%{with ringdisabled} %if !%{with ringdisabled}
BuildRequires: %{python_module aiosqlite} BuildRequires: %{python_module aiosqlite}
BuildRequires: %{python_module databases >= 0.3.2} BuildRequires: %{python_module databases >= 0.3.2}
BuildRequires: %{python_module email-validator >= 1.1.1} BuildRequires: %{python_module email-validator >= 1.1.1}
BuildRequires: %{python_module inline-snapshot}
BuildRequires: %{python_module orjson >= 3.2.1} BuildRequires: %{python_module orjson >= 3.2.1}
BuildRequires: %{python_module passlib} BuildRequires: %{python_module passlib}
BuildRequires: %{python_module peewee >= 3.13.0} BuildRequires: %{python_module peewee >= 3.13.0}
BuildRequires: %{python_module python-jose >= 3.3} BuildRequires: %{python_module python-jose >= 3.3}
BuildRequires: %{python_module sqlmodel}
BuildRequires: %{python_module ujson >= 5.6} BuildRequires: %{python_module ujson >= 5.6}
%endif %endif
# /SECTION # /SECTION
@@ -69,15 +80,27 @@ Python FastAPI framework.
%install %install
%pyproject_install %pyproject_install
%python_clone -a %{buildroot}/%{_bindir}/fastapi
%python_expand %fdupes %{buildroot}%{$python_sitelib} %python_expand %fdupes %{buildroot}%{$python_sitelib}
%check %check
# more warnings as expected # more warnings as expected
donttest="test_warn_duplicate_operation_id" donttest="test_warn_duplicate_operation_id"
# fails because of changed (cosmetic) body format in httpx 0.28 (technically not suppoerted yet upstream)
donttest+=" or test_exception_handler_body_access"
# python-fastapi-cli packages doesn't exists in openSUSE
donttest+=" or test_fastapi_cli"
donttest+=" or test_openapi"
%if %{with ringdisabled} %if %{with ringdisabled}
ignorefiles="$ignorefiles --ignore tests/test_default_response_class.py" ignorefiles="$ignorefiles --ignore tests/test_default_response_class.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_async_sql_databases/test_tutorial001.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_async_sql_databases/test_tutorial001.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_custom_response/test_tutorial009c.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_custom_response/test_tutorial009c.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_cookie_param_models/test_tutorial001.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_cookie_param_models/test_tutorial002.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_header_param_models/test_tutorial001.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_header_param_models/test_tutorial002.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_query_param_models/test_tutorial001.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_query_param_models/test_tutorial002.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003_py310.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003_py310.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005.py"
@@ -86,6 +109,8 @@ ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutori
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005_an.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005_an.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005_an_py39.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005_an_py39.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005_an_py310.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005_an_py310.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_sql_databases/test_tutorial001.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_sql_databases/test_tutorial002.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_sql_databases_peewee" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_sql_databases_peewee"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003_01.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003_01.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003_01_py310.py" ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003_01_py310.py"
@@ -93,12 +118,19 @@ ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_
donttest="$donttest or test_orjson_response_class" donttest="$donttest or test_orjson_response_class"
donttest="$donttest or (test_tutorial001 and test_get_custom_response)" donttest="$donttest or (test_tutorial001 and test_get_custom_response)"
%endif %endif
%pytest -W ignore::DeprecationWarning $ignorefiles -k "not ($donttest)" tests %pytest -W ignore::DeprecationWarning -W ignore::PendingDeprecationWarning -W ignore::ResourceWarning $ignorefiles -k "not ($donttest)" tests
%post
%python_install_alternative fastapi
%postun
%python_uninstall_alternative fastapi
%files %{python_files} %files %{python_files}
%doc README.md %doc README.md
%license LICENSE %license LICENSE
%{python_sitelib}/fastapi %{python_sitelib}/fastapi
%{python_sitelib}/fastapi-%{version}.dist-info %{python_sitelib}/fastapi-%{version}.dist-info
%python_alternative %{_bindir}/fastapi
%changelog %changelog

View File

@@ -1,13 +1,13 @@
Index: fastapi-0.95.1/pyproject.toml diff -Nru fastapi-0.115.8.orig/pyproject.toml fastapi-0.115.8/pyproject.toml
=================================================================== --- fastapi-0.115.8.orig/pyproject.toml 2025-01-30 15:06:26.874525500 +0100
--- fastapi-0.95.1.orig/pyproject.toml +++ fastapi-0.115.8/pyproject.toml 2025-02-07 12:00:18.048128044 +0100
+++ fastapi-0.95.1/pyproject.toml @@ -29,9 +29,6 @@
@@ -27,8 +27,6 @@ classifiers = [
"Environment :: Web Environment", "Environment :: Web Environment",
"Framework :: AsyncIO", "Framework :: AsyncIO",
"Framework :: FastAPI", "Framework :: FastAPI",
- "Framework :: Pydantic", - "Framework :: Pydantic",
- "Framework :: Pydantic :: 1", - "Framework :: Pydantic :: 1",
- "Framework :: Pydantic :: 2",
"Intended Audience :: Developers", "Intended Audience :: Developers",
"License :: OSI Approved :: MIT License", "License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3 :: Only", "Programming Language :: Python :: 3 :: Only",