conventional 0.5.0

A parser library for the Conventional Commit specification.
docs.rs failed to build conventional-0.5.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.
Visit the last successful build: conventional-0.4.1

Latest Crate Version Library Documentation Discord Chat

Quick Start

  1. Add the crate to your Cargo.toml:

    cargo install cargo-edit
    
    cargo add conventional
    
  2. Import the Commit type and the Simple trait to parse a commit string, and query its different components as string slices:

    use conventional::{Commit, Simple as _};
    
    let commit = Commit::new("feat(conventional commit): this is it!").unwrap();
    
    assert_eq!("feat", commit.type_());
    assert_eq!("conventional commit", commit.scope());
    assert_eq!("this is it!", commit.description());
    assert_eq!(None, commit.body());
    
  3. Upgrade to Typed components for strongly typed access:

    use conventional::{Commit, Typed as _};
    
    let commit = Commit::new("feat(conventional commit): this is it!").unwrap();
    
    assert_eq!(Type("feat"), commit.type_());
    
  4. Check out tools like Jilu for an example of library usage.