Pip: рдирдпрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░: рд░реЛрд▓рдЖрдЙрдЯ, рдлреАрдбрдмреИрдХ рд▓реВрдк рдФрд░ рд╡рд┐рдХрд╛рд╕ рдкреНрд░рд╡рд╛рд╣

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

рдореИрдВ #988 (рдбреБрд╣!) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреБрдЫ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ - рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЗрд╕реЗ рдХреИрд╕реЗ рд░реЛрд▓ рдЖрдЙрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдП рддрд╛рдХрд┐ рдЯреВрдЯ-рдлреВрдЯ рдХреЛ рдХрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдЙрдкрдпреЛрдЧреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдЕрд╡рд╕рд░ рдХреЛ рдЕрдзрд┐рдХрддрдо рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред

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


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

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

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

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


рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдореИрдВ рдЗрд╕ рдХрд╛рдо рдХреЗ рд▓рд┐рдП # 5051 рдХреЛ рдЕрд╡рд░реЛрдзрдХ рдХреЗ рд░реВрдк рдореЗрдВ рдбрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд░рддреЗ рд╕рдордп рдмрд┐рд▓реНрдб рд▓реЙрдЬрд┐рдХ рдХреЗ рд╕рд╛рде рдХрд┐рддрдирд╛ рджрд░реНрджрдирд╛рдХ рд╡реНрдпрд╡рд╣рд╛рд░ рдерд╛ред

dependency resolution maintenance

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

рдореИрдВ рдпреБрд╡рд╛, рдЧреВрдВрдЧрд╛ рдФрд░ рдЖрд╢рд╛рд╡рд╛рджреА рд╣реВрдВ

:-) рдФрд░ рдореИрдВ рдХрднреА-рдХрднреА рдмрд╣реБрдд рдмреВрдврд╝рд╛, рдердХрд╛ рд╣реБрдЖ рдФрд░ рд╕рдирдХреА рд╣реЛ рдЬрд╛рддрд╛ рд╣реВрдВред рдЖрдЗрдП рдЖрдкрдХреЗ рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рдЪрд▓рддреЗ рд╣реИрдВ, рдпрд╣ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд▓рдЧрддрд╛ рд╣реИ :-)

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

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

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

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

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

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

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

рдЧрд┐рдЯ/рдЧрд┐рдЯрд╣рдм рдХреЗ рд╕рдВрджрд░реНрдн рдореЗрдВ, рдпрд╣ рд╢рд╛рдпрдж рдкрд╛рдЗрдк рдХреЗ рднреАрддрд░ рдкрд╣рд▓рд╛ "рдкреНрд░рдпреЛрдЧрд╛рддреНрдордХ" рдлреАрдЪрд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ

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

рдореИрдВрдиреЗ рдЗрд╕ рдПрдХ рдкреЛрд╕реНрдЯ рдХреЛ рд▓рд┐рдЦрдиреЗ рдореЗрдВ ~ 60 рдорд┐рдирдЯ (рд░реА-рд░реА-рд░реА-рд░реА-рд░реА-) рдмрд┐рддрд╛рдП, рдЗрд╕рд▓рд┐рдП рдЕрдм рдореИрдВ рдиреНрдпреВрдпреЙрд░реНрдХ рдХреЗ рд╕реНрдерд╛рдиреЛрдВ рдкрд░ рдПрдХ рдирдЬрд╝рд░ рдбрд╛рд▓реВрдВрдЧрд╛! рдпрджрд┐ рдЖрдкрдХреЛ рдореЗрд░реА рдУрд░ рд╕реЗ рдХреЛрдИ рддреНрд╡рд░рд┐рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддреА рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдХрд╛рд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдкрд░реНрдпрдЯрди рдореЛрдб рдореЗрдВ рд░рд╣реВрдВрдЧрд╛ред


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

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ! рдпрд╣ 80% рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕рдХреЗ рдЖрдЧреЗ 5051 рдХреНрдпреЛрдВ рдбрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВ - рдореИрдВ рдЕрдкрдиреЗ рдирд┐рд░реНрдорд╛рдг рддрд░реНрдХ рдореЗрдВ рдЬрдорд╛ рдХрд┐рдП рдЧрдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рддрдХрдиреАрдХреА рдЛрдг рдХрд╛ рднреБрдЧрддрд╛рди рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдЗрд╕рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдП (рд╕рднреА?) рдХреЛрдб рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП: рдЖрдЧ: рдФрд░ рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рдмрд╛рдХреА рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЬрд┐рддрдирд╛ рдЙрдЪрд┐рдд рд╣реЛ рдЙрддрдирд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рд╣рдордиреЗ рдЙрдиреНрд╣реЗрдВ "рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдмрдВрдж, рдЙрдиреНрд╣реЗрдВ рдЖрдЬрд╝рдорд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд╖рдо рдХрд░реЗрдВ" рдЫреЛрдбрд╝рдиреЗ рдХреА рдкреНрд░рд╡реГрддреНрддрд┐ рдирд╣реАрдВ рдХреА рд╣реИ, рдпрджрд┐ рдЖрдкрдХрд╛ рдпрд╣реА рдорддрд▓рдм рд╣реИ

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

рдкреБрди: рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛

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

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

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

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

рдкреБрди: рдЕрдиреБрджрд╛рди

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

FWIW, PSF рдХреЗ рдкрд╛рд╕ рдЪреЗрдВрдЬрд╕реЗрдЯ рдХрдВрд╕рд▓реНрдЯрд┐рдВрдЧ рдХреЗ рд╕рд╛рде PyPA/рдкреИрдХреЗрдЬрд┐рдВрдЧ-рд╕рдВрдмрдВрдзрд┐рдд рд╕рдВрдЪрд╛рд░ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдирд┐рд░рдВрддрд░ рдЕрдиреБрдмрдВрдз рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╢рд╛рдпрдж рд╣рдо рдЗрд╕рдХрд╛ рд▓рд╛рдн рдЙрдард╛ рд╕рдХреЗрдВ?


рдореИрдВ рдЬрд╛рдирдмреВрдЭрдХрд░ @ рд▓реЛрдЧреЛрдВ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдмрд╛рддрдЪреАрдд рдореЗрдВ рдФрд░ рд▓реЛрдЧреЛрдВ рдХреЛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдпрд╣ рдХрд╛рдлреА рдЬрд▓реНрджреА рд╣реИред

рдлреБрдЯрдиреЛрдЯ:

  1. рдПрдХ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╢рдмреНрдж рдЬрд┐рд╕рдХрд╛ @pganssle рдиреЗ рдкреНрд░рдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБред
  2. рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рд╡рд╣рд╛рдВ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд "рдкрд╛рдЗрдк-рдХреНрд▓реА" рдкреИрдХреЗрдЬ рдХреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдмрд╛рд╡рдЬреВрдж рдФрд░ рд░реЛрд▓рдЖрдЙрдЯ рдХреЛ рдХреИрд╕рд╛ рджрд┐рдЦрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЗрд╕ рдкрд░ рдЙрдЪрд┐рдд рд╕рд╣рдорддрд┐ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдореИрдВрдиреЗ рдмреИрдХ рдмрд░реНрдирд░ рдкрд░ #3164 рдбрд╛рд▓ рджрд┐рдпрд╛ рд╣реИред

рдореИрдВ рдпреБрд╡рд╛, рдЧреВрдВрдЧрд╛ рдФрд░ рдЖрд╢рд╛рд╡рд╛рджреА рд╣реВрдВ

:-) рдФрд░ рдореИрдВ рдХрднреА-рдХрднреА рдмрд╣реБрдд рдмреВрдврд╝рд╛, рдердХрд╛ рд╣реБрдЖ рдФрд░ рд╕рдирдХреА рд╣реЛ рдЬрд╛рддрд╛ рд╣реВрдВред рдЖрдЗрдП рдЖрдкрдХреЗ рджрд░реНрд╢рди рдХреЗ рд╕рд╛рде рдЪрд▓рддреЗ рд╣реИрдВ, рдпрд╣ рдмрд╣реБрдд рдмреЗрд╣рддрд░ рд▓рдЧрддрд╛ рд╣реИ :-)

рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ! рдпрд╣ 80% рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕рдХреЗ рдЖрдЧреЗ 5051 рдХреНрдпреЛрдВ рдбрд╛рд▓ рд░рд╣рд╛ рд╣реВрдВ - рдореИрдВ рдЕрдкрдиреЗ рдирд┐рд░реНрдорд╛рдг рддрд░реНрдХ рдореЗрдВ рдЬрдорд╛ рдХрд┐рдП рдЧрдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рддрдХрдиреАрдХреА рдЛрдг рдХрд╛ рднреБрдЧрддрд╛рди рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддрд╛ рд╣реВрдВ рддрд╛рдХрд┐ рдЗрд╕рдХрд╛ рдкреБрди: рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рдП (рд╕рднреА?)

рдорд╣рд╛рди!

рдЖрдИрдЖрд░рд╕реА рд╕реЗ рдЕрднреА :

[рд╕реБрдордирд╛рдГ] рдкреНрд░рджреНрдпреБрдиреНрд╕рдЧ: рдХреНрдпрд╛ рдРрд╕рд╛ рдХреБрдЫ рд╣реИ рдЬреЛ рд╣рдо рдкрд╛рдЗрдк рдФрд░ рдкреИрдХреЗрдЬрд┐рдВрдЧ рд╕рдореБрджрд╛рдп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рд╕рд╕реЗ рдЖрдкрдХреЛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдкрд░ рдЕрдзрд┐рдХ рдХрд╛рдо рддреЗрдЬреА рд╕реЗ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдорд┐рд▓ рд╕рдХреЗ?
....
[pradyunsg] рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЕрднреА, https://github.com/pypa/pip/issues/6536 рдкрд░ рдЗрдирдкреБрдЯ рд╢рд╛рдпрдж рдореБрдЭреЗ рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░реЗрдВрдЧреЗ рдХрд┐ рдХрд╛рдо рдХреИрд╕реЗ рдХрд░реЗрдВ/рд▓реЛрдЧреЛрдВ рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ рдЖрджрд┐ред
....
[рд╕реБрдордирд╛] рдкреНрд░рджреНрдпреБрдиреНрд╕рдЧ: рдкреБрди: рдирдпрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░: рд░реЛрд▓рдЖрдЙрдЯ, рдлреАрдбрдмреИрдХ рд▓реВрдкреНрд╕ рдФрд░ рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдлреНрд▓реЛ # 6536 - рдЬреЛ рдЗрдирдкреБрдЯ рдЖрдк рдЪрд╛рд╣рддреЗ рд╣реИрдВ рд╡рд╣ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рд╣реИ: рдХреНрдпрд╛ рдлреАрдЪрд░ рдлреНрд▓реИрдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ? рдХреНрдпрд╛ рдкрд╛рдЗрдк рдЧрд┐рдЯрд╣рдм рдореБрджреНрджреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рддрдВрддреНрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ? рдХреНрдпрд╛ рдЕрдиреБрджрд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдпрд╛ рд░реАрдпрд▓рд╡рд░реНрд▓реНрдб рдореИрдиреНрдпреБрдЕрд▓ рдкрд░реАрдХреНрд╖рдг рдФрд░ рдордЬрдмреВрдд рдкрд░реАрдХреНрд╖рдг рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ, рдФрд░/рдпрд╛ рд╕рдХреНрд░рд┐рдп рдХреЙрдордореНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд╕рдорд╛рди рд╣реА рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ?
...
[pradyunsg] рд╣рд╛рдВ -- рдХреНрдпрд╛ рдореИрдВ рдЬреЛ рд╕реБрдЭрд╛рд╡ рджреЗ рд░рд╣рд╛ рд╣реВрдВ рд╡рд╣ рдЕрдЪреНрдЫреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреЛрдИ рднреА рдЕрддрд┐рд░рд┐рдХреНрдд рд╡рд┐рдЪрд╛рд░/рджреГрд╖реНрдЯрд┐рдХреЛрдг/рд╡рд┐рдЪрд╛рд░ рдЬреЛ рд░реЛрд▓рдЖрдЙрдЯ + рдлреАрдбрдмреИрдХ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рдиреЗ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рд╡реЗ рд╢рд╛рдирджрд╛рд░ рд╣реЛрдВрдЧреЗред

рдЗрд╕рд▓рд┐рдП:

рдХреНрдпрд╛ рдлреАрдЪрд░ рдлреНрд▓реИрдЧ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ? рд╣рд╛рдВред

рдХреНрдпрд╛ рдкрд╛рдЗрдк GitHub рдореБрджреНрджреЛрдВ рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХрд┐рд╕реА рдЕрдиреНрдп рддрдВрддреНрд░ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ? рд╣рд╛рдВред рд╣рдореЗрдВ рдХрдо рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдХрдо рд╕рдВрд░рдЪрд┐рдд рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рд╕реНрд╡реАрдХрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рддрд░реАрдХреЗ рдЦреЛрдЬрдиреЗ рдЪрд╛рд╣рд┐рдПред

рдХреНрдпрд╛ рдЕрдзрд┐рдХ рдордЬрдмреВрдд рдкрд░реАрдХреНрд╖рдг рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреА? рд╣рд╛рдБ, рдмрд╣реБрдд рдХреБрдЫ, рдФрд░ рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ рд╣рдорд╛рд░реЗ рдкреНрд░рд╛рдпреЛрдЬрдХ рд╣рдорд╛рд░реА рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рдХреНрдпрд╛ рдкреАрдкреАрдП рд╕рдордиреНрд╡рдп/рд╕рдВрдЪрд╛рд░ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреАрдПрд╕рдПрдл рдХреЗ рд╕рд╛рде рдореМрдЬреВрджрд╛ рдЕрдиреБрдмрдВрдз рдХреЗ рддрд╣рдд рдЪреЗрдВрдЬрд╕реЗрдЯ (рдореА), рд╣рдореЗрдВ рдЕрдзрд┐рдХ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░реАрдпрд▓рд╡рд░реНрд▓реНрдб рдореИрдиреБрдЕрд▓ рдкрд░реАрдХреНрд╖рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдХреНрд░рд┐рдп рд╕рдВрдЪрд╛рд░ рдХреЗ рд╕рд╛рде рдкреАрдЖрдИрдкреА рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИ? рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рдЬрдм рддрдХ рд╣рдо рдЗрд╕ рд░реЛрд▓рдЖрдЙрдЯ рдХреЛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддрдм рддрдХ рдореЗрд░реЗ рдЕрдиреБрдмрдВрдз рдореЗрдВ рдХреБрдЫ рдШрдВрдЯреЗ рд╢реЗрд╖ рд╣реИрдВ, рд╣рд╛рдВред

рдХреНрдпрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдиреБрднрд╡, рд╕рдВрдЪрд╛рд░/рдкреНрд░рдЪрд╛рд░ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдореЗрдВ рдЕрдзрд┐рдХ рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдиреБрджрд╛рди рдпрд╛ рд╕рдорд╛рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ? рд╣рд╛рдВред рдкреАрдПрд╕рдПрдл рдЕрдиреБрджрд╛рди рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд░реБрдЪрд┐ рдХрд╛ рд╣реЛрдЧрд╛, рдЬреИрд╕рд╛ рдХрд┐ рдПрдирдПрд▓рдиреЗрдЯ рдЕрдиреБрджрд╛рди ( 30,000 рдпреВрд░реЛ рд╕реЗ рдХрдо рдХреЗ рдЕрдиреБрд░реЛрдзреЛрдВ рдХреЗ рд▓рд┐рдП), рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд╡рд┐рдЬреНрдЮрд╛рди рдЕрдиреБрджрд╛рди рдХреЗ рд▓рд┐рдП рдЪрд╛рди рдЬреБрдХрд░рдмрд░реНрдЧ рдЖрд╡рд╢реНрдпрдХ рдУрдкрди рд╕реЛрд░реНрд╕ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдФрд░ рдореЛрдЬрд╝рд┐рд▓рд╛ рдХрд╛ рдПрдордУрдПрд╕рдПрд╕ рд╣реЛрдЧрд╛ред рдкреИрдХреЗрдЬрд┐рдВрдЧ рдбрдмреНрд▓реНрдпреВрдЬреА рд░рд┐рдХреЙрд░реНрдб рдХрд╛ рдЖрд╡реЗрджрдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЕрдЧрд░ @pradyunsg рдпрд╛ @pfmoore "рд╣рд╛рдБ рдЬреЛ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддрд╛ рд╣реИ" рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ, рддреЛ рдореИрдВ WG рдХреЗ рд╕рд╛рде рдЙрди рд╕рдВрднрд╛рд╡рдирд╛рдУрдВ рдХреА рдЬрд╛рдВрдЪ рд╢реБрд░реВ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рдЕрдЧрд░ @pradyunsg рдпрд╛ @pfmoore "рд╣рд╛рдБ рдЬреЛ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддрд╛ рд╣реИ" рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ,

рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдореЗрд░реЗ рд▓рд┐рдП рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддрд╛ рд╣реИ :-)

@pradyunsg рдпрд╛ @pfmoore рдПрдХ "рд╣рд╛рдБ рдЬреЛ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддрд╛ рд╣реИ" рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ

_nods_ рд╣рд╛рдБ рдпрд╣ рджрд┐рд▓рдЪрд╕реНрдк рд▓рдЧрддрд╛ рд╣реИ

рдХреНрдпрд╛ рдЕрдзрд┐рдХ рдордЬрдмреВрдд рдкрд░реАрдХреНрд╖рдг рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреА? рд╣рд╛рдБ, рдмрд╣реБрдд рдХреБрдЫ, рдФрд░ рдпрд╣ рд╡рд╣ рдЬрдЧрд╣ рд╣реИ рдЬрд╣рд╛рдБ рд╣рдорд╛рд░реЗ рдкреНрд░рд╛рдпреЛрдЬрдХ рд╣рдорд╛рд░реА рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

@brainwane рдпрд╣рд╛рдВ рднреА рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ https://github.com/pypa/integration-testред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛, рд╡рд┐рддреНрдд рдкреЛрд╖рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдФрд░ рд╕рдВрднрд╛рд╡рд┐рдд рдХреНрд╖реЗрддреНрд░ рд╣реИ - рд╣рдореЗрдВ рдЗрд╕реЗ https://wiki.python.org/psf/Fundable%20Packaging%20Improvements рдореЗрдВ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рд┐рдПред

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

рдЕрдЧрд░ рд╣рдореЗрдВ MOSS, CZI, рдпрд╛ NLNET рд╕реЗ рдЕрдиреБрджрд╛рди рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкреИрд╕рд╛ рдорд┐рд▓рддрд╛ рд╣реИ, рддреЛ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдкреИрд╕рд╛ рдорд┐рд▓ рдЬрд╛рдПрдЧрд╛ ... рдЕрдХреНрдЯреВрдмрд░ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж, рд╢рд╛рдпрджред рдкреАрдПрд╕рдПрдл рд╕реЗ рд╕реАрдзреЗ рдЕрдиреБрджрд╛рди рд╢рд╛рдпрдж рддреЗрдЬ рд╣реЛрдЧрд╛ рд▓реЗрдХрд┐рди "рд╣рдорд╛рд░рд╛ рд╡рд░реНрддрдорд╛рди рдзреНрдпрд╛рди рдкрд╛рдпрдерди рдХрд╛рд░реНрдпрд╢рд╛рд▓рд╛рдУрдВ, рд╕рдореНрдореЗрд▓рдиреЛрдВ (рд╡рд┐рддреНрддреАрдп рд╕рд╣рд╛рдпрддрд╛ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ), рдФрд░ рдкрд╛рдпрдерди рд╡рд┐рд╡рд┐рдзрддрд╛/рд╕рдорд╛рд╡реЗрд╢реА рдкреНрд░рдпрд╛рд╕реЛрдВ рдкрд░ рд╣реИред"

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

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

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдпрд╛ рдЬрдВрдЧ рд╕реЗ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧ рднреА рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХреА рд▓реЙрдХрдлрд╛рдЗрд▓ рдХреА рдЕрдкреЗрдХреНрд╖рд╛ рдХрд░реЗрдВрдЧреЗ, рддрд╛рдХрд┐ рдЗрд╕ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗ ...

рдЗрд╕рдореЗрдВ рдХреВрджрдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ, рдЗрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реБрдП рджреЗрдЦрдХрд░ рдЦреБрд╢реА рд╣реБрдИ!

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

рдЗрд╕реА рдХрд╛рд░рдг рд╕реЗ рдХреБрдЫ рдкреАрдИрдкреА 517 рдореБрджреНрджреЛрдВ рд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рд▓реЛрдЧреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдХреЗ рд░реВрдк рдореЗрдВ, рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЪреАрдЬреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдСрдкреНрдЯ-рдЗрди рддрд░реАрдХрд╛ рджреЗрдЦрдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред рд▓реЗрдХрд┐рди рдореИрдВ рдХреЗрд╡рд▓ рдЗрд╕ рддрд░рд╣ рдХреЗ рд╕рд╛рдорд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдореИрдВрдиреЗ --no-use-pep517 рдзреНрд╡рдЬ рдореБрджреНрджреЗ рдХреЗ рдмрд╛рдж рд╕рднреА рдкрд╛рдпрдерди рдкреИрдХреЗрдЬрд┐рдВрдЧ рд╕рдорд╛рдЪрд╛рд░ рд╕реНрд░реЛрддреЛрдВ рдХреА рд╕рджрд╕реНрдпрддрд╛ рд▓реА рд╣реИред рдореИрдВ рдЬреЛ рдХрд╣ рд░рд╣рд╛ рд╣реВрдВ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рдЦрдмрд░реЗрдВ рдлреИрд▓рд╛рдирд╛ рдХрдард┐рди рд╣реИ рдФрд░ рд╢рд╛рдпрдж рдЗрд╕реАрд▓рд┐рдП рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдХрдард┐рди рд╣реИред

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

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

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

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

рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЬреЛ рдЕрдзрд┐рдХ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдпрджрд┐ рдХреЗрд╡рд▓ _one_ рдлреАрдЪрд░ рдзреНрд╡рдЬ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирдирд╛ рд╣реИ,

рдПрдХ рдорд╛рдпрдиреЗ рдореЗрдВ, рдХреНрдпрд╛ рдпрд╣ --pre рдХреЗ рд░реВрдк рдореЗрдВ рдкрд╣рд▓реЗ рд╕реЗ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ? рдХреНрдпрд╛ рдкрд╛рдЗрдк рдХреЗ рд▓рд┐рдП рдмреАрдЯрд╛ рд░рд┐рд▓реАрдЬрд╝ рдЪреИрдирд▓ рдХреЗрд╡рд▓ pip install --upgrade --pre pip рдЪрд▓рд╛рдиреЗ рдХрд╛ рдорд╛рдорд▓рд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ?

рдЗрд╕рдореЗрдВ рдХреВрджрдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ, рдЗрд╕реЗ рдЖрдЧреЗ рдмрдврд╝рддреЗ рд╣реБрдП рджреЗрдЦрдХрд░ рдЦреБрд╢реА рд╣реБрдИ!

@techalchemy рдХреГрдкрдпрд╛, рд╕рднреА рд▓реЛрдЧреЛрдВ рдореЗрдВ рд╕реЗ, _you_ рдХреЛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЗрд╕ рдЪрд░реНрдЪрд╛ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреНрдпрд╛ рдЖрдк рдЬрд┐рд╕ рд╕рдВрд╕рд╛рдзрди рдХреА рддрд▓рд╛рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдХреНрдпрд╛ рд╡рд╣ рдЗрд╕рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛?

рдПрдХ рд╣рдж рддрдХ, рд╣рд╛рдБред

reg: рдкреАрдЖрдИрдкреА рдХреЗ рд▓рд┐рдП рдмреАрдЯрд╛ рд░рд┐рд▓реАрдЬ/"рдЪреИрдирд▓"

@jriddy рдФрд░ @chrish42 рдореЗрдВ рдЪрд┐рдорд┐рдВрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред рдЬрдмрдХрд┐ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдо рддреМрд░ рдкрд░ рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЙрдкрдпреЛрдЧреА/рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рддрдЪреАрдд рд╣реИ, рдореБрдЭреЗ рдпрд╣ рднреА рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЗрд╕ рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдереЛрдбрд╝рд╛ рдУрдЯреА рд╣реИред рдХрдо рдирд╣реАрдВ, рдореИрдВ рдпрд╣рд╛рдБ рдПрдХ рдмрд╛рд░ рдЬрд╡рд╛рдм рджреВрдВрдЧрд╛; рдЕрдЧрд░ рд╣рдо рдЗрд╕ рдкрд░ рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдЗрдП рдПрдХ рдирдпрд╛ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВред

рд╣рдордиреЗ рдЕрддреАрдд рдореЗрдВ рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ - рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдкреАрдЖрдИрдкреА 10 рдХреЗ рд╕рд╛рде - рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдирд╣реАрдВ рдХрд░ рдкрд╛рдпрд╛ рд╣реИред рдореБрдЭреЗ рдЗрд╕ рдмрд╛рдд рдкрд░ рдереЛрдбрд╝рд╛ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рдЖрдЧреЗ рднреА рдпрд╣ рдХрд┐рддрдиреА рдЕрдЪреНрдЫреА рддрд░рд╣ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВ рдпрд╣ рднреА рд╕реЛрдЪ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рд╣рдорд╛рд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдХреБрдЫ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЗ рдкрд░рд┐рдгрд╛рдорд╕реНрд╡рд░реВрдк рдпрд╣ рд╣рдорд╛рд░реЗ рд▓рд┐рдП рд╕реБрдЪрд╛рд░реВ рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдпрд╛ рдХреБрдЫ рдФрд░ рдХрд╛ "рдХреЗрд╡рд▓ рдмреАрдЯрд╛" рд╕реЗрдЯ рдХрд░ рд╕рдХреЗрдВ? рдореИрдВрдиреЗ рдЗрд╕рдХреЗ рд▓рд┐рдП #5727 рдореЗрдВ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЗ рд░реВрдк рдореЗрдВ -X all рдХреА рдХрд▓реНрдкрдирд╛ рдХреА рдереАред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдЗрд╕ рд░реЛрд▓рдЖрдЙрдЯ рдпреЛрдЬрдирд╛ рдХреЗ рдПрдХ рднрд╛рдЧ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдард╛ рд╕рдХреЗрдВ? рдЖрдИрдбреАрдХреЗ рд╣рдореЗрдВ рдЗрд╕рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдордп рдФрд░ рдКрд░реНрдЬрд╛ рдХрд╛ рдирд┐рд╡реЗрд╢ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред :)

рдЬреИрд╕рд╛ рдХрд┐ https://github.com/pypa/packaging-problems/issues/25#issuecomment -520167480 рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рд╕реЙрд▓реНрд╡рд░ рдкрд╛рдЗрдк рдЕрдиреБрднрд╡ рдХреЛ рдХреИрд╕реЗ рдмрджрд▓рддрд╛ рд╣реИ, рдЗрд╕рдХрд╛ рдПрдХ рд╕рдореЗрдХрд┐рдд рд╡рд┐рд╡рд░рдг рд╣реЛрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдЕрдзрд┐рдХ рдХрдареЛрд░ рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рдмрджрд▓рд╛рд╡ рд╕реЗ рдмрд╣реБрдд рд╕реЗ рд▓реЛрдЧ рдирд┐рд░рд╛рд╢ рд╣реЛрдВрдЧреЗ (рднрд▓реЗ рд╣реА рдЪреАрдЬреЗрдВ рд╕рдордЧреНрд░ рд░реВрдк рд╕реЗ рдЕрдзрд┐рдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рд╡реЗ рдЙрди рдЬрдЧрд╣реЛрдВ рдкрд░ рдЕрд╡рд░реБрджреНрдз рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ рдЬрд╣рд╛рдВ рд╡реЗ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдЕрд╡рд░реБрджреНрдз рдирд╣реАрдВ рд╣реЛ рд░рд╣реЗ рд╣реИрдВред

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

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

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

рдзреНрд╡рдЬ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ:

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

@msarahan рдЪрд┐рдВрд░рд╛рдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдмрд╣реБрдд рд╕рд░рд╛рд╣рдирд╛ рдХреА! :)

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

рдЖрдк рдпрд╣ рднреА рд╡рд┐рдЪрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ рдХрд┐ --ignore-installed рд╕реЙрд▓реНрд╡рд░ рдХреЗ рд╕рд╛рде рдХреИрд╕реЗ рдЗрдВрдЯрд░реИрдХреНрдЯ рдХрд░рддрд╛ рд╣реИ - рдЬрдм рдпрд╣ рдкрд╛рд░рд┐рдд рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рд╢рд╛рдпрдж рдкрд╣рд▓реЗ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдкреИрдХреЗрдЬ рдХреЗ рд▓рд┐рдП рд╕рднреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

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

@ncoghlan рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЗ "рдСрдкреНрдЯ рдЖрдЙрдЯ" рдХрд╛ рдХреНрдпрд╛ рдЕрд░реНрде рд╣реИ? рдирд┐рд░реНрднрд░рддрд╛ рд╕рдорд╛рдзрд╛рди (рдФрд░ рдЗрд╕рд▓рд┐рдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░) рд╕реЗ рдкреВрд░реА рддрд░рд╣ рдмрдЪрдирд╛ --no-deps рд╣реИред рдореИрдВ рд╕рдордЭрддрд╛ рд╣реВрдВ рдХрд┐ "рдЗрд╕ рдкреИрдХреЗрдЬ рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдШрд░реНрд╖реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ" рдпрд╛ рдЙрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореБрдЭреЗ "рдкрд╣рд▓реЗ рджреЗрдЦреЗ рдЧрдП" рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рд▓реЙрдЬрд┐рдХ рдХреЛ рдПрдХ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдЕрд╡рдзрд┐ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рд░рдЦрдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИред

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


рдЕрдзрд┐рдХ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ, рдпрджрд┐ рдРрд╕реЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рд╣реИрдВ рдЬрд┐рдирдореЗрдВ рдПрдХ рд╕рдЦреНрдд рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реИрдВ, рддреЛ рдореИрдВ рдпрд╣ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдЙрддреНрд╕реБрдХ рд╣реВрдВ рдХрд┐ рд╡реЗ рдХреНрдпрд╛ рджрд┐рдЦрддреЗ рд╣реИрдВ, рдЬрд┐рддрдиреА рдЬрд▓реНрджреА рд╣реЛ рд╕рдХреЗ, рдпрд╣ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рдХрд┐ рдЙрдирдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдирд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред

рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ, рдореБрдЭреЗ "рдкрд╣рд▓реЗ рджреЗрдЦреЗ рдЧрдП" рд░рд┐рдЬрд╝реЙрд▓реНрдпреВрд╢рди рд▓реЙрдЬрд┐рдХ рдХреЛ рдПрдХ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдореЗрдВ рд╕рдВрдХреНрд░рдордг рдЕрд╡рдзрд┐ рд╕реЗ рдЕрдзрд┐рдХ рд╕рдордп рддрдХ рд░рдЦрдиреЗ рдХрд╛ рдХреЛрдИ рдорддрд▓рдм рдирд╣реАрдВ рджрд┐рдЦрддрд╛ рд╣реИред

рдЖрдИрдбреАрдХреЗ, рдореИрдВ рдЗрд╕ "рдлреАрдЪрд░" рдХрд╛ рдЙрдкрдпреЛрдЧ рдмрд┐рд▓реНрдб рдХреЗ рд╕рд╛рде рдХреБрдЫ рд╕реБрдВрджрд░ рдкрд╛рдЧрд▓ рд╕рд╛рдорд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░рддрд╛ рд╣реВрдВ, рдЬреИрд╕реЗ ...

# install just the packages I've built specifically
pip install --no-index --no-deps --find-links=/path/to/my/local/build/cache -r local-reqs.txt

# ...snip to later in a dockerfile, etc...

# install the deps from public PyPI
pip install -r local-reqs.txt

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

рд▓реЗрдХрд┐рди рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ "рдмреЗрд╡рдХреВрдл рд╕рдВрдХрд▓реНрдк" рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рдЕрднреА рднреА рдЙрдкрдпреЛрдЧ рд╣реЛред

рдореИрдВ @pradyunsg рд╕реЗ рд╕рд╣рдордд рд╣реВрдВред рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛ рдХрд┐ рдореМрдЬреВрджрд╛ рдХреЛрдб рдФрд░ рдПрдХ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЛ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд▓ рддрдХ рдмрдирд╛рдП рд░рдЦрдирд╛ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рд╣реИред рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдкрд┐рдк рдореЗрдВрдЯреЗрдирд░ рдХреЗ рд░реВрдк рдореЗрдВ рдореБрдЭреЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдореЗрдВ рдХреЛрдИ рджрд┐рд▓рдЪрд╕реНрдкреА рдирд╣реАрдВ рд╣реИред

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

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

рдХреНрдпрд╛ рдХреЛрдИ рдЕрдиреНрдп рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдпрд╛рдж рдХрд┐рдпрд╛ рд╣реИ? рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдХреЛрдИ рднреА рдЬрд╣рд╛рдВ рдкреБрд░рд╛рдиреЗ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЛ рдмрд╣рд┐рд╖реНрдХреГрдд рдХрд░рдирд╛ рдФрд░ рдлрд┐рд░ рдирд┐рдХрд╛рд▓рдирд╛ рд╕рдВрднрд╡ рдирд╣реАрдВ рд╣реИ?

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

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

  1. рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдмрд╣реБрдд рдзреАрдорд╛ рд╣реИ (рдХреЛрдВрдбрд╛ рджреЗрдЦреЗрдВ)ред рдЕрдЧрд░ рдореБрдЭреЗ 20 рдорд┐рдирдЯ рд╕реЗ рдЕрдзрд┐рдХ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░, рдпрд╛ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЗ рдмреАрдЪ рдЪрдпрди рдХрд░рдирд╛ рд╣реИ, рддреЛ рдЕрдХреНрд╕рд░ рдореИрдВ рд╡рд░реНрддрдорд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ (рдпрд╛ рдХрдо рд╕реЗ рдХрдо рдХреЛрд╢рд┐рд╢ рдХрд░реЗрдВ; рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдпрд╣ рдПрдХ рдкрд░рд┐рдгрд╛рдо рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рд╣реЛрдЧрд╛ рдЬреЛ рдареАрдХ рд╣реИ)ред

  2. рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдЧрд▓рддред рдЖрдЬ рдЗрддрдиреА рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдРрд╕реЗ рдорд╛рдорд▓реЛрдВ рдХреА рдХрд▓реНрдкрдирд╛ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рд▓ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП рд▓реЗрдХрд┐рди рдирд╣реАрдВред рдкреАрдИрдкреАрдЖрдИ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреЛрдВрдбрд╛/рдХреЛрдВрдбрд╛-рдлреЛрд░реНрдЬ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд╕реЗ рднреА рдмрджрддрд░ рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реИ, рдФрд░ рдпрд╣ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдХреЛрдВрдбрд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реИред рдпрджрд┐ рдпрд╣ рдЧрд▓рдд рд╣реИ рдФрд░ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ рдореБрдЭреЗ рдХреЛрдИ рд╕рдорд╛рдзрд╛рди рдирд╣реАрдВ рдорд┐рд▓ рд░рд╣рд╛ рд╣реИ, рддреЛ рдореИрдВ рдХреБрдЫ рдСрдкреНрдЯ-рдЖрдЙрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред

@rgommers 6 рдХреЗ рд▓рд┐рдП, "рдЗрд╕ рдкреИрдХреЗрдЬ рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рд╕рдВрдШрд░реНрд╖реЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ" рд╢реИрд▓реА рд╡рд┐рдХрд▓реНрдк рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд╣реИ рдирд╛?

рдзрдиреНрдпрд╡рд╛рдж, @rgommers - рд╡реЗ рдЕрдЪреНрдЫреЗ рдЕрдВрдХ рд╣реИрдВред

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

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

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

рд╕реНрдерд╛рдиреАрдп рд╡реНрд╣реАрд▓рд╣рд╛рдЙрд╕ рд╕реЗ рдХреБрдЫ рдкреВрд░реНрд╡-рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдореИрдВ рдЗрд╕реЗ рдЕрдкрдиреА рдирд┐рд░реНрднрд░рддрд╛рдУрдВ рдХреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣ рд░рд╣рд╛ рд╣реВрдВред

@jriddy "рд╕рдВрдЧрдд рд╣реЛрдиреЗ рдкрд░ рдореМрдЬреВрджрд╛ рдЗрдВрд╕реНрдЯреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ" рдХреА рд╕рдВрдХрд▓реНрдк рд░рдгрдиреАрддрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░реЗрдЧреАред

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

https://github.com/pradyunsg/zazo/

6 рдХреЗ рд▓рд┐рдП, "рдЗрд╕ рдкреИрдХреЗрдЬ рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рд░реЛрдзреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ" рд╢реИрд▓реА рд╡рд┐рдХрд▓реНрдк рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд╣реИ рдирд╛?

рд╣рд╛рдБ, рдпрд╣ рд╕рд╣реА рд╡рд┐рдХрд▓реНрдк рд▓рдЧрддрд╛ рд╣реИ

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

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

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдзреНрдпрд╛рди рд░рдЦреЗрдВ рдХрд┐ рдпрд╣ _рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рддрдм рддрдХ рдЖрд╡рд╢реНрдпрдХ рд╣реЛрдЧрд╛ рдЬрдм рддрдХ рдХрд┐ рдЖрдк:

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

рдЦрд░рд╛рдм рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕ рдкрд░ рдореИрдВ рд╡рд┐рдЪрд╛рд░ рдХрд░реВрдВрдЧрд╛ "рд╣рдо рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗ"

рдХрд╛рдлреА рдЙрдЪрд┐рддред "рд╣рдо рд╕рд╣реА рдореЗрдЯрд╛рдбреЗрдЯрд╛ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд░рддреЗ" рдкрд░ рдкреВрд░рд╛ рд░реБрдЦ рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣рд╛рдВ рдорджрдж рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЬрдм рддрдХ рд╡рд╣ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдирд╣реАрдВ рдмрджрд▓рд╛? (рдФрд░ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдпрд╣ рдПрдХ рдкреАрдкреАрдкреАрдЖрдИ рдЪреАрдЬ рд╣реИ рди рдХрд┐ рдкреАрдЖрдИрдкреА рдЪреАрдЬ - рд▓реЗрдХрд┐рди рдпрд╣ рд╕рдВрдмрдВрдзрд┐рдд рд╣реИ)ред

рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╡реЗ рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ рдЬреЛ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рдХрд░рддреЗ рд╣реИрдВред

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

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

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

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

@wolfv рдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреЛрдВрдбрд╛ рдХреЗ рд▓рд┐рдП libsolv рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрддрд╛ рд▓рдЧрд╛рдпрд╛ред рд╡рд╣ рдЕрдВрддрддрдГ рдирд┐рд░рд╛рд╢ рдерд╛ рдХрд┐ рдЙрд╕реЗ рдХреЛрдВрдбрд╛ рдХреЗ рд╕рдорд╛рди рдЙрддреНрддрд░ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ рдорд┐рд▓рд╛ред рдпрд╣ рджреГрд╖реНрдЯрд┐рдХреЛрдгреЛрдВ рдХреЗ рдмреАрдЪ рдЗрд╕ рдЕрдВрддрд░ рддрдХ рдЙрдмрд▓ рдЧрдпрд╛ред Libsolv рдПрдХ рдмреИрдХрдЯреНрд░реИрдХрд┐рдВрдЧ рд╕реЙрд▓реНрд╡рд░ рд╣реИред рдпрд╣ рдЪреАрдЬреЛрдВ рдХреЛ рдЧрддрд┐ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╕рдВрдХрд▓рд┐рдд рдРрдб-рдСрди рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЖрдк рд╕реАрдзреЗ рдкреАрдЖрдИрдкреА рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рдХреЛрдб рдХреЛ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдХрд░рдиреЗ рдХреЗ рдкреНрд░рддрд┐ рд╕рдВрд╡реЗрджрдирд╢реАрд▓ рд╣реИрдВред

( @pradyunsg рдиреЗ рдЕрднреА рдЕрдкрдиреЗ рдмреНрд▓реЙрдЧ рдкрд░ рдЕрдЧрд╕реНрдд рдЕрдкрдбреЗрдЯ рдкреЛрд╕реНрдЯ рдХрд┐рдпрд╛ рд╣реИред)

рдХреБрдЫ рд╕рд╡рд╛рд▓ рдФрд░ рдЬрд░реВрд░рддреЗрдВ рдЬреЛ рд▓реЛрдЧ рдЕрднреА рдЙрдард╛ рд░рд╣реЗ рд╣реИрдВ, рд╡реЗ рдЪреАрдЬреЗрдВ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдореЗрдВ рдЕрднреА рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рд╣реИ, рдЬреИрд╕реЗ рдкрд░реАрдХреНрд╖рдг рдорд╛рдорд▓реЗред

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

  • рд▓реЙрдЬрд┐рдХ рд░рд┐рдлреНрд▓реЗрдХреНрдЯрд░ рдХрд╛ рдирд┐рд░реНрдорд╛рдг: рдкреНрд░рдЧрддрд┐ рдкрд░ рд╣реИ, рдХрднреА-рдХрднреА рджрд┐рд╕рдВрдмрд░-рдлрд░рд╡рд░реА рдореЗрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
  • рдпреВрдПрдХреНрд╕ рдЕрдиреБрд╕рдВрдзрд╛рди рдФрд░ рдбрд┐рдЬрд╛рдЗрди, рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХрд╛ рдкрд░реАрдХреНрд╖рдг, рдбрд╛рдЙрдирд╕реНрдЯреНрд░реАрдо рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рд╕реЗ рдХреЙрдиреНрдлрд┐рдЧ рдлреНрд▓реИрдЧ рдФрд░ рдЯреНрд░рд╛рдВрдЬрд┐рд╢рди рд╢реЗрдбреНрдпреВрд▓ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рдирд╛: рд╣рдореЗрдВ рдЗрд╕рдХреЗ рд▓рд┐рдП рдзрди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ; рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рд╢реБрд░реБрдЖрдд рд╕рдВрднрд╡рдд: рджрд┐рд╕рдВрдмрд░ рд╣реИ, рдЗрд╕рдореЗрдВ 2-3 рдорд╣реАрдиреЗ рд▓рдЧреЗрдВрдЧреЗ
  • рдЕрд▓реНрдлрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╕рдордп resolvelib/zazo рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдЕрдореВрд░реНрддрддрд╛ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрдВ: рдХреБрдЫ рдорд╣реАрдиреЗ рд▓рдЧреЗрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП, рд░реВрдврд╝рд┐рд╡рд╛рджреА рд░реВрдк рд╕реЗ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддреЗ рд╣реБрдП, рдордИ 2020?
  • рдмреЗрд╣рддрд░ рдирд┐рд░реНрднрд░рддрд╛ рд╕рдорд╛рдзрд╛рди рдЕрдкрдирд╛рдирд╛ рдФрд░ рдмреАрдЯрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдирд╛: ?

рдХреНрдпрд╛ рдпрд╣ рд╕рд╣реА рд╣реИ? рдореБрдЭреЗ рдХрд┐рд╕рдХреА рдпрд╛рдж рдЖ рд░рд╣реА рд╣реИ?

рдореИрдВ рдкреВрдЫрддрд╛ рд╣реВрдВ рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рдЬрд╛рдирдХрд╛рд░реА рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдХрд╛ рдХрд╛рдо рдПрдХ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдореИрдиреЗрдЬрд░ рдФрд░/рдпрд╛ рдпреВрдПрдХреНрд╕ рд╢реЛрдзрдХрд░реНрддрд╛ рдХреЛ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдФрд░ рдХреНрдпреЛрдВрдХрд┐ рдХреБрдЫ рдкреНрд░рдЧрддрд┐ https://github.com/pypa/packaging-problems/issues/264 рдФрд░ рдЕрдиреНрдп рдореБрджреНрджреЗ рдЙрди рдЪрд┐рдВрддрд╛рдУрдВ рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рд▓реЛрдЧреЛрдВ рдиреЗ рдпрд╣рд╛рдВ рд▓рд╛рдпрд╛ рд╣реИред

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

рдЪреВрдВрдХрд┐ setup.py / pyproject.toml рдХреЗ рдЕрдкрд╡рд╛рдж рдХреЗ рдмрдЬрд╛рдп рдЕрдкреНрд░рддрд┐рдмрдВрдзрд┐рдд рдирд┐рд░реНрднрд░рддрд╛ рдпрд╛ >= some_old_version рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдирд┐рдпрдо рд╣реИ, рдпрд╣ рдПрдХ рд╕рдорд╕реНрдпрд╛ рд╣реЛрдЧреАред рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ "рдЧрд▓рдд рдмрд╛рдзрд╛" рд╣реИ рдпрд╛ рд╕реЙрд▓реНрд╡рд░ рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдХрд▓реНрдк рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ - рдпрд╣ рдкреАрдкреАрдкреАрдЖрдИ рдкрд░ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХреА рд╕реНрдерд┐рддрд┐ рд╣реИред

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

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

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

рдПрдХ рдЙрджрд╛рд╣рд░рдг рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдЬрд┐рд╕реЗ рдХреЛрдВрдбрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдкрд╛рдЗрдк рдирд╣реАрдВ рд╣реЛрдЧрд╛: рдПрдирд╛рдХреЛрдВрдбрд╛ рдпрд╛ рдорд┐рдиреАрдХреЛрдВрдбрд╛ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдЬрдЧрд░ 3 рдХреЗ рд╕рд╛рде рдЕрдЬрдЧрд░ 3.7 рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХрднреА-рдХрднреА рдХреБрдЫ рдРрд╕рд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рдХреЗрд╡рд▓ рдЕрдЬрдЧрд░ 3.6 рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛред рд╕реЙрд▓реНрд╡рд░ рдХреЛ рдЕрдЬрдЧрд░ рдФрд░ рдЕрдиреНрдп рд╕рднреА рдЧреИрд░-рдиреЛрдЖрд░реНрдХ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╢рд╛рдпрдж рдкрд╛рдЗрдерди рд╕рдВрд╕реНрдХрд░рдг рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдХреЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рдмрд╛рдд рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдкреИрдХреЗрдЬ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реЗ рдореЗрдВ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред "рдЗрд╕рдиреЗ рдЕрдм рддрдХ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ" рдЧреВрдВрдЧрд╛ рднрд╛рдЧреНрдп рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рд░ рд╕рдордп рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

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

pip _can_ рдЪреАрдЬреЛрдВ рдХреЛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рднреА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдпрд╣ рдХрд░ рд╕рдХрддрд╛ рд╣реИ - рдкрд╛рдЗрдк рдХреЗ рд▓рд┐рдП, рдбрд╛рдЙрдирдЧреНрд░реЗрдбрд┐рдВрдЧ рдЕрдкрдЧреНрд░реЗрдб рдХрд░рдиреЗ рдЬреИрд╕рд╛ рдПрдХ рдЕрдирдЗрдВрд╕реНрдЯреЙрд▓-рдЗрдВрд╕реНрдЯреЙрд▓ рдХрджрдо рд╣реИред рдФрд░ рдпрд╣ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реИ рдЬрдм рдЙрд╕реЗ рдПрдХ рдмрд╛рдзрд╛ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ рдЬрд┐рд╕реЗ рд╕рдВрддреБрд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдЧрдпрд╛ рд╣реИред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕реЗрдЯрдЕрдкрдЯреВрд▓ рдХреЛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реИ - рдЬрдм рддрдХ рдХрд┐ рдпрд╣ рдкрд╣рд▓реА рдЪреАрдЬ рд╣реИ рдЬреЛ рдкрд╛рдЗрдк рджреЗрдЦрддрд╛ рд╣реИ:

pip install "setuptools < 20.0"

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

https://github.com/pradyunsg/zazo/

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

рдПрдХ рдЙрджрд╛рд╣рд░рдг рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдЬрд┐рд╕реЗ рдХреЛрдВрдбрд╛ рдХреЗ рд╕рд╛рде рд╕рдВрдШрд░реНрд╖ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдкрд╛рдЗрдк рдирд╣реАрдВ рд╣реЛрдЧрд╛: рдПрдирд╛рдХреЛрдВрдбрд╛ рдпрд╛ рдорд┐рдиреАрдХреЛрдВрдбрд╛ рдХреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдЕрдЬрдЧрд░ 3 рдХреЗ рд╕рд╛рде рдЕрдЬрдЧрд░ 3.7 рд╕реЗ рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдХрднреА-рдХрднреА рдХреБрдЫ рдРрд╕рд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ рдЬреЛ рдХреЗрд╡рд▓ рдЕрдЬрдЧрд░ 3.6 рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛред рд╕реЙрд▓реНрд╡рд░ рдХреЛ рдЕрдЬрдЧрд░ рдФрд░ рдЕрдиреНрдп рд╕рднреА рдЧреИрд░-рдиреЛрдЖрд░реНрдХ рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рдпрд╣ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдорд╛рдорд▓рд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╢рд╛рдпрдж рдкрд╛рдЗрдерди рд╕рдВрд╕реНрдХрд░рдг рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдХреЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЗрд╕ рдмрд╛рдд рдХреЛ рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдкреИрдХреЗрдЬ рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП рджреВрд╕рд░реЗ рдореЗрдВ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред "рдЗрд╕рдиреЗ рдЕрдм рддрдХ рдХрд╛рдо рдХрд┐рдпрд╛ рд╣реИ" рдЧреВрдВрдЧрд╛ рднрд╛рдЧреНрдп рд╣реИ, рдЬреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╣рд░ рд╕рдордп рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред

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

рдПрдХ рдЕрдиреНрдп рдЙрджрд╛рд╣рд░рдг рдЪреИрдирд▓реЛрдВ рдХреЗ рдмреАрдЪ рдЕрд╕рдВрдЧрддрд┐ рд╣реИред рд╣рд╛рд▓рд┐рдпрд╛ рдЙрджрд╛рд╣рд░рдг: рд╣рдо рдкрд╛рдпрдерди 3.7.3 рдкрд░ рдереЗ, рдлрд┐рд░ base рдХреЛ 3.7.4 рдорд┐рд▓рд╛ред рдореБрдЭреЗ рдЙрди рд╕рдВрд╕реНрдХрд░рдг рдЕрдВрддрд░реЛрдВ рдХреА рдкрд░рд╡рд╛рд╣ рдирд╣реАрдВ рд╣реИ, рдФрд░ рдЕрдзрд┐рдХрд╛рдВрд╢ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╣реАрдВ рдХрд░реЗрдВрдЧреЗред рдПрдХ рдбрд┐рдлрд╝реЙрд▓реНрдЯ "рдХреБрдЫ рднреА рди рдХрд░реЗрдВ" "рд╣реЗ .4 > .3 рд╕реЗ рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛, рдЖрдЗрдП рдЗрд╕реЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВ рдФрд░ рдлрд┐рд░ рдЕрдиреНрдп рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдЪреИрдирд▓реЛрдВ рдХреЛ base рдореЗрдВ рдмрджрд▓реЗрдВ рдпрджрд┐ рд╣рдореЗрдВ (рднрд▓реЗ рд╣реА рд╡рд╣ рдЙрдиреНрд╣реЗрдВ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реЛ)"ред

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

рдпрд╣ рдПрдХ рдмрд╣реБрдд рд╣реА рдЙрдкрдпреЛрдЧреА рд╕реБрдзрд╛рд░ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред

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

рд╣рд╛рдВ, рдпрд╣ рд╕рд╣реА рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдЖрдИрдбреАрдИ, рд╡рд┐рддрд░рдг рдпрд╛ "рд╕рд╛рдорд╛рди рдХреЗ рд╕рдореВрд╣ рдХреЗ рд▓рд┐рдП рд╕рд╛рдорд╛рдиреНрдп рдЗрдВрдЯрд░рдлрд╝реЗрд╕" рдореЗрдВ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реИред

рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд setuptools . рдХреЛ рдбрд╛рдЙрдирдЧреНрд░реЗрдб рдХрд░рддрд╛ рд╣реИ

рдпрд╣ рдПрдХ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдЕрдиреБрд░реЛрдзрд┐рдд рдбрд╛рдЙрдирдЧреНрд░реЗрдб рд╣реИред рдПрдХ рдЕрдкреНрд░рддреНрдпрдХреНрд╖ рд╡рд╣ рд╣реИ рдЬреЛ рдореЗрд░рд╛ рдорддрд▓рдм рдерд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП setuptools<20.0 pyproject.toml` рдореЗрдВ)ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рднреА рдХрд╛рдо рдХрд░реЗрдЧрд╛, рд▓реЗрдХрд┐рди рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдпрд╣ рджреБрд░реНрд▓рдн рд╣реИред

рдорд╛рдирд╕рд┐рдХрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ "рдХрдЪрд░рд╛ рдЕрдВрджрд░, рдХрдЪрд░рд╛ рдмрд╛рд╣рд░" рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛ рдпрд╣ рд╣реИ рдХрд┐ рд╕реЙрд▓реНрд╡рд░ рдХреЗ рд░рдЦрд░рдЦрд╛рд╡ рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдк рдмреИрдЧ рдкрдХрдбрд╝ рд░рд╣реЗ рд╣реИрдВред

100% рд╕рд╣рдорддред рдпрд╣ рдХреБрдЫ рдРрд╕рд╛ рд╣реИ рдЬрд┐рд╕реЗ рдмрд╣реБрдд рд╕рд╛рд╡рдзрд╛рдиреА рд╕реЗ рд╕рдВрднрд╛рд▓рдирд╛ рд╣реЛрдЧрд╛ред рд▓реЗрдХрд┐рди рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдХрд┐рд╕реА рднреА рдкреБрд░рд╛рдиреЗ рдХрдмрд╛рдбрд╝ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдордЭрджрд╛рд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рдирд╣реАрдВ рд╣реИ - рд╣рдореЗрдВ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдПрдХ рд░реЗрдЦрд╛ рдЦреАрдВрдЪрдиреА рд╣реЛрдЧреАред

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

рдФрд░ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЛрдВ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд▓рд┐рдП, рдкреБрд░рд╛рдиреЗ рдФрд░ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рд╡реИрд╕реЗ рднреА рд╕рдорд╛рди рдкрд░рд┐рдгрд╛рдо рджреЗрдВрдЧреЗред

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

рдХрд┐рд╕реА рднреА рдкреБрд░рд╛рдиреЗ рдХрдмрд╛рдбрд╝ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдордЭрджрд╛рд░ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░рдирд╛ рд╡реНрдпрд╡рд╣рд╛рд░реНрдп рдирд╣реАрдВ рд╣реИ - рд╣рдореЗрдВ рдХрд╣реАрдВ рди рдХрд╣реАрдВ рдПрдХ рд░реЗрдЦрд╛ рдЦреАрдВрдЪрдиреА рд╣реЛрдЧреАред

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

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

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

"рджрд╛рдПрдВ" рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдХреЛрдИ рдорд╛рдпрдиреЗ рдирд╣реАрдВ рд░рдЦрддрд╛ рдЬрдм рд╡реЗ рдЖрдкрдХреЗ рдкрд░рд┐рд╡рд░реНрддрдиреЛрдВ рд╕реЗ рдЯреВрдЯ рдЬрд╛рддреЗ рд╣реИрдВред

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

рдпрд╣ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЬрдЯрд┐рд▓ рдмрд┐рдВрджреБ рд╣реИред рдЖрдк рдореВрд▓ рд░реВрдк рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдХреВрд▓рди рдорд╛рдирджрдВрдб рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдЖрдкрдиреЗ https://www.anaconda.com/understanding-and-improving-condas-performance/ рдкрд░ рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдореЗрдВ рд╡рд░реНрддрдорд╛рди 11 рдЪрд░рдгреЛрдВ рдХреЛ рджреЗрдЦрд╛ рд╣реЛрдЧрд╛ред

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

рдирдорд╕реНрддреЗ, рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рдореЗрд░рд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП @msarahan рдзрдиреНрдпрд╡рд╛рджред рдореИрдВ рдкрд╣рд▓реЗ рдЭрдВрдХрд╛рд░ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рдерд╛ рд▓реЗрдХрд┐рди рд╕рдордп рдирд╣реАрдВ рдорд┐рд▓рд╛ред

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

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

рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдПрдХ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЗ рд▓рд┐рдП libsolv рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╡рдХрд╛рд▓рдд рдХрд░рддрд╛ рд╣реВрдВ, рднрд▓реЗ рд╣реА рдпрд╣ рд╕рдВрдХрд▓рд┐рдд рдХреЛрдб рдХрд╛ рдПрдХ рдмреНрд▓реЙрдм рд╣реИ (рдХрдо рд╕реЗ рдХрдо рдпрд╣ рддреЗрдЬрд╝ рд╣реИ) рдФрд░ @mlschroe рдорджрдж рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реЛ рд╕рдХрддрд╛ рд╣реИ - рдЙрд╕рдиреЗ libsolv рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдмрд╣реБрдд рдорджрдж рдХреА рдХреЛрдВрдбрд╛ рдореИрдЪрд╕реНрдкреЗрдХред

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

рдЖрдкрдиреЗ https://www.anaconda.com/understanding-and-improving-condas-performance/ рдкрд░ рд╣рдорд╛рд░реЗ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдореЗрдВ рд╡рд░реНрддрдорд╛рди 11 рдЪрд░рдгреЛрдВ рдХреЛ рджреЗрдЦрд╛ рд╣реЛрдЧрд╛ред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдореИрдВрдиреЗ рдХрд┐рдпрд╛ред рд╡рд╣ рдПрдХ рдЕрдЪреНрдЫрд╛ рдмреНрд▓реЙрдЧ рдкреЛрд╕реНрдЯ рдерд╛ред

рдЖрдк рдореВрд▓ рд░реВрдк рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдХреВрд▓рди рдорд╛рдирджрдВрдб рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЬрд╝рд░реВрд░реА рдирд╣реАрдВред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ _"рдмрд╛рдЗрдирд░реА рд╕рдВрдЧрддрддрд╛ рдмрд╛рдзрд╛ рдмрдирд╛рдо рдПрдХ рд╕рд╛рджрд╛ рдФрд░ рд╕рд░рд▓ рд╕рдВрд╕реНрдХрд░рдг рдмрд╛рдзрд╛"_ рдмрд╕ рдХреБрдЫ рдРрд╕рд╛ рдЗрдВрдЧрд┐рдд рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рд╢рд╛рдпрдж рдпрд╛рдж рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдореИрдВ рдЬреЛ рдЙрдореНрдореАрдж рдХрд░рддрд╛ рд╣реВрдВ рд╡рд╣ рдпрд╣ рд╣реИ рдХрд┐ рдХрд┐рд╕реА рднреА рдкреИрдХреЗрдЬ рдореЗрдВ python >= 3.7.4 рдпрд╛ == 3.7.4 рдЗрд╕рдХреЗ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдореЗрдВ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП, рдпрд╣ рд╣рдореЗрд╢рд╛ == 3.7 рд╣реЛрддрд╛ рд╣реИ (рдмрд╕ scipy рдХреЗ рд▓рд┐рдП рдЬрд╛рдБрдЪ рдХреА рдЬрд╛рддреА рд╣реИ, meta.yaml рдХрд╣рддрд╛ рд╣реИ python рдФрд░ conda_forge.yml рдХрд╣рддреЗ рд╣реИрдВ max_py_ver: '37' - рд╕рдордЭ рдореЗрдВ рдЖрддрд╛ рд╣реИ)ред рдЗрд╕рд▓рд┐рдП 3.7.4 рдХреЛ рдкреЗрд╢ рдХрд░рдиреЗ рд╕реЗ рдХреБрдЫ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП - 3.7.3 рдЪрдпрди рдХрд░рдиреЗ рд╡рд╛рд▓рд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдФрд░ рдХреБрдЫ рдФрд░ рдирд╣реАрдВ рдмрджрд▓рдирд╛ 3.7.4 рдХреЛ рдордЬрдмреВрд░ рдХрд░рдиреЗ рдФрд░ рдЯреНрд░рд┐рдЧрд░ рдХрд░рдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рд╕рд╕реНрддрд╛ (рдФрд░ рдЖрдкрдХреЗ 11 рдЪрд░рдгреЛрдВ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдорд╛рдиреНрдп) рд╣реИред рдЕрдк / рдбрд╛рдЙрди-рдЧреНрд░реЗрдб рдХреА рд╢реНрд░реГрдВрдЦрд▓рд╛ред

рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рдпрд╣ рд╣рд┐рд╕реНрд╕рд╛ pip рд░реЛрд▓рдЖрдЙрдЯ рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╖рдп рд╕реЗ рд╣рдЯрдХрд░ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЗрд╕реЗ рдХрд╣реАрдВ рдФрд░ рд▓реЗ рдЬрд╛рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд░рд╣реА рд╣реИред

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

+1

рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛: рдЗрд╕реЗ рдпрдерд╛рд╕рдВрднрд╡ рдорд░рдореНрдордд рдпреЛрдЧреНрдп рдмрдирд╛рдПрдВ (рд░рдЦреЗрдВ)ред pip рдХреЗ рд╕рд╛рде рдпрд╣ рдЕрдЪреНрдЫреА рдмрд╛рдд рд╣реИ, рдЕрдЧрд░ рдпрд╣ рдЧрдбрд╝рдмрдбрд╝ рд╣реЛ рдЬрд╛рддреА рд╣реИ рддреЛ рдЖрдорддреМрд░ рдкрд░ рдХреЛрдИ cd site-packages && rm -rf troublesome_package (рд╕рдВрднрд╡рддрдГ --no-deps рдХреЗ рд╕рд╛рде рдкреБрдирд░реНрд╕реНрдерд╛рдкрд┐рдд рдХрд░рдХреЗ) рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЪреАрдЬреЗрдВ рдлрд┐рд░ рд╕реЗ рдХрд╛рдо рдХрд░рддреА рд╣реИрдВред conda , apt рдФрд░ рджреЛрд╕реНрддреЛрдВ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рд╕реБрдзрд╛рд░рдирд╛ рдмрд╣реБрдд рдХрдард┐рди рд╣реИред

рдЖрдк рдореВрд▓ рд░реВрдк рд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдЕрдиреБрдХреВрд▓рди рдорд╛рдирджрдВрдб рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВред

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

рдкреИрдХреЗрдЬ рдореЗрдВ рдЕрдЬрдЧрд░ рдирд╣реАрдВ рд╣реИ> = 3.7.4, рди рд╣реА == 3.7.4ред рдХреЛрдВрдбрд╛ рдкреИрдХреЗрдЬрд┐рдВрдЧ рдореЗрдВ рдорд╛рдирдХ рдКрдкрд░реА рдФрд░ рдирд┐рдЪрд▓реА рдмрд╛рдЙрдВрдб рд╣реЛрдирд╛ рд╣реИред рдпреЗ рдЖрдо рддреМрд░ рдкрд░ рдХреЛрдВрдбрд╛-рдмрд┐рд▓реНрдб рджреНрд╡рд╛рд░рд╛ рдиреБрд╕реНрдЦрд╛ рд▓реЗрдЦрдХ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ рдЬрд╛рдирдХрд╛рд░реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд░реВрдк рд╕реЗ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдПрдХ рд╕рдВрдЧрдд рд╢реНрд░реЗрдгреА рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдХрд┐рддрдиреЗ рд╕реНрдерд╛рди рд╣реИрдВред рдкреИрдХреЗрдЬ рдореЗрдВ>=3.7.2,<3.8.0a0 рдЬреИрд╕реА рдмрд╛рдзрд╛рдПрдВ рд╣реИрдВ, 0a0 рдЕрдЬреАрдмрддрд╛ рдХреЗ рд╕рд╛рде рдЗрд╕ рддрдереНрдп рдХреЗ рд▓рд┐рдП рдЦрд╛рддреЗ рдореЗрдВ рд╣реИ рдХрд┐ рдкреНрд░реАрд░рд┐рд▓реАрдЬ рд╕рдВрд╕реНрдХрд░рдг .0 рд░рд┐рд▓реАрдЬ рд╕реЗ рдиреАрдЪреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕ рдкреНрд░рдХрд╛рд░ <3.8.0 рд╕реНрдкреЗрдХ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреЗ рд╣реИрдВ рдЬрд╣рд╛рдВ рд▓реЛрдЧ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХреА рдЙрдореНрдореАрдж рд╣реИред

рдкреИрдХреЗрдЬ рдореЗрдВ рдЙрдирдХреЗ рд╕рд╛рде рдЬреБрдбрд╝рд╛ рдПрдХ рдЪреИрдирд▓ рднреА рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдЪреИрдирд▓ рдкреНрд░рднрд╛рд╡реА рд░реВрдк рд╕реЗ рд╕рдВрд╕реНрдХрд░рдг рдЕрдиреБрдХреВрд▓рди рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ: https://github.com/conda/conda/blob/4.6.7/conda/resolve.py#L1074 - рдЪреИрдирд▓ рдПрдХ рд╕реБрдкрд░-рд╕рдВрд╕реНрдХрд░рдг рдХреА рддрд░рд╣ рд╣реИ, рдПрдХ рд╕реНрдерд╛рди рдЖрдЧреЗ рд╣реИ рдкреИрдХреЗрдЬ рдХрд╛ рдкреНрд░рдореБрдЦ рд╕рдВрд╕реНрдХрд░рдгред рдпрджрд┐ рдХреЛрдИ рд╣рд▓ рдЕрдЬрдЧрд░ рдХреЛ рдирд╣реАрдВ рдмрджрд▓рдирд╛ рдЪрд╛рд╣рд┐рдП, рддреЛ рдЕрдЬрдЧрд░ рдХрд▓реНрдкрдирд╛ рдЕрдЬрдЧрд░ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддреА ==3.7 - рдпрд╣ рдПрдХ рд╕реАрдорд╛ рд╣реИ, рдФрд░ рдЪреИрдирд▓ рдЙрд╕ рд╕реАрдорд╛ рдХреЛ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░реЗрдЧрд╛ред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рдПрдХ рдЕрдЬрдЧрд░ ==3.7 рдХрд▓реНрдкрдирд╛ рд╣реЛрдирд╛ рдФрд░ defaults рдЪреИрдирд▓ рд╕реЗ рдПрдХ рдЗрдВрд╕реНрдЯрд╛рд▓реЗрд╢рди рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рдирд╛, рдлрд┐рд░ conda-forge рдЪреИрдирд▓ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдмрд╣реБрдд рдордВрдерди рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдирдП рдкрд╛рдпрдерди рдкреИрдХреЗрдЬ рдкреЗрд╢ рдХрд┐рдП рд╣реИрдВ "рд╕рдВрд╕реНрдХрд░рдг" (рдЪреИрдирд▓ рд╕рд╣рд┐рдд) рдореЗрдВ рдЙрдЪреНрдЪ рд╣реИрдВ, рдФрд░ рдЖрдкрдХрд╛ рдЕрдЬрдЧрд░ рдХрд▓реНрдкрдирд╛ рдЙрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд▓рд┐рдП рдЕрдиреБрдордд рд╣реИред

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

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

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

(рд▓рд┐рдмрд╕реЛрд▓реНрд╡ рд╕реНрдкрд░реНрд╢рд░реЗрдЦрд╛: рд╡рд╛рдкрд╕ рдЬрдм рдореИрдВ рдЖрд░рдПрдЪ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рдерд╛, рдореИрдВрдиреЗ рдлреЗрдбреЛрд░рд╛ рдкрд░ "рдкрд╛рдЗрдк рдЗрдВрд╕реНрдЯрд╛рд▓ рд╕реЙрд▓реНрд╡" рд╕реБрд░рдХреНрд╖рд╛ рдЦрд╛рдореА рдХреЛ рдмрдВрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП https://pypi.org/project/solv/ рдХреЛ рдкрдХрдбрд╝ рд▓рд┐рдпрд╛, рдХреНрдпреЛрдВрдХрд┐ libsolv рдмрд┐рд▓реНрдб рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдПрдХ рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд░рддреА рд╣реИ рдЗрд╕ рд╕рдордп sdist рдпрд╛ рд╡реНрд╣реАрд▓ рдЖрд░реНрдХрд╛рдЗрд╡, рдЗрд╕реЗ рдХреЗрд╡рд▓ PyPI рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рджреЗрдВред рдХрд┐рд╕реА рд╕реЗ рднреА рдЪреИрдЯ рдХрд░рдиреЗ рдореЗрдВ рдЦреБрд╢реА рд╣реЛ рд╕рдХрддреА рд╣реИ, рдЬреЛ рдЙрди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЛ libsolv рдХреА рдПрдХ рдмрдВрдбрд▓ рдХреЙрдкреА рдХреЗ рд╕рд╛рде рдмрдирд╛рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддрд╛ рд╣реИ, рдмрдЬрд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдЕрдм рдпрд╣ рд╕рд╣рдЬ рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рд╣реИ)

рдореЗрд░реА "рдСрдкреНрдЯрд┐рдВрдЧ рдЖрдЙрдЯ" рдЯрд┐рдкреНрдкрдгреА рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ, рдореЗрд░рд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ "рдкреБрд░рд╛рдиреЗ рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рд▓реЙрдЬрд┐рдХ рдкрд░ рд╡рд╛рдкрд╕ рдЖрдПрдВ", рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ "рд╕рдВрдкреВрд░реНрдг рдЗрдВрд╕реНрдЯреЙрд▓реЗрд╢рди рдЕрдиреБрд░реЛрдз рдХреЛ рд╡рд┐рдлрд▓ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдЙрди рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рд╕реЗ рд░реЛрдХрдиреЗ рдХрд╛ рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░реЗрдВ рдЬреЛ рдмрд╛рдзрд╛ рдЙрд▓реНрд▓рдВрдШрди рдХрд╛ рдХрд╛рд░рдг рдмрдиреЗрдВрдЧреЗ"ред

рдпрдо/рдбреАрдПрдирдПрдл рдкреЗрд╢рдХрд╢ рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдЙрдирдХреЗ --skip-broken рд╡рд┐рдХрд▓реНрдк рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ (рдбреАрдПрдирдПрдл рдореЗрдВ рд╡рд╣ рдзреНрд╡рдЬ --setopt=strict=0 рдХреЗ рд▓рд┐рдП рдЙрдкрдирд╛рдо рд╣реИ), рдФрд░ рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ pip рдХреЗ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЛ рдПрдХ рд╕рдорд╛рди рд╡рд┐рдХрд▓реНрдк рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред

@ncoglan рдЖрд╣ рдареАрдХ рд╣реИред рдпрд╣ рд╕рдордЭ рдЖрддрд╛ рд╣реИред

"рдЗрд╕ рдкреИрдХреЗрдЬ рдкрд░ рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рд░реЛрдзреЛрдВ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░реЗрдВ" рд╢реИрд▓реА рд╡рд┐рдХрд▓реНрдк

рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдерд╛ рдХрд┐ рд╣рдо рдРрд╕рд╛ рдХрд░реЗрдВрдЧреЗ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЖрдкрдХреА рдЯрд┐рдкреНрдкрдгреА рд╕реЗ рднреНрд░рдорд┐рдд рд╣реЛ рдЧрдпрд╛ред

рд╣рдо рддрдм рдЙрд╕реА рдкреГрд╖реНрда рдкрд░ рд╣реИрдВред :)

@ncoghlan рдиреЗ рдбрд┐рд╕реНрдЯреБрдЯрд┐рд▓реНрд╕ -рд╕рд┐рдЧ рдкрд░ рдореЗрд░реА рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдЯрд╛рдЗрдорд▓рд╛рдЗрди рдХрд╛ рдЬрд╡рд╛рдм рджрд┐рдпрд╛ рдФрд░ рдХрд╣рд╛ рдХрд┐ рдпрд╣ рдЙрдЪрд┐рдд рд▓рдЧрддрд╛ рд╣реИред

@pradyunsg - рдЖрдкрдХреЗ рдЕрдЧрд▓реЗ рдорд╛рд╕рд┐рдХ рдЕрдкрдбреЗрдЯ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдореЗрдВ!

рдореИрдВрдиреЗ рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рд╕рдордп рдмрд┐рддрд╛рдпрд╛, рдФрд░ #7317 рджрд░реНрдЬ рдХрд┐рдпрд╛ред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рд▓рдЧрднрдЧ рд╕рд╛рд░рдЧрд░реНрднрд┐рдд рд╣реИрдВ - рдкрд╛рдЗрдк рдХреЗ рдЗрдВрдбреЗрдХреНрд╕ рдЗрдВрдЯрд░реИрдХреНрд╢рди рдкрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХрд╛рдо рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдирд┐рд░реНрднрд░рддрд╛ рд╕рдВрдХрд▓реНрдк + рддрд░реНрдХ рдЕрд▓рдЧрд╛рд╡ рдФрд░ рд╕рд╛рдорд╛рдиреНрдп рд╕рдлрд╛рдИ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдмрдирд╛рдПрдВред

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

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

@pradyunsg рдореИрдВ рдкреЛрдПрдЯреНрд░реА рдХреЛрдбрдмреЗрд╕ рд╕реЗ рдмреЗрд╕ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ (рдкрдмрдЧреНрд░рдм рдкрд░ рдЖрдзрд╛рд░рд┐рдд) рдирд┐рдХрд╛рд▓рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣рд╛ рд╣реВрдВ (рджреЗрдЦреЗрдВ https://github.com/sdispater/poetry/tree/master/poetry/mixology)ред рдпрд╣ рдЬреНрдпрд╛рджрд╛рддрд░ рдХреЛрдб рдХреЗ рдмрд╛рдХреА рд╣рд┐рд╕реНрд╕реЛрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реЛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдЖрдВрддрд░рд┐рдХ рднрд╛рдЧреЛрдВ рдХреЗ рд╕рдВрджрд░реНрдн рд╣реИрдВ рдЬрд┐рдиреНрд╣реЗрдВ рдореБрдЭреЗ рд╕рд╛рд░ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрджрд┐ рдЖрдк рдЗрд╕рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдореЗрдВ рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ рддреЛ рдХреГрдкрдпрд╛ рдореБрдЭреЗ рдмрддрд╛рдПрдВред рд╡рд┐рдЪрд╛рд░ рдкрдмрдЧреНрд░рдм рдПрд▓реНрдЧреЛрд░рд┐рдердо рдХрд╛ рдПрдХ рд╕реНрдЯреИрдВрдбрдЕрд▓реЛрди рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рддреАрд╕рд░реЗ рдкрдХреНрд╖ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдЗрд╕реЗ https://pypi.org/project/mixology/ рдореЗрдВ рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛ рдЬреЛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдкреБрд░рд╛рдиреЗ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛ рдХреЛрдб рд░рдЦрддрд╛ рд╣реИред

@sdispater рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ! рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдореИрдВ рд╕реАрдзреЗ (рд╕рдордп рдХреА рдХрдореА) рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдк рдкрдмрдЧреНрд░рдм рдкреЛрд░реНрдЯ рдХреЛ рдмрд╛рдХреА рдХрд╡рд┐рддрд╛рдУрдВ рд╕реЗ рдЕрд▓рдЧ рдХрд░ рд╕рдХреЗрдВ!

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

FYI рдХрд░реЗрдВ, рд╣рдо ( @wolfv , рдФрд░ @QuantStack рдЯреАрдо рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ) рдиреЗ рдкрд╛рдЗрдк рдирд┐рд░реНрднрд░рддрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЗ рд▓рд┐рдП RfP рдХреЛ рдЬрд╡рд╛рдм рджрд┐рдпрд╛ рд╣реИред

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

рд▓рд┐рдмрд╕реЙрд▓реНрд╡ рдЖрд░рдкреАрдПрдо рдкрд╛рд░рд┐рд╕реНрдерд┐рддрд┐рдХреА рддрдВрддреНрд░ рдХреЗ рддрд╣рдд рд╕рдВрдШрд░реНрд╖-рдХрдареЛрд░ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдФрджреНрдпреЛрдЧрд┐рдХ рдкреИрдорд╛рдиреЗ рдкрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

  • Libsolv's рдХреЛ BSD-3-рдХреНрд▓реЙрдЬ рд▓рд╛рдЗрд╕реЗрдВрд╕ рдХреЗ рддрд╣рдд рд╡рд┐рддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • Libsolv рдХрдИ рдкреИрдХреЗрдЬреЛрдВ рдФрд░ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдкреНрд░рд╛рд░реВрдкреЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ, рдЬреИрд╕реЗ rpm , deb ,
    haiku , conda , arch ред рдорд╣рддреНрд╡рдкреВрд░реНрдг рд░реВрдк рд╕реЗ, рд╕реНрд╡рд░реВрдкреЛрдВ рдХреА рд╡рд┐рд╡рд┐рдзрддрд╛ рдФрд░ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреЗ рддрд░реАрдХреЗ
    рдирд┐рд░реНрднрд░рддрд╛ рдмрд╛рдзрд╛рдУрдВ рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдПрдХ рдкреНрд▓рдЧ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рдкреНрд░рдгрд╛рд▓реА рд╣реИ рдЬрд┐рд╕реЗ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП
    рдирд┐рд░реНрднрд░рддрд╛ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░ рдмрд╛рдзрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдкрд╛рдЗрдк рдХреЗ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП ..
  • рдкрддрд▓реЗ рдорд╛рдВрдмрд╛ рдЖрд╡рд░рдг рдореЗрдВ рдХреЛрдВрдбрд╛ рдХреЗ рд╕реЙрд▓реНрд╡рд░ рдХреЗ рдмрдЬрд╛рдп рд▓рд┐рдмрд╕реЛрд▓реНрд╡ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП, рд╣рдо рдереЗ
    рдХреЛрдВрдбрд╛ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдоред (рдмрдбрд╝реЗ рдЪреИрдирд▓реЛрдВ рдХреЗ рд╕рд╛рде рдкреИрдХреЗрдЬ рд╕рдорд╛рдзрд╛рди рдореЗрдВ рдХреЛрдВрдбрд╛ рдХреА рд╕реБрд╕реНрддреА рдорд╛рдВрдмрд╛ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реА рдореБрдЦреНрдп рдкреНрд░реЗрд░рдгрд╛ рдереА)ред
  • рдпрд╣ рд╡рд┐рдВрдбреЛрдЬ, рдУрдПрд╕ рдПрдХреНрд╕ рдФрд░ рд▓рд┐рдирдХреНрд╕ рдкрд░ рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред ( @wolfv рдиреЗ libsolv рдХрд╛ рд╡рд┐рдВрдбреЛрдЬрд╝ рдкреЛрд░реНрдЯ рдХрд┐рдпрд╛ рдерд╛)
  • рдпрд╣ рдЗрд╖реНрдЯрддрдо рдирд┐рд░реНрднрд░рддрд╛ рд╕рдВрдпреЛрдЬрдиреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реНрдг SAT рд╕рдорд╛рдзрд╛рди рдХрд░рддрд╛ рд╣реИ рдФрд░ рдпрджрд┐ рдпрд╣ рд╕рдлрд▓ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рддреЛ рдпрд╣ рд╕рдВрдШрд░реНрд╖ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдХрд╛рд░реНрд░рд╡рд╛рдИ рдпреЛрдЧреНрдп рд╕рдВрдХреЗрдд рджреЗрддрд╛ рд╣реИред

рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг libsolv C рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЛ рдЕрдкрдирд╛рдирд╛ рд╣реИ

рдЙрди рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдлреЙрд▓рдмреИрдХ рд╣реЛрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдЬреЛ libsolv рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкрд╛рдЗрдк рдореЗрдВ AIX рд╕рдорд░реНрдерди рдкрд░ рд╕рдХреНрд░рд┐рдп рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рдФрд░ рдЖрдкрдиреЗ BSD рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдирд╣реАрдВ рдХрд┐рдпрд╛ рд╣реИ)ред рддреЛ libsolv рдПрдХ рдкреНрд░рджрд░реНрд╢рди рд╡рд┐рдХрд▓реНрдк рдХреЗ рд░реВрдк рдореЗрдВ рдЬрд╣рд╛рдВ рдЙрдкрд▓рдмреНрдз рд╣реИ рдореЗрд░реЗ рд▓рд┐рдП рд╡реНрдпрд╛рд╡рд╣рд╛рд░рд┐рдХ рд╣реИ, рд▓реЗрдХрд┐рди рд╣рдо рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд╣реАрдВ рд╣реИрдВред (рдХреНрдпрд╛ libsolve рдХрд╛ рдПрдХ рд╢реБрджреНрдз рдкрд╛рдпрдерди рд╕рдВрд╕реНрдХрд░рдг рд╣реИ, рдпрд╛рдиреА рдРрд╕рд╛ рдХреБрдЫ рдЬреЛ рд╕рдорд╛рди рдкрд░рд┐рдгрд╛рдо рджреЗрддрд╛ рд╣реИ, рдмрд╕ рдзреАрдорд╛?)

рд╕рд╛рде рд╣реА, get-pip.py рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛? рдХреНрдпрд╛ рд╣рдореЗрдВ рд╕рднреА рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд▓реЗрдЯрдлрд╛рд░реНрдореЛрдВ рдХреЗ рд▓рд┐рдП libsolv рдХреЗ рд▓рд┐рдП рдмрд╛рдЗрдирд░реА рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рд╣реЛрдЧрд╛? рджреЛрдмрд╛рд░рд╛, рдореБрдЭреЗ рдирд╣реАрдВ рд▓рдЧрддрд╛, рд╣рдо рд╢реБрджреНрдз-рдкрд╛рдпрдерди рдлрд╝реЙрд▓рдмреИрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред

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

рдирдорд╕реНрддреЗ @pfmoore

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

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдмреВрдЯрд╕реНрдЯреНрд░реИрдкрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рд╢реБрджреНрдз рдкрд╛рдпрдерди рдкрд╛рдЗрдк рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдЬреЛ рд╣рд▓ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд░реНрддрдорд╛рди рддрдВрддреНрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдЬреЛ рддрдм libsolv рдкрд░ рдЖрдзрд╛рд░рд┐рдд рдЖрд╡рд╢реНрдпрдХ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ lib рд╕реНрдерд╛рдкрд┐рдд рдХрд░рддрд╛ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреЛрдИ libsolv + рдкрд╛рдЗрдк-рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд╛рдпрдерди рдмрд╛рдЗрдВрдбрд┐рдВрдЧ рдХреЗ рд╕рдЯреАрдХ рдкреИрдХреЗрдЬ рдХреЛ рдкрд┐рди рдХрд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рд╡рд░реНрдгрди рдХрд░рддреЗ рд╣реИрдВ, рдЙрдиреНрд╣реЗрдВ рдмреВрд╕реНрдЯрд░-рдкрд╛рдЗрдк рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдХрд░реЗрдВред рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХрд░рдиреЗ рдпреЛрдЧреНрдп рд▓рдЧрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЖрдк рдмреЗрд╣рддрд░ рдЬрд╛рди рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдореЗрдВ рдХреНрдпрд╛ рд╢рд╛рдорд┐рд▓ рд╣реЛрдЧрд╛ ...

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЕрддрд┐рд░рд┐рдХреНрдд рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рд╕рдорд░реНрдерди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЗрддрдирд╛ рдХрдард┐рди рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП

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

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

рдореИрдВрдиреЗ рдКрдкрд░ рддрд░реНрдХ рджрд┐рдпрд╛ рд╣реИ, рдФрд░ рдореИрдВ рдЗрд╕реЗ рдпрд╣рд╛рдВ рджреЛрд╣рд░рд╛рдКрдВрдЧрд╛, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рджреЛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЛ рдкрд╛рдЗрдк рдореЗрдВ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдХрд╛рд▓ рддрдХ рдмрдирд╛рдП рд░рдЦрдирд╛ рдирд╣реАрдВ рдЪрд╛рд╣рддрд╛ред

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

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

рдореЗрд░реА рд╕рдордЭ рд╕реЗ, libsolv рдирд┐рд░реНрднрд░рддрд╛ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ SAT рд╕реЙрд▓реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдирд┐рд░реНрднрд░рддрд╛ рдЬрд╛рдирдХрд╛рд░реА рдореЗрдВ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди рдкреАрдИрдкреАрдЖрдИ рдЕрдм рддрдХ рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдкреНрд░рддрд┐-рдкреИрдХреЗрдЬ рд╕реНрдЯреЛрд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛтАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк setup.py рдХреА рд░рдирдЯрд╛рдЗрдо-рдирд┐рд░реНрднрд░ рдкреНрд░рдХреГрддрд┐ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рднреА рдПрд╕рдПрдЯреА рд╕реЙрд▓реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ред

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

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

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

(рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП https://docs.google.com/document/d/1x_VrNtXCup75qA3glDd2fQOB2TakldwjKZ6pXaAjAfg/edit рджреЗрдЦреЗрдВ)

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

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

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

рдореИрдВрдиреЗ рддрдХрдиреАрдХреА рдЯреНрд░реЗрдб-рдСрдл рдкрд░ рдЖрдЧреЗ рдХреА рдЪрд░реНрдЪрд╛ рдХреЗ рд▓рд┐рдП # 7406 рджрд╛рдпрд░ рдХрд┐рдпрд╛ - @sdispater , @techalchemy , @uranusjr , @wolfv рдЕрдЧрд░ рд╣рдо рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдбрд┐рдЬрд╝рд╛рдЗрди рдХреЗ рд▓рд┐рдП рд╡рд┐рднрд┐рдиреНрди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВред

рдЙрдореНрдореАрджреЛрдВ рдХреЛ рдЬрд▓реНрджреА рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдЕрдЧрд▓реЗ 2 рд╕рдкреНрддрд╛рд╣ рдХреЗ рд▓рд┐рдП рдпрд╛рддреНрд░рд╛ рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реВрдБ рдФрд░ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ ~ 9 тАЛтАЛрджрд┐рд╕рдВрдмрд░ рдХреЛ рд╕рднреА рдЪрд░реНрдЪрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдЧрд╛ред

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

рд╣рдорд╛рд░рд╛ рд▓рдХреНрд╖реНрдп рд╣реИ рдХрд┐ рдкрд┐рдк рдХреА рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЬреБрд▓рд╛рдИ рдореЗрдВ рдкрд┐рдк 20.2 рдореЗрдВ рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛рдПред (рдкрд╛рдЗрдк рдХреЗ рд▓рд┐рдП рддреНрд░реИрдорд╛рд╕рд┐рдХ рд░рд┐рд▓реАрдЬ рддрд╛рд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдХрдард┐рдирд╛рдЗрдпрд╛рдВ рдЕрдЧрд▓реА рддрд┐рдорд╛рд╣реА рдореЗрдВ 20.3 рддрдХ рд╡рд┐рд▓рдВрдмрд┐рдд рд╣реЛ рд╕рдХрддреА рд╣реИрдВред)

@uranusjr :

рдореЗрд░реА рд╕рдордЭ рд╕реЗ, libsolv рдирд┐рд░реНрднрд░рддрд╛ рд╕рдорд╛рдзрд╛рди рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ SAT рд╕реЙрд▓реНрд╡рд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕реЗ рд╣рд▓ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдирд┐рд░реНрднрд░рддрд╛ рдЬрд╛рдирдХрд╛рд░реА рдореЗрдВ рд▓реЛрдб рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рд▓реЗрдХрд┐рди рдкреАрдИрдкреАрдЖрдИ рдЕрдм рддрдХ рдирд┐рд░реНрднрд░рддрд╛ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдкреНрд░рддрд┐-рдкреИрдХреЗрдЬ рд╕реНрдЯреЛрд░ рдХрд░рддрд╛ рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдк setup.py рдХреА рд░рдирдЯрд╛рдЗрдо-рдирд┐рд░реНрднрд░ рдкреНрд░рдХреГрддрд┐ рдХреЛ рдЕрдирджреЗрдЦрд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ SAT рд╕реЙрд▓реНрд╡рд░ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛ред

#7819 рдореЗрдВ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк pip resolve рдХрдорд╛рдВрдб рдЗрд╕ рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рдмреЗрд╣рддрд░ рдврдВрдЧ рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рджреЛ рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ (рд╡рд┐рд╡рд░рдг рдХреЗ рд▓рд┐рдП рдЙрд╕ рдореБрджреНрджреЗ рдХреЛ рджреЗрдЦреЗрдВ):

  1. > рд╡реНрд╣реАрд▓ рдХреЛ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдП рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╡реНрд╣реАрд▓ рдХреЗ рдпреВрдЖрд░рдПрд▓ рд╕реЗ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рдирд┐рдХрд╛рд▓рдирд╛ред
  2. > рд▓рдЧрд╛рддрд╛рд░ json рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ self._resolve_one() рдХреЙрд▓ рдХреЗ рдкрд░рд┐рдгрд╛рдо рдХреЛ рдХреИрд╢рд┐рдВрдЧ рдХрд░рдирд╛ред

(1) рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рддрдХрдиреАрдХ рд╡реНрд╣реАрд▓ рдпреВрдЖрд░рдПрд▓ рдХреЛ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреА рд╕реВрдЪреА рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИ, рдЬреЛ рдХрд┐ рд╡реНрд╣реАрд▓ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЗ рдХреЗрд╡рд▓ рдХреБрдЫ рдХреЗрдмреА рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╕рдордп рдмрд╣реБрдд рддреЗрдЬрд╝реА рд╕реЗ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИред #7819 рдореЗрдВ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рддрдм рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ req.populate_link() рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдИ рдЧрдИ рдкреНрд░рддреНрдпреЗрдХ рдЖрд╢реНрд░рд┐рдд рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдкрд░ self._resolve_one() рдХрд╣рд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ (==Requirement, url) -> [list of (==Requirement, url) non-transitive dependencies] рдХреА рдореИрдкрд┐рдВрдЧ рдХреЛ рдПрдХ рд╕рддрдд рдЬреЛрдВрд╕ рдХреИрд╢ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред (1) рдирдИ рдЬрд╛рдирдХрд╛рд░реА рддреЗрдЬреА рд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ, (2) рдкреБрд░рд╛рдиреА рдЬрд╛рдирдХрд╛рд░реА рдХреЛ рддреЗрдЬреА рд╕реЗ рдХреНрд╡реЗрд░реА рдХрд░рддрд╛ рд╣реИред

рдЬрдмрдХрд┐ рдореИрдВ рдЕрднреА рддрдХ libsolv рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рдирд╣реАрдВ рд╣реВрдБ, рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛрд╣реИ рдХрд┐ рдЖрд╡рд╢реНрдпрдХрддрд╛ URL рд╕реЗ рдирд┐рд░реНрднрд░рддрд╛ рдФрд░ рдЙрдирдХреЗ URL рддрдХ рдЗрд╕ рдореИрдкрд┐рдВрдЧ рдХреА рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпрд╛рдБ SAT рд╕реЙрд▓реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рдкрд░рдорд╛рдгреБ рдЗрдирдкреБрдЯ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ #7189 рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓рдЧрд╛рддрд╛рд░ рдЬреЛрдВрд╕ рдирд┐рд░реНрднрд░рддрд╛ рдХреИрд╢ рдлрд╝рд╛рдЗрд▓ рдиреЗ pip resolve рдЗрдирд╡реЛрдХреЗрд╢рди рдХреЛ рдкрд╣рд▓реЗ рд░рди рдХреЗ рдмрд╛рдж рдкреВрд░реНрдг рдиреЛ-рдСрдкреНрд╕ рдмрдирдиреЗ рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛, рддрдм рд╕реЗ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдкрд░ 800-900ms рд▓реЗ рд▓рд┐рдпрд╛ред рдпрджрд┐ (1) рдФрд░ (2) рдХреА рддрдХрдиреАрдХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдореЗрд░рд╛ рдорд╛рдирдирд╛ тАЛтАЛтАЛтАЛрд╣реИ рдХрд┐ рдПрдХ рдПрд╕рдПрдЯреА рд╕реЙрд▓реНрд╡рд░ рдХреЛ рд╣рд░ рдмрд╛рд░ рдкрд╛рдЗрдк рдХреЛ рдЕрд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд░реВрдк рд╕реЗ рд▓рдВрдмреЗ рд╕рдордп рддрдХ рдЗрдВрддрдЬрд╛рд░ рдХрд┐рдП рдмрд┐рдирд╛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЪрд▓рд╛рдиреЗ рджреЗрдирд╛ рд╕рдВрднрд╡ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдареЛрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП #7189 рдореЗрдВ рдкреНрд░реЛрдЯреЛрдЯрд╛рдЗрдк рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ libsolv рдХреЛ рд╣реИрдХ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рдирд╛ рд╢рд╛рдпрдж рдмрд╣реБрдд рдХрдард┐рди рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

@techalchemy :

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

рдкреИрдВрдЯ рдореЗрдВ рдХреБрдЫ рдХреЛрдб рд╣реБрдЖ рдХрд░рддреЗ рдереЗ рдЬрд┐рд╕рд╕реЗ setup.py -рдЖрдзрд╛рд░рд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ (#6273) рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдФрд░ рд▓рд┐рдВрдХрд░ рдХреЛ рдмреЗрдирдХрд╛рдм рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдмрд╛рдж рдореЗрдВ рд╣рдордиреЗ рдЗрд╕реЗ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рдиреЗ рдХреЗ рдкрдХреНрд╖ рдореЗрдВ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ (# 7016 рджреЗрдЦреЗрдВ) C/C++ setup.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдкреИрдВрдЯ рдореЗрдВ, рдЬреЛ рдЯреНрд╡рд┐рдЯрд░ рдХреЗ рдЕрдВрджрд░ рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдерд╛ рдЬрд┐рд╕реЗ рдХреЗрд╡рд▓ TensorFlow рдХрд╕реНрдЯрдо рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдЭрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рд╣рдо OSX рдФрд░ Linux рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ s3 рдкрд░ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдЬреБрдбрд╝реЗ GCC рдФрд░ binutils рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░ рдХреЗ рд▓рд┐рдП рдкреНрд░реАрдмрд┐рд▓реНрдЯ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдХреА рдореЗрдЬрдмрд╛рдиреА рдХрд░рддреЗ рд╣реИрдВ (рджреЗрдЦреЗрдВ https://github.com/pantsbuild/binaries/) рддрд╛рдХрд┐ рдкреИрдВрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдЬрдЧрд░ рдФрд░ JDK рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рд╕реНрдерд╛рдкрд┐рдд рди рдХрд░рдирд╛ рдкрдбрд╝реЗ рдкреИрдВрдЯ рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдмрд┐рд▓реНрдХреБрд▓ рдХрд░рдирд╛ред

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

@cosmicexplorer

рдкреИрдВрдЯ рдореЗрдВ рдХреБрдЫ рдХреЛрдб рд╣реБрдЖ рдХрд░рддреЗ рдереЗ рдЬрд┐рд╕рд╕реЗ рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ рдФрд░ рд▓рд┐рдВрдХрд░ рдХреЛ рдПрдХ setup.py- рдЖрдзрд╛рд░рд┐рдд рдкреНрд░реЛрдЬреЗрдХреНрдЯ (#6273) рдореЗрдВ рдЙрдЬрд╛рдЧрд░ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реЛ рдЬрд╛рддрд╛ рдерд╛, рд▓реЗрдХрд┐рди рдмрд╛рдж рдореЗрдВ рд╣рдордиреЗ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ (# 7016 рджреЗрдЦреЗрдВ) рд╕реА/рд╕реА ++ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛рдиреЗ рдХреЗ рдкрдХреНрд╖ рдореЗрдВред рдкреИрдВрдЯ рдореЗрдВ setup.py рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛, рдЬреЛ рдЯреНрд╡рд┐рдЯрд░ рдХреЗ рдЕрдВрджрд░ рд╣рдорд╛рд░реЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдорд╛рдорд▓реЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдерд╛ рдЬрд┐рд╕реЗ рдХреЗрд╡рд▓ TensorFlow рдХрд╕реНрдЯрдо рдСрдкрд░реЗрдЯрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдЭрд╛ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рд╣рдо OSX рдФрд░ Linux рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ s3 рдкрд░ рд╕рд╛рдВрдЦреНрдпрд┐рдХреАрдп рд░реВрдк рд╕реЗ рдЬреБрдбрд╝реЗ GCC рдФрд░ binutils рдЕрднрд┐рд▓реЗрдЦрд╛рдЧрд╛рд░ рдХреЗ рд▓рд┐рдП рдкреНрд░реАрдмрд┐рд▓реНрдЯ рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рдХреА рдореЗрдЬрдмрд╛рдиреА рдХрд░рддреЗ рд╣реИрдВ (рдкреИрдВрдЯрдмрд┐рд▓реНрдб/рдмрд╛рдпрдиреЗрд░рд┐рдЬрд╝ рджреЗрдЦреЗрдВ) рддрд╛рдХрд┐ рдкреИрдВрдЯ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдкреИрдВрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдЬрдЧрд░ рдФрд░ JDK рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдХреБрдЫ рднреА рд╕реНрдерд╛рдкрд┐рдд рди рдХрд░рдирд╛ рдкрдбрд╝реЗред

рдХрдВрдкрд╛рдЗрд▓рд░/рд▓рд┐рдВрдХрд░ рдХрд╛ рдХрд╛рдо рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ! setup.py (рдпрд╛ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдПрдХ рдкреАрдИрдкреА 517 рдмрд┐рд▓реНрдб рдмреИрдХрдПрдВрдб) рд╕реЗ рдХрдВрдкрд╛рдЗрд▓рд░ рдХреЛ рдбрд┐рдХреВрдк рдХрд░рдиреЗ рдкрд░ рднреА рдЪрд░реНрдЪрд╛ рд╣реИред рдпрд╣ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдирд╣реАрдВ рд╣реИ (рдХрдо рд╕реЗ рдХрдо рд╕реАрдзреЗ рдирд╣реАрдВ), рд▓реЗрдХрд┐рди рдЖрдкрдХреА рд░реБрдЪрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ: https://discuss.python.org/t/how-do-we-get-out-of-the-business-of- рдбреНрд░рд╛рдЗрд╡рд┐рдВрдЧ-рд╕реА-рдХрдВрдкрд╛рдЗрд▓рд░/2591

@cosmicexplorer

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

Myself рдФрд░ @wolfv рдЗрд╕реЗ Mamba рдХреЗ рд▓рд┐рдП рд╕рднреА рдкреНрд░рдореБрдЦ рд╕рдорд░реНрдерд┐рдд рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдкрд░ DNF рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░ рд╕реНрдЯреИрдХ рдХреЗ рдХреБрдЫ рд╣рд┐рд╕реНрд╕реЛрдВ рдХреЗ рдирд┐рд░реНрдорд╛рдг рдХреЗ рд▓рд┐рдП рджреЗрдЦ рд░рд╣реЗ рд╣реИрдВ рдФрд░ DNF рдХреЗ рд╕рд╛рде рдореЗрд░рд╛ рдЕрдкрдирд╛ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХрд╛рд░реНрдпред рдЗрд╕ рд╕рдордп, libsolv рдЕрдм рд╡рд┐рдВрдбреЛрдЬ, рд▓рд┐рдирдХреНрд╕, рдореИрдХрдУрдПрд╕, рдмреАрдПрд╕рдбреА, рд╣рд╛рдЗрдХреВ рдУрдПрд╕ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдореБрдЭреЗ рдпреВрдирд┐рдХреНрд╕ рдкрд░ рдбреАрдПрдирдПрдл рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЗрд╕реЗ рд╡рд┐рднрд┐рдиреНрди рдпреВрдирд┐рдХреНрд╕ рд╕рд┐рд╕реНрдЯрдо рдкрд░ рд░рдЦрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ @dralley рдиреЗ solv рдмрд╛рдЗрдирд░реА рд╡реНрд╣реАрд▓ рднреА рдЙрдкрд▓рдмреНрдз рдХрд░рд╛рдП рд╣реИрдВ, рдЬреЛ рдХрд┐ PyPI рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд ~ рдкреНрд░рдореБрдЦ рдкреНрд▓реЗрдЯрдлреЙрд░реНрдо рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рд╣реИрдВ ~ PyPI рдкрд░ manylinux2014 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ ред

рдЕрдм рд╣рдорд╛рд░реЗ рдкрд╛рд╕ 20.1b1 рдмрд╛рд╣рд░ рд╣реИ, рдПрдХ рдмреАрдЯрд╛ рд░рд┐рд▓реАрдЬрд╝ рдЬрд┐рд╕рдореЗрдВ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛ рдПрдХ рдмрд╣реБрдд рдкреНрд░рд╛рд░рдВрднрд┐рдХ (рдЕрд▓реНрдлрд╝рд╛) рд╕рдВрд╕реНрдХрд░рдг рд╢рд╛рдорд┐рд▓ рд╣реИ (рдЙрд╕ рдкрд░ рд╕рдВрджрд░реНрдн рдХреЗ рд▓рд┐рдП #8099 рджреЗрдЦреЗрдВ, рдФрд░ рдПрдХ рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдЬрд╣рд╛рдВ рд▓реЛрдЧ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреЗ рд╕рдХрддреЗ рд╣реИрдВ)ред рдпрд╣рд╛рдБ рдШреЛрд╖рдгрд╛ рд╣реИ ред рдФрд░ https://github.com/pypa/pip/issues/7951#issuecomment -617851381 рдХреБрдЫ рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рд╣рдордиреЗ рдЕрднреА рддрдХ рдмреАрдЯрд╛ рдкреНрд░рдЪрд╛рд░рд┐рдд рдХрд┐рдпрд╛ рд╣реИред

рдкрд╛рдЗрдк 20.1 рдЕрдм рдмрд╛рд╣рд░ рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛ рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╢рд╛рдорд┐рд▓ рд╣реИред

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

рд╣рдо рджреЗрд░реА рдореЗрдВ рднрд╛рдЧ рдЧрдП рдХреНрдпреЛрдВрдХрд┐ рд╣рдо # 8371 рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛ рд░рд╣реЗ рдереЗ, рдХреБрдЫ рддреНрд░реБрдЯрд┐ рд╕рдВрджреЗрд╢реЛрдВ рдХреЛ рдмреЗрд╣рддрд░ рддрд░реАрдХреЗ рд╕реЗ рдХреИрд╕реЗ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдП, рдФрд░ рдЕрдиреНрдп рдмрд╛рд▓реЛрдВ рд╡рд╛рд▓реА рдЪреАрдЬреЛрдВ рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рд╕рдВрднрд╛рд▓рдирд╛; рд╣рдорд╛рд░реА рдкреНрд░рдЧрддрд┐ рдкрд░ рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП https://github.com/pypa/pip/projects/6 рдФрд░ https://github.com/pypa/pip/projects/5 рджреЗрдЦреЗрдВред #8206 рдЖрдЧрд╛рдореА рдмреАрдЯрд╛, рдкрд┐рдк 20.2b2 рдХреА рдЪрд░реНрдЪрд╛ рд╣реИ, рдЬреЛ рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рд╣рдо рдЬреВрди рдХреЗ рдЕрдВрдд рддрдХ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдореИрдВрдиреЗ рдЕрдкрдиреА рдордзреНрдп-рд╡рд░реНрд╖ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдкреАрдПрд╕рдПрдл рдмреНрд▓реЙрдЧ рдкрд░ рдкреЛрд╕реНрдЯ рдХреА рд╣реИ ред рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдмрд╛рдд: рдЗрд╕ рдорд╣реАрдиреЗ рдХреЗ рдЕрдВрдд рдореЗрдВ рд╣рдо рдкрд╛рдЗрдк 20.2 рдЬрд╛рд░реА рдХрд░реЗрдВрдЧреЗ рдЬрд┐рд╕рдореЗрдВ рдирдП рдирд┐рд░реНрднрд░рддрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛ рдмреАрдЯрд╛ рд╕рдВрд╕реНрдХрд░рдг рд╣реЛрдЧрд╛ (рдкрд╛рдЗрдк 20.1 рдореЗрдВ рдЕрд▓реНрдлрд╛ рд╕рдВрд╕реНрдХрд░рдг рдерд╛) рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рдзреНрд╡рдЬ " --use-feature=2020-resolver " рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реЛрдЧрд╛ред рд╣рдо рдкреАрдЖрдИрдкреА 20.2 рдХреЛ рдмрд╣реБрдд рдкреНрд░рдЪрд╛рд░рд┐рдд рдХрд░реЗрдВрдЧреЗ рдФрд░ рдмрд╣реБрдд рд╕реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдЕрдкрдиреЗ рдкреЗрд╕ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЛ рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВрдЧреЗред

рдкреНрд░рддрд┐ #8511 рд╣рдордиреЗ рдЕрдм pip 20.2 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рд╣реИред рдЗрд╕ рд░рд┐рд▓реАрдЬрд╝ рдореЗрдВ рдЕрдЧрд▓реА рдкреАрдврд╝реА рдХреЗ рдирд┐рд░реНрднрд░рддрд╛ рд╕рдорд╛рдзрд╛рдирдХрд░реНрддрд╛ рдХрд╛ рдмреАрдЯрд╛ рд╢рд╛рдорд┐рд▓ рд╣реИред рдЬрдм рдпрд╣ рдЕрд╕рдВрдЧрдд рдирд┐рд░реНрджреЗрд╢ рдкреНрд░рд╛рдкреНрдд рдХрд░рддрд╛ рд╣реИ рддреЛ рдпрд╣ рдХрд╛рдлреА рд╕рдЦреНрдд рдФрд░ рдЕрдзрд┐рдХ рд╕реБрд╕рдВрдЧрдд рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреА рдмрд╛рдзрд╛рдУрдВ рд╡рд╛рд▓реА рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреБрдЫ рд╡рд░реНрдХрдЕрд░рд╛рдЙрдВрдб рдФрд░ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдЯреВрдЯ рд╕рдХрддреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ --use-feature=2020-resolver рдзреНрд╡рдЬ рдХреЗ рд╕рд╛рде рдЗрд╕рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВ ред рдкрд░реАрдХреНрд╖рдг рдФрд░ рдорд╛рдЗрдЧреНрд░реЗрдЯ рдХреИрд╕реЗ рдХрд░реЗрдВ, рдФрд░ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреА рд░рд┐рдкреЛрд░реНрдЯ рдХреИрд╕реЗ рдХрд░реЗрдВ, рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдХреГрдкрдпрд╛ рд╣рдорд╛рд░реА рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рджреЗрдЦреЗрдВред рдирдпрд╛ рдбрд┐рдкреЗрдВрдбреЗрдВрд╕реА рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдмрдВрдж рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрднреА рддрдХ рд░реЛрдЬрдорд░реНрд░рд╛ рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдирд╣реАрдВ рд╣реИ ред

рд╣рдо рдЕрдХреНрдЯреВрдмрд░ 2020 рдореЗрдВ рдкрд┐рдк рдХреА рдЕрдЧрд▓реА рддрд┐рдорд╛рд╣реА рд░рд┐рд▓реАрдЬ, 20.3 рдмрдирд╛рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред рд╣рдо рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдирд┐рд░реНрднрд░рддрд╛ рд╕рдорд╛рдзрд╛рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдмрджрд▓рдиреЗ рдФрд░ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЛ рдкрд╛рдЗрдк 20.3 рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдмрдирд╛рдиреЗ рдХреА рддреИрдпрд╛рд░реА рдХрд░ рд░рд╣реЗ рд╣реИрдВред

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

(#988 рд╕реЗ рдореЗрд░рд╛ рдиреЛрдЯ рдХреЙрдкреА рдХрд░ рд░рд╣рд╛ рд╣реВрдВред)

@ рдЬрд╝реВрдмрд╛ рдиреЗ рдкреВрдЫрд╛ :

рдХреНрдпрд╛ рдЖрдкрдХреЛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдЗрд╕ рд╕реНрддрд░ рдкрд░ (рдкрд╣рд▓реЗ рдЖрд░рд╕реА рдХреЗ рд▓рд┐рдП) рдкрд╛рдпрдерди 3.9 рдХреЗ рд╕рд╛рде рдмрдВрдбрд▓ рдХрд┐рдП рдЧрдП рдкрд╛рдЗрдк рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдП?

рдЗрд╕реА рддрд░рд╣, рдХреНрдпрд╛ рдЗрд╕рдХреА рдЕрдЧрд▓реА рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд▓рд┐рдП Python 3.8 рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ?

рдореЗрд░реА рдзрд╛рд░рдгрд╛ рдпрд╣ рд╣реИ рдХрд┐, рд╣рд╛рдБ, рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдмрдЧрдлрд┐рдХреНрд╕ рд░рд┐рд▓реАрдЬрд╝ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж, рд╣рд╛рдБ, рд▓реЗрдХрд┐рди @pfmoore @xavfernandez @cjerdonek @uranusjr @pradyunsg @dstufft рдЖрдк рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реИрдВ?

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

рдпрд╣рд╛рдВ рднреА, рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рддрдХ рдЖрд╕рд╛рди рдкрд╣реБрдВрдЪ рдХреЗ рд▓рд┐рдП 3.9 рдореЗрдВ 20.2.x рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ред

рдХреНрдпрд╛ рд╕реЛрдЪрддреЗ рд╣реЛ?

рддреБрдо рд╕рд╣реА рд╣реЛ, рдпрд╣реА рдпреЛрдЬрдирд╛ рд╣реИред :)

рдареАрдХ рд╣реИ, рдЕрдЬрдЧрд░-рджреЗрд╡ рдкрд░ рдЙрддреНрддрд░ рджрд┐рдпрд╛ - рд╣рд╛рдБ, рдкрд╛рдпрдерди 3.8 рдФрд░ 3.9 рдореЗрдВ рдмрдВрдбрд▓ рдХрд┐рдП рдЧрдП рдкрд╛рдЗрдк рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ 20.2.x рдкрд░ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдЕрд▓рдЧ рд╕реЗ, рдкреНрд░рдЪрд╛рд░ рдкрд░, рдореИрдВ рдпрд╣рд╛рдВ рдХреБрдЫ рдХрд╛рд░реНрдп рдкреНрд░рдЧрддрд┐ рдкрд░ рдзреНрдпрд╛рди рджреВрдВрдЧрд╛:

рдЕрдЧрд▓реЗ ~ 6-8 рд╕рдкреНрддрд╛рд╣ рдХреЗ рд▓рд┐рдП рдореИрдВ рд╡реНрдпрд╛рдкрдХ рдкреНрд░рдЪрд╛рд░ рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЬреЛрд░ рджреВрдВрдЧрд╛ рддрд╛рдХрд┐ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирдП рдкрд╛рдЗрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдореБрдЭреЗ рд╕рдВрджреЗрд╣ рд╣реИ рдХрд┐ рд╕рдорд╕реНрдпрд╛ рдЗрддрдиреА рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛрдЧреА "рдпрд╣ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реЛрдЧрд╛"; рдпрд╣ рд╡рд┐рд╢реЗрд╖ рдкреИрдХреЗрдЬреЛрдВ рдХреЗ рдмреАрдЪ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд╕рдВрдШрд░реНрд╖ рд╣реЛрдЧрд╛, рд╢рд╛рдпрдж рдкрд░реНрдпрд╛рд╡рд░рдг рдФрд░ рд╡рд┐рд╢реЗрд╖ рдмрд╛рдзрд╛рдУрдВ рдХреА рдлрд╛рдЗрд▓реЛрдВ рдкрд░ рдирд┐рд░реНрднрд░ред рд╣рдо рд╕рд░реНрд╡реЗрдХреНрд╖рдг рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХреБрдЫ рд╢реБрд░реБрдЖрддреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ рддрд╛рдХрд┐ рд╣рдо рдмрдЧ рдХреЛ рдареАрдХ рдХрд░ рд╕рдХреЗрдВ, рдЕрдзрд┐рдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкрд░реАрдХреНрд╖рдг рд╕реЗрдЯ рдХрд░ рд╕рдХреЗрдВ, рдЖрджрд┐, рдФрд░ рддрд╛рдХрд┐ рдЙрди рдЕрдкрд╕реНрдЯреНрд░реАрдо рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рд╣реЗрдб-рдЕрдк рдорд┐рд▓ рд╕рдХреЗрдВ рдФрд░ рдкрд╛рдЗрдк 20.3 рд╕реЗ рдкрд╣рд▓реЗ рдирд┐рд╢реНрдЪрд┐рдд рдкреИрдХреЗрдЬреЛрдВ рдХреЛ рдмрд╛рд╣рд░ рдХрд░ рд╕рдХреЗрдВ (рдЙрджрд╛рд╣рд░рдг : https://github.com/pypa/pip/issues/8076#issuecomment-666493069 рдореЗрдВ TensorFlow/numpy/scipy рдореБрджреНрджрд╛)ред

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

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

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

рдХрд▓ рдореИрдВрдиреЗ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреИрдХреЗрдЬреЛрдВ рдХреА рдХреБрдЫ рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ рджреЗрдЦрд╛ рдФрд░ рдХреБрдЫ рд▓реЛрдЧреЛрдВ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдИрдореЗрд▓ рдХрд┐рдпрд╛ рдФрд░ рдХреБрдЫ рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдкрд░ рдореБрджреНрджреЛрдВ рдХреЛ рдпрд╣ рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдмрдирд╛рдпрд╛ рдХрд┐ рд╡реЗ рдЕрдкрдиреЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛рдУрдВ рдХреЛ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЗ рдмреАрдЯрд╛ рдХреЗ рд╕рд╛рде рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╣реЗрдВ, рдмреЙрд▓ рд░реЛрд▓рд┐рдВрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдФрд░ рдХреБрдЫ рдХреЛ рдЖрдЬрд╝рдорд╛рдПрдВ рдХреБрдЫ рдФрд░ рдкреНрд░рдЪрд╛рд░ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдкрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╢рдмреНрдж/рджреГрд╖реНрдЯрд┐рдХреЛрдгред рдЗрд╕рд╕реЗ рдХрдо рд╕реЗ рдХрдо рдПрдХ рдорд╛рдорд▓реЗ рдореЗрдВ рднреНрд░рдо рдХреА рд╕реНрдерд┐рддрд┐ рдкреИрджрд╛ рд╣реБрдИ - https://github.com/sqlalchemy/mako/issues/322#issuecomment-667546739 рджреЗрдЦреЗрдВ - рдФрд░ рдПрдХ рдмрд╛рд░ 20.2 рдХреА рдмрдЧрдлрд┐рдХреНрд╕ рд░рд┐рд▓реАрдЬ рд╣реЛ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдереЛрдбрд╝рд╛ рдФрд░ рд╣реЛ рдЬрд╛рдКрдВрдЧрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдФрд░ рд╕реНрдкрд╖реНрдЯ

  • рд╣рдо рдХреНрдпреЛрдВ рдкрд╣реБрдВрдЪ рд░рд╣реЗ рд╣реИрдВ
  • рд╣рдордиреЗ рдХрд┐рд╕рд╕реЗ рд╕рдВрдкрд░реНрдХ рдХрд░рдирд╛ рдЪреБрдирд╛ рд╣реИ/рдХрдм (рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдореАрдбрд┐рдпрд╛ рд░рдгрдиреАрддрд┐ рд╕реЗ рдЬреБрдбрд╝рдиреЗ рд╕реЗ рдорджрдж рдорд┐рд▓реЗрдЧреА)
  • рд╣рдо рд╕реНрд╡рдпрдВ рдЗрди рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдкрд░реАрдХреНрд╖рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреНрдпреЛрдВ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ

рд╣рдордиреЗ рдЯреНрд╡рд┐рдЯрд░ ( 1 , 2 ) рдФрд░ рд░реЗрдбрд┐рдЯ рдкрд░ рдереЛрдбрд╝рд╛ рдзреНрдпрд╛рди рджрд┐рдпрд╛ рд╣реИ (рдХреЛрдИ рднреА рдкреАрдкреАрдП рдлрдВрдбрд┐рдВрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЗрд╕ рд╕рд╡рд╛рд▓ рдХрд╛ рдЬрд╡рд╛рдм рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ?)

@zooba рдиреЗ рд▓рд┐рдЦрд╛ (рдмрдВрдбрд▓рд┐рдВрдЧ рдХреЗ рд╕рдВрдмрдВрдз рдореЗрдВ):

рдзрдиреНрдпрд╡рд╛рджред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╣рдо рдЗрд╕реЗ рдЗрд╕ рд╕рдкреНрддрд╛рд╣ рдХреЗ рдЕрдВрдд рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдЧрд▓реЗ рджреМрд░ рдХреА рд░рд┐рд▓реАрдЬрд╝ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреГрдкрдпрд╛ рд╣рдореЗрдВ рдЬрд▓реНрдж рд╕реЗ рдЬрд▓реНрдж рдмрддрд╛рдПрдВ рдпрджрд┐ рдХреБрдЫ рдРрд╕рд╛ рд╕рд╛рдордиреЗ рдЖрддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд░рд┐рд╣рд╛ рдирд╣реАрдВ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдореЗрд░реЗ рд▓рд┐рдП --use-feature=2020-resolver рдЖрдо рддреМрд░ рдкрд░ рдЗрд╕рдХреЗ рдХрд╛рд░рдг рд╣реЛрдиреЗ рд╡рд╛рд▓реА рд╕рдорд╕реНрдпрд╛рдУрдВ рд╕реЗ рдЕрдзрд┐рдХ рд╣рд▓ рдХрд░рддрд╛ рд╣реИред

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

рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд 20.3 рд╕реНрдпреВрдбреЛрдХреЛрдб

try:
    _2020_resolver()
except:
    legacy_resolver()

рдЬрд┐рд╕рдХрд╛ рдорддрд▓рдм рд╣реЛрдЧрд╛ рдХрд┐ рдХрдо рд╕реЗ рдХрдо рдореЗрд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рд╡реЗ рд╕рднреА рдмрд┐рдирд╛ рд╕рдВрд╢реЛрдзрди рдХреЗ рдкрд╛рд░рд┐рдд рд╣реЛ рдЬрд╛рдПрдВрдЧреЗ

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

рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд 20.4 рд╕реНрдпреВрдбреЛрдХреЛрдб

try:
    _2020_resolver()
except:
    if not use_legacy_resolver:
        raise
    legacy_resolver()

рд╣рдо рдЗрд╕ рдорд╣реАрдиреЗ рдХреЗ рдЕрдВрдд рдореЗрдВ 20.3 рд░реЛрд▓ рдЖрдЙрдЯ рдХрд░рдиреЗ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред рд╣рдо рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рддреЗ рд╣реИрдВ рдХрд┐ рдЗрд╕рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдорд░реНрдерди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА рдХреНрдпреЛрдВрдХрд┐ рднреНрд░рдорд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╣рдорд╕реЗ рдкреНрд░рд╢реНрди рдкреВрдЫрддреЗ рд╣реИрдВред

@di рдиреЗ рд╕реНрд╡реЗрдЪреНрдЫрд╛ рд╕реЗ рдХреБрдЫ рд╕реНрд╡рдпрдВрд╕реЗрд╡рдХреЛрдВ рдХреЛ рдкрд╣рд▓реА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрдХрдЯреНрдард╛ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреА рд╣реИред рдЯреНрд╡рд┐рдЯрд░, рд╕реНрдЯреИрдХ рдУрд╡рд░рдлреНрд▓реЛ, рдФрд░ рдЧрд┐рдЯрд╣рдм рдкрд░ - рдпреЗ рд╕реНрд╡рдпрдВрд╕реЗрд╡рдХ рд╕рд╡рд╛рд▓реЛрдВ рдХреЗ рдЬрд╡рд╛рдм рджреЗрдВрдЧреЗ рдФрд░ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рд╕рдорд░реНрдерди рд▓реЛрдб рдХреЗ рд╕рд╛рде рдорджрдж рдХрд░реЗрдВрдЧреЗ - рдФрд░ рд░рдЦрд░рдЦрд╛рд╡ / рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛ рдЯреАрдо рдХреЗ рдзреНрдпрд╛рди рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдмрдЧ рдХреЛ рдмрдврд╝рд╛рдПрдВрдЧреЗред

рдбрд╕реНрдЯрд┐рди, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдХреИрд╕реЗ рдХрд╛рдо рдХрд░реЗрдЧрд╛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдореЛрдЯрд╛ рдпреЛрдЬрдирд╛ рд╣реИ - рдХреНрдпрд╛ рдЖрдк рдЗрд╕реЗ рдпрд╣рд╛рдВ рдкреЛрд╕реНрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ рдФрд░ рдлрд┐рд░ рдореБрдЭреЗ рдЕрдиреНрдп рдкреАрдЖрдИрдкреА рд░рдЦрд░рдЦрд╛рд╡ рд╕реЗ рдХреБрдЫ рдЖрдо рд╕рд╣рдорддрд┐ рдорд┐рд▓ рдЬрд╛рдПрдЧреА? рдЧрд╣рд░рд╛ рдзрдиреНрдпрд╡рд╛рджред

рдпрд╣рд╛рдБ рдореЗрд░реА рдореЛрдЯрд╛ рдпреЛрдЬрдирд╛ рд╣реИ:

  • рдЪрд░реНрдЪрд╛ рд╢реБрд░реВ рдХрд░реЗрдВ.python.org рд╕рдорд░реНрдерди рдорд╛рдВрдЧрддреЗ рд╣реБрдП
  • рд▓реЛрдЧреЛрдВ рдХреЛ рд╕реАрдзреЗ рд╕реНрд▓реИрдХ рдЪреИрдирд▓ рдкрд░ рд▓реЗ рдЬрд╛рдПрдВ рдЬреЛ рд╕рднреА рдХреЗ рдмреАрдЪ рд╕рдВрдЪрд╛рд░ рдЪреИрдирд▓ рдХреЗ рд░реВрдк рдореЗрдВ рдХрд╛рдо рдХрд░ рд╕рдХреЗ
  • рдХреБрдЫ рдЕрдХреНрд╕рд░ рдкреВрдЫреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдФрд░ рд╣рдорд╛рд░реЗ рдЬрд╡рд╛рдмреЛрдВ рдХреЛ рд░реЗрдЦрд╛рдВрдХрд┐рдд рдХрд░рддреЗ рд╣реБрдП рдПрдХ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рд╢реБрд░реВ рдХрд░реЗрдВ
  • рдирдП рдореБрджреНрджреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрдгрдп рд╡реГрдХреНрд╖ рд╢рд╛рдорд┐рд▓ рдХрд░реЗрдВ -> рддреНрд░рд┐рдХреЛрдгреАрдп рдореБрджреНрджрд╛
  • рдПрдХ рдмрд╛рд░ рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЬреНрдЮрд╛рдд рд░рд┐рд▓реАрдЬ рдХреА рддрд╛рд░реАрдЦ рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдЗрд╕реЗ рдЪреИрдирд▓ рдХреЗ рд╕рд╛рде рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ
  • рд░рд┐рд▓реАрдЬ рдХреЗ рдмрд╛рдж рдХреЗ рджрд┐рдиреЛрдВ рдореЗрдВ рд╕реНрд╡рдпрдВрд╕реЗрд╡рдХреЛрдВ рдХреЛ рдСрдирд▓рд╛рдЗрди рдФрд░ рдЯреНрд░рд╛рдЗрдПрдЬрд┐рдВрдЧ рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдФрд░ рдореЛрдЯреЗ рддреМрд░ рдкрд░ рд╢реЗрдбреНрдпреВрд▓ рдХрд░реЗрдВ

рдзрдиреНрдпрд╡рд╛рдж, @di. рд╣рдо рдЕрдиреНрдп рдЕрдиреБрд░рдХреНрд╖рдХреЛрдВ рд╕реЗ рдУрдХреЗ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд▓ рддрдХ рдХрд╛ рдЗрдВрддрдЬрд╛рд░ рдХрд░ рд░рд╣реЗ рд╣реИрдВред рдФрд░ рд╣рдо рдмреБрдзрд╡рд╛рд░ рдпрд╛ рдЧреБрд░реБрд╡рд╛рд░, 28 рдпрд╛ 29 рдЕрдХреНрдЯреВрдмрд░ рдХреЛ рдкрд┐рдк 20.3 рдЬрд╛рд░реА рдХрд░рдиреЗ рдХрд╛ рд▓рдХреНрд╖реНрдп рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВред

@di рдореИрдВ рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдБ рдХрд┐ рдЖрдкрдХреА рдпреЛрдЬрдирд╛ рд╕реНрд╡реАрдХреГрдд рд╣реЛ рдЧрдИ рд╣реИред рдХреГрдкрдпрд╛ рдЖрдЧреЗ рдЬрд╛рдПрдВ!

@di рд░рд┐рд▓реАрдЬ рдореЗрдВ рд╕рдВрднрд╛рд╡рд┐рдд рджреЗрд░реА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд╛рд╡рдзрд╛рди рд░рд╣реЗрдВред

рдЬрдм рд╣рдо 20.3 рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрддреЗ рд╣реИрдВ рддреЛ рдореИрдВ рдЕрдиреБрдкрд▓рдмреНрдз рд░рд╣рддрд╛ рд╣реВрдВ (рдЬреЛ рд╣рдореЗрдВ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдЕрдЧрд▓реЗ рд╕рдкреНрддрд╛рд╣ рд╣реЛрдЧрд╛), рдпрд╣рд╛рдВ рдПрдХ рдкреНрд░рдЪрд╛рд░ рдпреЛрдЬрдирд╛ рд╣реИ ред

рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВрдиреЗ рдХрд╣реАрдВ рдФрд░ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рдЪрд░реНрдЪрд╛ рдХреА, рд╣рдордиреЗ рдХреБрдЫ рд╕реАрдЖрдИ рд╕рдорд╕реНрдпрд╛рдУрдВ рдХреЗ рд╕рд╛рдордиреЗ рдЖрдиреЗ рдФрд░ рдХреБрдЫ рдмрд╛рд╣рд░реА рдХрд╛рд░рдХреЛрдВ рдХреЗ рдХрд╛рд░рдг рд░рд┐рд▓реАрдЬ рдореЗрдВ рдереЛрдбрд╝реА рджреЗрд░реА рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред

рдЖрдЬ рдХреА рдЯреАрдо рдореАрдЯрд┐рдВрдЧ рдореЗрдВ рд╣рдо рдЗрд╕ рдмрд╛рдд рдкрд░ рд╕рд╣рдордд рд╣реБрдП рдХрд┐ 20.3 рд░рд┐рд▓реАрдЬ рдХрд▓ рдпрд╛ рд╢реБрдХреНрд░рд╡рд╛рд░ рдХреЛ рд╣реЛрдЧреАред рдЕрдзрд┐рдХ рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП рдЖрдк #8936 рдХреЛ рдлреЙрд▓реЛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред


рдореИрдВрдиреЗ рдкреНрд░рддрд┐-рдкреИрдХреЗрдЬ рдЖрдЙрдЯрд░реАрдЪ рдЙрддрдирд╛ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд┐рддрдирд╛ рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рдПрдХ рдЯрд┐рдкреНрдкрдгреА рдореЗрдВ рд╕реБрдЭрд╛рдпрд╛ рдерд╛ред рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рдпрд╣ рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╣рдордиреЗ рдХреЛрдИ рдЖрдЙрдЯрд░реАрдЪ рдирд╣реАрдВ рдХреАред рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдП рдЧрдП рдХреБрдЫ рдЖрдЙрдЯрд░реАрдЪ (рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХреБрдЫ #8511 рдпрд╛ рдЗрд╕ рд╡рд┐рдХреА рдкреЗрдЬ рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВ):

рдкрд┐рдЫрд▓реЗ рдХреБрдЫ рдорд╣реАрдиреЛрдВ рд╕реЗ рд╣рдореЗрдВ 20.2 рдФрд░ 20.3 рдмреАрдЯрд╛, pip 20.3b1 рдореЗрдВ рдирдП рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рд╕реЗ рд▓рдЧрд╛рддрд╛рд░ рдирдИ рд╕рдорд╕реНрдпрд╛рдПрдВ рдорд┐рд▓ рд░рд╣реА рд╣реИрдВред рдЙрди рд░рд┐рдкреЛрд░реНрдЯреЛрдВ рдиреЗ рд╣рдореЗрдВ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХреЛ рдмреЗрд╣рддрд░ рдмрдирд╛рдиреЗ, рдмрдЧреНрд╕ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдФрд░ рдЗрд╕рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рдпреВрдПрдХреНрд╕ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХреА рд╣реИред рд╣рдордиреЗ рдмреАрдЯрд╛ рдлреАрдбрдмреИрдХ рдХреЗ рдЬрд╡рд╛рдм рдореЗрдВ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ "рдХреНрдпрд╛ рдмрджрд▓ рд░рд╣рд╛ рд╣реИ" рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдорд╛рд░реНрдЧрджрд░реНрд╢рд┐рдХрд╛ рдореЗрдВ рднреА рдХрд╛рдлреА рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рд╣реИ ред

рдпрд╣рд╛рдБ рдореЗрд░реА рдореЛрдЯрд╛ рдпреЛрдЬрдирд╛ рд╣реИ:

* Start a discussion on discuss.python.org asking for support

* Direct folks to a Slack channel that could serve as a communication channel between everyone

* Start a document outlining some FAQ and our responses

* Include a decision tree for new issue -> triaged issue

* Share this with the channel once we have a known release date

* Try and roughly schedule volunteers to be online & triaging in the days following the release

@di рдореИрдВ рдорд╛рдирддрд╛ рд╣реВрдВ рдХрд┐ рд▓рдЧрд╛рддрд╛рд░ рдЕрдирд┐рд╢реНрдЪрд┐рддрддрд╛ рдФрд░ рджреЗрд░реА рдиреЗ рдЖрдкрдХреЛ рд╢реЗрдбреНрдпреВрд▓рд┐рдВрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХ рджрд┐рдпрд╛ рд╣реИред рдирдИ рд░рд┐рд▓реАрдЬ рдХреА рддрд╛рд░реАрдЦ рдХрд▓, рд╕реЛрдорд╡рд╛рд░, 30 рдирд╡рдВрдмрд░ рд╣реИред рдпрджрд┐ рдЕрдм рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЪрд░реНрдЪрд╛ рд╕реВрддреНрд░ рдФрд░ рдПрдХ рдирд┐рд░реНрдгрдп рд╡реГрдХреНрд╖ рд╣реИ, рддреЛ рдХреГрдкрдпрд╛ рдЖрдЧреЗ рдмрдврд╝реЗрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ!

рдкрд╛рдЗрдк 20.3 рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдореЗрдВ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдирдпрд╛ рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рд╣реИ! рдкреАрдПрд╕рдПрдл рдмреНрд▓реЙрдЧ рдкрд░ рд░рд┐рд▓реАрдЬ рдХреА рдШреЛрд╖рдгрд╛ рдпрд╣рд╛рдВ рджреА рдЧрдИ рд╣реИ: https://blog.python.org/2020/11/pip-20-3-release-new-resolver.html

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

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

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

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

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

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

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