1个不稳定版本
0.1.0 | 2024年4月5日 |
---|
#266 在 配置
31KB
470 行
UAPI配置文件规范的Rust语言实现。
关于libeconf
呢?
libeconf
的优点
-
libeconf
被其他项目使用,因此有更多的关注。 -
libeconf
可以从发行版中加载,而不是需要将其与应用程序链接/捆绑。 -
libeconf
采用MIT许可。此库仅采用AGPL-3.0许可。
此库的优点
-
libeconf
的API不仅按照UAPI规范指定的顺序定位文件,而且还像它们包含简单的key <分隔符>值
行一样解析它们,并构建最终的合并配置。因此,它不能与使用不同语法的配置文件一起使用。在Rust生态系统特定情况下,通常使用更复杂的格式,如TOML。此库仅定位文件,并将其留给调用者来解析和合并它们。
-
这是一个纯Rust库,具有完全安全的代码,且没有除libstd之外的其他强制依赖项。使用
libeconf
需要绑定到C库。 -
libeconf::econf_readConfig
支持OS供应商根+临时根+系统管理员根,其中OS供应商根可由用户自定义,其他两个是硬编码的。这意味着它不能与其他组合(如OS供应商+临时+系统管理员+本地用户配置)一起使用。此库支持默认的OS供应商+临时+系统管理员,以及默认的OS供应商+临时+系统管理员+本地用户,以及任意用户提供的目录列表。 -
libeconf
采用MIT许可。此库仅采用AGPL-3.0许可。
许可
AGPL-3.0-only
uapi-config
https://github.com/Arnavion/uapi-config
Copyright 2024 Arnav Singh
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, version 3 of the
License.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
依赖项
~0–10MB
~60K SLoC