colint
colint is an MIT-licensed Rust command-line linter for opinionated Python
code reviews. It parses Python with Tree-sitter, so diagnostics include stable
source locations even for multiline expressions.
Install
Once published, install the ColinKennedy PyPI distribution with:
python -m pip install colint
cargo run -- path\to\project
cargo run -- --strict --json src
cargo run -- --include-header src
Contributors can run the same quality gates as CI with cargo fmt --check,
cargo clippy --all-targets -- -D warnings, and cargo test --all-targets.
Rules have stable codes in the COL-NNN form. A line may suppress all findings
with # noqa, or selected findings with # colint: ignore[COL-003,COL-010].
For a nested import (COL-003), use # NOTE: reason immediately above the
import or contiguous import group; blank lines do not split that group. Use
this NOTE form for any intentional nested import, especially generated code.
Pass --include-header to prepend this suppression guidance to ordinary
human-readable output. The header is not included by default and is never
included in --json output.
The complete agreed rule and behavior contract is in DESIGN.md.
Configuration
Create .colint.toml in the working directory (or a parent directory):
warnings_as_errors = false
docstring_convention = "mkdocs"
# COL-002 skips private definitions by default. Private means an underscore-
# prefixed function or method, or any member of an underscore-prefixed class.
col002_skip_private_definitions = true
# Additional Python package roots used to resolve imported Qt model/proxy bases.
# Relative paths are resolved from this configuration file.
import_paths = ["../shared-python", "C:/work/company-python"]
[rules]
COL-003 = true
COL-013 = false
Every rule is enabled by default. --strict enables every rule regardless of
configuration and treats warnings as errors. Exit status is 0 for clean runs
and ordinary warnings, 1 for warnings escalated to errors, and 2 whenever
an error-level finding exists.
docstring_convention = "mkdocs" enables the MkDocs parameter-markup check.
col002_skip_private_definitions = false makes COL-002 lint private functions,
methods, and class members too.
import_paths supplements PYTHONPATH when COL-014 resolves imported
project classes. These roots are used for inheritance discovery only; colint
does not emit findings for files that were loaded solely from an import path.
Release files for colint 0.4.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| colint-0.4.0.tar.gz | 22.7 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| colint-0.4.0-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details |
| colint-0.4.0-py3-none-manylinux_2_34_x86_64.whl | Python 3 | none | Linux glibc 2.34+ x86-64 | Details |
| colint-0.4.0-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details |
Total release size: 3.8 MB
Release files / colint-0.4.0.tar.gz
| Download URL | colint-0.4.0.tar.gz |
|---|---|
| Size | 22.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d762c8d81b957fb54d8492130db4241ef6f659fe23d1ebde13a3668ec9e2ff61
|
|
BLAKE2b-256 checksum How to use checksums |
514a39e924b21a8c8e978812d2d8c112cebcef1d79ac8cf5637572306c2b7f7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.
Transparency logRelease files / colint-0.4.0-py3-none-win_amd64.whl
| Download URL | colint-0.4.0-py3-none-win_amd64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
4038834962eae63269fe74de0611f3ccdee9472a187c913ddcd1bf6dc0ab56fb
|
|
BLAKE2b-256 checksum How to use checksums |
2f477de981b232c5f1877bda09b80039e30233d7589577fbdd9c7b4a24a1a832
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.
Transparency logRelease files / colint-0.4.0-py3-none-manylinux_2_34_x86_64.whl
| Download URL | colint-0.4.0-py3-none-manylinux_2_34_x86_64.whl |
|---|---|
| Size | 1.4 MB |
| Tags | Linux glibc 2.34+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
351c49565226160a3bdf67156dd1dd1c1b5920e6a71fa47df6bb82a4cc4a04f2
|
|
BLAKE2b-256 checksum How to use checksums |
1fb832400d883c54d51701a19661f5a6855c7c462cb4462479f7495e840d802c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.
Transparency logRelease files / colint-0.4.0-py3-none-macosx_11_0_arm64.whl
| Download URL | colint-0.4.0-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 1.2 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
f690dc3a8c96a44a98f771d6dc8752e8b87d7ad7c44dc0fee0bbe14bcd186cf4
|
|
BLAKE2b-256 checksum How to use checksums |
5330edbf601834df74e938cbe67ef60ab036e8c40758adfed2f0d5f3e16b8ac9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 26, 2026.
Transparency log