Servo: ์ง€์› ์ƒ์ž ์ค‘ ์–ด๋Š ๊ฒƒ๋„ ๊น”๋”ํ•˜๊ฒŒ ํ™•์ธ๋˜๊ฑฐ๋‚˜ ๋ผ์ด์„ ์Šค๊ฐ€ ํ™•์ธ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2013๋…„ 09์›” 04์ผ  ยท  27์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: servo/servo

์ด๊ฒƒ๋“ค์€ Tidy.py์— ์˜ˆ์™ธ๋กœ ๋‚˜์—ด๋˜์–ด ์žˆ์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์€ ์šฐ๋ฆฌ๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ ๋ผ์ด์„ ์Šค๋Š” ์šฐ๋ฆฌ๊ฐ€ ์œ ์ง€ ๊ด€๋ฆฌํ•˜๋Š” ๋ชจ๋“  ๊ฒƒ์— ๋Œ€ํ•ด ๊ฒ€์ฆ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

A-infrastructure

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ด€์‹ฌ์‚ฌ๋Š” ๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ•œ์˜ ์ค‘๊ฐ„ ๋‹จ๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Tidy.py๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  ์ด๋Ÿฌํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ./mach test-tidy ์–ด๋–ป๊ฒŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋ชจ๋“  27 ๋Œ“๊ธ€

ํ”Œ๋žซํผ ๋””๋ ‰ํ† ๋ฆฌ์— ๋น„์Šทํ•œ ๋ฌธ์ œ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฌด์‹œ๋œ ํŒŒ์ผ ๋ชฉ๋ก์„ ๋ณด๋ฉด ์ด๋ ‡๊ฒŒ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/servo/ ์•„๋ž˜์—์„œ ํฌํฌ๊ฐ€ ์•„๋‹Œ ๊ฒƒ์œผ๋กœ ์ •์˜๋  ์ˆ˜ ์žˆ๋Š” "์šฐ๋ฆฌ" ์ฝ”๋“œ ๋ฌด๋ฆฌ๋Š” ๋ณ„๋„์˜ ์ €์žฅ์†Œ์— ์žˆ๊ณ  ํ™”๋ฌผ์„ ํ†ตํ•ด ์‚ฌ์šฉ๋˜๋ฏ€๋กœ tidy.py ์—๋Š” ํ‘œ์‹œ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ด๊ฒƒ์€ ์™„๋ฃŒ๋˜์ง€ ์•Š์•˜์œผ๋ฉฐ ์ด์ œ ์šฐ๋ฆฌ๊ฐ€ Cargo๋กœ ์ „ํ™˜ํ•˜๊ณ  ๋ชจ๋“  ๊ฒƒ์ด ํ•˜์œ„ ๋ชจ๋“ˆ์ด ๋˜๊ธฐ ์ „๋ณด๋‹ค ๋” ์–ด๋ ต์Šต๋‹ˆ๋‹ค.

๋‹ค๋ฅธ ๊ตฌ์„ฑ์œผ๋กœ ๊ฐ ์ €์žฅ์†Œ์— ๊น”๋”ํ•˜๊ฒŒ ๋„ฃ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๊นŒ? ์ด๋Ÿฌํ•œ ์ €์žฅ์†Œ๋Š” ๋ชจ๋‘ CI ์‹œ์Šคํ…œ์— ์žˆ์–ด์•ผ ๋™์ผํ•œ ๋ชฉ์ ์„ ๋‹ฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์—๋Š” tidy.py ๋ณต์‚ฌ๋ณธ์ด ์žˆ์„ ์ˆ˜ ์žˆ๋Š” ์ž์ฒด ๋ณ„๋„์˜ CI๊ฐ€ ์žˆ์ง€๋งŒ, ์ด๋Š” ๋ฌด์–ธ๊ฐ€๋ฅผ ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์„ ๋•Œ ์—…๋ฐ์ดํŠธํ•  ๋ณต์‚ฌ๋ณธ์ด ๋งŽ๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค.

์„œ๋ธŒ ๋ชจ๋“ˆ๋กœ ๊น”๋”ํ•˜๊ฒŒ ์ด๋™ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๋‹ค์šด๋กœ๋“œํ•˜์—ฌ CI ์ค‘์— ์‹คํ–‰ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? ๊ทธ ๋ฌธ์ œ๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•œ ๋ช‡ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณ ๋ คํ•  ์˜ต์…˜: tidy ๋ฅผ PyPi์— servo_tidy ์—…๋กœ๋“œํ•˜๊ณ  ์ •๋ฆฌํ•  ๋•Œ๋งˆ๋‹ค ์ตœ์‹  ๋ฒ„์ „์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

ํŽธ์ง‘: ์žญ์ด ๋‚˜๋ฅผ ์ด๊ฒผ๋‹ค.

@frewsxcv ๊ทธ๋Ÿฌ๋‚˜ ๋‚˜๋Š” Corey์˜ ์ œ์•ˆ์— ๋Œ€ํ•œ ๋ณด๋‹ค ๊ตฌ์ฒด์ ์ธ ๋ฒ„์ „์ด ๊ฐ€์žฅ ์ข‹์Šต๋‹ˆ๋‹ค.

๊ดœ์ฐฎ์€. ๋‚˜๋Š” ์ด๊ฒƒ์— ๋Œ€ํ•ด ์ž ์‹œ ์ƒ๊ฐํ–ˆ๊ณ  ๋‚ด๊ฐ€ ๋„์ „ํ•  ์ค€๋น„๊ฐ€ ๋˜์—ˆ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋ฌด์—‡์ด๋“  ๊ตฌํ˜„ํ•˜๊ธฐ ์ „์— ๋‚ด ์ƒ๊ฐ์„ ๋ณด๊ณ ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ด๊ฒƒ๊ณผ ๋™์‹œ์— #6999๋ฅผ ๊ณ ์น  ์ˆ˜ ์žˆ์„์ง€๋„ ๋ชจ๋ฆ…๋‹ˆ๋‹ค.

๋ช‡ ๊ฐ€์ง€ ์ƒ๊ฐ ํ›„ ์ œ์•ˆํ•œ ๋‚ด์šฉ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  1. ๊ฐ€์ƒ ํ™˜๊ฒฝ(์›ƒ์Œ?). mach ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋ฉด Python์€ ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ์ƒ์„ฑ/ํ™œ์„ฑํ™”ํ•ฉ๋‹ˆ๋‹ค( .pyenv/ ๋˜๋Š” python/.pyenv/ ). ๊ทธ๋Ÿฐ ๋‹ค์Œ python/requirements.txt ํŒŒ์ผ์— ๋”ฐ๋ผ ์ข…์†์„ฑ์„ ์„ค์น˜/์—…๋ฐ์ดํŠธํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ํŠธ๋ฆฌ์—์„œ ๋‹ค์Œ์„ ์ œ๊ฑฐํ•˜๊ณ  PyPi ์š”๊ตฌ ์‚ฌํ•ญ์œผ๋กœ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    • python/mozdebug

    • python/mozinfo

    • python/mozlog

    • dependencies/*

    • python/toml

์ด๊ฒƒ์€ ๋˜ํ•œ #6999๋ฅผ ์ˆ˜์ •ํ•ฉ๋‹ˆ๋‹ค. ๋นŒ๋”๊ฐ€ ๋ชจ๋“  ๋นŒ๋“œ ํ›„์— ์ž‘์—… ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋‚ ๋ ค ๋ฒ„๋ฆด์ง€ ์—ฌ๋ถ€์— ๋”ฐ๋ผ Python virtualenv๋ฅผ ์ง€์ •ํ•˜๊ธฐ ์œ„ํ•ด ์ผ์ข…์˜ ์บ์‹ฑ ์˜ต์…˜์ด๋‚˜ mach ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ถ”๊ฐ€ํ•ด์•ผ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

  1. ํŒจํ‚ค์ง€ tidy.py . ์ด๊ฒƒ์€ python/tidy/tidy.py ๋ฐ python/tidy/setup.py ์ƒ์„ฑํ•˜๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. tidy.py ๋ฅผ ๋‹ค๋ฅธ ์ €์žฅ์†Œ์— ํ†ตํ•ฉํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ์ˆ˜ํ–‰ํ•˜๋Š” ๋ช‡ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

    1. PyPi์—์„œ ๋ฆด๋ฆฌ์Šคํ•˜์‹ญ์‹œ์˜ค. Python ํŒจํ‚ค์ง€๊ฐ€ ๋ณ€๊ฒฝ๋  ๋•Œ๋งˆ๋‹ค ์ž๋™์œผ๋กœ ๊ฒŒ์‹œํ•˜๋Š” ์‹œ์Šคํ…œ์„ ๋งŒ๋“ค์ง€ ์•Š๋Š” ํ•œ ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์€ ๊ณ ํ†ต์Šค๋Ÿฌ์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    2. ๋‹ค๋ฅธ ๋ชจ๋“  ์ €์žฅ์†Œ์—์„œ ๋‹ค์Œ์„ ์ˆ˜ํ–‰ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค.

pip install -e git+https://github.com/servo/servo.git#egg=servo_tidy&subdirectory=python/tidy

๋‹ค๋ฅธ ์•„์ด๋””์–ด๋‚˜ ์ƒ๊ฐ์ด ์žˆ๋Š” ์‚ฌ๋žŒ์ด ์žˆ์œผ๋ฉด ์•Œ๋ ค์ฃผ์„ธ์š”.

์šฐ๋ฆฌ๋Š” ์ด๋ฏธ web-platform-tests๋ฅผ ์œ„ํ•œ virtualenv๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ์•„๋งˆ๋„ ์ด๊ฒƒ์„ ์œ„ํ•ด ์‚ฌ์šฉ๋  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ์ด๋ฏธ web-platform-tests๋ฅผ ์œ„ํ•œ virtualenv๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์œผ๋ฉฐ ์•„๋งˆ๋„ ์ด๊ฒƒ์„ ์œ„ํ•ด ์‚ฌ์šฉ๋  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์ข‹์€ ์ƒ๊ฐ. tests/wpt/harness (wptrunner)๋ฅผ ํŠธ๋ฆฌ ๋ฐ–์œผ๋กœ ์˜ฎ๊ธฐ๊ณ  pip ์ข…์†์„ฑ์œผ๋กœ ๋งŒ๋“ค ๊ฒƒ์„ ์ œ์•ˆํ•˜๋ ค๊ณ  ํ–ˆ์œผ๋‚˜ ํŠธ๋ฆฌ ๋‚ด ๋ณต์‚ฌ๋ฅผ ์•ฝ๊ฐ„ ์ˆ˜์ •ํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด์— ๋Œ€ํ•œ ์—…์ŠคํŠธ๋ฆผ์€ https://github.com/w3c/wptrunner ์ด๋ฉฐ ๋ณต์‚ฌ๋ณธ์—์„œ ๋ณ€๊ฒฝํ•œ ์‚ฌํ•ญ์€ ์—…์ŠคํŠธ๋ฆผ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์„œ๋ธŒ ๋ชจ๋“ˆ์ด ์•„๋‹ˆ๊ฑฐ๋‚˜ PyPI์—์„œ ์„ค์น˜ํ•œ ์ด์œ ๋ฅผ ๋ชจ๋ฅด๊ฒ ์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๊ทธ๊ฒƒ์€ ์ฃผ์ œ์—์„œ ๋ฒ—์–ด๋‚œ ๊ฒƒ์ด๋ฏ€๋กœ ์ž์œ ๋กญ๊ฒŒ ๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ์—ฌ์‹ญ์‹œ์˜ค.

๋‚˜๋Š” ์ƒ๊ฐํ–ˆ๋‹ค tests/wpt/_virtualenv (์‹คํ–‰ํ•  ๋•Œ ์ƒ์„ฑ ๋œ ./mach test-wpt ํ•˜์ง€) tests/wpt/harness .

๋˜ํ•œ ํ•ด๋‹น _virtualenv๊ฐ€ ๋” ๋งŽ์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•  ์˜ˆ์ •์ด๋ผ๋ฉด(๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค) ์•„๋งˆ๋„ ํŠธ๋ฆฌ ์œ„๋กœ ๋” ๋†’๊ฒŒ ์ด๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” tests/wpt/harness๊ฐ€ ์•„๋‹ˆ๋ผ tests/wpt/_virtualenv(./mach test-wpt๋ฅผ ์‹คํ–‰ํ•  ๋•Œ ์ƒ์„ฑ๋จ)๋ฅผ ์ƒ๊ฐํ•˜๊ณ  ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๋งž์•„์š”. ์ƒˆ๋กœ์šด ๊ฐ€์ƒ ํ™˜๊ฒฝ์„ ์ƒ์„ฑ/ํ™œ์„ฑํ™”ํ•˜๋Š” Python ์ฝ”๋“œ๋Š” ๊ทธ๋ฆฌ ๋งŽ์ง€ ์•Š์œผ๋ฏ€๋กœ ๋ฏธ๋ž˜์— WPT ์š”๊ตฌ ์‚ฌํ•ญ๊ณผ ๊น”๋”ํ•œ โ€‹โ€‹์š”๊ตฌ ์‚ฌํ•ญ์„ ๋ถ„๋ฆฌํ•˜๋ ค๋Š” ๊ฒฝ์šฐ(๋น„ํ˜ธํ™˜์„ฑ ๋“ฑ์œผ๋กœ ์ธํ•ด) ๊ทธ๋ ‡๊ฒŒ ์–ด๋ ต์ง€ ์•Š์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๋‚˜๋Š” ๋˜ํ•œ virtualenv ๊ฒฝ๋กœ๋ฅผ python/_virtualenv ์™€ ๊ฐ™์€ ๋ณด๋‹ค ์ผ๋ฐ˜์ ์ธ ์žฅ์†Œ๋กœ ์˜ฎ๊ธฐ๋Š” ๊ฒƒ์— ๋ฐ˜๋Œ€ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๋˜ ๋‹ค์‹œ, ์žญ์ด ๋‚  ์ด๊ฒผ์–ด

python/_virtualenv ์ข‹์€ ์žฅ์†Œ์ธ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

mach๋Š” ์ด์ œ #6999์˜ ํ•ด์ƒ๋„ ๋•๋ถ„์— python/_virtualenv ๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

์„œ๋ณด ํŠธ๋ฆฌ์—์„œ ํŒจํ‚ค์ง€๋ฅผ ๊ฒŒ์‹œํ•˜๋Š” ์ด์ ์€ ๊ฒฐ๊ตญ ๋ถ„ํ• ํ•  ๊ฒฝ์šฐ ๋‹ค๋ฅธ ๋ชจ๋“  ์ €์žฅ์†Œ๋ฅผ ๋ณ€๊ฒฝํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋‹จ์ ์€ pypi์— ๋Œ€ํ•œ ๋˜ ๋‹ค๋ฅธ ์ž๊ฒฉ ์ฆ๋ช… ์ง‘ํ•ฉ์„ ๊ด€๋ฆฌํ•˜๊ณ  ํ•„์ˆ˜ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ํ‘ธ์‹œ๋˜๋„๋ก ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

pypi์— ๊ฒŒ์‹œํ•˜๋ ค๋ฉด pypi ๊ณ„์ •์˜ ์‚ฌ์šฉ์ž ์ด๋ฆ„๊ณผ ๋น„๋ฐ€๋ฒˆํ˜ธ๊ฐ€ ๋“ค์–ด ์žˆ๋Š” .pypirc ์‚ฌ๋ณธ์„ ๊ฐ–๊ณ  ๋‹ค์Œ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์—ฌ ํŒจํ‚ค์ง€๋ฅผ ๋“ฑ๋กํ•˜๊ณ  ์—…๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค. ์ด ๊ฒฝ์šฐ "๋ˆ„๊ตฐ๊ฐ€"๊ฐ€ buildmaster ํ˜ธ์ŠคํŠธ์ธ ๊ฒฝ์šฐ ํŒจํ‚ค์ง€ ์—…๋ฐ์ดํŠธ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฆ‰, pypi ๋˜๋Š” ์ง์ ‘ ์„ค์น˜์— ๋ฌธ์ œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค. Pypi๋Š” ์ด์ œ ๋” ๋งŽ์€ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•˜๊ณ  ์ง์ ‘ ์„ค์น˜๋Š” ๋ฏธ๋ž˜์˜ ๋ถˆํ™•์‹คํ•œ ์‹œ์ ์—์„œ ๋” ํฐ ๋ฒˆ๊ฑฐ๋กœ์›€์ด ์žˆ์œผ๋ฉฐ ๋‘˜ ๋‹ค ํŒจํ‚ค์ง€๋กœ ์ •๋ฆฌํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@shinglyu , ๊น”๋”ํ•˜๊ฒŒ ์˜ฎ๊ธฐ๊ณ  ํŒŒ์ด์ฌ ํŒจํ‚ค์ง€๋กœ ์„ค์ •ํ• ๊นŒ์š”, ์•„๋‹ˆ๋ฉด ์ œ๊ฐ€ ํ• ๊นŒ์š”?

@edunham : ํ•  ์ˆ˜ ์žˆ์–ด์š”. :)

๋‚ด ๋™๋ฃŒ @askeing ์€ ์ด ๋ฌธ์ œ์— ๋งค์šฐ ๊ด€์‹ฌ์ด ์žˆ์œผ๋ฏ€๋กœ ์ด ๋ฌธ์ œ๋Š” ๊ทธ์—๊ฒŒ ๋งก๊ธธ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์•ˆ๋…•ํ•˜์„ธ์š” @edunham ์ž…๋‹ˆ๋‹ค .
https://github.com/askeing/servo_tidy ์—์„œ Python ํŒจํ‚ค์ง€(ํ…Œ์ŠคํŠธ ํฌํ•จ)๋กœ ์„ค์ •ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

@askeing ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ๋‹น์‹ ์€ ์ด๋ฏธ ๋Œ€๋ถ€๋ถ„์˜ ํž˜๋“  ์ผ์„ ํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‚ด ์œ ์ผํ•œ ์š”์ ์€ setup() in setup.py ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒƒ์„ ํฌํ•จํ•˜๋Š” ๊ฒƒ์ด ๋„์›€์ด ๋œ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

entry_points={
        'console_scripts': [
            'servo-tidy=servo_tidy:scan',
        ],
    },

ํŒจํ‚ค์ง€๊ฐ€ ์„ค์น˜๋˜๋ฉด ๋‹ค๋ฅธ ํ”„๋กœ์ ํŠธ์˜ .travis.yml ์Šคํฌ๋ฆฝํŠธ ์„น์…˜์—์„œ ์ง์ ‘ servo-tidy ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

@frewsxcv @larsbergstrom @metajack tidy ๊ฐ€ Servo ํŠธ๋ฆฌ์— ์‚ฌ๋Š” ๊ฒƒ๊ณผ ์ž์ฒด ์ €์žฅ์†Œ์— ์‚ฌ๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์–ด๋–ป๊ฒŒ ์ƒ๊ฐํ•˜์‹ญ๋‹ˆ๊นŒ? ํ˜„์žฌ ํŠธ๋ฆฌ์—์„œ tidy git ๊ธฐ๋ก์„ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์ด ํ”„๋กœ์ ํŠธ์— ์–ผ๋งˆ๋‚˜ ์ค‘์š”ํ•œ๊ฐ€์š”? ๋‚˜๋Š” ๊ฐœ์ธ์ ์œผ๋กœ ๊ฐ€๋Šฅํ•˜๋ฉด ์–ธ์ œ๋“ ์ง€ ์—ญ์‚ฌ๋ฅผ ์œ ์ง€ํ•˜๋Š” ๊ฒƒ์„ ์„ ํ˜ธํ•˜์ง€๋งŒ, ์ด ๊ฒฝ์šฐ์—๋Š” ํ•„์š”๋ณด๋‹ค ์˜๊ฒฌ๊ณผ ๋” ๊ด€๋ จ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋‚˜์—๊ฒŒ์„œ ๊ฐ•ํ•œ ์„ ํ˜ธ๊ฐ€ ์—†๋‹ค. tidy.py ๋Š” ์ผ๋ถ€ ์ƒˆ๋กœ์šด ๊ธฐ์—ฌ์ž์˜ ์ถœ๋ฐœ์ ์ธ ๊ฒƒ์œผ๋กœ ๋ณด์ด๋ฉฐ ํ•ด๋‹น ํŒŒ์ผ์„ ๋ณ„๋„์˜ ์ €์žฅ์†Œ์— ๋ณด๊ด€ํ•˜๋ฉด ํ•ด๋‹น ๊ธฐ์—ฌ์ž์˜ ์žฅ๋ฒฝ์ด ๋†’์•„์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์ค‘์š”ํ•œ ๊ด€์‹ฌ์‚ฌ๋Š” ๊ฐ€๋Šฅํ•œ ํ•œ ์ตœ์†Œํ•œ์˜ ์ค‘๊ฐ„ ๋‹จ๊ณ„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ Tidy.py๋ฅผ ์ˆ˜์ •ํ•˜๊ณ  ์ด๋Ÿฌํ•œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ./mach test-tidy ์–ด๋–ป๊ฒŒ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š”์ง€ ํ™•์ธํ•˜๋Š” ๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ฃ„์†กํ•ฉ๋‹ˆ๋‹ค. ๊ทธ PR์—์„œ "์ˆ˜์ •"์ด๋ผ๊ณ  ๋งํ•˜๋Š” ๊ฒƒ์€ ์กฐ๊ธˆ ๋ฉ€๋ฆฌ ๊ฐ€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ƒ์ž๋Š” ์•„์ง CI์—์„œ ์‹ค์ œ๋กœ ์‚ฌ์šฉํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋‚˜๋Š” ์ด๊ฒƒ์ด ์ง€๊ธˆ์ฏค ์ค‘๋‹จ๋˜์—ˆ๊ฑฐ๋‚˜ ๋‹ค๋ฅธ ๋ฌธ์ œ๊ฐ€ ์ด ๋ฌธ์ œ๋ฅผ ๋Œ€์ฒดํ–ˆ๋‹ค๊ณ  ํ™•์‹ ํ•ฉ๋‹ˆ๋‹ค.

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰