Skip to content
/ dewey Public

dewey is a simple version parser and comperator that aims to be compatible to NetBSD and xbps' comperator implementation.

License

Notifications You must be signed in to change notification settings

Gottox/dewey

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dewey

dewey is a simple version parser and comperator that aims to be compatible to NetBSD and xbps' comperator implementation.

dewey not only parses .-seperated versions but other common patterns such as X.XalphaX, X.XrcX, and X.X.Xpl1

example

use dewey::VersionCmp;

let stable = "1.0".version();
let pre = "1.0pre1".version();
let pl = "1.0pl1".version();
assert!(stable > pre);
assert!(pl > stable);
assert!(pl > pre);

supported seperators

  • Revision: example: 1.0_1
  • Alpha: 0.0alpha1
  • Beta: 0.0beta1
  • Pre: 0.0pre1
  • Rc: 0.0rc1
  • PatchLevel: 0.0pl1
  • Dot: 1.0

version coverage

dewey tries its very best to produce a relationship between two version.

It even can work with rather obscure utf8 versioning:

use dewey::VersionCmp;

let smile = "1.😃".version();
let sad = "1.😢".version();
assert!(smile < sad);

It only fails if there are there are conflicting version schemes:

use dewey::VersionCmp;

let alpha_suffix = "1c".version();
let number_suffix = "1.0".version();
assert!(alpha_suffix.partial_cmp(&number_suffix) == None);

About

dewey is a simple version parser and comperator that aims to be compatible to NetBSD and xbps' comperator implementation.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages