#jsonnet #jrsonnet #templating #data

jrsonnet-cli

构建jrsonnet CLIs的实用工具

8个版本

0.5.0-pre952023年8月13日
0.5.0-pre942023年7月26日
0.5.0-pre92023年5月15日
0.5.0-pre82023年4月18日
0.5.0-pre62023年1月8日

#499 in 模板引擎

Download history 19/week @ 2024-03-13 23/week @ 2024-03-20 31/week @ 2024-03-27 62/week @ 2024-04-03 54/week @ 2024-04-10 20/week @ 2024-04-17 28/week @ 2024-04-24 19/week @ 2024-05-01 25/week @ 2024-05-08 163/week @ 2024-05-15 26/week @ 2024-05-22 27/week @ 2024-05-29 60/week @ 2024-06-05 29/week @ 2024-06-12 72/week @ 2024-06-19 66/week @ 2024-06-26

230 每月下载量
用于 4 crates

MIT 许可证

390KB
13K SLoC

jrsonnet

++++

jrsonnet logo

release license opencollective

++++

// Github sucks: I can't center those images the normal way: https://github.com/github/markup/issues/984 // [.text-center] // Interactive,470, alt=jrsonnet logo // // [.text-center] // -- // alt=release, link=https://github.com/CertainLach/jrsonnet/releases // alt=license, ./LICENSE // alt=opencollective, link=https://opencollective.com/jrsonnet // --

这是什么

Jsonnet 是一种数据模板语言

此Rust crate实现了Jsonnet库及其基于该库的替代jsonnet可执行文件。更多信息请见绑定,绑定

安装

NixOS

jrsonnet 已包含在nixpkgs中并由 @CertainLach 维护

[source,sh]

nix-env -iA nixpkgs.jrsonnet

MacOS

jrsonnet 已打包到brew并由 @messense 维护

[source,sh]

brew install jrsonnet

Windows/其他Linux发行版

您可以在发布版中获取jrsonnet的最新构建版本。

从源码构建

jrsonnet 应该可以在最新的稳定Rust版本上构建(可能是在最旧的版本上,但没有提供MSRV策略)

调试构建也可以工作,但它的速度比发布版本慢得多

[source]

cargo build --release

为什么?

已经有多种不同的语言实现了这个标准的多个实现

此实现展示了比所有现有实现都好的性能。更多信息请见[ benchmarks ]。

此外,我还想尝试新的语法特性,而jrsonnet实现了其中一些。更多信息请参见链接:./docs/features.adoc[features]

最终,用Rust实现东西总是很有趣。

绑定 [[bindings]]

Rust

alt=crates.io, link=https://crates.io/crates/jrsonnet-evaluator alt=docs.rs, link=https://docs.rs/jrsonnet-evaluator

Jrsonnet是用Rust编写的,因此只需将其作为依赖项添加即可

Python

alt=crates.io, link=https://pypi.ac.cn/project/rjsonnet/

绑定由@messense创建和维护

C/C++

Jrsonnet提供了一个标准的libjsonnet.so共享库,应该可以作为它的直接替代品使用

其他

WASM绑定也可用,Java绑定(JNI和WASM编译为.class)正在开发中

更多信息请参见链接:./bindings/[bindings]

依赖项

~6.5MB
~110K SLoC