I have a lot of thoughts to share but I’ll do that separately[1]. Before that, I feel some urgency to say…
Everyone is thinking of different things when they see “unification” in this question – which is why this discussion is all over the place.[2] We ought to start by setting up shared vocabulary+understanding of what we’re even talking about in the context of unification.
I can see the following dimensions/aspects to the unification story:
- Unification of PyPI/conda models [3]
- Unification of the consumer-facing tooling[4]
- Unification of the publisher-facing tooling[5]
- Unification of the workflow setups/tooling[6]
- Unification/Consistency in the deployment processes[7]
- Unification/Consistency in “Python” installation/management experience[8]
Can anyone think of any other dimension/aspect contributing to the “tooling complexity” problem?
Listen, at this point, I’ve been typing for the last 3 hours and I need to eat dinner now. That I moved to VS Code, after spending nearly 2 hours on discuss.python.org’s text editor, is a really good indicator that this isn’t the right medium for what I have written – so, I’ll put it up on my blog (with some polishing to make it readable without this thread). Sorry for the cliffhanger-ish opening sentence. ↩︎
This sentence should have started with “I feel that”. I’ve omitted that since it’s more assertive this way.
Also, sorry, but it was a bit of a roller coaster reading the discussion so far. ↩︎i.e. the non-Python code dependency problem ↩︎
i.e. consuming libraries ↩︎
i.e. publishing libraries ↩︎
i.e. organising files, running tests, linters, etc ↩︎
i.e. going from source code → working application somewhere ↩︎
i.e. the rustup/pyenv aspects of this, which is absolutely a thing that affects users’ “Python Packaging” experience (think pip != python -m pip, or
python -m pip
vspy -m pip
, orpython
being on PATH but notpip
etc) ↩︎