asgi-tools 1.1.0__cp311-cp311-win_amd64.whl → 1.2.0__cp311-cp311-win_amd64.whl
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.
- asgi_tools/__init__.py +3 -2
- asgi_tools/_compat.py +10 -13
- asgi_tools/app.py +105 -51
- asgi_tools/forms.c +19218 -19757
- asgi_tools/forms.cp311-win_amd64.pyd +0 -0
- asgi_tools/forms.py +9 -9
- asgi_tools/middleware.py +38 -29
- asgi_tools/multipart.c +19234 -18978
- asgi_tools/multipart.cp311-win_amd64.pyd +0 -0
- asgi_tools/multipart.py +6 -9
- asgi_tools/request.py +63 -47
- asgi_tools/response.py +45 -50
- asgi_tools/tests.py +20 -21
- asgi_tools/view.py +2 -2
- {asgi_tools-1.1.0.dist-info → asgi_tools-1.2.0.dist-info}/METADATA +22 -22
- asgi_tools-1.2.0.dist-info/RECORD +29 -0
- {asgi_tools-1.1.0.dist-info → asgi_tools-1.2.0.dist-info}/WHEEL +1 -1
- asgi_tools-1.1.0.dist-info/RECORD +0 -29
- {asgi_tools-1.1.0.dist-info → asgi_tools-1.2.0.dist-info/licenses}/LICENSE +0 -0
- {asgi_tools-1.1.0.dist-info → asgi_tools-1.2.0.dist-info}/top_level.txt +0 -0
@@ -1,6 +1,6 @@
|
|
1
|
-
Metadata-Version: 2.
|
1
|
+
Metadata-Version: 2.4
|
2
2
|
Name: asgi-tools
|
3
|
-
Version: 1.
|
3
|
+
Version: 1.2.0
|
4
4
|
Summary: ASGI Toolkit to build web applications
|
5
5
|
Author-email: Kirill Klenov <horneds@gmail.com>
|
6
6
|
License: MIT License
|
@@ -13,7 +13,6 @@ Classifier: Intended Audience :: Developers
|
|
13
13
|
Classifier: License :: OSI Approved :: MIT License
|
14
14
|
Classifier: Programming Language :: Python
|
15
15
|
Classifier: Programming Language :: Python :: 3
|
16
|
-
Classifier: Programming Language :: Python :: 3.9
|
17
16
|
Classifier: Programming Language :: Python :: 3.10
|
18
17
|
Classifier: Programming Language :: Python :: 3.11
|
19
18
|
Classifier: Programming Language :: Python :: 3.12
|
@@ -23,41 +22,42 @@ Classifier: Programming Language :: Cython
|
|
23
22
|
Classifier: Topic :: Internet :: WWW/HTTP
|
24
23
|
Classifier: Framework :: AsyncIO
|
25
24
|
Classifier: Framework :: Trio
|
26
|
-
Requires-Python: >=3.
|
25
|
+
Requires-Python: >=3.10
|
27
26
|
Description-Content-Type: text/x-rst
|
28
27
|
License-File: LICENSE
|
29
28
|
Requires-Dist: http-router>=4.0.0
|
30
|
-
Requires-Dist: multidict
|
29
|
+
Requires-Dist: multidict>=6.6.3
|
31
30
|
Requires-Dist: sniffio
|
32
31
|
Requires-Dist: yarl>=1.8.2
|
33
32
|
Requires-Dist: async-timeout; python_version < "3.11"
|
34
|
-
Provides-Extra: dev
|
35
|
-
Requires-Dist: bump2version; extra == "dev"
|
36
|
-
Requires-Dist: tox; extra == "dev"
|
37
|
-
Requires-Dist: cython; extra == "dev"
|
38
|
-
Requires-Dist: pre-commit; extra == "dev"
|
39
|
-
Requires-Dist: sphinx; extra == "dev"
|
40
|
-
Requires-Dist: pydata-sphinx-theme; extra == "dev"
|
41
|
-
Provides-Extra: examples
|
42
|
-
Requires-Dist: uvicorn[standard]; extra == "examples"
|
43
|
-
Requires-Dist: jinja2; extra == "examples"
|
44
|
-
Requires-Dist: httpx; extra == "examples"
|
45
|
-
Provides-Extra: orjson
|
46
|
-
Requires-Dist: orjson; extra == "orjson"
|
47
33
|
Provides-Extra: tests
|
48
34
|
Requires-Dist: aiofile; extra == "tests"
|
49
35
|
Requires-Dist: pytest; extra == "tests"
|
50
|
-
Requires-Dist: pytest-aio[curio,trio]>=1.
|
36
|
+
Requires-Dist: pytest-aio[curio,trio]>=1.2.0; extra == "tests"
|
51
37
|
Requires-Dist: pytest-benchmark; extra == "tests"
|
52
38
|
Requires-Dist: PyYAML; extra == "tests"
|
53
39
|
Requires-Dist: ruff; extra == "tests"
|
54
40
|
Requires-Dist: mypy; extra == "tests"
|
41
|
+
Requires-Dist: exceptiongroup; python_version < "3.11" and extra == "tests"
|
55
42
|
Requires-Dist: ujson; implementation_name == "cpython" and extra == "tests"
|
56
43
|
Requires-Dist: uvloop; implementation_name == "cpython" and extra == "tests"
|
57
44
|
Requires-Dist: pytest-mypy; implementation_name == "cpython" and extra == "tests"
|
58
|
-
Requires-Dist: exceptiongroup; python_version < "3.11" and extra == "tests"
|
59
45
|
Provides-Extra: ujson
|
60
46
|
Requires-Dist: ujson; extra == "ujson"
|
47
|
+
Provides-Extra: orjson
|
48
|
+
Requires-Dist: orjson; extra == "orjson"
|
49
|
+
Provides-Extra: examples
|
50
|
+
Requires-Dist: uvicorn[standard]; extra == "examples"
|
51
|
+
Requires-Dist: jinja2; extra == "examples"
|
52
|
+
Requires-Dist: httpx; extra == "examples"
|
53
|
+
Provides-Extra: dev
|
54
|
+
Requires-Dist: bump2version; extra == "dev"
|
55
|
+
Requires-Dist: tox; extra == "dev"
|
56
|
+
Requires-Dist: cython; extra == "dev"
|
57
|
+
Requires-Dist: pre-commit; extra == "dev"
|
58
|
+
Requires-Dist: sphinx; extra == "dev"
|
59
|
+
Requires-Dist: pydata-sphinx-theme; extra == "dev"
|
60
|
+
Dynamic: license-file
|
61
61
|
|
62
62
|
.. image:: https://raw.githubusercontent.com/klen/asgi-tools/develop/.github/assets/asgi-tools.png
|
63
63
|
:height: 100
|
@@ -145,7 +145,7 @@ A Quick Example
|
|
145
145
|
|
146
146
|
You can use any of ASGI-Tools components independently.
|
147
147
|
|
148
|
-
|
148
|
+
Despite this ASGI-Tools contains App_ helper to quickly build ASGI
|
149
149
|
applications. For instance:
|
150
150
|
|
151
151
|
Save this to ``app.py``.
|
@@ -201,7 +201,7 @@ Licensed under a `MIT license`_.
|
|
201
201
|
.. _klen: https://github.com/klen
|
202
202
|
.. _uvicorn: http://www.uvicorn.org/
|
203
203
|
.. _daphne: https://github.com/django/daphne/
|
204
|
-
.. _hypercorn: https://
|
204
|
+
.. _hypercorn: https://github.com/pgjones/hypercorn/
|
205
205
|
|
206
206
|
.. _Request: https://klen.github.io/asgi-tools/api.html#request
|
207
207
|
.. _Response: https://klen.github.io/asgi-tools/api.html#responses
|
@@ -0,0 +1,29 @@
|
|
1
|
+
asgi_tools/__init__.py,sha256=kBeeiOV5kHCjKhEkmN-55Q6mZ3LqwbygJHMKETM4n18,1493
|
2
|
+
asgi_tools/_compat.py,sha256=hK9JUaYGrOAHACsPzkf4yp3Qz4ttAhFUaguS3vMdjfk,7742
|
3
|
+
asgi_tools/app.py,sha256=B9V7fmWafbBuxJ0TxeTFwytkLSHKRgZby3UtVoG3MlE,11093
|
4
|
+
asgi_tools/constants.py,sha256=kgkeofmY_8tKF_V-3Xjj0CnAxF3IuYHYWPhSbmRko1w,134
|
5
|
+
asgi_tools/errors.py,sha256=xkYWpPk7i11fKaRFCN070EdFq6KrqGli1eDNMDsq3GQ,575
|
6
|
+
asgi_tools/forms.c,sha256=5YFDRlwc2lwU0sfZcB8CHTkGnN3HErxu3roYyD2tepU,846100
|
7
|
+
asgi_tools/forms.cp311-win_amd64.pyd,sha256=Rr8OzrrjTaeRQXMcxKPDmE38C_FKQpowhZw7yslzIXA,119808
|
8
|
+
asgi_tools/forms.py,sha256=YHxevjoOoNIgR2JRCEiCz_EeHmtZwiDzzdy1rBaL6jc,5225
|
9
|
+
asgi_tools/forms.pyx,sha256=EYrZ1J_QDptrEcLBXZYFD9fk7odZoBNTqsdkSMTZ4Zw,5507
|
10
|
+
asgi_tools/logs.py,sha256=mX_SHbUZ0_SkUTQ_ZGo2vBNNltgDswwxv-yUv-RuY2g,154
|
11
|
+
asgi_tools/middleware.py,sha256=V0PAB7k10zxMT11caKwDOC69Mk8A_--PI4YMCmGGUU0,15606
|
12
|
+
asgi_tools/multipart.c,sha256=-2-QCBzX54BRopl_DL_1fnFPZ8cv3CYnQbzD6z-QuCw,863242
|
13
|
+
asgi_tools/multipart.cp311-win_amd64.pyd,sha256=VknInCe9rM-FPzyODrpxtOIuc9Jij1b18BMo1XS8oMc,100352
|
14
|
+
asgi_tools/multipart.pxd,sha256=C-I70NJjJXA_bYUAIDgf3K8f7aCn7Ttuzu_QxHz45Gk,759
|
15
|
+
asgi_tools/multipart.py,sha256=ojkkDmcZH7T-AwbK8G4dNMdArVi4t-BcSxG0ubOt2aw,22296
|
16
|
+
asgi_tools/multipart.pyx,sha256=MS2Gsp4mh_4LML-Qb24NWP2Fq5U8sSU7_NrO-awiSPM,22494
|
17
|
+
asgi_tools/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
18
|
+
asgi_tools/request.py,sha256=sil4potk0RVMLAUspZUvesIeuFAcAZpnww3oizMYKps,11139
|
19
|
+
asgi_tools/response.py,sha256=EVsslBc-8R0JbK6vQBXN7fMMLyl20ocnpzeg4yJ20Gc,19222
|
20
|
+
asgi_tools/router.py,sha256=HjgwDV4B1UvJOvMXN-W7A2HTm9_BQmzsF9pOBoa33Po,455
|
21
|
+
asgi_tools/tests.py,sha256=GxUaLUYHeyCNE8powBcJFjCAcEPMwK4dldsj6aElQxc,13349
|
22
|
+
asgi_tools/types.py,sha256=TR1sdIw7RPd5ZmRnPfEuW5ztdAU-4qP0LHMdZQZm0YQ,957
|
23
|
+
asgi_tools/utils.py,sha256=PlAx3prwfSxKG6W0e-8DMN0-aGyKfPu-BibxODcWE9Y,2923
|
24
|
+
asgi_tools/view.py,sha256=hDbJ1zTvJkAGn7_-9vfqzESLzAyTxsRO8q-iossVRRw,1994
|
25
|
+
asgi_tools-1.2.0.dist-info/licenses/LICENSE,sha256=NtZMr5jqCHVbUM1wX_U3F3XwMo881ao3rOevOirLocU,1091
|
26
|
+
asgi_tools-1.2.0.dist-info/METADATA,sha256=1TeV-PXFtotr1aVurknDpbmh-9fN_swcVumlM1TKgwo,7352
|
27
|
+
asgi_tools-1.2.0.dist-info/WHEEL,sha256=JLOMsP7F5qtkAkINx5UnzbFguf8CqZeraV8o04b0I8I,101
|
28
|
+
asgi_tools-1.2.0.dist-info/top_level.txt,sha256=-6i6ebKuJ0cSaXJ3KWPmJLKUbmBE2UsuA2b7BcZMJSk,11
|
29
|
+
asgi_tools-1.2.0.dist-info/RECORD,,
|
@@ -1,29 +0,0 @@
|
|
1
|
-
asgi_tools/__init__.py,sha256=sQPr3iwhrvb8dOqDAz74ma8eEo1OogtkWlUDvzN0kps,1477
|
2
|
-
asgi_tools/_compat.py,sha256=orgBbR4mQ5AC2N0PL65KbdZQd6EJHluVjI-SB5hyJeY,7785
|
3
|
-
asgi_tools/app.py,sha256=af_wNiyRBciCJwSbHDHacJbvaVpbbUolu_jj8W12olY,8360
|
4
|
-
asgi_tools/constants.py,sha256=kgkeofmY_8tKF_V-3Xjj0CnAxF3IuYHYWPhSbmRko1w,134
|
5
|
-
asgi_tools/errors.py,sha256=xkYWpPk7i11fKaRFCN070EdFq6KrqGli1eDNMDsq3GQ,575
|
6
|
-
asgi_tools/forms.c,sha256=aH5_thKiAySRUNtlJWIaDl5Iis3ofdK9QCJLMImQtxM,816253
|
7
|
-
asgi_tools/forms.cp311-win_amd64.pyd,sha256=YrQ97dai61lZpRcMgSENxLm34Tl4MhPwyCb60TxvO2M,137216
|
8
|
-
asgi_tools/forms.py,sha256=2Namy-uwhvg5m5QQzZJZDLHH9SSfvZtwJMMAQyNmAnI,5257
|
9
|
-
asgi_tools/forms.pyx,sha256=EYrZ1J_QDptrEcLBXZYFD9fk7odZoBNTqsdkSMTZ4Zw,5507
|
10
|
-
asgi_tools/logs.py,sha256=mX_SHbUZ0_SkUTQ_ZGo2vBNNltgDswwxv-yUv-RuY2g,154
|
11
|
-
asgi_tools/middleware.py,sha256=sobMSTlvHcMX_bZgu9ctCEeZga-3bEZhtnvyNUbfKbI,15452
|
12
|
-
asgi_tools/multipart.c,sha256=pvzjnhmWtwHeuv_zsAjOMgF7w8apAXWPAkayNXK8mmI,810044
|
13
|
-
asgi_tools/multipart.cp311-win_amd64.pyd,sha256=oYrdHfFi9YTWUOqHgSOTTxv37yY3xNsoG1o5urmKbSg,107520
|
14
|
-
asgi_tools/multipart.pxd,sha256=C-I70NJjJXA_bYUAIDgf3K8f7aCn7Ttuzu_QxHz45Gk,759
|
15
|
-
asgi_tools/multipart.py,sha256=BhtBgzJ3i3fLXb-c4xMEc4Y7RKt_MOwYDE_niCijdzc,22322
|
16
|
-
asgi_tools/multipart.pyx,sha256=MS2Gsp4mh_4LML-Qb24NWP2Fq5U8sSU7_NrO-awiSPM,22494
|
17
|
-
asgi_tools/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
18
|
-
asgi_tools/request.py,sha256=29pnctumwT3hcVkLCWagfN9An4Qda_ctFiNpCIJAXoA,10754
|
19
|
-
asgi_tools/response.py,sha256=PHjgsMhieXHNRy9pw5a_m9Gb8DozS5y8OHb1gz8pVpY,19407
|
20
|
-
asgi_tools/router.py,sha256=HjgwDV4B1UvJOvMXN-W7A2HTm9_BQmzsF9pOBoa33Po,455
|
21
|
-
asgi_tools/tests.py,sha256=hLypjqCb4D75Y7N7nLQoD6R-9KPkjU1gxo1j0IkXq5U,13449
|
22
|
-
asgi_tools/types.py,sha256=TR1sdIw7RPd5ZmRnPfEuW5ztdAU-4qP0LHMdZQZm0YQ,957
|
23
|
-
asgi_tools/utils.py,sha256=PlAx3prwfSxKG6W0e-8DMN0-aGyKfPu-BibxODcWE9Y,2923
|
24
|
-
asgi_tools/view.py,sha256=rPgCOxmadYxNyaBhpuasfKXyKwJm_qopGCmWpB0AbCE,2007
|
25
|
-
asgi_tools-1.1.0.dist-info/LICENSE,sha256=NtZMr5jqCHVbUM1wX_U3F3XwMo881ao3rOevOirLocU,1091
|
26
|
-
asgi_tools-1.1.0.dist-info/METADATA,sha256=A-MLRqxweK8dr8153EWrabL69y7BrZJbDRikHzH0iHg,7371
|
27
|
-
asgi_tools-1.1.0.dist-info/WHEEL,sha256=WutsMqxRjo8PALJe8NWxuOYrO2lUIIHDIxhZ8tjc8BY,101
|
28
|
-
asgi_tools-1.1.0.dist-info/top_level.txt,sha256=-6i6ebKuJ0cSaXJ3KWPmJLKUbmBE2UsuA2b7BcZMJSk,11
|
29
|
-
asgi_tools-1.1.0.dist-info/RECORD,,
|
File without changes
|
File without changes
|