A Python library for creating "editable wheels"
This library supports the building of wheels which, when installed, will
expose packages in a local directory on sys.path in "editable mode". In
other words, changes to the package source will be reflected in the package
visible to Python, without needing a reinstall.
Usage
Suppose you want to build a wheel for your project foo. Your project is
located in the directory /path/to/foo. Under that directory, you have a
src directory containing your project, which is a package called foo
and a Python module called bar.py. So your directory structure looks like
this:
/path/to/foo
|
+-- src
| +-- foo
| | +-- __init__.py
| +-- bar.py
|
+-- setup.py
+-- other files
Build your wheel as follows:
from editables import EditableProject
my_project = EditableProject("foo", "/path/to/foo")
my_project.add_to_path("src")
# Build a wheel however you prefer...
wheel = BuildAWheel()
# Add files to the wheel
for name, content in my_project.files():
wheel.add_file(name, content)
# Record any runtime dependencies
for dep in my_project.dependencies():
wheel.metadata.dependencies.add(dep)
The resulting wheel will, when installed, put the project src directory on
sys.path so that editing the original source will take effect without needing
a reinstall (i.e., as "editable" packages). The project is exposed on sys.path
by adding a single .pth file, named after the project, into the wheel.
For more details, including how to control what gets exposed more precisely, see the documentation.
Note that this project doesn't build wheels directly. That's the responsibility of the calling code.
Python Compatibility
This project supports the same versions of Python as pip does. Currently that is Python 3.7 and later, and PyPy3 (although we don't test against PyPy).
Release files for editables 0.6
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| editables-0.6.tar.gz | 16.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| editables-0.6-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 22.2 kB
Release files / editables-0.6.tar.gz
| Download URL | editables-0.6.tar.gz |
|---|---|
| Size | 16.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1163834902381c4613787951c5914800fdf155ae08848a373b8ea5006780977c
|
|
BLAKE2b-256 checksum How to use checksums |
82f802a4e9a0cb961b0feeb431ac96b231c157ecdcbbeacafe9e2fdb4b1dde39
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 14, 2026.
Transparency logRelease files / editables-0.6-py3-none-any.whl
| Download URL | editables-0.6-py3-none-any.whl |
|---|---|
| Size | 5.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d70e4698078a1d033e7786d9c64e5be070d058a67c21417024d38a58ac20aa43
|
|
BLAKE2b-256 checksum How to use checksums |
cc0ed095533037fc9468f947b19f2da53f869804632b508808de41e86e801797
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Apr 14, 2026.
Transparency log