Search code examples
pythonpython-wheelpython-packaging

When building a Python package, is there a way to include files/folders in the source distribution, but not the wheel


I have a dependency that's part of the build step for my project (pipenv). Code from that package needs to run prior to setup.py. For that reason, I've included it as part of my package within a vendor folder.

I'm aware that having that package in install_requires would include it in the source distribution, but not the wheel. The reason I can't do that is because that package is required to parse the information that makes up install_requires.

Is there any way to include arbitrary files and folders as part of a source distribution, but not the wheel?


Solution

  • What is installed_requires? Do you mean install_requires? In that case you are completely wrong, that keyword doesn't put anything in source dist (or wheels), it specifies what other distributions need to be installed with this one.

    File MANIFEST.in controls what go into sdist. Read https://packaging.python.org/guides/using-manifest-in/#using-manifest-in