Skip to main content

Opinionated Markdown formatter and linter

Project description

mdlint — Python package

This directory contains the Python distribution for mdlint, an opinionated Markdown formatter and linter written in Rust.

The package wraps the pre-built mdlint binary. No Rust toolchain is required to install or use it.

Installation

pip install mdlint

Or with uv:

uv tool install mdlint

Usage

# Format Markdown files
mdlint format

# Check for issues
mdlint check

# Check and auto-fix
mdlint check --fix

See the full documentation for all options, configuration, and CI integration examples.

How it works

pip install mdlint downloads a platform-specific wheel that bundles the correct pre-built mdlint binary for your OS and architecture. The mdlint command is a thin Python wrapper that locates and execs that binary.

Supported platforms:

Platform Architecture
Linux x86_64 (glibc)
Linux aarch64 (glibc)
macOS x86_64
macOS arm64 (Apple Silicon)
Windows x86_64

Development

Prerequisites

Build a wheel locally

cd python

# Pure-Python wheel (no binary bundled — for metadata validation only)
uv build --wheel

# Platform-specific wheel with a binary
cp /path/to/mdlint-binary mdlint/mdlint
MDLINT_PLATFORM_TAG=macosx_11_0_arm64 uv build --wheel

MDLINT_PLATFORM_TAG is read by hatch_build.py to stamp the correct platform tag onto the wheel. Without it, the wheel is tagged py3-none-any and contains no binary — useful for metadata validation in CI but not for distribution.

Validate package metadata

cd python
uv build --wheel
uvx twine check dist/*.whl

Platform tags

Asset MDLINT_PLATFORM_TAG
mdlint-linux-x86_64 manylinux_2_17_x86_64.manylinux2014_x86_64
mdlint-linux-aarch64 manylinux_2_17_aarch64.manylinux2014_aarch64
mdlint-macos-x86_64 macosx_10_12_x86_64
mdlint-macos-aarch64 macosx_11_0_arm64
mdlint-windows-x86_64.exe win_amd64

Release

Releases are automated via .github/workflows/build-python.yml. On a version tag push, the workflow downloads each pre-built binary from the GitHub release, builds a platform-specific wheel, uploads it to the GitHub release, and publishes it to PyPI.

A PYPI_TOKEN secret must be configured in the repository settings.

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.

markdownlint_rs-0.3.14-py3-none-win_amd64.whl (1.4 MB view details)

Uploaded Python 3Windows x86-64

markdownlint_rs-0.3.14-py3-none-musllinux_1_2_x86_64.whl (1.5 MB view details)

Uploaded Python 3musllinux: musl 1.2+ x86-64

markdownlint_rs-0.3.14-py3-none-musllinux_1_2_aarch64.whl (1.4 MB view details)

Uploaded Python 3musllinux: musl 1.2+ ARM64

markdownlint_rs-0.3.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (1.5 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ x86-64

markdownlint_rs-0.3.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (1.4 MB view details)

Uploaded Python 3manylinux: glibc 2.17+ ARM64

markdownlint_rs-0.3.14-py3-none-macosx_11_0_arm64.whl (1.3 MB view details)

Uploaded Python 3macOS 11.0+ ARM64

markdownlint_rs-0.3.14-py3-none-macosx_10_12_x86_64.whl (1.4 MB view details)

Uploaded Python 3macOS 10.12+ x86-64

File details

Details for the file markdownlint_rs-0.3.14-py3-none-win_amd64.whl.

File metadata

  • Download URL: markdownlint_rs-0.3.14-py3-none-win_amd64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"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 markdownlint_rs-0.3.14-py3-none-win_amd64.whl
Algorithm Hash digest
SHA256 509f0d8026e119169a182b8bed3ffa69b3e5034557d1d0861fd670df807277a4
MD5 a37b5abf28fdfbf84f48063c46008144
BLAKE2b-256 853edc37eda9167fac8a34b4c129fd99af0653f081afe17d74839e09d825d430

See more details on using hashes here.

File details

Details for the file markdownlint_rs-0.3.14-py3-none-musllinux_1_2_x86_64.whl.

File metadata

  • Download URL: markdownlint_rs-0.3.14-py3-none-musllinux_1_2_x86_64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3, musllinux: musl 1.2+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"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 markdownlint_rs-0.3.14-py3-none-musllinux_1_2_x86_64.whl
Algorithm Hash digest
SHA256 cb2784f45f45419a3d27fa52fc7b0f87178d01261515436211b87019b1a0866f
MD5 fd6c3d4665a48a03e7e98649db174073
BLAKE2b-256 36229b9c6fef78bc3be45d208f7e19b79d9fce7fcf40836e0dcacc596e1ab546

See more details on using hashes here.

File details

Details for the file markdownlint_rs-0.3.14-py3-none-musllinux_1_2_aarch64.whl.

File metadata

  • Download URL: markdownlint_rs-0.3.14-py3-none-musllinux_1_2_aarch64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3, musllinux: musl 1.2+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"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 markdownlint_rs-0.3.14-py3-none-musllinux_1_2_aarch64.whl
Algorithm Hash digest
SHA256 8fae92e0de28e111b9e42b72c49cf9c098ed6208dc0da7b403df276ad3b57422
MD5 6b3ad995cc4ecb061aab02bbe43eb7d9
BLAKE2b-256 969c3061e5365ea2127b860f3b1eb3a02d52476e1bc5d9fb802bf5fbf6484f8b

See more details on using hashes here.

File details

Details for the file markdownlint_rs-0.3.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

  • Download URL: markdownlint_rs-0.3.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
  • Upload date:
  • Size: 1.5 MB
  • Tags: Python 3, manylinux: glibc 2.17+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"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 markdownlint_rs-0.3.14-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 6abdd537c9702fe414ef4eb88c659b1af25499a52243a50f22bf57f8018b2170
MD5 5e9c2a9f9e3d04d961822a9d599fd5a4
BLAKE2b-256 df7b769378c7830c86209eeec195fdf62e34702a980b057f4aa72d8fe3f7259a

See more details on using hashes here.

File details

Details for the file markdownlint_rs-0.3.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

  • Download URL: markdownlint_rs-0.3.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3, manylinux: glibc 2.17+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"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 markdownlint_rs-0.3.14-py3-none-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5c254441bf568c274636a85f8453dc7e0ac29966bf081b54564d30008cfd68ad
MD5 3ab785f6f54741b05cc2541555cc768b
BLAKE2b-256 a92b1694e04e8c1d686f560329ea269ab9768338a52cc62c7cce7c875b932465

See more details on using hashes here.

File details

Details for the file markdownlint_rs-0.3.14-py3-none-macosx_11_0_arm64.whl.

File metadata

  • Download URL: markdownlint_rs-0.3.14-py3-none-macosx_11_0_arm64.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: Python 3, macOS 11.0+ ARM64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"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 markdownlint_rs-0.3.14-py3-none-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f558ecd9f7c2ce15538c1a132e8f704dffd4946ef0b8f13f3d78b4f8c5403d18
MD5 c7327eba351806a478027a039240bc8f
BLAKE2b-256 72ef031228aa2e6db913e7b7bdf324e1938aa76b120baa7bcb3a5529f70770f2

See more details on using hashes here.

File details

Details for the file markdownlint_rs-0.3.14-py3-none-macosx_10_12_x86_64.whl.

File metadata

  • Download URL: markdownlint_rs-0.3.14-py3-none-macosx_10_12_x86_64.whl
  • Upload date:
  • Size: 1.4 MB
  • Tags: Python 3, macOS 10.12+ x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.10.10 {"installer":{"name":"uv","version":"0.10.10","subcommand":["publish"]},"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 markdownlint_rs-0.3.14-py3-none-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 0ebb69cee662cf0f467d78639297876fda7c5325b9c7165f8b023f86a6126268
MD5 d64e65575ed8b6eebd1e7b20fb5b4302
BLAKE2b-256 745d1cc5a8acf564a9007caf142b33aeeb221aa5a3b5cf7399375f69f59dcf15

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