pypa / pypa/packaging

Adding a wheel management API

Open
#697 27 comments 3 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

enhancement
Dominant language
Python
Stars
751
Forks
324
Avg merge
12h 58m
Merged PRs (30d)
3

Description

I'm the maintainer of wheel. I'm wondering if you would be interested in receiving an API for reading and writing wheels in this project. I've been wondering for a while if it makes any sense for PyPA to have so many packaging projects.

This is what I had in mind:

  1. The new "wheel public API" would go into this project instead of wheel
  2. setuptools would adopt this API and ditch wheel as a dependency for building wheels
  3. wheel would depend on packaging at run time (currently it vendors this project) and become nothing but a CLI tool
  4. (optional) auditwheel and wheel would be merged (preferably into wheel) (optional, to be discussed later)

The goal is to get rid of at least one PyPA project.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing this issue's proposed relationship between packaging, wheel, setuptools, and auditwheel. Determine whether the project wants a wheel reading and writing API and define the scope and ownership of that API before identifying implementation files or tests; done would require agreement on the design and project boundaries.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
build-system, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
20/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.