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
- Conda forge tools https://github.com/conda-forge/conda-smithy
- DejaCode https://enterprise.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/v2.3/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
Source code and download
========================
- GitHub https://github.com/aboutcode-org/license-expression.git
- PyPI https://pypi.python.org/pypi/license-expression
Also available in several Linux distros:
- Arch Linux
https://archlinux.org/packages/extra/any/python-license-expression/
- Debian https://packages.debian.org/unstable/source/license-expression
- DragonFly BSD
https://github.com/DragonFlyBSD/DPorts/tree/master/textproc/py-license-expression
- Fedora https://src.fedoraproject.org/rpms/python-license-expression/
- FreeBSD https://www.freshports.org/textproc/py-license-expression
- NixOS
|
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/03/ba/f6f6573bb21e51b838f1e7b0e8ef831d50db6d0530a5afaba700a34d9e12 |
Distribution File Information
fd3db53418133e0eef917606623bc125fbad3d1225ba8d23950999ee87c99280 117085 python-src/license_expression-30.4.3-py3-none-any.whl
Ports that require python-license-expression:v13