fastapi 0.110.3.dev1__py3-none-any.whl → 0.111.0__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 CHANGED
@@ -1,6 +1,6 @@
1
1
  """FastAPI framework, high performance, easy to learn, fast to code, ready for production"""
2
2
 
3
- __version__ = "0.110.3.dev1"
3
+ __version__ = "0.111.0"
4
4
 
5
5
  from starlette import status as status
6
6
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: fastapi
3
- Version: 0.110.3.dev1
3
+ Version: 0.111.0
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,13 +37,14 @@ 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: httpx>=0.23.0; extra == "standard"
41
- Requires-Dist: jinja2>=2.11.2; extra == "standard"
42
- Requires-Dist: python-multipart>=0.0.7; extra == "standard"
43
- Requires-Dist: email_validator>=2.0.0; extra == "standard"
44
- Requires-Dist: uvicorn[standard]>=0.12.0; extra == "standard"
45
- Requires-Dist: pydantic-settings>=2.0.0; extra == "standard"
46
- Requires-Dist: pydantic-extra-types>=2.0.0; extra == "standard"
40
+ Requires-Dist: fastapi-cli>=0.0.2
41
+ Requires-Dist: httpx>=0.23.0
42
+ Requires-Dist: jinja2>=2.11.2
43
+ Requires-Dist: python-multipart>=0.0.7
44
+ Requires-Dist: ujson!=4.0.2,!=4.1.0,!=4.2.0,!=4.3.0,!=5.0.0,!=5.1.0,>=4.0.1
45
+ Requires-Dist: orjson>=3.2.1
46
+ Requires-Dist: email_validator>=2.0.0
47
+ Requires-Dist: uvicorn[standard]>=0.12.0
47
48
  Requires-Dist: httpx>=0.23.0; extra == "all"
48
49
  Requires-Dist: jinja2>=2.11.2; extra == "all"
49
50
  Requires-Dist: python-multipart>=0.0.7; extra == "all"
@@ -55,7 +56,6 @@ Requires-Dist: email_validator>=2.0.0; extra == "all"
55
56
  Requires-Dist: uvicorn[standard]>=0.12.0; extra == "all"
56
57
  Requires-Dist: pydantic-settings>=2.0.0; extra == "all"
57
58
  Requires-Dist: pydantic-extra-types>=2.0.0; extra == "all"
58
- Provides-Extra: standard
59
59
  Provides-Extra: all
60
60
  Description-Content-Type: text/markdown
61
61
 
@@ -200,18 +200,6 @@ $ pip install fastapi
200
200
 
201
201
  </div>
202
202
 
203
- 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>.
204
-
205
- <div class="termy">
206
-
207
- ```console
208
- $ pip install "uvicorn[standard]"
209
-
210
- ---> 100%
211
- ```
212
-
213
- </div>
214
-
215
203
  ## Example
216
204
 
217
205
  ### Create it
@@ -272,11 +260,24 @@ Run the server with:
272
260
  <div class="termy">
273
261
 
274
262
  ```console
275
- $ uvicorn main:app --reload
276
-
263
+ $ fastapi dev main.py
264
+
265
+ ╭────────── FastAPI CLI - Development mode ───────────╮
266
+ │ │
267
+ │ Serving at: http://127.0.0.1:8000 │
268
+ │ │
269
+ │ API docs: http://127.0.0.1:8000/docs │
270
+ │ │
271
+ │ Running in development mode, for production use: │
272
+ │ │
273
+ │ fastapi run │
274
+ │ │
275
+ ╰─────────────────────────────────────────────────────╯
276
+
277
+ INFO: Will watch for changes in these directories: ['/home/user/code/awesomeapp']
277
278
  INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)
278
- INFO: Started reloader process [28720]
279
- INFO: Started server process [28722]
279
+ INFO: Started reloader process [2248755] using WatchFiles
280
+ INFO: Started server process [2248757]
280
281
  INFO: Waiting for application startup.
281
282
  INFO: Application startup complete.
282
283
  ```
@@ -284,13 +285,13 @@ INFO: Application startup complete.
284
285
  </div>
285
286
 
286
287
  <details markdown="1">
287
- <summary>About the command <code>uvicorn main:app --reload</code>...</summary>
288
+ <summary>About the command <code>fastapi dev main.py</code>...</summary>
288
289
 
289
- The command `uvicorn main:app` refers to:
290
+ 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>.
290
291
 
291
- * `main`: the file `main.py` (the Python "module").
292
- * `app`: the object created inside of `main.py` with the line `app = FastAPI()`.
293
- * `--reload`: make the server restart after code changes. Only do this for development.
292
+ By default, `fastapi dev` will start with auto-reload enabled for local development.
293
+
294
+ You can read more about it in the <a href="https://fastapi.tiangolo.com/fastapi-cli/" target="_blank">FastAPI CLI docs</a>.
294
295
 
295
296
  </details>
296
297
 
@@ -363,7 +364,7 @@ def update_item(item_id: int, item: Item):
363
364
  return {"item_name": item.name, "item_id": item_id}
364
365
  ```
365
366
 
366
- The server should reload automatically (because you added `--reload` to the `uvicorn` command above).
367
+ The `fastapi dev` server should reload automatically.
367
368
 
368
369
  ### Interactive API docs upgrade
369
370
 
@@ -507,7 +508,7 @@ Independent TechEmpower benchmarks show **FastAPI** applications running under U
507
508
 
508
509
  To understand more about it, see the section <a href="https://fastapi.tiangolo.com/benchmarks/" class="internal-link" target="_blank">Benchmarks</a>.
509
510
 
510
- ## Optional Dependencies
511
+ ## Dependencies
511
512
 
512
513
  Used by Pydantic:
513
514
 
@@ -520,16 +521,33 @@ Used by Starlette:
520
521
  * <a href="https://www.python-httpx.org" target="_blank"><code>httpx</code></a> - Required if you want to use the `TestClient`.
521
522
  * <a href="https://jinja.palletsprojects.com" target="_blank"><code>jinja2</code></a> - Required if you want to use the default template configuration.
522
523
  * <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()`.
523
- * <a href="https://pythonhosted.org/itsdangerous/" target="_blank"><code>itsdangerous</code></a> - Required for `SessionMiddleware` support.
524
- * <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).
525
524
 
526
525
  Used by FastAPI / Starlette:
527
526
 
528
527
  * <a href="https://www.uvicorn.org" target="_blank"><code>uvicorn</code></a> - for the server that loads and serves your application.
529
528
  * <a href="https://github.com/ijl/orjson" target="_blank"><code>orjson</code></a> - Required if you want to use `ORJSONResponse`.
530
529
  * <a href="https://github.com/esnme/ultrajson" target="_blank"><code>ujson</code></a> - Required if you want to use `UJSONResponse`.
530
+ * `fastapi-cli` - to provide the `fastapi` command.
531
+
532
+ When you install `fastapi` it comes these standard dependencies.
533
+
534
+ ## `fastapi-slim`
535
+
536
+ If you don't want the extra standard optional dependencies, install `fastapi-slim` instead.
537
+
538
+ When you install with:
539
+
540
+ ```bash
541
+ pip install fastapi
542
+ ```
543
+
544
+ ...it includes the same code and dependencies as:
545
+
546
+ ```bash
547
+ pip install "fastapi-slim[standard]"
548
+ ```
531
549
 
532
- You can install all of these with `pip install "fastapi[all]"`.
550
+ The standard extra dependencies are the ones mentioned above.
533
551
 
534
552
  ## License
535
553
 
@@ -1,7 +1,7 @@
1
- fastapi-0.110.3.dev1.dist-info/METADATA,sha256=5Y8feK_iVHiThLJcCoTPrDyr30_pHDZ3K4fYl0Fdzic,25354
2
- fastapi-0.110.3.dev1.dist-info/WHEEL,sha256=7sv5iXvIiTVJSnAxCz2tGBm9DHsb2vPSzeYeT7pvGUY,90
3
- fastapi-0.110.3.dev1.dist-info/licenses/LICENSE,sha256=Tsif_IFIW5f-xYSy1KlhAy7v_oNEU4lP2cEnSQbMdE4,1086
4
- fastapi/__init__.py,sha256=WT7NotdE3BUnDTe3YGPPL5S9Bip1T7TjdUPeEQZxaWY,1086
1
+ fastapi-0.111.0.dist-info/METADATA,sha256=E4htngMdh1XMorTOXG49Q4_NiD5dkSasEvOzzSu95cE,25954
2
+ fastapi-0.111.0.dist-info/WHEEL,sha256=vnE8JVcI2Wz7GRKorsPArnBdnW2SWKWGow5gu5tHlRU,90
3
+ fastapi-0.111.0.dist-info/licenses/LICENSE,sha256=Tsif_IFIW5f-xYSy1KlhAy7v_oNEU4lP2cEnSQbMdE4,1086
4
+ fastapi/__init__.py,sha256=YhhDsditFgjCfvQR8M0CXSRhp4dlFLbGd9q1Hbtkcq8,1081
5
5
  fastapi/_compat.py,sha256=OjE3FUZ0IPXqIJWKhoWKDNCHv4so-FQ-rfN8ngQZeFE,23134
6
6
  fastapi/applications.py,sha256=owRSmdslsJhJCDxxatkfMdewlaiE-9DPbwQ7alyexgU,176342
7
7
  fastapi/background.py,sha256=rouLirxUANrcYC824MSMypXL_Qb2HYg2YZqaiEqbEKI,1768
@@ -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.110.3.dev1.dist-info/RECORD,,
47
+ fastapi-0.111.0.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: pdm-backend (2.2.1)
2
+ Generator: pdm-backend (2.3.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any