skillfed

extension-helpers

Utilities for building and installing packages with compiled extensions

extension-helpers v1.4.0 1.7M downloads/30d#3,653 on PyPI17
Permissive license BSD 3-Clause License Active released

What it is and what it does

extension-helpers is a setuptools plugin that streamlines the build configuration for Python packages containing compiled C or Cython extensions. Developed by the Astropy project, it abstracts away common boilerplate and configuration patterns that would otherwise require manual setup.py or pyproject.toml tuning. The package depends on setuptools and tomli for parsing configuration files.

It is intended as a general-purpose tool for any Python package author building extensions, not just Astropy-specific projects. The package is actively maintained, in production-stable status, and carries no known security vulnerabilities. Installation is straightforward with low dependency friction.

Use it for:

  • Simplify build configuration when packaging a Python library that wraps C code or uses Cython modules
  • Reduce boilerplate in setup.py or pyproject.toml for projects with multiple compiled extensions
  • Ensure consistent extension build behavior across different development and CI environments
  • Integrate extension building into a setuptools-based workflow without manual compiler flag management

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides build helpers and utilities for Python packages that include compiled C or Cython extensions, integrating with setuptools to simplify the extension build process.

Yes, if you are building a Python package with C or Cython extensions and want to reduce build configuration complexity. The low install friction, active maintenance, permissive license, and lack of known vulnerabilities make it a safe dependency. Skip it if your project uses a different build system or has no compiled extensions.

Install

extension-helpers on PyPI

pip

pip install extension-helpers

uv

uv add extension-helpers

poetry

poetry add extension-helpers

Installing extension-helpers

Before you install

Low friction installation with only setuptools and tomli as runtime dependencies. Active maintenance with recent commits and stable production status.

License in practice

BSD 3-Clause License is permissive; you may use, modify, and distribute this package freely in commercial and private projects with minimal restrictions.

Quickstart

pip install extension-helpers

In setup.py or pyproject.toml, use extension-helpers as a build backend or build requirement alongside setuptools to configure C/Cython extension compilation.

Requires Python 3.10 or later; a C compiler and development headers are typically needed to build extensions at install time.

Verify before relying

  • Whether this package is necessary for your build or if setuptools alone suffices for your extension use case
  • Specific Cython or C compilation toolchain requirements beyond what the fact sheet documents

Package facts

License BSD 3-Clause License (permissive)
Python support supports the current Python release (>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 2 — setuptools, tomli
Maintenance actively maintained — 431 days since the last release
Last repo commit
First released
Downloads 1,685,829/month — #3,653 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: extension_helpers-1.4.0-py3-none-any.whl

Development Status :: 5 - Production/StableFramework :: Setuptools PluginIntended Audience :: DevelopersLicense :: OSI Approved :: BSD LicenseOperating System :: OS IndependentProgramming Language :: PythonProgramming Language :: Python :: 3Topic :: Software Development :: Build ToolsTopic :: Software Development :: Libraries :: Python ModulesTopic :: System :: Archiving :: Packaging

Tags

build C extensions pythoncython extension helperssetuptools extension buildcompiled extension packagingpython c extension tools
build-systemcythonsetuptools-plugin

More Python Modules packages