Following on from this point, I think one of the areas where users look to the PyPA for guidance, but don’t really get it, is around “best practices” - how to set up a new project, where to put files, how to set up a workflow, etc. The Packaging User Guide tries to give some help here, but it frankly isn’t opinionated enough, so people remain confused.
The problem is that the PyPA doesn’t actually have a good mechanism for deciding on, and endorsing, best practices. Our only real decision making process (outside of the PEP-delegate mechanism for standards) is consensus - and project workflow is a very personal choice, and as such, consensus is almost impossible to achieve. Getting a consensus on tox vs nox, or pytest vs unittest, or sphinx vs mkdocs, is likely to spawn huge discussion threads and even then, ultimately fail. Newer workflow tools like hatch, PDM and poetry would be even worse (and I don’t even want to think about discussions on whether to recommend conda or not
)
Do we want to somehow set up a process for developing, documenting, and maintaining a set of best practices? Maybe by delegating the authority to make choices to a small group of people (the PUG editors seem an obvious choice[1]) and then accepting their decisions (even if that means they choose someone else’s project rather than yours as the standard!). I would expect such a group to avoid public discussions on a lot of topics, simply because extended debates are counter-productive, and that’s perfectly fine, in my view. That’s what giving them the authority means.
Alternatively, does anyone have a different suggestion for how to improve our ability to provide best practice advice?
To be explicit, I do not mean this topic to be a debate on best practices, and I’d ask that any such comments get moved to a different thread rather than derailling the main question here, which is intended to be a PyPA governance question.
Although I’d completely understand if they didn’t want to volunteer, as whoever does this is pretty much bound to get a certain level of hostility directed their way
↩︎