Licomp Toolkit
Licomp Toolkit
The licomp-toolkit is a Python-based utility designed to evaluate license compatibility between different software components. It serves as a bridge to multiple compatibility resources, allowing developers and legal teams to determine if an inbound license (e.g., a library they want to use) is legally compatible with their project's outbound license.
Example question with a licomp-toolkit answer
Can I use an inbound component under license LGPL-2.1-or-later AND Apache-2.0 to my program licensed under BSD-3-Clause?
$ licomp-toolkit -of text verify --inbound-license "LGPL-2.1-or-later AND Apache-2.0" --outbound-license "BSD-3-Clause"
outbound: BSD-3-Clause
inbound: Apache-2.0 AND LGPL-2.1-or-later
resources: licomp_osadl, licomp_reclicense
provisioning: binary-distribution
usecase: library
compatibility: yes
Introduction
Licomp can be used to help determine if an inbound license is compatible with an outbound license. These compatibility checks need context which is often missing in tools, resources and discussions. The context above must be provided to licomp-toolkit. In short the context is:
- use case - how you use the licensed component
- provisioning - how you provide the component to your user
- modification - if you have modified the component
Architectural overview
Licomp toolkit is using the Licomp api to communicate with the Licomp resources. For a better understanding of Licomp we suggest you read:
Licomp resources
Licomp toolkit uses the following compatibility resources using the Licomp api: licomp-hermione, licomp-osadl, licomp-proprietary, licomp-reclicense, licomp-dwheeler and licomp-gnuguide.
Using Licomp Toolkit
Command line interface (brief intro)
If you want to check if the following is compatible:
- outbound license "MIT"
- inbound license "LGPL-2.0-or-later"
$ licomp-toolkit verify -il MIT -ol LGPL-2.0-or-later | jq .summary.results
{
"nr_valid": "1",
"yes": {
"count": 1,
"percent": 100.0
}
}
In the above example, licomp-toolkit by default chose:
- usecase
library- i.e. the licenses component is used as a library (e.g. linking to it) - provisioning
binary-distribution - modification is not yet implemented
For more detailed guides to licomp-toolkit, please check out:
Python module
If you want to check if the following is compatible:
- outbound license "MIT"
- inbound license "LGPL-2.0-or-later"
>>> from licomp_toolkit.toolkit import LicompToolkit
>>> licomp_toolkit = LicompToolkit()
>>> compatibilities = licomp_toolkit.outbound_inbound_compatibility("MIT", "LGPL-2.0-or-later", "library", "binary-distribution")
>>> print(str(compatibilities['summary']['results']))
{'nr_valid': '1', 'yes': {'count': 1, 'percent': 100.0}}
For a more detailed guide to the licomp-toolkit Python api, please check out: Licomp Toolkit - Python module
License
Licomp Toolkit is released in GPL-3.0-or-later
Installing Licomp Toolkit
What tools use Licomp Toolkit
Sponsors
As part of Automated FOSS License Compliance, Licomp Toolkit is sponsored (2025-2026) by:
Metadata
Release files for licomp-toolkit 0.6.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| licomp_toolkit-0.6.1.tar.gz | 39.0 kB | Details |
Release files / licomp_toolkit-0.6.1.tar.gz
| Download URL | licomp_toolkit-0.6.1.tar.gz |
|---|---|
| Size | 39.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
d1865447a27ffcc01472e0383bcf22814a51d31fa742916ebcd5f294c8c0d217
|
|
BLAKE2b-256 checksum How to use checksums |
99003d39bc8944fb83ddfafaa2e93d8203adf72b4268728ddddcb515d2efa82d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.4
|