рд╡рд╛рддрд╛рд╡рд░рдг
рд╡рд┐рд╡рд░рдг
рдЬрдм рдореИрдВ рдЗрд╕ #7810 рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рдерд╛, рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЬрдм рдореИрдВ script.pip("freeze")
рд╕рд╛рде use_module
True
рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░рддрд╛ рд╣реВрдВ рдЬреЛ рдХрд┐ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реИ, рдпрд╣ рдХреЛрдИ рдкреИрдХреЗрдЬ рд╕реВрдЪреА рдирд╣реАрдВ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдЬрдм рдореИрдВ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ use_module
рдХреЛ False
рд░реВрдк рдореЗрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдХрд░рддрд╛ рд╣реИред
рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЕрдВрддрд░ рдЬрд┐рд╕ рддрд░рд╣ рд╕реЗ рдЖрджреЗрд╢ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред use_module=True
, рдЗрд╕реЗ python -m pip freeze
рдФрд░ use_module=False
, рдЗрд╕реЗ pip freeze
рд░реВрдк рдореЗрдВ рдЖрдордВрддреНрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдЕрдкреЗрдХреНрд╖рд┐рдд рд╡реНрдпрд╡рд╣рд╛рд░
рджреЛрдиреЛрдВ рддрд░реАрдХреЛрдВ рд╕реЗ, рдЗрд╕реЗ рдкреИрдХреЗрдЬ рд╕реВрдЪреА рджрд┐рдЦрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдХреИрд╕реЗ рдкреНрд░рдЬрдирди рдХрд░реЗрдВ
рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд░реАрдХреНрд╖рдг рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
def test_pip_script(script):
assert script.pip("freeze").stdout == script.pip("freeze", use_module=False).stdout
рдЙрддреНрдкрд╛рджрди
___________________________________________________ test_pip_script ___________________________________________________
[gw4] linux -- Python 3.6.9 /home/gutsytechster/Documents/Projects/Open-Source-Projects/pip/.tox/py36/bin/python
script = <tests.lib.PipTestEnvironment object at 0x7f696adfc8d0>
def test_pip_script(script):
> assert script.pip("freeze").stdout == script.pip("freeze", use_module=False).stdout
E AssertionError: assert '' == 'apipkg==1.5\natomicwrites==...zeug==0.16.0\nzipp==3.0.0\n'
E + apipkg==1.5
E + atomicwrites==1.3.0
E + attrs==19.3.0
E + cffi==1.14.0
E + coverage==5.0.3
E + cryptography==2.8
E + csv23==0.1.6
E + execnet==1.7.1
E + freezegun==0.3.15
E + importlib-metadata==1.5.0
E + mock==4.0.1
E + more-itertools==8.2.0
E + pluggy==0.13.1
E + pretend==1.0.9
E + py==1.8.1
E + pycparser==2.19
E + pytest==3.8.2
E + pytest-cov==2.8.1
E + pytest-forked==1.1.3
E + pytest-rerunfailures==6.0
E + pytest-timeout==1.3.4
E + pytest-xdist==1.27.0
E + python-dateutil==2.8.1
E + PyYAML==5.3
E + scripttest==1.3
E + six==1.14.0
E + virtualenv==16.7.10
E + Werkzeug==0.16.0
E + zipp==3.0.0
рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рджрд░реНрдЬ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж!
рдореЗрд░реА рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдпрд╣рд╛рдБ рд╣реИ: https://github.com/pypa/pip/pull/7810#issuecomment-599191853ред рдХреГрдкрдпрд╛ рдЙрд╕ рдкрд░ рдпрд╣рд╛рдВ рдЕрдиреБрд╡рд░реНрддреА рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░реЗрдВред :)
рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдиреЗ рд╕реБрдЭрд╛рд╡ рджрд┐рдпрд╛, рдпрд╣рд╛рдВ https://github.com/pypa/pip/pull/7810#issuecomment -599191853, рдореИрдВрдиреЗ рдкрд░реАрдХреНрд╖рд╛ рд▓рд┐рдЦреА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд stdout рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ
====================================================== FAILURES =======================================================
___________________________________________________ test_pip_script ___________________________________________________
[gw3] linux -- Python 3.6.9 /home/gutsytechster/Documents/Projects/Open-Source-Projects/pip/.tox/py36/bin/python
script = <tests.lib.PipTestEnvironment object at 0x7fc79f3b5208>
def test_pip_script(script):
r1 = script.pip("--version")
r2 = script.pip("--version", use_module=False)
> assert r1.stdout == r2.stdout
E AssertionError: assert 'pip 20.1.dev...python 3.6)\n' == 'pip 20.1.dev0...python 3.6)\n'
E - pip 20.1.dev0 from /tmp/pytest-of-gutsytechster/pytest-0/popen-gw3/pip0/pip/src/pip (python 3.6)
E + pip 20.1.dev0 from /home/gutsytechster/Documents/Projects/Open-Source-Projects/pip/.tox/py36/lib/python3.6/site-packages/pip (python 3.6)
рдЖрд╣реНрд╣реНрд╣реНрд╣. рдпрд╣ рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ - рдЬрд┐рд╕рдиреЗ рднреА use_module рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ, рдЙрд╕рдиреЗ рдпрд╣рд╛рдВ рдХреА рдмрд╛рд░реАрдХрд┐рдпреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрд╛ рд╣реИред :)
pip
PipTestEnvironment рдореЗрдВ PATH
рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╕рд╣реА рдЖрдЗрдЯрдо рдирд╣реАрдВ рд╣реИред рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЯреАрдмреАрдПрдЪ рдХреНрдпрд╛ рдареАрдХ рд╣реИ; use_module=False рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг рдкреВрд░реНрдг рдкрде рдкреНрд░рд╛рдкреНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?
рдХреНрдпрд╛ рдпрд╣ рдпрд╣рд╛рдВ https://github.com/pypa/pip/blob/master/tests/lib/__init__.py#L475 рд╣реИ , рдЬрд╣рд╛рдВ рдкрд░реАрдХреНрд╖рдг рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рд▓рд┐рдП PATH
рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ?
рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣рд╛рдБред рдпрд╣ рдЕрд▓рдЧ рд╕реНрдерд┐рд░рддрд╛ рдореЗрдВ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрд╣ рджреЗрдЦрдиреЗ рд▓рд╛рдпрдХ рд╣реЛрдЧрд╛ред
рдореБрдЭреЗ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдРрд╕рд╛ рдЗрд╕рд▓рд┐рдП рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╡рд░реНрдЪреБрдЕрд▓ рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ Scripts
рдлрд╝реЛрд▓реНрдбрд░ рдореЗрдВ рдкрд╛рдЗрдк рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рдирд╣реАрдВ рд╣реИред
рдЗрд╕рд▓рд┐рдП рд╣рдо https://github.com/pypa/pip/blob/c7bde5bf88c70ac3f807db7d9e7d19745bc0a2e0/tests/lib/__init__.py#L619 рдкрд░ python [...]/src/pip
рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
[...]/src/pip
рдЕрд░реНрде рд╣реИ https://github.com/pypa/pip/blob/c7bde5bf88c70ac3f807db7d9e7d19745bc0a2e0/tests/conftest.py#L285 рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдкреВрд░реНрдг рдкрде
рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рд╣реА рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдмрдЧ рдХреЛ рдареАрдХ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
рдФрд░ https://github.com/pypa/pip/blob/c7bde5bf88c70ac3f807db7d9e7d19745bc0a2e0/tests/conftest.py#L294 рдореЗрдВ рдпрд╣ venv.bin
(рдЬреЛ рдХрд┐ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдлрд╝реЛрд▓реНрдбрд░ рд╣реИ) рдореЗрдВ рд╕рднреА рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ "рдкрд╛рдпрдерди" рд╕реЗ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ рдпрд╛ "libpy", рдЧреИрд░-рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ?