17 releases (10 stable)

1.3.2 Aug 28, 2023
1.3.1 Apr 25, 2022
1.3.0 Jul 12, 2021
0.6.0 May 28, 2020
0.4.0 Jan 30, 2020

#1203 in Parser implementations

Download history 173/week @ 2024-11-21 231/week @ 2024-11-28 157/week @ 2024-12-05 269/week @ 2024-12-12 78/week @ 2024-12-19 30/week @ 2024-12-26 203/week @ 2025-01-02 127/week @ 2025-01-09 144/week @ 2025-01-16 105/week @ 2025-01-23 88/week @ 2025-01-30 72/week @ 2025-02-06 181/week @ 2025-02-13 214/week @ 2025-02-20 144/week @ 2025-02-27 256/week @ 2025-03-06

818 downloads per month

Apache-2.0

75KB
679 lines

sentry-release-parser

This package implements a release name parser that is used by Sentry.

use sentry_release_parser::Release;

let release = Release::parse("org.example.FooApp@1.0rc1+20200101100").unwrap();
assert_eq!(release.package(), Some("org.example.FooApp"));
assert_eq!(release.version_raw(), "1.0rc1+20200101100");

let version = release.version().unwrap();
assert_eq!(version.major(), 1);
assert_eq!(version.minor(), 0);
assert_eq!(version.patch(), 0);
assert_eq!(version.triple(), (1, 0, 0));
assert_eq!(version.pre(), Some("rc1"));
assert_eq!(version.build_code(), Some("20200101100"));

Features

  • semver: if enabled the version object provides a method to convert it into a semver if it's compatible.
  • serde: turns on serde serialization.

License: Apache-2.0


lib.rs:

This package implements a release name parser that is used by Sentry.

use sentry_release_parser::Release;

let release = Release::parse("org.example.FooApp@1.0rc1+20200101100").unwrap();
assert_eq!(release.package(), Some("org.example.FooApp"));
assert_eq!(release.version_raw(), "1.0rc1+20200101100");

let version = release.version().unwrap();
assert_eq!(version.major(), 1);
assert_eq!(version.minor(), 0);
assert_eq!(version.patch(), 0);
assert_eq!(version.triple(), (1, 0, 0));
assert_eq!(version.pre(), Some("rc1"));
assert_eq!(version.build_code(), Some("20200101100"));

Features

  • semver: if enabled the version object provides a method to convert it into a semver if it's compatible.
  • serde: turns on serde serialization.

Dependencies

~2.6–4MB
~70K SLoC