Search code examples
pythonsetuptoolseggpipenv-install

Why does setuptools create egg-info for both my project and for "UNKNOWN"


I'm using the flat source model of project organization, in that pyproject.toml and setup.py live at the same level as sampleproj source directory.

sampleproj/
    LICENSE.md
    pyproject.toml
    README.md
    sampleproj/
        main.py
        __init__.py
    setup.py

When I use pipenv to install my project in my virtualenv (pipenv install -e .), it (presumably through setuptools) creates a sampleproj.egg-info along with UNKNOWN.egg-info. The UNKNOWN.egg-info/SOURCES.txt is basically the README, LICENSE, setup.py, and pyproj.toml. While the SOURCES.txt for the sampleproj.egg-info includes with .py files as well as the others.

What is the purposes of the non-.py version of egg-info? Why is it called UNKNOWN? And is there some purpose of it that I'm not aware of?

I'm guessing that it shouldn't be created, but I'm not sure how it is being created, so I'm unclear on how to fix it.


Solution

  • This turned out to be a bug in the tool chain. Waiting 6 months and upgrading solved the problem.