Skip to main content

Fast SPDX License Checker for Source Code

Project description

SPDX License Checker

spdx-checker is a fast Python package for validating and analyzing SPDX license headers in your projects. It leverages Zig for exceptional speed and efficiency. The checker raises an error immediately if any file contains an incorrect or missing license header.

Supported platforms

The wheels published by the GitHub Actions workflow are built with cibuildwheel. The table below lists all supported operating systems and Python versions for the pre-built wheels.

Operating System Python versions / ABI
macOS (arm64) 3.11, 3.12, 3.13 (cp311, cp312, cp313 — macosx_arm64)
manylinux (x86_64) 3.11, 3.12, 3.13 (cp311, cp312, cp313 — manylinux_x86_64)
musllinux (x86_64) 3.11, 3.12, 3.13 (cp311, cp312, cp313 — musllinux_x86_64)
Windows (amd64) 3.11, 3.12, 3.13 (cp311, cp312, cp313 — win_amd64)

Example Usage

import spdx_checker

spdx_checker.check_license(
    "MIT", 
    ["example1.py", "example2.svelte", "example3.html"]
    True,
    False
    )

Development

Issues with uv caching

To force uv to ignore existing installed versions, pass --reinstall to any installation command (e.g., uv sync --reinstall or uv pip install --reinstall ...).

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

spdx_checker-0.1.17-cp311-abi3-win_amd64.whl (820.0 kB view details)

Uploaded CPython 3.11+Windows x86-64

spdx_checker-0.1.17-cp311-abi3-musllinux_1_2_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11+musllinux: musl 1.2+ x86-64

spdx_checker-0.1.17-cp311-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.7 MB view details)

Uploaded CPython 3.11+manylinux: glibc 2.12+ x86-64manylinux: glibc 2.17+ x86-64

spdx_checker-0.1.17-cp311-abi3-macosx_14_0_arm64.whl (429.6 kB view details)

Uploaded CPython 3.11+macOS 14.0+ ARM64

File details

Details for the file spdx_checker-0.1.17-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: spdx_checker-0.1.17-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 820.0 kB
  • Tags: CPython 3.11+, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for spdx_checker-0.1.17-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 16b6f612c3347fb3f88f4935baaf3b8fdd0d52acf3f409c3717183b323d8ad1d
MD5 45ed1084c244ea2585468616e19a12ab
BLAKE2b-256 d652ebbdadaad2ddda6b890b9661def67b486162d1a12e003749adcc3a6488c2

See more details on using hashes here.

File details

Details for the file spdx_checker-0.1.17-cp311-abi3-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: spdx_checker-0.1.17-cp311-abi3-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.11+, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for spdx_checker-0.1.17-cp311-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 816a8dceabd680f3c208f31d79adc38439d259c19d82eade40cc1b2b0de537dd
MD5 1a1b534ac991f1e689c852fe096a526e
BLAKE2b-256 d67c77c168c1e36bf7857938f1a3e3d2f1d2a126fc3cb27e02d397a0725336e1

See more details on using hashes here.

File details

Details for the file spdx_checker-0.1.17-cp311-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: spdx_checker-0.1.17-cp311-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.7 MB
  • Tags: CPython 3.11+, manylinux: glibc 2.12+ x86-64, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for spdx_checker-0.1.17-cp311-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 e62c58d8cbbe62cfa535ce7c05bd1d7890e46b024f3a6896bb60cd34a9dc6b51
MD5 ffff5a710d7096e52c3c0a4b0c3c9554
BLAKE2b-256 64b2864bf886996663a6cac1b9b041976d0ab6a5419bc98a9e75982109baa0cc

See more details on using hashes here.

File details

Details for the file spdx_checker-0.1.17-cp311-abi3-macosx_14_0_arm64.whl.

File metadata

  • Download URL: spdx_checker-0.1.17-cp311-abi3-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 429.6 kB
  • Tags: CPython 3.11+, macOS 14.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.9.13 {"installer":{"name":"uv","version":"0.9.13"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for spdx_checker-0.1.17-cp311-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 675b5c0ca38ab56a44aa8276e877bfeae3707f70ef46964cc95d4976b54c27ad
MD5 63e2c51c9c8744243e0de8d5ce626805
BLAKE2b-256 f54ad4472d26bc5075bca8beeea4f506d6a180866201b1980373dd88ecb4d702

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page