python-license-expression
Subpackage Descriptions
single |
==================
license-expression
==================
``license-expression`` is a comprehensive utility library to parse,
compare,
simplify and normalize license expressions (such as SPDX license
expressions)
using boolean logic.
- License: Apache-2.0
- Python: 3.9+
- Homepage: https://github.com/aboutcode-org/license-expression/
- Install: `pip install license-expression` also available in most Linux
distro.
Software project licenses are often a combination of several free and open
source software licenses. License expressions -- as specified by SPDX --
provide
a concise and human readable way to express these licenses without having
to
read long license texts, while still being machine-readable.
License expressions are used by key FOSS projects such as Linux; several
packages ecosystem use them to document package licensing metadata such as
npm and Rubygems; they are important when exchanging software data (such as
with
SPDX and SBOM in general) as a way to express licensing precisely.
``license-expression`` is a comprehensive utility library to parse,
compare,
simplify and normalize these license expressions (such as SPDX license
expressions)
using boolean logic like in: `GPL-2.0-or-later WITH Classpath-exception-2.0
AND MIT`.
It includes the license keys from SPDX https://spdx.org/licenses/ (version
3.26)
and ScanCode LicenseDB (from scancode-toolkit version 32.3.1, last
published on 2025-01-10).
See https://scancode-licensedb.aboutcode.org/ to get started quickly.
``license-expression`` is both powerful and simple to use and is a used as
the
license expression engine in several projects and products such as:
- AboutCode-toolkit https://github.com/aboutcode-org/aboutcode-toolkit
- AlekSIS (School Information System)
https://edugit.org/AlekSIS/official/AlekSIS-Core
- Barista https://github.com/Optum/barista
- Conda forge tools https://github.com/conda-forge/conda-smithy
- DejaCode https://dejacode.com
- DeltaCode https://github.com/nexB/deltacode
- FenixscanX https://github.com/SmartsYoung/FenixscanX
- FetchCode https://github.com/aboutcode-org/fetchcode
- Flict https://github.com/vinland-technology/flict and
https://github.com/vinland-technology
- license.sh https://github.com/webscopeio/license.sh
- liferay_inbound_checker
https://github.com/carmenbianca/liferay_inbound_checker
- REUSE https://reuse.software/ and https://github.com/fsfe/reuse-tool
- ScanCode-io https://github.com/aboutcode-org/scancode.io
- ScanCode-toolkit https://github.com/aboutcode-org/scancode-toolkit
- SecObserve https://github.com/MaibornWolff/SecObserve
See also for details:
- https://spdx.github.io/spdx-spec/appendix-IV-SPDX-license-expressions/
``license-expression`` is also packaged for most Linux distributions. See
below.
Alternative:
There is no known alternative library for Python, but there are several
similar
libraries in other languages (but not as powerful of course!):
- JavaScript https://github.com/jslicense/spdx-expression-parse.js
- Rust https://github.com/ehuss/license-exprs
- Haskell https://github.com/phadej/spdx
- Go https://github.com/kyoh86/go-spdx
- Ada https://github.com/Fabien-Chouteau/spdx_ada
- Java https://github.com/spdx/tools and
https://github.com/aschet/spdx-license-expression-tools
Build and tests status
======================
+--------------------------+------------------------+----------------------------------+
|**Linux & macOS (Travis)**| **Windows (AppVeyor)** |**Linux, Windows &
macOS (Azure)**|
+==========================+========================+==================================+
| | |
|
| |travis-badge-icon| | |appveyor-badge-icon| | |azure-badge-icon|
|
| | |
|
+--------------------------+------------------------+----------------------------------+
|
Configuration Switches (platform-specific settings discarded)
PY312 OFF Build using Python 3.12
PY313 ON Build using Python 3.13
Package Dependencies by Type
Download groups
main |
mirror://PYPIWHL/53/84/8a89614b2e7eeeaf0a68a4046d6cfaea4544c8619ea02595ebeec9b2bae3 |
Distribution File Information
679646bc3261a17690494a3e1cada446e5ee342dbd87dcfa4a0c24cc5dce13ee 111457 python-src/license_expression-30.4.1-py3-none-any.whl
Ports that require python-license-expression:v13