liccheck
Check python packages from requirement.txt and report issues
What it is and what it does
liccheck is a command-line tool that audits Python project dependencies against a license compliance policy. It reads a requirements.txt or pyproject.toml file, inspects the licenses of all installed packages and their transitive dependencies, and reports violations based on three configurable strictness levels: Standard (at least one authorized license), Cautious (no unauthorized licenses even if one authorized exists), and Paranoid (all licenses must be authorized). The tool requires packages to be installed in the same Python environment where it runs, since it uses pkg_resources to access package metadata.
You define compliance rules in an INI or TOML configuration file, listing authorized licenses, unauthorized licenses, and exceptions for specific packages. The tool supports both exact string matching and regex patterns for license names. It outputs a summary of compliant packages, forbidden packages, unknown licenses, and dependency chains for violations, making it useful for legal review, CI/CD pipelines, and pre-commit hooks.
Use it for:
- Enforce corporate license policies in CI/CD by blocking builds when dependencies violate approved licenses
- Audit open-source projects before distribution to ensure compliance with GPL, MIT, Apache, or other license requirements
- Detect GPL-licensed transitive dependencies that may trigger copyleft obligations in your project
- Generate license compliance reports for legal review before shipping a product
- Prevent accidental adoption of incompatible licenses by catching violations at pre-commit time
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Scans Python project dependencies in requirements.txt or pyproject.toml and validates their licenses against a configurable policy of authorized and unauthorized licenses.
Yes. liccheck is a stable, actively maintained tool with low install friction and no security vulnerabilities. It solves a real compliance problem with minimal dependencies and clear output. Install it if your project needs to enforce license policies or audit dependencies for legal compliance.
Install
liccheck on PyPI
pip
pip install liccheckuv
uv add liccheckpoetry
poetry add liccheckInstalling liccheck
Before you install
Low friction install with only two lightweight runtime dependencies (semantic-version and toml). Actively maintained as of 2026-07-20 with stable status since its 2017 release.
License in practice
Licensed under Apache Software License (permissive). No restrictions on commercial or private use.
Quickstart
pip install liccheck
Create liccheck.ini with authorized/unauthorized licenses, then:
liccheck -s liccheck.ini -r requirements.txt
Requires all packages from requirements.txt to be installed in the same Python environment; uses pkg_resources to inspect installed package metadata.
Verify before relying
- Whether regex matching performance scales well with large dependency trees
- How the tool handles packages with missing or malformed license metadata
Package facts
| License | Apache Software License (permissive) |
| Python support | supports the current Python release (>=3.5) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 2 — semantic-version, toml |
| Maintenance | actively maintained — 1,057 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 2,013,403/month — #3,363 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: liccheck-0.9.2-py2.py3-none-any.whl
Keywords: license, check, build, tool
Tags
More Build Tools packages
Provides reusable utilities for Python…
permissive · top 100 on PyPI
tqdmWraps any iterable to display a real-time…
copyleft · top 100 on PyPI
pippip is the standard installer for Python…
permissive · top 100 on PyPI
hatchlingHatchling is a standards-compliant Python build…
permissive · top 100 on PyPI
grpcio-toolsGenerates Python gRPC service stubs and message…
permissive · top 1,000 on PyPI
pre-commitpre-commit is a framework for installing and…
permissive · top 1,000 on PyPI
licensecheckScans a project's dependencies to extract their…
permissive · top 15,000 on PyPI
uv-secureScans uv.lock, pylock.toml, and…
permissive · top 15,000 on PyPI
uv-sortAlphabetically sorts dependencies in uv's…
permissive · top 15,000 on PyPI
pipreqsScans Python project source code to detect…
permissive · top 5,000 on PyPI
pip-check-reqsAudits Python project imports against…
permissive · top 15,000 on PyPI
license-expressionParses, validates, simplifies, and normalizes…
permissive · top 1,000 on PyPI
shellcheck-pyProvides a pip-installable shellcheck binary…
permissive · top 5,000 on PyPI
requirements-detectorScans a Python project to detect and list its…
permissive · top 15,000 on PyPI
pipreqs-fivetranScans Python project source files and Jupyter…
permissive · top 15,000 on PyPI
depgatherExtracts and lists dependencies from multiple…
permissive · top 15,000 on PyPI