рдпреЗ tidy.py рдореЗрдВ рдЕрдкрд╡рд╛рдж рдХреЗ рд░реВрдк рдореЗрдВ рд╕реВрдЪреАрдмрджреНрдз рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЗрдирдореЗрдВ рд╕реЗ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд╛ рд░рдЦрд░рдЦрд╛рд╡ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рд▓рд╛рдЗрд╕реЗрдВрд╕рд┐рдВрдЧ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╣рдорд╛рд░реЗ рджреНрд╡рд╛рд░рд╛ рдмрдирд╛рдП рдЧрдП рд╣рд░ рдЪреАрдЬ рдкрд░ рдорд╛рдиреНрдп рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдореЗрдВ рдПрдХ рд╕рдорд╛рди рд╕рдорд╕реНрдпрд╛ рд╣реИ
"рд╣рдорд╛рд░реЗ" рдХреЛрдб рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ (рдЬрд┐рд╕реЗ https://github.com/servo/ рдХреЗ рддрд╣рдд рдЧреИрд░-рдХрд╛рдВрдЯреЗ рдХреЗ рд░реВрдк рдореЗрдВ рдкрд░рд┐рднрд╛рд╖рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ) рдЕрд▓рдЧ-рдЕрд▓рдЧ рднрдВрдбрд╛рд░реЛрдВ рдореЗрдВ рд╣реИ рдФрд░ рдХрд╛рд░реНрдЧреЛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рд▓рд┐рдП tidy.py
рд▓рд┐рдП рджреГрд╢реНрдпрдорд╛рди рдирд╣реАрдВ рд╣реИред рддреЛ рдпрд╣ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЕрдм рдкрд╣рд▓реЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рд╣рдордиреЗ рдХрд╛рд░реНрдЧреЛ рдкрд░ рд╕реНрд╡рд┐рдЪ рдХрд┐рдпрд╛ рдФрд░ рд╕рдм рдХреБрдЫ рдПрдХ рд╕рдмрдореЙрдбреНрдпреВрд▓ рдерд╛ред
рдХреНрдпрд╛ рд╣рдо рдкреНрд░рддреНрдпреЗрдХ рд░реЗрдкреЛ рдореЗрдВ рдПрдХ рдЕрд▓рдЧ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХреЗ рд╕рд╛рде рд╕рд╛рдл-рд╕реБрдерд░рд╛ рдирд╣реАрдВ рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ? рд╡реЗ рд░реЗрдкреЛ рд╕рднреА рд╕реАрдЖрдИ рд╕рд┐рд╕реНрдЯрдо рдореЗрдВ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП, рддрд╛рдХрд┐ рдПрдХ рд╣реА рд▓рдХреНрд╖реНрдп рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХреЗред
рдкреНрд░рддреНрдпреЗрдХ рд░реЗрдкреЛ рдХрд╛ рдЕрдкрдирд╛ рдЕрд▓рдЧ рд╕реАрдЖрдИ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдореЗрдВ tidy.py
рдХреА рдПрдХ рдкреНрд░рддрд┐ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЬрдм рд╣рдо рдХреБрдЫ рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рдкреНрд░рддрд┐рдпрд╛рдВред
рдПрдХ рд╕рдмрдореЙрдбреНрдпреВрд▓ рдореЗрдВ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдВ? рдЗрд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ рдФрд░ рдЗрд╕реЗ CI рдХреЗ рджреМрд░рд╛рди рдЪрд▓рд╛рдПрдВ? рдЙрд╕ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЙрдкрд╛рдп рд╣реИрдВред
рд╡рд┐рдЪрд╛рд░ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рд╡рд┐рдХрд▓реНрдк: tidy
рдХреЛ PyPi рдореЗрдВ servo_tidy
рд░реВрдк рдореЗрдВ рдЕрдкрд▓реЛрдб рдХрд░рдирд╛ рдФрд░ рдЬрдм рднреА рд╣рдо рд╕рд╛рдл рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рдбрд╛рдЙрдирд▓реЛрдб рдХрд░реЗрдВ
рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рдЬреИрдХ рдиреЗ рдореБрдЭреЗ рд╣рд░рд╛ рджрд┐рдпрд╛
@frewsxcv рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреЛрд░реА рдХреЗ рд╕реБрдЭрд╛рд╡ рдХрд╛ рдЕрдзрд┐рдХ рдареЛрд╕ рд╕рдВрд╕реНрдХрд░рдг рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред
рдареАрдХ рд╣реИред рдореИрдВрдиреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝рд╛ рд╕реЛрдЪрд╛ рд╣реИ рдФрд░ рд╕реЛрдЪрддрд╛ рд╣реВрдВ рдХрд┐ рдореИрдВ рдЪреБрдиреМрддреА рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реВрдВред рдореИрдВ рдХреБрдЫ рднреА рд▓рд╛рдЧреВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЕрдкрдиреЗ рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рд░рд┐рдкреЛрд░реНрдЯ рдХрд░реВрдВрдЧрд╛; рдореИрдВ рдЗрд╕рдХреЗ рд╕рд╛рде #6999 рдПрдХ рд╕рд╛рде рдареАрдХ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛ рд╕рдХрддрд╛ рд╣реВрдВред
рдХреБрдЫ рд╕реЛрдЪрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдпрд╣рд╛рдБ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рддрд╛ рд╣реВрдБ:
mach
рдХрдорд╛рдВрдб рдХреЛ рдЪрд▓рд╛рдиреЗ рдкрд░, рдкрд╛рдпрдерди рдПрдХ рдЖрднрд╛рд╕реА рд╡рд╛рддрд╛рд╡рд░рдг (рдЬреЛ рдХрд╣реАрдВ .pyenv/
рдпрд╛ python/.pyenv/
) рдмрдирд╛/рд╕рдХреНрд░рд┐рдп рдХрд░реЗрдЧрд╛ред рдлрд┐рд░ рд╣рдо python/requirements.txt
рдлрд╝рд╛рдЗрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдЕрдкрдиреА рдирд┐рд░реНрднрд░рддрд╛ рдХреЛ рд╕реНрдерд╛рдкрд┐рдд/рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВрдЧреЗ)ред рдпрд╣ рд╣рдореЗрдВ рдЕрдкрдиреЗ рдкреЗрдбрд╝ рд╕реЗ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдХреЛ рд╣рдЯрд╛рдиреЗ рдФрд░ рдЙрдиреНрд╣реЗрдВ PyPi рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрдЧрд╛:python/mozdebug
python/mozinfo
python/mozlog
dependencies/*
python/toml
рдЗрд╕рд╕реЗ #6999 рднреА рдареАрдХ рд╣реЛ рдЬрд╛рдПрдЧрд╛ред рдЗрд╕ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреЗ рд╣реБрдП рдХрд┐ рдХреНрдпрд╛ рдмрд┐рд▓реНрдбрд░реНрд╕ рдкреНрд░рддреНрдпреЗрдХ рдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд╛рдж рдХрд╛рд░реНрдпрд╢реАрд▓ рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рдЙрдбрд╝рд╛ рджреЗрддреЗ рд╣реИрдВ, рд╣рдореЗрдВ рдкрд╛рдЗрдерди рд╡рд░реНрдЪреБрдЕрд▓рдПрдиреНрд╡ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдХреИрд╢рд┐рдВрдЧ рд╡рд┐рдХрд▓реНрдк рдпрд╛ рдордЪ рдкреИрд░рд╛рдореАрдЯрд░ рдЬреЛрдбрд╝рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИред
tidy.py
ред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╕рд┐рд░реНрдл python/tidy/tidy.py
рдФрд░ python/tidy/setup.py
редtidy.py
ред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рдХреБрдЫ рддрд░реАрдХреЗ рд╣реИрдВ:
pip install -e git+https://github.com/servo/servo.git#egg=servo_tidy&subdirectory=python/tidy
рдореБрдЭреЗ рдмрддрд╛рдПрдВ рдХрд┐ рдХреНрдпрд╛ рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЕрдиреНрдп рд╡рд┐рдЪрд╛рд░ рдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИ
рд╡реЗрдм-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо-рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд░реНрдЪреБрдЕрд▓рдПрдиреНрд╡ рд╣реИ, рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рд╡реЗрдм-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо-рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╡рд░реНрдЪреБрдЕрд▓рдПрдиреНрд╡ рд╣реИ, рд╢рд╛рдпрдж рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЗрд╕рдХреЗ рд▓рд┐рдП рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЕрдЪреНрдЫрд╛ рд╡рд┐рдЪрд╛рд░ред рдореИрдВ рдпрд╣ рд╕реБрдЭрд╛рд╡ рджреЗрдиреЗ рд╡рд╛рд▓рд╛ рдерд╛ рдХрд┐ рд╣рдо рдкреЗрдбрд╝ рд╕реЗ tests/wpt/harness
(wptrunner) рдХреЛ рднреА рд╣рдЯрд╛ рджреЗрдВ (рдФрд░ рдЗрд╕реЗ рдПрдХ рдкрд╛рдЗрдк рдирд┐рд░реНрднрд░рддрд╛ рдмрдирд╛ рджреЗрдВ), рд▓реЗрдХрд┐рди рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рд╣рдорд╛рд░реА рдХреЙрдкреА-рдЗрди-рдЯреНрд░реА рдореЗрдВ рдХреБрдЫ рд╕рдВрдкрд╛рджрди рдХрд┐рдП рд╣реИрдВ: рдкреА
рдЙрд╕рдХреЗ рд▓рд┐рдП рдЕрдкрд╕реНрдЯреНрд░реАрдо https://github.com/w3c/wptrunner рд╣реИ , рдФрд░ рд╣рдорд╛рд░реА рдХреЙрдкреА рдореЗрдВ рдХрд┐рдП рдЧрдП рдмрджрд▓рд╛рд╡ рдЕрдкрд╕реНрдЯреНрд░реАрдо рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рд╣реИрдВред рдореБрдЭреЗ рдирд╣реАрдВ рдкрддрд╛ рдХрд┐ рдпрд╣ рдПрдХ рд╕рдмрдореЙрдбреНрдпреВрд▓ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реИ рдпрд╛ рдкреАрдИрдкреАрдЖрдИ рд╕реЗ рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдереЛрдбрд╝реЗ рд╡рд┐рд╖рдп рд╕реЗ рд╣рдЯрдХрд░ рд╣реИ, рдмреЗрдЭрд┐рдЭрдХ рдПрдХ рдФрд░ рдореБрджреНрджрд╛ рдЦреЛрд▓реЗрдВред
рдореИрдВ tests/wpt/_virtualenv
(рдЬреЛ рддрдм рдмрдирддрд╛ рд╣реИ рдЬрдм рдЖрдк ./mach test-wpt
рдЪрд▓рд╛рддреЗ рд╣реИрдВ) рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛, рди рдХрд┐ tests/wpt/harness
ред
рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛ рдЕрдЧрд░ рд╡рд╣ _virtualenv рдЕрдзрд┐рдХ рдХрд░реНрддрд╡реНрдпреЛрдВ (рдЬреЛ рдареАрдХ рд╣реИ) рдХрд░рдиреЗ рдЬрд╛ рд░рд╣рд╛ рд╣реИ, рддреЛ рд╢рд╛рдпрдж рдЗрд╕реЗ рдкреЗрдбрд╝ рд╕реЗ рдКрдкрд░ рд▓реЗ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореИрдВ рдкрд░реАрдХреНрд╖рдг/wpt/_virtualenv рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪ рд░рд╣рд╛ рдерд╛ (рдЬреЛ рддрдм рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдЬрдм рдЖрдк ./mach test-wpt рдЪрд▓рд╛рддреЗ рд╣реИрдВ), рдкрд░реАрдХреНрд╖рдг/wpt/рд╣рд╛рд░реНрдиреЗрд╕ рдирд╣реАрдВред
рд╕рд╣реА, рдЕрдЪреНрдЫрд╛ рд▓рдЧрддрд╛ рд╣реИред рдПрдХ рдирдпрд╛ рдЖрднрд╛рд╕реА рд╡рд╛рддрд╛рд╡рд░рдг рдЙрддреНрдкрдиреНрди/рд╕рдХреНрд░рд┐рдп рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд╛рдпрдерди рдХреЛрдб рдмрд╣реБрдд рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдпрджрд┐ рд╣рдо рдХрднреА рднреА рднрд╡рд┐рд╖реНрдп рдореЗрдВ WPT рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдФрд░ рд╕рд╛рдл-рд╕реБрдерд░реА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдЕрд▓рдЧ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдЕрд╕рдВрдЧрддрддрд╛рдУрдВ рдпрд╛ рдЬреЛ рднреА рд╣реЛ) рддреЛ рдпрд╣ рдЙрддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
рдореИрдВ рд╡рд░реНрдЪреБрдЕрд▓рдПрдиреНрд╡ рдкрде рдХреЛ python/_virtualenv
рдЬреИрд╕реЗ рдЕрдзрд┐рдХ рд╕рд╛рдорд╛рдиреНрдп рд╕реНрдерд╛рди рдкрд░ рд▓реЗ рдЬрд╛рдиреЗ рдХрд╛ рднреА рд╡рд┐рд░реЛрдз рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ
рдФрд░ рдлрд┐рд░ рднреА, рдЬреИрдХ рдиреЗ рдореБрдЭреЗ рд╣рд░рд╛ рджрд┐рдпрд╛
python/_virtualenv
рдПрдХ рдЕрдЪреНрдЫреА рдЬрдЧрд╣ рдХреА рддрд░рд╣ рд▓рдЧрддрд╛ рд╣реИред
рдордЪ рдЕрдм python/_virtualenv
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ, #6999 рдХреЗ рд╕рдВрдХрд▓реНрдк рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рдкреИрдХреЗрдЬ рдХреЛ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХрд╛ рд▓рд╛рдн рдЬрд╣рд╛рдВ рд╕реЗ рдпрд╣ рд╕рд░реНрд╡реЛ рдкреЗрдбрд╝ рдореЗрдВ рд░рд╣рддрд╛ рд╣реИ, рдпрд╣ рд╣реИ рдХрд┐ рдЕрдЧрд░ рд╣рдо рдЕрдВрддрддрдГ рдЗрд╕реЗ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рддреЛ рд╣рдореЗрдВ рдЕрдиреНрдп рд╕рднреА рд░реЗрдкреЛ рдХреЛ рдмрджрд▓рдирд╛ рдирд╣реАрдВ рдкрдбрд╝реЗрдЧрд╛; рджреЛрд╖ рдпрд╣ рд╣реИ рдХрд┐ рд╣рдореЗрдВ рдкреАрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдХреНрд░реЗрдбреЗрдВрд╢рд┐рдпрд▓ рдХреЗ рдПрдХ рдФрд░ рд╕реЗрдЯ рдХрд╛ рдкреНрд░рдмрдВрдзрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рдкрд░рд┐рд╡рд░реНрддрди рдЖрдЧреЗ рдмрдврд╝реЗред
pypi рдкрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрд┐рд╕реА рдХреЗ рдкрд╛рд╕ .pypirc
рдХреА рдПрдХ рдкреНрд░рддрд┐ рд╣реЛрдЧреА рдЬреЛ pypi рдЦрд╛рддреЗ рдХрд╛ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо рдФрд░ рдкрд╛рд╕рд╡рд░реНрдб рд░рдЦрддрд╛ рд╣реИ, рдлрд┐рд░ рдкреИрдХреЗрдЬ рдХреЛ рдкрдВрдЬреАрдХреГрдд рдХрд░рдиреЗ рдФрд░ рдЕрдкрд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрдорд╛рдВрдб рдЪрд▓рд╛рдПрдБред рдпрджрд┐ рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ "рдХреЛрдИ" рдмрд┐рд▓реНрдбрдорд╛рд╕реНрдЯрд░ рд╣реЛрд╕реНрдЯ рд╣реИ, рддреЛ рд╣рдо рдкреИрдХреЗрдЬ рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд░рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред
рдЗрд╕рдХреЗ рд╕рд╛рде рд╣реА, рдореИрдВ рдпрд╛ рддреЛ рдкреАрдкреАрдЖрдИ рдпрд╛ рдкреНрд░рддреНрдпрдХреНрд╖ рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд╕рд╛рде рдареАрдХ рд╣реВрдВред рдкреАрдкреАрдЖрдИ рдЕрдм рдЕрдзрд┐рдХ рдХрд╛рдо рд╣реИ, рднрд╡рд┐рд╖реНрдп рдореЗрдВ рдПрдХ рдЕрдирд┐рд╢реНрдЪрд┐рдд рдмрд┐рдВрджреБ рдкрд░ рдкреНрд░рддреНрдпрдХреНрд╖ рд╕реНрдерд╛рдкрдирд╛ рдПрдХ рдмрдбрд╝реА рдкрд░реЗрд╢рд╛рдиреА рд╣реИ, рдФрд░ рджреЛрдиреЛрдВ рдХреЛ рдПрдХ рдкреИрдХреЗрдЬ рдореЗрдВ рд╕рд╛рдл-рд╕реБрдерд░рд╛ рдмрдирд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
@shinglyu , рдХреНрдпрд╛ рдЖрдк рд╕рд╛рдл-рд╕реБрдерд░рд╛ рдЪрд▓рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕реЗ рдкрд╛рдпрдерди рдкреИрдХреЗрдЬ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдпрд╛ рдореИрдВ рдХрд░реВрдВрдЧрд╛?
@edunham : рдореИрдВ рдпрд╣ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБред :)
рдореЗрд░реЗ рд╕рд╣рдпреЛрдЧреА @askeing рдХреЛ рдЗрд╕ рдореБрджреНрджреЗ рдореЗрдВ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ, рдЗрд╕рд▓рд┐рдП рдореИрдВ рдЗрд╕реЗ рдЙрди рдкрд░ рдЫреЛрдбрд╝ рджреВрдБрдЧрд╛ред
рд╣рд╛рдп @edunham ,
рдореИрдВ рдЗрд╕реЗ рдпрд╣рд╛рдВ рдкрд╛рдпрдерди рдкреИрдХреЗрдЬ (рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рд╕рд╛рде) рдХреЗ рд░реВрдк рдореЗрдВ рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВ: https://github.com/askeing/servo_tidy
@askeing рдзрдиреНрдпрд╡рд╛рдж! рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЬрд╝реНрдпрд╛рджрд╛рддрд░ рдореЗрд╣рдирдд рдкрд╣рд▓реЗ рд╣реА рдХрд░ рд▓реА рд╣реИред рдореЗрд░рд╛ рдПрдХрдорд╛рддреНрд░ рдирд╛рдЗрдЯрдкрд┐рдХ рдпрд╣ рд╣реИ рдХрд┐ setup()
рдореЗрдВ setup.py
рдореЗрдВ рдХреБрдЫ рдРрд╕рд╛ рд╢рд╛рдорд┐рд▓ рд╣реЛрдирд╛ рдорджрджрдЧрд╛рд░ рд╣реЛрдЧрд╛
entry_points={
'console_scripts': [
'servo-tidy=servo_tidy:scan',
],
},
рддрд╛рдХрд┐ рд╣рдо рдкреИрдХреЗрдЬ рд╕реНрдерд╛рдкрд┐рдд рд╣реЛрдиреЗ рдХреЗ рдмрд╛рдж рдХрд┐рд╕реА рдЕрдиреНрдп рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ .travis.yml
рдХреЗ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдЕрдиреБрднрд╛рдЧ рдореЗрдВ рд╕реАрдзреЗ servo-tidy
рдЖрд╣реНрд╡рд╛рди рдХрд░ рд╕рдХреЗрдВред
@frewsxcv @larsbergstrom @metajack рд╕рд░реНрд╡реЛ рдЯреНрд░реА рдмрдирд╛рдо рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рд░реЗрдкреЛ рдореЗрдВ рд░рд╣рдиреЗ рд╡рд╛рд▓реЗ tidy
рдкрд░ рдЖрдкрдХреЗ рдХреНрдпрд╛ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ? рд╡рд░реНрддрдорд╛рди рдкреЗрдбрд╝ рд╕реЗ tidy
git рдЗрддрд┐рд╣рд╛рд╕ рдХреЛ рд░рдЦрдирд╛ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рд▓рд┐рдП рдХрд┐рддрдирд╛ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИ? рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рдЬрдм рднреА рд╕рдВрднрд╡ рд╣реЛ рдЗрддрд┐рд╣рд╛рд╕ рд░рдЦрдирд╛ рдкрд╕рдВрдж рдХрд░рддрд╛ рд╣реВрдВ, рд▓реЗрдХрд┐рди рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд░рд╛рдп рдХреЗ рд╕рд╛рде рдХрд░рдирд╛ рдЕрдзрд┐рдХ рд╣реИред
рдореЗрд░реА рдУрд░ рд╕реЗ рдХреЛрдИ рдордЬрдмреВрдд рд╡рд░реАрдпрддрд╛ рдирд╣реАрдВред рдЙрд▓реНрд▓реЗрдЦрдиреАрдп рд╣реИ рдХрд┐ tidy.py
рдХреБрдЫ рдирдП рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдмрд┐рдВрджреБ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ, рдФрд░ рдЙрд╕ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдПрдХ рдЕрд▓рдЧ рднрдВрдбрд╛рд░ рдореЗрдВ рд░рд╣рдиреЗ рд╕реЗ рдЙрди рдпреЛрдЧрджрд╛рдирдХрд░реНрддрд╛рдУрдВ рдХреА рдмрд╛рдзрд╛ рдмрдврд╝ рд╕рдХрддреА рд╣реИред
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд┐рдВрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ tidy.py рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рдФрд░ рдпрд╣ рджреЗрдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд╡реЗ рдкрд░рд┐рд╡рд░реНрддрди рдиреНрдпреВрдирддрдо рд╕рдВрднрд╡ рдордзреНрдпрд╡рд░реНрддреА рдЪрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде ./mach test-tidy
рдХреЛ рдХреИрд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВред
рдУрд╣, рдЙрд╕ рдкреАрдЖрд░ рдореЗрдВ "рдлрд┐рдХреНрд╕" рдХрд╣рдирд╛ рдереЛрдбрд╝рд╛ рджреВрд░ рдЬрд╛ рд░рд╣рд╛ рдерд╛ред рдХреНрд░реЗрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрднреА рддрдХ рдЕрдкрдиреЗ рд╕реАрдЖрдИ рдореЗрдВ рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣реЗ рд╣реИрдВред
рдореБрдЭреЗ рдкреВрд░рд╛ рдпрдХреАрди рд╣реИ рдХрд┐ рдпрд╣ рдЕрдм рддрдХ рдХрдо рд╣реЛ рдЧрдпрд╛ рд╣реИ, рдпрд╛ рдХрд┐ рдЕрдиреНрдп рдореБрджреНрджреЛрдВ рдиреЗ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рд╣реИред
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рд╕рдмрд╕реЗ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдЪрд┐рдВрддрд╛ рдпрд╣ рд╣реИ рдХрд┐ tidy.py рдХреЛ рд╕рдВрд╢реЛрдзрд┐рдд рдХрд░рдирд╛ рдФрд░ рдпрд╣ рджреЗрдЦрдирд╛ рд╕рдВрднрд╡ рд╣реИ рдХрд┐ рд╡реЗ рдкрд░рд┐рд╡рд░реНрддрди рдиреНрдпреВрдирддрдо рд╕рдВрднрд╡ рдордзреНрдпрд╡рд░реНрддреА рдЪрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде
./mach test-tidy
рдХреЛ рдХреИрд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВред