fastapi-cli 0.0.2__tar.gz → 0.0.3__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.
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/PKG-INFO +4 -2
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/README.md +2 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/pyproject.toml +2 -2
- fastapi_cli-0.0.3/requirements-tests.txt +9 -0
- fastapi_cli-0.0.3/src/fastapi_cli/__init__.py +1 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/src/fastapi_cli/cli.py +9 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/test_cli.py +8 -0
- fastapi_cli-0.0.2/requirements-tests.txt +0 -6
- fastapi_cli-0.0.2/src/fastapi_cli/__init__.py +0 -1
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/LICENSE +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/pdm_build.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/requirements.txt +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/scripts/format.sh +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/scripts/lint.sh +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/scripts/test-cov-html.sh +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/scripts/test.sh +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/src/fastapi_cli/__main__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/src/fastapi_cli/discover.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/src/fastapi_cli/exceptions.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/src/fastapi_cli/logging.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/src/fastapi_cli/py.typed +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/broken_package/mod/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/broken_package/mod/app.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/broken_package/utils.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_api/api.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app/api.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app/app.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_api/app/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_api/app/api.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_app/app/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_app/app/api.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_app/app/app.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_main/app/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_main/app/api.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_main/app/app.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_main/app/main.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_non_default/app/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_non_default/app/nondefault.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_main/api.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_main/app.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_main/main.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/non_default/nonstandard.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/package/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/package/core/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/package/core/utils.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/package/mod/__init__.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/package/mod/api.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/package/mod/app.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/package/mod/other.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/single_file_api.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/single_file_app.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/single_file_other.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/conftest.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/test_utils_default_dir.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/test_utils_default_file.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/test_utils_package.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/test_utils_single_file.py +0 -0
- {fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: fastapi-cli
|
|
3
|
-
Version: 0.0.
|
|
3
|
+
Version: 0.0.3
|
|
4
4
|
Summary: Run and manage FastAPI apps from the command line with FastAPI CLI. 🚀
|
|
5
5
|
Home-page: https://github.com/tiangolo/fastapi-cli
|
|
6
6
|
Author-Email: =?utf-8?q?Sebasti=C3=A1n_Ram=C3=ADrez?= <tiangolo@gmail.com>
|
|
@@ -33,7 +33,7 @@ Project-URL: Repository, https://github.com/tiangolo/fastapi-cli
|
|
|
33
33
|
Requires-Python: >=3.8
|
|
34
34
|
Requires-Dist: typer>=0.12.3
|
|
35
35
|
Requires-Dist: fastapi
|
|
36
|
-
Requires-Dist: uvicorn[standard]>=0.
|
|
36
|
+
Requires-Dist: uvicorn[standard]>=0.15.0
|
|
37
37
|
Description-Content-Type: text/markdown
|
|
38
38
|
|
|
39
39
|
# FastAPI CLI
|
|
@@ -120,6 +120,8 @@ FastAPI CLI takes the path to your Python program and automatically detects the
|
|
|
120
120
|
|
|
121
121
|
For production you would use `fastapi run` instead. 🚀
|
|
122
122
|
|
|
123
|
+
Internally, **FastAPI CLI** uses <a href="https://www.uvicorn.org" class="external-link" target="_blank">Uvicorn</a>, a high-performance, production-ready, ASGI server. 😎
|
|
124
|
+
|
|
123
125
|
## `fastapi dev`
|
|
124
126
|
|
|
125
127
|
When you run `fastapi dev`, it will run on development mode.
|
|
@@ -82,6 +82,8 @@ FastAPI CLI takes the path to your Python program and automatically detects the
|
|
|
82
82
|
|
|
83
83
|
For production you would use `fastapi run` instead. 🚀
|
|
84
84
|
|
|
85
|
+
Internally, **FastAPI CLI** uses <a href="https://www.uvicorn.org" class="external-link" target="_blank">Uvicorn</a>, a high-performance, production-ready, ASGI server. 😎
|
|
86
|
+
|
|
85
87
|
## `fastapi dev`
|
|
86
88
|
|
|
87
89
|
When you run `fastapi dev`, it will run on development mode.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.0.3"
|
|
@@ -51,6 +51,7 @@ def _run(
|
|
|
51
51
|
host: str = "127.0.0.1",
|
|
52
52
|
port: int = 8000,
|
|
53
53
|
reload: bool = True,
|
|
54
|
+
workers: Union[int, None] = None,
|
|
54
55
|
root_path: str = "",
|
|
55
56
|
command: str,
|
|
56
57
|
app: Union[str, None] = None,
|
|
@@ -85,6 +86,7 @@ def _run(
|
|
|
85
86
|
host=host,
|
|
86
87
|
port=port,
|
|
87
88
|
reload=reload,
|
|
89
|
+
workers=workers,
|
|
88
90
|
root_path=root_path,
|
|
89
91
|
proxy_headers=proxy_headers,
|
|
90
92
|
)
|
|
@@ -200,6 +202,12 @@ def run(
|
|
|
200
202
|
help="Enable auto-reload of the server when (code) files change. This is [bold]resource intensive[/bold], use it only during development."
|
|
201
203
|
),
|
|
202
204
|
] = False,
|
|
205
|
+
workers: Annotated[
|
|
206
|
+
Union[int, None],
|
|
207
|
+
typer.Option(
|
|
208
|
+
help="Use multiple worker processes. Mutually exclusive with the --reload flag."
|
|
209
|
+
),
|
|
210
|
+
] = None,
|
|
203
211
|
root_path: Annotated[
|
|
204
212
|
str,
|
|
205
213
|
typer.Option(
|
|
@@ -249,6 +257,7 @@ def run(
|
|
|
249
257
|
host=host,
|
|
250
258
|
port=port,
|
|
251
259
|
reload=reload,
|
|
260
|
+
workers=workers,
|
|
252
261
|
root_path=root_path,
|
|
253
262
|
app=app,
|
|
254
263
|
command="run",
|
|
@@ -26,6 +26,7 @@ def test_dev() -> None:
|
|
|
26
26
|
"host": "127.0.0.1",
|
|
27
27
|
"port": 8000,
|
|
28
28
|
"reload": True,
|
|
29
|
+
"workers": None,
|
|
29
30
|
"root_path": "",
|
|
30
31
|
"proxy_headers": True,
|
|
31
32
|
}
|
|
@@ -67,6 +68,7 @@ def test_dev_args() -> None:
|
|
|
67
68
|
"host": "192.168.0.2",
|
|
68
69
|
"port": 8080,
|
|
69
70
|
"reload": False,
|
|
71
|
+
"workers": None,
|
|
70
72
|
"root_path": "/api",
|
|
71
73
|
"proxy_headers": False,
|
|
72
74
|
}
|
|
@@ -92,6 +94,7 @@ def test_run() -> None:
|
|
|
92
94
|
"host": "0.0.0.0",
|
|
93
95
|
"port": 8000,
|
|
94
96
|
"reload": False,
|
|
97
|
+
"workers": None,
|
|
95
98
|
"root_path": "",
|
|
96
99
|
"proxy_headers": True,
|
|
97
100
|
}
|
|
@@ -118,6 +121,8 @@ def test_run_args() -> None:
|
|
|
118
121
|
"--port",
|
|
119
122
|
"8080",
|
|
120
123
|
"--no-reload",
|
|
124
|
+
"--workers",
|
|
125
|
+
"2",
|
|
121
126
|
"--root-path",
|
|
122
127
|
"/api",
|
|
123
128
|
"--app",
|
|
@@ -133,6 +138,7 @@ def test_run_args() -> None:
|
|
|
133
138
|
"host": "192.168.0.2",
|
|
134
139
|
"port": 8080,
|
|
135
140
|
"reload": False,
|
|
141
|
+
"workers": 2,
|
|
136
142
|
"root_path": "/api",
|
|
137
143
|
"proxy_headers": False,
|
|
138
144
|
}
|
|
@@ -171,6 +177,7 @@ def test_dev_help() -> None:
|
|
|
171
177
|
assert "Enable auto-reload of the server when (code) files change." in result.output
|
|
172
178
|
assert "The root path is used to tell your app" in result.output
|
|
173
179
|
assert "The name of the variable that contains the FastAPI app" in result.output
|
|
180
|
+
assert "Use multiple worker processes." not in result.output
|
|
174
181
|
|
|
175
182
|
|
|
176
183
|
def test_run_help() -> None:
|
|
@@ -191,6 +198,7 @@ def test_run_help() -> None:
|
|
|
191
198
|
assert "Enable auto-reload of the server when (code) files change." in result.output
|
|
192
199
|
assert "The root path is used to tell your app" in result.output
|
|
193
200
|
assert "The name of the variable that contains the FastAPI app" in result.output
|
|
201
|
+
assert "Use multiple worker processes." in result.output
|
|
194
202
|
|
|
195
203
|
|
|
196
204
|
def test_callback_help() -> None:
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.0.2"
|
|
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
|
{fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_api/app/api.py
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_app/app/api.py
RENAMED
|
File without changes
|
{fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_app/app/app.py
RENAMED
|
File without changes
|
|
File without changes
|
{fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_main/app/api.py
RENAMED
|
File without changes
|
{fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_main/app/app.py
RENAMED
|
File without changes
|
{fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/default_app_dir_main/app/main.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{fastapi_cli-0.0.2 → fastapi_cli-0.0.3}/tests/assets/default_files/non_default/nonstandard.py
RENAMED
|
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
|