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.1.0.tar.gz (28.0 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.1.0-py3-none-any.whl (6.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pycolint-0.1.0.tar.gz
  • Upload date:
  • Size: 28.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.30

File hashes

Hashes for pycolint-0.1.0.tar.gz
Algorithm Hash digest
SHA256 368edcced431c4333fafeaf74598c76504d18b28f4b9f321986ce358378d5a77
MD5 fd9e7203aaec5039f6be28e46816294b
BLAKE2b-256 f340d332220f846c1d3ed64d279dcd67492a5f5b13ff88d3ccaf7e705f142184

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pycolint-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.4.30

File hashes

Hashes for pycolint-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 eeef22f7fe4e4408edb5fadf0cd196f126fd17fc918634ff1552aa7067071592
MD5 cb481efbe58801d6182a4b4dce680675
BLAKE2b-256 77e7c6ef3826f8af2671ca19113c46903ce3a15898e4b4c5aa6c4b0a2b366d81

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