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.1rc10.tar.gz (32.9 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.1rc10-py3-none-any.whl (9.2 kB view details)

Uploaded Python 3

File details

Details for the file pycolint-0.2.1rc10.tar.gz.

File metadata

  • Download URL: pycolint-0.2.1rc10.tar.gz
  • Upload date:
  • Size: 32.9 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.1rc10.tar.gz
Algorithm Hash digest
SHA256 678c36c46697bccaf2447b5c616c101a9096ddb8f78b2591d656a3af38458513
MD5 c588bda23c50b69651c9646a3e3ac252
BLAKE2b-256 c781ac77651a7755e7bdbe8db69cf9c716fe848c98c5ff40ba28453608603761

See more details on using hashes here.

File details

Details for the file pycolint-0.2.1rc10-py3-none-any.whl.

File metadata

  • Download URL: pycolint-0.2.1rc10-py3-none-any.whl
  • Upload date:
  • Size: 9.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.1rc10-py3-none-any.whl
Algorithm Hash digest
SHA256 339fc6f408dad689905221bc78e37782ee67a048e137681d04086ee8e21d4412
MD5 d8f2a1fb5b98bd63c2f623779f3fa21a
BLAKE2b-256 eefab165d45f2223354495459acd39b3760104762c82f9233a29612c1ae0d221

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