Source Owned Workspace - kimjooyoon/meta-ontology-go GitHub Wiki

ํŒจํ‚ค์ง€ ์ด๋ฆ„๊ณผ import๋ฅผ ํ•œ ๊ณณ์— ์ ๊ธฐ

Gooo ์†Œ์Šค์—๋Š” ์ด๋ฏธ package app, import diagnostics "tools/diagnostics"์ฒ˜๋Ÿผ ์ด๋ฆ„๊ณผ ๊ฐ€์ ธ์˜ฌ ํŒจํ‚ค์ง€๊ฐ€ ์ ํ˜€ ์žˆ์Šต๋‹ˆ๋‹ค. ์ž‘์—…๊ณต๊ฐ„ ํŒŒ์ผ์—๋„ ๊ฐ™์€ ๋‚ด์šฉ์„ ๋‹ค์‹œ ์ ์œผ๋ฉด ํ•จ์ˆ˜๋ฅผ ๊ฐ€์ ธ๋‹ค ์“ฐ๊ฑฐ๋‚˜ ํŒŒ์ผ์„ ์˜ฎ๊ธธ ๋•Œ ๋งž์ถฐ ๊ณ ์น  ๊ณณ์ด ๋Š˜์–ด๋‚ฉ๋‹ˆ๋‹ค.

PR 1381์„ ๊ฐœ๋ฐœ ๋ธŒ๋žœ์น˜ d3552fa2์— ๋ณ‘ํ•ฉํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž‘์—…๊ณต๊ฐ„์˜ name๊ณผ imports๋ฅผ ์ƒ๋žตํ•˜๋ฉด Gooo ํŒŒ์ผ์—์„œ ์ฝ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ํŒŒ์ผ์˜ ์œ„์น˜์™€ ์‹คํ–‰ํ•  ํ•จ์ˆ˜๋Š” ์ž‘์—…๊ณต๊ฐ„์—์„œ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ์ƒˆ ํ˜•์‹์€ ๊ณต๊ฐœ 0.6.11 ๊ฐœ๋ฐœํŒ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•„์ˆ˜ CI ์—ฌ์„ฏ ๊ฐœ์™€ ์›๋ณธ ๊ฒ€์ฆ ๊ธฐ๋ก์„ ํ™•์ธํ–ˆ๊ณ , ๊ฒ€์‚ฌํ•œ ์†Œ์Šค์™€ ๋ณ‘ํ•ฉ ๊ฒฐ๊ณผ์˜ ํŒŒ์ผ ํŠธ๋ฆฌ๊ฐ€ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋ณ‘ํ•ฉ ๊ทผ๊ฑฐ์™€ ์›๋ณธ. 0.6.11 ์ค€๋น„ PR 1382๋ฅผ ๋ณ‘ํ•ฉํ•˜๊ณ  ๋„ค ํ”Œ๋žซํผ ๋ฐฐํฌ ๊ฒ€์‚ฌ๋ฅผ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ณต๊ฐœ macOS ํŒŒ์ผ์„ ์„ค์น˜ํ•ด ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์™€ ์ž์ฒด ๋ชจ๋ธ์˜ ๊ธฐ์กด ์ž…๋ ฅยท๋ถ€๋ถ„ ๊ฒฐ๊ณผยท์žฌ์‹คํ–‰๋„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฐฐํฌ์™€ ์‹ค์ œ ์‚ฌ์šฉ ์›๋ณธ.

์ž‘์—…๊ณต๊ฐ„์— ๋‚จ๊ธฐ๋Š” ๋‚ด์šฉ

์„ธ ํŒจํ‚ค์ง€๋ฅผ ์“ฐ๋Š” ์ง„๋‹จ ๋„๊ตฌ๋Š” ๋‹ค์Œ์ฒ˜๋Ÿผ ์ ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

{
  "schema": "gooo/package-workspace-manifest/v1",
  "entry": {"package_path": "app/explain", "activity": "Main"},
  "packages": [
    {"path": "app/explain", "sources": ["app.gooo.fixture"]},
    {"path": "tools/diagnostics", "sources": ["diagnostics.gooo.fixture"]},
    {"path": "tools/rules", "sources": ["rules.gooo.fixture"]}
  ]
}

๊ฐ ํŒŒ์ผ์˜ package ์„ ์–ธ์—์„œ ์ด๋ฆ„์„ ์ฝ๊ณ , import๋ฅผ ๋ชจ์•„ ์˜์กด ๊ด€๊ณ„๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ํ•œ ํŒจํ‚ค์ง€์— ํŒŒ์ผ์ด ์—ฌ๋Ÿฌ ๊ฐœ๋ฉด ์ด๋ฆ„์ด ์ผ์น˜ํ•˜๋Š”์ง€ ํ™•์ธํ•˜๊ณ  ๊ฐ€์ ธ์˜ค๊ธฐ๋Š” ํ•ฉ์นฉ๋‹ˆ๋‹ค. app/explain์ด๋ผ๋Š” ์œ„์น˜์™€ app์ด๋ผ๋Š” ์†Œ์Šค ์ด๋ฆ„๋„ ๊ฐ๊ฐ์˜ ์—ญํ• ๋Œ€๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค.

์ด๋ฆ„์ด๋‚˜ import ๋ชฉ๋ก์„ ์ง์ ‘ ์ ์œผ๋ฉด ์†Œ์Šค์™€ ๋Œ€์กฐํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ imports: []๋Š” ๊ฐ€์ ธ์˜ค๊ธฐ๊ฐ€ ์—†๋‹ค๋Š” ๋ช…์‹œ์  ๊ฐ’์ž…๋‹ˆ๋‹ค. ์ƒ๋žตํ•˜๋ฉด ์†Œ์Šค์—์„œ ์ฝ๋Š”๋‹ค๋Š” ์ ์„ ๊ตฌ๋ถ„ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด์— ์ž‘์—…๊ณต๊ฐ„์—๋งŒ ์˜์กด ๊ด€๊ณ„๋ฅผ ์ ๋˜ ํ”„๋กœ๊ทธ๋žจ๋„ ๊ณ„์† ์ฝ์Šต๋‹ˆ๋‹ค.

์ „์ฒด ์˜ˆ์ œ์™€ ์‹คํ–‰ ๋ช…๋ น.

์กฐ๋ฆฝํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ๊ณ„์† ์“ธ ์ˆ˜ ์žˆ๋‚˜

๊ฐ™์€ ์ฝ๊ธฐ ๊ฒฝ๋กœ๋ฅผ ํŒจํ‚ค์ง€ ํ™•์ธ, ์‹ค์ œ ์‹คํ–‰, ์ €์žฅ ์žฌ์‹คํ–‰, ๋‚จ์€ ์กฐ๋ฆฝ ์ด์–ด๊ฐ€๊ธฐ์™€ Gooo ์กฐ๋ฆฝ ์ •์ฑ…์—๋„ ์—ฐ๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌยท์ง„๋‹จ ํ”„๋กœ์ ํŠธ ํ…œํ”Œ๋ฆฟ๋„ ์งง์€ ๊ตฌ์„ฑ์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ๊ธฐ์กด ๋ช…์‹œํ˜•๊ณผ ์ƒˆ ํ˜•์‹์œผ๋กœ ํ•ด์„ํ•œ ์ „์ฒด ํŒจํ‚ค์ง€ ๊ทธ๋ž˜ํ”„๊ฐ€ ๊ฐ™๊ณ , ์›๋ž˜ ์ž‘์—…๊ณต๊ฐ„ ํŒŒ์ผ์˜ ์ง€๋ฌธ์€ ๊ฐ๊ฐ ๋ณด๊ด€ํ•˜๋Š” ๊ฒƒ์„ ๊ฒ€์‚ฌํ–ˆ์Šต๋‹ˆ๋‹ค.

์‹ค์ œ ๊ฐ€์ ธ์˜จ ํ•จ์ˆ˜ ํ˜ธ์ถœ, ํด๋” ์ด๋™ ํ›„ ์ €์žฅ ์žฌ์‹คํ–‰, Gooo ์ •์ฑ…์ด ๋ถ€๋ถ„ ๊ฒฐ๊ณผ๋ฅผ ๋ฐ›์•„ ๋‚จ์€ ํ›„๋ณด๋ฅผ ์กฐ๋ฆฝํ•˜๋Š” ๊ฒ€์‚ฌ๋„ ํ†ต๊ณผํ–ˆ์Šต๋‹ˆ๋‹ค. ์ž˜๋ชป๋œ ํŒจํ‚ค์ง€ ์ด๋ฆ„, ์—†๋Š” ์˜์กด ํŒจํ‚ค์ง€์™€ ์ˆœํ™˜ ๊ด€๊ณ„๋Š” ์˜ค๋ฅ˜๋กœ ๋‚จ๊น๋‹ˆ๋‹ค.

๊ณต๊ฐœ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์‚ฌ์šฉํ•œ ๊ฒฐ๊ณผ

ํ‘œ์ค€ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ ์†Œ์Šค๋ฅผ ๊ทธ๋Œ€๋กœ ๊ฐ€์ ธ์™€ ์ž‘์—…๊ณต๊ฐ„์˜ ๋ฐ˜๋ณต ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋งŒ ๋บ€ ๋’ค ์ž์ฒด ๊ทธ๋ž˜ํ”„ ๋ชจ๋ธ์„ ์—ฐ๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ณ ์ • ์ˆœ์„œ์™€ ๋ชจ๋ธ ๋ชจ๋‘ ๊ธฐ์กด ์—ด ์ž…๋ ฅ์„ ๋งžํ˜”๊ณ , ์ƒ์„ฑ ํ”„๋กœ๊ทธ๋žจ๊ณผ ์‹ค์ œ ๊ฐ’์€ ๋ช…์‹œํ˜• ๊ตฌ์„ฑ๊ณผ ๊ฐ™์•˜์Šต๋‹ˆ๋‹ค. ๋‘ ๋ฐฉ์‹ ๋ชจ๋‘ ํ›„๋ณด ์—ฌ๋Ÿ ๊ฐœ๊ฐ€ ํ•„์š”ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ €์žฅ ์žฌ์‹คํ–‰์—์„œ๋„ ์ƒˆ ์ถ”๋ก  ์—†์ด ๊ฐ™์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป์—ˆ๊ณ  ์ž…๋ ฅ๋งŒ ์ค€ ์„ธ ๊ฑด์€ ์ •๋‹ต๋ฅ ์„ ๋ถ™์ด์ง€ ์•Š๊ณ  ์‹ค์ œ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ฒฐ๊ณผ๋Š” ๊ธฐ์กด ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ ์ปดํŒŒ์ผ๋Ÿฌ ๋ณ€๊ฒฝ์„ ํ™•์ธํ•œ ํšŒ๊ท€ ๊ด€์ธก์ž…๋‹ˆ๋‹ค. ํ•จ์ˆ˜์™€ ์„ ํƒ์ง€, ํ‰๊ฐ€ ์ž…๋ ฅ, ๋ชจ๋ธ ๊ฐ€์ค‘์น˜๋Š” ๋ฐ”๊พธ์ง€ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ๊ณ„ํšยท๊ฒ€์‚ฌยท์ž์ฒด ๋ชจ๋ธ ์‹คํ–‰ ์›๋ณธ.