15 releases

0.3.1 May 6, 2024
0.3.0 Mar 9, 2024
0.2.2 Sep 27, 2023
0.2.0 Jul 17, 2023
0.1.9 Jul 17, 2023

#697 in Database interfaces

Download history 755/week @ 2024-01-24 425/week @ 2024-01-31 750/week @ 2024-02-07 759/week @ 2024-02-14 623/week @ 2024-02-21 587/week @ 2024-02-28 1962/week @ 2024-03-06 859/week @ 2024-03-13 1540/week @ 2024-03-20 1532/week @ 2024-03-27 3450/week @ 2024-04-03 823/week @ 2024-04-10 1627/week @ 2024-04-17 859/week @ 2024-04-24 1985/week @ 2024-05-01 1528/week @ 2024-05-08

6,118 downloads per month
Used in 13 crates (10 directly)

Apache-2.0

25KB
578 lines

debian version handling in rust

This simple crate provides a struct for parsing, validating, manipulating and comparing Debian version strings.

It aims to follow the version specification as described in Debian policy 5.6.12.

Example:

use debversion::Version;

let version: Version = "1.0-1".parse()?;
assert_eq!(version.epoch, Some(0));
assert_eq!(version.upstream_version, "1.0");
assert_eq!(version.debian_revision, Some("1"));

let version1: Version = "1.0-0".parse()?;
let version2: Version = "1.0".parse()?;
assert_eq!(version1, version2);

let version1: Version = "1.0-1".parse()?;
let version2: Version = "1.0~alpha1-1".parse()?;
assert!(version2 < version1);

Features

sqlx

The sqlx feature adds serialization support for the postgres debversion extension when using sqlx.

python-debian

The python-debian feature provides conversion support between the debversion Rust type and the Version class provided by python-debian, when using pyop3.

serde

The serde feature enables serialization to and from simple strings when using serde.

Dependencies

~2–16MB
~210K SLoC