1个不稳定发布
0.0.1 | 2021年1月16日 |
---|
#105 in #comparison
19KB
154 行
版本操作符
Rust库,用于比较和操作版本号
需求
此仓库需要Rust语言/编译器从源代码构建
截至此ReadMe文件的最新更新,推荐安装Rust的方法是使用安装脚本...
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
快速入门
此仓库是一个Rust库,在项目的Cargo.toml
文件中将它定义为依赖...
Cargo.toml
(省略)
[dependencies]
version_operators = "0.0.1"
有关定义依赖项的详细信息,请参阅Rust -- 文档 -- 定义依赖项。
然后在源文件中通过use
语句包含...
src/main.rs
(省略)
use version_operators::Version;
使用方法
src/main.rs
(示例)
use version_operators::Version;
fn main() {
let version = Version::from_str("1.14.3");
let expected = vec![1, 14, 3];
assert_eq!(version.to_vector(), expected);
}
查看此仓库的examples/
目录,以获取更多如何在其他应用程序中利用此项目的详细示例,使用cargo run --example <name>
来执行,例如...
examples/version-compare.rs
cargo run --example version-compare '1.14.3' '-lt' '1.14.4'
#> true
cargo run --example version-compare '1.14.3' '==' '1.14.4'
#> false
examples/version-math.rs
cargo run --example version-math '1.14.4' '-add' '1.14.3'
#> [2, 28, 7]
cargo run --example version-math '1.14.4' '-sub' '1.14.3'
#> [0, 0, 1]
注意事项
直到版本 0.1.0
;方法和数据结构属性以及实现名称可能已更改!
此仓库可能不是功能完整和/或完全功能性的,欢迎提交添加功能或修复错误的Pull Requests。
目前数学和比较操作符从每个版本的最重要的位开始。这意味着当操作不等长的版本时,可能需要对较短的版本进行零填充...
use version_operators::Version;
fn main() {
let version_one = Version.from_str("1.14.3");
let version_inc = Version.from_str("0.0.1");
let new_version = version_one + version_inc;
assert_eq!(new_version.to_vector(), vec![1, 14, 4]);
}
查看examples/version-increment.rs
的源代码,以获取针对版本的一部分进行递增的示例...
cargo run --example version-increment '1.14.3' '1'
#> [1, 15, 3]
贡献
对版本和rust-utilities做出贡献的选项
分支
开始将此仓库分支到一个你有写权限的账户。
- 为分支URL添加远程。URL语法是
[email protected]:<NAME>/<REPO>.git
...
cd ~/git/hub/rust-utilities/version_operators
git remote add fork git@github.com:<NAME>/version_operators.git
- 通过
cargo
测试更改...
cargo test
- 提交您的更改并将其推送到您的分支,例如修复一个问题...
cd ~/git/hub/rust-utilities/version_operators
git commit -F- <<'EOF'
:bug: Fixes #42 Issue
**Edits**
- `<SCRIPT-NAME>` script, fixes some bug reported in issue
EOF
git push fork main
注意,可以使用
-u
选项将fork
设置为默认远程,例如git push -u fork main
然而,这也会默认将fork
远程用于拉取!这意味着从origin
拉取更新必须显式进行,例如git pull origin main
- 然后在 GitHub 上通过 Web-UI 提交拉取请求,URL 语法是
https://github.com/<NAME>/<REPO>/pull/new/<BRANCH>
注意;为了降低您的拉取请求在被接受之前需要修改的可能性,请查阅 dot-github 仓库中的详细贡献指南。
赞助商
感谢您考虑此事!
无论您是否能够为 rust-utilities 维护的项目等提供财务支持,请考虑与他人分享有用的项目,因为维护开源存储库的一个目标是为社区提供价值。
归属
许可证
Rust library for comparing and manipulating version numbers
Copyright (C) 2021 S0AndS0
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/>.
有关更详细的信息,请查阅 AGPL-3.0 许可证的完整版本。