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"]
    extensions=["zig", "py", "svelte"]
    fix=True,
    continue_on_error=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.19-cp311-abi3-win_amd64.whl (845.6 kB view details)

Uploaded CPython 3.11+Windows x86-64

spdx_checker-0.1.19-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.19-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.19-cp311-abi3-macosx_14_0_arm64.whl (442.3 kB view details)

Uploaded CPython 3.11+macOS 14.0+ ARM64

File details

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

File metadata

  • Download URL: spdx_checker-0.1.19-cp311-abi3-win_amd64.whl
  • Upload date:
  • Size: 845.6 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.19-cp311-abi3-win_amd64.whl
Algorithm Hash digest
SHA256 1c9ff32d81a29be84a17ea2d8595b2bbf184e0d9dc754debca6415b478faed17
MD5 c1c94d92753d434946df9793485662c4
BLAKE2b-256 f27736ae4ddf928d2652ba084d9c463e7f7f3e7c1416a8ec405db1ed4251ba8f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: spdx_checker-0.1.19-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.19-cp311-abi3-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 5fadcf5b3184f283e2a1bfaacd196c590dd02602b0c4a618a2111851571c00d1
MD5 b5490dc67964170a79a2fd1826bc78c9
BLAKE2b-256 488be1262837135c949e4dca67356998855431144384eb5640663e0e718a16d3

See more details on using hashes here.

File details

Details for the file spdx_checker-0.1.19-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.19-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.19-cp311-abi3-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3c9540d83811dd5206cf88281cd9d339fd5cd04f9bfb6169891dd384abc2463d
MD5 2d9ed7ae7d621fa45a24c433e434bfe2
BLAKE2b-256 8fa0dd0374a6b46f429be0697870a1ead957aeac04c7d03cfb2732c905abab8a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: spdx_checker-0.1.19-cp311-abi3-macosx_14_0_arm64.whl
  • Upload date:
  • Size: 442.3 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.19-cp311-abi3-macosx_14_0_arm64.whl
Algorithm Hash digest
SHA256 cb3b33e4df81a71e11985c34c8166f964dd93a748d279027ca46bbd26c0818f8
MD5 f387cff0dba830b328c08f4fc3f9b8d4
BLAKE2b-256 952359c66c8396ec4d673bc1105ea666592c52837e3ea485b24852b87556ede3

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