Pip: рдЖрдЙрдЯ-рдСрдлрд╝-рдЯреНрд░реА рдмрд┐рд▓реНрдб рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рд╕рдорд╛рдзрд╛рди

рдХреЛ рдирд┐рд░реНрдорд┐рдд 4 рдЬрдире░ 2020  ┬╖  68рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: pypa/pip

рдореИрдВ рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ рдЖрдЙрдЯ-рдСрдл-рдЯреНрд░реА рдмрд┐рд▓реНрдб, рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреЛ рд╕рдореЗрдХрд┐рдд рдХрд░рдиреЗ рдХреЗ рдкреНрд░рдпрд╛рд╕ рдХреЗ рд░реВрдк рдореЗрдВ рдЦреЛрд▓рддрд╛ рд╣реВрдВред

рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдХрд┐рд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░реЗрдЧреА?

рд╕реНрдерд╛рдиреАрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рд╕реЗ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп, рдкрд╛рдЗрдк рдкрд╣рд▓реЗ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╕реНрдерд╛рди рдкрд░ рдХреЙрдкреА рдХрд░рддрд╛ рд╣реИ ред

рдЗрд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдиреЗ рд╕рдордп рдХреЗ рд╕рд╛рде рдХрдИ рдореБрджреНрджреЛрдВ рдХреЛ рдЙрдард╛рдпрд╛ рд╣реИ:

  • рдЬрдм setup.py / pyproject.toml рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рдореВрд▓ рдореЗрдВ рдирд╣реАрдВ рд╣реИ рдФрд░ рдЬрдм рдмрд┐рд▓реНрдб setup.py / pyproject.toml рд╕рдмрдЯреНрд░реА (#3500, #7549, #6276) рдХреЗ рдмрд╛рд╣рд░ рдХреЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ:

    • рдмрд┐рд▓реНрдб рдХреЛ рдРрд╕реЗ рд╕рдВрд╕рд╛рдзрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдЬреЛ рд╕рдмрдЯреНрд░реА рдХреЗ рдмрд╛рд╣рд░ рдлрд╝рд╛рдЗрд▓реЛрдВ/рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╕рд┐рдореНрд▓рд┐рдВрдХ рд╣реЛрдВ

    • рдмрд┐рд▓реНрдб рдХреЛ git рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП setuptools_scm рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп), рдФрд░ .git/ рдПрдХ рдореВрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╣реИ рдЬрд┐рд╕реЗ рдкрд╛рдЗрдк рджреНрд╡рд╛рд░рд╛ рдЕрд╕реНрдерд╛рдпреА рдбреАрдЖрдИрдЖрд░ рдореЗрдВ рдХреЙрдкреА рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

    • рдмрд┐рд▓реНрдб рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ (рдХреБрдЫ рд╣рдж рддрдХ рд╡рд┐рджреЗрд╢реА рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдлрд┐рд░ рднреА рдореЗрд░реЗ рдкрд╛рд╕ рдРрд╕рд╛ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд╣рд╛рдВ рдореИрдВ рдПрдХ рдХрд╕реНрдЯрдо рдмрд┐рд▓реНрдб рдмреИрдХрдПрдВрдб рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдФрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдЙрдкрдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдирд╛рдо рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ)

  • рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдбрд╝реА рд╣реЛрдиреЗ рдкрд░ рдкреНрд░рджрд░реНрд╢рди рд╕рдорд╕реНрдпрд╛рдПрдБ (#2195)ред

рдкрд┐рдк рдирд┐рд░реНрдорд╛рдг рд╕реЗ рдкрд╣рд▓реЗ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХреЙрдкреА рдХреНрдпреЛрдВ рдХрд░рддрд╛ рд╣реИ? рдЪреЗрддрд╛рд╡рдиреА: рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдЕрд╕реНрдкрд╖реНрдЯ рд╣реИ - рдЕрдм рддрдХ рдореИрдВрдиреЗ рдЬреЛ рдХреБрдЫ рдПрдХрддреНрд░ рдХрд┐рдпрд╛ рд╣реИ рд╡рд╣ рдпрд╣рд╛рдВ рд╣реИ:

  • рд╕реНрд░реЛрдд рд╕реЗ рдмрд╛рд╣рд░ рдХрд┐рд╕реА рдЪреАрдЬрд╝ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП (https://github.com/pypa/pip/issues/2195#issuecomment-524606986) - рд╣рд╛рд▓рд╛рдВрдХрд┐ "рд╕реНрд░реЛрдд рд╕реЗ рдмрд╛рд╣рд░" рдХреА рдкрд░рд┐рднрд╛рд╖рд╛ рдКрдкрд░ рдХреБрдЫ рдореБрджреНрджреЛрдВ рдХрд╛ рдХрд╛рд░рдг рд╣реИ
  • рдирд┐рд░реНрдорд╛рдг рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдпрд╛ рдЕрд╡рд╢реЗрд╖реЛрдВ (?) рдХреЗ рд╕рд╛рде рд╕реНрд░реЛрдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдкреНрд░рджреВрд╖рд┐рдд рдХрд░рдиреЗ рд╕реЗ рдмрдЪрдиреЗ рдХреЗ рд▓рд┐рдП
  • рдХреБрдЫ рдФрд░?

рд╕рдВрднрд╡ рд╕рдорд╛рдзрд╛рди

  1. рдПрдХ sdist рдЬрдЧрд╣ рдкрд░ рдмрдирд╛рдПрдБ, sdist рдХреЛ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╕реНрдерд╛рди рдкрд░ рдЕрдирдкреИрдХ рдХрд░реЗрдВ, рдлрд┐рд░ рдЙрд╕рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВред
  2. рдЬрдЧрд╣ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд┐рдк рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝реЗрдВред
  3. PEP 517 рдХреЛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рддрдВрддреНрд░ рдХреЗ рд╕рд╛рде рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдмреИрдХ-рдПрдВрдб рдлреНрд░рдВрдЯ-рдПрдВрдб рд╕реЗ рд╕рдВрдЪрд╛рд░ рдХрд░ рд╕рдХреЗрдВ рдпрджрд┐ рд╡реЗ рдЗрди-рдкреНрд▓реЗрд╕ рдмрд┐рд▓реНрдб рдХреЗ рд▓рд┐рдП "рд╕реБрд░рдХреНрд╖рд┐рдд" рд╣реИрдВред
  4. рд╣рдореЗрд╢рд╛ рдЬрдЧрд╣ рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рдмрджрд▓реЗрдВред
  5. рдЖрдЙрдЯ-рдСрдлрд╝-рдЯреНрд░реА рдмрдирд╛рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рдмрджрд▓реЗрдВред

рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдВрджрд░реНрдн

sdist рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЕрдзрд┐рдХ рдЪрд░реНрдЪрд╛ рдЪрд░реНрдЪрд╛.

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

https://github.com/pypa/pip/issues/2195#issuecomment -664728481 рд╕реЗ рдЖ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ --use-feature=in-tree-build рдкреАрдЫреЗ #7882 рдлрд┐рд░ рд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд╢ рд╣реВрдВред

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

рдЗрд╕реЗ рдмреИрдХ-рдПрдВрдб рдХреЗ рдирдЬрд░рд┐рдП рд╕реЗ рджреЗрдЦрддреЗ рд╣реБрдП, "рдЖрдЙрдЯ рдСрдл рдЯреНрд░реА рдмрд┐рд▓реНрдб" рдХрд╛ рд╡рд┐рдЪрд╛рд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрд░реНрдерд╣реАрди рд╣реИред рдмреИрдХ рдПрдВрдб рдХреЛ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреА рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЗ рд░реВрдк рдореЗрдВ "рд╕реЛрд░реНрд╕ рдЯреНрд░реА" рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдмрд┐рд▓реНрдб рдХреЛ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рдЬрд╛рдирдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ sdist рд╕реЗ рдирд┐рдХрд╛рд▓рд╛ рдЧрдпрд╛ рдерд╛, рдХрд┐рд╕реА VCS рд╕реЗ рдЪреЗрдХ рдЖрдЙрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдпрд╛ рдХрд╣реАрдВ рдФрд░ рд╕реЗ рдХреЙрдкреА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрд╣ рдХреЗрд╡рд▓ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдпрджрд┐ рдЙрд╕рдХреЗ рдкрд╛рд╕ рд╡рд╣ рдирд╣реАрдВ рд╣реИ рдЬреЛ рдЙрд╕реЗ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рд╡рд┐рдлрд▓рддрд╛ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реЗрдВред

рддрд╛рдХрд┐ рдХрд╛рдлреА рд╕рдВрднрд╡ рд╕рдорд╛рдзрд╛рди (3) IMO рдорд╛рд░рддрд╛ рд╣реИ - рдмреИрдХрдПрдВрдб, рдХреНрдпрд╛ рдПрдХ рдореЗрдВ рдЬрдЧрд╣ рдмрдирд╛рдиреЗ рдХреЗ рд╣реИ рдХреА рдПрдХ рдЕрд╡рдзрд╛рд░рдгрд╛ рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдирд╣реАрдВ рдХрд╣ рд╕рдХрддрд╛ рдХрд┐ рдХреНрдпрд╛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдПрдХ рдирд┐рд░реНрдорд╛рдг рд╕реБрд░рдХреНрд╖рд┐рдд 1 рд╣реИред

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

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

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

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

рдореИрдВрдиреЗ рд╕рдорд╛рдзрд╛рди рдЬреЛрдбрд╝рд╛ 4ред (рдкреАрдЖрдИрдкреА рдХреЛ рд╣рдореЗрд╢рд╛ рдЬрдЧрд╣ рдореЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓реЗрдВ) рдФрд░ 5ред (рдкрд╛рдЗрдк рдХреЛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдЬрдЧрд╣ рдореЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдЖрдЙрдЯ-рдСрдл-рдЯреНрд░реА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓реЗрдВ)ред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХрд╛рд░рдгреЛрдВ рд╕реЗ sdist (рд╕рдорд╛рдзрд╛рди 1.) рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ рдореЗрд░реА рдорд┐рд╢реНрд░рд┐рдд рднрд╛рд╡рдирд╛рдПрдБ рд╣реИрдВ:

  1. рдХреБрдЫ рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдЯреВрдЯрд╛ рд╣реБрдЖ sdist-to-wheel рдкрде рд╣реЛ рд╕рдХрддрд╛ рд╣реИ; рдЬрдмрдХрд┐ рдореБрдЭреЗ рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдореВрд▓реНрдп рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИ рдХрд┐ sdists рд╕реЗ рдЗрдорд╛рд░рдд рдХрд╛рдо рдХрд░рддреА рд╣реИ, рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдХрд░рдиреЗ рд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд┐рд░реНрдорд╛рдг рдЯреВрдЯ рдЬрд╛рдПрдВрдЧреЗ
  2. рдпрд╣ рдЕрднреА рднреА рдмрдбрд╝реЗ sdists рд╡рд╛рд▓реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдФрд░ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕рдмрдкреНрд░реЛрд╕реЗрд╕ рдХреЙрд▓ рдХреЗ рдХрд╛рд░рдг рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рднрд╛рд╡ рдбрд╛рд▓рддрд╛ рд╣реИ
  3. рдореБрдЭреЗ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ sdists рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬреЛрд░ рдирд╣реАрдВ рджреЗрдирд╛ рдЪрд╛рд╣рд┐рдП рдХреНрдпреЛрдВрдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдорд┐рдд рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдирд╛ рдФрд░ рдЙрдирдХреЗ рд╕реНрд░реЛрдд рд░рд┐рд▓реАрдЬ рдХреЗ рд▓рд┐рдП рдЙрдирдХреЗ рдкрд╕рдВрджреАрджрд╛ рдХреЛрдб рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЛ рд╕рдВрджрд░реНрднрд┐рдд рдХрд░рдирд╛ рдХрд╛рдлреА рдЖрдо рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдмреИрдХрдПрдВрдб рдЬреЛ рд╡реАрд╕реАрдПрд╕ рдЪреЗрдХрдЖрдЙрдЯ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИред рдЗрдорд╛рд░рдд рдХреЛ рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ sdist рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реБрдкреНрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреВрджрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ)ред рдФрд░ рдкреАрдИрдкреА 517 рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмреИрдХрдПрдВрдб рдХреЛ UnsupportedOperation рд▓рд┐рдП build_sdist рдмрдврд╝рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред

рдЪрд░реНрдЪрд╛ рдкрд░ рдпрд╣

рдореИрдВ рд╕рдорд╛рдзрд╛рди 3 рдХреЗ рд▓рд┐рдП рдорд╛рд░реНрдЧ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рд╕реНрдкрд╖реНрдЯ рд╕реЗ рдмрд╣реБрдд рджреВрд░ рд╣реИред

рдореИрдВ рдпрд╣ рднреА рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдпрджрд┐ рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рд╣рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдХрд▓реНрдкреЛрдВ рд╕реЗ рдмрдЪрдирд╛ рдЪрд╛рд╣рд┐рдПред

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

  • рдПрдХ sdist рдЬрдЧрд╣ рдкрд░ рдмрдирд╛рдПрдБ, sdist рдХреЛ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╕реНрдерд╛рди рдкрд░ рдЕрдирдкреИрдХ рдХрд░реЗрдВ, рдлрд┐рд░ рдЙрд╕рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рддрд░реАрдХрд╛ рд╣реИред

рдЖрдИрдПрдордУ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реИ, рдпрд╣ рд╕реНрдерд╛рдиреАрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛рдУрдВ рд╕реЗ рдЬреБрдбрд╝реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ pip install рд░рди рдореЗрдВ рдПрдХ рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ - рдЖрдорддреМрд░ рдкрд░ рдореИрдВ pip install . рдХрд▓реНрдкрдирд╛ рдХрд░рддрд╛ рд╣реВрдВред рдпрд╣ рд╕рдВрднрд╡рддрдГ рдкреИрдХреЗрдЬ рд╡рд┐рдХрд╛рд╕ рдХрд╛рд░реНрдпрдкреНрд░рд╡рд╛рд╣ рдХреЗ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдпрд╣рд╛рдБ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП:

  • рдпрджрд┐ рдмреИрдХрдПрдВрдб рдПрдХ sdist рдмрдирд╛рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рд╣реИ, рддреЛ рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> рд╡реНрд╣реАрд▓ (рдЗрди-рдкреНрд▓реЗрд╕) рдХрд░реЗрдВ

    • рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдХрдПрдВрдб рдкрд░ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИ рдХрд┐ рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> рдкрд╣рд┐рдпрд╛ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдПрдХ рдмреЗрдХрд╛рд░ рдСрдкрд░реЗрд╢рди рд╣реИред

  • рдпрджрд┐ рдмреИрдХрдПрдВрдб рдПрдХ sdist рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ, рддреЛ local-dir -> sdist -> unpacked-sdist -> рд╡реНрд╣реАрд▓ рдХрд░реЗрдВред

рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> sdist -> рдкрд╣рд┐рдпрд╛ рдХрд░рдирд╛, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреЙрд▓ рдХрд╛ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд╕реЗрдЯ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдорд╛рдиреНрдп рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реИ рдХрд┐ рдЙрддреНрдкрдиреНрди sdists рд╕рдордЭрджрд╛рд░ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рд╡рд┐рдХрд╛рд╕ рдХреЗ рджреМрд░рд╛рдиред tox рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЗрд╕реЗ рдЕрдкрдиреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд░рддрд╛ рд╣реИ, рдпрд╣рд╛рдВ рд╕реЗрдЯрдЕрдкрдЯреВрд▓ рдХреЗ рдЧреИрд░-рдЕрдиреБрдХреВрд▓ рдЗрдВрдЯрд░рдлреЗрд╕ рдХреЗ рд▓рд┐рдП рдХрд╡рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪреЗрдХ-рдореИрдирд┐рдлреЗрд╕реНрдЯ рдХрд░реЗрдВред

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЬрдм рдПрдХ рд╕реНрдерд╛рдиреАрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рджреА рдЬрд╛рддреА рд╣реИ рддреЛ рдПрдХ sdist рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреА рд▓рд╛рдЧрдд рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдореЗрдВ рдРрд╕реА рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЛ рд░реЛрдХрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕рдХреЗ рд▓рд╛рдпрдХ рд╣реЛрддреА рд╣реИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рд╕реНрдерд╛рдиреАрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рд╕реНрд╡рдпрдВ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рд╣реЛрддреЗ рд╣реИрдВред

рд░реЛрд▓рдЖрдЙрдЯ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдХрд┐ #6536 рдХреИрд╕реЗ рдЖрддрд╛ рд╣реИред рд╣рдо рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХреБрдЫ рдЪреАрдЬреЗрдВ рд╕реАрдЦреЗрдВрдЧреЗ рдЬрд┐рдиреНрд╣реЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдореИрдВ sdist (рдЗрд╕рд▓рд┐рдП setup.py install рдпрд╛ setup.py bdist_wheel рдпрд╛ рд▓рд╛рдЧреВ рд╣реЛрдиреЗ рдкрд░ PEP 517 рдмреИрдХрдПрдВрдб рдкрд░ build_wheel рдкрд░ рдХреЙрд▓ рдХрд┐рдП рдмрд┐рдирд╛ рдЗрди-рдкреНрд▓реЗрд╕ рдмрд┐рд▓реНрдбрд┐рдВрдЧ/рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ) рдмрдирд╛рдо рдПрдХ sdist рдмрдирд╛рдирд╛, рдЕрдирдкреИрдХ рдХрд░рдирд╛ рдФрд░ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдирд╛ рдЙрд╕рдореЗрдВ рд╕реЗред рдореЗрд░реЗ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░рдг рд╣реИрдВ:

  1. рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреА рд╕рдмрд╕реЗ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред

    1. рдорд╛рди рд▓реЗрдВ рдХрд┐ рдкреАрдЖрдИрдкреА рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> рд╕реНрдерд╛рдкрд┐рдд (рд╡реНрд╣реАрд▓ рдмрд┐рд▓реНрдб рдЗрди-рдкреНрд▓реЗрд╕ рдпрд╛ setup.py install ) рдХрд░рддрд╛ рд╣реИред рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> рд╕реНрдерд╛рдкрд┐рдд рд╕реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рд╡реЗ pip install local-dir рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> sdist -> рд╕реНрдерд╛рдкрд┐рдд рд╕реЗ рдЬрд╛рдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдПрдХ sdist рдмрдирд╛рдиреЗ рдФрд░ рдлрд┐рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рддрдВрддреНрд░ рд╣реИрдВ pip install ./path/to/sdist ред рдмрд╣реБрдд рд╕рд╛рд░реЗ рд╡реИрдХрд▓реНрдкрд┐рдХ рдЙрдкрдХрд░рдг рд╣реИрдВ рдЬреЛ рдПрдХ sdist рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╣реЛрдиреЗ рдХреА рдЕрдзрд┐рдХ рд╕рдВрднрд╛рд╡рдирд╛ рд╣реЛрдЧреА рдЬрдм рддрдХ рдХрд┐ рд╡реЗ рдЙрди рд╡рд┐рддрд░рдгреЛрдВ рдХреЛ рд╣рд╛рде рд╕реЗ рддреИрдпрд╛рд░ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдЬреЛ рд╡реЗ PyPI рдкрд░ рдЕрдкрд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВред

    2. рдЕрдм рдорд╛рди рд▓реЗрдВ рдХрд┐ pip рдХрд░рддрд╛ рд╣реИ local-dir -> sdist -> installред рдЬреЛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> рд╕реНрдерд╛рдкрд┐рдд рд╕реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рдкрд╛рд╕ рдХреЛрдИ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕рдореЗрдВ рдкрд╛рдЗрдк рд╢рд╛рдорд┐рд▓ рд╣реЛред рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> sdist -> рд╕реНрдерд╛рдкрд┐рдд рд╕реЗ рдЬрд╛рдиреЗ рдХреЗ рдЗрдЪреНрдЫреБрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ pip install local-dir рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдмрд┐рдирд╛ рд╡рд┐рдХрд▓реНрдк рд╡рд╛рд▓реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рд╕реЗ рд╡рд┐рдХрд▓реНрдк рдорд╛рдВрдЧреЗрдВрдЧреЗ рдпрд╛ рдЙрдиреНрд╣реЗрдВ рдХреЛрдИ рдЕрдиреНрдп рдЙрдкрдХрд░рдг рдЦреЛрдЬрдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕рдХреА рдЙрдиреНрд╣реЗрдВ рдЕрдиреНрдпрдерд╛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реЛрддреАред

  2. рдпрджрд┐ рд╣рдо рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> sdist -> рд╕реНрдерд╛рдкрд┐рдд рд▓рд╛рдЧреВ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╕рдВрднрд╡рддрдГ рд╣рдо рдЗрд╕реЗ рд╡реАрд╕реАрдПрд╕-рдЖрдзрд╛рд░рд┐рдд рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рднреА рдХрд░реЗрдВрдЧреЗ? рдпрджрд┐ рдРрд╕рд╛ рд╣реИ рддреЛ рдпрд╣ рдФрд░ рдХрд╛рдо рд╣реИред рдпрджрд┐ рдирд╣реАрдВ, рддреЛ рдпрд╣ рдХреЛрдб рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЕрддрд┐рд░рд┐рдХреНрдд рдкрде рд╣реИ рдФрд░ рд╕реНрдерд╛рдкрдирд╛ рдХреЛ рд╕рдВрднрд╛рд▓рдиреЗ рдХреЗ рддрд░реАрдХреЗ рдореЗрдВ рд╡рд┐рдЪрд▓рди рд╣реИ рдЬрд┐рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рджреНрд╡рд╛рд░рд╛ рдпрд╛ рд╕рдорд░реНрдерди рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╕рдордп рдпрд╛рдж рд░рдЦрдирд╛ рд╣реЛрдЧрд╛ред
  3. рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдХрд╛рдоред рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> рд╕реНрдерд╛рдкрд┐рдд ( рдпрд╣рд╛рдВ , рдпрд╣рд╛рдВ , рдФрд░ рдпрд╣рд╛рдВ ) рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрджрд▓рдиреЗ рдХреЗ рд▓рд┐рдП рддреАрди рд╕реНрдерд╛рди рд╣реИрдВред рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ рдХреЗ рд▓рд┐рдП -> sdist -> рд╕реНрдерд╛рдкрд┐рдд рдореИрдВ рдЗрд╕реЗ рддрдм рддрдХ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдЬрдм рддрдХ рдХрд┐ # 6607 рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЕрдиреНрдпрдерд╛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреЛрдб рдмреЗрд╕ рдореЗрдВ рдХрдИ рдЬрдЧрд╣реЛрдВ рдкрд░ рдЖрд░реНрдЯрд┐рдлреИрдХреНрдЯ рдбрд╛рдЙрдирд▓реЛрдбрд┐рдВрдЧ/рд╣реИрд╢ рдЪреЗрдХрд┐рдВрдЧ рдХреЗ рд╕рдорд╛рди рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ред
  4. рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдХрдо рд╕реЗ рдХрдо рдХрд╛рдо, рдЖрдИрдПрдордУ, рдореМрдЬреВрджрд╛ рдкрд░реАрдХреНрд╖рдг рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> рд╕реНрдерд╛рдкрд┐рдд рдХреЛрдб рдкрде рдХреЛ рдХрд╡рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИрдВред рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> sdist -> рд╕реНрдерд╛рдкрд┐рдд рдкрде рдХреЗ рд▓рд┐рдП рд╣рдо рдпрд╣ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ рдХрд┐ рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ sdist рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдХрд┐ рдлрд╝реЙрд▓рдмреИрдХ рд╕реАрдзреЗ рдПрдХ рдкрд╣рд┐рдпрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
  5. рдХрд╛рдо рдХреА рдиреНрдпреВрдирддрдо рд░рд╛рд╢рд┐ (рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рд░реВрдк рд╕реЗ)ред рдЬреИрд╕рд╛ рдХрд┐ рдХрд╣реАрдВ рдФрд░ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> sdist -> рд╕реНрдерд╛рдкрд┐рдд рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЙрдк-рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЙрд▓ рд╣реИ (рдФрд░ рд╡рд╣ рдЙрдк-рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХрд╛рдо рдХрд░ рд░рд╣реА рд╣реИ)ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рднреА рд╣реИ рдХрд┐ рдкрд╣рд┐рдпрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкрд╛рдЗрдк рдХреЛ sdist (рд╣реИрд▓реЛ рд╡рд╛рдпрд░рд╕ рд╕реНрдХреИрдирд░ рдФрд░ рдЕрдиреНрдпрдерд╛ рдзреАрдореА рдбрд┐рд╕реНрдХ) рдХреЛ рдЦреЛрд▓рдирд╛ рд╣реЛрдЧрд╛ред

рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдХреЗрд╡рд▓ рдПрдХ рд╣реА рдореБрджреНрджрд╛ рдЬреЛ рдореИрдВ рдЪреАрдЬреЛрдВ рдХреЛ рдХрд░рдиреЗ рдХреЗ рд╕рд╛рде рджреЗрдЦрддрд╛ рд╣реВрдВ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рд╕реЗрдЯрдкреВрд▓ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╡рд┐рд░рд╛рд╕рдд рдФрд░ рдкреАрдИрдкреА 517 рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рд╣реЛрддрд╛ рд╣реИ) рд╣рдо рдкрд░рд┐рдпреЛрдЬрдирд╛ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ .egg-info рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ рдЬреЛ рдЧрд▓рдд рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдПрдХ "рд╕реНрдерд╛рдкрд┐рдд рдкреИрдХреЗрдЬ" рдХреЗ рд░реВрдк рдореЗрдВ рдЬрдм рдЙрд╕ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ python -m pip рд╕рд╛рде рдкрд╛рдЗрдк рд▓рдЧрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ #4575 рджреНрд╡рд╛рд░рд╛ рддрдп рдХрд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдЬреЛ рд╕рдВрднрд╡рддрдГ рдХрд┐рд╕реА рднреА рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдкрд┐рдд рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рдХреНрд╡реЗрд░реА рдореЗрдВ рд╡рд░реНрддрдорд╛рди рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред

рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реЛ рдЧрдпрд╛ рд╣реВрдВ рдХрд┐ sdist рдмрд┐рд▓реНрдб рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдФрд░ рд╕реАрдзреЗ рдЗрди-рдЯреНрд░реА рдмрд┐рд▓реНрдб рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╛рдЗрдк рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреЗрд╣рддрд░ рддрд░реАрдХрд╛ рд╣реИ, рдФрд░ рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> sdist -> рд╡реНрд╣реАрд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдлреЗрдбреЛрд░рд╛ рдореЗрдВ, рдЬрдм рд╣рдо рдкрд╛рдпрдерди рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдбрд╛рдпрдирд╛рд╕реЛрд░ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдерд┐рди рдХрд░рдиреЗ рдХрд╛ рдорд╛рдирдХ рддрд░реАрдХрд╛ python setup.py build ред рдкреАрдИрдкреА 517 рдХреЗ рд╕рд╛рде рд╣рдордиреЗ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп pip wheel рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ "рдЕрдирдВрддрд┐рдо" рддрд░реАрдХрд╛ рдЬреЛрдбрд╝рд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ "рд╕реНрд░реЛрддреЛрдВ рдХреЛ tmp рдкрд░ рд▓реЗ рдЬрд╛рдПрдВ, рд╡рд╣рд╛рдВ рд╕реЗ рдмрдирд╛рдПрдВ" рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬреЛ рдкрд╛рдЗрдк рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рд╣рдорд╛рд░реА рдмрд┐рд▓реНрдб рдорд╢реАрдирд░реА рдХреБрдЫ рдХрдВрдкрд╛рдЗрд▓рд░ рдлрд╝реНрд▓реИрдЧреНрд╕ рдХреЛ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░ рд░рд╣реА рд╣реИ рддрд╛рдХрд┐ рдмрд┐рд▓реНрдб рдЖрд░реНрдЯрд┐рдлрд╝реИрдХреНрдЯреНрд╕ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ .so рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЙрдбреНрдпреВрд▓) рдореЗрдВ рдЙрдирдХреЗ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╣реЛред рдмрд╛рдж рдореЗрдВ рдПрдХ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛрддреА рд╣реИ рдЬреЛ рдмрд┐рд▓реНрдб рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддреА рд╣реИ, рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдирд┐рдХрд╛рд▓рддреА рд╣реИ рдФрд░ рдПрдХ рд╡рд┐рд╢реЗрд╖ *-debugsource RPM рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрддреЛрдВ рдХреЛ /usr/src/debug рдХреЙрдкреА рдХрд░рддреА рд╣реИред рдорд╣рд╕рд┐рдирд░реА рдХреЛ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреЗрдбрд╝ рдХреЗ рднреАрддрд░ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдмрд╛рд╣рд░ рдмрдирд╛рдП рдЬрд╛рдиреЗ рдкрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рд╡реЗ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреЛ рд╣рдорд╛рд░реА рддрд░рдл рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдПрдХ рд╕рд╛рде) рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ:

  1. $TMPDIR рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рдЙрд╕ рд╕реНрдерд╛рди рдкрд░ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реЗрдЯ рдХрд░реЗрдВ рдЬрд╣рд╛рдВ рдЖрд░рдкреАрдПрдо рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЗрд╕рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░рддреА рд╣реИ (рдпрд╛рдиреА export TMPDIR=%{_builddir}/.tmp (рдФрд░ рдЗрд╕реЗ рдмрдирд╛рдПрдВ))
  2. рдХреЙрдкреА рдХрд┐рдП рдЧрдП рд╕реНрд░реЛрддреЛрдВ рдХреЛ $TMPDIR рдореЗрдВ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП pip wheel рд╕рд╛рде --no-clean рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
  3. рд╕рд╣реА рд╕реНрдерд╛рди рдкрд░ "рдореЗрд░рд╛ рд╕реНрд░реЛрдд рдХреНрдпрд╛ рд╣реИ" рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╢реЗрд▓ рдХреБрдВрдЧ рдлреВ рдЪрд▓рд╛рдПрдБ: find %{buildroot} -iname '*.so' -print0 | xargs --no-run-if-empty -0 -n1 /usr/lib/rpm/debugedit -b "%{_builddir}/.tmp/pip-req-build-"* -d "$PWD"
  4. (рд╡реИрдХрд▓реНрдкрд┐рдХ: $TMPDIR рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╕рд╛рдлрд╝ рдХрд░реЗрдВред)

рд╣рдореЗрдВ рддреАрд╕рд░рд╛ рдЪрд░рдг рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╡рд┐рд╡рд░рдгреЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ:

  • /usr/lib/rpm/debugedit рдПрдкреАрдЖрдИ рдФрд░ рд╕реНрдерд╛рди (рдФрд░ рдЕрд╕реНрддрд┐рддреНрд╡)
  • pip-req-build рдирд╛рдо
  • рд╡рд╣ рддрдВрддреНрд░ рдЬрд┐рд╕рдХреЗ рд╕рд╛рде рдкрд╛рдЗрдк рд╕реНрд░реЛрдд рдмрдирд╛рддрд╛ рд╣реИ

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

рдбрд╛рдЙрдирд╕реНрдЯреНрд░реАрдо рд░рд┐рдкреЛрд░реНрдЯ: https://bugzilla.redhat.com/show_bug.cgi?id=1806625

рдпрд╣ рджреЗрдЦрддреЗ рд╣реБрдП рдХрд┐ рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реЛ рдЧрдпрд╛ рд╣реВрдВ рдХрд┐ sdist рдмрд┐рд▓реНрдб рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдФрд░ рд╕реАрдзреЗ рдЗрди-рдЯреНрд░реА рдмрд┐рд▓реНрдб рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░ рдкрд╛рдЗрдк рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдмреЗрд╣рддрд░ рддрд░реАрдХрд╛ рд╣реИ, рдФрд░ рд╕реНрдерд╛рдиреАрдп-рдбреАрдЖрдИрдЖрд░ -> sdist -> рд╡реНрд╣реАрд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред

рдореИрдВ рдЗрди-рдкреНрд▓реЗрд╕ рд╡реНрд╣реАрд▓ рдмрд┐рд▓реНрдб рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдЪрд╛рд░ рдХреЛ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рдЗрдЪреНрдЫреБрдХ рд╣реЛ рд░рд╣рд╛ рд╣реВрдВред рдореЗрд░реЗ рд╢реЗрд╖ рдЖрд░рдХреНрд╖рдг рд╣реИрдВ:

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

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

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

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

рдХреНрдпрд╛ "рдХреНрд▓реАрди" рд╣реБрдХ рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП PEP 517 рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдирд╛ рд╕рдордЭрджрд╛рд░реА рд╣реЛрдЧреА?

рд╢рд╛рдпрдж? рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдкреАрдЖрдИрдкреА рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ clean рдХреЙрд▓ рдХрд░рддрд╛ рд╣реИ, рддреЛ рдХреЛрдИ рдРрд╕рд╛ рд╡реНрдпрдХреНрддрд┐ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬреЛ рдРрд╕рд╛

рдореЗрд░рд╛ рдЭреБрдХрд╛рд╡ рдореЗрд░реА рд╕реНрдерд┐рддрд┐ рдХреЗ рд╕рд╛рде рд░рд╣рдирд╛ рд╣реИ "рд╣рдореЗрдВ рдпрд╣ рдорд╛рдирдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдпрд╣ рдмреИрдХрдПрдВрдб рдХреА рдЬрд╝рд┐рдореНрдореЗрджрд╛рд░реА рд╣реИ рдХрд┐ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдЬрдЧрд╣ рдореЗрдВ рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ"ред рдпрд╣рд╛рдВ рддрдХ рдХрд┐ рдЕрдЧрд░ рд╣реИ рдХрд┐ рдмрд╛рд░реА-рдмрд╛рд░реА рд╕реЗ рдмрд╛рд╣рд░ рдХреНрдпреЛрдВ рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдЧрд╛ рдирд╣реАрдВ рд╣реИ рд╣рдореЗрдВ рдмреЗрд╣рддрд░ рд╕рд┐рд░реНрдл рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдиреЗ рдХреЗ рдмрдЬрд╛рдп рд╕рдорд╕реНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛ рдХрд░рдирд╛ рд╣реИ, рди рдХрд┐ рд╕рдордЭ рдореЗрдВ рдХреА рдареЛрд╕ рдЙрджрд╛рд╣рд░рдг рд╣реЛ рд░рд╣реА рдЕрд╕реНрдерд┐рд░ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ,ред

  1. рд╣рдо "рд╕рд╣реА рдврдВрдЧ рд╕реЗ" рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдмреИрдХрдПрдВрдб рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░реЗрдВрдЧреЗ - рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд┐рдЫрд▓реЗ рдмрд┐рд▓реНрдб рд╕реЗ рдмрдЪреЗ рд╣реБрдП рдбреЗрдЯрд╛ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рджреЗ рд░рд╣реЗ рд╣реИрдВ, рдпрд╛ рдЬреЛ рднреА рд╣реЛред

рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП PEP-517 рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд▓реБрддреНрдл рдЙрдард╛рдКрдВрдЧрд╛ред

рдореИрдВ рдЗрд╕реЗ рдПрдХ рд╕реНрдкрд╖реНрдЯ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП PEP-517 рдХрд╛ рд╡рд┐рд╕реНрддрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рд▓реБрддреНрдл рдЙрдард╛рдКрдВрдЧрд╛ред

рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдпрд╣ рдХрд╣рддрд╛ рд╣реИ:

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

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

рдлреЗрдбреЛрд░рд╛ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рддреЗ рд╕рдордп, рд╣рдо https://github.com/pypa/pip/issues/7872 рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реБрдП рд╣реИрдВ

рдЪреВрдВрдХрд┐ рд╣рдордиреЗ #7731 рдФрд░ рджреЛрд╕реНрддреЛрдВ рдХреЗ рд╕рд╛рде ".egg-info in cwd" рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░ рд▓рд┐рдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп рдЪрд┐рдВрддрд╛ рдХреА рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ рд╣реИред

рддреЛ #7882 рдореЗрдВ рд╡рд┐рдХрд▓реНрдк 4 (рд╣рдореЗрд╢рд╛ рдмрд┐рд▓реНрдб рдЗрди рдкреНрд▓реЗрд╕) рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рд╣рдордиреЗ рдЕрдм (рдкреНрд░рддрд┐ #7951) рдкреАрдЖрдИрдкреА, рдкреАрдЖрдИрдкреА 20.1рдмреА1 рдХрд╛ рдмреАрдЯрд╛ рд░рд┐рд▓реАрдЬ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ #7882 рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЬрд┐рд╕рдиреЗ рдЗрд╕ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ред

рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдЕрдВрдХ рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рд╡рд╛рд▓реЗ рдмреАрдЯрд╛ рдкрд░реАрдХреНрд╖рдг рдФрд░ рдирдП рдмрдЧ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдореЗрдВ рд╣рдорд╛рд░реА рд╕рд╣рд╛рдпрддрд╛ рдХрд░реЗрдВрдЧреЗред рд╣рдо рдордВрдЧрд▓рд╡рд╛рд░ рдХреЛ рдореБрдЦреНрдп 20.1 рд░рд┐рд▓реАрдЬрд╝ рд╕реЗ рдкрд╣рд▓реЗ рдХрд┐рд╕реА рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╕реНрдпрд╛ рдХреА рдкрд╣рдЪрд╛рди рдХрд░рдирд╛ рдФрд░ рдЙрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдореИрдВ "рдпрд╛рдп, рдпрд╣ рдЕрдм рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ!" рдХреА рддрд░реНрдЬ рдкрд░ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рднреА рд╕реНрд╡рд╛рдЧрдд рдХрд░рддрд╛ рд╣реВрдВред рд╕рд╛рде рд╣реА, рдЪреВрдВрдХрд┐ рдЗрд╢реНрдпреВ рдЯреНрд░реИрдХрд░ рдЖрдорддреМрд░ рдкрд░ "рдореБрджреНрджреЛрдВ" рд╕реЗ рднрд░рд╛ рд╣реЛрддрд╛ рд╣реИред :)

рд╣рдо рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдлреЗрдбреЛрд░рд╛ рдореЗрдВ рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ (рд╣рдордиреЗ рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рдкрд╣рд▓реЗ рд╣реА рдЗрд╕рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдИ рд╣реИ), рд╣рд╛рд▓рд╛рдВрдХрд┐ рдордВрдЧрд▓рд╡рд╛рд░ рдХреА рд╕рдордп рд╕реАрдорд╛ рд╢рд╛рдпрдж рдпрдерд╛рд░реНрдерд╡рд╛рджреА рдирд╣реАрдВ рд╣реИред

@hroncok рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рдЬрдм рдлреЗрдбреЛрд░рд╛ рдЗрди рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рдореИрдВ рдЗрд╕реЗ рд╕реЛрдорд╡рд╛рд░ рдХреЛ рдХрд┐рд╕реА рддрд░рд╣ рдХрд░рдиреЗ рдХреА рдкреВрд░реА рдХреЛрд╢рд┐рд╢ рдХрд░реВрдВрдЧрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рдХреЛрдИ рд╡рд╛рджрд╛ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ред

рджрд░рдЕрд╕рд▓, 20.1b1 рд╣рдорд╛рд░реА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рджреВрд░ рдХрд░ рджреЗрддрд╛ рд╣реИред

рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп 20.1b1 рдлрд╝реАрдбрдмреИрдХ https://mail.python.org/archives/list/[email protected]/message/5EAUIYYIRKXEHTAG5GQ7EJHSXGZIW2F7/ рдореЗрдВ

рд╣реБрд░реНрд░реЗ! @hroncok рдмреАрдЯрд╛ рдХреЛ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд-рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рдж! рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА! ^>^

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

@manthe рдХрд┐ рдЪрд░реНрдЪрд╛ #8168 . рдХреЗ рддрд╣рдд рд╣реИ

рддреЛ рдЕрдм 10 рджрд┐рди рд╕реЗ рдЕрдзрд┐рдХ рд╣реЛ рдЧрдП рд╣реИрдВред рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рдореБрджреНрджреЗ рдЙрдард╛рдП рдЧрдП рдереЗ (рд╕рднреА рдЕрдкреЗрдХреНрд╖рд┐рдд рдереЗ рдХрд┐ рдореИрдВ рдХрд╣реВрдВрдЧрд╛ - #8165, #8168, #8196)ред рдРрд╕реЗ рд▓реЛрдЧ рднреА рдереЗ рдЬреЛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░рд┐рд╡рд░реНрддрди рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░ рд░рд╣реЗ рдереЗ рдЬрд┐рд╕рд╕реЗ рдЙрдиреНрд╣реЗрдВ рдорджрдж рдорд┐рд▓ рд░рд╣реА рд╣реИред

  • рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдореБрджреНрджреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкрд┐рдЫрд▓реЗ рд╡реНрдпрд╡рд╣рд╛рд░ (рдЕрд╕реНрдерд╛рдпреА рдбреАрдЖрдИрдЖрд░ рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐) рдореЗрдВ рд╢реБрджреНрдзрддрд╛ рдХреЗ рдореБрджреНрджреЗ рдереЗ (рдКрдкрд░ рд▓рд┐рдВрдХ рдХрд┐рдП рдЧрдП) рдЬреЛ рдХрд┐ рд╕рдВрджрд░реНрдн рдЬреНрдЮрд╛рди рдХреЗ рдмрд┐рдирд╛ рдкреАрдЖрдИрдкреА рджреНрд╡рд╛рд░рд╛ рдареАрдХ рдХрд░рдирд╛ рдЕрд╕рдВрднрд╡ рд╣реИ рдЬреЛ рдХреЗрд╡рд▓ рдХреЙрд▓рд░ рдХреЗ рдкрд╛рд╕ рд╣реИ (рдФрд░, рдПрдХ рд╕рд╛рдЗрдб рдиреЛрдЯ рдХреЗ рд░реВрдк рдореЗрдВ, рдХреЙрдкреАрдЯреНрд░реА рдХреЛрдб рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рднрд░рд╛ рд╣реБрдЖ рдерд╛ рдЕрдЬреАрдм рд╕реНрдерд┐рддрд┐рдпреЛрдВ рд╕реЗ рдирд┐рдкрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдВрдб-рдПрдбреНрд╕ - рдкреЗрдбрд╝, рд╕реЙрдХреЗрдЯ рдЖрджрд┐ рдореЗрдВ tmpdir)ред
  • рдкрд┐рдЫрд▓реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдореЗрдВ рдЕрднреА рднреА рд╢реБрджреНрдзрддрд╛ рдФрд░ рдкреНрд░рджрд░реНрд╢рди рд╕рдВрдмрдВрдзреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛрдВрдЧреАред
  • рдПрдХ рд╕рд╣реА рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдмрд┐рд▓реНрдб рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдХ-рдПрдВрдб рд╕рдорд░реНрдерди рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛ рдЬреЛ рдЖрдЬ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, setuptools bdist_wheel рдореЗрдВ --bdist-dir , рд▓реЗрдХрд┐рди рдлрд┐рд░ рднреА .egg-info рдореЗрдВ рд▓рд┐рдЦрддрд╛ рд╣реИ рдЬрдЧрд╣, https://github.com/pypa/setuptools/issues/1816, https://github.com/pypa/setuptools/issues/1825) рднреА рджреЗрдЦреЗрдВред рддреЛ рдЕрдм рдЬрдм рдкрд╛рдЗрдк рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИ рддреЛ рдЪрд░реНрдЪрд╛ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИ рдХрд┐, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╕реЗрдЯрдЕрдкрдЯреВрд▓ рд╕реНрд░реЛрдд рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЫреВрдП рдмрд┐рдирд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рд╡рд┐рдХрд╕рд┐рдд рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдлрд┐рд░ рджреЗрдЦреЗрдВ рдХрд┐ рдЙрд╕ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдИрдкреА 517 рдкрд░рд┐рд╡рд░реНрддрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред
  • рдЗрд╕ рдмреАрдЪ, рд░рд┐рдкреЛрд░реНрдЯ рдХрд┐рдП рдЧрдП рдореБрджреНрджреЛрдВ рдХреЛ рдХреЙрд▓ рдХрд░рдиреЗ рд╡рд╛рд▓реЛрдВ рджреНрд╡рд╛рд░рд╛ рдХрд╛рдо рдХрд░рдирд╛ рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдЖрд╕рд╛рди рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЦреБрдж рдХреЛ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдХреЙрдкреА рдХрд░рдХреЗ, рдпрд╛ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдЯреИрд░рдмреЙрд▓ рдмрдирд╛рдХрд░, рдЬреЛ рд╡реЗ рд╕рдВрджрд░реНрдн рдХреЗ рдкреВрд░реНрдг рдЬреНрдЮрд╛рди рдХреЗ рд╕рд╛рде рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред
  • рдЕрдВрдд рдореЗрдВ, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдореМрдЬреВрдж рдбреЗрдЯрд╛ рдХреЗ рд╕рд╛рде рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдмрддрд╛рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░рд╛ рдЕрдВрддрд░реНрдЬреНрдЮрд╛рди рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдкрд░рд┐рд╡рд░реНрддрди рдЕрдзрд┐рдХ рд▓реЛрдЧреЛрдВ рдХреА рдорджрдж рдХрд░рддрд╛ рд╣реИ рдЬрд┐рддрдирд╛ рдХрд┐ рдЗрд╕рд╕реЗ рдиреБрдХрд╕рд╛рди рд╣реЛрддрд╛ рд╣реИред

рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЛ рддреЛрдбрд╝рдиреЗ рд╕реЗ рдирдлрд░рдд рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рд╣рд▓реНрдХреЗ рдврдВрдЧ рд╕реЗ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдЗрди рдХрд╛рд░рдгреЛрдВ рд╕реЗ, рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЗрд╕реЗ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдЪреНрдЫреБрдХ рд╣реВрдВред

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

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

рдореИрдВрдиреЗ "рд╕рд╣реА рдврдВрдЧ рд╕реЗ" рд╢рдмреНрдж рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ pip wheel <localdir> рдФрд░ pip install <localdir> рд╕реЗ рдкрд╣рд▓реЗ рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ cd <localdir> ; setup.py bdist_wheel рддреБрд▓рдирд╛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдкрд╣рд┐рдпрд╛ рдЙрддреНрдкрдиреНрди рдХрд░ рд░рд╣реЗ рдереЗ: рд╕рд┐рдореНрд▓рд┐рдВрдХ рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╡рд┐рднрд┐рдиреНрди рд▓рд╛рдкрддрд╛ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд╕рд╛рде (# 3500), рдпрд╛ setuptools_scm (#7549), рдпрд╛ https://github.com/pypa/pip/issues/7555#issuecomment -595180864, тАЛтАЛрдпрд╛ #6276, рдпрд╛ рд╕рд╛рдорд╛рдиреНрдп рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рд╕рдВрд╕реНрдХрд░рдгред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдкреАрдЖрдИрдкреА 20.1 рдРрд╕реЗ рдЦрд░рд╛рдм рдкрд╣рд┐рдпреЗ/рдЗрдВрд╕реНрдЯреЙрд▓ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрд╕ рдЕрд░реНрде рдореЗрдВ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдзрд┐рдХ рд╕рд╣реА рд╣реИред

рдмреЗрд╢рдХ рд╣рдо рдЬрд╛рдирддреЗ рдереЗ рдХрд┐ рдкрд░рд┐рд╡рд░реНрддрди рдХреБрдЫ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЛ рддреЛрдбрд╝ рджреЗрдЧрд╛ рдФрд░ рдЯреНрд░реЗрдбрдСрдлрд╝ рдХрд╛ рдЕрдм рдкреБрдирд░реНрдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╣реИ, рдФрд░ рдЕрдЪреНрдЫреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдкрд╕ рдпрд╛ рдкреБрд╖реНрдЯрд┐ рдХреА рдЬрд╛рдиреА рдЪрд╛рд╣рд┐рдПред

рдФрд░ рдпрд╣ рдЕрднреА рднреА setup.py sdist && pip install dist/*.tar.gz рд╕реЗ рднрд┐рдиреНрди рдкрд╣рд┐рдпреЛрдВ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдореЗрд░рд╛ рд╕реБрдЭрд╛рд╡ рд╣реЛрдЧрд╛ рдХрд┐ рдкреАрдЖрд░ рдХреЛ рд╡рд╛рдкрд╕ рд▓рд╛рдпрд╛ рдЬрд╛рдП рдФрд░ рдкрд╣рд▓реЗ рдПрд╕рдбрд┐рд╕реНрдЯ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдлреЗрд░рдмрджрд▓ рдХрд░рдХреЗ рдФрд░ рдлрд┐рд░ рдкрд░рд┐рдгрд╛рдореА рдПрд╕рдбрд┐рд╕реНрдЯ рд╕реЗ рдПрдХ рдкрд╣рд┐рдпрд╛ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рдХреЗ рдлрд┐рдХреНрд╕ рдХреЛ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛рдПред

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

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

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

рдЬреИрд╕рд╛ рдХрд┐ рдкреБрд░рд╛рдиреА рдХрд╣рд╛рд╡рдд рд╣реИ, рдкрд╣рд▓реЗ рдЗрд╕реЗ рд╕рд╣реА рдХрд░реЗрдВ, рдлрд┐рд░ рдЗрд╕реЗ рддреЗрдЬ рдХрд░реЗрдВред рдореБрдЭреЗ рдбрд░ рд╣реИ рдХрд┐ рдЗрд╕ рдкреАрдЖрд░ рдХреЗ рд╕рд╛рде рд╣рдордиреЗ рдЗрд╕реЗ рддреЗрдЬ рдХрд░ рджрд┐рдпрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ рд╕рд╣реА рдХрд░рдиреЗ рдХреА рд╣рдорд╛рд░реА рдХреНрд╖рдорддрд╛ рдХреЛ рдмрдВрдж рдХрд░ рджрд┐рдпрд╛ рд╣реИред

рдореИрдВ рдЕрднреА рднреА рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ sdists рдХреЛ рдорд╛рдиреНрдп рдХрд░рдирд╛ рд╡рд╛рдВрдЫрдиреАрдп рд╣реИ рд▓реЗрдХрд┐рди рдкрд╛рдЗрдк рд╕реНрдерд╛рдкрд┐рдд рд╕рдордп рдкрд░ рдирд╣реАрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рднрд╡рд┐рд╖реНрдп рдХреЗ sdist рдмрд┐рд▓реНрдбрд░ рдЯреВрд▓ рдпрд╛ pip рдмрд┐рд▓реНрдб рдХрдорд╛рдВрдб рдХреА рд╡рд┐рд╢реЗрд╖рддрд╛ рд╣реЛред

рд╕рд╛рде рд╣реА, setup.py sdist рд╕реНрдерд╛рдиреАрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ .egg-info рдмрдирд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓-рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдбреАрдЖрдИрдЖрд░ рдпрд╛ рд╕рдорд╡рд░реНрддреА рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рд░рд┐рдкреЛрд░реНрдЯ рдХреА рдЧрдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рдмрдиреА рд░рд╣реЗрдВрдЧреАред

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

рдХреБрдЫ рдкреНрд░рджрд░реНрд╢рди рдореБрджреНрджреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдлрд┐рд░ рд╕реЗ рдкреНрд░рдХрдЯ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐/рдЬрдм sdist рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡реЗ рд╢рд╛рдпрдж рдкрд╛рдЗрдк <20.1 рдореЗрдВ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдо рдкрд░рд┐рдорд╛рдг рдХрд╛ рдПрдХ рдХреНрд░рдо рд╣реЛрдЧрд╛ред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЕрдХреНрд╕рд░ .git , рдпрд╛ рдПрдХ venv , рдпрд╛ рдЕрдиреНрдп рдЕрд╕рдВрдмрдВрдзрд┐рдд рд╕реНрд╡реИрдЪреНрдЫрд┐рдХ рд╕рд╛рдорд╛рди рдХреА рдирдХрд▓ рдХрд░рдиреЗ рд╕реЗ рдирд┐рдХрд▓реЗ рдЬреЛ sdist рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдВрдЧреЗред

рднрд▓реЗ рд╣реА pip 'рдЖрдЦрд┐рд░рдХрд╛рд░ рдХреНрдпрд╛ рд╣реЛрдЧрд╛, рдХреНрдпрд╛ рд╣рдо рджреВрд╕рд░реЗ рдХреЛ рдПрдХ рд╡рд┐рдХрд▓реНрдк рдмрдирд╛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╛ рддреЛ рд╕рднреА рдХреЛ рд╕рдВрддреБрд╖реНрдЯ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ? рдореИрдВ рдХрд▓реНрдкрдирд╛ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдпрджрд┐ рд╡рд░реНрддрдорд╛рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рд░рдЦрд╛ рдЬрд╛рдирд╛ рд╣реИ (рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреЛрдИ рд░рд╛рдп рдирд╣реАрдВ рд╣реИ рдЬрд┐рд╕ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП), рд╣рдореЗрдВ рдЕрдВрддрд┐рдо-рдкрд░рд┐рдгрд╛рдо рдлрд╝реЙрд▓рдмреИрдХ рдкреНрд░рджрд╛рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдЬрд╣рд╛рдВ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ sdist рдмрдирд╛рдиреЗ рдФрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдЪреБрди рд╕рдХрддрд╛ рд╣реИ рд╡рд╣рд╛рдВ рд╕реЗ рдкреИрдХреЗрдЬред

рд╕рд╛рде рд╣реА, setup.py sdist рд╕реНрдерд╛рдиреАрдп рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ .egg-info setup.py sdist рдмрдирд╛рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓-рдкрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрдд рдбреАрдЖрдИрдЖрд░ рдпрд╛ рд╕рдорд╡рд░реНрддреА рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рд░рд┐рдкреЛрд░реНрдЯ рдХреА рдЧрдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рдмрдиреА рд░рд╣реЗрдВрдЧреАред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ (рдХрдо рд╕реЗ рдХрдо рдПрдХ рддреНрд╡рд░рд┐рдд рдкрд░реАрдХреНрд╖рдг рдореЗрд░реЗ рд╕рд╛рде рд╕рд╣рдордд рд╣реИ) рдХрд┐ рдХреЗрд╡рд▓ setuptools (рдирд╣реАрдВ distutils ) рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдпрд╣ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╣реАрдВ рдФрд░ рдбреАрдЖрдИрдЖрд░ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд╣реИред рдЕрдиреНрдп рдмреИрдХрдПрдВрдб рдХреЗ рд╕рдорд╛рди, рд╣рдо рдЙрдиреНрд╣реЗрдВ рдПрдХ рд╕реНрд╡рдЪреНрдЫ sdist рдкреАрдврд╝реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрд╢рдВрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдПрдлрдбрдмреНрд▓реНрдпреВрдЖрдИрдбрдмреНрд▓реНрдпреВ, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рд╣рдореЗрдВ sdist- рдкреАрдврд╝реА --egg-info рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдбрдВрдк рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рдЕрдЧрд░ рд╣рдо рдЬрдирд░реЗрдЯ-рдПрд╕рдбреАрдбрд┐рд╕реНрдЯ-рдЕрдирдкреИрдХ-рдЗрдЯ-рдмрд┐рд▓реНрдб-рд╡реНрд╣реАрд▓ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдиреАрдЪреЗ рдЬрд╛рддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЙрд╕реЗ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдбрдВрдк рдХрд░реЗрдВ, рдЬреИрд╕реЗ рд╣рдо generate_metadata ред

@pradyunsg рдХреЛ sdist рдХрдорд╛рдВрдб рдореЗрдВ .egg-info рдЖрдзрд╛рд░ рд╕реНрдерд╛рди рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдирд╣реАрдВ рдерд╛, рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд egg_info рдЬрд┐рд╕рдореЗрдВ --egg-base рд╡рд┐рдХрд▓реНрдк рд╣реИ рдЬрд┐рд╕рдХрд╛ рд╣рдордиреЗ рд▓рд╛рдн рдЙрдард╛рдпрд╛ рд╣реИ # 7978 рдореЗрдВред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ! рдореИрдВ setuptools рдореЗрдВ рдЧрд▓рдд рдлрд╛рдЗрд▓ рджреЗрдЦ рд░рд╣рд╛ рдерд╛ред рдореИрдВ рд╕рд╣реА рдЦрдбрд╝рд╛ рд╣реВрдБред

рдЗрд╕ рдЕрдВрддрд░рд┐рдХреНрд╖ рдореЗрдВ рд╕рдм рдХреБрдЫ рдЗрддрдирд╛ рдЬрдЯрд┐рд▓ рдХреНрдпреЛрдВ рд╣реИ? :(

$  ls -la
total 8
drwxr-xr-x  3 dstufft  staff   96 May  6 14:26 .
drwxr-xr-x  9 dstufft  staff  288 Apr 28 15:46 ..
-rw-r--r--  1 dstufft  staff   85 Apr 23 16:23 setup.py

$  py setup.py egg_info --egg-base /tmp/foo sdist
/Users/dstufft/.pyenv/versions/3.8.2/lib/python3.8/site-packages/setuptools/dist.py:471: UserWarning: Normalizing '2020.04.23.3' to '2020.4.23.3'
  warnings.warn(
running egg_info
creating /tmp/foo/dstufft.testpkg.egg-info
writing /tmp/foo/dstufft.testpkg.egg-info/PKG-INFO
writing dependency_links to /tmp/foo/dstufft.testpkg.egg-info/dependency_links.txt
writing top-level names to /tmp/foo/dstufft.testpkg.egg-info/top_level.txt
writing manifest file '/tmp/foo/dstufft.testpkg.egg-info/SOURCES.txt'
reading manifest file '/tmp/foo/dstufft.testpkg.egg-info/SOURCES.txt'
writing manifest file '/tmp/foo/dstufft.testpkg.egg-info/SOURCES.txt'
running sdist
warning: sdist: standard file not found: should have one of README, README.rst, README.txt, README.md

running check
warning: Check: missing required meta-data: url

warning: Check: missing meta-data: either (author and author_email) or (maintainer and maintainer_email) must be supplied

creating dstufft.testpkg-2020.4.23.3
copying files to dstufft.testpkg-2020.4.23.3...
copying setup.py -> dstufft.testpkg-2020.4.23.3
Writing dstufft.testpkg-2020.4.23.3/setup.cfg
creating dist
Creating tar archive
removing 'dstufft.testpkg-2020.4.23.3' (and everything under it)

$ ls -la                                        
total 8
drwxr-xr-x  4 dstufft  staff  128 May  6 14:28 .
drwxr-xr-x  9 dstufft  staff  288 Apr 28 15:46 ..
drwxr-xr-x  3 dstufft  staff   96 May  6 14:28 dist
-rw-r--r--  1 dstufft  staff   85 Apr 23 16:23 setup.py

https://github.com/pypa/pip/issues/8165#issuecomment -624669107 рдпрд╣ рдПрдХ рд╕реБрдВрджрд░ рд╢реЛ рд╕реНрдЯреЙрдкрд┐рдВрдЧ рдмрдЧ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ, рдпрдХреАрдирди рд╣рдорд╛рд░реА рдмрдЧ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рдкреНрд░рдХрд╛рд░ рдХреА рдмрдЧ рд╣реИ рдЬреЛ рдореИрдВрдиреЗ рддрд░реНрдХ рджрд┐рдпрд╛ рдХрд┐ рдкреАрдИрдкреА 517 рдЪрд░реНрдЪрд╛ рдХреЗ рджреМрд░рд╛рди рд╣реЛрдЧрд╛ рдЬрдм рдЬрдЧрд╣ рдореЗрдВ рдХрд░рдирд╛ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдмрдирд╛рддрд╛ рд╣реИред

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

рдпрджрд┐ рдпрд╣ рд╕реНрдХреИрди рдерд╛ рддреЛ рдпрд╣ рдЙрди рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдпрд╛рдж рд░рдЦреЗрдЧрд╛ рдЬрд┐рдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдпрд╣ рдкрд░рд╡рд╛рд╣ рдХрд░рддрд╛ рд╣реИ рдФрд░ рд╡реНрд╣реАрд▓ рд╕реЗ рдмрд┐рд▓реНрдб/рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджреЗрдЧрд╛, рднрд▓реЗ рд╣реА рд╡реЗ рдлрд╛рдЗрд▓ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рдореМрдЬреВрдж рд╣реЛрдВред

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

рдмрд┐рд▓реНрдб рдбрд╛рдпрд░реЗрдХреНрдЯрд░реА рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рд╕рд╛рдл рдХрд░рдиреЗ рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдпрд╣ рдХреЗрд╡рд▓ рдЗрд╕рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХрдо рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рд╕рдорд╛рдирд╛рдВрддрд░ рдореЗрдВ рджреЛ pip wheel рдЗрдирд╡реЛрдХреЗрд╢рди рдЪрд▓рд╛рдирд╛ рдЕрднреА рднреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдЯреНрд░рд┐рдЧрд░ рдХрд░ рд╕рдХрддрд╛ рд╣реИ), рдЗрд╕рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдП рдХрдерд┐рдд рдХрд╛рд░рдгреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИ рдЗрд╕ рддрд░рд╣ (рдХрдо рд╕реЗ рдХрдо рдкреАрдИрдкреА 517 рдЪрд░реНрдЪрд╛ рдХреЗ рджреМрд░рд╛рди) рдпрд╣ рдерд╛ рдХрд┐ рдпрд╣ рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдмрд┐рд▓реНрдб рдХреЗ рд▓рд┐рдП рдЖрдордВрддреНрд░рдгреЛрдВ рдХреЗ рдмреАрдЪ рдХреИрд╢рд┐рдВрдЧ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдХрд░ рдЕрдзрд┐рдХ рдкреНрд░рджрд░реНрд╢рди рдкреНрд░рджрд╛рди рдХрд░реЗрдЧрд╛ред IOW рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рд╡рд╣ рд╣реИ рдЬреЛ рдХреБрдЫ рд╕рдмрд╕реЗрдЯ рдЪрд╛рд╣рддрд╛ рдерд╛, рд░рдиреЛрдВ рдХреЗ рдмреАрдЪ рдирд┐рд░реНрдорд╛рдг рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛, рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдЕрдм рддрдХ рдХрд╛ рд╕рдмрд╕реЗ рдЖрдо рдмрд┐рд▓реНрдб рдмреИрдХрдПрдВрдб рдмрд╣реБрдд рдЧрд▓рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ (рдФрд░ рдпрдХреАрдирди рдХреБрдЫ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЗрд╕реЗ рд╕рд╣реА рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ рдкреНрд░рддрд┐ рдкреИрдХреЗрдЬ рдЕрдиреБрдХреВрд▓рди)ред

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд setuptools рдХрдорд╛рдВрдб рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЭрдВрдбреЗ рдХреЗ рд╕рд╛рде рдЖрдк рдЗрд╕рдХрд╛ рд╕рдорд╛рдзрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ( py setup.py egg_info --egg-base /tmp/foo build --build-base /tmp/foo/build-base bdist_wheel --bdist-dir /tmp/foo/bdist рдЬреИрд╕рд╛ рдХреБрдЫ рдРрд╕рд╛ рдХрд░реЗрдЧрд╛)ред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореИрдВ рджреЛрд╣рд░рд╛рддрд╛ рд╣реВрдВ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЕрддрд┐рд░рд┐рдХреНрдд рдлрд╛рдЗрд▓реЗрдВ рдирд╣реАрдВ рд╣реИ, рдпрд╣ рдЕрдкреЗрдХреНрд╖рд┐рдд рдПрдмреАрдЖрдИ рд╣реИ рдХрд┐ рдкрд╣рд┐рдпрд╛ рдмрджрд▓реЗ рдХреЗ рд╕рд╛рде рд╕рдВрдЧрдд рдерд╛, рдФрд░ .so рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдпрджрд┐ рд╕реНрдХреИрди рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕реНрдорд╛рд░реНрдЯ рд╣реИ рдХрд┐ рдкрд╛рдЗрдорд▓реЛрдХ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдорд┐рдд рдкрд╛рдпрдерди рдХреЛ рдПрдХ рдмрд┐рд▓реНрдб рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрдорд┐рдд рдкрд╛рдпрдерди (рдиреНрдпреВрдордкреА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдЬреИрд╕реА рдЪреАрдЬреЛрдВ рд╕рд╣рд┐рдд .so рд▓рд┐рдВрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ) рддреЛ рдпрд╣ рдкреНрд░рднрд╛рд╡рд┐рдд рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдПрдХ рдЕрд▓рдЧ рдПрдмреАрдЖрдИ рдХреЗ рд╕рд╛рде рдкрд╣рд▓реЗ рд╕реЗ рдирд┐рд░реНрдорд┐рдд рдЖрд░реНрдЯрд┐рдлреИрдХреНрдЯ рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░реЗрдЧрд╛ рддреЛ рдпрд╣ рдкреНрд░рднрд╛рд╡рд┐рдд рд╣реЛрддрд╛ рд╣реИред

рдореИрдВрдиреЗ enscons рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд┐рдирд╛ rsalette рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдорд┐рд▓рд╛ред

рдореИрдВрдиреЗ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХрд┐рдХрд┐рдЯ-рдмрд┐рд▓реНрдб рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдмрд┐рд▓реНрдб рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рджреВрд╕рд░реЗ рдмрд┐рд▓реНрдб рдкрд░ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдбрд╛рд▓рд╛ рдФрд░ рдореБрдЭреЗ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рдмрд╛рд░ _skbuild рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╣рдЯрд╛рдирд╛ рдкрдбрд╝рд╛ред рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд┐рдирд╛ рдЪрд▓рд╛рдПрдБред

рдардВрдбрд╛ред рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ enscons рдЕрджреНрдпрддрди рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ rsalette рдирд╣реАрдВ рд╣реИред

рдмреБрдз, 6 рдордИ, 2020 рдХреЛ рд╢рд╛рдо 4:18 рдмрдЬреЗ, рдбреЛрдирд╛рд▓реНрдб рд╕реНрдЯрдл рдиреЗ рд▓рд┐рдЦрд╛:

рдореИрдВрдиреЗ enscons рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдореБрдЭреЗ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд┐рдирд╛ rsalette рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓реНрдХреБрд▓ рднреА рдирд╣реАрдВ рдорд┐рд▓рд╛ред

рдореИрдВрдиреЗ рдпрд╣ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдХрд┐рдХрд┐рдЯ-рдмрд┐рд▓реНрдб рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рд╡реГрджреНрдзрд┐рд╢реАрд▓ рдмрд┐рд▓реНрдб рдХреЛ рдХреИрд╕реЗ рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдореИрдВрдиреЗ рдЗрд╕реЗ рджреВрд╕рд░реЗ рдмрд┐рд▓реНрдб рдкрд░ рдЕрдкрдиреЗ рдЖрдк рдореЗрдВ рдбрд╛рд▓рд╛ рдФрд░ рдореБрдЭреЗ рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рд░ рдмрд╛рд░ _skbuild рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рд╣рдЯрд╛рдирд╛ рдкрдбрд╝рд╛ред рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд┐рдирд╛ рдЪрд▓рд╛рдПрдБред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub https://github.com/pypa/pip/issues/7555#issuecomment-624867490 рдкрд░ https://github.com/notifications/unsubscribe-auth/AABSZERIEDAPUIXCPAKBBUDRQHAXRANCNFSM4KCV5MHQ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд╕рдорд╛рдкреНрдд

рдХреНрд╖рдорд╛ рдХрд░реЗрдВ рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ enscons рдЕрджреНрдпрддрди рд╣реЛ рдЧрдпрд╛ рд╣реИ рдФрд░ rsalette рдирд╣реАрдВ рд╣реИред

рдХреНрдпрд╛ рдХреЛрдИ рдЕрдЪреНрдЫрд╛ рд╕реА рдПрдХреНрд╕рдЯреЗрдВрд╢рди рд╣реИ рдЬреЛ рдЕрджреНрдпрддрди рдХрд┐рдП рдЧрдП enscons рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ? рдореИрдВрдиреЗ рд╕рд┐рд░реНрдл rsalette рдЪреБрдирд╛ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рд╕реВрдЪреА рдореЗрдВ рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ рдерд╛ рдФрд░ рдЗрд╕реЗ рдбрд┐рдмрдЧ рдХрд░рдиреЗ рдХрд╛ рдорди рдирд╣реАрдВ рдерд╛, рдХрд┐рд╕реА рдФрд░ рдЪреАрдЬ рдХреЗ рд╕рд╛рде рдкреНрд░рдпрд╛рд╕ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реБрдИред

rsalette рд╕рд╛рде рдПрдХрдорд╛рддреНрд░ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕реЗ рд╕реНрдХреИрдирд╕реНрдЯреНрд░рдХреНрдЪрд░ рдореЗрдВ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреЛ ROOT_IS_PURELIB рдкрд╛рд╕ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдореЗрдВ C рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдирд╣реАрдВ рд╣реИред cryptacular рдареАрдХ рд▓рдЧ рд░рд╣рд╛ рд╣реИред

#8165 (рдЯрд┐рдкреНрдкрдгреА)

рдЗрд╕рдХреЗ рд╕рд╛рде, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕ рдмрд╛рдд рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рдмрджрд▓рд╛рд╡ рдХреЛ рд╡рд╛рдкрд╕ рд▓рд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдирдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЕрдкреЗрдХреНрд╖рд╛ рд╕реЗ рдмрд╣реБрдд рдмрдбрд╝реА рд╣реИрдВред рд╢рд╛рдпрдж рдПрдХ рддреНрд╡рд░рд┐рдд 20.1.1 рд╡рд╛рдкрд╕ рд▓реМрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдлрд┐рд░ рд╣рдо рдЗрди-рдЯреНрд░реА рдФрд░ рдЖрдЙрдЯ-рдСрдл-рдЯреНрд░реА рдмрд┐рд▓реНрдб рджреЛрдиреЛрдВ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓рдВрдмреА рдЪрд░реНрдЪрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ?

рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╛рдзрд╛рди рдХреЗ рд░реВрдк рдореЗрдВ https://discuss.python.org/t/proposal-adding-a-persistent-cache-directory-to-pep-517-hooks/2303/15 рдХреЛ рд╡рд╛рдкрд╕ рдХрд░рдиреЗ рдФрд░ рдЙрд╕рдХрд╛ рдЕрдиреБрд╕рд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рднреА рд╡реЛрдЯ рдХрд░рддрд╛ рд╣реВрдВ (рдЬреЛ рд╣реЛрдЧрд╛ рдмреИрдХрдПрдВрдб рдХреЛ рдЬрдЧрд╣ рдореЗрдВ рдирд╣реАрдВ рдмрдирд╛рдиреЗ рджреЗрдВ, рдЗрд╕рд▓рд┐рдП рдРрд╕реЗ рдореБрджреНрджреЛрдВ рдХреЛ рдЙрдЬрд╛рдЧрд░ рди рдХрд░реЗрдВ)ред рдпрджрд┐ рдЖрдк рд╡рд╣рд╛рдВ рдХреЗ рд╕реБрдЭрд╛рд╡ рд╕реЗ рд╕рд╣рдордд рд╣реИрдВ рддреЛ рдЙрд╕ рд╕реВрддреНрд░ рдкрд░ рднреА рдзреНрдпрд╛рди рджреЗрдВред

рдпрд╣ рдореБрдЭреЗ рднреА рд╕рдордЭрджрд╛рд░ рд▓рдЧрддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдЗрди-рдЯреНрд░реА (рдпрд╛ рдмрд┐рд▓реНрдб-рдлреНрд░реЙрдо-рдПрд╕рдбреАрдПрд╕рдЯреА) рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рдХреБрдЫ рдЕрддреНрдпрдВрдд рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рд╛рдн рд╣реИрдВ (рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдЬрдм рд╣рдо ЁЯЩВ рд╡рд╛рдкрд╕ рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдореЗрдВ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЖрдзрд╛рд░ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рд╕реЗ рд╢рд┐рдХрд╛рдпрдд рдХреА рд╢рд┐рдХрд╛рдпрдд рдорд┐рд▓реЗрдЧреА) рд▓реЗрдХрд┐рди рдбрд╛рдЙрдирд╕рд╛рдЗрдбреНрд╕ рднреА рд╣реИрдВ рд╕рд╛рд░реНрдердХред

рдореИрдВ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реВрдВ рдХрд┐ рдпрд╣рд╛рдВ рдпреВрдЖрдИ рдХреНрдпрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рдХрд┐рд╕ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ? рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХрд┐рд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╡рд┐рдХрд▓реНрдк рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП?) рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдФрд░ рд╕рдордп рд▓реЗрдирд╛ рдЪрд╛рд╣рд┐рдП, рдмрдЬрд╛рдп рдореМрдЬреВрджрд╛ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЛ рдЕрдЧреНрдирд┐рд╢рд╛рдордХ рдХрд░рддреЗ рд╣реБрдП рдирд┐рд░реНрдгрдп рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдПред .

рдареАрдХ рд╣реИ! рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдо рд╕рд╣рдорддрд┐ рд╡рд╛рдкрд╕ рд▓реМрдЯрдиреЗ рдФрд░ рдкреБрдирд░реНрдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИред рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ рдлрд╛рдЗрд▓ рдХрд░реВрдВрдЧрд╛ред :)

рдпрджрд┐ рдЖрдк рд╡рд╣рд╛рдВ рдХреЗ рд╕реБрдЭрд╛рд╡ рд╕реЗ рд╕рд╣рдордд рд╣реИрдВ рддреЛ рдЙрд╕ рд╕реВрддреНрд░ рдкрд░ рднреА рдзреНрдпрд╛рди рджреЗрдВред

рдХреГрдкрдпрд╛ рдХрд░реЗрдВ - рдореИрдВ рдЯрд┐рдкреНрдкрдгреА рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдореИрдВ рдЙрд╕ рдмрд┐рдВрджреБ рдкрд░ рдкрд╣реБрдВрдЪ рдЧрдпрд╛ рд╣реВрдВ рдЬрд╣рд╛рдВ рдореБрдЭреЗ рд╕рд╛рд░реНрдердХ рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирдХрд╛рд░реА рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдзрд┐рдХ рдЕрдиреБрднрд╡ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рд╕реЗ рдЗрдирдкреБрдЯ рдореВрд▓реНрдпрд╡рд╛рди рд╣реЛрдЧрд╛ред

https://github.com/pypa/pip/issues/8165#issuecomment -625401463 рдореЗрдВ рдмрд╕ рдХреБрдЫ рдмрдбрд╝реЗ-рдмреВрдБрдж-рдкрд╛рда рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ред рдореИрдВ рдЖрдЬ рдХреЗ рд▓рд┐рдП рджреВрд░ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБ... рдЕрдВрдд рдореЗрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдиреЛрдЯреНрд╕ рд▓рд┐рдЦрддреЗ рд╕рдордп рдореБрдЭреЗ рдереЛрдбрд╝реА рдирд┐рд░рд╛рд╢рд╛ рд╣реБрдИред # 5599 рдХреЛ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдФрд░ рдирдХрд╛рд░рд╛рддреНрдордХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рд╕реЗ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓реАред

рд╣рд╛рдп рджреЛрд╕реНрддреЛрдВ, рдореИрдВрдиреЗ рдЗрд╕ рдкрд░ рдХреБрдЫ рдФрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛, рдЗрд╕ рдорд╛рдорд▓реЗ рдкрд░ рдореЗрд░рд╛ рд╡рд░реНрддрдорд╛рди рджреГрд╖реНрдЯрд┐рдХреЛрдг рд╣реИред

  1. рдПрдХ sdist рдЬрдЧрд╣ рдкрд░ рдмрдирд╛рдПрдБ, sdist рдХреЛ рдПрдХ рдЕрд╕реНрдерд╛рдпреА рд╕реНрдерд╛рди рдкрд░ рдЕрдирдкреИрдХ рдХрд░реЗрдВ, рдлрд┐рд░ рдЙрд╕рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВред

рдореЗрд░рд╛ рдЕрдм рднреА рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЦрд░рд╛рдм рдПрд╕рдбреАрд╕реНрдЯ рдХреЛ рдкрдХрдбрд╝рдиреЗ рдФрд░ рдкрдХрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рдЗрдВрд╕реНрдЯрд╛рд▓/рдкрд╛рдЗрдк рд╡реНрд╣реАрд▓ рд╕рд╣реА рдЬрдЧрд╣ рдирд╣реАрдВ рд╣реИред рдХреНрдпрд╛ рдпрд╣ рдПрдХ рдмреИрдХ-рдПрдВрдб рдЬрд┐рдореНрдореЗрджрд╛рд░реА рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдХрд┐ рдкрд╣рд▓реА рдЬрдЧрд╣ рдореЗрдВ рдЦрд░рд╛рдм sdists рди рдмрдирд╛рдПрдВ? рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ sdist рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдмрд┐рдирд╛ рд╢рд░реНрдд рдирд┐рд░реНрдорд╛рдг рд╢рд╛рдпрдж рдЬрдЧрд╣ рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд░реВрдк рдореЗрдВ рд╡рд┐рдШрдЯрдирдХрд╛рд░реА рд╣реИред

  1. рдЬрдЧрд╣ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд┐рдк рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝реЗрдВред

рдореБрдЭреЗ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд╢реЙрд░реНрдЯ рдЯрд░реНрдо рдкрд╕рдВрдж рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╕рдорд╛рдзрд╛рди 4 рдиреЗ рдЗрд╕реЗ рдирд╣реАрдВ рдмрдирд╛рдпрд╛ред рдХреНрдпрд╛ рдЗрд╕реЗ рдкрд┐рдк 20.1.1 рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рд╕рдордп рд╕реЗ рдкрд╣рд▓реЗ рд╣реИ?

  1. PEP 517 рдХреЛ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреЗ рддрдВрддреНрд░ рдХреЗ рд╕рд╛рде рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ рддрд╛рдХрд┐ рдмреИрдХ-рдПрдВрдб рдлреНрд░рдВрдЯ-рдПрдВрдб рд╕реЗ рд╕рдВрдЪрд╛рд░ рдХрд░ рд╕рдХреЗрдВ рдпрджрд┐ рд╡реЗ рдЗрди-рдкреНрд▓реЗрд╕ рдмрд┐рд▓реНрдб рдХреЗ рд▓рд┐рдП "рд╕реБрд░рдХреНрд╖рд┐рдд" рд╣реИрдВред

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

  1. рд╣рдореЗрд╢рд╛ рдЬрдЧрд╣ рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рдмрджрд▓реЗрдВред

рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╡рд┐рдШрдЯрдирдХрд╛рд░реА рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╣рдо 20.1.1 рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдВрдЧреЗред

  1. рдЖрдЙрдЯ-рдСрдлрд╝-рдЯреНрд░реА рдмрдирд╛рдиреЗ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЗ рд╕рд╛рде рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рдмрджрд▓реЗрдВред

рдпрд╣ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд▓рдХреНрд╖реНрдп рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХреИрд╢ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдЕрд╡рдзрд╛рд░рдгрд╛ рдХреЗ рд╕рд╛рде рдЖрдЙрдЯ-рдСрдл-рдЯреНрд░реА рд╕рдореНрдорд┐рд╢реНрд░рдг рдмрдирд╛рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк?

рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕реАрдПрд▓рдЖрдИ рд╡рд┐рдХрд▓реНрдк рдкрд╕рдВрдж рдирд╣реАрдВ рд╣реИрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рдХрд▓реНрдкред рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдореИрдВ рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рдПрдлрдПрд╕ рдкрд░ рджреЛ рдкреИрдХреЗрдЬ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рдПрдХ рдЬрдЧрд╣ рдмрдирд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдФрд░ рдПрдХ рдирд╣реАрдВ? рдпрджрд┐ рд╣рдо рдПрдХ рдпрд╛ рджреВрд╕рд░реЗ рдХреЛ рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ рддреЛ рдореМрдЬреВрджрд╛ рдкреИрдХреЗрдЬ рд╕рдорд╛рдкреНрдд рд╣реЛрдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдХреЗрд╡рд▓ рдПрдХ рдпрд╛ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдпрд╣ рдореБрдЭреЗ рдЙрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреА рддрд░рд╣ рднреА рдорд╣рдХрддрд╛ рд╣реИ рдЬреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдореМрдЬреВрдж рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХрд┐рд╕реА рдирд┐рд░реНрдгрдп рдкрд░ рдЖрдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде рдереА, рдФрд░ рдЙрд╕ рдирд┐рд░реНрдгрдп рдХреЛ рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рддрдХ рдкрд╣реБрдВрдЪрд╛рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред

sdist рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд░рдирд╛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЦрд░рд╛рдм sdists рдХреЛ рдкрдХрдбрд╝рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдирд╣реАрдВ рд╣реИред рдмрдбрд╝реЗ рд╣рд┐рд╕реНрд╕реЗ рдореЗрдВ рдпрд╣ "рдкрде" рдХреА рд╕рдВрднрд╛рд╡рд┐рдд рд╡рд┐рд╡рд┐рдзрддрд╛рдУрдВ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ рдЬреЛ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕рдорд╛рдкреНрдд рд╣реЛ рд╕рдХрддреА рд╣реИред рдХреБрдЫ рддрд░реАрдХреЛрдВ рд╕реЗ рдЭрдВрдбрд╛ рдЬреЛрдбрд╝рдирд╛ рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдмреЗрд╣рддрд░ рдирд╣реАрдВ рдмрд▓реНрдХрд┐ рдмрджрддрд░ рдмрдирд╛ рджреЗрддрд╛ рд╣реИред

рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдХреБрдЫ "рдкрде" рд╣реИрдВ рдЬреЛ рдЗрдВрд╕реНрдЯреЙрд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ:

  1. рд╡реАрд╕реАрдПрд╕ -> рдПрд╕рдбрд┐рд╕реНрдЯ -> рд╡реНрд╣реАрд▓ -> рд╕реНрдерд╛рдкрд┐рдд
  2. рд╡реАрд╕реАрдПрд╕ -> рд╡реНрд╣реАрд▓ -> рд╕реНрдерд╛рдкрд┐рдд
  3. рд╡реАрд╕реАрдПрд╕ -> рд╕реНрдерд╛рдкрд┐рдд (рд╡рд┐рд░рд╛рд╕рдд)

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

рд╣рдо рдпрд╛ рддреЛ рдПрдХ sdist рдпрд╛ рдПрдХ рдкрд╣рд┐рдпрд╛ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕реЗ PyPI рдкрд░ рдЕрдкрд▓реЛрдб рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ рдФрд░ рдЙрд╕ рд╕реЗ рдЙрд╕реА "рдкрде" рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрдирдиреЗ рддрдХ рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдЖрдк рдмрд╕ рдЗрд╕реЗ рд░реЛрдХ рд░рд╣реЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдХрд┐рд╕реА рдЕрдиреНрдп рдХрдВрдкреНрдпреВрдЯрд░ рдкрд░ рд╕рдорд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрдИ "рдкрде" рд╣реЛрдиреЗ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдореА рд╕реНрдерд╛рдкрдирд╛ рдореЗрдВ рд╡рд┐рд╕рдВрдЧрддрд┐рдпреЛрдВ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддрд╛ рд╣реИред рд╡реЗ рд╣рдореЗрд╢рд╛ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрд╕рд╛рдиреА рд╕реЗ рджреЗрдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдХреНрд╕рд░ рд╣реЛрддрд╛ рд╣реИред рдХрдИ рдмрд╛рд░ рдпреЗ рд╡рд┐рд╕рдВрдЧрддрд┐рдпрд╛рдВ рдХреЛрдИ рдмрдбрд╝реА рдмрд╛рдд рдирд╣реАрдВ рд╣реЛрддреА рд╣реИрдВ, рд▓реЗрдХрд┐рди рдХрднреА-рдХрднреА рд╣реЛрддреА рд╣реИрдВред

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

рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рд▓рд╛рдн рдХреЗ рд░реВрдк рдореЗрдВ, рдпрд╣ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЬрдмрд░рджрд╕реНрдд рдХрд╛рд░реНрдп рдХреЗ рд░реВрдк рдореЗрдВ рднреА рдХрд╛рд░реНрдп рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЦреБрд╢ рдкрде рдЦреБрд╢ рд░рд╣реЗред

рдЕрдзрд┐рдХрддрд░ рдореИрдВ @dstufft рд╕реЗ рд╕рд╣рдордд

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореИрдВ рдПрдХ рдмрд┐рдВрджреБ рдкрд░ рдЙрдард╛рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдБ:

рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдореИрдВ рдЕрдкрдиреЗ рд╕реНрдерд╛рдиреАрдп рдПрдлрдПрд╕ рдкрд░ рджреЛ рдкреИрдХреЗрдЬ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реВрдВ рдФрд░ рдореБрдЭреЗ рдПрдХ рдЬрдЧрд╣ рдмрдирд╛рдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИ рдФрд░ рдПрдХ рдирд╣реАрдВ?

рдмрд╕ рджреЛ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдкрд╛рдЗрдк рдХреЗ рджреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд░рдиреЛрдВ рдореЗрдВ рдЪрд▓рд╛рдПрдВ?!? рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рдПрдХ рджреВрд╕рд░реЗ рдХреА рдирд┐рд░реНрднрд░рддрд╛ рд╣реЛ рдФрд░ рдЖрдкрдХреА рдмрд╛рдд рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рд▓рд╛рдЧреВ рд╣реЛ, рд▓реЗрдХрд┐рди рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдпрд╣ рдорд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдЭреБрдХрд╛рд╡ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рд╕реНрдерд╛рдкрд┐рдд рдкрд░рд┐рджреГрд╢реНрдп рдХреЛ рдкрд╛рдЗрдк рдХреЗ рдПрдХ рд╣реА рд░рди рдореЗрдВ рдврд╣рдирд╛ рдкрдбрд╝рддрд╛ рд╣реИ, рдФрд░ рдореИрдВ рдирд╣реАрдВ рдХрд░рддрд╛ ' рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдпрд╣ рдЙрдЪрд┐рдд рд╣реИ (рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЕрд╕реНрд╡реАрдХрд╛рд░ рдХреА рдЧрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдЪреНрдЫреЗ рдХрд╛рдордХрд╛рдЬ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ "рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдореБрдЭреЗ рдЕрдкрдиреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреА рд╕реВрдЪреА рдХреЛ рджреЛ рдореЗрдВ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛")

рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдЬрдм (рдпрджрд┐) рд╣рдо рд╡рд╛рдкрд╕ рд▓реМрдЯрддреЗ рд╣реИрдВ, рддреЛ рд╣рдореЗрдВ #6276 рдЬреИрд╕реЗ рдореБрджреНрджреЛрдВ рдХреЛ рдлрд┐рд░ рд╕реЗ рдЦреЛрд▓рдирд╛ рд╣реЛрдЧрд╛ рдЬреЛ рдЗрди-рдЯреНрд░реА рдмрд┐рд▓реНрдб рдХреЛ рд▓рд╛рдЧреВ рдХрд░рдиреЗ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдмрдВрдж рд╣реЛ рдЧрдпрд╛ рдерд╛ред

рд╕рдорд╕реНрдпрд╛ рдХрд╛ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рдпрд╣ рд╣реИ рдХрд┐ рдкреАрдЖрдИрдкреА рдЗрд╕ рдмрд╛рдд рдкрд░ рд╡рд┐рдЪрд╛рд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╣рд▓ рдХрд░рддреЗ рд╕рдордп рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреНрдпрд╛ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ (рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдирдпрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВ?) рдирд┐рд░реНрднрд░рддрд╛ "рд╕рд╣реА рдврдВрдЧ рд╕реЗ" (рд╣рдж рддрдХ рд╣рдорд╛рд░реЗ рд╡рд░реНрддрдорд╛рди рд╕рдорд╛рдзрд╛рдирдХрд░реНрддрд╛ рдХреБрдЫ рднреА рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд░рддрд╛ рд╣реИ)ред

рдпрджрд┐ рдирдпрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рд▓реЗрддрд╛ рд╣реИ рдЬреЛ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдЦрд╛рддреЗ рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рд╣реИ рддреЛ pip install foo bar рдФрд░ pip install foo && pip install bar рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдмрд░рд╛рдмрд░ рд╣реЛрдВрдЧреЗ рдФрд░ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ (рдФрд░ рд╡рд╣реА рдЕрдм рд▓рдЧрднрдЧ рд╕рдЪ рд╣реИ) рдпрджрд┐ рджреЛрдиреЛрдВ рдкреНрд░реЛрдЬреЗрдХреНрдЯ "рд╕реНрдкреИрдо" рдкрд░ рдирд┐рд░реНрднрд░ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдлреВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ <2 рдФрд░ рдмрд╛рд░ рдЖрд╡рд╢реНрдпрдХ> 1 рддреЛ рд╣рдореЗрдВ рдПрдХ рдЕрдорд╛рдиреНрдп рдЗрдВрд╕реНрдЯреЙрд▓ рдорд┐рд▓реЗрдЧрд╛ред

рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣ рдПрдХ рд╕реНрдкрд░реНрд╢рд░реЗрдЦрд╛ рд╣реИ :)

(рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдирдпрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛рдо рдмрджрд▓рддрд╛ рд╣реИ?)

#7744 рдкрд░ рдЗрдирдкреБрдЯреНрд╕ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред :)

  1. рд╣рдореЗрд╢рд╛ рдЬрдЧрд╣ рдореЗрдВ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рдмрджрд▓реЗрдВред

рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╡рд┐рдШрдЯрдирдХрд╛рд░реА рдорд╛рдирд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рд╣рдо 20.1.1 рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдВрдЧреЗред

рд╕реНрдкрд╖реНрдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП, рдпрд╣ рднреА рд╣реИ рдХрд┐ рд╣рдордиреЗ "рдЗрд╕реЗ рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ рд░реЛрд▓ рдЖрдЙрдЯ рдХрд┐рдпрд╛" рдФрд░ рд╣рдордиреЗ рдЬреЛ рд░реЛрд▓рдЖрдЙрдЯ рджреГрд╖реНрдЯрд┐рдХреЛрдг рд▓рд┐рдпрд╛, рд╡рд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рдмрд╛рдд рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдХрд┐ рдпрд╣ рдмрд╣реБрдд рд╡рд┐рдШрдЯрдирдХрд╛рд░реА рдХреНрдпреЛрдВ рд╣реБрдЖред

  1. рдЬрдЧрд╣ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкрд┐рдк рд╡рд┐рдХрд▓реНрдк рдЬреЛрдбрд╝реЗрдВред

@dstufft @pfmoore рдореИрдВ рдЙрд╕ рддрд░рд╣ рдХреЗ рд╡рд┐рдХрд▓реНрдк рдХреЛ рдПрдХ рдСрдкреНрдЯ-рдЗрди рддрдВрддреНрд░ рдХреЗ рд░реВрдк рдореЗрдВ https://github.com/pypa/pip/issues/8165#issuecomment -625501216

рдореИрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреАрдЖрд░ рдлрд╛рдЗрд▓ рдХрд░реВрдВрдЧрд╛ред :)

8221 рд╣реИред

20.1.1 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдкреВрд░реНрд╡рд╡рдд рдкрд░рд┐рд╡рд░реНрддрди рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдлреЗрдбреЛрд░рд╛ рдореЗрдВ, рдЬрдм рд╣рдо рдкрд╛рдпрдерди рдЖрд░рдкреАрдПрдо рдкреИрдХреЗрдЬ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо рдбрд╛рдпрдирд╛рд╕реЛрд░ рд╣реЛрддреЗ рд╣реИрдВ рдФрд░ рдерд┐рди рдХрд░рдиреЗ рдХрд╛ рдорд╛рдирдХ рддрд░реАрдХрд╛ python setup.py build ред рдкреАрдИрдкреА 517 рдХреЗ рд╕рд╛рде рд╣рдордиреЗ рдЗрд╕рдХреЗ рдмрдЬрд╛рдп pip wheel рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ "рдЕрдирдВрддрд┐рдо" рддрд░реАрдХрд╛ рдЬреЛрдбрд╝рд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЙрдбреНрдпреВрд▓ рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ "рд╕реНрд░реЛрддреЛрдВ рдХреЛ tmp рдкрд░ рд▓реЗ рдЬрд╛рдПрдВ, рд╡рд╣рд╛рдВ рд╕реЗ рдмрдирд╛рдПрдВ" рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рд╣реИ рдЬреЛ рдкрд╛рдЗрдк рдЙрдиреНрд╣реЗрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИред

рд╣рдорд╛рд░реА рдмрд┐рд▓реНрдб рдорд╢реАрдирд░реА рдХреБрдЫ рдХрдВрдкрд╛рдЗрд▓рд░ рдлрд╝реНрд▓реИрдЧреНрд╕ рдХреЛ рдЗрдВрдЬреЗрдХреНрдЯ рдХрд░ рд░рд╣реА рд╣реИ рддрд╛рдХрд┐ рдмрд┐рд▓реНрдб рдЖрд░реНрдЯрд┐рдлрд╝реИрдХреНрдЯреНрд╕ (рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ .so рдПрдХреНрд╕рдЯреЗрдВрд╢рди рдореЙрдбреНрдпреВрд▓) рдореЗрдВ рдЙрдирдХреЗ рд╕реНрд░реЛрддреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╣реЛред рдмрд╛рдж рдореЗрдВ рдПрдХ рд╢реЗрд▓ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд╣реЛрддреА рд╣реИ рдЬреЛ рдмрд┐рд▓реНрдб рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рддреА рд╣реИ, рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдирд┐рдХрд╛рд▓рддреА рд╣реИ рдФрд░ рдПрдХ рд╡рд┐рд╢реЗрд╖ *-debugsource RPM рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрддреЛрдВ рдХреЛ /usr/src/debug рдХреЙрдкреА рдХрд░рддреА рд╣реИред рдорд╣рд╕рд┐рдирд░реА рдХреЛ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╕рдм рдХреБрдЫ рдХрд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреЗрдбрд╝ рдХреЗ рднреАрддрд░ рдмрдирд╛рдпрд╛ рдЬрд╛рдПрдЧрд╛ рдФрд░ рдмрд╛рд╣рд░ рдмрдирд╛рдП рдЬрд╛рдиреЗ рдкрд░ рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рд╡реЗ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬреЛ рд╣рдорд╛рд░реА рддрд░рдл рд╕реЗ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП (рдПрдХ рд╕рд╛рде) рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИрдВ:

1. set the `$TMPDIR` environment variable to have it within the place where the RPM script expects it (i.e. `export TMPDIR=%{_builddir}/.tmp` (and create it))

2. use `pip wheel` with the `--no-clean` option to keep the copied sources in `$TMPDIR`

3. run some shell kung fu to rewrite the "what is my source" information to the correct location: `find %{buildroot} -iname '*.so' -print0 | xargs --no-run-if-empty -0 -n1 /usr/lib/rpm/debugedit -b "%{_builddir}/.tmp/pip-req-build-"* -d "$PWD"`

4. (Optional: clean `$TMPDIR` manually.)

рдпрд╣ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рд╡рд╣ рд░рд╛рд╕реНрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдкрд╛рдЗрдк рдПрдХреАрдХрд░рдг, #6505, рдЖрджрд┐ рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдП рд╢реБрд░реВ рдХрд┐рдпрд╛ рдерд╛ред

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

pip рдХреЛ build рдХрдорд╛рдВрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдФрд░ build рдХрдорд╛рдВрдб рдХрд╛ рдЕрдВрддрд┐рдо рдкрд░рд┐рдгрд╛рдо рдЕрдиреНрдп рдЙрдк-рдЖрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде-рд╕рд╛рде рдЪрд▓рдиреЗ рдпреЛрдЧреНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдЬреИрд╕реЗ wheel , install , рдЖрджрд┐ред

рдЕрднреА pip рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ install рдХреЛ build рдФрд░ install pip рд░реВрдк рдореЗрдВ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рдХрд┐ _not_ рд╣реИ рдЬреЛ рдХреБрдЫ рд▓реЛрдЧ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдЬреЛ рдмрд╛рдЗрдирд░реА рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдФрд░ рдХреИрд╢рд┐рдВрдЧ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдкрдврд╝рдиреЗ рдкрд░ рдмрд╛рдЗрдирд░реА рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ -рдХреЗрд╡рд▓ рдорд╛рдЙрдВрдЯ, рдЖрджрд┐ред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдмрд╛рдЗрдирд░реА рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП setup.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдерд╛, рдлрд┐рд░ pip install рдЙрдиреНрд╣реЗрдВ bdist рдмрдирд╛рдиреЗ рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓рд┐рдП рдмрд┐рдирд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдЬ рд╕рдВрднрд╡ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ , рдЪреВрдВрдХрд┐ pip рдФрд░ distutils / setuptools рдЗрд╕ рдмрд╛рдд рдкрд░ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реИрдВ рдХрд┐ рдмрд╛рдЗрдирд░реА рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдХрд╣рд╛рдВ рдЦреЛрдЬрд╛ рдЬрд╛рдПред

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП setup.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдерд╛, рдлрд┐рд░ pip рдЙрдиреНрд╣реЗрдВ bdist рдмрдирд╛рдиреЗ рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓рд┐рдП рдмрд┐рдирд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдЬ рд╕рдВрднрд╡ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ pip рдФрд░ distutils/setuptools рдЗрд╕ рдкрд░ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реИрдВ рдмрд╛рдЗрдирд░реА рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдХрд╣рд╛рдВ рдЦреЛрдЬреЗрдВред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реВрдВ - рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдмрд╛рдЗрдирд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдмрд╛рдЗрдирд░реА рд╡рд┐рддрд░рдг рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реИ?

рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП setup.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдерд╛, рдлрд┐рд░ pip рдЙрдиреНрд╣реЗрдВ bdist рдмрдирд╛рдиреЗ рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓рд┐рдП рдмрд┐рдирд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЖрдЬ рд╕рдВрднрд╡ рдирд╣реАрдВ рд▓рдЧрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ pip рдФрд░ distutils/setuptools рдЗрд╕ рдкрд░ рд╕рд╣рдордд рдирд╣реАрдВ рд╣реИрдВ рдмрд╛рдЗрдирд░реА рдХрд▓рд╛рдХреГрддрд┐рдпреЛрдВ рдХреЛ рдХрд╣рд╛рдВ рдЦреЛрдЬреЗрдВред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореИрдВ рдЕрдиреБрд╕рд░рдг рдХрд░рддрд╛ рд╣реВрдВ - рдЖрдк рдХрд╣ рд░рд╣реЗ рд╣реИрдВ рдХрд┐ рдЖрдк рдмрд╛рдЗрдирд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдмрд╛рдЗрдирд░реА рд╡рд┐рддрд░рдг рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдРрд╕рд╛ рдХреНрдпреЛрдВ рд╣реИ?

bdist рдкреНрд░рд╛рд░реВрдк рдЕрддреНрдпрдВрдд рд╕реАрдорд┐рдд рд╣реИрдВред рдореЗрд░реЗ рд╕рдореВрд╣ рдХреЛ рдЯреИрд░ рдХреА рддрд░рд╣ рдПрдХ рдЧреВрдВрдЧрд╛ рдкреНрд░рд╛рд░реВрдк рдХрд╛ рд╕рд╣рд╛рд░рд╛ рд▓реЗрдирд╛ рд╣реИ, рдлрд┐рд░ рдЗрд╕реЗ рд╢рдмреНрджрд╢рдГ рдЕрдирдкреИрдХ рдХрд░реЗрдВ (рдмреАрдПрд╕рдбреА рдореЗрдВ рд╕реЗ рдХреЛрдИ рднреА рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдбреЗрдмрд┐рдпрди рд╕рдорд░реНрдерд┐рдд рдирд╣реАрдВ рд╣реИ, рдЖрджрд┐)ред

рдореИрдВрдиреЗ рдХрд▓ рд░рд╛рдд рдЬреЛ рдЦреЛрдЬрд╛ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рдЧреВрдВрдЧрд╛ bdist рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ pip рдорд╛рдзреНрдпрдо рд╕реЗ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдирд╣реАрдВ рд╣реИред рдбрдВрдм рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдореЗрдВ pip , AFAICT рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреА рдХрдореА рд╣реЛрддреА рд╣реИ, рдЬрд╣рд╛рдВ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд╛рдЗрдк рд╡реНрд╣реАрд▓ рдЪрд▓рди рдореЗрдВ рдЖрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рдЕрдВрдбреЗ рдФрд░ рдЬрд╝рд┐рдк рдХреА рднреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдЙрдирдХреЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ file:// рдпреВрдЖрд░рдЖрдИ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреА рдХрдореА рд╣реИред

рдореИрдВ distutils, setuptools рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдмрдбрд╝реЗ рдирд┐рд░реНрдорд╛рдг рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рд╢реВрд╣реЙрд░реНрди рдмрд┐рд▓реНрдбрд┐рдВрдЧ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдпрд╣ рдирд╣реАрдВ рдмрддрд╛ рд╕рдХрддрд╛ рдХрд┐ рдореИрдВрдиреЗ рдЪреАрдЬреЛрдВ рдХреЛ рдорд╛рдирдХ bdist рдХреЗ рддрд░реАрдХреЗ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП "рд╕рднреА рд╕рд╣реА рдЪреАрдЬреЗрдВ" рдХреА рд╣реИрдВ рдпрд╛ рдирд╣реАрдВ

https://github.com/pypa/pip/issues/2195#issuecomment -664728481 рд╕реЗ рдЖ рд░рд╣рд╛ рд╣реВрдВ, рдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ --use-feature=in-tree-build рдкреАрдЫреЗ #7882 рдлрд┐рд░ рд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд╢ рд╣реВрдВред

рд╣реБрд░реНрд░реЗ! рдПрдХ рдпреЛрдЬрдирд╛ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИ!

рдЖрдЗрдП рдЗрд╕ рдмрд╛рд░ --build рдХреЗ рдбреЙрдХрд╕реНрдЯреНрд░рд┐рдВрдЧ рдХреЛ рднреА рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВред ;)

#2195 рд╕реЗ рдЖ рд░рд╣рд╛ рд╣реИ (рдЯрд┐рдкреНрдкрдгреА) рдореИрдВ рдХрд╣ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ #7882 рдХреЛ --use-feature=in-tree-build рдХреЗ рдкреАрдЫреЗ рдлрд┐рд░ рд╕реЗ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреБрд╢ рд╣реВрдВред

рдЬрд┐рдЬреНрдЮрд╛рд╕реБ рдЕрдЧрд░ рдпрд╣ рдФрд░ рд╕рд╛рде рд╣реА рдХрдорд╛рдВрдб-рд▓рд╛рдЗрди рджреНрд╡рд╛рд░рд╛ in-tree-build рд╡рд┐рдХрд▓реНрдк рдХреЛ pyproject.toml рдореЗрдВ рд╕реЗрдЯ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╣реЛрдЧрд╛? рдкрд╛рдЗрдк рдХреЛ рд▓рдкреЗрдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрд╢ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рдореЗрдХрдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреЗ рдмрд┐рдирд╛ # 6276 рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред (рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрдбрд╝рд╛ рдореБрджреНрджрд╛ рд╣реИред)

pyproject.toml рдореЗрдВ рдПрдХ рдЗрди-рдЯреНрд░реА-рдмрд┐рд▓реНрдб рд╡рд┐рдХрд▓реНрдк рд╕реЗрдЯ рдХрд░реЗрдВ

@davidhewitt рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рдореВрд▓ рд╡рд┐рд╡рд░рдг рдореЗрдВ рдпрд╣ рдХрдореЛрдмреЗрд╢ рд╡рд┐рдХрд▓реНрдк 3 рд╣реИред рдореЗрд░реА рд╕рдордЭ рдпрд╣ рд╣реИ рдХрд┐ рд╡рд░реНрддрдорд╛рди рд╕рд░реНрд╡рд╕рдореНрдорддрд┐ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рд╣рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдХрд▓реНрдк рд╕реЗ рдмрдЪрдирд╛ рдмреЗрд╣рддрд░ рд╣реИред рдЗрд╕рд▓рд┐рдП рд╕рдВрдХреНрд░рдордг рдЕрд╡рдзрд┐ рдХреЗ рджреМрд░рд╛рди --use-feature рдХреЗ рд╕рд╛рде рдЗрди-рдЯреНрд░реА рдмрд┐рд▓реНрдб рдХреЛ рд╕рдХреНрд╖рдо рдХрд░рдиреЗ рдХрд╛ рд╡рд┐рдЪрд╛рд░, рдЗрд╕реЗ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдФрд░ рдПрдХрдорд╛рддреНрд░ рддрдВрддреНрд░ рдмрдирд╛рдиреЗ рдХреЗ рджреАрд░реНрдШрдХрд╛рд▓рд┐рдХ рд▓рдХреНрд╖реНрдп рдХреЗ рд╕рд╛рдеред

BTW, рдореИрдВ рдЗрд╕реЗ 20.3 рдХреЗ рд▓рд┐рдП рд╕рдордп рдкрд░ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░ рдкрд╛рдКрдВрдЧрд╛, рд▓реЗрдХрд┐рди рдореИрдВ рдЕрднреА рднреА рдЗрд╕реЗ рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддрд╛ рд╣реВрдВ, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ 20.4 рдореЗрдВред

@sbidoul рдореИрдВрдиреЗ рдЗрд╕ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреИрдЪ рд▓рд┐рдЦрд╛ - # 9091 рджреЗрдЦреЗрдВред

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

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

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

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

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

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

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