tigrcorn-config 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.
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/PKG-INFO +73 -17
- tigrcorn_config-0.3.16.dev11/README.md +100 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/pyproject.toml +5 -3
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/governance_surface.py +9 -64
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config.egg-info/PKG-INFO +73 -17
- tigrcorn_config-0.3.16.dev11/src/tigrcorn_config.egg-info/requires.txt +4 -0
- tigrcorn_config-0.3.16.dev5/README.md +0 -46
- tigrcorn_config-0.3.16.dev5/src/tigrcorn_config.egg-info/requires.txt +0 -4
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/LICENSE +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/setup.cfg +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/__init__.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/audit.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/defaults.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/env.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/files.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/load.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/merge.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/model.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/negative_surface.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/normalize.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/observability_surface.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/origin_surface.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/policy_surface.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/profiles.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/py.typed +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/quic_surface.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/validate.py +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config.egg-info/SOURCES.txt +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config.egg-info/dependency_links.txt +0 -0
- {tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config.egg-info/top_level.txt +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tigrcorn-config
|
|
3
|
-
Version: 0.3.16.
|
|
3
|
+
Version: 0.3.16.dev11
|
|
4
4
|
Summary: Typed configuration models, profiles, environment loading, and validation for the Tigrcorn ASGI/HTTP server stack.
|
|
5
5
|
Author-email: Jacob Stewart <jacob@swarmauri.com>
|
|
6
6
|
License: Apache License
|
|
@@ -175,63 +175,119 @@ 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: Typing :: Typed
|
|
184
|
-
Requires-Python:
|
|
186
|
+
Requires-Python: <3.15,>=3.10
|
|
185
187
|
Description-Content-Type: text/markdown
|
|
186
188
|
License-File: LICENSE
|
|
187
|
-
Requires-Dist: tigrcorn-core==0.3.16.
|
|
189
|
+
Requires-Dist: tigrcorn-core==0.3.16.dev11
|
|
188
190
|
Provides-Extra: yaml
|
|
189
191
|
Requires-Dist: PyYAML>=6.0; extra == "yaml"
|
|
190
192
|
Dynamic: license-file
|
|
191
193
|
|
|
192
194
|
<div align="center">
|
|
193
195
|
<h1>tigrcorn-config</h1>
|
|
196
|
+
<img
|
|
197
|
+
src="https://raw.githubusercontent.com/Tigrbl/tigrcorn/master/assets/tigrcorn_logo.png"
|
|
198
|
+
alt="Tigrcorn tiger-unicorn logo"
|
|
199
|
+
width="140"
|
|
200
|
+
/>
|
|
194
201
|
|
|
195
202
|
<p><strong>Typed configuration models, profiles, environment loading, and validation for the Tigrcorn ASGI/HTTP server stack.</strong></p>
|
|
196
203
|
|
|
197
204
|
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="PyPI version for tigrcorn-config" src="https://img.shields.io/pypi/v/tigrcorn-config?label=PyPI"></a>
|
|
198
205
|
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="tigrcorn-config package on PyPI" src="https://img.shields.io/badge/package-PyPI-blue"></a>
|
|
206
|
+
<a href="https://pepy.tech/project/tigrcorn-config"><img alt="Downloads for tigrcorn-config" src="https://static.pepy.tech/badge/tigrcorn-config"></a>
|
|
207
|
+
<a href="https://github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-config/README.md"><img alt="Hits for tigrcorn-config README" src="https://hits.sh/github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-config/README.md.svg?label=hits"></a>
|
|
199
208
|
<a href="LICENSE"><img alt="Apache 2.0 license" src="https://img.shields.io/badge/license-Apache%202.0-525252"></a>
|
|
200
|
-
<a href="pyproject.toml"><img alt="Python 3.11 supported" src="https://img.shields.io/badge/python-3.11-3776ab"></a>
|
|
201
|
-
<a href="pyproject.toml"><img alt="Python 3.12 supported" src="https://img.shields.io/badge/python-3.12-3776ab"></a>
|
|
202
|
-
<a href="pyproject.toml"><img alt="Python 3.13 supported" src="https://img.shields.io/badge/python-3.13-3776ab"></a>
|
|
203
|
-
<a href="src/tigrcorn_config/py.typed"><img alt="typed package" src="https://img.shields.io/badge/typed-py.typed-2f7ed8"></a>
|
|
209
|
+
<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>
|
|
204
210
|
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="config role package" src="https://img.shields.io/badge/role-config-0a7f5a"></a>
|
|
205
211
|
</div>
|
|
206
212
|
|
|
213
|
+
<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>
|
|
214
|
+
|
|
207
215
|
## Install
|
|
208
216
|
|
|
209
|
-
|
|
217
|
+
```bash
|
|
218
|
+
uv add tigrcorn-config
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
```bash
|
|
210
222
|
pip install tigrcorn-config
|
|
211
|
-
|
|
223
|
+
```
|
|
212
224
|
|
|
213
225
|
Use the aggregate [tigrcorn](https://pypi.org/project/tigrcorn/) distribution when you want the full ASGI3 Python web server stack. Install <code>tigrcorn-config</code> directly when you want only this package boundary and its declared dependencies.
|
|
214
226
|
|
|
215
227
|
## What It Owns
|
|
216
228
|
|
|
217
|
-
<code>tigrcorn-config</code> owns
|
|
229
|
+
<code>tigrcorn-config</code> owns config models, normalization, validation, profiles, and env and file loading. Its import package is <code>tigrcorn_config</code>, and its declared package dependencies are: tigrcorn-core.
|
|
230
|
+
|
|
231
|
+
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.
|
|
232
|
+
|
|
233
|
+
## Why Use This?
|
|
234
|
+
|
|
235
|
+
Use <code>tigrcorn-config</code> when you want the config 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.
|
|
236
|
+
|
|
237
|
+
## FAQ
|
|
238
|
+
|
|
239
|
+
### What does this package export?
|
|
240
|
+
|
|
241
|
+
The package exports through the <code>tigrcorn_config</code> namespace and keeps the root <code>tigrcorn</code> package as the compatibility umbrella.
|
|
242
|
+
|
|
243
|
+
### Which boundary does this package own?
|
|
244
|
+
|
|
245
|
+
It is the package boundary for config models, normalization, validation, profiles, and env and file loading in the Tigrcorn package graph.
|
|
218
246
|
|
|
219
|
-
|
|
247
|
+
### How does this package fit into the runtime stack?
|
|
248
|
+
|
|
249
|
+
It owns typed configuration, profile resolution, defaults, and environment or file loading so runtime, transports, and security packages can consume one normalized config surface.
|
|
250
|
+
|
|
251
|
+
## Features
|
|
252
|
+
|
|
253
|
+
- Owns config models, normalization, validation, profiles, and env and file loading inside the Tigrcorn split-package architecture.
|
|
254
|
+
- Publishes the <code>tigrcorn_config</code> import surface for named public helpers and entrypoints.
|
|
255
|
+
- Declared runtime dependencies: tigrcorn-core.
|
|
256
|
+
- Optional dependency surface: PyYAML.
|
|
257
|
+
- Supports Python 3.10, 3.11, 3.12, 3.13, and 3.14.
|
|
220
258
|
|
|
221
259
|
## Use It When
|
|
222
260
|
|
|
223
|
-
Use <code>tigrcorn-config</code> when you need
|
|
261
|
+
Use <code>tigrcorn-config</code> when you need config-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.
|
|
224
262
|
|
|
225
263
|
## Import Surface
|
|
226
264
|
|
|
227
|
-
|
|
228
|
-
import
|
|
265
|
+
```python
|
|
266
|
+
from tigrcorn_config import build_config, config_to_dict
|
|
229
267
|
|
|
230
|
-
|
|
231
|
-
|
|
268
|
+
config = build_config()
|
|
269
|
+
print(config_to_dict(config)["host"])
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
Namespace discovery starts with `import tigrcorn_config`.
|
|
232
273
|
|
|
233
274
|
The package exposes its supported public surface through the <code>tigrcorn_config</code> namespace. The root [tigrcorn](https://pypi.org/project/tigrcorn/) package keeps compatibility shims for users who install the full server distribution.
|
|
234
275
|
|
|
276
|
+
## Related Packages
|
|
277
|
+
|
|
278
|
+
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/)
|
|
279
|
+
- [tigrcorn](https://pypi.org/project/tigrcorn/)
|
|
280
|
+
|
|
235
281
|
## Package Graph
|
|
236
282
|
|
|
237
|
-
[tigrcorn](https://pypi.org/project/tigrcorn/) | [tigrcorn-
|
|
283
|
+
[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/)
|
|
284
|
+
|
|
285
|
+
## Best Practices
|
|
286
|
+
|
|
287
|
+
- Resolve one normalized config surface early and pass it downward instead of reparsing environment variables in multiple layers.
|
|
288
|
+
- Treat blessed profiles and public defaults as the operator contract when documenting runtime behavior.
|
|
289
|
+
- Add new config surfaces here before wiring them into runtime, transports, or security packages.
|
|
290
|
+
|
|
291
|
+
## License
|
|
292
|
+
|
|
293
|
+
Apache-2.0
|
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
<div align="center">
|
|
2
|
+
<h1>tigrcorn-config</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>Typed configuration models, profiles, environment loading, and validation for the Tigrcorn ASGI/HTTP server stack.</strong></p>
|
|
10
|
+
|
|
11
|
+
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="PyPI version for tigrcorn-config" src="https://img.shields.io/pypi/v/tigrcorn-config?label=PyPI"></a>
|
|
12
|
+
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="tigrcorn-config package on PyPI" src="https://img.shields.io/badge/package-PyPI-blue"></a>
|
|
13
|
+
<a href="https://pepy.tech/project/tigrcorn-config"><img alt="Downloads for tigrcorn-config" src="https://static.pepy.tech/badge/tigrcorn-config"></a>
|
|
14
|
+
<a href="https://github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-config/README.md"><img alt="Hits for tigrcorn-config README" src="https://hits.sh/github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-config/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-config/"><img alt="config role package" src="https://img.shields.io/badge/role-config-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-config
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
```bash
|
|
29
|
+
pip install tigrcorn-config
|
|
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-config</code> directly when you want only this package boundary and its declared dependencies.
|
|
33
|
+
|
|
34
|
+
## What It Owns
|
|
35
|
+
|
|
36
|
+
<code>tigrcorn-config</code> owns config models, normalization, validation, profiles, and env and file loading. Its import package is <code>tigrcorn_config</code>, and its declared package dependencies are: tigrcorn-core.
|
|
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-config</code> when you want the config 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_config</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 config models, normalization, validation, profiles, and env and file loading in the Tigrcorn package graph.
|
|
53
|
+
|
|
54
|
+
### How does this package fit into the runtime stack?
|
|
55
|
+
|
|
56
|
+
It owns typed configuration, profile resolution, defaults, and environment or file loading so runtime, transports, and security packages can consume one normalized config surface.
|
|
57
|
+
|
|
58
|
+
## Features
|
|
59
|
+
|
|
60
|
+
- Owns config models, normalization, validation, profiles, and env and file loading inside the Tigrcorn split-package architecture.
|
|
61
|
+
- Publishes the <code>tigrcorn_config</code> import surface for named public helpers and entrypoints.
|
|
62
|
+
- Declared runtime dependencies: tigrcorn-core.
|
|
63
|
+
- Optional dependency surface: PyYAML.
|
|
64
|
+
- Supports Python 3.10, 3.11, 3.12, 3.13, and 3.14.
|
|
65
|
+
|
|
66
|
+
## Use It When
|
|
67
|
+
|
|
68
|
+
Use <code>tigrcorn-config</code> when you need config-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_config import build_config, config_to_dict
|
|
74
|
+
|
|
75
|
+
config = build_config()
|
|
76
|
+
print(config_to_dict(config)["host"])
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
Namespace discovery starts with `import tigrcorn_config`.
|
|
80
|
+
|
|
81
|
+
The package exposes its supported public surface through the <code>tigrcorn_config</code> namespace. The root [tigrcorn](https://pypi.org/project/tigrcorn/) package keeps compatibility shims for users who install the full server distribution.
|
|
82
|
+
|
|
83
|
+
## Related Packages
|
|
84
|
+
|
|
85
|
+
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/)
|
|
86
|
+
- [tigrcorn](https://pypi.org/project/tigrcorn/)
|
|
87
|
+
|
|
88
|
+
## Package Graph
|
|
89
|
+
|
|
90
|
+
[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/)
|
|
91
|
+
|
|
92
|
+
## Best Practices
|
|
93
|
+
|
|
94
|
+
- Resolve one normalized config surface early and pass it downward instead of reparsing environment variables in multiple layers.
|
|
95
|
+
- Treat blessed profiles and public defaults as the operator contract when documenting runtime behavior.
|
|
96
|
+
- Add new config surfaces here before wiring them into runtime, transports, or security packages.
|
|
97
|
+
|
|
98
|
+
## License
|
|
99
|
+
|
|
100
|
+
Apache-2.0
|
|
@@ -4,10 +4,10 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "tigrcorn-config"
|
|
7
|
-
version = "0.3.16.
|
|
7
|
+
version = "0.3.16.dev11"
|
|
8
8
|
description = "Typed configuration models, profiles, environment loading, and validation for the Tigrcorn ASGI/HTTP server stack."
|
|
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", "configuration", "server-config", "profiles", "environment-variables", "asgi"]
|
|
@@ -19,14 +19,16 @@ 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
|
"Typing :: Typed",
|
|
28
30
|
]
|
|
29
|
-
dependencies = ["tigrcorn-core==0.3.16.
|
|
31
|
+
dependencies = ["tigrcorn-core==0.3.16.dev11"]
|
|
30
32
|
|
|
31
33
|
[project.optional-dependencies]
|
|
32
34
|
yaml = ["PyYAML>=6.0"]
|
|
@@ -29,77 +29,16 @@ STRUCTURED_FIELD_SAMPLES = [
|
|
|
29
29
|
STALE_STRUCTURED_FIELD_REFERENCE_ALLOWLIST = {
|
|
30
30
|
'docs/conformance/sf9651.json',
|
|
31
31
|
'docs/conformance/sf9651.md',
|
|
32
|
-
'
|
|
33
|
-
'docs/conformance/risk/RISK_TRACEABILITY.json',
|
|
32
|
+
'.ssot/registry.json',
|
|
34
33
|
'docs/notes/feat_matrix.md',
|
|
35
34
|
'docs/notes/feature_reg.md',
|
|
36
35
|
'docs/notes/issue_mat.md',
|
|
37
36
|
'docs/notes/issue_reg.md',
|
|
38
|
-
'docs/notes/risk_reg.md',
|
|
39
37
|
'pkgs/tigrcorn-config/src/tigrcorn_config/governance_surface.py',
|
|
40
38
|
'tests/test_p8_sf.py',
|
|
41
39
|
'tools/cert/governance_surface.py',
|
|
42
40
|
}
|
|
43
41
|
|
|
44
|
-
RISK_REGISTER = [
|
|
45
|
-
{
|
|
46
|
-
'risk_id': 'R-TRACEABILITY-GOVERNANCE-GAP',
|
|
47
|
-
'title': 'Risk, claim, test, and evidence linkage can drift without machine-readable ownership.',
|
|
48
|
-
'severity': 'high',
|
|
49
|
-
'status': 'mitigated_in_tree',
|
|
50
|
-
'release_gate_blocking': False,
|
|
51
|
-
'owner': 'tigrcorn-maintainers',
|
|
52
|
-
'policy_doc': 'docs/governance/RISK_REGISTER_POLICY.md',
|
|
53
|
-
'feature_refs': ['F-P8-RISK-TRACEABILITY'],
|
|
54
|
-
'claim_refs': ['TC-ROADMAP-P8-RISK-TRACEABILITY', 'TC-GOV-RISK-REGISTER-TRACEABILITY', 'TC-CERT-RELEASE-GATE-GRAPH'],
|
|
55
|
-
'test_refs': ['tests/test_p8_gov.py::test_risk_traceability_graph_is_resolved_and_green'],
|
|
56
|
-
'evidence_refs': ['docs/conformance/risk/RISK_REGISTER.json', 'docs/conformance/risk/RISK_TRACEABILITY.json'],
|
|
57
|
-
'summary': 'Phase 8 closes this by generating risk and traceability graphs and making release gates validate them.',
|
|
58
|
-
},
|
|
59
|
-
{
|
|
60
|
-
'risk_id': 'R-TEST-STYLE-DRIFT',
|
|
61
|
-
'title': 'New forward tests could continue to enter as unittest instead of pytest.',
|
|
62
|
-
'severity': 'medium',
|
|
63
|
-
'status': 'controlled_with_inventory',
|
|
64
|
-
'release_gate_blocking': False,
|
|
65
|
-
'owner': 'tigrcorn-maintainers',
|
|
66
|
-
'policy_doc': 'docs/governance/TEST_STYLE_POLICY.md',
|
|
67
|
-
'feature_refs': ['F-P8-PYTEST-FORWARD'],
|
|
68
|
-
'claim_refs': ['TC-ROADMAP-P8-PYTEST-FORWARD', 'TC-GOV-TEST-STYLE-POLICY'],
|
|
69
|
-
'test_refs': ['tests/test_p8_gov.py::test_legacy_unittest_inventory_is_explicit_and_no_unexpected_files_exist'],
|
|
70
|
-
'evidence_refs': ['LEGACY_UNITTEST_INVENTORY.json', 'docs/governance/TEST_STYLE_POLICY.md'],
|
|
71
|
-
'summary': 'Pytest is the only forward runner in CI, while legacy unittest files are frozen behind an approved inventory.',
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
'risk_id': 'R-RFC9651-REFERENCE-DRIFT',
|
|
75
|
-
'title': 'Structured-fields references can drift back to obsolete predecessor wording.',
|
|
76
|
-
'severity': 'high',
|
|
77
|
-
'status': 'mitigated_in_tree',
|
|
78
|
-
'release_gate_blocking': False,
|
|
79
|
-
'owner': 'tigrcorn-maintainers',
|
|
80
|
-
'policy_doc': 'docs/governance/DEFAULT_AUDIT_POLICY.md',
|
|
81
|
-
'feature_refs': ['F-P8-RFC9651-BASELINE'],
|
|
82
|
-
'claim_refs': ['TC-ROADMAP-P8-RFC9651-BASELINE', 'TC-SPEC-STRUCTURED-FIELDS-RFC9651'],
|
|
83
|
-
'test_refs': ['tests/test_p8_sf.py::test_stale_predecessor_references_are_linted_outside_allowlist'],
|
|
84
|
-
'evidence_refs': ['docs/conformance/sf9651.json', 'docs/conformance/sf9651.md'],
|
|
85
|
-
'summary': 'Phase 8 replaces active predecessor-baseline language with RFC 9651 and lints for stale active references.',
|
|
86
|
-
},
|
|
87
|
-
{
|
|
88
|
-
'risk_id': 'R-RELEASE-EVIDENCE-RETENTION',
|
|
89
|
-
'title': 'Interop and performance bundles could drift out of the release gate if they are treated as informal side artifacts.',
|
|
90
|
-
'severity': 'high',
|
|
91
|
-
'status': 'mitigated_in_tree',
|
|
92
|
-
'release_gate_blocking': False,
|
|
93
|
-
'owner': 'tigrcorn-maintainers',
|
|
94
|
-
'policy_doc': 'docs/governance/RISK_REGISTER_POLICY.md',
|
|
95
|
-
'feature_refs': ['F-P8-RELEASE-GATED-EVIDENCE'],
|
|
96
|
-
'claim_refs': ['TC-ROADMAP-P8-RELEASE-GATED-EVIDENCE', 'TC-CERT-INTEROP-RETENTION-BUNDLES', 'TC-CERT-PERFORMANCE-RETENTION-BUNDLES'],
|
|
97
|
-
'test_refs': ['tests/test_p8_gov.py::test_retention_bundles_point_to_existing_release_inputs'],
|
|
98
|
-
'evidence_refs': ['docs/conformance/interop_retention.json', 'docs/conformance/perf_retention.json'],
|
|
99
|
-
'summary': 'The mutable tree now carries explicit retained-bundle manifests that point at canonical release-root evidence and performance inputs.',
|
|
100
|
-
},
|
|
101
|
-
]
|
|
102
|
-
|
|
103
42
|
INTEROP_RETENTION_BUNDLES = [
|
|
104
43
|
{
|
|
105
44
|
'bundle_id': 'independent_release_matrix',
|
|
@@ -173,9 +112,11 @@ APPROVED_LEGACY_UNITTEST_FILES = (
|
|
|
173
112
|
'tests/test_http1_chunked.py',
|
|
174
113
|
'tests/test_http1_hardening_pass.py',
|
|
175
114
|
'tests/test_http1_parser.py',
|
|
115
|
+
'tests/test_http1_parser_owned_surface.py',
|
|
176
116
|
'tests/test_http1_rfc9112.py',
|
|
177
117
|
'tests/test_http2_hpack.py',
|
|
178
118
|
'tests/test_http2_rfc9113.py',
|
|
119
|
+
'tests/test_http2_rfc9113_server_negatives.py',
|
|
179
120
|
'tests/test_http2_server_push_surface.py',
|
|
180
121
|
'tests/test_http2_state_machine_completion.py',
|
|
181
122
|
'tests/test_http2_websocket_rfc8441.py',
|
|
@@ -214,6 +155,7 @@ APPROVED_LEGACY_UNITTEST_FILES = (
|
|
|
214
155
|
'tests/test_origin_contract.py',
|
|
215
156
|
'tests/test_tls_operator_material_surface.py',
|
|
216
157
|
'tests/test_observability_surface.py',
|
|
158
|
+
'tests/test_open_loop_benchmark_matrices.py',
|
|
217
159
|
'tests/test_performance_harness.py',
|
|
218
160
|
'tests/test_public_lifecycle_and_embedder_contract.py',
|
|
219
161
|
'tests/test_flag_surface_truth_reconciliation.py',
|
|
@@ -251,6 +193,7 @@ APPROVED_LEGACY_UNITTEST_FILES = (
|
|
|
251
193
|
'tests/test_rawframed_handler.py',
|
|
252
194
|
'tests/test_registries_models.py',
|
|
253
195
|
'tests/test_release_gates.py',
|
|
196
|
+
'tests/test_runtime_performance_matrix.py',
|
|
254
197
|
'tests/test_response_pipeline_streaming_checkpoint.py',
|
|
255
198
|
'tests/test_response_trailers_rfc9110.py',
|
|
256
199
|
'tests/test_rfc_compliance_hardening.py',
|
|
@@ -271,15 +214,19 @@ APPROVED_LEGACY_UNITTEST_FILES = (
|
|
|
271
214
|
'tests/test_trailers_rfc9110.py',
|
|
272
215
|
'tests/test_trio_runtime_surface_reconciliation_checkpoint.py',
|
|
273
216
|
'tests/test_websocket_additional_rfc6455.py',
|
|
217
|
+
'tests/test_websocket_peer_performance_matrix.py',
|
|
274
218
|
'tests/test_websocket_frames.py',
|
|
275
219
|
'tests/test_websocket_rfc6455.py',
|
|
276
220
|
'tests/test_websocket_rfc7692.py',
|
|
221
|
+
'tests/test_websocket_rfc7936.py',
|
|
222
|
+
'tests/test_websocket_rfc8307.py',
|
|
277
223
|
'tests/test_stream_probe_fixtures.py',
|
|
278
224
|
'tests/test_websocket_uix_demo.py',
|
|
279
225
|
'tests/test_webtransport_bidi_stream_context.py',
|
|
280
226
|
'tests/test_webtransport_feature_coverage.py',
|
|
281
227
|
'tests/test_webtransport_mtls_demo.py',
|
|
282
228
|
'tests/test_webtransport_operator_surface.py',
|
|
229
|
+
'tests/test_aioquic_performance_matrix.py',
|
|
283
230
|
'tests/test_ws_wss_probe_fixture.py',
|
|
284
231
|
'tests/test_wss_asgi3_lab.py',
|
|
285
232
|
'tests/test_wt_stream_probe_fixture.py',
|
|
@@ -306,7 +253,6 @@ def governance_surface() -> dict[str, object]:
|
|
|
306
253
|
'samples': STRUCTURED_FIELD_SAMPLES,
|
|
307
254
|
'stale_reference_allowlist': sorted(STALE_STRUCTURED_FIELD_REFERENCE_ALLOWLIST),
|
|
308
255
|
},
|
|
309
|
-
'risk_register': list(RISK_REGISTER),
|
|
310
256
|
'interop_retention_bundles': list(INTEROP_RETENTION_BUNDLES),
|
|
311
257
|
'performance_retention_bundles': list(PERFORMANCE_RETENTION_BUNDLES),
|
|
312
258
|
'legacy_unittest_inventory': {
|
|
@@ -320,7 +266,6 @@ __all__ = [
|
|
|
320
266
|
'APPROVED_LEGACY_UNITTEST_FILES',
|
|
321
267
|
'INTEROP_RETENTION_BUNDLES',
|
|
322
268
|
'PERFORMANCE_RETENTION_BUNDLES',
|
|
323
|
-
'RISK_REGISTER',
|
|
324
269
|
'STALE_STRUCTURED_FIELD_REFERENCE_ALLOWLIST',
|
|
325
270
|
'STRUCTURED_FIELD_REGISTRY',
|
|
326
271
|
'STRUCTURED_FIELD_SAMPLES',
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config.egg-info/PKG-INFO
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: tigrcorn-config
|
|
3
|
-
Version: 0.3.16.
|
|
3
|
+
Version: 0.3.16.dev11
|
|
4
4
|
Summary: Typed configuration models, profiles, environment loading, and validation for the Tigrcorn ASGI/HTTP server stack.
|
|
5
5
|
Author-email: Jacob Stewart <jacob@swarmauri.com>
|
|
6
6
|
License: Apache License
|
|
@@ -175,63 +175,119 @@ 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: Typing :: Typed
|
|
184
|
-
Requires-Python:
|
|
186
|
+
Requires-Python: <3.15,>=3.10
|
|
185
187
|
Description-Content-Type: text/markdown
|
|
186
188
|
License-File: LICENSE
|
|
187
|
-
Requires-Dist: tigrcorn-core==0.3.16.
|
|
189
|
+
Requires-Dist: tigrcorn-core==0.3.16.dev11
|
|
188
190
|
Provides-Extra: yaml
|
|
189
191
|
Requires-Dist: PyYAML>=6.0; extra == "yaml"
|
|
190
192
|
Dynamic: license-file
|
|
191
193
|
|
|
192
194
|
<div align="center">
|
|
193
195
|
<h1>tigrcorn-config</h1>
|
|
196
|
+
<img
|
|
197
|
+
src="https://raw.githubusercontent.com/Tigrbl/tigrcorn/master/assets/tigrcorn_logo.png"
|
|
198
|
+
alt="Tigrcorn tiger-unicorn logo"
|
|
199
|
+
width="140"
|
|
200
|
+
/>
|
|
194
201
|
|
|
195
202
|
<p><strong>Typed configuration models, profiles, environment loading, and validation for the Tigrcorn ASGI/HTTP server stack.</strong></p>
|
|
196
203
|
|
|
197
204
|
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="PyPI version for tigrcorn-config" src="https://img.shields.io/pypi/v/tigrcorn-config?label=PyPI"></a>
|
|
198
205
|
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="tigrcorn-config package on PyPI" src="https://img.shields.io/badge/package-PyPI-blue"></a>
|
|
206
|
+
<a href="https://pepy.tech/project/tigrcorn-config"><img alt="Downloads for tigrcorn-config" src="https://static.pepy.tech/badge/tigrcorn-config"></a>
|
|
207
|
+
<a href="https://github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-config/README.md"><img alt="Hits for tigrcorn-config README" src="https://hits.sh/github.com/tigrbl/tigrcorn/blob/master/pkgs/tigrcorn-config/README.md.svg?label=hits"></a>
|
|
199
208
|
<a href="LICENSE"><img alt="Apache 2.0 license" src="https://img.shields.io/badge/license-Apache%202.0-525252"></a>
|
|
200
|
-
<a href="pyproject.toml"><img alt="Python 3.11 supported" src="https://img.shields.io/badge/python-3.11-3776ab"></a>
|
|
201
|
-
<a href="pyproject.toml"><img alt="Python 3.12 supported" src="https://img.shields.io/badge/python-3.12-3776ab"></a>
|
|
202
|
-
<a href="pyproject.toml"><img alt="Python 3.13 supported" src="https://img.shields.io/badge/python-3.13-3776ab"></a>
|
|
203
|
-
<a href="src/tigrcorn_config/py.typed"><img alt="typed package" src="https://img.shields.io/badge/typed-py.typed-2f7ed8"></a>
|
|
209
|
+
<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>
|
|
204
210
|
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="config role package" src="https://img.shields.io/badge/role-config-0a7f5a"></a>
|
|
205
211
|
</div>
|
|
206
212
|
|
|
213
|
+
<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>
|
|
214
|
+
|
|
207
215
|
## Install
|
|
208
216
|
|
|
209
|
-
|
|
217
|
+
```bash
|
|
218
|
+
uv add tigrcorn-config
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
```bash
|
|
210
222
|
pip install tigrcorn-config
|
|
211
|
-
|
|
223
|
+
```
|
|
212
224
|
|
|
213
225
|
Use the aggregate [tigrcorn](https://pypi.org/project/tigrcorn/) distribution when you want the full ASGI3 Python web server stack. Install <code>tigrcorn-config</code> directly when you want only this package boundary and its declared dependencies.
|
|
214
226
|
|
|
215
227
|
## What It Owns
|
|
216
228
|
|
|
217
|
-
<code>tigrcorn-config</code> owns
|
|
229
|
+
<code>tigrcorn-config</code> owns config models, normalization, validation, profiles, and env and file loading. Its import package is <code>tigrcorn_config</code>, and its declared package dependencies are: tigrcorn-core.
|
|
230
|
+
|
|
231
|
+
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.
|
|
232
|
+
|
|
233
|
+
## Why Use This?
|
|
234
|
+
|
|
235
|
+
Use <code>tigrcorn-config</code> when you want the config 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.
|
|
236
|
+
|
|
237
|
+
## FAQ
|
|
238
|
+
|
|
239
|
+
### What does this package export?
|
|
240
|
+
|
|
241
|
+
The package exports through the <code>tigrcorn_config</code> namespace and keeps the root <code>tigrcorn</code> package as the compatibility umbrella.
|
|
242
|
+
|
|
243
|
+
### Which boundary does this package own?
|
|
244
|
+
|
|
245
|
+
It is the package boundary for config models, normalization, validation, profiles, and env and file loading in the Tigrcorn package graph.
|
|
218
246
|
|
|
219
|
-
|
|
247
|
+
### How does this package fit into the runtime stack?
|
|
248
|
+
|
|
249
|
+
It owns typed configuration, profile resolution, defaults, and environment or file loading so runtime, transports, and security packages can consume one normalized config surface.
|
|
250
|
+
|
|
251
|
+
## Features
|
|
252
|
+
|
|
253
|
+
- Owns config models, normalization, validation, profiles, and env and file loading inside the Tigrcorn split-package architecture.
|
|
254
|
+
- Publishes the <code>tigrcorn_config</code> import surface for named public helpers and entrypoints.
|
|
255
|
+
- Declared runtime dependencies: tigrcorn-core.
|
|
256
|
+
- Optional dependency surface: PyYAML.
|
|
257
|
+
- Supports Python 3.10, 3.11, 3.12, 3.13, and 3.14.
|
|
220
258
|
|
|
221
259
|
## Use It When
|
|
222
260
|
|
|
223
|
-
Use <code>tigrcorn-config</code> when you need
|
|
261
|
+
Use <code>tigrcorn-config</code> when you need config-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.
|
|
224
262
|
|
|
225
263
|
## Import Surface
|
|
226
264
|
|
|
227
|
-
|
|
228
|
-
import
|
|
265
|
+
```python
|
|
266
|
+
from tigrcorn_config import build_config, config_to_dict
|
|
229
267
|
|
|
230
|
-
|
|
231
|
-
|
|
268
|
+
config = build_config()
|
|
269
|
+
print(config_to_dict(config)["host"])
|
|
270
|
+
```
|
|
271
|
+
|
|
272
|
+
Namespace discovery starts with `import tigrcorn_config`.
|
|
232
273
|
|
|
233
274
|
The package exposes its supported public surface through the <code>tigrcorn_config</code> namespace. The root [tigrcorn](https://pypi.org/project/tigrcorn/) package keeps compatibility shims for users who install the full server distribution.
|
|
234
275
|
|
|
276
|
+
## Related Packages
|
|
277
|
+
|
|
278
|
+
- [tigrcorn-core](https://pypi.org/project/tigrcorn-core/)
|
|
279
|
+
- [tigrcorn](https://pypi.org/project/tigrcorn/)
|
|
280
|
+
|
|
235
281
|
## Package Graph
|
|
236
282
|
|
|
237
|
-
[tigrcorn](https://pypi.org/project/tigrcorn/) | [tigrcorn-
|
|
283
|
+
[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/)
|
|
284
|
+
|
|
285
|
+
## Best Practices
|
|
286
|
+
|
|
287
|
+
- Resolve one normalized config surface early and pass it downward instead of reparsing environment variables in multiple layers.
|
|
288
|
+
- Treat blessed profiles and public defaults as the operator contract when documenting runtime behavior.
|
|
289
|
+
- Add new config surfaces here before wiring them into runtime, transports, or security packages.
|
|
290
|
+
|
|
291
|
+
## License
|
|
292
|
+
|
|
293
|
+
Apache-2.0
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
<h1>tigrcorn-config</h1>
|
|
3
|
-
|
|
4
|
-
<p><strong>Typed configuration models, profiles, environment loading, and validation for the Tigrcorn ASGI/HTTP server stack.</strong></p>
|
|
5
|
-
|
|
6
|
-
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="PyPI version for tigrcorn-config" src="https://img.shields.io/pypi/v/tigrcorn-config?label=PyPI"></a>
|
|
7
|
-
<a href="https://pypi.org/project/tigrcorn-config/"><img alt="tigrcorn-config 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_config/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-config/"><img alt="config role package" src="https://img.shields.io/badge/role-config-0a7f5a"></a>
|
|
14
|
-
</div>
|
|
15
|
-
|
|
16
|
-
## Install
|
|
17
|
-
|
|
18
|
-
~~~bash
|
|
19
|
-
pip install tigrcorn-config
|
|
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-config</code> directly when you want only this package boundary and its declared dependencies.
|
|
23
|
-
|
|
24
|
-
## What It Owns
|
|
25
|
-
|
|
26
|
-
<code>tigrcorn-config</code> owns server configuration models, normalization, validation, profiles, and environment or file loading. Its import package is <code>tigrcorn_config</code>, and its declared package dependencies are: tigrcorn-core.
|
|
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-config</code> when you need validated Tigrcorn server configuration for ASGI, HTTP, QUIC, TLS, workers, or profile-driven deployments. 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_config
|
|
38
|
-
|
|
39
|
-
print(tigrcorn_config.__name__)
|
|
40
|
-
~~~
|
|
41
|
-
|
|
42
|
-
The package exposes its supported public surface through the <code>tigrcorn_config</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/)
|
|
File without changes
|
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/defaults.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/negative_surface.py
RENAMED
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/normalize.py
RENAMED
|
File without changes
|
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/origin_surface.py
RENAMED
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/policy_surface.py
RENAMED
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/profiles.py
RENAMED
|
File without changes
|
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/quic_surface.py
RENAMED
|
File without changes
|
{tigrcorn_config-0.3.16.dev5 → tigrcorn_config-0.3.16.dev11}/src/tigrcorn_config/validate.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|