Skip to main content

Puppet 语言标准(发行名 openpuppet-language)

An app is an agent. 本仓是 Puppet 语言标准的规范与参考实现:不含任何具体渲染实现, 不含 app 宿主。

目录 内容
spec/ 人读规范(2.0 已冻结,当前 2.1 为兼容修订):01 词法语法 / 02 IR / 03 执行语义 / 04 词汇 / 05 渲染契约 / 06 诊断
conformance/ 可执行用例集:随发行包分发,任意实现用它自证合规
puppet/ 参考实现(零第三方依赖):词法、IR、引擎、协议适配器、Tk 渲染器
docs/design-v2-draft.md 设计草案:决定"为什么"
examples/ 真实示例程序(puppet validate examples --strict 零诊断)

安装

pip install openpuppet-language

Tk 参考渲染器(puppet conformance --tk,真实几何)需要 Tcl/Tk: Debian/Ubuntu 需 apt install python3-tk。

命令

命令 作用
puppet spec 规范版本与位置
puppet validate <路径> 静态校验 .puppet 文件或目录(--strict:有任何诊断即失败)
puppet conformance 跑合规用例集(--tk 改用 Tk 渲染器;--filter <子串> 过滤)

只想校验用例文件本身、不需要任何实现:

python conformance/runner.py --check

参与

  • 用例与实现都以 spec/ 为准:conformance 用例从规范写,不移植旧测试。
  • 杜绝静默失败:任何降级、丢弃、未实现都必须产生诊断或观察事件。
  • 渲染器按能力声明行事:启动握手(hello)声明支持范围,未声明支持的词汇被使用时 必须产生 DEGRADED_FEATURE——标准不靠信任,靠用例抓。

Metadata

Release files for openpuppet-language 2.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for openpuppet-language 2.1
File Size Uploaded
openpuppet_language-2.1.tar.gz 115.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for openpuppet-language 2.1
File Interpreter ABI Platform
openpuppet_language-2.1-py3-none-any.whl Python 3 none any Details

Total release size: 263.2 kB

Release files / openpuppet_language-2.1.tar.gz

Download URL openpuppet_language-2.1.tar.gz
Size 115.4 kB
Tags Source
SHA-256 checksum
How to use checksums
9a9b4997ed856066670984a54df41f4b20d2c22b8a6f3d0101761a62c4e11b6f
BLAKE2b-256 checksum
How to use checksums
2c67a8044b150d31c3eba844348a4115969aee313a2e3c5fc5c0b000b68bb009
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.3

Release files / openpuppet_language-2.1-py3-none-any.whl

Download URL openpuppet_language-2.1-py3-none-any.whl
Size 147.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
413400dffe1ac821bd84a6b98a4758e7753f0de987a9a76b30cf68210c0fa541
BLAKE2b-256 checksum
How to use checksums
87086bc4ccf02445eb8e081378c6082f4726a500ad8483270266d7d9c660e733
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.14.3

Release history Release notifications | RSS feed

2.1.2

2 release files

2.1.1

2 release files

This release

2.1 This release

2 release files

2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page