tigrcorn-runtime 0.3.16.dev5__tar.gz → 0.3.16.dev11__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.
Files changed (33) hide show
  1. {tigrcorn_runtime-0.3.16.dev5/src/tigrcorn_runtime.egg-info → tigrcorn_runtime-0.3.16.dev11}/PKG-INFO +83 -22
  2. tigrcorn_runtime-0.3.16.dev11/README.md +105 -0
  3. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/pyproject.toml +10 -8
  4. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/app_interfaces.py +57 -9
  5. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/runner.py +3 -0
  6. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11/src/tigrcorn_runtime.egg-info}/PKG-INFO +83 -22
  7. tigrcorn_runtime-0.3.16.dev11/src/tigrcorn_runtime.egg-info/requires.txt +14 -0
  8. tigrcorn_runtime-0.3.16.dev5/README.md +0 -46
  9. tigrcorn_runtime-0.3.16.dev5/src/tigrcorn_runtime.egg-info/requires.txt +0 -14
  10. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/LICENSE +0 -0
  11. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/setup.cfg +0 -0
  12. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/__init__.py +0 -0
  13. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/api.py +0 -0
  14. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/cli.py +0 -0
  15. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/embedded.py +0 -0
  16. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/py.typed +0 -0
  17. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/__init__.py +0 -0
  18. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/app_loader.py +0 -0
  19. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/bootstrap.py +0 -0
  20. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/hooks.py +0 -0
  21. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/reloader.py +0 -0
  22. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/shutdown.py +0 -0
  23. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/signals.py +0 -0
  24. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/state.py +0 -0
  25. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/server/supervisor.py +0 -0
  26. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/workers/__init__.py +0 -0
  27. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/workers/local.py +0 -0
  28. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/workers/model.py +0 -0
  29. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/workers/process.py +0 -0
  30. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime/workers/supervisor.py +0 -0
  31. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime.egg-info/SOURCES.txt +0 -0
  32. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/src/tigrcorn_runtime.egg-info/dependency_links.txt +0 -0
  33. {tigrcorn_runtime-0.3.16.dev5 → tigrcorn_runtime-0.3.16.dev11}/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.dev5
3
+ Version: 0.3.16.dev11
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: >=3.11
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.dev5
189
- Requires-Dist: tigrcorn-config==0.3.16.dev5
190
- Requires-Dist: tigrcorn-asgi==0.3.16.dev5
191
- Requires-Dist: tigrcorn-transports==0.3.16.dev5
192
- Requires-Dist: tigrcorn-protocols==0.3.16.dev5
193
- Requires-Dist: tigrcorn-security==0.3.16.dev5
190
+ Requires-Dist: tigrcorn-core==0.3.16.dev11
191
+ Requires-Dist: tigrcorn-config==0.3.16.dev11
192
+ Requires-Dist: tigrcorn-asgi==0.3.16.dev11
193
+ Requires-Dist: tigrcorn-transports==0.3.16.dev11
194
+ Requires-Dist: tigrcorn-protocols==0.3.16.dev11
195
+ Requires-Dist: tigrcorn-security==0.3.16.dev11
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&amp;logoColor=white"></a></p>
222
+
215
223
  ## Install
216
224
 
217
- ~~~bash
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, 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.
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
- 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.
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 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.
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
- ~~~python
236
- import tigrcorn_runtime
273
+ ```python
274
+ from tigrcorn_runtime import run
237
275
 
238
- print(tigrcorn_runtime.__name__)
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-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/)
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&amp;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.dev5"
7
+ version = "0.3.16.dev11"
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.11"
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.dev5",
32
- "tigrcorn-config==0.3.16.dev5",
33
- "tigrcorn-asgi==0.3.16.dev5",
34
- "tigrcorn-transports==0.3.16.dev5",
35
- "tigrcorn-protocols==0.3.16.dev5",
36
- "tigrcorn-security==0.3.16.dev5",
33
+ "tigrcorn-core==0.3.16.dev11",
34
+ "tigrcorn-config==0.3.16.dev11",
35
+ "tigrcorn-asgi==0.3.16.dev11",
36
+ "tigrcorn-transports==0.3.16.dev11",
37
+ "tigrcorn-protocols==0.3.16.dev11",
38
+ "tigrcorn-security==0.3.16.dev11",
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: Literal["tigr-asgi-contract", "asgi3"]
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
- if interface not in APP_INTERFACE_VALUES:
88
- raise AppInterfaceError(f"unsupported app interface: {interface!r}")
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("tigr-asgi-contract", _as_native(app), True)
93
- if interface == "asgi3":
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("asgi3", app, False)
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("tigr-asgi-contract", _as_native(app), True)
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("asgi3", app, False)
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")
@@ -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.dev5
3
+ Version: 0.3.16.dev11
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: >=3.11
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.dev5
189
- Requires-Dist: tigrcorn-config==0.3.16.dev5
190
- Requires-Dist: tigrcorn-asgi==0.3.16.dev5
191
- Requires-Dist: tigrcorn-transports==0.3.16.dev5
192
- Requires-Dist: tigrcorn-protocols==0.3.16.dev5
193
- Requires-Dist: tigrcorn-security==0.3.16.dev5
190
+ Requires-Dist: tigrcorn-core==0.3.16.dev11
191
+ Requires-Dist: tigrcorn-config==0.3.16.dev11
192
+ Requires-Dist: tigrcorn-asgi==0.3.16.dev11
193
+ Requires-Dist: tigrcorn-transports==0.3.16.dev11
194
+ Requires-Dist: tigrcorn-protocols==0.3.16.dev11
195
+ Requires-Dist: tigrcorn-security==0.3.16.dev11
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&amp;logoColor=white"></a></p>
222
+
215
223
  ## Install
216
224
 
217
- ~~~bash
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, 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.
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
- 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.
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 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.
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
- ~~~python
236
- import tigrcorn_runtime
273
+ ```python
274
+ from tigrcorn_runtime import run
237
275
 
238
- print(tigrcorn_runtime.__name__)
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-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/)
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.dev11
2
+ tigrcorn-config==0.3.16.dev11
3
+ tigrcorn-asgi==0.3.16.dev11
4
+ tigrcorn-transports==0.3.16.dev11
5
+ tigrcorn-protocols==0.3.16.dev11
6
+ tigrcorn-security==0.3.16.dev11
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