pyver

Crates.iopyver
lib.rspyver
version1.0.1
sourcesrc
created_at2022-09-03 20:43:18.808775
updated_at2022-09-06 21:12:27.156303
descriptionPython PEP-440 Version Parser
homepage
repositoryhttps://github.com/Allstreamer/pyver
max_upload_size
id658045
size41,240
Jan Bronicki (John15321)

documentation

README

PyVer

Crates.io Crates.io docs.rs ๐Ÿงช Tests ๐Ÿ–‹  Check linting ๐Ÿ”จ Build ๐Ÿ“ฆ Package ๐Ÿ“„ Build docs ๐Ÿ‘” Check formatting

Python PEP-440 Version Parser

This package allows for parsing Python PEP-440 version numbers and for comparisons between PEP-440 version numbers.

Usage

[dependencies]
pyver = "1"

The following is an example for initilizing and comparing two version strings

use pyver::PackageVersion;

let a = PackageVersion::new("v1.0a2.dev456").unwrap();
let b = PackageVersion::new("v1.0a2.dev457").unwrap();

assert_eq!(a < b, true);

Comparing single version components

use pyver::PackageVersion;

let a = PackageVersion::new("1!1.323.dev2").unwrap();
let b = PackageVersion::new("v3.2.dev2").unwrap();

// Check that both have the same dev version
assert_eq!(a.dev, b.dev);

Seperation of version identifiers

use pyver::PackageVersion;

let version = PackageVersion::new("v1.23.dev2").unwrap();

println!("{:?}", version.release.major);
// > 1

println!("{:?}", version.release.minor);
// > 2

println!("{:?}", version.dev);
// > Some(DevHead { dev_num: Some(2) })

See more examples at the docs

Contribution

For now Contributions will be quite loose.

Commit count: 18

cargo fmt