pypa / packaging.python.org

Python Packaging User Guide
http://packaging.python.org
1.44k stars 930 forks source link

Consolidate the "Project Summaries" by removing items and grouping the remaining ones #1086

Open venthur opened 2 years ago

venthur commented 2 years ago

Should we consolidate the list "Project Summaries" a bit? Currently it is very long, and the order is quite random. I'd propose two changes to mitigate that:

  1. remove things that are not really relevant
  2. structure the items by use case

Below there's a list of all projects currently listed, with a remark about last update and "github popularity". In my opinion we could remove half of the projects here and group the remaining ones by use case.

For the non-pypa projects I suggest to remove the ones that are clearly unmaintained and (rather aggressively) the ones with a very low "github popularity". For the pypa projects, we could remove the more "fringe" cases projects, but we may not have to. Again, the goal being to have a useful overview for the users about the tools of the trade instead of a random selection of things with little relation to each other.

Project last updated forks/stars remove?
bandersnatch recently 112/311 is this really relevant for installation and packaging?
build recently 70/319
cibuildwheel recently 150/1.1k
distlib (wrong url) recently 13/20
flit recently 97/1.7k
hatch recently 116/2.6k
packaging recently 199/396
pip recently 2.6k/8k
pipenv recently 1.7k/23k
pipfile recently 148/3.1k not part of any standard, i.e. PEP
pipx recently 239/5.1k
packaging.python.org recently 560/1.1k does this belong into the list?
readme_renderer recently 91/133 low relevance?
setuptools recently 888/1.7k
trove-classifiers recently 61/68 low relevance?
twine recently 269/1.3k
virtualenv recently 944/4.2k
warehouse recently 871/3k
wheel recently 116/323
--- --- ---
buildout recently 172/537 yes - low relevance
conda yes - different ecosystem
devpi recently 104/562 yes - low relevance
enscons recently 3/23 yes - low relevance
hashdist 2016 43/105 yes - probably unmaintained
multibuild 2021-10 77/2 yes - low relevance
pdm recently 104/2.5k
pex recently 221/2.1k
pip-tools recently 521/5.9k
pipwheels recently 22/221 yes - low relevance
poetry recently 1.6k/19.9k
pypiserver recently 251/1.4k
pyscaffold recently 157/1.5k
scikit-build recently 95/324 yes - low relevance
shiv recently 85/1.4k
spack recently 1.6k/2.7k
zest.releaser recently 60/185 yes - low relevance

The grouping by use case is a bit more difficult as we'd need to settle for a set of tags or so first before we can start grouping the items accordingly.

pradyunsg commented 2 years ago

the order is quite random

It's not? It's two alphabetical lists -- PyPA projects followed by non-PyPA projects (at least, it's supposed to be) that are related to Python Packaging and designed as general workflow tools.


Anyway, I think categorising the projects by usecase instead of whether they're a PyPA project would be an improvement. The main question with that is what the categories should be, which is honestly unclear at a first glance.

I don't think we should be removing any of the projects that were "recently active".

venthur commented 2 years ago

Yes the categories are indeed not trivial. One could start with a catch-all category "miscellaneous" and put everything in there. And try to work out some more useful ones. I would order the categories by importance, and we should allow packages to appear in several categories if they fulfill several roles. That will also make our life easier finding useful categories. Here's an example (this is not meant to be anything final, just a demonstrator):


PEP 518 compatible build system

some description of the category goes here

Packaging

some description of the category goes here

virtual environments

some description of the category goes here

miscellaneous

...