J'ai eu des problèmes avec openssl et python @ 2 avec brew, qui ont expliqué ici (non résolus) . La solution de contournement documentée pour réinstaller Python et openssl ne fonctionnait pas, j'ai donc décidé de désinstaller et réinstaller Python.
Le problème est que lorsque vous essayez d'installer Python 2 avec brew, vous recevez ce message:
brew install python@2
Error: No available formula with the name "python@2"
==> Searching for a previously deleted formula (in the last month)...
Warning: homebrew/core is shallow clone. To get complete history run:
git -C "$(brew --repo homebrew/core)" fetch --unshallow
python@2 was deleted from homebrew/core in commit 028f11f9e:
python@2: delete (https://github.com/Homebrew/homebrew-core/issues/49796)
EOL 1 January 2020.
We gave it 1 month more to live so that people had time to migrate.
All in all, developers had 11 years to do their migration.
You can use the `brew extract` command and maintain python@2 in your own
tap if necessary:
https://docs.brew.sh/How-to-Create-and-Maintain-a-Tap
To show the formula before removal run:
git -C "$(brew --repo homebrew/core)" show 028f11f9e^:Formula/python@2.rb
If you still use this formula consider creating your own tap:
https://docs.brew.sh/How-to-Create-and-Maintain-a-Tap
Malheureusement, j'ai encore un certain nombre de formules de brassage qui dépendent du python de Brew @ 2. Ceux-ci comprennent awscli
, par exemple letsencrypt
, prsshuttle
aws
zsh: /usr/local/bin/aws: bad interpreter: /usr/local/opt/python@2/bin/python2.7: no such file or directory
Je ne sais pas comment utiliser cette brew extract
commande qu'ils ont documentée pour réinstaller Python @ 2. Il a besoin d'une formule et d'un robinet. J'imagine que la formule serait python@2
. Je ne suis pas sûr de ce que le robinet devrait être.
De plus, la réinstallation des robinets tels que aws
ou letsencrypt
ne fonctionne pas très bien non plus.
Après la réinstallation de awscli
( brew reinstall awscli
), l'exécution des commandes aws donne toujours des erreurs.
aws
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:32: SyntaxWarning: "is" with a literal. Did you mean "=="?
if x is 0 or x is 1:
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:32: SyntaxWarning: "is" with a literal. Did you mean "=="?
if x is 0 or x is 1:
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:34: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif y is 0 or y is 1:
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:34: SyntaxWarning: "is" with a literal. Did you mean "=="?
elif y is 0 or y is 1:
/usr/local/Cellar/awscli/2.0.0/libexec/lib/python3.8/site-packages/jmespath/visitor.py:260: SyntaxWarning: "is" with a literal. Did you mean "=="?
if original_result is 0:
usage: aws [options] <command> <subcommand> [<subcommand> ...] [parameters]
To see help text, you can run:
aws help
aws <command> help
aws <command> <subcommand> help
aws: error: the following arguments are required: command