InfinityData
声明式配置语言(.infd / .inft)的 Python 编译器库。
- 编译优先:
.infd是源码,JSON/YAML/TOML 是构建产物 - 模板即约束:模板定义自动注册为约束校验器
- 零信任默认:库默认
deny_all沙盒,显式开放而非事后限制 - 结构化错误:稳定错误码 + 结构化参数 + 多语言渲染
快速使用
from infinity_data import load, safe_load, SandboxConfig, Schema
result = load('app.infd') # 默认零信任
if result.has_errors:
for d in result.diagnostics:
print(d.location, d.code, d.message)
else:
print(result.value) # 降维后的 dict
文档导航
| 文档 | 内容 |
|---|---|
| neo_desg.md | 语言基础设计(语法 / 类型 / 模板 / 约束) |
| extra_desg.md | 库 API / CLI / 生态设计 |
| impl_desg.md | 编译器实现层的取舍与假设 |
开发
uv run pytest -q # 测试
uv run ruff check src tests # lint
uv run pyright # 类型检查(strict)
uv run python test.py # 错误报告演示
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
infinity_data-1.0.0.tar.gz
(69.2 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file infinity_data-1.0.0.tar.gz.
File metadata
- Download URL: infinity_data-1.0.0.tar.gz
- Upload date:
- Size: 69.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
acdaf64ecb1aa245f1b40809c70565373e3f231fa3e61a45fe8403b748157c90
|
|
| MD5 |
9cb177eda6f89e1b0d950e4e7f08f336
|
|
| BLAKE2b-256 |
f6c7c927eaf6d0ee27980a132d4470ee1139d9bf6010d63917423ad8ed120761
|
File details
Details for the file infinity_data-1.0.0-py3-none-any.whl.
File metadata
- Download URL: infinity_data-1.0.0-py3-none-any.whl
- Upload date:
- Size: 91.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via:
uv/0.12.5 {"installer":{"name":"uv","version":"0.12.5","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
110816c6def750305994d83a62ebe6656791bded7c7e75bd56afb47a9ccf652a
|
|
| MD5 |
855477a81d93875f616485b5b8833339
|
|
| BLAKE2b-256 |
88908a7df3c0207eaa65d495dd9af6513c7718b7774e7b5402d4617e938c5ffa
|