Open staticdev opened 2 years ago
With sudo apt-get install python3-distutils
it works. Should this be required, explained in docs and/or in the error message?
I am not of the opinion this is worth documenting, except as maybe a FAQ entry... distutils
is a part of the Python standard library, and a Python missing distutils
is a defective Python. Distros may do what they want, but I've found it impossible for the Poetry project to stay on top of every way the modify the base install (let alone come up with a mitigation for each one).
We could add a FAQ entry with some common gotchas (missing venv
and distutils
backtraces) as well as suggestions for where to look (e.g. "look for your distro's packaging of the stdlib venv module and install that"), but it's going to be impossible to maintain detailed instructions for the matrix of Python and Ubuntu versions.
Similarly, I think it will clutter up the install directions too much to add sometimes-necessary workarounds for a couple operating systems -- I don't think it's unfair of Poetry to assume we have a fully functional Python interpreter available with an unmolested standard library.
I am not of the opinion this is worth documenting, except as maybe a FAQ entry...
distutils
is a part of the Python standard library, and a Python missingdistutils
is a defective Python. Distros may do what they want, but I've found it impossible for the Poetry project to stay on top of every way the modify the base install (let alone come up with a mitigation for each one).We could add a FAQ entry with some common gotchas (missing
venv
anddistutils
backtraces) as well as suggestions for where to look (e.g. "look for your distro's packaging of the stdlib venv module and install that"), but it's going to be impossible to maintain detailed instructions for the matrix of Python and Ubuntu versions.Similarly, I think it will clutter up the install directions too much to add sometimes-necessary workarounds for a couple operating systems -- I don't think it's unfair of Poetry to assume we have a fully functional Python interpreter available with an unmolested standard library.
I agree but users do not expect one of the most used distros in LTS to have a "defective" python. Even if it is not Poetry's fault, maybe it IS worth documenting somewhere.
If you think it is an implicit requirement, then the best place would be after install instructions (https://python-poetry.org/docs/#installation) or in some troubleshooting page.
I'm leaning towards splitting the FAQ into a high-level/conceptual FAQ, and a technical FAQ (with common troubleshooting/footguns consolidated there)... Maybe troubleshooting would be a good name for a technical FAQ page :laughing:
Just ran into this issue with my Debian 11. Only recently set it up with VSCodium & Docker Engine and even tried sudo apt install --reinstall python3
which still didn't install distutils
... finally just did sudo apt install python3-dev
to be sure I no longer have similar issues in the future.
This seems relevant which seems that it should be mentioned for Ubuntu/Debian users
Just ran into this issue with my Debian 11. Only recently set it up with VSCodium & Docker Engine and even tried
sudo apt install --reinstall python3
which still didn't installdistutils
... finally just didsudo apt install python3-dev
to be sure I no longer have similar issues in the future.This seems relevant which seems that it should be mentioned for Ubuntu/Debian users
I'm not sure how that issue is related, except as a similar situation casued by this mispackaging of Python... They seem to have come to the same conclusion we have.
sudo apt install --reinstall python3-distutils
should be the minimal command to fix things on Ubuntu 22.04/Debian Bullseye (11), but sudo apt install python3-dev
will pull in everything optional removed from the Python packages, including the C API headers.
Does deprecation of distutils have any effect on this https://peps.python.org/pep-0632/ ?
[x] I am on the latest Poetry version.
[x] I have searched the issues of this repo and believe that this is not a duplicate.
[x] If an exception occurs when executing a command, I executed it again in debug mode (
-vvv
option).OS version and name: Ubuntu 20.04.5 (focal)
Poetry version: 1.2.0
Link of a Gist with the contents of your pyproject.toml file: D/C
Issue
Running:
Traceback on log: