plugin system for tags
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 751
- Forks
- 324
- Avg merge
- 12h 58m
- Merged PRs (30d)
- 3
Description
According to PEP 425, "tools should use the most-preferred architecture dependent tag e.g. cp33-cp33m-win32 or the most-preferred pure python tag e.g. py33-none-any by default."
If we can get those tools to import the same list of tags then bdist_wheel would give all new wheels with C extensions the tag tags[0] and pip would install them.
We could give packaging.tags a config Python script that could change the list of tags. Then BSD users (who have said the default tag is not useful for them) or cluster users could use appropriate tags without having to pass special arguments to every invocation of install or build tools. This would remove the need for a global standard or a separate "no manylinux" config.
For example try: import _filter_tags; tags = _filter_tags.filter(default_tags), or check a config file for the import if that's not too strange a beast. By accepting a list of tags from packaging.tags a filter could change the list of tags without having to necessarily generate them all itself.
@cjerdonek I'm not thrilled with this example of a plugin system
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue names packaging.tags, bdist_wheel, and pip but no repository files or tests. Start by tracing how these tools obtain and consume the tag list, then assess whether a configurable filter or plugin is appropriate. Done would require an agreed design for configurable tags and tests covering the resulting wheel and installation behavior.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100