tigrcorn-runtime 0.3.16.dev5__tar.gz → 0.3.16.dev12__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.
- {tigrcorn_runtime-0.3.16.dev5/src/tigrcorn_runtime.egg-info → tigrcorn_runtime-0.3.16.dev12}/PKG-INFO +83 -22
- tigrcorn_runtime-0.3.16.dev12/README.md +105 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/pyproject.toml +10 -8
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/app_interfaces.py +57 -9
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/runner.py +3 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12/src/tigrcorn_runtime.egg-info}/PKG-INFO +83 -22
- tigrcorn_runtime-0.3.16.dev12/src/tigrcorn_runtime.egg-info/requires.txt +14 -0
- tigrcorn_runtime-0.3.16.dev5/README.md +0 -46
- tigrcorn_runtime-0.3.16.dev5/src/tigrcorn_runtime.egg-info/requires.txt +0 -14
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/LICENSE +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/setup.cfg +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/__init__.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/api.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/cli.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/embedded.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/py.typed +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/__init__.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/app_loader.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/bootstrap.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/hooks.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/reloader.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/shutdown.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/signals.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/state.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/supervisor.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/workers/__init__.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/workers/local.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/workers/model.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/workers/process.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/workers/supervisor.py +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime.egg-info/SOURCES.txt +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime.egg-info/dependency_links.txt +0 -0
- {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tigrcorn-runtime
|
|
3
|
-
Version: 0.3.16.
|
|
3
|
+
Version: 0.3.16.dev12
|
|
4
4
|
Summary: Server runner, app loading, lifecycle hooks, workers, reload, and embedded runtime for the Tigrcorn ASGI3 web server.
|
|
5
5
|
Author-email: Jacob Stewart <jacob@swarmauri.com>
|
|
6
6
|
License: Apache License
|
|
@@ -175,22 +175,24 @@ Classifier: License :: OSI Approved :: Apache Software License
|
|
|
175
175
|
Classifier: Operating System :: OS Independent
|
|
176
176
|
Classifier: Programming Language :: Python :: 3
|
|
177
177
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
178
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
178
179
|
Classifier: Programming Language :: Python :: 3.11
|
|
179
180
|
Classifier: Programming Language :: Python :: 3.12
|
|
180
181
|
Classifier: Programming Language :: Python :: 3.13
|
|
182
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
181
183
|
Classifier: Topic :: Internet :: WWW/HTTP
|
|
182
184
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
183
185
|
Classifier: Topic :: System :: Networking
|
|
184
186
|
Classifier: Typing :: Typed
|
|
185
|
-
Requires-Python:
|
|
187
|
+
Requires-Python: <3.15,>=3.10
|
|
186
188
|
Description-Content-Type: text/markdown
|
|
187
189
|
License-File: LICENSE
|
|
188
|
-
Requires-Dist: tigrcorn-core==0.3.16.
|
|
189
|
-
Requires-Dist: tigrcorn-config==0.3.16.
|
|
190
|
-
Requires-Dist: tigrcorn-asgi==0.3.16.
|
|
191
|
-
Requires-Dist: tigrcorn-transports==0.3.16.
|
|
192
|
-
Requires-Dist: tigrcorn-protocols==0.3.16.
|
|
193
|
-
Requires-Dist: tigrcorn-security==0.3.16.
|
|
190
|
+
Requires-Dist: tigrcorn-core==0.3.16.dev12
|
|
191
|
+
Requires-Dist: tigrcorn-config==0.3.16.dev12
|
|
192
|
+
Requires-Dist: tigrcorn-asgi==0.3.16.dev12
|
|
193
|
+
Requires-Dist: tigrcorn-transports==0.3.16.dev12
|
|
194
|
+
Requires-Dist: tigrcorn-protocols==0.3.16.dev12
|
|
195
|
+
Requires-Dist: tigrcorn-security==0.3.16.dev12
|
|
194
196
|
Provides-Extra: uvloop
|
|
195
197
|
Requires-Dist: uvloop>=0.19.0; platform_system != "Windows" and extra == "uvloop"
|
|
196
198
|
Provides-Extra: trio
|
|
@@ -199,47 +201,106 @@ Dynamic: license-file
|
|
|
199
201
|
|
|
200
202
|
<div align="center">
|
|
201
203
|
<h1>tigrcorn-runtime</h1>
|
|
204
|
+
<img
|
|
205
|
+
src="https://raw.githubusercontent.com/Tigrbl/tigrcorn/master/assets/tigrcorn_logo.png"
|
|
206
|
+
alt="Tigrcorn tiger-unicorn logo"
|
|
207
|
+
width="140"
|
|
208
|
+
/>
|
|
202
209
|
|
|
203
210
|
<p><strong>Server runner, app loading, lifecycle hooks, workers, reload, and embedded runtime for the Tigrcorn ASGI3 web server.</strong></p>
|
|
204
211
|
|
|
205
212
|
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="PyPI version for tigrcorn-runtime" src="https://img.shields.io/pypi/v/tigrcorn-runtime?label=PyPI"></a>
|
|
206
213
|
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="tigrcorn-runtime package on PyPI" src="https://img.shields.io/badge/package-PyPI-blue"></a>
|
|
214
|
+
<a href="https://pepy.tech/project/tigrcorn-runtime"><img alt="Downloads for tigrcorn-runtime" src="https://static.pepy.tech/badge/tigrcorn-runtime"></a>
|
|
215
|
+
<a href="https://github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-runtime/README.md"><img alt="Hits for tigrcorn-runtime README" src="https://hits.sh/github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-runtime/README.md.svg?label=hits"></a>
|
|
207
216
|
<a href="LICENSE"><img alt="Apache 2.0 license" src="https://img.shields.io/badge/license-Apache%202.0-525252"></a>
|
|
208
|
-
<a href="pyproject.toml"><img alt="Python 3.11 supported" src="https://img.shields.io/badge/python-3.11-3776ab"></a>
|
|
209
|
-
<a href="pyproject.toml"><img alt="Python 3.12 supported" src="https://img.shields.io/badge/python-3.12-3776ab"></a>
|
|
210
|
-
<a href="pyproject.toml"><img alt="Python 3.13 supported" src="https://img.shields.io/badge/python-3.13-3776ab"></a>
|
|
211
|
-
<a href="src/tigrcorn_runtime/py.typed"><img alt="typed package" src="https://img.shields.io/badge/typed-py.typed-2f7ed8"></a>
|
|
217
|
+
<a href="pyproject.toml"><img alt="Python 3.10 | 3.11 | 3.12 | 3.13 | 3.14 supported" src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-3776ab"></a>
|
|
212
218
|
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="runtime role package" src="https://img.shields.io/badge/role-runtime-0a7f5a"></a>
|
|
213
219
|
</div>
|
|
214
220
|
|
|
221
|
+
<p align="center"><a href="https://github.com/Tigrbl/tigrcorn/blob/master/.ssot/registry.json"><img alt="SSOT governed" src="https://img.shields.io/badge/SSOT-governed-2f6f4e.svg"></a> <a href="https://discord.gg/jzvrbEtTtt"><img alt="Discord" src="https://img.shields.io/badge/Discord-Join%20chat-5865F2?logo=discord&logoColor=white"></a></p>
|
|
222
|
+
|
|
215
223
|
## Install
|
|
216
224
|
|
|
217
|
-
|
|
225
|
+
```bash
|
|
226
|
+
uv add tigrcorn-runtime
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
```bash
|
|
218
230
|
pip install tigrcorn-runtime
|
|
219
|
-
|
|
231
|
+
```
|
|
220
232
|
|
|
221
233
|
Use the aggregate [tigrcorn](https://pypi.org/project/tigrcorn/) distribution when you want the full ASGI3 Python web server stack. Install <code>tigrcorn-runtime</code> directly when you want only this package boundary and its declared dependencies.
|
|
222
234
|
|
|
223
235
|
## What It Owns
|
|
224
236
|
|
|
225
|
-
<code>tigrcorn-runtime</code> owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding,
|
|
237
|
+
<code>tigrcorn-runtime</code> owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli. Its import package is <code>tigrcorn_runtime</code>, and its declared package dependencies are: tigrcorn-core, tigrcorn-config, tigrcorn-asgi, tigrcorn-transports, tigrcorn-protocols, tigrcorn-security.
|
|
238
|
+
|
|
239
|
+
This package page is written for developers searching for Tigrcorn ASGI3 server components, Python web server packages, HTTP/3 and QUIC support, WebSocket and WebTransport-adjacent surfaces, and Apache 2.0 licensed infrastructure.
|
|
240
|
+
|
|
241
|
+
## Why Use This?
|
|
242
|
+
|
|
243
|
+
Use <code>tigrcorn-runtime</code> when you want the runtime layer as a direct install target instead of the full server bundle. It lets application, operator, or certification workflows depend on this boundary explicitly while keeping the broader Tigrcorn runtime assembled from smaller repo-owned package surfaces.
|
|
244
|
+
|
|
245
|
+
## FAQ
|
|
246
|
+
|
|
247
|
+
### What does this package export?
|
|
248
|
+
|
|
249
|
+
The package exports through the <code>tigrcorn_runtime</code> namespace and keeps the root <code>tigrcorn</code> package as the compatibility umbrella.
|
|
250
|
+
|
|
251
|
+
### Which boundary does this package own?
|
|
252
|
+
|
|
253
|
+
It is the package boundary for server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli in the Tigrcorn package graph.
|
|
226
254
|
|
|
227
|
-
|
|
255
|
+
### What should be imported from the runtime package first?
|
|
256
|
+
|
|
257
|
+
Start with run, serve, or serve_import_string when you need the packaged server entrypoints, embedded runtime orchestration, bootstrap flow, or worker lifecycle management.
|
|
258
|
+
|
|
259
|
+
## Features
|
|
260
|
+
|
|
261
|
+
- Owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli inside the Tigrcorn split-package architecture.
|
|
262
|
+
- Publishes the <code>tigrcorn_runtime</code> import surface for named public helpers and entrypoints.
|
|
263
|
+
- Declared runtime dependencies: tigrcorn-core, tigrcorn-config, tigrcorn-asgi, tigrcorn-transports, tigrcorn-protocols, tigrcorn-security.
|
|
264
|
+
- Optional dependency surface: uvloop, trio.
|
|
265
|
+
- Supports Python 3.10, 3.11, 3.12, 3.13, and 3.14.
|
|
228
266
|
|
|
229
267
|
## Use It When
|
|
230
268
|
|
|
231
|
-
Use <code>tigrcorn-runtime</code> when you need
|
|
269
|
+
Use <code>tigrcorn-runtime</code> when you need runtime-level behavior without pulling the entire server stack into the import surface. It is part of Tigrcorn's split-package architecture, so it can be installed independently while remaining linked to the rest of the Tigrcorn package family on PyPI.
|
|
232
270
|
|
|
233
271
|
## Import Surface
|
|
234
272
|
|
|
235
|
-
|
|
236
|
-
import
|
|
273
|
+
```python
|
|
274
|
+
from tigrcorn_runtime import run
|
|
237
275
|
|
|
238
|
-
print(
|
|
239
|
-
|
|
276
|
+
print(run.__name__)
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
Namespace discovery starts with `import tigrcorn_runtime`.
|
|
240
280
|
|
|
241
281
|
The package exposes its supported public surface through the <code>tigrcorn_runtime</code> namespace. The root [tigrcorn](https://pypi.org/project/tigrcorn/) package keeps compatibility shims for users who install the full server distribution.
|
|
242
282
|
|
|
283
|
+
## Related Packages
|
|
284
|
+
|
|
285
|
+
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/)
|
|
286
|
+
- [tigrcorn-config](https://pypi.org/project/tigrcorn-config/)
|
|
287
|
+
- [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/)
|
|
288
|
+
- [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/)
|
|
289
|
+
- [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/)
|
|
290
|
+
- [tigrcorn-security](https://pypi.org/project/tigrcorn-security/)
|
|
291
|
+
- [tigrcorn](https://pypi.org/project/tigrcorn/)
|
|
292
|
+
- [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/)
|
|
293
|
+
|
|
243
294
|
## Package Graph
|
|
244
295
|
|
|
245
|
-
[tigrcorn](https://pypi.org/project/tigrcorn/) | [tigrcorn-
|
|
296
|
+
[tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
|
|
297
|
+
|
|
298
|
+
## Best Practices
|
|
299
|
+
|
|
300
|
+
- Use this package when you need the packaged server entrypoints or embedded runtime orchestration.
|
|
301
|
+
- Keep worker, reload, and bootstrap behavior documented here before surfacing it at the repo root.
|
|
302
|
+
- Use config, protocol, transport, and security packages as inputs instead of re-owning those concerns in runtime code.
|
|
303
|
+
|
|
304
|
+
## License
|
|
305
|
+
|
|
306
|
+
Apache-2.0
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
<h1>tigrcorn-runtime</h1>
|
|
3
|
+
<img
|
|
4
|
+
src="https://raw.githubusercontent.com/Tigrbl/tigrcorn/master/assets/tigrcorn_logo.png"
|
|
5
|
+
alt="Tigrcorn tiger-unicorn logo"
|
|
6
|
+
width="140"
|
|
7
|
+
/>
|
|
8
|
+
|
|
9
|
+
<p><strong>Server runner, app loading, lifecycle hooks, workers, reload, and embedded runtime for the Tigrcorn ASGI3 web server.</strong></p>
|
|
10
|
+
|
|
11
|
+
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="PyPI version for tigrcorn-runtime" src="https://img.shields.io/pypi/v/tigrcorn-runtime?label=PyPI"></a>
|
|
12
|
+
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="tigrcorn-runtime package on PyPI" src="https://img.shields.io/badge/package-PyPI-blue"></a>
|
|
13
|
+
<a href="https://pepy.tech/project/tigrcorn-runtime"><img alt="Downloads for tigrcorn-runtime" src="https://static.pepy.tech/badge/tigrcorn-runtime"></a>
|
|
14
|
+
<a href="https://github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-runtime/README.md"><img alt="Hits for tigrcorn-runtime README" src="https://hits.sh/github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-runtime/README.md.svg?label=hits"></a>
|
|
15
|
+
<a href="LICENSE"><img alt="Apache 2.0 license" src="https://img.shields.io/badge/license-Apache%202.0-525252"></a>
|
|
16
|
+
<a href="pyproject.toml"><img alt="Python 3.10 | 3.11 | 3.12 | 3.13 | 3.14 supported" src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-3776ab"></a>
|
|
17
|
+
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="runtime role package" src="https://img.shields.io/badge/role-runtime-0a7f5a"></a>
|
|
18
|
+
</div>
|
|
19
|
+
|
|
20
|
+
<p align="center"><a href="https://github.com/Tigrbl/tigrcorn/blob/master/.ssot/registry.json"><img alt="SSOT governed" src="https://img.shields.io/badge/SSOT-governed-2f6f4e.svg"></a> <a href="https://discord.gg/jzvrbEtTtt"><img alt="Discord" src="https://img.shields.io/badge/Discord-Join%20chat-5865F2?logo=discord&logoColor=white"></a></p>
|
|
21
|
+
|
|
22
|
+
## Install
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
uv add tigrcorn-runtime
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
pip install tigrcorn-runtime
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Use the aggregate [tigrcorn](https://pypi.org/project/tigrcorn/) distribution when you want the full ASGI3 Python web server stack. Install <code>tigrcorn-runtime</code> directly when you want only this package boundary and its declared dependencies.
|
|
33
|
+
|
|
34
|
+
## What It Owns
|
|
35
|
+
|
|
36
|
+
<code>tigrcorn-runtime</code> owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli. Its import package is <code>tigrcorn_runtime</code>, and its declared package dependencies are: tigrcorn-core, tigrcorn-config, tigrcorn-asgi, tigrcorn-transports, tigrcorn-protocols, tigrcorn-security.
|
|
37
|
+
|
|
38
|
+
This package page is written for developers searching for Tigrcorn ASGI3 server components, Python web server packages, HTTP/3 and QUIC support, WebSocket and WebTransport-adjacent surfaces, and Apache 2.0 licensed infrastructure.
|
|
39
|
+
|
|
40
|
+
## Why Use This?
|
|
41
|
+
|
|
42
|
+
Use <code>tigrcorn-runtime</code> when you want the runtime layer as a direct install target instead of the full server bundle. It lets application, operator, or certification workflows depend on this boundary explicitly while keeping the broader Tigrcorn runtime assembled from smaller repo-owned package surfaces.
|
|
43
|
+
|
|
44
|
+
## FAQ
|
|
45
|
+
|
|
46
|
+
### What does this package export?
|
|
47
|
+
|
|
48
|
+
The package exports through the <code>tigrcorn_runtime</code> namespace and keeps the root <code>tigrcorn</code> package as the compatibility umbrella.
|
|
49
|
+
|
|
50
|
+
### Which boundary does this package own?
|
|
51
|
+
|
|
52
|
+
It is the package boundary for server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli in the Tigrcorn package graph.
|
|
53
|
+
|
|
54
|
+
### What should be imported from the runtime package first?
|
|
55
|
+
|
|
56
|
+
Start with run, serve, or serve_import_string when you need the packaged server entrypoints, embedded runtime orchestration, bootstrap flow, or worker lifecycle management.
|
|
57
|
+
|
|
58
|
+
## Features
|
|
59
|
+
|
|
60
|
+
- Owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli inside the Tigrcorn split-package architecture.
|
|
61
|
+
- Publishes the <code>tigrcorn_runtime</code> import surface for named public helpers and entrypoints.
|
|
62
|
+
- Declared runtime dependencies: tigrcorn-core, tigrcorn-config, tigrcorn-asgi, tigrcorn-transports, tigrcorn-protocols, tigrcorn-security.
|
|
63
|
+
- Optional dependency surface: uvloop, trio.
|
|
64
|
+
- Supports Python 3.10, 3.11, 3.12, 3.13, and 3.14.
|
|
65
|
+
|
|
66
|
+
## Use It When
|
|
67
|
+
|
|
68
|
+
Use <code>tigrcorn-runtime</code> when you need runtime-level behavior without pulling the entire server stack into the import surface. It is part of Tigrcorn's split-package architecture, so it can be installed independently while remaining linked to the rest of the Tigrcorn package family on PyPI.
|
|
69
|
+
|
|
70
|
+
## Import Surface
|
|
71
|
+
|
|
72
|
+
```python
|
|
73
|
+
from tigrcorn_runtime import run
|
|
74
|
+
|
|
75
|
+
print(run.__name__)
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
Namespace discovery starts with `import tigrcorn_runtime`.
|
|
79
|
+
|
|
80
|
+
The package exposes its supported public surface through the <code>tigrcorn_runtime</code> namespace. The root [tigrcorn](https://pypi.org/project/tigrcorn/) package keeps compatibility shims for users who install the full server distribution.
|
|
81
|
+
|
|
82
|
+
## Related Packages
|
|
83
|
+
|
|
84
|
+
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/)
|
|
85
|
+
- [tigrcorn-config](https://pypi.org/project/tigrcorn-config/)
|
|
86
|
+
- [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/)
|
|
87
|
+
- [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/)
|
|
88
|
+
- [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/)
|
|
89
|
+
- [tigrcorn-security](https://pypi.org/project/tigrcorn-security/)
|
|
90
|
+
- [tigrcorn](https://pypi.org/project/tigrcorn/)
|
|
91
|
+
- [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/)
|
|
92
|
+
|
|
93
|
+
## Package Graph
|
|
94
|
+
|
|
95
|
+
[tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
|
|
96
|
+
|
|
97
|
+
## Best Practices
|
|
98
|
+
|
|
99
|
+
- Use this package when you need the packaged server entrypoints or embedded runtime orchestration.
|
|
100
|
+
- Keep worker, reload, and bootstrap behavior documented here before surfacing it at the repo root.
|
|
101
|
+
- Use config, protocol, transport, and security packages as inputs instead of re-owning those concerns in runtime code.
|
|
102
|
+
|
|
103
|
+
## License
|
|
104
|
+
|
|
105
|
+
Apache-2.0
|
|
@@ -4,10 +4,10 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tigrcorn-runtime"
|
|
7
|
-
version = "0.3.16.
|
|
7
|
+
version = "0.3.16.dev12"
|
|
8
8
|
description = "Server runner, app loading, lifecycle hooks, workers, reload, and embedded runtime for the Tigrcorn ASGI3 web server."
|
|
9
9
|
readme = "README.md"
|
|
10
|
-
requires-python = ">=3.
|
|
10
|
+
requires-python = ">=3.10,<3.15"
|
|
11
11
|
license = {file = "LICENSE"}
|
|
12
12
|
authors = [{name = "Jacob Stewart", email = "jacob@swarmauri.com"}]
|
|
13
13
|
keywords = ["tigrcorn", "asgi-server", "server-runtime", "lifespan", "workers", "reload", "python-web-server"]
|
|
@@ -19,21 +19,23 @@ classifiers = [
|
|
|
19
19
|
"Operating System :: OS Independent",
|
|
20
20
|
"Programming Language :: Python :: 3",
|
|
21
21
|
"Programming Language :: Python :: 3 :: Only",
|
|
22
|
+
"Programming Language :: Python :: 3.10",
|
|
22
23
|
"Programming Language :: Python :: 3.11",
|
|
23
24
|
"Programming Language :: Python :: 3.12",
|
|
24
25
|
"Programming Language :: Python :: 3.13",
|
|
26
|
+
"Programming Language :: Python :: 3.14",
|
|
25
27
|
"Topic :: Internet :: WWW/HTTP",
|
|
26
28
|
"Topic :: Software Development :: Libraries :: Python Modules",
|
|
27
29
|
"Topic :: System :: Networking",
|
|
28
30
|
"Typing :: Typed",
|
|
29
31
|
]
|
|
30
32
|
dependencies = [
|
|
31
|
-
"tigrcorn-core==0.3.16.
|
|
32
|
-
"tigrcorn-config==0.3.16.
|
|
33
|
-
"tigrcorn-asgi==0.3.16.
|
|
34
|
-
"tigrcorn-transports==0.3.16.
|
|
35
|
-
"tigrcorn-protocols==0.3.16.
|
|
36
|
-
"tigrcorn-security==0.3.16.
|
|
33
|
+
"tigrcorn-core==0.3.16.dev12",
|
|
34
|
+
"tigrcorn-config==0.3.16.dev12",
|
|
35
|
+
"tigrcorn-asgi==0.3.16.dev12",
|
|
36
|
+
"tigrcorn-transports==0.3.16.dev12",
|
|
37
|
+
"tigrcorn-protocols==0.3.16.dev12",
|
|
38
|
+
"tigrcorn-security==0.3.16.dev12",
|
|
37
39
|
]
|
|
38
40
|
|
|
39
41
|
[project.optional-dependencies]
|
|
@@ -9,6 +9,8 @@ from tigrcorn_core.types import ASGIApp, Message, Scope
|
|
|
9
9
|
|
|
10
10
|
AppInterface = Literal["auto", "tigr-asgi-contract", "asgi3"]
|
|
11
11
|
APP_INTERFACE_VALUES: tuple[AppInterface, ...] = ("auto", "tigr-asgi-contract", "asgi3")
|
|
12
|
+
ResolvedAppInterface = Literal["tigr-asgi-contract", "asgi3"]
|
|
13
|
+
DispatchSource = Literal["explicit", "auto-marker", "auto-signature"]
|
|
12
14
|
|
|
13
15
|
Receive = Callable[[], Awaitable[Message]]
|
|
14
16
|
Send = Callable[[Message], Awaitable[None]]
|
|
@@ -34,9 +36,21 @@ class NativeContractApp:
|
|
|
34
36
|
|
|
35
37
|
@dataclass(frozen=True, slots=True)
|
|
36
38
|
class DispatchSelection:
|
|
37
|
-
interface:
|
|
39
|
+
interface: ResolvedAppInterface
|
|
38
40
|
app: ASGIApp
|
|
39
41
|
native: bool
|
|
42
|
+
requested_interface: AppInterface = "auto"
|
|
43
|
+
source: DispatchSource = "explicit"
|
|
44
|
+
reason: str = ""
|
|
45
|
+
|
|
46
|
+
def as_metadata(self) -> dict[str, str | bool]:
|
|
47
|
+
return {
|
|
48
|
+
"interface": self.interface,
|
|
49
|
+
"requested_interface": self.requested_interface,
|
|
50
|
+
"source": self.source,
|
|
51
|
+
"native": self.native,
|
|
52
|
+
"reason": self.reason,
|
|
53
|
+
}
|
|
40
54
|
|
|
41
55
|
|
|
42
56
|
def native_contract_app(
|
|
@@ -68,6 +82,13 @@ def is_native_contract_app(app: Any) -> bool:
|
|
|
68
82
|
return isinstance(app, NativeContractApp) or getattr(app, "__tigrcorn_app_interface__", None) == "tigr-asgi-contract"
|
|
69
83
|
|
|
70
84
|
|
|
85
|
+
def normalize_app_interface(value: str | None) -> AppInterface:
|
|
86
|
+
normalized = str(value or "auto").strip().lower().replace("_", "-")
|
|
87
|
+
if normalized not in APP_INTERFACE_VALUES:
|
|
88
|
+
raise AppInterfaceError(f"unsupported app interface: {value!r}")
|
|
89
|
+
return normalized # type: ignore[return-value]
|
|
90
|
+
|
|
91
|
+
|
|
71
92
|
def _as_native(app: Any) -> NativeContractApp:
|
|
72
93
|
if isinstance(app, NativeContractApp):
|
|
73
94
|
return app
|
|
@@ -84,22 +105,49 @@ def _is_unambiguous_asgi3(app: Any) -> bool:
|
|
|
84
105
|
|
|
85
106
|
|
|
86
107
|
def resolve_app_dispatch(app: Any, interface: AppInterface = "auto") -> DispatchSelection:
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
if interface == "tigr-asgi-contract":
|
|
108
|
+
requested = normalize_app_interface(interface)
|
|
109
|
+
if requested == "tigr-asgi-contract":
|
|
90
110
|
if not is_native_contract_app(app):
|
|
91
111
|
raise AppInterfaceError("explicit tigr-asgi-contract selection requires a native contract app marker or wrapper")
|
|
92
|
-
return DispatchSelection(
|
|
93
|
-
|
|
112
|
+
return DispatchSelection(
|
|
113
|
+
"tigr-asgi-contract",
|
|
114
|
+
_as_native(app),
|
|
115
|
+
True,
|
|
116
|
+
requested_interface=requested,
|
|
117
|
+
source="explicit",
|
|
118
|
+
reason="explicit native contract interface selection",
|
|
119
|
+
)
|
|
120
|
+
if requested == "asgi3":
|
|
94
121
|
try:
|
|
95
122
|
assert_asgi3_app(app)
|
|
96
123
|
except Exception as exc:
|
|
97
124
|
raise AppInterfaceError("explicit asgi3 selection requires an ASGI 3 callable") from exc
|
|
98
|
-
return DispatchSelection(
|
|
125
|
+
return DispatchSelection(
|
|
126
|
+
"asgi3",
|
|
127
|
+
app,
|
|
128
|
+
False,
|
|
129
|
+
requested_interface=requested,
|
|
130
|
+
source="explicit",
|
|
131
|
+
reason="explicit ASGI 3 interface selection",
|
|
132
|
+
)
|
|
99
133
|
|
|
100
134
|
if is_native_contract_app(app):
|
|
101
|
-
return DispatchSelection(
|
|
135
|
+
return DispatchSelection(
|
|
136
|
+
"tigr-asgi-contract",
|
|
137
|
+
_as_native(app),
|
|
138
|
+
True,
|
|
139
|
+
requested_interface=requested,
|
|
140
|
+
source="auto-marker",
|
|
141
|
+
reason="native contract app marker selected before signature introspection",
|
|
142
|
+
)
|
|
102
143
|
if _is_unambiguous_asgi3(app):
|
|
103
144
|
assert_asgi3_app(app)
|
|
104
|
-
return DispatchSelection(
|
|
145
|
+
return DispatchSelection(
|
|
146
|
+
"asgi3",
|
|
147
|
+
app,
|
|
148
|
+
False,
|
|
149
|
+
requested_interface=requested,
|
|
150
|
+
source="auto-signature",
|
|
151
|
+
reason="unambiguous ASGI 3 callable signature",
|
|
152
|
+
)
|
|
105
153
|
raise AppInterfaceError("ambiguous or unsupported application interface; select asgi3 or tigr-asgi-contract explicitly")
|
{tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/runner.py
RENAMED
|
@@ -47,7 +47,10 @@ class TigrCornServer:
|
|
|
47
47
|
def __init__(self, app: ASGIApp, config: ServerConfig) -> None:
|
|
48
48
|
selection = resolve_app_dispatch(app, config.app.interface)
|
|
49
49
|
self.app = selection.app
|
|
50
|
+
self.app_dispatch_selection = selection
|
|
50
51
|
self.app_interface = selection.interface
|
|
52
|
+
self.app_interface_source = selection.source
|
|
53
|
+
self.app_interface_reason = selection.reason
|
|
51
54
|
self.config = config
|
|
52
55
|
self._resolved_logging = resolve_logging_config(config.log_level, config=config.logging)
|
|
53
56
|
self.logger = configure_logging(config.log_level, config=config.logging)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tigrcorn-runtime
|
|
3
|
-
Version: 0.3.16.
|
|
3
|
+
Version: 0.3.16.dev12
|
|
4
4
|
Summary: Server runner, app loading, lifecycle hooks, workers, reload, and embedded runtime for the Tigrcorn ASGI3 web server.
|
|
5
5
|
Author-email: Jacob Stewart <jacob@swarmauri.com>
|
|
6
6
|
License: Apache License
|
|
@@ -175,22 +175,24 @@ Classifier: License :: OSI Approved :: Apache Software License
|
|
|
175
175
|
Classifier: Operating System :: OS Independent
|
|
176
176
|
Classifier: Programming Language :: Python :: 3
|
|
177
177
|
Classifier: Programming Language :: Python :: 3 :: Only
|
|
178
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
178
179
|
Classifier: Programming Language :: Python :: 3.11
|
|
179
180
|
Classifier: Programming Language :: Python :: 3.12
|
|
180
181
|
Classifier: Programming Language :: Python :: 3.13
|
|
182
|
+
Classifier: Programming Language :: Python :: 3.14
|
|
181
183
|
Classifier: Topic :: Internet :: WWW/HTTP
|
|
182
184
|
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
183
185
|
Classifier: Topic :: System :: Networking
|
|
184
186
|
Classifier: Typing :: Typed
|
|
185
|
-
Requires-Python:
|
|
187
|
+
Requires-Python: <3.15,>=3.10
|
|
186
188
|
Description-Content-Type: text/markdown
|
|
187
189
|
License-File: LICENSE
|
|
188
|
-
Requires-Dist: tigrcorn-core==0.3.16.
|
|
189
|
-
Requires-Dist: tigrcorn-config==0.3.16.
|
|
190
|
-
Requires-Dist: tigrcorn-asgi==0.3.16.
|
|
191
|
-
Requires-Dist: tigrcorn-transports==0.3.16.
|
|
192
|
-
Requires-Dist: tigrcorn-protocols==0.3.16.
|
|
193
|
-
Requires-Dist: tigrcorn-security==0.3.16.
|
|
190
|
+
Requires-Dist: tigrcorn-core==0.3.16.dev12
|
|
191
|
+
Requires-Dist: tigrcorn-config==0.3.16.dev12
|
|
192
|
+
Requires-Dist: tigrcorn-asgi==0.3.16.dev12
|
|
193
|
+
Requires-Dist: tigrcorn-transports==0.3.16.dev12
|
|
194
|
+
Requires-Dist: tigrcorn-protocols==0.3.16.dev12
|
|
195
|
+
Requires-Dist: tigrcorn-security==0.3.16.dev12
|
|
194
196
|
Provides-Extra: uvloop
|
|
195
197
|
Requires-Dist: uvloop>=0.19.0; platform_system != "Windows" and extra == "uvloop"
|
|
196
198
|
Provides-Extra: trio
|
|
@@ -199,47 +201,106 @@ Dynamic: license-file
|
|
|
199
201
|
|
|
200
202
|
<div align="center">
|
|
201
203
|
<h1>tigrcorn-runtime</h1>
|
|
204
|
+
<img
|
|
205
|
+
src="https://raw.githubusercontent.com/Tigrbl/tigrcorn/master/assets/tigrcorn_logo.png"
|
|
206
|
+
alt="Tigrcorn tiger-unicorn logo"
|
|
207
|
+
width="140"
|
|
208
|
+
/>
|
|
202
209
|
|
|
203
210
|
<p><strong>Server runner, app loading, lifecycle hooks, workers, reload, and embedded runtime for the Tigrcorn ASGI3 web server.</strong></p>
|
|
204
211
|
|
|
205
212
|
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="PyPI version for tigrcorn-runtime" src="https://img.shields.io/pypi/v/tigrcorn-runtime?label=PyPI"></a>
|
|
206
213
|
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="tigrcorn-runtime package on PyPI" src="https://img.shields.io/badge/package-PyPI-blue"></a>
|
|
214
|
+
<a href="https://pepy.tech/project/tigrcorn-runtime"><img alt="Downloads for tigrcorn-runtime" src="https://static.pepy.tech/badge/tigrcorn-runtime"></a>
|
|
215
|
+
<a href="https://github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-runtime/README.md"><img alt="Hits for tigrcorn-runtime README" src="https://hits.sh/github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-runtime/README.md.svg?label=hits"></a>
|
|
207
216
|
<a href="LICENSE"><img alt="Apache 2.0 license" src="https://img.shields.io/badge/license-Apache%202.0-525252"></a>
|
|
208
|
-
<a href="pyproject.toml"><img alt="Python 3.11 supported" src="https://img.shields.io/badge/python-3.11-3776ab"></a>
|
|
209
|
-
<a href="pyproject.toml"><img alt="Python 3.12 supported" src="https://img.shields.io/badge/python-3.12-3776ab"></a>
|
|
210
|
-
<a href="pyproject.toml"><img alt="Python 3.13 supported" src="https://img.shields.io/badge/python-3.13-3776ab"></a>
|
|
211
|
-
<a href="src/tigrcorn_runtime/py.typed"><img alt="typed package" src="https://img.shields.io/badge/typed-py.typed-2f7ed8"></a>
|
|
217
|
+
<a href="pyproject.toml"><img alt="Python 3.10 | 3.11 | 3.12 | 3.13 | 3.14 supported" src="https://img.shields.io/badge/python-3.10%20%7C%203.11%20%7C%203.12%20%7C%203.13%20%7C%203.14-3776ab"></a>
|
|
212
218
|
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="runtime role package" src="https://img.shields.io/badge/role-runtime-0a7f5a"></a>
|
|
213
219
|
</div>
|
|
214
220
|
|
|
221
|
+
<p align="center"><a href="https://github.com/Tigrbl/tigrcorn/blob/master/.ssot/registry.json"><img alt="SSOT governed" src="https://img.shields.io/badge/SSOT-governed-2f6f4e.svg"></a> <a href="https://discord.gg/jzvrbEtTtt"><img alt="Discord" src="https://img.shields.io/badge/Discord-Join%20chat-5865F2?logo=discord&logoColor=white"></a></p>
|
|
222
|
+
|
|
215
223
|
## Install
|
|
216
224
|
|
|
217
|
-
|
|
225
|
+
```bash
|
|
226
|
+
uv add tigrcorn-runtime
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
```bash
|
|
218
230
|
pip install tigrcorn-runtime
|
|
219
|
-
|
|
231
|
+
```
|
|
220
232
|
|
|
221
233
|
Use the aggregate [tigrcorn](https://pypi.org/project/tigrcorn/) distribution when you want the full ASGI3 Python web server stack. Install <code>tigrcorn-runtime</code> directly when you want only this package boundary and its declared dependencies.
|
|
222
234
|
|
|
223
235
|
## What It Owns
|
|
224
236
|
|
|
225
|
-
<code>tigrcorn-runtime</code> owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding,
|
|
237
|
+
<code>tigrcorn-runtime</code> owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli. Its import package is <code>tigrcorn_runtime</code>, and its declared package dependencies are: tigrcorn-core, tigrcorn-config, tigrcorn-asgi, tigrcorn-transports, tigrcorn-protocols, tigrcorn-security.
|
|
238
|
+
|
|
239
|
+
This package page is written for developers searching for Tigrcorn ASGI3 server components, Python web server packages, HTTP/3 and QUIC support, WebSocket and WebTransport-adjacent surfaces, and Apache 2.0 licensed infrastructure.
|
|
240
|
+
|
|
241
|
+
## Why Use This?
|
|
242
|
+
|
|
243
|
+
Use <code>tigrcorn-runtime</code> when you want the runtime layer as a direct install target instead of the full server bundle. It lets application, operator, or certification workflows depend on this boundary explicitly while keeping the broader Tigrcorn runtime assembled from smaller repo-owned package surfaces.
|
|
244
|
+
|
|
245
|
+
## FAQ
|
|
246
|
+
|
|
247
|
+
### What does this package export?
|
|
248
|
+
|
|
249
|
+
The package exports through the <code>tigrcorn_runtime</code> namespace and keeps the root <code>tigrcorn</code> package as the compatibility umbrella.
|
|
250
|
+
|
|
251
|
+
### Which boundary does this package own?
|
|
252
|
+
|
|
253
|
+
It is the package boundary for server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli in the Tigrcorn package graph.
|
|
226
254
|
|
|
227
|
-
|
|
255
|
+
### What should be imported from the runtime package first?
|
|
256
|
+
|
|
257
|
+
Start with run, serve, or serve_import_string when you need the packaged server entrypoints, embedded runtime orchestration, bootstrap flow, or worker lifecycle management.
|
|
258
|
+
|
|
259
|
+
## Features
|
|
260
|
+
|
|
261
|
+
- Owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding, and cli inside the Tigrcorn split-package architecture.
|
|
262
|
+
- Publishes the <code>tigrcorn_runtime</code> import surface for named public helpers and entrypoints.
|
|
263
|
+
- Declared runtime dependencies: tigrcorn-core, tigrcorn-config, tigrcorn-asgi, tigrcorn-transports, tigrcorn-protocols, tigrcorn-security.
|
|
264
|
+
- Optional dependency surface: uvloop, trio.
|
|
265
|
+
- Supports Python 3.10, 3.11, 3.12, 3.13, and 3.14.
|
|
228
266
|
|
|
229
267
|
## Use It When
|
|
230
268
|
|
|
231
|
-
Use <code>tigrcorn-runtime</code> when you need
|
|
269
|
+
Use <code>tigrcorn-runtime</code> when you need runtime-level behavior without pulling the entire server stack into the import surface. It is part of Tigrcorn's split-package architecture, so it can be installed independently while remaining linked to the rest of the Tigrcorn package family on PyPI.
|
|
232
270
|
|
|
233
271
|
## Import Surface
|
|
234
272
|
|
|
235
|
-
|
|
236
|
-
import
|
|
273
|
+
```python
|
|
274
|
+
from tigrcorn_runtime import run
|
|
237
275
|
|
|
238
|
-
print(
|
|
239
|
-
|
|
276
|
+
print(run.__name__)
|
|
277
|
+
```
|
|
278
|
+
|
|
279
|
+
Namespace discovery starts with `import tigrcorn_runtime`.
|
|
240
280
|
|
|
241
281
|
The package exposes its supported public surface through the <code>tigrcorn_runtime</code> namespace. The root [tigrcorn](https://pypi.org/project/tigrcorn/) package keeps compatibility shims for users who install the full server distribution.
|
|
242
282
|
|
|
283
|
+
## Related Packages
|
|
284
|
+
|
|
285
|
+
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/)
|
|
286
|
+
- [tigrcorn-config](https://pypi.org/project/tigrcorn-config/)
|
|
287
|
+
- [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/)
|
|
288
|
+
- [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/)
|
|
289
|
+
- [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/)
|
|
290
|
+
- [tigrcorn-security](https://pypi.org/project/tigrcorn-security/)
|
|
291
|
+
- [tigrcorn](https://pypi.org/project/tigrcorn/)
|
|
292
|
+
- [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/)
|
|
293
|
+
|
|
243
294
|
## Package Graph
|
|
244
295
|
|
|
245
|
-
[tigrcorn](https://pypi.org/project/tigrcorn/) | [tigrcorn-
|
|
296
|
+
[tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
|
|
297
|
+
|
|
298
|
+
## Best Practices
|
|
299
|
+
|
|
300
|
+
- Use this package when you need the packaged server entrypoints or embedded runtime orchestration.
|
|
301
|
+
- Keep worker, reload, and bootstrap behavior documented here before surfacing it at the repo root.
|
|
302
|
+
- Use config, protocol, transport, and security packages as inputs instead of re-owning those concerns in runtime code.
|
|
303
|
+
|
|
304
|
+
## License
|
|
305
|
+
|
|
306
|
+
Apache-2.0
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
tigrcorn-core==0.3.16.dev12
|
|
2
|
+
tigrcorn-config==0.3.16.dev12
|
|
3
|
+
tigrcorn-asgi==0.3.16.dev12
|
|
4
|
+
tigrcorn-transports==0.3.16.dev12
|
|
5
|
+
tigrcorn-protocols==0.3.16.dev12
|
|
6
|
+
tigrcorn-security==0.3.16.dev12
|
|
7
|
+
|
|
8
|
+
[trio]
|
|
9
|
+
trio>=0.25.0
|
|
10
|
+
|
|
11
|
+
[uvloop]
|
|
12
|
+
|
|
13
|
+
[uvloop:platform_system != "Windows"]
|
|
14
|
+
uvloop>=0.19.0
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
<h1>tigrcorn-runtime</h1>
|
|
3
|
-
|
|
4
|
-
<p><strong>Server runner, app loading, lifecycle hooks, workers, reload, and embedded runtime for the Tigrcorn ASGI3 web server.</strong></p>
|
|
5
|
-
|
|
6
|
-
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="PyPI version for tigrcorn-runtime" src="https://img.shields.io/pypi/v/tigrcorn-runtime?label=PyPI"></a>
|
|
7
|
-
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="tigrcorn-runtime package on PyPI" src="https://img.shields.io/badge/package-PyPI-blue"></a>
|
|
8
|
-
<a href="LICENSE"><img alt="Apache 2.0 license" src="https://img.shields.io/badge/license-Apache%202.0-525252"></a>
|
|
9
|
-
<a href="pyproject.toml"><img alt="Python 3.11 supported" src="https://img.shields.io/badge/python-3.11-3776ab"></a>
|
|
10
|
-
<a href="pyproject.toml"><img alt="Python 3.12 supported" src="https://img.shields.io/badge/python-3.12-3776ab"></a>
|
|
11
|
-
<a href="pyproject.toml"><img alt="Python 3.13 supported" src="https://img.shields.io/badge/python-3.13-3776ab"></a>
|
|
12
|
-
<a href="src/tigrcorn_runtime/py.typed"><img alt="typed package" src="https://img.shields.io/badge/typed-py.typed-2f7ed8"></a>
|
|
13
|
-
<a href="https://pypi.org/project/tigrcorn-runtime/"><img alt="runtime role package" src="https://img.shields.io/badge/role-runtime-0a7f5a"></a>
|
|
14
|
-
</div>
|
|
15
|
-
|
|
16
|
-
## Install
|
|
17
|
-
|
|
18
|
-
~~~bash
|
|
19
|
-
pip install tigrcorn-runtime
|
|
20
|
-
~~~
|
|
21
|
-
|
|
22
|
-
Use the aggregate [tigrcorn](https://pypi.org/project/tigrcorn/) distribution when you want the full ASGI3 Python web server stack. Install <code>tigrcorn-runtime</code> directly when you want only this package boundary and its declared dependencies.
|
|
23
|
-
|
|
24
|
-
## What It Owns
|
|
25
|
-
|
|
26
|
-
<code>tigrcorn-runtime</code> owns server runner, app loading, bootstrap, signals, shutdown, workers, embedding, reload, and CLI-facing runtime orchestration. Its import package is <code>tigrcorn_runtime</code>, and its declared package dependencies are: tigrcorn-core, tigrcorn-config, tigrcorn-asgi, tigrcorn-transports, tigrcorn-protocols, tigrcorn-security.
|
|
27
|
-
|
|
28
|
-
This package page is written for developers searching for Tigrcorn ASGI3 server components, Python web server packages, HTTP/3 and QUIC support, WebSocket and WebTransport runtime surfaces, typed package boundaries, and Apache 2.0 licensed infrastructure.
|
|
29
|
-
|
|
30
|
-
## Use It When
|
|
31
|
-
|
|
32
|
-
Use <code>tigrcorn-runtime</code> when you need to run, embed, supervise, or lifecycle-manage Tigrcorn as an ASGI3 Python web server. It is part of Tigrcorn's split-package architecture, so it can be installed independently while remaining linked to the rest of the Tigrcorn package family on PyPI.
|
|
33
|
-
|
|
34
|
-
## Import Surface
|
|
35
|
-
|
|
36
|
-
~~~python
|
|
37
|
-
import tigrcorn_runtime
|
|
38
|
-
|
|
39
|
-
print(tigrcorn_runtime.__name__)
|
|
40
|
-
~~~
|
|
41
|
-
|
|
42
|
-
The package exposes its supported public surface through the <code>tigrcorn_runtime</code> namespace. The root [tigrcorn](https://pypi.org/project/tigrcorn/) package keeps compatibility shims for users who install the full server distribution.
|
|
43
|
-
|
|
44
|
-
## Package Graph
|
|
45
|
-
|
|
46
|
-
[tigrcorn](https://pypi.org/project/tigrcorn/) | [tigrcorn-core](https://pypi.org/project/tigrcorn-core/) | [tigrcorn-config](https://pypi.org/project/tigrcorn-config/) | [tigrcorn-asgi](https://pypi.org/project/tigrcorn-asgi/) | [tigrcorn-contract](https://pypi.org/project/tigrcorn-contract/) | [tigrcorn-transports](https://pypi.org/project/tigrcorn-transports/) | [tigrcorn-protocols](https://pypi.org/project/tigrcorn-protocols/) | [tigrcorn-http](https://pypi.org/project/tigrcorn-http/) | [tigrcorn-security](https://pypi.org/project/tigrcorn-security/) | [tigrcorn-runtime](https://pypi.org/project/tigrcorn-runtime/) | [tigrcorn-static](https://pypi.org/project/tigrcorn-static/) | [tigrcorn-observability](https://pypi.org/project/tigrcorn-observability/) | [tigrcorn-compat](https://pypi.org/project/tigrcorn-compat/) | [tigrcorn-certification](https://pypi.org/project/tigrcorn-certification/)
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
tigrcorn-core==0.3.16.dev5
|
|
2
|
-
tigrcorn-config==0.3.16.dev5
|
|
3
|
-
tigrcorn-asgi==0.3.16.dev5
|
|
4
|
-
tigrcorn-transports==0.3.16.dev5
|
|
5
|
-
tigrcorn-protocols==0.3.16.dev5
|
|
6
|
-
tigrcorn-security==0.3.16.dev5
|
|
7
|
-
|
|
8
|
-
[trio]
|
|
9
|
-
trio>=0.25.0
|
|
10
|
-
|
|
11
|
-
[uvloop]
|
|
12
|
-
|
|
13
|
-
[uvloop:platform_system != "Windows"]
|
|
14
|
-
uvloop>=0.19.0
|
|
File without changes
|
|
File without changes
|
{tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/embedded.py
RENAMED
|
File without changes
|
{tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/py.typed
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/hooks.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/server/state.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/workers/local.py
RENAMED
|
File without changes
|
{tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev12}/src/tigrcorn_runtime/workers/model.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|