python3-commons 0.8.28__tar.gz → 0.8.30__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {python3_commons-0.8.28/src/python3_commons.egg-info → python3_commons-0.8.30}/PKG-INFO +2 -2
- {python3_commons-0.8.28 → python3_commons-0.8.30}/pyproject.toml +1 -1
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/auth.py +2 -2
- {python3_commons-0.8.28 → python3_commons-0.8.30/src/python3_commons.egg-info}/PKG-INFO +2 -2
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons.egg-info/requires.txt +1 -1
- {python3_commons-0.8.28 → python3_commons-0.8.30}/uv.lock +24 -24
- {python3_commons-0.8.28 → python3_commons-0.8.30}/.coveragerc +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/.github/workflows/python-publish.yaml +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/.github/workflows/release-on-tag-push.yml +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/.gitignore +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/.pre-commit-config.yaml +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/.python-version +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/AUTHORS.rst +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/CHANGELOG.rst +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/LICENSE +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/README.md +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/README.rst +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/docs/Makefile +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/docs/_static/.gitignore +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/docs/authors.rst +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/docs/changelog.rst +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/docs/conf.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/docs/index.rst +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/docs/license.rst +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/setup.cfg +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/__init__.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/api_client.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/audit.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/cache.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/conf.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/db/__init__.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/db/helpers.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/db/models/__init__.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/db/models/auth.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/db/models/common.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/db/models/rbac.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/fs.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/helpers.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/log/__init__.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/log/filters.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/log/formatters.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/object_storage.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/permissions.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/serializers/__init__.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/serializers/json.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/serializers/msgpack.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/serializers/msgspec.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons.egg-info/SOURCES.txt +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons.egg-info/dependency_links.txt +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons.egg-info/top_level.txt +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/tests/conftest.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/tests/test_audit.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/tests/test_helpers.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/tests/test_msgpack.py +0 -0
- {python3_commons-0.8.28 → python3_commons-0.8.30}/tests/test_msgspec.py +0 -0
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: python3-commons
|
3
|
-
Version: 0.8.
|
3
|
+
Version: 0.8.30
|
4
4
|
Summary: Re-usable Python3 code
|
5
5
|
Author-email: Oleg Korsak <kamikaze.is.waiting.you@gmail.com>
|
6
6
|
License-Expression: GPL-3.0
|
@@ -12,7 +12,7 @@ Requires-Python: ==3.13.*
|
|
12
12
|
Description-Content-Type: text/x-rst
|
13
13
|
License-File: LICENSE
|
14
14
|
License-File: AUTHORS.rst
|
15
|
-
Requires-Dist: aiohttp[speedups]~=3.12.
|
15
|
+
Requires-Dist: aiohttp[speedups]~=3.12.2
|
16
16
|
Requires-Dist: asyncpg~=0.30.0
|
17
17
|
Requires-Dist: fastapi-users-db-sqlalchemy~=7.0.0
|
18
18
|
Requires-Dist: fastapi-users[sqlalchemy]~=14.0.1
|
@@ -1,6 +1,6 @@
|
|
1
1
|
import logging
|
2
2
|
from http import HTTPStatus
|
3
|
-
from typing import Annotated
|
3
|
+
from typing import Annotated, Sequence
|
4
4
|
|
5
5
|
import aiohttp
|
6
6
|
from fastapi import Depends, HTTPException
|
@@ -15,7 +15,7 @@ logger = logging.getLogger(__name__)
|
|
15
15
|
|
16
16
|
class TokenData(BaseModel):
|
17
17
|
sub: str
|
18
|
-
aud: str
|
18
|
+
aud: str | Sequence[str]
|
19
19
|
exp: int
|
20
20
|
iss: str
|
21
21
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: python3-commons
|
3
|
-
Version: 0.8.
|
3
|
+
Version: 0.8.30
|
4
4
|
Summary: Re-usable Python3 code
|
5
5
|
Author-email: Oleg Korsak <kamikaze.is.waiting.you@gmail.com>
|
6
6
|
License-Expression: GPL-3.0
|
@@ -12,7 +12,7 @@ Requires-Python: ==3.13.*
|
|
12
12
|
Description-Content-Type: text/x-rst
|
13
13
|
License-File: LICENSE
|
14
14
|
License-File: AUTHORS.rst
|
15
|
-
Requires-Dist: aiohttp[speedups]~=3.12.
|
15
|
+
Requires-Dist: aiohttp[speedups]~=3.12.2
|
16
16
|
Requires-Dist: asyncpg~=0.30.0
|
17
17
|
Requires-Dist: fastapi-users-db-sqlalchemy~=7.0.0
|
18
18
|
Requires-Dist: fastapi-users[sqlalchemy]~=14.0.1
|
@@ -25,7 +25,7 @@ wheels = [
|
|
25
25
|
|
26
26
|
[[package]]
|
27
27
|
name = "aiohttp"
|
28
|
-
version = "3.12.
|
28
|
+
version = "3.12.2"
|
29
29
|
source = { registry = "https://pypi.org/simple" }
|
30
30
|
dependencies = [
|
31
31
|
{ name = "aiohappyeyeballs" },
|
@@ -36,25 +36,25 @@ dependencies = [
|
|
36
36
|
{ name = "propcache" },
|
37
37
|
{ name = "yarl" },
|
38
38
|
]
|
39
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
40
|
-
wheels = [
|
41
|
-
{ url = "https://files.pythonhosted.org/packages/
|
42
|
-
{ url = "https://files.pythonhosted.org/packages/
|
43
|
-
{ url = "https://files.pythonhosted.org/packages/
|
44
|
-
{ url = "https://files.pythonhosted.org/packages/
|
45
|
-
{ url = "https://files.pythonhosted.org/packages/
|
46
|
-
{ url = "https://files.pythonhosted.org/packages/
|
47
|
-
{ url = "https://files.pythonhosted.org/packages/
|
48
|
-
{ url = "https://files.pythonhosted.org/packages/
|
49
|
-
{ url = "https://files.pythonhosted.org/packages/
|
50
|
-
{ url = "https://files.pythonhosted.org/packages/
|
51
|
-
{ url = "https://files.pythonhosted.org/packages/
|
52
|
-
{ url = "https://files.pythonhosted.org/packages/
|
53
|
-
{ url = "https://files.pythonhosted.org/packages/
|
54
|
-
{ url = "https://files.pythonhosted.org/packages/
|
55
|
-
{ url = "https://files.pythonhosted.org/packages/
|
56
|
-
{ url = "https://files.pythonhosted.org/packages/
|
57
|
-
{ url = "https://files.pythonhosted.org/packages/
|
39
|
+
sdist = { url = "https://files.pythonhosted.org/packages/06/a2/a946c4f5c54233c97788c2278ea50beaadf45211f452f932b36ce322f660/aiohttp-3.12.2.tar.gz", hash = "sha256:0018956472ee535d2cad761a5bb88eb4ad80f94cd86472cee26a244799f7c79f", size = 7780423, upload-time = "2025-05-27T00:04:27.79Z" }
|
40
|
+
wheels = [
|
41
|
+
{ url = "https://files.pythonhosted.org/packages/f9/ed/a341ddf8402cc4a177eb63a63d2aee2f177a94b1f2d53ef192e43e82760f/aiohttp-3.12.2-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:e6dd24e72e7425b4eee49eeaa1a08742774f5a0c84041e80625aeba45812f92e", size = 687252, upload-time = "2025-05-27T00:03:03.275Z" },
|
42
|
+
{ url = "https://files.pythonhosted.org/packages/e8/93/00e623a2c984d95a52e7f9e92d178828beb4a5d31b9231b0fda77fc13e98/aiohttp-3.12.2-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:5293245b743d3e41fd4de631aed6018e0016488686ee70d3dbd9ac61cc040429", size = 464914, upload-time = "2025-05-27T00:03:05.71Z" },
|
43
|
+
{ url = "https://files.pythonhosted.org/packages/5e/ad/4fea70b2d1994edf3c34220a41f0ac1263ee4b704343248f7d15fa8e3b8e/aiohttp-3.12.2-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:b2c7bc896696ada3df4ffd787b80d08af53eb16658fd19623f469f89c5f95846", size = 457217, upload-time = "2025-05-27T00:03:07.981Z" },
|
44
|
+
{ url = "https://files.pythonhosted.org/packages/fb/f1/f20c87b0baf096f2d36897fe4a9a0e703f32dbf7b3fcaae0a5a196f779dc/aiohttp-3.12.2-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:7e4991a7dcdd577a749429248321196dba6ade4315c6262e9b2ba9a3bb80e9cb", size = 1696029, upload-time = "2025-05-27T00:03:10.072Z" },
|
45
|
+
{ url = "https://files.pythonhosted.org/packages/d9/4a/1b0507cfd73c1736e5cd607c7f16790747112c86e0c17860b1b635ad7d52/aiohttp-3.12.2-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:88f8d247c4b6cc75eb5ef1724998b3076f5f2f6b7d357560caa5b5da08228cb4", size = 1677295, upload-time = "2025-05-27T00:03:12.856Z" },
|
46
|
+
{ url = "https://files.pythonhosted.org/packages/7d/ca/ffb5d548d6aa195797bebd5e3688821c40c2a6503363e5849d7114678a59/aiohttp-3.12.2-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:e1f3968162f274ed8e97aad591da178fb04725a386a4852b1c0285f3a51390af", size = 1729363, upload-time = "2025-05-27T00:03:15.623Z" },
|
47
|
+
{ url = "https://files.pythonhosted.org/packages/98/3e/e6cb54d8329b7c60b6678631c228339730632ea7c18dd6279e64ad134d52/aiohttp-3.12.2-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4de7a3a7e482f5832838047c1612c0c3d1f4309e3e2d4ea80cb1b7f5ab0c6bbe", size = 1778736, upload-time = "2025-05-27T00:03:17.936Z" },
|
48
|
+
{ url = "https://files.pythonhosted.org/packages/2d/be/76db303c98159b6c0494fe4f14a6c57a28c81db9010d2d5d764219339f0a/aiohttp-3.12.2-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:86ca0aa49854b195e314171756d06f81c1286541425a929950f7316d617cc3b1", size = 1701064, upload-time = "2025-05-27T00:03:20.234Z" },
|
49
|
+
{ url = "https://files.pythonhosted.org/packages/c3/c1/d6d4abdeffaa9dee12b27c80919a1bda50aea22d5a1dc03c001a005b16ea/aiohttp-3.12.2-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9bff129c6674f3a14c68a0f49337ebd8637440201cbd8af05df52cb2d7db0902", size = 1614772, upload-time = "2025-05-27T00:03:22.472Z" },
|
50
|
+
{ url = "https://files.pythonhosted.org/packages/8c/69/da43fe30ef3323add2ac03b11cef91c50b648d544953732aeff9a47cdb5e/aiohttp-3.12.2-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:62179517ef8d0abc950ab7e6545e97142bef3f58007da12b9cff5260e8084fd1", size = 1667793, upload-time = "2025-05-27T00:03:25.273Z" },
|
51
|
+
{ url = "https://files.pythonhosted.org/packages/8c/03/367badf467bd9708b2eaa5fc36689b9b2e43489b63d8508fddc508ceaace/aiohttp-3.12.2-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:48d743fbc8a88dffb2d2e96f17f9e2310aaa672bd2103b198d7613361affd1a3", size = 1699458, upload-time = "2025-05-27T00:03:27.542Z" },
|
52
|
+
{ url = "https://files.pythonhosted.org/packages/d2/12/c7443b288263b4ab3d8c6329de0be8df2967445aa9731b738da7b34f04ca/aiohttp-3.12.2-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:385f01fe9be53a0466fb66504b00ab00ca7faa0a285186327509cbbe1386363f", size = 1642052, upload-time = "2025-05-27T00:03:30.23Z" },
|
53
|
+
{ url = "https://files.pythonhosted.org/packages/4e/76/2be34ed27931ab1a4cdd40eba3ef2d71bf0eff9d6c0ac8793e92f20f3ac1/aiohttp-3.12.2-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:631f4da6b1d503f9df883ba86846fa0ff455eae60497fab5f1d21683b2a2784e", size = 1718187, upload-time = "2025-05-27T00:03:32.474Z" },
|
54
|
+
{ url = "https://files.pythonhosted.org/packages/43/39/84d014db48122973171c3cfcf23a2c3ba765163ef8169d6b959d9440152b/aiohttp-3.12.2-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:7e071f1371f38c15dad609bb57d698fe4614b1817e7808966c643336f5615655", size = 1751656, upload-time = "2025-05-27T00:03:35.213Z" },
|
55
|
+
{ url = "https://files.pythonhosted.org/packages/27/b6/7b13d143352494e943ae3f89b5286dc4ed85f8d5487a09f3dd86efb16eb3/aiohttp-3.12.2-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:166d8ba47fca7667dd3169be8bd0fb9ffd0f19fd80f0d5291b1e36ab0f77d02c", size = 1700547, upload-time = "2025-05-27T00:03:37.613Z" },
|
56
|
+
{ url = "https://files.pythonhosted.org/packages/42/19/1b42589a0f80f14b1bc81ccc5fb0f8c4398fbd03b5886d1307c7aadd8279/aiohttp-3.12.2-cp313-cp313-win32.whl", hash = "sha256:01ac3cc4a0c81f87ed72c614066bfdee15358c5c2cdf30048dd8823826cbc61e", size = 413024, upload-time = "2025-05-27T00:03:39.782Z" },
|
57
|
+
{ url = "https://files.pythonhosted.org/packages/d0/d7/00abc34b16f1ea9dc8cedffe45c0f454157472480e5b44b6c15f175aa9c6/aiohttp-3.12.2-cp313-cp313-win_amd64.whl", hash = "sha256:cbf833ca90fda31ec505e80f58f8011c64030fb8e368bce0d60f1f9aae162389", size = 438964, upload-time = "2025-05-27T00:03:41.932Z" },
|
58
58
|
]
|
59
59
|
|
60
60
|
[package.optional-dependencies]
|
@@ -1068,14 +1068,14 @@ wheels = [
|
|
1068
1068
|
|
1069
1069
|
[[package]]
|
1070
1070
|
name = "pytest-mock"
|
1071
|
-
version = "3.14.
|
1071
|
+
version = "3.14.1"
|
1072
1072
|
source = { registry = "https://pypi.org/simple" }
|
1073
1073
|
dependencies = [
|
1074
1074
|
{ name = "pytest" },
|
1075
1075
|
]
|
1076
|
-
sdist = { url = "https://files.pythonhosted.org/packages/
|
1076
|
+
sdist = { url = "https://files.pythonhosted.org/packages/71/28/67172c96ba684058a4d24ffe144d64783d2a270d0af0d9e792737bddc75c/pytest_mock-3.14.1.tar.gz", hash = "sha256:159e9edac4c451ce77a5cdb9fc5d1100708d2dd4ba3c3df572f14097351af80e", size = 33241, upload-time = "2025-05-26T13:58:45.167Z" }
|
1077
1077
|
wheels = [
|
1078
|
-
{ url = "https://files.pythonhosted.org/packages/
|
1078
|
+
{ url = "https://files.pythonhosted.org/packages/b2/05/77b60e520511c53d1c1ca75f1930c7dd8e971d0c4379b7f4b3f9644685ba/pytest_mock-3.14.1-py3-none-any.whl", hash = "sha256:178aefcd11307d874b4cd3100344e7e2d888d9791a6a1d9bfe90fbc1b74fd1d0", size = 9923, upload-time = "2025-05-26T13:58:43.487Z" },
|
1079
1079
|
]
|
1080
1080
|
|
1081
1081
|
[[package]]
|
@@ -1149,7 +1149,7 @@ testing = [
|
|
1149
1149
|
|
1150
1150
|
[package.metadata]
|
1151
1151
|
requires-dist = [
|
1152
|
-
{ name = "aiohttp", extras = ["speedups"], specifier = "~=3.12.
|
1152
|
+
{ name = "aiohttp", extras = ["speedups"], specifier = "~=3.12.2" },
|
1153
1153
|
{ name = "asyncpg", specifier = "~=0.30.0" },
|
1154
1154
|
{ name = "fastapi-users", extras = ["sqlalchemy"], specifier = "~=14.0.1" },
|
1155
1155
|
{ name = "fastapi-users-db-sqlalchemy", specifier = "~=7.0.0" },
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
{python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/serializers/__init__.py
RENAMED
File without changes
|
File without changes
|
{python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/serializers/msgpack.py
RENAMED
File without changes
|
{python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons/serializers/msgspec.py
RENAMED
File without changes
|
File without changes
|
{python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons.egg-info/dependency_links.txt
RENAMED
File without changes
|
{python3_commons-0.8.28 → python3_commons-0.8.30}/src/python3_commons.egg-info/top_level.txt
RENAMED
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|