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.16-cp311-abi3-win_amd64.whl (820.3 kB view details)

Uploaded CPython 3.11+Windows x86-64

spdx_checker-0.1.16-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.16-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.16-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.16-cp311-abi3-win_amd64.whl.

File metadata

  • Download URL: spdx_checker-0.1.16-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 820.3 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.16-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 b426c87fb5c79fe48177cb77a118d4e1e63e7a723626fbe1913278d8a700f814
MD5 3f50fb3d7884078da6a2a97c98701439
BLAKE2b-256 f5ae833a4efbbeceb4d435b7e074f2505974f0b4330f3bbfadc6e60ba1828a20

See more details on using hashes here.

File details

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

File metadata

  • Download URL: spdx_checker-0.1.16-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.16-cp311-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 e1865844339b5a9783d933bc7e65ad15ca1d3b14633547031a59acb9229e0ff7
MD5 c037830061a876e3212596db19d73f8e
BLAKE2b-256 6b1b3fba5d4f8a45d13c3d052e89f1526c82861934a6b406587bb27a34e9f95e

See more details on using hashes here.

File details

Details for the file spdx_checker-0.1.16-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.16-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.16-cp311-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 363946ebb00d76891d9e2aef21d6c32b991a18d189da4619aff213401e7c6c80
MD5 78658c870dfd22d1322674a67e416f1c
BLAKE2b-256 6b85b5e57435c877accc7f869401cf4e5fa1ca0f38972a0f7b645f7418e17c2b

See more details on using hashes here.

File details

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

File metadata

  • Download URL: spdx_checker-0.1.16-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.16-cp311-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 082897bf07e36c38262d5156e52ce51b23b81fe751a6e3a4477ab182083e7301
MD5 f350c9ee8a35be3973d3e4c648e16cc5
BLAKE2b-256 b0175441000ed368af8f54c72623938503921c5ce67c0e7568589948f3a9f4a3

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