14
0

20 Commits

Author SHA256 Message Date
ce9ed2108a Accepting request 1244151 from devel:languages:python
OBS-URL: https://build.opensuse.org/request/show/1244151
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=40
2025-02-09 18:59:05 +00:00
a5fc613b34 - 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.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=88
2025-02-07 13:03:04 +00:00
edc2e24260 Accepting request 1230775 from devel:languages:python
Forwarded request #1230610 from bnavigator

- 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.

OBS-URL: https://build.opensuse.org/request/show/1230775
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=39
2024-12-13 21:33:10 +00:00
51a5f8bacc Accepting request 1230610 from home:bnavigator:branches:devel:languages:python
- 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.

OBS-URL: https://build.opensuse.org/request/show/1230610
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=86
2024-12-13 10:42:59 +00:00
227a1c96f2 Accepting request 1228546 from devel:languages:python
- 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.

OBS-URL: https://build.opensuse.org/request/show/1228546
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=38
2024-12-06 13:25:18 +00:00
973ec18fc1 - 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.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=84
2024-12-05 14:50:18 +00:00
0ec657bb58 Accepting request 1225489 from devel:languages:python
- 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)

OBS-URL: https://build.opensuse.org/request/show/1225489
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=37
2024-11-21 14:13:35 +00:00
eb3a87b14a - 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)

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=82
2024-11-21 08:54:16 +00:00
61e3dc8711 Accepting request 1222081 from devel:languages:python
- disable PendingDeprecatingWarning

OBS-URL: https://build.opensuse.org/request/show/1222081
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=36
2024-11-08 10:56:16 +00:00
1ea5b572e9 - disable PendingDeprecatingWarning
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=80
2024-11-07 09:17:16 +00:00
f598bf77f9 Accepting request 1208759 from devel:languages:python
- 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.

OBS-URL: https://build.opensuse.org/request/show/1208759
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=35
2024-10-20 08:13:06 +00:00
8ae89947fe - 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.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=78
2024-10-18 03:24:19 +00:00
8d93db22d9 Accepting request 1202122 from devel:languages:python
- 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.

OBS-URL: https://build.opensuse.org/request/show/1202122
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=34
2024-09-22 09:05:39 +00:00
4c71b24822 Readd SQLAlchemy
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=76
2024-09-20 08:05:54 +00:00
be13249886 - 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.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=75
2024-09-17 05:46:48 +00:00
dc085a7292 Accepting request 1193792 from devel:languages:python
- Add patch allow-starlette-0.38.patch:
  * Allow starlette 0.38.

OBS-URL: https://build.opensuse.org/request/show/1193792
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=33
2024-08-15 07:57:29 +00:00
d8ebe5a07d - Add patch allow-starlette-0.38.patch:
* Allow starlette 0.38.

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=73
2024-08-14 02:14:25 +00:00
e1b9df0dd8 Accepting request 1192578 from devel:languages:python
- 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

OBS-URL: https://build.opensuse.org/request/show/1192578
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-fastapi?expand=0&rev=32
2024-08-13 11:22:51 +00:00
52706d147b - Use pdm-backend instead of pdm
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=71
2024-08-08 09:46:41 +00:00
701762b647 - 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

OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-fastapi?expand=0&rev=70
2024-08-08 09:35:24 +00:00
7 changed files with 62 additions and 103 deletions

View File

@@ -1,3 +0,0 @@
<multibuild>
<package>test</package>
</multibuild>

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:55d1d25c2e1e0a0a50aceb1c8705cd932def273c102bff0b1c1da88b3c6eb307
size 295680

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

Binary file not shown.

View File

@@ -1,44 +1,3 @@
-------------------------------------------------------------------
Tue Aug 19 13:10:16 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Convert to libalternatives on SLE-16-based and newer systems only
-------------------------------------------------------------------
Tue Jul 8 13:26:46 UTC 2025 - Markéta Machová <mmachova@suse.com>
- Convert to libalternatives
-------------------------------------------------------------------
Fri Jun 27 00:44:09 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
- Remove ringdisabled, switch to standard multibuild with a test flavor.
-------------------------------------------------------------------
Tue Jun 24 01:53:44 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 0.115.13:
* Fix truncating the model's description with form feed (\f) character
for Pydantic V2.
- Ignore more test files with ringdisabled as inline_snapshot expands
inside the testsuite.
-------------------------------------------------------------------
Fri Jun 6 05:58:54 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
- Add patch support-starlette-0.47.patch:
* Allow starlette 0.47.
-------------------------------------------------------------------
Thu May 1 05:53:56 UTC 2025 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 0.115.12:
* Fix convert_underscores=False for header Pydantic models.
* Add docs examples and tests (support) for Annotated custom validations,
like AfterValidator.
* Update internal annotation usage for compatibility with Pydantic 2.11.
* Ensure that HTTPDigest only raises an exception when auto_error is True.
- Drop remove-classifiers.patch, no longer required.
-------------------------------------------------------------------
Fri Feb 7 11:00:37 UTC 2025 - John Paul Adrian Glaubitz <adrian.glaubitz@suse.com>

View File

@@ -16,69 +16,54 @@
#
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%define psuffix -test
%bcond_without test
%else
%define psuffix %{nil}
%bcond_with test
%endif
%if 0%{?suse_version} > 1500
%bcond_without libalternatives
%else
%bcond_with libalternatives
%endif
# Keep extra test requirements out of Ring1
%bcond_with ringdisabled
%{?sle15_python_module_pythons}
Name: python-fastapi%{psuffix}
Version: 0.115.13
Name: python-fastapi
Version: 0.115.8
Release: 0
Summary: FastAPI framework
License: MIT
URL: https://github.com/tiangolo/fastapi
Source: https://files.pythonhosted.org/packages/source/f/fastapi/fastapi-%{version}.tar.gz
# PATCH-FIX-OPENSUSE Support starlette 0.47
Patch0: support-starlette-0.47.patch
# PATCH-FIX-OPENSUSE Remove two unknown classifiers
Patch0: remove-classifiers.patch
BuildRequires: %{python_module hatchling}
BuildRequires: %{python_module pdm-backend}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module pydantic-settings >= 2.0.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: python-rpm-macros
Requires: python-pydantic >= 1.8.2
Requires: python-typing_extensions >= 4.8.0
Requires: (python-starlette >= 0.40.0 with python-starlette < 0.48.0)
BuildArch: noarch
%if %{with libalternatives}
BuildRequires: alts
Requires: alts
%else
Requires: (python-starlette >= 0.40.0 with python-starlette < 0.46.0)
Requires(post): update-alternatives
Requires(postun): update-alternatives
%endif
BuildArch: noarch
# SECTION test requirements
%if %{with test}
BuildRequires: %{python_module pdm-backend}
BuildRequires: %{python_module Flask >= 1.1.2}
BuildRequires: %{python_module PyJWT}
BuildRequires: %{python_module PyYAML >= 5.3.1}
BuildRequires: %{python_module SQLAlchemy}
BuildRequires: %{python_module aiosqlite}
BuildRequires: %{python_module anyio >= 3.2.1}
BuildRequires: %{python_module coverage}
BuildRequires: %{python_module databases >= 0.3.2}
BuildRequires: %{python_module dirty-equals}
BuildRequires: %{python_module email-validator >= 1.1.1}
BuildRequires: %{python_module fastapi = %{version}}
BuildRequires: %{python_module httpx >= 0.23.0}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module python-multipart >= 0.0.18}
BuildRequires: %{python_module trio}
%if !%{with ringdisabled}
BuildRequires: %{python_module aiosqlite}
BuildRequires: %{python_module databases >= 0.3.2}
BuildRequires: %{python_module email-validator >= 1.1.1}
BuildRequires: %{python_module inline-snapshot}
BuildRequires: %{python_module orjson >= 3.2.1}
BuildRequires: %{python_module passlib}
BuildRequires: %{python_module peewee >= 3.13.0}
BuildRequires: %{python_module pydantic-settings >= 2.0.0}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module python-jose >= 3.3}
BuildRequires: %{python_module python-multipart >= 0.0.18}
BuildRequires: %{python_module sqlmodel}
BuildRequires: %{python_module trio}
BuildRequires: %{python_module ujson >= 5.6}
%endif
# /SECTION
@@ -94,14 +79,11 @@ Python FastAPI framework.
%pyproject_wheel
%install
%if !%{with test}
%pyproject_install
%python_clone -a %{buildroot}/%{_bindir}/fastapi
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
%check
%if %{with test}
# more warnings as expected
donttest="test_warn_duplicate_operation_id"
# fails because of changed (cosmetic) body format in httpx 0.28 (technically not suppoerted yet upstream)
@@ -109,11 +91,34 @@ 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"
%pytest -W ignore::DeprecationWarning -W ignore::PendingDeprecationWarning -W ignore::ResourceWarning -k "not ($donttest)" tests
%endif
%if %{with ringdisabled}
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_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_py310.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005_py39.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_security/test_tutorial005_py310.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_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_response_model/test_tutorial003_01.py"
ignorefiles="$ignorefiles --ignore tests/test_tutorial/test_response_model/test_tutorial003_01_py310.py"
%pre
%python_libalternatives_reset_alternative fastapi
donttest="$donttest or test_orjson_response_class"
donttest="$donttest or (test_tutorial001 and test_get_custom_response)"
%endif
%pytest -W ignore::DeprecationWarning -W ignore::PendingDeprecationWarning -W ignore::ResourceWarning $ignorefiles -k "not ($donttest)" tests
%post
%python_install_alternative fastapi
@@ -121,13 +126,11 @@ donttest+=" or test_openapi"
%postun
%python_uninstall_alternative fastapi
%if !%{with test}
%files %{python_files}
%doc README.md
%license LICENSE
%{python_sitelib}/fastapi
%{python_sitelib}/fastapi-%{version}.dist-info
%python_alternative %{_bindir}/fastapi
%endif
%changelog

13
remove-classifiers.patch Normal file
View File

@@ -0,0 +1,13 @@
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.115.8/pyproject.toml 2025-02-07 12:00:18.048128044 +0100
@@ -29,9 +29,6 @@
"Environment :: Web Environment",
"Framework :: AsyncIO",
"Framework :: FastAPI",
- "Framework :: Pydantic",
- "Framework :: Pydantic :: 1",
- "Framework :: Pydantic :: 2",
"Intended Audience :: Developers",
"License :: OSI Approved :: MIT License",
"Programming Language :: Python :: 3 :: Only",

View File

@@ -1,13 +0,0 @@
Index: fastapi-0.115.12/pyproject.toml
===================================================================
--- fastapi-0.115.12.orig/pyproject.toml
+++ fastapi-0.115.12/pyproject.toml
@@ -45,7 +45,7 @@ classifiers = [
"Topic :: Internet :: WWW/HTTP",
]
dependencies = [
- "starlette>=0.40.0,<0.47.0",
+ "starlette>=0.40.0,<0.48.0",
"pydantic>=1.7.4,!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0",
"typing-extensions>=4.8.0",
]