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

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

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

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

рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ
рдХрдо рдпрд╛ рдЬреНрдпрд╛рджрд╛ рд╣рд▓ рд╣реЛрдиреЗ рд╡рд╛рд▓реЗ рдШрдЯрдХреЛрдВ рдХреЗ рд╕рд╛рде, рдЕрдм MOH рдХреЗ рдПрд▓реНрдЧреЛрд░рд┐рдердо рднрд╛рдЧ рдкрд░ рдЪрд▓рддреЗ рд╣реИрдВред
рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдп рдПрд▓реНрдЧреЛрд░рд┐рдереНрдо рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддрд╛ рд╣реИ:
- рдкрд░рд┐рдпреЛрдЬрдирд╛ рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рдорд╛рдиреНрдпрддрд╛ред рдПрдирд╛рд▓рд╛рдЗрдЬрд░ рдирд╛рдордХ рд╡рд╕реНрддреБ рдЗрд╕рдХреЗ рд▓рд┐рдП рдЬрд┐рдореНрдореЗрджрд╛рд░ рд╣реИред
- рдПрдХ рдЧреНрд░рд╛рдл рдХрд╛ рдирд┐рд░реНрдорд╛рдгред рдирд┐рд░реНрднрд░рддрд╛ рд╕реЗ, рд╕реНрд╡рд╛рд╕реНрдереНрдп рдордВрддреНрд░рд╛рд▓рдп рдХреЛ рдПрдХ рдЧреНрд░рд╛рдл рдмрдирд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдСрдмреНрдЬреЗрдХреНрдЯ рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реИред
- рдЖрд╢реНрд░рд┐рддреЛрдВ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ред рдЬрд╛рд╣рд┐рд░ рд╣реИ, рд╣рдорд╛рд░реЗ рд╕реНрд░реЛрддреЛрдВ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
- рдирд┐рд░реНрднрд░рддрд╛ рдПрдХреАрдХрд░рдгред рдпрд╣ рддрдереНрдп рдХрд┐ рдирд┐рд░реНрднрд░рддрд╛ рдХрд╛ рд╕реНрд░реЛрдд рдХреЛрдб рдбрд┐рд╕реНрдХ рдкрд░ рдПрдХ рдкрдбрд╝реЛрд╕реА рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рд╣реИ, рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрдиреНрд╣реЗрдВ рдЕрднреА рднреА рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗ рдЬреБрдбрд╝рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
- рдирд┐рд░реНрднрд░рддрд╛ рдЕрджреНрдпрддрдиред рдЪрд░рдг 4 рдХреЗ рддреБрд░рдВрдд рдмрд╛рдж рдпрд╣ рдЪрд░рдг рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ, рддреЛ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдирдП рд╕рдВрд╕реНрдХрд░рдг рдореЗрдВ рдЕрдкрдЧреНрд░реЗрдб рдХрд░реЗрдВред рдпрд╣рд╛рдБ рдХреБрдЫ рдЦрд╝рд╛рд╕рд┐рдпрддреЗрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЙрдиреНрд╣реЗрдВ рдПрдХ рдЕрд▓рдЧ рдЪрд░рдг рдореЗрдВ рдЧрд╛рдХрд░ рд╕реБрдирд╛рдпрд╛ - рдЙрдирдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рдмрд╛рдж рдореЗрдВред
рдкрд░рд┐рдпреЛрдЬрдирд╛ рдФрд░ рдкрд░реНрдпрд╛рд╡рд░рдг рдХреА рдорд╛рдиреНрдпрддрд╛
рд╕рддреНрдпрд╛рдкрди рдореЗрдВ рдУрдПрд╕ рд╕рдВрд╕реНрдХрд░рдг, рд╕рд╣рд╛рдпрдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ рдЬреЛ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВ, рд╕рд╛рде рд╣реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдФрд░ рдореИрдирд┐рдлрд╝реЗрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓рд┐рдВрдХ рдХрд░рдирд╛: рд╕рд┐рдВрдЯреИрдХреНрд╕ рдЬрд╛рдБрдЪ рд╕реЗ рдЕрд╕рдВрдЧрдд рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рддрдХред
рд╕реИрдВрдкрд▓
рдкреЙрдбрдлрд╛рдЗрд▓source 'https://github.com/CocoaPods/Specs.git' source 'https://github.com/RedMadRobot/cocoapods-specs' platform :ios, '10.0' use_frameworks! project 'Project.xcodeproj' workspace 'Project.xcworkspace' target 'Project' do project 'Project.xcodeproj' pod 'Alamofire' pod 'Fabric' pod 'GoogleMaps' end
рдкреЙрдбрдлрд╛рдЗрд▓ рдХреА рдЬрд╛рдБрдЪ рдХрд░рддреЗ рд╕рдордп рд╕рдВрднрд╛рд╡рд┐рдд рдЪреЗрддрд╛рд╡рдирд┐рдпрд╛рдБ рдФрд░ рддреНрд░реБрдЯрд┐рдпрд╛рдБ:
- рдХрд▓реНрдкрдирд╛ рдХреЗ рдХрд┐рд╕реА рднреА рд░рд┐рдкреЛрдЬрд┐рдЯрд░реА рдореЗрдВ рдХреЛрдИ рдирд┐рд░реНрднрд░рддрд╛ рдирд╣реАрдВ рдорд┐рд▓реА;
- рдСрдкрд░реЗрдЯрд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдФрд░ рд╕рдВрд╕реНрдХрд░рдг рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдирд╣реАрдВ рд╣реИрдВ;
- рдЕрдорд╛рдиреНрдп рдХрд╛рд░реНрдпрд╕реНрдерд╛рди рдпрд╛ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХрд╛ рдирд╛рдоред
рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдЧреНрд░рд╛рдл рдХрд╛ рдирд┐рд░реНрдорд╛рдг
рдЪреВрдБрдХрд┐ рд╣рдорд╛рд░реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдЙрдирдХреА рдЕрдкрдиреА рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдФрд░ рдмрджрд▓реЗ рдореЗрдВ рдЙрдирдХреА рдЕрдкрдиреА рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рдпрд╛ рдЙрдк-рдирд┐рд░реНрднрд░рддрд╛рдПрдБ рд╣реЛ рд╕рдХрддреА рд╣реИрдВ, рдкреНрд░рдмрдВрдзрдХ рдиреЗ рд╕рд╣реА рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИред рдпреЛрдЬрдирд╛рдмрджреНрдз рд░реВрдк рд╕реЗ, рдкрд░рд┐рдгрд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛рдПрдВ рдПрдХ
рдирд┐рд░реНрджреЗрд╢рд┐рдд рдЪрдХреНрд░реАрдп рдЧреНрд░рд╛рдл рдореЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

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

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

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

рдЖрдЗрдП рджреЗрдЦреЗрдВ рдХрд┐ рдпрд╣ iOS рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХреЛрдВ рдХреЗ рдХреЛрдб рдореЗрдВ рдХреИрд╕рд╛ рджрд┐рдЦрддрд╛ рд╣реИред
рдХрд╛рд░реНрдереЗрдЬ
typealias DependencyGraph = [Dependency: Set<Dependency>] public enum Dependency { /// A repository hosted on GitHub.com or GitHub Enterprise. case gitHub(Server, Repository) /// An arbitrary Git repository. case git(GitURL) /// A binary-only framework case binary(URL) } /// Protocol for resolving acyclic dependency graphs. public protocol ResolverProtocol { init( versionsForDependency: @escaping (Dependency) -> SignalProducer<PinnedVersion, CarthageError>, dependenciesForDependency: @escaping (Dependency, PinnedVersion) -> SignalProducer<(Dependency, VersionSpecifier), CarthageError>, resolvedGitReference: @escaping (Dependency, String) -> SignalProducer<PinnedVersion, CarthageError> ) func resolve( dependencies: [Dependency: VersionSpecifier], lastResolved: [Dependency: PinnedVersion]?, dependenciesToUpdate: [String]? ) -> SignalProducer<[Dependency: PinnedVersion], CarthageError> }
рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди
рдпрд╣рд╛рдБ рд╣реИ , рдФрд░ NewResolver
рдпрд╣рд╛рдБ рд╣реИ , рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдРрд╕рд╛ рдирд╣реАрдВ рд╣реИред
Cocoapods
рдЧреНрд░рд╛рдл рдирд┐рд░реНрдорд╛рдг рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдПрдХ рдЕрд▓рдЧ
рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдЖрд╡рдВрдЯрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛
рд╣реИ ред рдпрд╣рд╛рдБ
рдЧреНрд░рд╛рдл рдФрд░
рд░рд┐рдЬрд╝реЙрд▓реНрд╡рд░ рдХрд╛ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реИред
рдПрдирд╛рд▓рд╛рдЗрдЬрд╝рд░ рдореЗрдВ, рдЖрдк рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдпрд╣ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рдХреЛрдХреЛрдкреАрдбреНрд╕ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдФрд░ рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдХреА рд╕реНрдерд┐рд░рддрд╛ рдХреА рдЬрд╛рдВрдЪ рдХрд░рддрд╛ рд╣реИред
def validate_lockfile_version! if lockfile && lockfile.cocoapods_version > Version.new(VERSION) STDERR.puts '[!] The version of CocoaPods used to generate ' \ "the lockfile (#{lockfile.cocoapods_version}) is "\ "higher than the version of the current executable (#{VERSION}). " \ 'Incompatibility issues may arise.'.yellow end end
рд╕реНрд░реЛрдд рд╕реЗ рдЖрдк рдпрд╣ рднреА рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╡рд┐рд╢реНрд▓реЗрд╖рдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд▓рд┐рдП рд▓рдХреНрд╖реНрдп рдмрдирд╛рддрд╛ рд╣реИред
рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХреЛрдХреЛрдкреЛрдбреНрд╕ рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦрддреА рд╣реИ:
PODS: - Alamofire (4.7.0) - Fabric (1.7.5) - GoogleMaps (2.6.0): - GoogleMaps/Maps (= 2.6.0) - GoogleMaps/Base (2.6.0) - GoogleMaps/Maps (2.6.0): - GoogleMaps/Base SPEC CHECKSUMS: Alamofire: 907e0a98eb68cdb7f9d1f541a563d6ac5dc77b25 Fabric: ae7146a5f505ea370a1e44820b4b1dc8890e2890 GoogleMaps: 42f91c68b7fa2f84d5c86597b18ceb99f5414c7f PODFILE CHECKSUM: 5294972c5dd60a892bfcc35329cae74e46aac47b COCOAPODS: 1.4.0
PODS рдЦрдВрдб рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рддреНрдпрдХреНрд╖ рдФрд░ рдиреЗрд╕реНрдЯреЗрдб рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рддрд╛ рд╣реИ, рдлрд┐рд░ рдЙрдирдХреЗ рдЪреЗрдХрд╕рдо рдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдФрд░ рдПрдХ рд╕рд╛рде рдЧрдгрдирд╛ рдХреА рдЬрд╛рддреА рд╣реИ рдФрд░ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдХреЛрдкреЛрдбреНрд╕ рдХреЗ рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
рдбрд╛рдЙрдирд▓реЛрдб рдирд┐рд░реНрднрд░рддрд╛рдПрдБ
рдЧреНрд░рд╛рдл рдХрд╛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдирд┐рд░реНрдорд╛рдг рдХрд░рдиреЗ рдФрд░ рд▓реЙрдХ рдлрд╝рд╛рдЗрд▓ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ рдЙрдиреНрд╣реЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрдЧреЗ рдмрдврд╝рддрд╛ рд╣реИред рдЬрд░реВрд░реА рдирд╣реАрдВ рдХрд┐ рдпрд╣ рд╕реНрд░реЛрдд рдХреЛрдб рд╣реЛрдЧрд╛, рдпрд╣ рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╛рдЗрд▓ рдпрд╛ рд╕рдВрдХрд▓рд┐рдд рд░реВрдкрд░реЗрдЦрд╛ рднреА рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рд╕рд╛рде рд╣реА, рд╕рднреА рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ рдЖрдорддреМрд░ рдкрд░ рд╕реНрдерд╛рдиреАрдп рдкрде рдкрд░ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреЗ рд╣реИрдВред

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

рд╕реБрд░рдХреНрд╖рд╛
рдпрджрд┐ рдЖрдк https рдпрд╛ ssh рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд┐рд░реНрднрд░рддрд╛ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЖрдк рд╢рд╛рдВрддрд┐ рд╕реЗ рд╕реЛ рд╕рдХрддреЗ рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдбреЗрд╡рд▓рдкрд░реНрд╕ рдЕрдХреНрд╕рд░ рдЕрдкрдиреЗ рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ http рд▓рд┐рдВрдХ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдФрд░ рдпрд╣рд╛рдВ рд╣рдо рдПрдХ
рдЖрджрдореА рдХреЗ рдмреАрдЪ рдореЗрдВ рд╣рдорд▓рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдХреЛрдИ рд╣рдорд▓рд╛рд╡рд░ рд╕реНрд░реЛрдд рдХреЛрдб, рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓ рдпрд╛ рдврд╛рдВрдЪреЗ рдХреЛ рдЦрд░рд╛рдм рдХрд░ рджреЗрддрд╛ рд╣реИред рдХреБрдЫ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ рдЗрд╕рд╕реЗ рд╕реБрд░рдХреНрд╖рд┐рдд рдирд╣реАрдВ рд╣реИрдВ, рдФрд░ рдХреБрдЫ рдЗрд╕реЗ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд░рддреЗ рд╣реИрдВред
homebrew
OS X рдХреЗ рдкреБрд░рд╛рдиреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдкрд░
рдХрд░реНрд▓ рдХреА рдЬрд╛рдБрдЪ рдХрд░рдирд╛ред def check_for_bad_curl return unless MacOS.version <= "10.8" return if Formula["curl"].installed? <<~EOS The system curl on 10.8 and below is often incapable of supporting modern secure connections & will fail on fetching formulae. We recommend you: brew install curl EOS end
Http рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░рддреЗ рд╕рдордп
SHA256 рд╣реИрд╢ рдЪреЗрдХ рднреА рд╣реИред
def curl_http_content_headers_and_checksum(url, hash_needed: false, user_agent: :default) max_time = hash_needed ? "600" : "25" output, = curl_output( "--connect-timeout", "15", "--include", "--max-time", max_time, "--location", url, user_agent: user_agent ) status_code = :unknown while status_code == :unknown || status_code.to_s.start_with?("3") headers, _, output = output.partition("\r\n\r\n") status_code = headers[%r{HTTP\/.* (\d+)}, 1] end output_hash = Digest::SHA256.digest(output) if hash_needed { status: status_code, etag: headers[%r{ETag: ([wW]\/)?"(([^"]|\\")*)"}, 2], content_length: headers[/Content-Length: (\d+)/, 1], file_hash: output_hash, file: output, } end
рдФрд░
рдЖрдк рдЕрд╕реБрд░рдХреНрд╖рд┐рдд рдкреБрдирд░реНрдирд┐рд░реНрджреЗрд╢рди рдХреЛ http (
HOMEBREW_NO_INSECURE_REDIRECT рд╡реИрд░рд┐рдПрдмрд▓) рдореЗрдВ
рднреА рдЕрдХреНрд╖рдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред
рдХрд╛рд░реНрдереЗрдЬ рдФрд░ рдХреЛрдХреЛрдкреЛрдбреНрд╕
рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рд╕рд░рд▓ рд╣реИ -
рдЖрдк рдирд┐рд╖реНрдкрд╛рджрди рдпреЛрдЧреНрдп рдлрд╝рд╛рдЗрд▓реЛрдВ рдкрд░ http рдХрд╛
рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ ред
guard binaryURL.scheme == "file" || binaryURL.scheme == "https" else { return .failure(BinaryJSONError.nonHTTPSURL(binaryURL)) }
def validate_source_url(spec) return if spec.source.nil? || spec.source[:http].nil? url = URI(spec.source[:http]) return if url.scheme == 'https' || url.scheme == 'file' warning('http', "The URL (`#{url}`) doesn't use the encrypted HTTPs protocol. " \ 'It is crucial for Pods to be transferred over a secure protocol to protect your users from man-in-the-middle attacks. '\ 'This will be an error in future releases. Please update the URL to use https.') end
рдпрд╣рд╛рдВ рдкреВрд░рд╛ рдХреЛрдбред
рд╕реНрд╡рд┐рдлреНрдЯ рдкреИрдХреЗрдЬ рдореИрдиреЗрдЬрд░
рдлрд┐рд▓рд╣рд╛рд▓, рд╕реБрд░рдХреНрд╖рд╛ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХреБрдЫ рднреА рдирд╣реАрдВ рдкрд╛рдпрд╛ рдЬрд╛ рд╕рдХрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╡рд┐рдХрд╛рд╕ рдкреНрд░рд╕реНрддрд╛рд╡реЛрдВ рдореЗрдВ рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреИрдХреЗрдЬ рдкрд░ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд░рдиреЗ рдХреЗ
рд▓рд┐рдП рдПрдХ рддрдВрддреНрд░ рдХрд╛ рд╕рдВрдХреНрд╖рд┐рдкреНрдд рдЙрд▓реНрд▓реЗрдЦ рд╣реИред
рдирд┐рд░реНрднрд░рддрд╛ рдПрдХреАрдХрд░рдг
рдПрдХреАрдХрд░рдг рд╕реЗ рдореЗрд░рд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЬреЛрдбрд╝рдирд╛ рдХрд┐ рд╣рдо рд╕реНрд╡рддрдВрддреНрд░ рд░реВрдк рд╕реЗ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХреЗрдВ, рдФрд░ рд╡реЗ рдореБрдЦреНрдп рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдХреЛрдб рдХреЗ рд╕рд╛рде рд╕рдВрдХрд▓рд┐рдд рд╣реИрдВред
рдПрдХреАрдХрд░рдг рдпрд╛ рддреЛ рдореИрдиреБрдЕрд▓ (рдХрд╛рд░реНрдереЗрдЬ) рдпрд╛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд (рдХреЛрдХреЛрдкреЛрдбреНрд╕) рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдПрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдПрдХ рдХреЗ рдлрд╛рдпрджреЗ рдбреЗрд╡рд▓рдкрд░ рджреНрд╡рд╛рд░рд╛ рдЗрд╢рд╛рд░реЛрдВ рдХреА рдПрдХ рдиреНрдпреВрдирддрдо рд╣реИ, рд▓реЗрдХрд┐рди рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЬрд╛рджреВ рдЬреЛрдбрд╝реЗ рдЬрд╛ рд╕рдХрддреЗ рд╣реИрдВред
рдХреЛрдХреЛрдкреЛрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рдПрдХ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж рдореБрд╢реНрдХрд┐рд▓ рдореИрдиреБрдЕрд▓ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЖрдк, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП,
рдЗрд╕ рдХрд╛рд░реНрдереЗрдЬ рдЕрдиреБрджреЗрд╢ рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╣реБрдП, рдкрд░рд┐рдпреЛрдЬрдирд╛ рдкрд░ рдирд┐рд░реНрднрд░рддрд╛ рдЬреЛрдбрд╝рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп, рд▓реЗрдХрд┐рди рд▓рдВрдмреЗ рд╕рдордп рддрдХред
рдирд┐рд░реНрднрд░рддрд╛ рдЕрджреНрдпрддрди
рдЖрдк рдЙрдирдХреЗ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдирд┐рд░реНрднрд░рддрд╛ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рдирд┐рдпрдВрддреНрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХреЛрдВ рдореЗрдВ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ 3 рддрд░реАрдХреЗ рд╣реИрдВ:
- рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╕рдВрд╕реНрдХрд░рдгред рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдФрд░ рдЖрдо рддрд░реАрдХрд╛ рд╣реИред рдЖрдк рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╕рдВрд╕реНрдХрд░рдг рдФрд░ рдЕрдВрддрд░рд╛рд▓ рджреЛрдиреЛрдВ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╣ рдирд┐рд░реНрднрд░рддрд╛ рд╕рдВрдЧрддрддрд╛ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЕрдиреБрдорд╛рдирд┐рдд рддрд░реАрдХрд╛ рд╣реИ, рдмрд╢рд░реНрддреЗ рдХрд┐ рд▓реЗрдЦрдХреЛрдВ рдиреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЛ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд╕рдВрд╕реНрдХрд░рдг рджрд┐рдпрд╛ рд╣реЛред
- рд╢рд╛рдЦрд╛ред рдЬрдм рдПрдХ рд╢рд╛рдЦрд╛ рдХреЛ рдЕрджреНрдпрддрди рдХрд░рдирд╛ рдФрд░ рдПрдХ рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рдФрд░ рдЕрджреНрдпрддрди рдХрд░рдирд╛, рд╣рдо рдЕрдиреБрдорд╛рди рдирд╣реАрдВ рд▓рдЧрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреНрдпрд╛ рдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдВрдЧреЗред
- рдХрдорд┐рдЯ рдпрд╛ рдЯреИрдЧ рдХрд░рдирд╛ред рдЬрдм рдЕрдкрдбреЗрдЯ рдХрдорд╛рдВрдб рдирд┐рд╖реНрдкрд╛рджрд┐рдд рд╣реЛрддреА рд╣реИ, рддреЛ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рддрд┐рдмрджреНрдз рдпрд╛ рдЯреИрдЧ (рдпрджрд┐ рдпрд╣ рдирд╣реАрдВ рдмрджрд▓рд╛ рдЧрдпрд╛ рд╣реИ) рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдирд┐рд░реНрднрд░рддрд╛ рдХрднреА рднреА рдЕрдкрдбреЗрдЯ рдирд╣реАрдВ рдХреА рдЬрд╛рдПрдЧреАред
рдирд┐рд╖реНрдХрд░реНрд╖
рд▓реЗрдЦ рдореЗрдВ рдореИрдВрдиреЗ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХреЛрдВ рдХреА рдЖрдВрддрд░рд┐рдХ рд╕рдВрд░рдЪрдирд╛ рдХреА рд╕рддрд╣реА рд╕рдордЭ рджреАред рдпрджрд┐ рдЖрдк рдЕрдзрд┐рдХ рдЬрд╛рдирдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдкреИрдХреЗрдЬ рдкреНрд░рдмрдВрдзрдХ рдХреЗ рд╕реНрд░реЛрдд рдХреЛрдб рдореЗрдВ рддрд▓реНрд▓реАрди рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдХрд┐рд╕реА рдкрд░рд┐рдЪрд┐рдд рднрд╛рд╖рд╛ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рдЦреЛрдЬ рдХреЛ рдЦреЛрдЬрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ред рд╡рд░реНрдгрд┐рдд рдпреЛрдЬрдирд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рд╡рд┐рд╢реЗрд╖ рдирд┐рд░реНрднрд░рддрд╛ рдкреНрд░рдмрдВрдзрдХ рдореЗрдВ рдХреБрдЫ рдЧрд╛рдпрдм рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдпрд╛ рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдПрдХ рдирдпрд╛ рджрд┐рдЦрд╛рдИ рджреЗ рд╕рдХрддрд╛ рд╣реИред
рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдФрд░ рдЪрд░реНрдЪрд╛ рдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред