Skip to content

[Bug]: Wheel for 1.0.0 is missing source files / ModuleNotFoundError via standard pip #2

@sipa-echo-zaoa

Description

@sipa-echo-zaoa

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

  1. Use a standard pip environment (e.g., standard Python 3.11 venv on Linux).
  2. Run pip install encutils==1.0.0.
  3. Try to import the package: python -c "import encutils"
  4. 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions