Попытка вдохнуть жизнь в пакет с Джанго, который впал в негодность.Они используют токсины для тестирования, поэтому я настроил pyenv на своем MacBook.Я установил 3 версии Python, как вы можете видеть ниже, и все выглядит так, как будто оно должно работать, но если бы это было так, я бы не спрашивал, почему это не так.
Я заменилмой домашний каталог с ~, чтобы его было немного легче читать.
pyenv был установлен с brew install pyenv
, а различные версии python были установлены с pyenv install #.#.#
ШиммыСуществуют:
$ echo $PATH
~/.pyenv/shims:~/.platformsh/bin:/usr/local/sbin:...
$ which python3.6
~/.pyenv/shims/python3.6
$ which python3.4
~/.pyenv/shims/python3.4
$ which python3.5
~/.pyenv/shims/python3.5
Но их выполнение работает не так, как ожидалось:
$ pyenv local 3.4.9 3.5.6 3.6.8
$ python3.4
Python 3.4.9 (default, Feb 12 2019, 10:33:47)
[GCC 4.2.1 Compatible Apple LLVM 10.0.0 (clang-1000.11.45.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
$ python3.5
pyenv: python3.5: command not found
The `python3.5' command exists in these Python versions:
3.5.6
$ python3.6
pyenv: python3.6: command not found
The `python3.6' command exists in these Python versions:
3.6.8
И токсины не работают так:
py34-1.11: commands succeeded
ERROR: py36-1.11: Error creating virtualenv. Note that some special characters (e.g. ':' and unicode symbols) in paths are not supported by virtualenv. Error details: InvocationError("Failed to get version_info for python3.6: pyenv: python3.6: command not found\n\nThe `python3.6' command exists in these Python versions:\n 3.6.8\n\n", None)
ERROR: py36-2.0: Error creating virtualenv. Note that some special characters (e.g. ':' and unicode symbols) in paths are not supported by virtualenv. Error details: InvocationError("Failed to get version_info for python3.6: pyenv: python3.6: command not found\n\nThe `python3.6' command exists in these Python versions:\n 3.6.8\n\n", None)
py36-latest: commands succeeded
docs: commands succeeded
Но в папке .toxвы найдете эти VirtualEnv, которые можно активировать вручную.
$ ls .tox
dist docs flake8 log py34-1.11 py36-1.11 py36-2.0 py36-latest
Потому что в какой-то момент он работал ....
Я понимаю, почему он не работает,я не понимаю, почему pyenv неправильно настраивает окружение (или, возможно, именно так оно и должно себя вести).Все, что я читаю, указывает на то, что python3.6 должен запустить интерпретатор python3.6.8
$ bash -x python3.6
+ set -e
+ '[' -n '' ']'
+ program=python3.6
+ [[ python3.6 = \p\y\t\h\o\n* ]]
+ export PYENV_ROOT=~/.pyenv
+ PYENV_ROOT=~/.pyenv
+ exec /usr/local/Cellar/pyenv/1.2.9/libexec/pyenv exec python3.6
pyenv: python3.6: command not found
The `python3.6' command exists in these Python versions:
3.6.8