Skip to main content

Add your description here

Project description

pycolint

Why another commit linter? Because all available tools seemed to do too much, while lacking either customizability or a sane way to communicate semantics to the developer. PyCoLint is a commitlinter written in python. It's only job is to help you adhere to the syntax defined by the conventional commit specification[https://www.conventionalcommits.org/en/v1.0.0/]. It does not know anything about the semantics of commit messages. That means it does not offer any semantics related features. Instead of having to care about version bumping etc., we want to provide helpful error messages and other feedback that should help a team to stick to their conventions.

The linter warns about:

  • exceeding maximum line length
  • empty scope, e.g., "feat(): empty scope"
  • missing type
  • ending the commit msg hdr with a .
  • missing separation between body and header
  • empty body
  • whitespace in scopes

We try to stick close to the official conventional commit specification. As such we do not restrict the usable types nor the scopes in any way.

ToDo in order of importance

  • check against a list of user defined types
  • check against a list of user defined scopes
  • configure via pyproject.toml
  • add pre-commit hook
  • warn about past tense for very common cases, e.g., "added", "made", "did",...

Known Issues

  • only the last token corresponding to an error is marked
  • Unclosed parentheses/missing scope is not detected for this message "feat(: msg."

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pycolint-0.2.0.tar.gz (62.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pycolint-0.2.0-py3-none-any.whl (8.2 kB view details)

Uploaded Python 3

File details

Details for the file pycolint-0.2.0.tar.gz.

File metadata

  • Download URL: pycolint-0.2.0.tar.gz
  • Upload date:
  • Size: 62.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.0

File hashes

Hashes for pycolint-0.2.0.tar.gz
Algorithm Hash digest
SHA256 b66cabe42b6c3b82fabbfd98eeaa4189345908f5034f3144bf69dac0d5bcff4f
MD5 c0acf587a4486f09ab2fd926afb4d0c4
BLAKE2b-256 221fd7f21087915ca591886f48d3cb7f6f091ce2fcdafec19f3b97adea54a61a

See more details on using hashes here.

File details

Details for the file pycolint-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: pycolint-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 8.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.13.0

File hashes

Hashes for pycolint-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 80bf5fc4d214cb632bdb7bf5626f9c34b59483b2871434edfc974e75090d943e
MD5 94a3219850eb95260519d3d305113199
BLAKE2b-256 f652afbe521491b2c5a968896980e6cdd3814a08ff0aca40b37a2de6db4d9035

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page