Pipenv: рд╡рд░реНрдЪреБрдЕрди рдмрдирд╛рддреЗ рд╕рдордп 2018.11.14 рдкрд┐рдкреЗрдирд╡ рдкрд╛рдпрдерди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХрд╛ рдЙрддреНрд╕рд░реНрдЬрди рдХрд░рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 15 рдирд╡ре░ 2018  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: pypa/pipenv

рдореБрджреЗ рдХрд╛ рд╡рд┐рд╡рд░рдг

$ pipenv --two
Error %s while executing command %s [Errno 2] No such file or directory: '/usr/local/bin/pythonz': '/usr/local/bin/pythonz' /usr/local/bin/pythonz -c import sys; print(sys.version.split()[0])
['Traceback (most recent call last):\n', '  File "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/contextmanagers.py", line 148, in spinner\n    yield _spinner\n', '  File "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", line 309, in run\n    start_text=start_text\n', '  File "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", line 157, in _create_subprocess\n    combine_stderr=combine_stderr)\n', '  File "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", line 132, in _spawn_subprocess\n    return subprocess.Popen(cmd, **options)\n', '  File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 709, in __init__\n    restore_signals, start_new_session)\n', '  File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 1344, in _execute_child\n    raise child_exception_type(errno_num, err_msg, err_filename)\n', "FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/bin/pythonz': '/usr/local/bin/pythonz'\n"]
Error %s while executing command %s [Errno 2] No such file or directory: '/usr/local/bin/pythonz': '/usr/local/bin/pythonz' /usr/local/bin/pythonz -c import sys; print(sys.version.split()[0])
['Traceback (most recent call last):\n', '  File "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/contextmanagers.py", line 148, in spinner\n    yield _spinner\n', '  File "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", line 309, in run\n    start_text=start_text\n', '  File "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", line 157, in _create_subprocess\n    combine_stderr=combine_stderr)\n', '  File "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", line 132, in _spawn_subprocess\n    return subprocess.Popen(cmd, **options)\n', '  File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 709, in __init__\n    restore_signals, start_new_session)\n', '  File "/usr/local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py", line 1344, in _execute_child\n    raise child_exception_type(errno_num, err_msg, err_filename)\n', "FileNotFoundError: [Errno 2] No such file or directory: '/usr/local/bin/pythonz': '/usr/local/bin/pythonz'\n"]

рдЕрдкреЗрдХреНрд╖рд┐рдд рдкрд░рд┐рдгрд╛рдо

рдХреЗрд╡рд▓ рдПрдХ virtualenv рдмрдирд╛рддреЗ рд╕рдордп рдХреЛрдИ рддреНрд░реБрдЯрд┐ рд▓реЙрдЧрд┐рдВрдЧ рдХреА рдЙрдореНрдореАрдж рд╣реИ

рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкрд░рд┐рдгрд╛рдо

рд╡рд░реНрдЪреБрдЕрди рд╕реГрдЬрди рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рддреНрд░реБрдЯрд┐рдпрд╛рдВ рдЙрддреНрд╕рд░реНрдЬрд┐рдд рд╣реБрдИрдВред

рджреЛрд╣рд░рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрджрдо

  1. рдкрд╛рдпрдерди 2.7 virtualenv рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП pipenv --two рдЪрд▓рд╛рдПрдВ
  2. рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рдзреНрдпрд╛рди рд╕реЗ рджреЗрдЦреЗрдВ

$ рдкрд╛рдЗрдкрдирд╡ - рдЙрдкрдпреЛрдЧрд┐рддрд╛

рдкрд┐рдкреЗрдирд╡ рд╕рдВрд╕реНрдХрд░рдг: '2018.11.14'

рдкрд┐рдкреЗрдирд╡ рд╕реНрдерд╛рди: '/usr/local/lib/python3.6/site-packages/pipenv'

рдкрд╛рдпрдерди рд╕реНрдерд╛рди: '/usr/local/opt/python/bin/python3.6'

рдкрд╛рдпрдерди рд╕реНрдерд╛рдкрдирд╛рдПрдВ рдорд┐рд▓реАрдВ:

рдХрдорд╛рдВрдб% s рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рддреЗ рд╕рдордп рддреНрд░реБрдЯрд┐% s [Errno 2] рдРрд╕реА рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╣реАрдВ: '/ usr / рд╕реНрдерд╛рдиреАрдп / рдмрд┐рди / pythonz': '/ usr / рд╕реНрдерд╛рдиреАрдп / рдмрд┐рди / pythonz' / usr / рд╕реНрдерд╛рдиреАрдп / рдмрд┐рди / pythonz -c рдЖрдпрд╛рдд рд╕реАрд╕; рдкреНрд░рд┐рдВрдЯ (sys.version.split () [0])
['рдЯреНрд░реИрд╕рдмреИрдХ (рд╕рдмрд╕реЗ рд╣рд╛рд▓рд┐рдпрд╛ рдХреЙрд▓ рдЕрдВрддрд┐рдо): \ n', 'рдлрд╝рд╛рдЗрд▓ "/us/local/lib/python3.6/site-packages/pipenv/vendor/vistir/contexmanmen.py", рд▓рд╛рдЗрди резрек 148, рд╕реНрдкрд┐рдирд░ \ n рдореЗрдВ рдЙрдкрдЬ _spinner \ n ',' рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", рдкрдВрдХреНрддрд┐ 309, рд░рди \ n start_text = start_text \ n ',' рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", рдкрдВрдХреНрддрд┐ 157, _create_subprocess рдХреЗ n рдЧрдардмрдВрдзрди_stderr = Comb_stderr) \ n ',' рдлрд╝рд╛рдЗрд▓ '/ usr / рд▓реЛрдХрд▓ рдореЗрдВ /lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py ", рдкрдВрдХреНрддрд┐ 132, _spawn_subprocess \ n рд░рд┐рдЯрд░реНрди рд╕рдмрдкреНрд░реЛрд╕реЗрд╕ рдореЗрдВред Popen (cmd, * options) \ n ',' file" / usr / local /Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py ", рдкрдВрдХреНрддрд┐ 709, __init __ \ n Restore_signals, start_new_session) \ n 'рдореЗрдВ," рд╣рдореЗрдВ рдлрд╝рд╛рдЗрд▓ "/" рдлрд╝рд╛рдЗрд▓ "рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред /local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py ", рдкрдВрдХреНрддрд┐ 1344, _execute_child \ n рдореЗрдВ child_exception_type (irno_num, irms_msum) рдХреЛ рдмрдврд╝рд╛рдПрдБред ', "рдлрд╛рдЗрд▓рдиреЙрдЯрдлрд╝рд╛рдЙрдВрдбрд░:
рдкреНрд░рд┐рдВрдЯ (sys.version.split () [0])['рдЯреНрд░реИрд╕рдмреИрдХ (рд╕рдмрд╕реЗ рд╣рд╛рд▓рд┐рдпрд╛ рдХреЙрд▓ рдЕрдВрддрд┐рдо): \ n', 'рдлрд╝рд╛рдЗрд▓ "/us/local/lib/python3.6/site-packages/pipenv/vendor/vistir/contexmanmen.py", рд▓рд╛рдЗрди резрек 148, рд╕реНрдкрд┐рдирд░ \ n рдореЗрдВ рдЙрдкрдЬ _spinner \ n ',' рдлрд╛рдЗрд▓ "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", рдкрдВрдХреНрддрд┐ 309, рд░рди \ n start_text = start_text \ n ',' рдлрд╝рд╛рдЗрд▓ "/usr/local/lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py", рдкрдВрдХреНрддрд┐ 157, _create_subprocess рдХреЗ n рдЧрдардмрдВрдзрди_stderr = Comb_stderr) \ n ',' рдлрд╝рд╛рдЗрд▓ '/ usr / рд▓реЛрдХрд▓ рдореЗрдВ /lib/python3.6/site-packages/pipenv/vendor/vistir/misc.py ", рдкрдВрдХреНрддрд┐ 132, _spawn_subprocess \ n рд░рд┐рдЯрд░реНрди рд╕рдмрдкреНрд░реЛрд╕реЗрд╕ рдореЗрдВред Popen (cmd, * options) \ n ',' file" / usr / local /Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py ", рдкрдВрдХреНрддрд┐ 709, __init __ \ n Restore_signals, start_new_session) \ n 'рдореЗрдВ," рд╣рдореЗрдВ рдлрд╝рд╛рдЗрд▓ "/" рдлрд╝рд╛рдЗрд▓ "рдкрд░ рдХреНрд▓рд┐рдХ рдХрд░реЗрдВред /local/Cellar/python/3.6.5_1/Frameworks/Python.framework/Versions/3.6/lib/python3.6/subprocess.py ", рдкрдВрдХреНрддрд┐ 1344, _execute_child \ n рдореЗрдВ child_exception_type (irno_num, irms_msum) рдХреЛ рдмрдврд╝рд╛рдПрдБред ', "FileNotFoundError: [Errno 2] рдРрд╕реА рдХреЛрдИ рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛: '/ usr / рд╕реНрдерд╛рдиреАрдп / рдмрд┐рди / pythonz': '/ usr / рд╕реНрдерд╛рдиреАрдп / рдмрд┐рди / pythonz' \ n "]

  • 3.6.5 : /usr/local/bin/python3
  • 3.6.5 : /usr/local/bin/python3.6m
  • 2.7.15 : /usr/local/bin/python
  • 2.7.15 : /usr/local/bin/pythonw
  • 2.7.10 : /usr/bin/python
  • 2.7.10 : /usr/bin/pythonw
  • 2.7.10 : /usr/bin/python2.7

рдкреАрдИрдкреА 508 рдЬрд╛рдирдХрд╛рд░реА:

{'implementation_name': 'cpython',
 'implementation_version': '3.6.5',
 'os_name': 'posix',
 'platform_machine': 'x86_64',
 'platform_python_implementation': 'CPython',
 'platform_release': '17.7.0',
 'platform_system': 'Darwin',
 'platform_version': 'Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT '
                     '2018; root:xnu-4570.71.2~1/RELEASE_X86_64',
 'python_full_version': '3.6.5',
 'python_version': '3.6',
 'sys_platform': 'darwin'}

рд╕рд┐рд╕реНрдЯрдо рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░:

  • LC_ALL
  • PYENV_VIRTUALENV_DISABLE_PROMPT
  • LANG
  • XPC_FLAGS
  • HISTCONTROL
  • LESS
  • DISPLAY
  • TERM_SESSION_ID
  • EDITOR
  • __CF_USER_TEXT_ENCODING
  • GIT_EDITOR
  • SSH_AUTH_SOCK
  • USER
  • PAGER
  • LSCOLORS
  • ROOT
  • RBENV_SHELL
  • SSH_CLIENT_USER
  • PWD
  • MANPAGER
  • HOME
  • TERM_PROGRAM
  • TERM_PROGRAM_VERSION
  • Apple_PubSub_Socket_Render
  • SVN_EDITOR
  • TMPDIR
  • PIPENV_NOSPIN
  • XPC_SERVICE_NAME
  • TERM
  • SHELL
  • TNS_ADMIN
  • VAULT_ADDR
  • PYTHONDONTWRITEBYTECODE
  • SHLVL
  • MANPATH
  • LOGNAME
  • PATH
  • PIPENV_HIDE_EMOJIS
  • GCCDIR
  • HOMEBREW_GITHUB_API_TOKEN
  • _
  • OLDPWD
  • PIP_DISABLE_PIP_VERSION_CHECK
  • PIP_SHIMS_BASE_MODULE
  • PIP_PYTHON_PATH
  • PYTHONFINDER_IGNORE_UNSUPPORTED

рдкрд┐рдкреЗрдирд╡-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░:

  • PIPENV_NOSPIN : 1
  • PIPENV_HIDE_EMOJIS : 1

рдбрд┐рдмрдЧ-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░:

  • PATH : /usr/sbin:/usr/local/bin:/usr/local/sbin:/Users/callen/.rbenv/shims:/usr/local/bin:/usr/bin:/bin:/opt/X11/bin
  • SHELL : /bin/bash
  • EDITOR : /usr/local/bin/mate -w
  • LANG : en_US.UTF-8
  • PWD : /Users/callen/testapp

Pipfile ('/ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ / callen / testapp / Pipfile') рдХреА рд╕рд╛рдордЧреНрд░реА:

[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]

[packages]

[requires]
python_version = "2.7"

Type Regression Vendored Dependencies

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдореИрдВ рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛, рдЬреЛ рдХрд┐ рдкрд╛рдпрдерди рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдорд╛рд░реНрдЧ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдерд╛

$ pipenv install --dev --python `which python3.6`

рд╕рднреА 3 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

рд╣реЗ @Qandtab ,

рд╣рдордиреЗ рдПрдХ рддреНрд╡рд░рд┐рдд рдЬрд╛рдБрдЪ рдХреА рдФрд░ рдпрд╣ рдореБрджреНрджрд╛ рдмрд╣реБрдд рд╣реА рд╕рдорд╛рди рд╣реИ

рдпрд╣ рдПрдХ рд╕рдВрдпреЛрдЧ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдЗрдирдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╕рдорд╕реНрдпрд╛ рдЖрдкрдХреА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╣рд▓ рдХрд░рддреА рд╣реИ рддреЛ рдореИрдВрдиреЗ рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдХрд┐рдпрд╛: рдореБрд╕реНрдХрд╛рди:

рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рд░рдЦрд╡рд╛рд▓реЗ рдЬрд▓реНрдж рд╣реА рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдкрд╣реБрдВрдЪ рдЬрд╛рдПрдВрдЧреЗред

рдЪреАрдпрд░реНрд╕,
рдЖрдкрдХрд╛ рджреЛрд╕реНрддрд╛рдирд╛ рдкрдбрд╝реЛрд╕ рдкреНрд░реЛрдмреЛрдЯ

рдореИрдВ рдЗрд╕рдХреЗ рдЪрд╛рд░реЛрдВ рдУрд░ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдерд╛, рдЬреЛ рдХрд┐ рдкрд╛рдпрдерди рдХреЗ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдорд╛рд░реНрдЧ рдХреЛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдХреЗ рдерд╛

$ pipenv install --dev --python `which python3.6`

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ pythonfinder v1.1.9 рдореЗрдВ рддрдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкрд┐рдкреЗрдирд╡ рд╡рд░реНрддрдорд╛рди рдореЗрдВ 1.0.2 рдкрд░ рдХрдмреНрдЬрд╛ рдХрд░ рд░рд╣рд╛ рд╣реИ

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

hynek picture hynek  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ipmb picture ipmb  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

fbender picture fbender  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

jacebrowning picture jacebrowning  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

leileigong picture leileigong  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ