Skip to content

[FR] Put both sdist and bdist package data configuration in setup.cfg #2790

Open
@mcarans

Description

@mcarans

What's the problem this feature will solve?

What data files will end up in sdist or bdist is a little confusing as it is not configured in one place. This stackoverflow answer summarises:

"Basically it goes like this:

MANIFEST.in adds files to sdist (source distribution).

include_package_data adds these same files to bdist (built distribution), i.e. it extends the effect of MANIFEST.in to bdist.

exclude_package_data prevents files in sdist to be added to bdist, i.e. it filters the effect of include_package_data.

package_data adds files to bdist, i.e. it adds build artifacts (typically the products of custom build steps) to your bdist and has of course no effect on sdist."

Describe the solution you'd like

My suggestion is to remove the need for MANIFEST.in by putting the configuration into setup.cfg. Maybe it could go under a new key under [options.package_data] or maybe it would be good to move towards something new like have [build_distribution] and [source_distribution] sections to make it clearer what is going where.

Just throwing out some ideas, but the main aim is to put all configuration in setup.cfg and make it obvious what ends up in the source distribution and what in the build one.

Alternative Solutions

No response

Additional context

No response

Code of Conduct

  • I agree to follow the PSF Code of Conduct

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions