<p>рдкрд╛рдЗрдк 19.1 рдФрд░ рд╡рд┐рдХрд╛рд╕ рдореЛрдб (pyproject.toml рдХреЗ рд╕рд╛рде - рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб рдореМрдЬреВрдж)</p>

рдХреЛ рдирд┐рд░реНрдорд┐рдд 24 рдЕрдкреНрд░реИрд▓ 2019  ┬╖  66рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: pypa/pip

рддреЛ рдЕрдм рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд╛рдЗрдк рдкреАрдИрдкреА рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИ, рдФрд░ рдЗрд╕рдХреЗ рдХрд╛рд░рдг рдХреНрдпреЛрдВ рдХрд┐рдП рдЧрдПред

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдЕрдм рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдордЭрджрд╛рд░ рдХрд╛рдордХрд╛рдЬ рдХреЗ рд▓реЛрдЧреЛрдВ рдХреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рддреЛрдбрд╝ рджреЗрддрд╛ рд╣реИ (рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП pyproject.toml рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдирд┐рдХрд╛рд▓рдирд╛ рдФрд░ рдмрд╛рдж рдореЗрдВ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рд░рдЦрдирд╛ рд╣реИ), рдореИрдВ рдЗрд╕реЗ рдкреАрдИрдкреА рдирд┐рд░реАрдХреНрд╖рдг рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред

PEP-517/8 рдЙрджреНрджреЗрд╢реНрдп рдкрд░ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЛ рдХрд╡рд░ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛, рдХреБрдЫ рдХреЛ рд▓рд╛рдЗрди рдХреЗ рдиреАрдЪреЗ рд╕рдВрдмреЛрдзрд┐рдд рдХрд░рдиреЗ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣рд╛ рдерд╛ (рдЕрдкрд╕реНрдЯреНрд░реАрдо рд╡рд┐рд╖рдп рдкрд░ рдХреБрдЫ рдЪрд░реНрдЪрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рд╕реЗ рджреВрд░ рд╣реИ)ред рдЬреИрд╕реЗ рдХрд┐ рдореИрдВ рддрд░реНрдХ рджреВрдВрдЧрд╛ рдХрд┐ PEP-517/PEP-518 рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдореЛрдб рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдкрд░ рдЕрдм рд▓рд╛рдЧреВ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдмрд┐рд▓реНрдб рдлреНрд░рдВрдЯрдПрдВрдб рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИред

рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рджреЛ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ:

  • рд╡рд┐рдХрд╛рд╕ рдореЛрдб рдореЗрдВ, рдкрд╛рдЗрдк рдХреЛ рдкреБрд░рд╛рдиреЗ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╡рд╛рдкрд╕ рдЖрдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрдерд╛рд╕реНрдерд┐рддрд┐ рдмрдирд╛рдП рд░рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрдм рддрдХ рдХрд┐ рд╣рдо рдпрд╣ рдкрддрд╛ рди рд▓рдЧрд╛ рд▓реЗрдВ рдХрд┐ рдирдИ рджреБрдирд┐рдпрд╛ рдореЗрдВ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдХреИрд╕реЗ рдХрд┐рдпрд╛ рдЬрд╛рдПред
  • рд╡реИрдХрд▓реНрдкрд┐рдХ рд░реВрдк рд╕реЗ, рдПрдХ рдзреНрд╡рдЬ рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдЬреЛ pyproject.toml рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐/рд╕рд╛рдордЧреНрд░реА рд╕реЗ рд╕реНрд╡рддрдВрддреНрд░ рдкреБрд░рд╛рдиреА рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░рддрд╛ рд╣реИред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдпрд╣ рдЕрдм рдмрд╣реБрдд рд╕реЗ рдЖрд╢реНрд░рд┐рдд рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ (рдкрд┐рдкреЗрдирд╡, рдЯреЙрдХреНрд╕, рдХрд╡рд┐рддрд╛, рдЖрджрд┐) рдХреЛ рддреЛрдбрд╝ рджреЗрддрд╛ рд╣реИред

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

рд╕рд╛рде рд╣реА, рдЕрдЧрд▓реА рдкрд┐рдк рд░рд┐рд▓реАрдЬрд╝ 3 рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рдмрдбрд╝реА рднреАрдбрд╝ рдирд╣реАрдВ рд╣реИред рдЖрдЗрдП рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдФрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдкреАрдЖрд░ рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдкрд╛рд╕ рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИред

рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕реАрдЖрдИ рдФрд░ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ mypy, tox, virtualenv (рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдХрд╛рд░реНрдпрд╕реНрдерд▓ рдХреЗ рднреАрддрд░ рдмрд╣реБрдд рдХреБрдЫ)ред рдореИрдВ рдЗрд╕реЗ рдПрдХ рдмрдЧ-рдлрд┐рдХреНрд╕ рдЕрдиреБрд░реЛрдз рдорд╛рдирддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рддреАрди рдорд╣реАрдиреЗ рддрдХ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрд╛рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред

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

рдЬрдмрдХрд┐ рдореИрдВ рдпрд╣рд╛рдВ рджреЛрд╖ рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдпрд╣ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ pyproject.toml рд╣рдЯрд╛рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рдлрд┐рдХреНрд╕ рд╣реЛрдЧрд╛ред рдРрд╕рд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реЛрдиреЗ рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ black рдЬреИрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдиреЗ рдЕрдкрдиреЗ рд╕рд╛рдорд╛рдиреНрдп рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪреБрдирд╛, рдЬрд┐рд╕реЗ рдкреАрдИрдкреА 518 рджреНрд╡рд╛рд░рд╛ рддрд░реНрдХрд╕рдВрдЧрдд рд░реВрдк рд╕реЗ рдЕрдиреБрдорддрд┐ рджреА рдЧрдИ рд╣реИ (рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдк "рдмрд┐рд▓реНрдб рдЯреВрд▓" рдХреЛ рдореВрд▓ рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ) рд▓реЗрдХрд┐рди рдереЛрдбрд╝рд╛ рд╕рдордпрдкреВрд░реНрд╡ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрдм рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХрд╛ рдЗрдЪреНрдЫрд┐рдд рдЙрдкрдпреЛрдЧ (рдкреАрдИрдкреА 517 рдФрд░ 518 рдЕрднреА рднреА рд╡рд┐рдХрд╛рд╕ рдореЗрдВ рдереЗ)ред

рд╣рдореЗрдВ рдЖрдЧреЗ рдХрд╛ рд░рд╛рд╕реНрддрд╛ рдЦреЛрдЬрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ, рдФрд░ рдкреАрдЫреЗ рдореБрдбрд╝рдХрд░ рдирд╣реАрдВ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдХреИрд╕реЗ рдкрд╣реБрдВрдЪреЗ, рд▓реЗрдХрд┐рди рдпрд╣ рдХрд┐рд╕реА рдХреЗ рд▓рд╛рдпрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ setup.cfg рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд▓рд┐рдП рдмреНрд▓реИрдХ рдРрдбрд┐рдВрдЧ рд╕рдкреЛрд░реНрдЯ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЛ рджреЗрдЦ рд░рд╣рд╛ рд╣реЛред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдЕрдиреНрдп рдЙрдкрдХрд░рдгреЛрдВ рдореЗрдВ pyproject.toml -рдХреЗрд╡рд▓ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╣реИ - рдпрджрд┐ рд╕рдорд╕реНрдпрд╛ рдХреЗрд╡рд▓ рдХрд╛рд▓реЗ рд░рдВрдЧ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд╛рдлреА рдЕрдзрд┐рдХ рд╡реНрдпрд╛рдкрдХ рд╣реИ, рддреЛ рдпрд╣ рдПрдХ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

@pfmoore рдпрд╣ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рдХреИрд╕реЗ рдкрд╣реБрдВрдЪреЗ рдпрд╛ рдХрд┐рд╕реЗ рджреЛрд╖ рджреЗрдирд╛ рд╣реИред

рдЗрд╕рд╕реЗ рдЬреЛ рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣ рдЯреВрдЯрддрд╛ рд╣реИ рд╡рд╣ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╣реИ: рдЖрдк рдЕрдкрдирд╛ рдХреЛрдб PEP-517/518 рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рддрд░рд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдФрд░ рдЖрдк рдЕрдкрдиреЗ рд╕реАрдЖрдИ/рдЯреЙрдХреНрд╕ рдореЗрдВ рд╢реБрджреНрдз рдкреАрдИрдкреА-517/518 рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреЛрдбрдмреЗрд╕ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рдХреЛрдб рдХреЛ рдбреЗрд╡рд▓рдкрд░ рдореЛрдб рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рд╕рд╣рд╛рдпрдХ рд╣реЛрддрд╛ рд╣реИ (рдЖрдкрдХреЗ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдХреЛрдб-рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рдж рдкреИрдХреЗрдЬ рдХреЛ рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП)ред рдРрд╕реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдк рдХреЛрдб рдХреЛ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рд▓реЗрдХрд┐рди pyprojec.toml рдХреЛ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рднреА)ред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╣рдЯрд╛рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИред рдиреЛ рдкреЗрдк 517 рдмрд┐рд▓реНрдб рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

рдЖрд╣ рдЕрдЪреНрдЫрд╛ред рд╡рд┐рднрд┐рдиреНрди рдореБрджреНрджреЛрдВ рдкрд░ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рдорд╛рдорд▓реЛрдВ рдкрд░ рдЪрд░реНрдЪрд╛ рд╣реЛ рд░рд╣реА рд╣реИ рдХрд┐ рдореИрдВ рдЪреВрдХ рдЧрдпрд╛ рдХрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рдерд╛ 1 ред рдорд╛рдлрд╝ рдХрд░рдирд╛ред

рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЙрдЪрд┐рдд рдЯрд┐рдкреНрдкрдгреА рд╣реИ - рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рджрд╕реНрддрд╛рд╡реЗрдЬ рдХрд░рддреЗ рд╕рдордп рд╢рд╛рдпрдж рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ рдХрд┐ рдЖрдк рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдгрд╛рд▓реА рдХреЗ рд╕рд╛рде рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рд╕реЗ рдЖрдк рддреИрдирд╛рдд рдХрд░рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВред рдПрдХ рдЙрджрд╛рд╣рд░рдг рдХреЗ рд░реВрдк рдореЗрдВ, рдХрдВрд╕реЛрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд░реИрдкрд░ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рддрд░реАрдХреЗ рд╕реЗ рд╕рдВрднрд╛рд▓рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЬреЛ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд▓реАрдЧреЗрд╕реА рдбрд╛рдпрд░реЗрдХреНрдЯ рдЗрдВрд╕реНрдЯрд╛рд▓ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдпрд╛ PEP 517 рдЗрдВрд╕реНрдЯрд╛рд▓ рдереНрд░реВ рд╡реНрд╣реАрд▓ рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред

1 рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдпрд╣ рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдпрд╣рд╛рдВ рджреЗрдЦреЗ рдЬрд╛ рд░рд╣реЗ рд╡рд┐рднрд┐рдиреНрди рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЛ рдПрдХ рд╕рд╛рде рдЗрдХрдЯреНрдард╛ рдХрд░реЗрдВ рдФрд░ рдЕрдкрд░рд┐рд╣рд╛рд░реНрдп "рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдИрдкреА 517 рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХреИрд╕реЗ рдХрд░реЗрдВ" рдЪрд░реНрдЪрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдирдХрд╛ рджрд╕реНрддрд╛рд╡реЗрдЬреАрдХрд░рдг рдХрд░реЗрдВред рдпрджрд┐ рдФрд░ рдХреБрдЫ рдирд╣реАрдВ, рддреЛ рдпрд╣ рдкреВрд░реА рдмрд╣рд╕ рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░рддреА рд╣реИ рдХрд┐ рдПрдХ рдорд╛рдирдХ рдХрд╡рд░рд┐рдВрдЧ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреБрдЫ рдРрд╕реА рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕реЗ рд╣рдо рдмрд╣реБрдд рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЯрд╛рд▓ рд╕рдХрддреЗ рд╣реИрдВред

@pfmoore рд╣рд╛рд▓рд╛рдВрдХрд┐ рдареАрдХ рд╣реИ, рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рд╣рдореЗрд╢рд╛ рдПрдХ рдХрд░реАрдм рдкрд░реНрдпрд╛рдкреНрдд рд╕рдиреНрдирд┐рдХрдЯрди рдерд╛; рдЧреИрд░-рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рд╡реЗ рд╣реИрдВ рдЬреЛ рдкреБрд╖реНрдЯрд┐ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ 100% рдХреЛрдб рдЕрдЪреНрдЫрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдХреЛрдИ рд╕рдВрд╕рд╛рдзрди рд▓реЛрдб рдХрд░реЗрдЧрд╛ рддреЛ рд╡реЗ рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдпрд╣ рдорд╛рдорд▓рд╛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИред рдЬреИрд╕реЗ рдХрд┐ рдХреБрдЫ рдЭрдВрдбреЛрдВ рдХреЛ рдкрд╛рд░рд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдареАрдХ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЕрднреА рдХреЗ рд▓рд┐рдП, рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рд╣рдореЗрдВ рдХреЛрдИ рдлрд┐рдХреНрд╕ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ? --really-ignore-pep517-for-develop-mode рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рдареАрдХ рд╣реИред

рдиреЛ рдкреЗрдк 517 рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдЯреЙрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЗрд╕реЗ рд╣рд┐рдЯ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП, рдПрдХ рдХрд╕реНрдЯрдо install_command рд▓рд╛рдЗрди рдХреЛ tox.ini рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рд╣реИ (рдореЗрд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ pyproject.toml рд╣реИ рдЬреЛ рд▓рд╛рдЗрди рдХреА рд▓рдВрдмрд╛рдИ рдХреЛ рдХрд╛рд▓реЗ рд░рдВрдЧ рдореЗрдВ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ)ред

[testenv]
install_command =
    python -m pip install --no-use-pep517 {opts} {packages}

рдпрд╣ рдПрдХ рдЕрд▓рдЧ рд╕рдорд╕реНрдпрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб рдирд╣реАрдВ рд╣реИ рдФрд░ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

@gaborbernat рдХреНрдпрд╛ рдЖрдк рдХреБрдЫ рдРрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬреИрд╕реЗ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╕рд╛рдзрд╛рд░рдг рд░реИрдкрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╕рдордп рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реИ? рдпрд╛ рд╕реАрдЖрдИ, рдЖрджрд┐ рдореЗрдВ рдЪрд▓рддреЗ рд╕рдордп pyproject.toml рдлрд╝рд╛рдЗрд▓ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдмрдирд╛рдирд╛? рдореБрдЭреЗ рд╕рдЯреАрдХ рд╕реНрдерд┐рддрд┐ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдореЗрдВ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЙрдЪрд┐рдд рдорд╛рддреНрд░рд╛ рдореЗрдВ рд▓рдЪреАрд▓рд╛рдкрди рд╣реЛрдЧрд╛ред

рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рдЗрд░реНрдж-рдЧрд┐рд░реНрдж рдШреВрдордирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдмреБрд░рд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдкрд░реЗрд╢рд╛рдиреА рд╣реЛрдЧреАред рдпрд╣ рдЕрдм рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЯреЙрдХреНрд╕ рддреЛрдбрд╝рддрд╛ рд╣реИред tox рдпрд╣ рдЕрдм рдПрдХ рд╡рд┐рдХрд╕рд┐рдд рд╡рд╛рддрд╛рд╡рд░рдг рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рд╣реИред

pyproject.toml рдХреЛ рдмрд╛рд╣рд░ рдФрд░ рдкреАрдЫреЗ рд▓реЗ рдЬрд╛рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рд╣рд▓ рд╣реЛ рдЬрд╛рдПрдЧреА (рдПрдХ рднрдпрд╛рдирдХ рднрдпрд╛рдирдХ рддрд░реАрдХреЗ рд╕реЗ), рдпрд╣ рд╕рдорд╛рдирд╛рдВрддрд░ рдореЛрдб рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ред рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдпрджрд┐ рдЖрдк рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ 5 рдЯреЙрдХреНрд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЙрдирдореЗрдВ рд╕реЗ 4 рдкреАрдИрдкреА 517/518 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдХреЛрдИ рдПрдХ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рд╕рдВрд╕реНрдерд╛рдкрди рдЪрд╛рд╣рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕рд╛рдЗрдерди рдХреЛрдб рдХрд╡рд░реЗрдЬ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рд╣реИ)ред рдореБрдЭреЗ рдлрд┐рд░ рд╕реЗ рдПрдХ рдмреБрд░реА рдЬрдЧрд╣ рдХреА рддрд░рд╣ рдорд╣рд╕реВрд╕ рд╣реЛрддрд╛ рд╣реИ, рдЕрдм рдХрд┐рд╕реА рдХреЛ рдХреБрдЫ рд▓реЙрдХ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рддрд╛рдХрд┐ рдХрд╛рдо рдХреЗ рдкреЗрдбрд╝ рдХреЛ рдХреНрдпреЛрдВ рдмрджрд▓рд╛ рдЬрд╛ рд╕рдХреЗ, рдмрд╕ рдПрдХ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕ рдмрд┐рдВрджреБ рдкрд░, рдореИрдВ рдпрд╛ рддреЛ рдкрд╛рдЗрдк <19.1 рдкрд░ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реВрдВ, рдпрд╛ python setup.py develop рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ ... рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдЕрд╕реНрдкрд╖реНрдЯ рдзреНрд╡рдЬ рдХреЗ рдкреАрдЫреЗ рдПрдХ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреАрдИрдкреА -517/рдкреАрдИрдкреА -518 рдЕрдХреНрд╖рдо рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ред рд╕реНрд░реЛрдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЬрдЧрд╣ рдореЗрдВ рдмрджрд▓рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдЙрд╕ рдмрд┐рдВрджреБ рдкрд░ рд░реИрдкрд░ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЙрд╕ рд╕реЗ рдЧреБрдЬрд░ рд╕рдХрддреА рд╣реИред

рдХрд▓реНрдкрдирд╛ рдХреАрдЬрд┐рдП рдХрд┐ рдпрджрд┐ рдЖрдк рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ 5 рдЯреЙрдХреНрд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдЪрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЙрдирдореЗрдВ рд╕реЗ 4 рдкреАрдИрдкреА 517/518 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдПрдХ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯрд╛рд▓реЗрд╢рди рдЪрд╛рд╣рддрд╛ рд╣реИ

рдареАрдХ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдкрдиреЗ рдЬреЛ рдКрдкрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рд╣реИ рдЙрд╕рд╕реЗ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдкрд░рд┐рджреГрд╢реНрдп рд╣реИред рдЖрдкрдиреЗ рдЬреЛ рд▓рд┐рдЦрд╛ рд╣реИ рдЙрд╕рдХрд╛ рдореИрдВ рдЬрд╡рд╛рдм рджреЗ рд░рд╣рд╛ рдерд╛ред рдКрдкрд░ рдЖрдкрдиреЗ рдЕрднреА рдХрд╣рд╛ рдерд╛ рдХрд┐ рдЖрдк рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рд╡рд┐рдХрд╛рд╕ рдХрд░рддреЗ рд╕рдордп рд╡рд┐рдХрд╛рд╕ рдореЛрдб рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рд╢реБрджреНрдз рдкреАрдИрдкреА -517/518 рдореЗрдВ рд╕реАрдЖрдИ/рдЯреЙрдХреНрд╕ рдЪрд▓рд╛рдПрдВред

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдКрдкрд░ рдХрд╣рд╛, рдореБрдЭреЗ рдЖрдкрдХреА рд╕рд╣реА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдкрддрд╛ рдирд╣реАрдВ рд╣реИред рдпрд╣ рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдЬреИрд╕реЗ рдЖрдкрдХреЗ рдкрд╛рд╕ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдВрдЧреЗ рдЬреЛ рдЖрдк рдЕрдкрдиреЗ рд░реЗрдкреЛ рдФрд░ рд╕реНрдерд╛рдиреАрдп рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рдЕрдкрдиреА рдЗрдЪреНрдЫрд╛рдиреБрд╕рд╛рд░ рдЪреАрдЬреЛрдВ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдЦреИрд░, рдореИрдВрдиреЗ рдХрднреА рдирд╣реАрдВ рдХрд╣рд╛ рдХрд┐ рдореИрдВ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ install in develop mode when developing locally рд╣реВрдВ (рдореИрдВ рдЙрд╕рдХреЗ рд▓рд┐рдП рднреА рдЯреЙрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ) рдпрд╛ рдЙрд╕реА рд░реЗрдкреЛ рдкрд░ рдХрд┐рд╕реА рдЕрдиреНрдп рдСрдкрд░реЗрд╢рди рдХреЗ рд╕рдорд╛рдирд╛рдВрддрд░ рдирд╣реАрдВред рдЗрд╕ рд╕рдордп рдкрд╛рдЗрдк рдЗрдВрд╕реНрдЯрд╛рд▓ рд╕рдорд╛рдирд╛рдВрддрд░ рд╕реБрд░рдХреНрд╖рд┐рдд рд╣реИрдВ, рдЖрдкрдХрд╛ рд╕реБрдЭрд╛рд╡ рдЙрд╕ рд╕реНрдерд┐рд░рд╛рдВрдХ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХ рд╕рдЪреНрдЪрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реИред

рдХреНрдпрд╛ рд╣рдореЗрдВ рдХреЛрдИ рдлрд┐рдХреНрд╕ рдорд┐рд▓ рд╕рдХрддрд╛ рд╣реИ?

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдХреЛрдИ рд╡реНрдпрдХреНрддрд┐ рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреЛ рдПрдХ рд╕рд╛рде рдЦреАрдВрдЪрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдЙрдард╛рдП рдЬрд╛ рд░рд╣реЗ рд╕рднреА рд╡рд┐рднрд┐рдиреНрди рдореБрджреНрджреЛрдВ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рд╕рднреА рд╕реЗ рд╕рд╣рдорддрд┐ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддреА рд╣реИ, рдлрд┐рд░ рднреА рдЗрд╕реЗ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рд╣рдо рдЕрднреА рднреА рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдпреЛрдЧрджрд╛рди рджреЗрдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рдХреЗ рд╕реНрддрд░ рдкрд░ рд╣реИрдВ, рдФрд░ рд╣рдореЗрдВ рдЕрднреА рддрдХ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рд╕реНрдкрд╖реНрдЯрддрд╛ рдирд╣реАрдВ рдорд┐рд▓реА рд╣реИ рдХрд┐ рдЖрдЧреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рдХреНрдпрд╛ рд╣реИред рдЪрд░рдг рдПрдХ рд╢рд╛рдпрдж рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП рдХрджрдо рдЙрдард╛рдиреЗ рдФрд░ рдпрд╣рд╛рдВ рдЪрд▓ рд░рд╣реЗ рд╡рд┐рднрд┐рдиреНрди рдзрд╛рдЧреЗ рдФрд░ рдЪрд░реНрдЪрд╛рдУрдВ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ (рд╣рдореЗрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рднреА рдЙрдкрдпреЛрдЧ рдорд╛рдорд▓реЛрдВ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╕реНрддрд╛рд╡ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рди рдХрд┐ рдПрдХрд╛рдзрд┐рдХ "рдЕрд╕реНрдерд╛рдпреА" рд╕рдорд╛рдзрд╛рди)ред

рд╕рд╛рде рд╣реА, рдЕрдЧрд▓реА рдкрд┐рдк рд░рд┐рд▓реАрдЬрд╝ 3 рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рдмрдбрд╝реА рднреАрдбрд╝ рдирд╣реАрдВ рд╣реИред рдЖрдЗрдП рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдФрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдкреАрдЖрд░ рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдкрд╛рд╕ рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИред

рд▓реЗрдХрд┐рди рд╣рд╛рдБ, рд╣рдо рдирд┐рдпрдд рд╕рдордп рдореЗрдВ рдПрдХ рд╕реБрдзрд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдкреБрдирд╢реНрдЪ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдкреАрдИрдкреА 517 рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╕рдорд░реНрдерди рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХреЛ рдкрд┐рдк рдХреА рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬ рд╕реЗ рдкрд╣рд▓реЗ 3 рдорд╣реАрдиреЗ рдореЗрдВ рдХреНрд░рдордмрджреНрдз рдХрд┐рдпрд╛ рдЬрд╛рдП - рдЖрдЗрдП рдЕрд╕реНрдерд╛рдпреА рд╕рдорд╛рдзрд╛рдиреЛрдВ рдкрд░ рдпрд╣рд╛рдВ рд╕рд╛рд░реА рдКрд░реНрдЬрд╛ рдмрд░реНрдмрд╛рдж рди рдХрд░реЗрдВ рдпрджрд┐ рд╣рдо рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ!

рдПрдХ рдЕрдиреНрдп рдкреНрд░рд╢реНрди - рдХреНрдпрд╛ рдпрд╣ рдкрд┐рдк 19.1 рдореЗрдВ рдХреБрдЫ рдирдпрд╛ рд╣реИ? PEP 517 рд╕рдкреЛрд░реНрдЯ рдХреБрдЫ рдорд╣реАрдиреЗ рдкрд╣рд▓реЗ 19.0 рдореЗрдВ рдкреЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ - рдХреНрдпрд╛ 19.1 рдореЗрдВ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рдЗрд╕реЗ рдмрджрддрд░ рдмрдирд╛ рджреЗрддрд╛ рд╣реИ? рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдпрд╣ рдорд╛рдорд▓рд╛ рдЕрдм рдЕрдЪрд╛рдирдХ рд╕реЗ рдХреИрд╕реЗ рднрдбрд╝рдХ рдЧрдпрд╛ рд╣реИ? рдорд╣рдЬ рд╕рдВрдпреЛрдЧ?

рд╕рд╛рде рд╣реА, рдЕрдЧрд▓реА рдкрд┐рдк рд░рд┐рд▓реАрдЬрд╝ 3 рдорд╣реАрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЛрдИ рдмрдбрд╝реА рднреАрдбрд╝ рдирд╣реАрдВ рд╣реИред рдЖрдЗрдП рдЪреАрдЬреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪреЗрдВ рдФрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдкреАрдЖрд░ рд▓рд┐рдЦрдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рдХреЗ рдкрд╛рд╕ рдЬрд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╕рдорд╛рдзрд╛рди рд╣реИред

рдпрд╣ рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╕реАрдЖрдИ рдФрд░ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рддреЛрдбрд╝рддрд╛ рд╣реИред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ mypy, tox, virtualenv (рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдХрд╛рд░реНрдпрд╕реНрдерд▓ рдХреЗ рднреАрддрд░ рдмрд╣реБрдд рдХреБрдЫ)ред рдореИрдВ рдЗрд╕реЗ рдПрдХ рдмрдЧ-рдлрд┐рдХреНрд╕ рдЕрдиреБрд░реЛрдз рдорд╛рдирддрд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рддреАрди рдорд╣реАрдиреЗ рддрдХ рдЗрдВрддрдЬрд╛рд░ рдХрд░рдирд╛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрд╛рдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред

рдЬрдм pyproject.toml рдореМрдЬреВрдж рдерд╛, рддрдм pip 19.0.0 рдиреЗ рд╡рд┐рдХрд╛рд╕ рдореЛрдб (рдЖрд╡рд╢реНрдпрдХ рдЕрдиреБрднрд╛рдЧ рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд┐рдП рдмрд┐рдирд╛) рдХреА рдЕрдиреБрдорддрд┐ рджреАред рдкрд╛рдЗрдк 19.1 https://github.com/pypa/pip/pull/6370 рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдХрдард┐рди рддреНрд░реБрдЯрд┐ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред

рддреЛ #6370 --no-use-pep517 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рддрд╛ рд╣реИред рдХреНрдпрд╛ рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдкреАрдЖрд░ рдЯреВрдЯ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдпрд╣ рдирд╣реАрдВ рд╣реИ (рдЬреИрд╕рд╛ рдХрд┐ рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИ) "рдкреАрдИрдкреА 517-рдЗрд╕-рд╡реИрдХрд▓реНрдкрд┐рдХ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдХрд╛рдо рдХрд░ рд░рд╣рд╛ рд╣реИ (рдмрд╢рд░реНрддреЗ --no-use-pep517 рдкрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛)"?

рдпрджрд┐ рдкреАрдЖрд░ рд╡рд╣ рд╡рд┐рддрд░рд┐рдд рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЬреЛ рд╡рд╣ рд╡рд┐рддрд░рд┐рдд рдХрд░рдиреЗ рдХрд╛ рджрд╛рд╡рд╛ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЖрдЗрдП рдЗрд╕реЗ рдареАрдХ рдХрд░реЗрдВ (рдФрд░ рд╣рд╛рдВ, рдРрд╕рд╛ рд╕реБрдзрд╛рд░ 19.1.1 рд░рд┐рд▓реАрдЬ рдХреА рдЧрд╛рд░рдВрдЯреА рджреЗ рд╕рдХрддрд╛ рд╣реИ), рдЕрднреА рдФрд░ рд╡рд┐рдХрд▓реНрдк рдФрд░ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рди рдЬреЛрдбрд╝реЗрдВред рд▓реЗрдХрд┐рди рд╣рдореЗрдВ рдЙрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЯреВрдЯ-рдлреВрдЯ рдХреЛ рдкреБрди: рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

рджреЗрдЦреЗрдВ https://github.com/pypa/pip/pull/6370#issuecomment -486156720

рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рдХрд╛рдо рд╣реИ --no-use-pep517 рдХреЛ рдХрд┐рд╕реА рднреА рдЖрдордВрддреНрд░рдг рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдЬреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рджреЗрдЦреЗ рдЬрд╛ рд░рд╣реЗ рдХрд┐рд╕реА рднреА рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреЛ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП)

рдЗрд╕рдХреЗ рд╕рд╛рде рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ:

ERROR: Disabling PEP 517 processing is invalid: project specifies a build backend of setuptools.build_meta in pyproject.toml

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ PIP рдиреЗ PEP 517 рд╕реЗ рдСрдкреНрдЯ-рдЖрдЙрдЯ рдХрд░рдиреЗ рд╕реЗ рдЗрдВрдХрд╛рд░ рдХрд░ рджрд┐рдпрд╛ рд╣реИ, рдпрджрд┐ build-backend рдореЗрдВ pyproject.toml рднрд▓реЗ рд╣реА рдкрд░реНрдпрд╛рд╡рд░рдг рд╕реАрдзреЗ setup.py рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реЛред

@pfmoore рдпрд╣ рдореБрджреНрджрд╛ рджреЛ рдкреАрдЖрд░ рдореЗрдВ рд╕реЗ рдкрд╣рд▓реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ: https://github.com/pypa/pip/pull/6331 рджреВрд╕рд░реЗ рдХреЗ рдмрдЬрд╛рдпред

рдкрд╣рд▓рд╛ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд╣рд╛рдВ рдкреАрдИрдкреА 517 рдЕрдирд┐рд╡рд╛рд░реНрдп рд╣реИ рдХрд┐ pyproject.toml -рд╕реНрдЯрд╛рдЗрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдП рдФрд░ рдЗрд╕рд▓рд┐рдП --no-use-pep517 рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рд╣реИред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреАрдИрдкреА -517/518 рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ (рдЙрджреНрджреЗрд╢реНрдп рдкрд░, рдЯреАрдмреАрдбреА) рдХреЛ рдХрд╡рд░/рд╣реИрдВрдбрд▓ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдкреВрдЫрдиреЗ рдХреЗ рдмрд╛рдж рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреБрдЫ рднреА рдЕрдирд┐рд╡рд╛рд░реНрдп рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдмрд╣реБрдд рдХрдо рд╕реЗ рдХрдо рд╣рдореЗрдВ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ PEP-517 рдХреЛ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@cjerdonek рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рдЕрднреА рднреА рд╕рд╣реА рд▓рдЧрддрд╛ рд╣реИ - рдкреАрдИрдкреА 517 рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдпрджрд┐ рд╡реЗ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдпрд╣ рдХрд┐рд╕реА рдкреАрдИрдкреА 517. рдХреЗ рддрд╣рдд рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХреЗ рд▓рд┐рдП рдорд╛рдирдХреАрдХрд░рдг рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдЬрдм рдЗрд╕ рдмрд╛рдд рдкрд░ рд╕рд╣рдорддрд┐ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдкрд┐рдк (рдмреЗрд╢рдХ) рдпрд╣ рдкрд╛рд▓рди рдХрд░реЗрдВрдЧреЗ рдХреЗ рд▓рд┐рдП рдХреА рдЬрд░реВрд░рдд рдкрд░ рдЬреЛрд░ рд╣реИред

рдЬрдм рдкреАрдИрдкреА 517-рд╢реИрд▓реА рдХреЗ рд╕реНрд░реЛрдд рд▓реЗрдЖрдЙрдЯ рдХрд╛ рдкрддрд╛ рдЪрд▓рд╛ рдерд╛ рддреЛ рдкреАрдИрдкреА 517 рдореЛрдб рдореЗрдВ рд╕реНрд╡рд┐рдЪ рдХрд░рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╣реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЬреЛрд░ рджрд┐рдпрд╛ (рдореБрдЭреЗ рддрдм рд╡рд┐рд╢реНрд╡рд╛рд╕ рдерд╛, рдФрд░ рдЕрднреА рднреА рдХрд░рддрд╛ рд╣реВрдВ, рдЬрд╣рд╛рдВ рд╕рдВрднрд╡ рд╣реЛ, рдирдП рдХреЛрдб рдкрде рдХрд╛ рдкреНрд░рдпреЛрдЧ рдХрд░рдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ, рдФрд░ рдирдИ рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ рд╕реНрд░реЛрдд рдХреЛрдб рд▓рд┐рдЦрдирд╛ рдПрдХ рдмрд╣реБрдд рдордЬрдмреВрдд рдСрдкреНрдЯ-рдЗрди рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ), рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдо рддреМрд░ рдкрд░ рд╕рд╣рдордд рдерд╛ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рд╣реЛрдирд╛ред рдФрд░ рдореБрдЭреЗ рдЕрдм рднреА рд╡рд┐рд╢реНрд╡рд╛рд╕ рд╣реИ рдХрд┐ - рдЕрдЧрд░ рд╣рдо рдирдП рдХреЛрдб рдкрде рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдкреАрдЫреЗ рд╣рдЯрддреЗ, рддреЛ рд╣рдореЗрдВ рдХреИрд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рдХрд┐ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХреА рдХрдореА рдЗрддрдиреА рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╕рдорд╕реНрдпрд╛ рдереА? рд╣рдо рдмрд╕ рдЙрд╕ рдмрд┐рдВрджреБ рдкрд░ рджреЗрд░реА рдХрд░ рд░рд╣реЗ рдереЗ рдЬрдм рдпрд╣ рдореБрджреНрджрд╛ рдЙрдард╛ред

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реБрдП, рд╣рдореЗрдВ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреА рдЬрд╝рд░реВрд░рдд рд╣реИ рдХрд┐ рдЖрдЧреЗ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИред

@pfmoore рдЗрд╕ рдмреАрдЪ рд╣рдо рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдкрд░ рд╕рд╣рдордд рд╣реИрдВ рдХреНрдпрд╛ рд╣рдо рдЕрднреА рднреА рд╡рд┐рд░рд╛рд╕рдд рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдореЛрдб (рдХреБрдЫ рдЕрдЬреАрдм рдзреНрд╡рдЬ рдХреЗ рдкреАрдЫреЗ) рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдкрд╛рдЗрдк 19.0.0 рдиреЗ рдЕрднреА рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рд╕рдорд░реНрдерди рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ, рдФрд░ рдХреЗрд╡рд▓ рд╕рдВрдпреЛрдЧ рд╕реЗ рдкреВрд░реНрд╡ 19.1 рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ?

рдореИрдВ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реИред рдореВрд▓ рд░реВрдк рд╕реЗ, рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЬреЛ рдХреЛрдИ рднреА рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рдЙрд╕реЗ рддреИрдирд╛рддреА рдХреЗ рд▓рд┐рдП pyproject.toml PEP-517/518 рдХреЛ рднреА рдЫреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред

@gaborbernat рдЗрди рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдкреВрдЫрддреЗ рд╕рдордп, рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЛ рджреЛ рдорд╛рдорд▓реЛрдВ рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" pyproject.toml рдпрд╛ рдирд╣реАрдВ рдХреНрдпреЛрдВрдХрд┐ рдЙрддреНрддрд░ рджреЛ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЕрд▓рдЧ рд╣реИред рдпрджрд┐ рдЖрдк рднреЗрдж рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рднреНрд░рдо рдкреИрджрд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдкрддрд╛ рдирд╣реАрдВ рдЪрд▓реЗрдЧрд╛ рдХрд┐ рдХрд┐рд╕ рдорд╛рдорд▓реЗ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред

рдХрд╛рд░реНрдпрдХреНрд╖реЗрддреНрд░ рдХреЛ рджрд░реНрд╢рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдирд╛рдо рдмрджрд▓рд╛ред

рдореИрдВрдиреЗ рдкреИрдХреЗрдЬрд┐рдВрдЧ рдорд┐рдиреА-рд╢рд┐рдЦрд░ рд╕рдореНрдореЗрд▓рди рдореЗрдВ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд░рдЦрд╛ рд╣реИ , рдЗрд╕ рд╣рдж рддрдХ рдХрд┐ "рдкрд╕рдВрдж" рдХреЛ рд╡реЛрдЯ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЗрд╕реЗ рдкрд╕рдВрдж рдХрд░рдиреЗ рд╕реЗ рдЗрд╕реЗ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рджреЗрдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓реЗрдЧреАред

рдХрд┐рд╕реА рднреА рддрд░рд╣ рд╕реЗ, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ PyCon рдореЗрдВ рдирдпрд╛ рдорд╛рдирдХ рдХреВрдж-рд╢реБрд░реВ рдХрд░ рд╕рдХреЗрдВ? рдореИрдВ рд╕реЛрдЪ рд░рд╣рд╛ рд╣реВрдБ рдХрд┐ рд░реБрдЪрд┐ рд░рдЦрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдХреЗ рдмреАрдЪ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЦреБрд▓рд╛ рд╕реНрдерд╛рди рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛, рдпрджрд┐ рд╕рдордп рд╣реЛ рддреЛред

рдЕрдм рдЬрдм рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдирд╛рдо рджрд╛рдпрд░рд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдлрд┐рд░ рд╕реЗ рдкреВрдЫреВрдВрдЧрд╛:

рдЗрд╕ рдмреАрдЪ рд╣рдо рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдкрд░ рд╕рд╣рдордд рд╣реИрдВ рдХреНрдпрд╛ рд╣рдо рдЕрднреА рднреА рд╡рд┐рд░рд╛рд╕рддреА рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдореЛрдб (рдХреБрдЫ рдЕрдЬреАрдм рдзреНрд╡рдЬ рдХреЗ рдкреАрдЫреЗ) рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдкрд╛рдЗрдк 19.0.0 рдиреЗ рдЕрднреА рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рд╕рдорд░реНрдерди рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ, рдФрд░ рдХреЗрд╡рд▓ рд╕рдВрдпреЛрдЧ рд╕реЗ 19.1 рд╕реЗ рдкрд╣рд▓реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ?

рдореИрдВ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реИред рдореВрд▓ рд░реВрдк рд╕реЗ, рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЬреЛ рдХреЛрдИ рднреА рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рдЙрд╕реЗ рддреИрдирд╛рддреА рдХреЗ рд▓рд┐рдП pyproject.toml PEP-517/518 рдХреЛ рднреА рдЫреЛрдбрд╝рдирд╛ рд╣реЛрдЧрд╛ред

@pfmoore рдЗрд╕ рдмреАрдЪ рд╣рдо рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдкрд░ рд╕рд╣рдордд рд╣реИрдВ рдХреНрдпрд╛ рд╣рдо рдЕрднреА рднреА рд╡рд┐рд░рд╛рд╕рдд рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдореЛрдб (рдХреБрдЫ рдЕрдЬреАрдм рдзреНрд╡рдЬ рдХреЗ рдкреАрдЫреЗ) рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ рдпрд╛ рдкрд╛рдЗрдк 19.0.0 рдиреЗ рдЕрднреА рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рд╕рдорд░реНрдерди рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ, рдФрд░ рдХреЗрд╡рд▓ рд╕рдВрдпреЛрдЧ рд╕реЗ рдкреВрд░реНрд╡ 19.1 рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ?

рд╣реБрд╣? рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк рдпрд╣рд╛рдВ рдХреНрдпрд╛ рдкреВрдЫ рд░рд╣реЗ рд╣реИрдВред рдФрд░ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдВрджрд░реНрдн рдореЗрдВ "рд╣рдо" рдХреМрди рд╣реИред рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд┐рдЪрд╛рд░ рд╣реИ:

  1. рдЧреИрд░-рдкреАрдИрдкреА 517 рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ (рдЬрд┐рдирдХреЗ рдкрд╛рд╕ build-backend рдореЗрдВ pyproject.toml ) рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЕрднреА рднреА рдареАрдХ рдЙрд╕реА рддрд░рд╣ рд╕рдорд░реНрдерд┐рдд рд╣реИрдВ рдЬреИрд╕реЗ рдХрд┐ рдкрд┐рдк 19 рд╕реЗ рдкрд╣рд▓реЗред рдЖрдкрдХреЛ --no-use-pep517 рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
  2. рдкреАрдИрдкреА 517 рдиреЗ рдХрднреА рднреА рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯрд╛рд▓реЗрд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдкреАрдЖрдИрдкреА 19.0 рдореЗрдВ рдХреБрдЫ рдорд╛рдорд▓реЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рдпрд╣ рдкреАрдИрдкреА 517 рдФрд░ рд╡рд┐рд░рд╛рд╕рдд рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдорд┐рд╢реНрд░рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдореЛрдб рдореЗрдВ рдЧрд┐рд░ рдЧрдпрд╛ред рдЙрди рдорд╛рдорд▓реЛрдВ рдореЗрдВ 19.0 рдореЗрдВ рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВ, рд╣рдордиреЗ рдЙрдиреНрд╣реЗрдВ "рдкреАрдИрдкреА 517 рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛" рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЕрдиреБрд░реВрдк рддрдп рдХрд┐рдпрд╛, рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдХрд░рдХреЗ рдХрд┐ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдкреАрдИрдкреА 517 рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рдерд╛ред

рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░ (рдпрд╛рдж рд░рдЦреЗрдВ, рдпрд╣ рд╕рд┐рд░реНрдл рдореЗрд░реА рд░рд╛рдп рд╣реИ!) рдРрд╕реЗ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдкреАрдИрдкреА 517 рдХреЛ "рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛" рдореБрджреНрджреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЪрд┐рдВрддрд╛ рдХрд┐рдП рдмрд┐рдирд╛ рдЪреБрдирд╛, рдЬреЛ рдкреАрдЖрдИрдкреА рдХреЗ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕рдорд░реНрдерди рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рддреЗ рдереЗред рд╡реЗ рдЕрдм рдЙрдкрд░реЛрдХреНрдд (2) рдХреЗ рдХрд╛рд░рдг рд╕рдВрдШрд░реНрд╖ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдкрд┐рдк рдХреЗ рдкрд╛рд╕ рдЙрдирдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЙрддреНрддрд░ рд╣реЛред рдореИрдВ рдЙрд╕ рдЙрддреНрддрд░ рдХреЛ рдорд╛рдирдХ-рдЖрдзрд╛рд░рд┐рдд рд╣реЛрдирд╛ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдпрд╣ рдЕрд▓реНрдкрдХрд╛рд▓рд┐рдХ рдлрд┐рдХреНрд╕ рдирд╣реАрдВ рд╣реИред рдЕрдЧрд░ рдХреЛрдИ рд╢реЙрд░реНрдЯ-рдЯрд░реНрдо рдлрд┐рдХреНрд╕ (рдПрдХ рдкреАрдЖрд░) рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рддреЛ рдореИрдВ рдЙрд╕ рд╕реНрддрд░ рдкрд░ рдЙрд╕ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреЗ --make-it-go-away рд╡рд┐рдХрд▓реНрдк рдХреА рд╢реИрд▓реА рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рдирд╣реАрдВ рд╣реВрдВ - рдореИрдВ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЬреЛ рдХреБрдЫ рднреА рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рд╡рд╣ рдЙрд╕ рдкрд┐рдк рдореЗрдВ рдмреЗрд╣рддрд░ рдлрд┐рдЯ рдмреИрдарддрд╛ рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реИред

рдкреВрд░реНрдг рдкреНрд░рдХрдЯреАрдХрд░рдг: рдореЗрд░реЗ рдкрд╛рд╕ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЕрд▓реНрдкрд╛рд╡рдзрд┐ (рдЕрдЧрд▓реЗ рдХреБрдЫ рд╕рдкреНрддрд╛рд╣) рдореЗрдВ рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдЦрд╛рд▓реА рд╕рдордп рдирд╣реАрдВ рд╣реЛрдЧрд╛ред рдФрд░ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдореИрдВрдиреЗ рдХрд┐рдпрд╛, рддреЛ рдореИрдВ рд╕рдорд╕реНрдпрд╛ рдХреЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рдЕрдиреБрднрд╡ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рд╡реНрдпрдХреНрддрд┐ рд╕реЗ рд╕рдорд╛рдзрд╛рди рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛ рдХрд┐ рдЦреБрдж рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдХреНрдпрд╛ рд╣реИред

рдкреБрдирд╢реНрдЪ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╡рд┐рдХрд▓реНрдк (@cjerdonek - рдореИрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЖрдк рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?) рдЬрд┐рди рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рд╣рдо рдЬреБрдЯрд╛рдиреЗ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ make_editable_error (рдордЬрдмреВрдд рдмрдЬрд╛рдп рд╕рд┐рд░реНрдл рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрджреЗрд╢ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░рдирд╛ ) рдЪреЗрддрд╛рд╡рдиреА, рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдХрд┐ рдкреАрдИрдкреА 517 рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ, рдФрд░ рдЖрдк рдЗрд╕реЗ рдЕрдкрдиреЗ рдЬреЛрдЦрд┐рдо рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ - рд▓реЗрдХрд┐рди рдлрд┐рд░ рдмрд┐рдирд╛ рдмрдврд╝рд╛рдП рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реИрдВред рдпрджрд┐ рд╡рд╣ рдкреБрд░рд╛рдиреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдкрд░ рд╡рд╛рдкрд╕ рдЖрддрд╛ рд╣реИ, рддреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдЪреЗрддрд╛рд╡рдиреА рджреА рдЧрдИ рд╣реИ рд▓реЗрдХрд┐рди рд╣рдо рдЙрдирдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЛ рдирд╣реАрдВ рд░реЛрдХрддреЗ рд╣реИрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЕрдЧрд░ рд╣рдо рдРрд╕рд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдЕрдЬреАрдм рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреА рдкреЗрд╢рдХрд╢ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рдпрджрд┐ рдпрд╣ рд╕рдВрджреЗрд╢ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ ... (рдореИрдВ рдЗрд╕ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдг рдЬреЛрдбрд╝рдиреЗ рдХреА рдЬрд╣рдордд рдирд╣реАрдВ рдЙрдард╛рдКрдВрдЧрд╛, рдпрд╛ рдРрд╕рд╛ рдХреБрдЫ рднреА - рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд╕рдорд░реНрдерд┐рдд рдмрдирд╛рдПрдВ )

рдореИрдВ stderr - PEP-517 detected but editable install requested, this combination is not supported, will fallback to pre PEP-518/7 mode рдкрд░ рд▓рд┐рдЦреА рдЧрдИ рдПрдХ рдмрдбрд╝реА рд▓рд╛рд▓ рдЪреЗрддрд╛рд╡рдиреА рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реЛ рдЬрд╛рдКрдВрдЧрд╛; @cjerdonek ?

рдкреБрдирд╢реНрдЪ. рд╣рдо PyPa рдХреЗ рд░реВрдк рдореЗрдВ, PyPa рдкреИрдХреЗрдЬ рдХреЗ рдЕрдиреБрд░рдХреНрд╖рдХ рд╣реИрдВред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдореИрдВ "рдкреВрд░реНрд╡ рдкреАрдИрдкреА -517/8 рдореЛрдб рдореЗрдВ рдлреЙрд▓рдмреИрдХ" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рд╣реВрдВ - рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ "рдХреБрдЫ рдЕрдЬреАрдм рдлреНрд░реЗрдВрдХрд╕реНрдЯреАрди рдореЛрдб рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ рд╣реИ рдЬреЛ рд╡рд╣рд╛рдВ рдХреБрдЫ рдкреАрдИрдкреА 518 рдХреЗ рд╕рд╛рде рдЬреНрдпрд╛рджрд╛рддрд░ рд╡рд┐рд░рд╛рд╕рдд рд╣реИ" :-) рд▓реЗрдХрд┐рди рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рдХрд░реЗрдЧрд╛ред

рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдк "PyPA" рд╕реЗ рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рдПрдХ рд░рд╛рдп рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ, рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рдФрдкрдЪрд╛рд░рд┐рдХ рддрд░реАрдХрд╛ рдорд╛рдирдХ рд╣реИред рдореИрдВ рдХреЗрд╡рд▓ рдЕрдкрдиреА рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░рд╛рдп рджреЗ рд╕рдХрддрд╛ рд╣реВрдВ, рдФрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреАрдкреАрдП рд▓реЛрдЧ рдкрд╛рдЗрдк рдЯреНрд░реИрдХрд░ рдХрд╛ рдкрд╛рд▓рди рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВред рд╣рдо рдЕрднреА рддрдХ рдкрд┐рдк рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рд╕реЗ рдЖрдо рд╕рд╣рдорддрд┐ рдХреА рд░рд╛рдп рджреЗрдЦрдиреЗ рдХреЗ рдХрд░реАрдм рднреА рдирд╣реАрдВ рд╣реИрдВ...

@pfmoore рдпрд╣ pyproject.toml рдмрд┐рдирд╛ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЙрд╕реА рд░рд╛рдЬреНрдп рдиреЗ PEP-517/PEP-518 рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐рдпрд╛ рдерд╛ - рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдЕрд░реНрде рдХреЗрд╡рд▓ python setup.py develop рдЖрд╣реНрд╡рд╛рди рдХрд░рдирд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рд╣рдо рдПрдХ рдорд╛рдирдХреАрдХреГрдд рд╡рд┐рдХрд╛рд╕ рдкреНрд░рд╛рдкреНрдд рди рдХрд░реЗрдВ рддрд░реАрдХрд╛ред

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдореИрдВ "рдкреВрд░реНрд╡ рдкреАрдИрдкреА -517/8 рдореЛрдб рдореЗрдВ рдлреЙрд▓рдмреИрдХ" рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддрд┐рдмрджреНрдз рдирд╣реАрдВ рд╣реВрдВ - рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ "рдХреБрдЫ рдЕрдЬреАрдм рдлреНрд░реЗрдВрдХрд╕реНрдЯреАрди рдореЛрдб рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ рд╣реИ рдЬреЛ рд╡рд╣рд╛рдВ рдХреБрдЫ рдкреАрдИрдкреА 518 рдХреЗ рд╕рд╛рде рдЬреНрдпрд╛рджрд╛рддрд░ рд╡рд┐рд░рд╛рд╕рдд рд╣реИ" :-) рд▓реЗрдХрд┐рди рдореБрджреНрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдирд╣реАрдВ рдЬрд╛рдирддрд╛ рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рдХрд░реЗрдЧрд╛ред

рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реИ рдХрд┐ рдкрд┐рдЫрд▓реА рдмрд╛рд░ рдкреАрдИрдкреА 517 рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреЗ рдмрд╛рдж рд╣рдореЗрдВ pip ~=18 рдкреАрдИрдкреА 518 рд╡реНрдпрд╡рд╣рд╛рд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдмрд╣реБрдд рдкрд░реЗрд╢рд╛рдиреА рд╣реБрдИ рдереА, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрджрд░реНрд╢ рд╕реНрдерд┐рддрд┐ рдкреАрдЖрдИрдкреА рдХреЗ рдкреАрдИрдкреА 518 рд╡реНрдпрд╡рд╣рд╛рд░ рдкрд░ рд╡рд╛рдкрд╕ рдЖрдирд╛ рд╣реЛрдЧрд╛ (рдпрд╛рдиреА рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рдкреГрдердХ рдирд┐рд░реНрдорд╛рдг рд╡рд╛рддрд╛рд╡рд░рдг), рдлрд┐рд░ setup.py develop рдЖрд╣реНрд╡рд╛рди рдХрд░реЗрдВред

рдирдорд╕реНрддреЗ,
рдкреВрд░реА рд╕реБрдмрд╣ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдореЗрдВ рдмрд┐рддрд╛рдИ рдХрд┐ рдЖрдЬ рдореЗрд░реЗ рдкреИрдХреЗрдЬреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреНрдпреЛрдВ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ред рдпрд╣ рдХрд╛рдо рдкрд░ рдореЗрд░рд╛ рд╡рд┐рдиреНрдпрд╛рд╕ рд╣реИ:

pipenv 2018.11.26 рдПрдХ рдирдпрд╛ рд╡рд░реНрдЪреБрдЕрд▓рдПрдиреНрд╡ рдмрдирд╛рдПрдВ рдЬрд┐рд╕рдореЗрдВ (рдЖрдЬ рд╕реЗ) pip 19.1 рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рд╣реИред рдирд┐рдореНрди рдЕрдиреБрднрд╛рдЧ рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд░реВрдЯ рдбреАрдЖрдИрдЖрд░ рдореЗрдВ pyproject.toml рдлрд╝рд╛рдЗрд▓ рд╣реИ:

[build-system]
requires = [
    "setuptools",
    "wheel",
]

рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред рд╕реБрд╡рд┐рдзрд╛ рдХрд╛рд░рдгреЛрдВ (рдкрд░реАрдХреНрд╖рдг, рдФрд░ рдЗрд╕реА рддрд░рд╣) рдХреЗ рд▓рд┐рдП рдкреИрдХреЗрдЬ рдХреЛ рд╕рдВрдкрд╛рджрди-рдореЛрдб рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред pyproject.toml рдореЗрдВ black рдФрд░ tidypy рд▓рд┐рдП рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рднреА рд╢рд╛рдорд┐рд▓ рд╣реИрдВред @pfmoore рдпрд╛рдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдирд╣реАрдВ рддреБрдо рдХрд╣рд╛рдБ рд╣реИ рдХрд┐ рдмрд╕ рдХрд╛рд▓рд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реИ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ pyproject.toml рдЕрдкрдиреА рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдХреЗ рд▓рд┐рдП, рд▓реЗрдХрд┐рди рдЬрд╛рд╣рд┐рд░рд╛ рддреМрд░ рдкрд░ рднреА tidypy рдХрд┐ рдХрд░ рд░рд╣реА рд╣реИред

рдЪреВрдВрдХрд┐ рдореИрдВ pipenv ( pip рд╕реАрдзреЗ рдирд╣реАрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, --no-use-pep517 рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдирд╣реАрдВ рдерд╛ (рдХреНрдпреЛрдВрдХрд┐ рд╕рдВрд╕реНрдХрд░рдг 2018.11.26 рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ)ред рдореЗрд░реЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЛ рдХрд╛рдо рдкрд░ рд╡рд╛рдкрд╕ рд▓рд╛рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ export PIP_USE_PEP517=false ред рдпрджрд┐ рдЗрд╕реЗ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рдмреЗрд╣рддрд░ рддрд░реАрдХрд╛ рд╣реИ (рдХрдо рд╕реЗ рдХрдо рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП рдХреГрдкрдпрд╛ рдмреЗрдЭрд┐рдЭрдХ рдЭрдВрдХрд╛рд░ рдХрд░реЗрдВ)ред

рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдЖрдЬ рд╕реБрдмрд╣ (рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдЦреБрд▓рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ) рдореИрдВрдиреЗ рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕рдлрд▓рддрд╛ рдХреЗ pyproject.toml рдлрд╝рд╛рдЗрд▓ рд╕реЗ [build-system] рдЕрдиреБрднрд╛рдЧ рдХреЛ рдирд┐рдХрд╛рд▓рдиреЗ рдХрд╛ рднреА рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рд╛рде/ "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдХреЗ рдмрд┐рдирд╛ рдЕрд╕рд▓реА рд╣реИ рдпрд╛ рдпрд╣ рд╕рд┐рд░реНрдл рдореБрдЭреЗ рдХреБрдЫ рдЧрд▓рдд рд╣реЛ рд░рд╣рд╛ рд╣реИред

рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ, рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ (рдП) рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕рд╛рдмрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, (рдмреА) рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ рдореЗрдВ рдСрдкреНрдЯ-рдЗрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ (рд╕реА) рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд░рд╣рд╛ рд╣реВрдВред

рдХрдИ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ, 'рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп' рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣ рд╡рд╣ рд╣реИ рдЬреЛ рд╕рдмрд╕реЗ рд▓рдЧрд╛рддрд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ (рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рдореЗрдВ рдирд┐рд╣рд┐рдд рд╕реНрдерд┐рд░рддрд╛ рдФрд░ рджреЛрд╣рд░рд╛рд╡ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ рд╕реЗ рдмрдЪрдирд╛ рдЬреЛ рдПрдХ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕реНрдерд╛рдкрдирд╛ рдЖрд╡рд╢реНрдпрдХ рд░реВрдк рд╕реЗ рдмрдирд╛рддрд╛ рд╣реИ)ред

рдпрджрд┐ рд╕рд┐рдлрд╛рд░рд┐рд╢ рдпрд╣ рд╣реИ рдХрд┐ PEP517 рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЙрди рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЧреИрд░-рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рд╕реНрдерд╛рдкрдирд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╕реИрдХрдбрд╝реЛрдВ, рд╢рд╛рдпрдж рд╣рдЬрд╛рд░реЛрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрдбрд╝рд╛ рд╕рдВрдХреНрд░рдордг рд╣реИред

рд╣рдорд╛рд░реА рджреЗрд╡ рдЯреАрдо рдЬрд┐рди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд░рд╣реА рд╣реИ:

  • рдмреНрд▓реЙрдХ рдкрд┐рдк 19.1 рдФрд░ рдмрд╛рдж рдореЗрдВ рдкреИрдХреЗрдЬ рдЗрдВрдбреЗрдХреНрд╕ рдкрд░
  • рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрдВрдж рдХрд░реЗрдВ рдФрд░ рдкрд░рд┐рдгрд╛рдореЛрдВ рд╕реЗ рдирд┐рдкрдЯреЗрдВ
  • рдкреБрд░рд╛рдиреЗ рдкрд╛рдЗрдк рдХреЛ рдкрд┐рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИрдХ рдЯреЙрдХреНрд╕

рдореИрдВ --really-ignore-pep517-for-develop-mode рдЬреИрд╕реЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдЕрдзрд┐рдХ рдкрд╕рдВрдж рдХрд░реВрдВрдЧрд╛ рдЬрд┐рд╕реЗ рдмрд░реНрдирдЯ рдиреЗ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд┐рдпрд╛ рдерд╛ред

рд╣рдо рдпрд╣рд╛рдВ рдЬреЛ рднреА рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдЯреЙрдХреНрд╕ рд▓реЗрдХрд░ рдЖрдПрдВрдЧреЗ, рд╡рд╣ рддреЗрдЬреА рд╕реЗ рдЗрд╕реЗ рдЕрдкрдирд╛рдПрдЧрд╛, рдЬрдм рддрдХ рдХрд┐ рдпрд╣ рдбреЗрд╡рд▓рдкрд░ рдореЛрдб рдХреЛ pyproject.toml рдХреЛ рд╣рдЯрд╛рдП рдмрд┐рдирд╛ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдФрд░ рд╣рд╛рдБ рдЙрд╕ рдХреБрдПрдБ рдХрд╛ рдПрдХ рдмрдбрд╝рд╛ рд▓рд╛рд▓ рд╕рдВрджреЗрд╢ рдкреНрд░рд┐рдВрдЯ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ FYI рдХрд░реЗрдВ рдЖрдк рдЕрд╕рдорд░реНрдерд┐рдд рднреВрдорд┐ рдореЗрдВ рд╣реИрдВред

@pfmoore рдпрд╣ pyproject.toml рдмрд┐рдирд╛ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЙрд╕реА рд░рд╛рдЬреНрдп рдиреЗ PEP-517/PEP-518 рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐рдпрд╛ рдерд╛ - рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдорддрд▓рдм рдХреЗрд╡рд▓ python setup.py develop рдЖрд╣реНрд╡рд╛рди рдХрд░рдирд╛ рд╣реИ рдЬрдм рддрдХ рдХрд┐ рд╣рдо рдПрдХ рдорд╛рдирдХреАрдХреГрдд рд╡рд┐рдХрд╛рд╕ рдкреНрд░рд╛рдкреНрдд рди рдХрд░реЗрдВ рддрд░реАрдХрд╛ред

@pfmoore рдпрд╣ pyproject.toml рдХреЗ рдмрд┐рдирд╛ рд╕рдорд╛рди рдирд╣реАрдВ рд╣реЛрдЧрд╛, рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ рдЙрд╕реА рд░рд╛рдЬреНрдп рдиреЗ PEP-517/PEP-518 рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐рдпрд╛ рдерд╛ - рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЬрдм рддрдХ рд╣рдо рдПрдХ рдорд╛рдирдХреАрдХреГрдд рд╡рд┐рдХрд╛рд╕ рдореЛрдб рдкреНрд░рд╛рдкреНрдд рдирд╣реАрдВ рдХрд░рддреЗ рддрдм рддрдХ рдХреЗрд╡рд▓ python setup.py рд╡рд┐рдХрд╕рд┐рдд рдХрд░реЗрдВред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛, рдИрдорд╛рдирджрд╛рд░ рдЬрд╡рд╛рдм рд╣реИред PEP 517 рд╕рдкреЛрд░реНрдЯ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдХреЛрдб рдЕрдм рдмрд╣реБрдд рдЕрд▓рдЧ рд╣реИред

рдЖрдЗрдП рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдПрдВ рдФрд░ рд╕рдорд╛рдзрд╛рди рдмрдирд╛рдПрдВ рдореЗрд░рд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рд╣реИред рдХреНрдпрд╛ рд╣рдо рдЙрд╕ рдкрд░ рд╕рд╣рдордд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдЬрдмрдХрд┐ рдЗрд╕ рдмреАрдЪ рд╣рдореЗрдВ рдкреАрдИрдкреА-517 рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдорд┐рд▓рддрд╛ рд╣реИ:

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрджрд░реНрд╢ рд╕реНрдерд┐рддрд┐ рдкрд╛рдЗрдк рдХреЗ рдкреАрдИрдкреА 518 рд╡реНрдпрд╡рд╣рд╛рд░ (рдпрд╛рдиреА рдкреГрдердХ рдирд┐рд░реНрдорд╛рдг рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдирд┐рд░реНрдорд╛рдг) рдкрд░ рд╡рд╛рдкрд╕ рдЖрдирд╛ рд╣реЛрдЧрд╛, рдлрд┐рд░ setup.py рд╡рд┐рдХрд╕рд┐рдд рдХрд░реЗрдВред

рд╣реЛрдиреЗ рдХрд╛ рд╕рд╣реА рддрд░реАрдХрд╛ рд╣реИ; рдПрдХ рдмрдбрд╝реЗ рд▓рд╛рд▓ рд╕рдВрджреЗрд╢ рдХреЗ рд╕рд╛рде рдпрд╣ рдХрд╣рддреЗ рд╣реБрдП рдХрд┐ рдЬреИрд╕реЗ рд╣реА рд╣рдо рдЙрдЪрд┐рдд PEP-517 рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗ, рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛ред рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рддреЛ рдореИрдВ рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреАрдЖрд░ рдмрдирд╛рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рдФрд░ рдЗрд╕реЗ 19.1.1 рд░реВрдк рдореЗрдВ рдЬрд╛рд░реА рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдпрд╣ рд▓реЛрдЧреЛрдВ рдХреЛ рд╡рд┐рддрд░рдг рдХреЗ рд▓рд┐рдП рдкреАрдИрдкреА-517/8 рд╕рд░реНрд╡реЛрддреНрддрдо рдкреНрд░рдерд╛рдУрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛ рд▓реЗрдХрд┐рди рд╡рд┐рдХрд╛рд╕ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордЭрджрд╛рд░ (рдЬреЛ рдХрд┐рд╕реА рдмрд┐рдВрджреБ рдкрд░ рдмрджрд▓ рдЬрд╛рдПрдЧрд╛) рдкрд░ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧрд╛ред

@gaborbernat рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ @ncoghlan рдиреЗ PEP 518 рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрд╣рд╛рд▓ рдХрд░рдиреЗ рдореЗрдВ рдПрдХ рджрд░рд╛рд░ рд▓реА, рдЬрдм рд╣рдо рдкрд╣рд▓реА рдмрд╛рд░ рд╕рд╛рдкреЗрдХреНрд╖ рдЖрдпрд╛рдд рдХреЗ рдореБрджреНрджреЗ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдВрд╡ рдорд╛рд░ рд░рд╣реЗ рдереЗ рдФрд░ рдЕрдВрддрддрдГ рдЗрд╕реЗ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ред рдЙрд╕рдХреЗ рд╡рд┐рдЪрд╛рд░ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рдХрд┐рддрдирд╛ рд╕рдВрднрд╡ рд╣реИред

рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджреЛ рдмрд╛рд░ "рдХреЗрд╡рд▓ рдкреАрдИрдкреА 518 рдкрд░ рд╡рд╛рдкрд╕ рдЖрдирд╛" рд╡рд┐рдХрд▓реНрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдореБрдЭреЗ рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рд▓рд╛рдпрдХ рд╣реИред

рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП pip рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ "рдкреАрдИрдкреА 518 рдкрд░ рд╡рд╛рдкрд╕ рдЖрдирд╛" рдирд╣реАрдВ рд╣реИред рдореЗрд░реА рд╕рдордЭ рдпрд╣ рд╣реИ рдХрд┐ рдЬрдм PEP 517 рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рддреЛ рдЗрд╕реЗ PEP 518 рд╕рдорд░реНрдерди рдХреЗ рд╕реНрдерд╛рди рдкрд░ рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рджреЛрдиреЛрдВ рдЕрдЯреВрдЯ рд░реВрдк рд╕реЗ рдЬреБрдбрд╝реЗ рд╣реБрдП рд╣реИрдВред рдПрдХ рдХреЛрдб рдкрде рд╣реЛрдирд╛ рдЬреЛ pip рд▓реЗ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рдХреБрдЫ рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдореЗрдВ рдкреАрдИрдкреА 518 рдкрд░ рд╡рд╛рдкрд╕ рдЖ рд╕рдХрддрд╛ рд╣реИ, "рддреНрд╡рд░рд┐рдд рд╕реБрдзрд╛рд░" рдкреИрдЪ рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдЕрдм рджреЛ рдмрд╛рд░ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдореИрдВ рдЗрд╕реЗ рд╕реНрд╡рдпрдВ рдЕрдХреНрд╖рдо-рд╕рдХреНрд╖рдо PEP-517 рдЬреИрд╕реЗ рдирд╣реАрдВ рдмрдирд╛рдКрдВрдЧрд╛ред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рдмрдЬрд╛рдп, рдХреЗрд╡рд▓ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЕрдХреНрд╖рдо рдХрд░реЗрдВред

_(рдпрд╣ рд╢рд╛рдпрдж рдПрдХ рдЕрд▓рдЧ рдЪрд░реНрдЪрд╛ рдХрд╛ рд╡рд┐рд╖рдп рд╣реИ рд▓реЗрдХрд┐рди рдореИрдВ рдЗрд╕реЗ рдпрд╣рд╛рдВ рдмрддрд╛рдКрдВрдЧрд╛)_

рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмрдбрд╝реЗ рдмрджрд▓рд╛рд╡ рдЬрдВрдЧрд▓реА рдореЗрдВ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рджреВрд░рд┐рдпреЛрдВ рдХреЛ рддреЛрдбрд╝рддреЗ рд░рд╣рддреЗ рд╣реИрдВред
рдЗрд╕рдХрд╛ рдПрдХ рд╕рдорд╛рдзрд╛рди рдбрд╛рдЙрдирд╕реНрдЯреНрд░реАрдо рд▓рд┐рдм рдХрд╛ рдкрд░реАрдХреНрд╖рдг рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реЛрдЧрд╛: рдпреЗ рдкреАрдИрдкреАрдЖрдИ рдкрд░ рдЬреНрдЮрд╛рдд "рдЕрдЬреАрдм рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди" рдФрд░/рдпрд╛ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдЪреАрдЬреЛрдВ рдХреЗ рд╕рд╛рде libs рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред рдХрдо рд╕реЗ рдХрдо рд╕рдкреНрддрд╛рд╣ рдореЗрдВ рдПрдХ рдмрд╛рд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдорд╛рдорд▓реЗ рдЪрд▓рд╛рдиреЗ рд╡рд╛рд▓реЛрдВ рдХреЗ рдЦрд┐рд▓рд╛рдл рддреЗрдЬреА рд╕реЗ рд▓рд╛рд▓ рдЭрдВрдбрд╛ рдЙрдард╛рдирд╛ рдЪрд╛рд╣рд┐рдП...
(рдпрд╣ рдЙрди рдбрд╛рдЙрдирд╕реНрдЯреНрд░реАрдо рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рдХреА рдорд╛рд╕реНрдЯрд░ рд╢рд╛рдЦрд╛ рдХреЗ рдЦрд┐рд▓рд╛рдл рднреА рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЛ рдирдХрд╛рд░рддрд╛ рдирд╣реАрдВ рд╣реИ)

PS рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╡рд┐рдХрд▓реНрдк ( @cjerdonek - рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣ рдХрд┐рддрдирд╛ рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реЛрдЧрд╛, рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд╕рдХреЗрдВ?)

рдпрд╣ рд╕реАрдзрд╛ рд╣реЛрдЧрд╛ (рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ рдЙрдкрдпреБрдХреНрдд рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЪреЗрддрд╛рд╡рдиреА рд▓реЙрдЧ рдХрд░рдиреЗ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЛрдВ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ raise рдХреЛ рдмрджрд▓рдирд╛)ред рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рдХреЛрдб рдпрд╣рд╛рдВ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИ:
https://github.com/pypa/pip/blob/9816d17ccaf33dc5450b74ad310b6827915e2fe7/src/pip/_internal/pyproject.py#L136
рдХрд┐рд╕реА рдХреЛ рдмрд╕ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, @pfmoore рдЬреЛ рдХреБрдЫ рднреА

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рддрддреНрдХрд╛рд▓ рдЕрдЧреНрдирд┐рд╢рдорди рдХреЗ рд▓рд┐рдП @pfmoore рдХрд╛ рд╕реБрдЭрд╛рд╡ рдХрд╛рдлреА рдЕрдЪреНрдЫрд╛ рд╣реИ ...

рдореИрдВ рджреЗрдЦреВрдВрдЧрд╛ рдХрд┐ рдХреНрдпрд╛ рдореИрдВ рдЕрдЧрд▓реЗ рдХреБрдЫ рджрд┐рдиреЛрдВ рдореЗрдВ рдХреБрдЫ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдлрд┐рд░ рд╣рдо рд╕рдореАрдХреНрд╖рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЪреЗрддрд╛рд╡рдиреА рдкрд╛рда рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЖрджрд┐ред

рдЕрд░реЗ @cjerdonek - рдЗрд╕ рд░рд┐рд▓реАрдЬ рдХреЗ рд╕рд╛рде рдЧреБрдЬрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рддреНрдпреЗрдХ рджрд┐рди рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЕрдзрд┐рдХ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдкреИрдЪ рд░рд┐рд▓реАрдЬ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдЕрдЧрд░ рдЗрд╕реЗ рдЕрдЧрд▓реЗ 36 рдШрдВрдЯреЛрдВ рдореЗрдВ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рддреЛ рдореИрдВ рдЦрд╝реБрд╢реА рд╕реЗ рдмрдЧрдлрд┐рдХреНрд╕ рд░рд┐рд▓реАрдЬрд╝ рдкрд░ $50 рдХрд╛ рдЗрдирд╛рдо рд░рдЦреВрдБрдЧрд╛ред

@pfmoore рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХреНрдпрд╛ рдЗрд╕ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдЖрдкрдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдерд╛ рдХрд┐ рдпрджрд┐ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ ("рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдФрд░ рдмрд┐рдирд╛- "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдорд╛рдорд▓реЛрдВ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП), рддреЛ рдпрд╣ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЙрдкрдпреБрдХреНрдд рдЪреЗрддрд╛рд╡рдирд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреАрдИрдкреА 517 рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╕реЗ рдмрд╛рд╣рд░ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ? рдпрд╛ рдлрд┐рд░ рджреЛрдиреЛрдВ рд╣реА рдорд╛рдорд▓реЛрдВ рдореЗрдВ --no-use-pep517 рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА? рдЖрдкрдХреЗ рд╕реБрдЭрд╛рд╡ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрд░реА рд╕рдордЭ ( --no-use-pep517 рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ) рдпрд╣ рд╣реИ рдХрд┐ рджреЛрдиреЛрдВ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдПрдХ рдЪреЗрддрд╛рд╡рдиреА рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╡рд┐рд░рд╛рд╕рдд рд╡реНрдпрд╡рд╣рд╛рд░ рд╕рдорд╛рди рд░реВрдк рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рд╢рдмреНрджрд╛рдВрдХрди рдордЬрдмреВрдд рд╣реЛрдЧрд╛ рдХрд┐ "рдмрд┐рд▓реНрдб -рдмреИрдХрдПрдВрдб" рдореМрдЬреВрдж рд╣реИ (рдХрд╣ рд░рд╣рд╛ рд╣реИ рдХрд┐ рд╡реНрдпрд╡рд╣рд╛рд░ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХрд▓реНрдкрдирд╛ рдореЗрдВ рдЕрдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ)ред

рдЙрдкрд░реЛрдХреНрдд рдкрд░, рдпрд╣ рдореБрдЭреЗ рдЕрдЬреАрдм рд▓рдЧреЗрдЧрд╛ рдпрджрд┐ рд╣рдореЗрдВ рдХреЗрд╡рд▓ --no-use-pep517 рд╣реЛрддреА рд╣реИ рдЬрдм "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рд╣реЛрдЧрд╛ рдХрд┐ рдЬрдм рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реЛ рддреЛ "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдЬреЛрдбрд╝рдирд╛ --no-use-pep517 рдкрд╛рд╕ рдХрд░рдиреЗ рдХреЗ рд╕рдорд╛рди рдкреНрд░рднрд╛рд╡ рд╣реЛрдЧрд╛ (рдХреЗрд╡рд▓ рдЪреЗрддрд╛рд╡рдиреА рдЯреЗрдХреНрд╕реНрдЯ рдЕрд▓рдЧ рд╣реЛрдЧрд╛)ред

рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕ рддрд░рд╣ рдХрд╛ рдХреЛрдИ рд╕реБрдЭрд╛рд╡ рдирд╣реАрдВ рд╣реИ - рдпрд╣ рд╕рд┐рд░реНрдл рдореЗрд░реЗ рд▓рд┐рдП рд╣реБрдЖ рд╣реИ рдХрд┐ "рд╕рдВрджреЗрд╢ рдХреЛ рдкреНрд░рд┐рдВрдЯ рдХрд░реЗрдВ рдФрд░ рдЬрд╛рд░реА рд░рдЦреЗрдВ" рдХреЗ рд╕рд╛рде "рдЙрдард╛рдПрдВ" рдХреА рдЬрдЧрд╣ рдХрдореЛрдмреЗрд╢ рд╡рд╣ рдХрд░ рд╕рдХрддреА рд╣реИ рдЬреЛ рдХреЛрдб рдХрд░рддрд╛ рдерд╛ (рдкреАрдЖрд░ рдЬрд┐рд╕рдиреЗ рд╡реГрджреНрдзрд┐ рдХреЛ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬреЛрдбрд╝рд╛ рдерд╛ рдмрд╕ рдХрд┐рдпрд╛ "рдЕрдЧрд░рдлрд┐рд░ рдЙрдард╛рдПрдБ")ред

рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЕрд╣рд╕рд╛рд╕ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣рд╛рдБ "рдЕрдЪреНрдЫрд╛" рд╡рд┐рдХрд▓реНрдк рдХреНрдпрд╛ рд╣реЛрдЧрд╛ред рдпрджрд┐ рд╕реНрдерд┐рддрд┐ рдХрд╛рдлреА рдЧрдВрднреАрд░ рд╣реИ, рддреЛ #6314 рдФрд░ #6331 рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдХрд┐рд╕реА рдХреЛ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рд╡рд░реНрддрдорд╛рди рдЯреВрдЯ-рдлреВрдЯ рдХреЛ рдареАрдХ рдХрд░рддреЗ рд╣реБрдП рдЙрди рджреЛ рдкреИрдЪ рдХреА рднрд╛рд╡рдирд╛ рдХреЛ рдХреИрд╕реЗ рд╕рдВрд░рдХреНрд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдПред рд▓реЗрдХрд┐рди "рд╕реНрд╡рд┐рдЪ рдСрдл рдкреАрдИрдкреА 517" рдмреНрд▓рдВрдЯ рдЗрдВрд╕реНрдЯреНрд░реВрдореЗрдВрдЯ рд╡рд┐рдХрд▓реНрдк рд╕реЗ рдЦреБрд╢ рдирд╣реАрдВ рд╣реЛрдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореЗрд░реЗ рдкрд╛рд╕ рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рд╕реЛрдЪрдиреЗ рдХрд╛ рд╕рдордп рдирд╣реАрдВ рд╣реИред

рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ рдХрд┐ рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдореЗрдВ рд╡рд╛рдкрд╕ рд▓реМрдЯрдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдХреЗрд╡рд▓ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдФрд░ рдиреАрдЪреЗ рдзрдХреЗрд▓ рджреЗрдЧрд╛ рдФрд░ рдЗрд╕ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдмрд╛рдж рдореЗрдВ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рднреА рдмрдбрд╝рд╛ рдФрд░ рдХрдард┐рди рдмрдирд╛ рджреЗрдЧрд╛ (рдФрд░ рд╢рд╛рдпрдж рдРрд╕рд╛ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ)ред рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдЙрджреНрджреЗрд╢реНрдп рдЗрд╕ рдореБрджреНрджреЗ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдерд╛, рдЬрдмрдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдЕрднреА рднреА рдПрдХ рдореМрдХрд╛ рдерд╛ред

рдЖрдЧреЗ рдХреЗ рд░рд╛рд╕реНрддреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ, рдореЗрд░реА рднрд╛рд╡рдирд╛ рдпрд╣ рд╣реИ рдХрд┐ --no-use-pep517 рджреЛрдиреЛрдВ рд╣реА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдпрд╛ рди рддреЛ ("рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдХреБрдВрдЬреА рдХреЗ рд╕рд╛рде рдпрд╛ рдЙрд╕рдХреЗ рдмрд┐рдирд╛) рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЬрдм рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдмрджрд▓рд╛рд╡ рдХреА рдмрд╛рдд рдЖрддреА рд╣реИ рддреЛ рдЙрд╕ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдкрд░рд┐рдгрд╛рдо рдЯреНрд░реЗрдбрдСрдлрд╝ рдореЗрдВ рд╣реЛрддрд╛ рд╣реИред рдЕрдЧрд░ рд╣рдореЗрдВ рдЕрднреА рдзреНрд╡рдЬ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рд▓реЛрдЧ рд╢рд┐рдХрд╛рдпрдд рдХрд░реЗрдВрдЧреЗ рдЬрдм рдкреАрдИрдкреА 517 рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдЪреАрдЬреЗрдВ рдЕрд▓рдЧ рддрд░рд╣ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреА рд╣реИрдВ, рдФрд░ рд╢рд╛рдпрдж рдкреАрдИрдкреА 517 рдХреЗ рд▓рд┐рдП рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддреЗ рд╕рдордп рд╣рдо рдХреНрдпрд╛ рд╡рд┐рдХрд▓реНрдк рдЪреБрди рд╕рдХрддреЗ рд╣реИрдВред рдЕрдм, рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд▓реЛрдЧ рд╢рд┐рдХрд╛рдпрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИ рдФрд░ рд╢рд╛рдпрдж рдпрд╣ рд╕рднреА рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдиреЗрд╕реНрдЯреЗрдб рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдлрд╝рд╛рдЗрд▓ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛)ред

рдореИрдВ рдЖрдкрдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рдореЗрд░реА рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдЗрд╕реЗ рд╕реНрдкрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП --no-use-pep517 рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдЕрдЧрд░ рдореИрдВ рдЙрдкрд░реЛрдХреНрдд рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╕рдордЭрддрд╛ рд╣реВрдВ, рддреЛ рдпрд╣ рдЕрдирд┐рд╡рд╛рд░реНрдп рд░реВрдк рд╕реЗ --no-use-pep517 рдХрд╛рд░реНрдп рдХреЛ --make-it-just-work рдзреНрд╡рдЬ рдХреЗ рд╕рдорд╛рди рдмрдирд╛рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд▓реЛрдЧ рдорд╛рдВрдЧ рд░рд╣реЗ рдереЗ, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╕реНрд╡реАрдХрд╛рд░реНрдп рдЕрд╕реБрд╡рд┐рдзрд╛ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

рдореИрдВрдиреЗ рдЕрднреА рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдкреАрдЖрд░ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИ (https://github.com/pypa/pip/pull/6442) рд╕рдореАрдХреНрд╖рд╛ рдХреЗ рд▓рд┐рдП рдЬреЛ @pfmoore рдФрд░ рдореИрдВрдиреЗ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдХрд┐рдпрд╛ рд╣реИред

рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдХреА рддрд▓рд╛рд╢ рдореЗрдВ рд╣рд░ рдХрд┐рд╕реА рдХреЗ рд▓рд┐рдП - рдЖрдк рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ:

  1. рдкрд┐рдк 19.0 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛;
  2. export PIP_USE_PEP517=false (рдХреНрд░реЗрдбрд┐рдЯ: @ariciputi );
  3. рдпрджрд┐ pyproject.toml рдХреЗрд╡рд▓ black , рддреЛ рдЖрдк рдЗрд╕рдХрд╛ рдирд╛рдо рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ black --config black_config.toml . рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ;
  4. рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛;

@dxxxdk рдХреА рд╕реВрдЪреА рдХреЛ

  1. https://github.com/ansible/molecule/pull/2009 / https://github.com/jaraco/skeleton/commit/123b0b2 (рдХреНрд░реЗрдбрд┐рдЯ: @jaraco);

рдзрдиреНрдпрд╡рд╛рдж! рдЕрдм рд╣рдореЗрдВ рдмрд╕ рдПрдХ рд░рд┐рд▓реАрдЬ рдХреА рдЬрд░реВрд░рдд рд╣реИ, @dstufft

рдЬрд┐рд╕рдХрд╛ рдЕрд░реНрде рд╣реИ рдХрд┐ "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдкрд░рд┐рднрд╛рд╖рд┐рдд рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИред

@ariciputi pyproject.toml рд╕рд╛рдордЧреНрд░реА рдЬреЛ рдЖрдкрдиреЗ рдпрд╣рд╛рдВ рдЕрдкрдиреА рд╣реИ , рдХреЗрд╡рд▓ "рдмрд┐рд▓реНрдб-рд╕рд┐рд╕реНрдЯрдо" рдЕрдиреБрднрд╛рдЧ рдореЗрдВ "рдЖрд╡рд╢реНрдпрдХрддрд╛" рдХреБрдВрдЬреА рд╣реИ, рди рдХрд┐ "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдХреБрдВрдЬреАред рдЬрдм рд╕рдВрджреЗрд╢ "рдмрд┐рд▓реНрдб-рдмреИрдХрдПрдВрдб" рдХреБрдВрдЬреА рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╢рд╛рдмреНрджрд┐рдХ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ toml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред

@pfmoore @cjerdonek рдореИрдВ рд╡рдЬрди рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдореВрд▓ рдореБрджреНрджреЛрдВ рдХреЛ рдереЛрдбрд╝рд╛ рдФрд░ рдХрд░реАрдм рд╕реЗ рджреЗрдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рдХрд░ рд░рд╣рд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЗрд╕ рд╕рдордп рдореЗрд░реЗ рдкрд╛рд╕ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рд╕рдордп рд╣реЛрдЧрд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдмрд╕ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдВ рд╢реВрдЯрд┐рдВрдЧ рдпрд╣рд╛рдБ рдХреВрд▓реНрд╣реЗ рд╕реЗред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд▓реЛрдЧреЛрдВ рдХреЛ рдкреАрдИрдкреА 517 рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рдордЬрдмреВрд░ рдХрд┐рдП рдмрд┐рдирд╛ pip -e рдХреЛ рдХрдо рд╕реЗ рдХрдо рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ

рджрд┐рди рдХреЗ рдЕрдВрдд рдореЗрдВ, рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдкреАрдИрдкреА 517 рдЕрдкрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдпрд╛ рдХреБрдЫ рдФрд░ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЗрд╕рд▓рд┐рдП рдЬрдм рд╣рдо рдПрдХ рдорд╛рдирдХ рдХреЗ рд╕рд╛рде рдЖрддреЗ рд╣реИрдВ рддреЛ рдЕрд╕реНрдерд╛рдпреА рд░реВрдк рд╕реЗ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рд╕реЗ рд▓реЛрдЧреЛрдВ рдХреЛ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХрд░рдирд╛ рдкреНрд░рддрд┐рдХреВрд▓ рд▓рдЧрддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдкрд╕ рдЖрдиреЗ setup.py develop рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП --no-use-pep517 рдпрд╛ рддреЛ рдорд╛рдорд▓реЗ рдореЗрдВ, рдмрд╕ рдЪреЗрддрд╛рд╡рдиреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдЬрд╛рд░реА рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣рд╛рдВ рдЪрд░реНрдЪрд╛ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рджреЗрд░ рд╣реЛ рдЪреБрдХреА рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реА рдЕрдзрд┐рдХрд╛рдВрд╢ рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдЙрд╕ рд╢реНрд░реЗрдгреА рдХреЗ рдЕрдВрддрд░реНрдЧрдд рдЖрддреА рд╣реИрдВ рдЬрд┐рд╕рдХрд╛ @gaborbernat рд╡рд░реНрдгрди рдХрд░рддрд╛ рд╣реИ -- рдореЗрд░реЗ рдкрд╛рд╕ -e . рдореЗрд░реЗ requirements-dev.txt , рдФрд░ рдЙрдирдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рджреЗрд╡ рд╡рд╛рддрд╛рд╡рд░рдг рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддреЗ рд╕рдордп рдореИрдВрдиреЗ рдЕрднреА-рдЕрднреА $ pip install -r requirements-dev.txt ред

рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ python setup.py develop рд╕рдорд╛рдзрд╛рди рдХрд┐рддрдирд╛ рд╕рд╛рдорд╛рдиреНрдп рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореЗрдВ рдореИрдВрдиреЗ рдЗрд╕реЗ рдЕрднреА рддрдХ рдареАрдХ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИред (рдореИрдВ src рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдФрд░ рдореБрдЭреЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рд╡рд░реНрдХрд┐рдВрдЧ рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рдкрд░реНрдпрд╛рд╡рд░рдг рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рддрд╛рдХрд┐ рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рдкреИрдХреЗрдЬ рдХреЛ рдЖрдпрд╛рдд рдХрд░ рд╕рдХреЗред)

рдпрджрд┐ setup.py develop рдЗрдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рд╕рдорд╕реНрдпрд╛ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдЯреЙрдкрдЧреИрдк рд╕рдорд╛рдзрд╛рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдпрд╣ рдкрддрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рд╣реЛрдЧрд╛ рдпрд╛ рдирд╣реАрдВ), рддреЛ рдпрд╣ "PEP517 рдХреЗ рд╕рд╛рде рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ" рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЬреИрд╕реЗ рдХреБрдЫ :

.... Until editable install support is defined and implemented for PEP517 setuptools projects, running 'python setup.py develop' may be a suitable workaround.

рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ, рдореИрдВрдиреЗ рдЕрдкрдиреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреА рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ python setup.py develop рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ -e . рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЕрднреА рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рд╣реИ, рдФрд░ рдореЗрд░рд╛ рдкрд░реАрдХреНрд╖рдг рд╕реВрдЯ рд╕реНрдерд╛рдиреАрдп рд░реВрдк рд╕реЗ рдкрд╛рд╕ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдореЗрд░рд╛ рд╕реАрдЖрдИ рдареАрдХ рд╣реИ , рдФрд░ рдЯреЙрдХреНрд╕ (v3.9, рдЕрдк рдЯреВ рдбреЗрдЯ) рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рдерд╛:

image

рдпрд╣ рд╕рднреА рдЯреВрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рдореЗрд░реЗ рд╡рд┐рдХрд╛рд╕ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рд▓рд┐рдП рдареАрдХ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП - рдФрд░ рднрд▓реЗ рд╣реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ src рд▓реЗрдЖрдЙрдЯ рдХреЗ рд▓рд┐рдП рд░рд┐рдлреИрдХреНрдЯрд░ рдХрд░рдирд╛ рдкрдбрд╝реЗ, рдпрд╣ рдЗрддрдирд╛ рдХрдард┐рди рд╕рдВрдХреНрд░рдордг рдирд╣реАрдВ рд╣реИред рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд╕рднреА рдкреНрд░рдореБрдЦ рдЕрдВрд╢ рдореЗрд░реЗ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдореЗрдВ рд╡рд┐рд╖рдп рдкрд░ рджрд┐рдП рдЧрдП рд╣реИрдВ , рдЬрд┐рдиреНрд╣реЗрдВ рдореИрдВ рдЬрд▓реНрдж рд╣реА рдЕрдкрдбреЗрдЯ рдХрд░реВрдВрдЧрд╛!

рдЕрдЧрд░ рдпрд╣ рдорджрдж рдХрд░рддрд╛ рд╣реИ, рддреЛ рдореИрдВрдиреЗ #6438 рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ #6447 рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рдФрд░ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдлрд╛рдЗрд▓реЛрдВ рдореЗрдВ --no-use-pep517 (рдФрд░ --use-pep517 ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреАред

@pganssle IMO, рдпрд╣ рдХреБрдЫ рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд░реВрдк рдореЗрдВ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдореЛрдб рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП PEP 517 рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкрд░ рдЬреЛрд░ рджреЗрддрд╛ рд╣реИред

рд╣рдореЗрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕реЗ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдкреНрд░рд╛рдердорд┐рдХрддрд╛ рдХреЛ рдЯрдХреНрдХрд░ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдореМрдЬреВрджрд╛ рдореМрдЬреВрджрд╛ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рддреЛрдбрд╝рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред рд╡реИрд╕реЗ рднреА рдкреИрдХреЗрдЬрд┐рдВрдЧ рд╕рдорд┐рдЯ рдореЗрдВ рдЗрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред

рдореБрдЭреЗ рдЗрд╕ рдЯреНрд░реЗрди рдореЗрдВ рдереЛрдбрд╝реА рджреЗрд░ рд╣реЛ рдЧрдИ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдХрд╣реВрдВрдЧрд╛ рдХрд┐ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдПрдХ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдкрд░ -e рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ рдЗрд╕ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рд▓рд┐рдП --no-use-pep517 рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

@pfmoore рд╣рд╛рдБ, рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдБ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдореИрдВрдиреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдРрд╕рд╛ рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкреИрдХреЗрдЬрд┐рдВрдЧ рдорд┐рдиреА-рд╢рд┐рдЦрд░ рд╕рдореНрдореЗрд▓рди рдореЗрдВ рдЗрд╕ рдкрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджрд┐рдпрд╛ рдерд╛, рдФрд░ рдПрдХ рдЯрди рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рддреЛрдбрд╝рдиреЗ рд╕реЗ рдЗрд╕реЗ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реА рдмрдврд╝ рдЧрдИ рд╣реИред

рд▓реЗрдХрд┐рди рдЗрд╕ рдмреАрдЪ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ pip 19.0.3 рдХреЗ (рдореВрд▓) рд╡реНрдпрд╡рд╣рд╛рд░ рдкрд░ рд╡рд╛рдкрд╕ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдЙрди рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдирд╣реАрдВ рд╣реИ рдЬрд╣рд╛рдВ рджрд░реНрдж рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐ рдпрд╣ рдЦрд░рд╛рдм рд╣реЛ рдЬрд╛рдП, рд╣рдо рдЧреЛрд▓реА рднреА рдХрд╛рдЯ рд╕рдХрддреЗ рд╣реИрдВред рд╣рдо рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдХреЛ рд╕рдВрднрд╡ рдмрдирд╛рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рд▓реЛрдЧреЛрдВ рдХреЛ PEP 517 рдХреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдХреНрд╖рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╕ рдЙрдиреНрд╣реЗрдВ рдмрд╛рдж рдореЗрдВ рдЗрд╕реЗ рд╡рд╛рдкрд╕ рдЪрд╛рд▓реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╕ рдмрд╣реБрдд рд╡реНрдпрд╕реНрддрддрд╛ рдкреИрджрд╛ рдХрд░рдирд╛ рд╣реИред

рдпрд╣ рд╢рд╛рдпрдж рдЕрдиреБрднрд╡рд╣реАрди рд╣реИ, рдФрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдкрд░ рдкреВрд░реНрд╡ рдЪрд░реНрдЪрд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди: рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдирд╛ рдЙрддрдирд╛ рд╣реА рд╕рд░рд▓ ("рд╕рд░рд▓") рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬрд┐рддрдирд╛ рдХрд┐ editable_install рдлрд╝реАрд▓реНрдб рдХреЛ [build-system] рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ pyproject.toml ? рдпрд╣ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рд╕реНрдерд╛рдкрдирд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рд╢реНрд░реГрдВрдЦрд▓рд╛) рдХрдорд╛рдВрдб рдХреЛ рдзрд╛рд░рдг рдХрд░реЗрдЧрд╛; рдФрд░, рдЕрдиреНрдп [build-system] рдлрд╝реАрд▓реНрдб рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреА рддрд░рд╣ рд╣реА setuptools рдХреЛ рдмрд┐рд▓реНрдб рдмреИрдХрдПрдВрдб рдХреЗ рд░реВрдк рдореЗрдВ рдорд╛рдирддреЗ рд╣реИрдВ, рдбрд┐рдлрд╝реЙрд▓реНрдЯ editable_install=python setup.py develop ?

рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдФрд░ (рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп) рдЗрдВрд╕реНрдЯреЙрд▓ рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрд▓рдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рд╣реИ рдирд╛? рдпрджрд┐ рдРрд╕рд╛ рд╣реИ, рддреЛ рдмрд┐рд▓реНрдб рд╕рд┐рд╕реНрдЯрдо рдХреЛ рдХреЗрд╡рд▓ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдХрд┐ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП/рдЗрдВрд╕реНрдЯреЙрд▓ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдХрд┐рд╕ рдХрдорд╛рдВрдб рдХреЛ рдХреЙрд▓ рдХрд░рдирд╛ рд╣реИ, рдпрджрд┐ рдХреЛрдИ рдЗрд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдЗрд╕рдХреЗ рд▓рд┐рдП рд╢рд╛рдпрдж рдкрд╣рд▓реЗ PEP517/518 рдореЗрдВ рд╕рдВрд╢реЛрдзрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рд╣рд╛рд▓рд╛рдВрдХрд┐...?

@bskinn рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдПрдХ рдмреИрдХрдПрдВрдб рд╕реБрд╡рд┐рдзрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдмреИрдХрдПрдВрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд┐рд╕реА рд╡рд┐рд╢реЗрд╖ рдордВрддреНрд░ рдХреЛ рдЙрдирдХреА pyproject.toml рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдХреЙрдкреА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рд╣реИ - рдЗрд╕рдХреЗ рдмрдЬрд╛рдп рдЙрдирдХреА рдЬрд░реВрд░рддреЛрдВ рдХреЛ рдлреНрд░рдВрдЯрдПрдВрдб рдХреЗ рд▓рд┐рдП рдкреВрдЫрдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рд╕реНрдерд╛рдиреАрдп рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рд╕рдВрд╕реНрдерд╛рдкрди рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдХрдПрдВрдбред

рд╣рдордиреЗ рдЪрд░реНрдЪрд╛ рдХреЛ https://discuss.python.org/t/pip-19-1-and-installing-in-editable-mode-with-pyproject-toml/1553 рдкрд░ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджрд┐рдпрд╛ рд╣реИ

рд╣реЗрд▓реЛ рд╕рдм рд▓реЛрдЧ,

рдореБрдЭреЗ рдЗрд╕ рдзрд╛рдЧреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ рдЗрд╕рдиреЗ рдкрд╛рдЗрд╕реНрдЯреЗрд╕реНрдЯ рдХреЛ рднреА рддреЛрдбрд╝ рджрд┐рдпрд╛ред рдореИрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рд╡рд╛рд▓реЗ рд╕рднреА рд▓реЛрдЧреЛрдВ рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдпрд╣ рдХрд┐ рдПрдХ рд╕рдорд╛рдзрд╛рди рдЗрддрдиреА рдЬрд▓реНрджреА рдорд┐рд▓ рдЧрдпрд╛ рдерд╛ред

рдЗрд╕рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрдврд╝рддреЗ рд╕рдордп рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдЗрд╕ рдзрд╛рд░рдгрд╛ рдХреЗ рддрд╣рдд рд╣реВрдВ рдХрд┐ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЕрд╕рд╛рдорд╛рдиреНрдп рд╣реИрдВ, рдЬрдмрдХрд┐ рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рдареАрдХ рд╡рд┐рдкрд░реАрдд рд╕реЛрдЪрд╛, рдХрд┐ рд╡реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рдорд╛рдирдХ рддрд░реАрдХрд╛ рдереЗред

pyproject.toml (рдФрд░/рдпрд╛ build-backend рдЕрдиреБрднрд╛рдЧ рдХреЗ рд╕рд╛рде) рд╡рд╛рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдПрдВ рдЖрднрд╛рд╕реА рд╡рд╛рддрд╛рд╡рд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреИрд╕реЗ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрддреА рд╣реИрдВ ( PYTHONPATH рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╕реЗрдЯ рдХрд░рдиреЗ рдХреЗ рдЕрд▓рд╛рд╡рд╛)?

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдХреЗрд╡рд▓ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рд╡рд░реНрдЪреБрдЕрд▓рдПрдиреНрд╡ рдореЗрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреЙрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗред рдФрд░ рддрджрд░реНрде рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдореИрдВ рдПрдХ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдЪрдХреНрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рдЗрддрдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реИ, рдФрд░ рдореИрдВ рдЗрд╕рдХреЗ рд╕рд╛рде рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ (рдФрд░ рдЙрдирдХреЗ рджреНрд╡рд╛рд░рд╛ рдирд┐рдпреЛрдЬрд┐рдд рдкрде рд╣реИрдХрд┐рдВрдЧ) рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рд╣рдЬ рдорд╣рд╕реВрд╕ рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рд╕рднреА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣реИ, рди рдХрд┐ рдХреЗрд╡рд▓ рдкреАрдИрдкреА 517 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╡рд╛рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдПред

рдпрд╣ рд╡рд┐рд╢реБрджреНрдз рд░реВрдк рд╕реЗ рдореЗрд░рд╛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд╡рд┐рдЪрд╛рд░ рдФрд░ рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣ рд╣реИ, рдмрд┐рд▓реНрдХреБрд▓ред

рдмрд╕ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рдХрд┐ pip install -e 19.1 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдкрд╛рдЗрдк рдХреЗ рд╕рд╛рде рд╣реА рд╡рд┐рдлрд▓ рд╣реЛ рдЧрдпрд╛, рд▓реЗрдХрд┐рди рдЕрдм рдЗрд╕реЗ рдорд╛рд╕реНрдЯрд░ рдЧреИрд░-рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдореИрдВ рдЖрдорддреМрд░ рдкрд░ рд╕рдВрдкрд╛рджрди рдпреЛрдЧреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд╛ рднреА рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рдкреИрдЪ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕реНрдХрд░рдг-рдирд┐рдпрдВрддреНрд░рд┐рдд рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЗрд╕ рдереНрд░реЗрдб рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд▓реЙрдХ рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреЛрдИ рдЧрддрд┐рд╡рд┐рдзрд┐ рдирд╣реАрдВ рд╣реБрдИ рд╣реИред рдХреГрдкрдпрд╛ рд╕рдВрдмрдВрдзрд┐рдд рдмрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВред

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

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

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

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

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

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

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