fastapi 0.111.0.dev1__py3-none-any.whl → 0.111.1__py3-none-any.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.
Potentially problematic release.
This version of fastapi might be problematic. Click here for more details.
- fastapi/__init__.py +1 -1
- fastapi/applications.py +1 -1
- fastapi/openapi/docs.py +2 -2
- {fastapi-0.111.0.dev1.dist-info → fastapi-0.111.1.dist-info}/METADATA +54 -30
- {fastapi-0.111.0.dev1.dist-info → fastapi-0.111.1.dist-info}/RECORD +7 -7
- {fastapi-0.111.0.dev1.dist-info → fastapi-0.111.1.dist-info}/WHEEL +1 -1
- {fastapi-0.111.0.dev1.dist-info → fastapi-0.111.1.dist-info}/licenses/LICENSE +0 -0
fastapi/__init__.py
CHANGED
fastapi/applications.py
CHANGED
|
@@ -902,7 +902,7 @@ class FastAPI(Starlette):
|
|
|
902
902
|
A state object for the application. This is the same object for the
|
|
903
903
|
entire application, it doesn't change from request to request.
|
|
904
904
|
|
|
905
|
-
You normally
|
|
905
|
+
You normally wouldn't use this in FastAPI, for most of the cases you
|
|
906
906
|
would instead use FastAPI dependencies.
|
|
907
907
|
|
|
908
908
|
This is simply inherited from Starlette.
|
fastapi/openapi/docs.py
CHANGED
|
@@ -53,7 +53,7 @@ def get_swagger_ui_html(
|
|
|
53
53
|
It is normally set to a CDN URL.
|
|
54
54
|
"""
|
|
55
55
|
),
|
|
56
|
-
] = "https://cdn.jsdelivr.net/npm/swagger-ui-dist@5
|
|
56
|
+
] = "https://cdn.jsdelivr.net/npm/swagger-ui-dist@5/swagger-ui-bundle.js",
|
|
57
57
|
swagger_css_url: Annotated[
|
|
58
58
|
str,
|
|
59
59
|
Doc(
|
|
@@ -63,7 +63,7 @@ def get_swagger_ui_html(
|
|
|
63
63
|
It is normally set to a CDN URL.
|
|
64
64
|
"""
|
|
65
65
|
),
|
|
66
|
-
] = "https://cdn.jsdelivr.net/npm/swagger-ui-dist@5
|
|
66
|
+
] = "https://cdn.jsdelivr.net/npm/swagger-ui-dist@5/swagger-ui.css",
|
|
67
67
|
swagger_favicon_url: Annotated[
|
|
68
68
|
str,
|
|
69
69
|
Doc(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: fastapi
|
|
3
|
-
Version: 0.111.
|
|
3
|
+
Version: 0.111.1
|
|
4
4
|
Summary: FastAPI framework, high performance, easy to learn, fast to code, ready for production
|
|
5
5
|
Author-Email: =?utf-8?q?Sebasti=C3=A1n_Ram=C3=ADrez?= <tiangolo@gmail.com>
|
|
6
6
|
Classifier: Intended Audience :: Information Technology
|
|
@@ -37,11 +37,10 @@ Requires-Python: >=3.8
|
|
|
37
37
|
Requires-Dist: starlette<0.38.0,>=0.37.2
|
|
38
38
|
Requires-Dist: pydantic!=1.8,!=1.8.1,!=2.0.0,!=2.0.1,!=2.1.0,<3.0.0,>=1.7.4
|
|
39
39
|
Requires-Dist: typing-extensions>=4.8.0
|
|
40
|
+
Requires-Dist: fastapi-cli>=0.0.2
|
|
40
41
|
Requires-Dist: httpx>=0.23.0
|
|
41
42
|
Requires-Dist: jinja2>=2.11.2
|
|
42
43
|
Requires-Dist: python-multipart>=0.0.7
|
|
43
|
-
Requires-Dist: ujson!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0,>=4.0.1
|
|
44
|
-
Requires-Dist: orjson>=3.2.1
|
|
45
44
|
Requires-Dist: email_validator>=2.0.0
|
|
46
45
|
Requires-Dist: uvicorn[standard]>=0.12.0
|
|
47
46
|
Requires-Dist: httpx>=0.23.0; extra == "all"
|
|
@@ -113,14 +112,18 @@ The key features are:
|
|
|
113
112
|
<a href="https://reflex.dev" target="_blank" title="Reflex"><img src="https://fastapi.tiangolo.com/img/sponsors/reflex.png"></a>
|
|
114
113
|
<a href="https://github.com/scalar/scalar/?utm_source=fastapi&utm_medium=website&utm_campaign=main-badge" target="_blank" title="Scalar: Beautiful Open-Source API References from Swagger/OpenAPI files"><img src="https://fastapi.tiangolo.com/img/sponsors/scalar.svg"></a>
|
|
115
114
|
<a href="https://www.propelauth.com/?utm_source=fastapi&utm_campaign=1223&utm_medium=mainbadge" target="_blank" title="Auth, user management and more for your B2B product"><img src="https://fastapi.tiangolo.com/img/sponsors/propelauth.png"></a>
|
|
116
|
-
<a href="https://
|
|
115
|
+
<a href="https://docs.withcoherence.com/configuration/frameworks/?utm_medium=advertising&utm_source=fastapi&utm_campaign=docs#fastapi-example" target="_blank" title="Coherence"><img src="https://fastapi.tiangolo.com/img/sponsors/coherence.png"></a>
|
|
117
116
|
<a href="https://www.mongodb.com/developer/languages/python/python-quickstart-fastapi/?utm_campaign=fastapi_framework&utm_source=fastapi_sponsorship&utm_medium=web_referral" target="_blank" title="Simplify Full Stack Development with FastAPI & MongoDB"><img src="https://fastapi.tiangolo.com/img/sponsors/mongodb.png"></a>
|
|
117
|
+
<a href="https://konghq.com/products/kong-konnect?utm_medium=referral&utm_source=github&utm_campaign=platform&utm_content=fast-api" target="_blank" title="Kong Konnect - API management platform"><img src="https://fastapi.tiangolo.com/img/sponsors/kong.png"></a>
|
|
118
|
+
<a href="https://zuplo.link/fastapi-gh" target="_blank" title="Zuplo: Scale, Protect, Document, and Monetize your FastAPI"><img src="https://fastapi.tiangolo.com/img/sponsors/zuplo.png"></a>
|
|
119
|
+
<a href="https://fine.dev?ref=fastapibadge" target="_blank" title="Fine's AI FastAPI Workflow: Effortlessly Deploy and Integrate FastAPI into Your Project"><img src="https://fastapi.tiangolo.com/img/sponsors/fine.png"></a>
|
|
118
120
|
<a href="https://training.talkpython.fm/fastapi-courses" target="_blank" title="FastAPI video courses on demand from people you trust"><img src="https://fastapi.tiangolo.com/img/sponsors/talkpython-v2.jpg"></a>
|
|
119
121
|
<a href="https://github.com/deepset-ai/haystack/" target="_blank" title="Build powerful search from composable, open source building blocks"><img src="https://fastapi.tiangolo.com/img/sponsors/haystack-fastapi.svg"></a>
|
|
120
122
|
<a href="https://databento.com/" target="_blank" title="Pay as you go for market data"><img src="https://fastapi.tiangolo.com/img/sponsors/databento.svg"></a>
|
|
121
123
|
<a href="https://speakeasyapi.dev?utm_source=fastapi+repo&utm_medium=github+sponsorship" target="_blank" title="SDKs for your API | Speakeasy"><img src="https://fastapi.tiangolo.com/img/sponsors/speakeasy.png"></a>
|
|
122
124
|
<a href="https://www.svix.com/" target="_blank" title="Svix - Webhooks as a service"><img src="https://fastapi.tiangolo.com/img/sponsors/svix.svg"></a>
|
|
123
125
|
<a href="https://www.codacy.com/?utm_source=github&utm_medium=sponsors&utm_id=pioneers" target="_blank" title="Take code reviews from hours to minutes"><img src="https://fastapi.tiangolo.com/img/sponsors/codacy.png"></a>
|
|
126
|
+
<a href="https://www.stainlessapi.com/?utm_source=fastapi&utm_medium=referral" target="_blank" title="Stainless | Generate best-in-class SDKs"><img src="https://fastapi.tiangolo.com/img/sponsors/stainless.png"></a>
|
|
124
127
|
|
|
125
128
|
<!-- /sponsors -->
|
|
126
129
|
|
|
@@ -199,18 +202,6 @@ $ pip install fastapi
|
|
|
199
202
|
|
|
200
203
|
</div>
|
|
201
204
|
|
|
202
|
-
You will also need an ASGI server, for production such as <a href="https://www.uvicorn.org" class="external-link" target="_blank">Uvicorn</a> or <a href="https://github.com/pgjones/hypercorn" class="external-link" target="_blank">Hypercorn</a>.
|
|
203
|
-
|
|
204
|
-
<div class="termy">
|
|
205
|
-
|
|
206
|
-
```console
|
|
207
|
-
$ pip install "uvicorn[standard]"
|
|
208
|
-
|
|
209
|
-
---> 100%
|
|
210
|
-
```
|
|
211
|
-
|
|
212
|
-
</div>
|
|
213
|
-
|
|
214
205
|
## Example
|
|
215
206
|
|
|
216
207
|
### Create it
|
|
@@ -271,11 +262,24 @@ Run the server with:
|
|
|
271
262
|
<div class="termy">
|
|
272
263
|
|
|
273
264
|
```console
|
|
274
|
-
$
|
|
275
|
-
|
|
265
|
+
$ fastapi dev main.py
|
|
266
|
+
|
|
267
|
+
╭────────── FastAPI CLI - Development mode ───────────╮
|
|
268
|
+
│ │
|
|
269
|
+
│ Serving at: http://127.0.0.1:8000 │
|
|
270
|
+
│ │
|
|
271
|
+
│ API docs: http://127.0.0.1:8000/docs │
|
|
272
|
+
│ │
|
|
273
|
+
│ Running in development mode, for production use: │
|
|
274
|
+
│ │
|
|
275
|
+
│ fastapi run │
|
|
276
|
+
│ │
|
|
277
|
+
╰─────────────────────────────────────────────────────╯
|
|
278
|
+
|
|
279
|
+
INFO: Will watch for changes in these directories: ['/home/user/code/awesomeapp']
|
|
276
280
|
INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
|
|
277
|
-
INFO: Started reloader process [
|
|
278
|
-
INFO: Started server process [
|
|
281
|
+
INFO: Started reloader process [2248755] using WatchFiles
|
|
282
|
+
INFO: Started server process [2248757]
|
|
279
283
|
INFO: Waiting for application startup.
|
|
280
284
|
INFO: Application startup complete.
|
|
281
285
|
```
|
|
@@ -283,13 +287,13 @@ INFO: Application startup complete.
|
|
|
283
287
|
</div>
|
|
284
288
|
|
|
285
289
|
<details markdown="1">
|
|
286
|
-
<summary>About the command <code>
|
|
290
|
+
<summary>About the command <code>fastapi dev main.py</code>...</summary>
|
|
291
|
+
|
|
292
|
+
The command `fastapi dev` reads your `main.py` file, detects the **FastAPI** app in it, and starts a server using <a href="https://www.uvicorn.org" class="external-link" target="_blank">Uvicorn</a>.
|
|
287
293
|
|
|
288
|
-
|
|
294
|
+
By default, `fastapi dev` will start with auto-reload enabled for local development.
|
|
289
295
|
|
|
290
|
-
|
|
291
|
-
* `app`: the object created inside of `main.py` with the line `app = FastAPI()`.
|
|
292
|
-
* `--reload`: make the server restart after code changes. Only do this for development.
|
|
296
|
+
You can read more about it in the <a href="https://fastapi.tiangolo.com/fastapi-cli/" target="_blank">FastAPI CLI docs</a>.
|
|
293
297
|
|
|
294
298
|
</details>
|
|
295
299
|
|
|
@@ -362,7 +366,7 @@ def update_item(item_id: int, item: Item):
|
|
|
362
366
|
return {"item_name": item.name, "item_id": item_id}
|
|
363
367
|
```
|
|
364
368
|
|
|
365
|
-
The server should reload automatically
|
|
369
|
+
The `fastapi dev` server should reload automatically.
|
|
366
370
|
|
|
367
371
|
### Interactive API docs upgrade
|
|
368
372
|
|
|
@@ -506,7 +510,7 @@ Independent TechEmpower benchmarks show **FastAPI** applications running under U
|
|
|
506
510
|
|
|
507
511
|
To understand more about it, see the section <a href="https://fastapi.tiangolo.com/benchmarks/" class="internal-link" target="_blank">Benchmarks</a>.
|
|
508
512
|
|
|
509
|
-
##
|
|
513
|
+
## Dependencies
|
|
510
514
|
|
|
511
515
|
Used by Pydantic:
|
|
512
516
|
|
|
@@ -519,16 +523,36 @@ Used by Starlette:
|
|
|
519
523
|
* <a href="https://www.python-httpx.org" target="_blank"><code>httpx</code></a> - Required if you want to use the `TestClient`.
|
|
520
524
|
* <a href="https://jinja.palletsprojects.com" target="_blank"><code>jinja2</code></a> - Required if you want to use the default template configuration.
|
|
521
525
|
* <a href="https://github.com/Kludex/python-multipart" target="_blank"><code>python-multipart</code></a> - Required if you want to support form <abbr title="converting the string that comes from an HTTP request into Python data">"parsing"</abbr>, with `request.form()`.
|
|
522
|
-
* <a href="https://pythonhosted.org/itsdangerous/" target="_blank"><code>itsdangerous</code></a> - Required for `SessionMiddleware` support.
|
|
523
|
-
* <a href="https://pyyaml.org/wiki/PyYAMLDocumentation" target="_blank"><code>pyyaml</code></a> - Required for Starlette's `SchemaGenerator` support (you probably don't need it with FastAPI).
|
|
524
526
|
|
|
525
527
|
Used by FastAPI / Starlette:
|
|
526
528
|
|
|
527
529
|
* <a href="https://www.uvicorn.org" target="_blank"><code>uvicorn</code></a> - for the server that loads and serves your application.
|
|
530
|
+
* `fastapi-cli` - to provide the `fastapi` command.
|
|
531
|
+
|
|
532
|
+
When you install `fastapi` it comes these standard dependencies.
|
|
533
|
+
|
|
534
|
+
Additional optional dependencies:
|
|
535
|
+
|
|
528
536
|
* <a href="https://github.com/ijl/orjson" target="_blank"><code>orjson</code></a> - Required if you want to use `ORJSONResponse`.
|
|
529
537
|
* <a href="https://github.com/esnme/ultrajson" target="_blank"><code>ujson</code></a> - Required if you want to use `UJSONResponse`.
|
|
530
538
|
|
|
531
|
-
|
|
539
|
+
## `fastapi-slim`
|
|
540
|
+
|
|
541
|
+
If you don't want the extra standard optional dependencies, install `fastapi-slim` instead.
|
|
542
|
+
|
|
543
|
+
When you install with:
|
|
544
|
+
|
|
545
|
+
```bash
|
|
546
|
+
pip install fastapi
|
|
547
|
+
```
|
|
548
|
+
|
|
549
|
+
...it includes the same code and dependencies as:
|
|
550
|
+
|
|
551
|
+
```bash
|
|
552
|
+
pip install "fastapi-slim[standard]"
|
|
553
|
+
```
|
|
554
|
+
|
|
555
|
+
The standard extra dependencies are the ones mentioned above.
|
|
532
556
|
|
|
533
557
|
## License
|
|
534
558
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
fastapi-0.111.
|
|
2
|
-
fastapi-0.111.
|
|
3
|
-
fastapi-0.111.
|
|
4
|
-
fastapi/__init__.py,sha256=
|
|
1
|
+
fastapi-0.111.1.dist-info/METADATA,sha256=1pjL3eGRdmtR4whxf9JW2F-IliBZijWuqz9Y45Qev88,26801
|
|
2
|
+
fastapi-0.111.1.dist-info/WHEEL,sha256=mbxFTmdEUhG7evcdMkR3aBt9SWcoFBJ4CDwnfguNegA,90
|
|
3
|
+
fastapi-0.111.1.dist-info/licenses/LICENSE,sha256=Tsif_IFIW5f-xYSy1KlhAy7v_oNEU4lP2cEnSQbMdE4,1086
|
|
4
|
+
fastapi/__init__.py,sha256=VTrIRygSQ2X1RaVi5s36q-01oKLbDIif1U9R6HFw-BE,1081
|
|
5
5
|
fastapi/_compat.py,sha256=OjE3FUZ0IPXqIJWKhoWKDNCHv4so-FQ-rfN8ngQZeFE,23134
|
|
6
|
-
fastapi/applications.py,sha256=
|
|
6
|
+
fastapi/applications.py,sha256=h0hVWT7fXS05N3ZAC72mtf1pu5uJmTdJVEw62uUMf7k,176342
|
|
7
7
|
fastapi/background.py,sha256=rouLirxUANrcYC824MSMypXL_Qb2HYg2YZqaiEqbEKI,1768
|
|
8
8
|
fastapi/concurrency.py,sha256=AYLnS4judDUmXsNRICtoKSP0prfYDcS8ehBtYW9JhQQ,1403
|
|
9
9
|
fastapi/datastructures.py,sha256=b2PEz77XGq-u3Ur1Inwk0AGjOsQZO49yF9C7IPJ15cY,5766
|
|
@@ -22,7 +22,7 @@ fastapi/middleware/trustedhost.py,sha256=eE5XGRxGa7c5zPnMJDGp3BxaL25k5iVQlhnv-Pk
|
|
|
22
22
|
fastapi/middleware/wsgi.py,sha256=Z3Ue-7wni4lUZMvH3G9ek__acgYdJstbnpZX_HQAboY,79
|
|
23
23
|
fastapi/openapi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
24
24
|
fastapi/openapi/constants.py,sha256=adGzmis1L1HJRTE3kJ5fmHS_Noq6tIY6pWv_SFzoFDU,153
|
|
25
|
-
fastapi/openapi/docs.py,sha256=
|
|
25
|
+
fastapi/openapi/docs.py,sha256=XcQq-ZbQdC5sI0gIGu5MoHK1q-OFaqws7-ORTo6sjY4,10348
|
|
26
26
|
fastapi/openapi/models.py,sha256=PqkxQiqcEgjKuhfUIWPZPQcyTcubtUCB3vcObLsB7VE,15397
|
|
27
27
|
fastapi/openapi/utils.py,sha256=asSbOKDuagDfpByNQvPy7OM0sqOBdUmqh64BH-n-5f0,22286
|
|
28
28
|
fastapi/param_functions.py,sha256=LcVyxFoK-W1gYGaH7H1dGvth1alwwxXouReg4zKSk88,64005
|
|
@@ -44,4 +44,4 @@ fastapi/testclient.py,sha256=nBvaAmX66YldReJNZXPOk1sfuo2Q6hs8bOvIaCep6LQ,66
|
|
|
44
44
|
fastapi/types.py,sha256=nFb36sK3DSoqoyo7Miwy3meKK5UdFBgkAgLSzQlUVyI,383
|
|
45
45
|
fastapi/utils.py,sha256=lHKngr-TmOx9QzSyA6PXYSvEgxPYUIk5t3u-kZtskEM,8035
|
|
46
46
|
fastapi/websockets.py,sha256=419uncYObEKZG0YcrXscfQQYLSWoE10jqxVMetGdR98,222
|
|
47
|
-
fastapi-0.111.
|
|
47
|
+
fastapi-0.111.1.dist-info/RECORD,,
|
|
File without changes
|