#laws #preservation

bin+lib stelae

一套用于永久保存、验证和访问法律的 Rust 和 Python 工具集

2 个版本

0.2.1 2023 年 7 月 10 日
0.2.0 2023 年 7 月 4 日

#832HTTP 服务器

AGPL-3.0

59KB
368

Stelae

Stelae 是一个用于分发、保存和验证法律的系统。

贡献

设置环境

  1. 安装依赖项
  • Windows
  • Linux
    • sudoapt-get install build-essential pkg-config libssl-dev
  1. 安装 Rust
  2. 安装 Just(我们的构建工具)
  3. Windows:安装 Git Bash,包含在 Git for Windows 中。
  4. Windows(可选):安装 NuShell(Just 使用的快速、跨平台 shell)
  5. 我们推荐使用 VSCode(仓库中提供了默认设置),但您可以使用您喜欢的任何编辑器。

开发

  • 必须先通过 lint,然后才能合并到 master 中
  • 所有代码都必须有测试。测试应符合我们的测试指南。
  • 在仓库内部运行 just 以列出所有可用的 just 命令。目前有:
    • bench:运行所有基准测试
    • ci:持续集成 - lint、测试、基准测试
    • clippy *FLAGS:以最大严格性运行 clippy。将任何标志传递给 clippy。
    • default:列出所有可用命令
    • format:格式化代码
    • lint:格式化代码并运行严格 clippy
    • test:运行所有测试
  • 在 Windows 上,您可能希望通过 nu shell 运行 just,可以通过使用带有 --shell 命令的所有命令来完成,例如 just --shell nu lint

日志记录

环境变量 RUST_LOG 可以设置为以下之一:tracedebuginfowarnerror。可以根据日志行中出现的 target 组件设置过滤器,例如:使用 trace 但降低 Actix 分发器的噪音:RUST_LOG="trace,actix_http::h1::dispatcher=warn"

请参阅 tracing-subscriber 文档env_logger 语法

问答

  • 为什么我们建议使用 NuShell?
    • NuShell 在 Windows 上的速度几乎与 cmd 相当,但兼容 bash。如果您在 Windows 上不使用 NuShell,您需要确保已安装 Git Bash。如果您遇到性能问题,请考虑切换到 Nu。

依赖项

~26–38MB
~724K SLoC