Gitlint

Latest version: v0.19.1

Safety actively analyzes 627711 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 5

0.11.0

General
- Python 3.7 support
- Python 2.6 no longer supported

Development
- Various dependency updates and under the hood fixes (see [76](https://github.com/jorisroovers/gitlint/pull/76) for details).

Special thanks to pbregener for his contributions related to python 3.7 support and test fixes.

0.10.0

The 0.10.0 release adds the ability to ignore commits based on their contents,
support for [pre-commit](https://pre-commit.com/), and important fix for running gitlint in CI environments
(such as Jenkins, Gitlab, etc).

Special thanks to [asottile](https://github.com/asottile), [bdrung](https://github.com/bdrung), [pbregener](https://github.com/pbregener), [torwald-sergesson](https://github.com/torwald-sergesson), [RykHawthorn](https://github.com/RykHawthorn), [SteffenKockel](https://github.com/SteffenKockel) and [tommyip](https://github.com/tommyip) for their contributions.

General
- **Since it's becoming increasingly hard to support Python 2.6 and 3.3, we'd like to encourage our users to upgrade their
python version to 2.7 or 3.3+. Future versions of gitlint are likely to drop support for Python 2.6 and 3.3.**

Features
- Gitlint now supports [pre-commit.com](https://pre-commit.com).
[Details in our documentation](https://jorisroovers.github.io/gitlint/commit_hooks/#gitlint-and-pre-commit-in-ci)
([62](https://github.com/jorisroovers/gitlint/issues/62)).
- Gitlint now has a `--msg-filename` commandline flag that allows you to specify the commit message to lint via
a file ([39](https://github.com/jorisroovers/gitlint/issues/39)).
- Gitlint will now be silent by default when a specified commit range is empty ([46](https://github.com/jorisroovers/gitlint/issues/46)).
- Gitlint can now be installed on MacOS by brew via the [homebrew-devops](https://github.com/rockyluke/homebrew-devops) tap. To get the latest version of gitlint, always use pip for installation.
- If all goes well,
[gitlint will also be available as a package in the Ubuntu 18.04 repositories](https://launchpad.net/ubuntu/+source/gitlint).

Rules
- **New Rule**: `ignore-by-title` allows users to
[ignore certain commits](https://jorisroovers.github.io/gitlint/ignoring_commits/) by matching a regex against
a commit message title. ([54](https://github.com/jorisroovers/gitlint/issues/54), [#57](https://github.com/jorisroovers/gitlint/issues/57)).
- **New Rule**: `ignore-by-body` allows users to
[ignore certain commits](https://jorisroovers.github.io/gitlint/ignoring_commits/) by matching a regex against
a line in a commit message body.

Bugfixes
- We fixed a nasty and recurring issue with running gitlint in CI. Hopefully that's the end of it :-) ([40](https://github.com/jorisroovers/gitlint/issues/40)).
- Fix for custom git comment characters ([48](https://github.com/jorisroovers/gitlint/issues/48)).

0.9.0

The 0.9.0 release adds a new default `author-valid-email` rule, important bugfixes and special case handling.
Special thanks to [joshholl](https://github.com/joshholl), [ron8mcr](https://github.com/ron8mcr),
[omarkohl](https://github.com/omarkohl), [domo141](https://github.com/domo141), [nud](https://github.com/nud)
and [AlexMooney](https://github.com/AlexMooney) for their contributions.

General
- **Breaking change**: The `--commits` commandline flag now strictly follows the refspec format as interpreted
by the [`git rev-list <refspec>`](https://git-scm.com/docs/git-rev-list) command. This means
that linting a single commit using `gitlint --commits <ref>` won't work anymore. Instead, for single commits,
users now need to specificy `gitlint --commits <ref>^...<ref>`. On the upside, this change also means
that gitlint will now understand all refspec formatters, including `gitlint --commits HEAD` to lint all commits
in the repository. This fixes [23](https://github.com/jorisroovers/gitlint/issues/23).
- **Breaking change**: Gitlint now always falls back on trying to read a git message from a local git repository, only
reading a commit message from STDIN if one is passed. Before, gitlint only read from the local git repository when
a TTY was present. This is likely the expected and desired behavior for anyone running gitlint in a CI environment.
This fixes [40](https://github.com/jorisroovers/gitlint/issues/40) and
[42](https://github.com/jorisroovers/gitlint/issues/42).
- **Behavior Change**: Gitlint will now by default
[ignore squash and fixup commits](https://jorisroovers.github.io/gitlint/ignoring_commits/#merge-fixup-squash-and-revert-commits)
(fix for [33: fixup messages should not trigger a gitlint violation](https://github.com/jorisroovers/gitlint/issues/33))

Features
- Support for custom comment characters ([34](https://github.com/jorisroovers/gitlint/issues/34))
- Support for [`git commit --cleanup=scissors`](https://git-scm.com/docs/git-commit#git-commit---cleanupltmodegt)
([34](https://github.com/jorisroovers/gitlint/issues/34))

Rules
- New Rule: `author-valid-email` enforces a valid author email address. Details can be found in the
[Rules section of the documentation](https://jorisroovers.github.io/gitlint/rules/builtin_rules/#m1-author-valid-email).

Bugfixes
- [37: Prevent Commas in text fields from breaking git log printing](https://github.com/jorisroovers/gitlint/issues/37)

Development
- Debug output improvements

0.8.2

The 0.8.2 release brings minor improvements, bugfixes and some under-the-hood changes. Special thanks to
[tommyip](https://github.com/tommyip) for his contributions.

Features
- `--extra-path` now also accepts a file path (in the past only directory paths where accepted).
Thanks to [tommyip](https://github.com/tommyip) for implementing this!
- gitlint will now show more information when using the `--debug` flag. This is initial work and will continue to
be improved upon in later releases.

Bugfixes

- [24: --commits doesn't take commit specific config into account](https://github.com/jorisroovers/gitlint/issues/24)
- [27: --commits returns the wrong exit code](https://github.com/jorisroovers/gitlint/issues/27)

Development
- Better unit and integration test coverage for `--commits`

0.8.1

The 0.8.1 release brings minor tweaks and some experimental features. Special thanks to
[tommyip](https://github.com/tommyip) for his contributions.

General
- Experimental: Python 3.6 support
- Improved Windows error messaging: gitlint will now show a more descriptive error message when ran on windows.
See [20](https://github.com/jorisroovers/gitlint/issues/20) for details on the lack of Windows support.

Features
- Experimental: Linting a range of commits.
[Documentation](https://jorisroovers.github.io/gitlint/linting_specific_commits/).
Known Caveats: [23](https://github.com/jorisroovers/gitlint/issues/23),
[24](https://github.com/jorisroovers/gitlint/issues/24).
Closes [14](https://github.com/jorisroovers/gitlint/issues/14). Thanks to [tommyip](https://github.com/tommyip)
for implementing this!

0.8.0

The 0.8.0 release is a significant release that has been in the works for a long time. Special thanks to
[Claymore](https://github.com/Claymore), [gernd](https://github.com/gernd) and
[ZhangYaxu](https://github.com/ZhangYaxu) for submitting bug reports and pull requests.

General
- Full unicode support: you can now lint messages in any language! This fixes
[16](https://github.com/jorisroovers/gitlint/issues/16) and [#18](https://github.com/jorisroovers/gitlint/pull/18).
- Pypy2 support!
- Various documentation improvements

Features
- User-defined rules: you can now
[define your own custom rules](https://jorisroovers.github.io/gitlint/rules/user_defined_rules/)
if you want to extend gitlint's functionality.
- Debug output improvements: Gitlint will now print your active configuration when using `--debug`
- The `general.target` option can now also be set via `-c` flags or a `.gitlint` file

Bugfixes
- Various important fixes related to configuration precedence
- [17: Body MinLength is not working properly](https://github.com/jorisroovers/gitlint/issues/17).
**Behavior Change**: Gitlint now always applies this rule, even if the body has just a single line of content.
Also, gitlint now counts the body-length for the entire body, not just the length of the first line.

Development
- Pylint compliance for all supported python versions
- Updated dependencies to latest versions
- Various `run_tests.sh` improvements for developer convenience

Page 3 of 5

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.