Describe the bug
The pre-compiled wheel for encutils==1.0.0 published on PyPI appears to be structurally malformed. When installing via standard pip, the wheel is unpacked such that the .dist-info metadata directory is created, but the actual Python source files (encutils.py or the encutils/ module directory) are missing from site-packages.
This results in a fatal ModuleNotFoundError: No module named 'encutils' at runtime.
This issue is being masked for users of modern package managers like uv, which seemingly reject the malformed wheel and fall back to building the .tar.gz source distribution (which installs correctly). However, in environments that rely on standard pip (like AWS Elastic Beanstalk), pip blindly installs the empty wheel and reports success, breaking the environment.
Steps to Reproduce
- Use a standard
pip environment (e.g., standard Python 3.11 venv on Linux).
- Run
pip install encutils==1.0.0.
- Try to import the package:
python -c "import encutils"
- Observe the
ModuleNotFoundError.
Proof of Missing Files
We caught this occurring live on an AWS Elastic Beanstalk instance. pip reports the package as successfully installed, but a search of the directory shows only the metadata exists:
(venv) $ pip show encutils
Name: encutils
Version: 1.0.0
Summary:
Home-page:
Author:
Author-email: "Jason R. Coombs" <jaraco@jaraco.com>
License-Expression: LGPL-3.0-or-later
Location: /var/app/venv/staging-LQM1lest/lib64/python3.11/site-packages
Requires: chardet
Required-by: cssutils
(venv) $ find /var/app/venv/staging-LQM1lest/ -name "encutils*"
/var/app/venv/staging-LQM1lest/lib/python3.11/site-packages/encutils-1.0.0.dist-info
Describe the bug
The pre-compiled wheel for
encutils==1.0.0published on PyPI appears to be structurally malformed. When installing via standardpip, the wheel is unpacked such that the.dist-infometadata directory is created, but the actual Python source files (encutils.pyor theencutils/module directory) are missing fromsite-packages.This results in a fatal
ModuleNotFoundError: No module named 'encutils'at runtime.This issue is being masked for users of modern package managers like
uv, which seemingly reject the malformed wheel and fall back to building the.tar.gzsource distribution (which installs correctly). However, in environments that rely on standardpip(like AWS Elastic Beanstalk),pipblindly installs the empty wheel and reports success, breaking the environment.Steps to Reproduce
pipenvironment (e.g., standard Python 3.11venvon Linux).pip install encutils==1.0.0.python -c "import encutils"ModuleNotFoundError.Proof of Missing Files
We caught this occurring live on an AWS Elastic Beanstalk instance.
pipreports the package as successfully installed, but a search of the directory shows only the metadata exists: