#proc-macro #logging #events #enums #tpfs #traits #log-kv-pair

tpfs_log_event_procmacro

一个简单的 procmacro,用于支持日志记录功能

3 个版本

0.1.19 2023年2月13日
0.1.19-beta.402023年2月8日
0.1.19-beta.352023年2月1日

#160 in #event


3 个crate中使用(通过 tpfs_logger_port

MIT/Apache

9KB
82

目录 DocToc 生成

Tpfs Log Event Procmacro

此crate用于帮助通过使用属性宏将枚举转换为LogKVPair来实现tpfs-logger-port::LogKVPair特质。

不编译即可快速检查源代码

cargo check

运行构建和测试

cargo make build
cargo make test

运行代码检查

cargo make lint

运行审计

cargo make audit

发布预发布crate

请参阅版本指南以了解预发布版本:https://gitlab.com/TransparentIncDevelopment/docs/engineering-guide/blob/versioning-proposal/versioning.md

您应使用预发布版本在另一个crate中测试一个概念,但这并不适用于您的最终发布。有关最终发布的详细信息,请参阅发布crate更改

您可以通过在gitlab中找到相应的管道并点击旁边manual-publish-prerelease-crate作业的播放按钮来手动推送分支的预发布版本。随着向master的合并,预发布crate也将自动发布。

发布crate版本更改

crate的版本应通过语义版本化维护,并有一些辅助脚本可以帮助更新Cargo.toml和Cargo.lock文件中的版本。这个版本更改可以在MR获得合并批准之前在您的分支上发生。

使用以下之一

  • cargomake publish-patch
  • cargomake publish-minor
  • cargomake publish-major

为了实际发布更改,应在MR合并到master之后进行。一旦合并,从master拉取并重新基,然后使用脚本助手标记版本。

它看起来可能如下所示

git checkout master
git pull
cargo make tag-release
git push --tags

理解语义版本化

我们在我们的工程指南中有一些内容:https://gitlab.com/TransparentIncDevelopment/docs/engineering-guide/blob/versioning-proposal/versioning.md

semver的基本原理是,如果只有修复和调整,那么只是增加补丁版本号。如果有功能添加,则是小版本号增加,如果是破坏性变更,则是大版本号增加。优先级设置为,如果因为破坏性变更而增加大版本号,则包含任何额外的功能,而无需增加小版本号。小版本号的增加也是如此,优先于补丁版本号的增加。

例如,如果版本号是1.0.0,并且增加了额外的功能以及一些修复,这将更新版本号为1.1.0

依赖项

~2MB
~47K SLoC