Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/PurpleBooth/mit-lint

Lint commit messages
https://github.com/PurpleBooth/mit-lint

git hacktoberfest lints

Last synced: 2 months ago
JSON representation

Lint commit messages

Awesome Lists containing this project

README

        

# mit-lint

Lint commit messages

## Example

``` rust
use mit_commit::CommitMessage;
use mit_lint::{Code, lint, Problem, Lints, Lint};

let message:String = "x".repeat(73).into();
let expected = vec![Problem::new(
"Your subject is longer than 72 characters".into(),
"It's important to keep the subject of the commit less than 72 characters because when you look at the git log, that's where it truncates the message. This means that people won't get the entirety of the information in your commit.\n\nPlease keep the subject line 72 characters or under"
.into(),
Code::SubjectLongerThan72Characters,&message.clone().into(),Some(vec![(String::from("Too long"), 72, 1)]),
Some("https://git-scm.com/book/en/v2/Distributed-Git-Contributing-to-a-Project#_commit_guidelines".parse().unwrap()),
)];
let actual = lint(&CommitMessage::from(message), Lints::new(vec![Lint::SubjectLongerThan72Characters].into_iter().collect()));
assert_eq!(
actual, expected,
"Expected {:?}, found {:?}",
expected, actual
);
```

## Docs

Read more at [Docs.rs](https://docs.rs/mit-lint/)