Ember.js: ์˜ฅํƒ„ ์ถ”์  ๋ฌธ์ œ

์— ๋งŒ๋“  2018๋…„ 11์›” 28์ผ  ยท  33์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: emberjs/ember.js

์š”์•ฝ

์ด๋ฒˆ ํ˜ธ์˜ ๋ชฉ์ ์€ Ember.js์˜ Octane ์—๋””์…˜์„ ์ถœ์‹œํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์ž‘์—…์˜ ์ƒํƒœ๋ฅผ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•œ ์ „๋ฐ˜์ ์ธ ๋ฌธ์ œ๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด ๋ชฉ๋ก์— ์žˆ๋Š” ํ•ญ๋ชฉ ์ค‘ ํ•˜๋‚˜๋ฅผ ์ž‘์—…ํ•˜๊ณ  ์‹ถ์€ ์‚ฌ๋žŒ์ด ์žˆ์œผ๋ฉด ๋จผ์ € Discord ์ฑ„ํŒ… ์˜ #st-octane ์ฑ„๋„์„ ํ™•์ธํ•˜์„ธ์š”.

๋‹ค์Œ ํ•  ์ผ ๋ชฉ๋ก์€ ๊ฐœ๋ณ„ ๋ฌธ์ œ๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ ํ•ด๋‹น ๋ฌธ์ œ์— ๋Œ€ํ•œ ๋งํฌ๋ฅผ ํฌํ•จํ•˜๋„๋ก ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ ์ž์ฒด์—๋Š” ์ด ๋ชฉ๋ก์˜ ๊ฐ ํ•ญ๋ชฉ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ๋‚ด์šฉ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

๋กœ๋“œ๋งต RFC์˜ ๋ชฉํ‘œ

์‹œ์ž‘ํ•œ ์ผ ๋๋‚ด๊ธฐ(1/2๋ถ€)

2018 ๋กœ๋“œ๋งต RFC ์— ๋”ฐ๋ผ ์ด๋ฏธ ์‹œ์ž‘ํ•œ ์ผ์„ ๋งˆ๋ฌด๋ฆฌํ•˜๋Š” ๋ฐ ์ „๋…ํ•˜๊ณ  ์ง‘์ค‘ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

  • ember-cli์˜ ๋ธŒ๋กœ์ฝœ๋ฆฌ 2.0
  • ๋ชจ๋“ˆ ํ†ตํ•ฉ [์ถ”์  ๋ฌธ์ œ] - https://blog.emberjs.com/2019/03/11/update-on-module-unification-and-octane.html์— ๋”ฐ๋ผ ์ด ์—๋””์…˜์—์„œ ๋ฒ”์œ„๊ฐ€ ํ•ด์ œ๋จ
  • ๊ธฐ๋ณธ ๊ตฌ์„ฑ ์š”์†Œ API๋กœ์„œ์˜ Glimmer ๊ตฌ์„ฑ ์š”์†Œ
  • ๊ธฐ๋ณธ ๊ฐ์ฒด ๋ชจ๋ธ๋กœ์„œ์˜ ๊ธฐ๋ณธ JavaScript ํด๋ž˜์Šค
  • ๊ธฐ๋ณธ JavaScript ๋ชจ๋“ˆ - ์ด ๋ฒ„์ „์—์„œ ๋ฒ”์œ„๊ฐ€ ํ•ด์ œ๋จ

    • ๋นŒ๋“œ ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ๋ชจ๋“ˆ ๋…ธ์ถœ

    • Ember๋ฅผ npm ํŒจํ‚ค์ง€๋กœ ๊ฒŒ์‹œ

    • npm ํŒจํ‚ค์ง€ ๊ฐ€์ ธ์˜ค๊ธฐ

Octane Edition ๊ธฐ๋Šฅ(2/2๋ถ€)

๋กœ๋“œ๋งต RFC์— ๋”ฐ๋ฅด๋ฉด ์ด๋Š” Octane ์—๋””์…˜์˜ ๋ชฉํ‘œ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜
"Ember Octane์˜ ์ตœ์ข… ์ผ์ •๊ณผ ๊ธฐ๋Šฅ ์„ธํŠธ๋Š” ํ•ต์‹ฌ ํŒ€์— ์˜ํ•ด ๊ฒฐ์ •๋˜๋ฉฐ ์ด RFC์—์„œ ํ™•์ •๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค."

  • ๊ธฐ๋ณธ์ ์œผ๋กœ jQuery ์—†์Œ
  • Svelte Builds (๋‹ค์Œ ์—๋””์…˜์œผ๋กœ ์ด๋™)
  • ๋„ค์ดํ‹ฐ๋ธŒ ์ž๋ฐ”์Šคํฌ๋ฆฝํŠธ ํด๋ž˜์Šค
  • ๊ธ€๋ฆฌ๋จธ ๋ถ€ํ’ˆ
  • ์ฆ๋ถ„ ๋ Œ๋”๋ง ๋ฐ ์žฌ์ˆ˜ํ™” (๋‹ค์Œ ํŒ์œผ๋กœ ์ด๋™)
  • Treeshaking (๋‹ค์Œ ํŒ์œผ๋กœ ์ด๋™)
  • ๋Ÿฐ๋ฃจํ”„ ์ œ๊ฑฐ(๊ฐœ๋ฐœ์ž๊ฐ€ Ember.run์„ ์‚ฌ์šฉํ•  ํ•„์š” ์ œ๊ฑฐ)
  • Ember ๋ฐ์ดํ„ฐ ์•ˆ์ •ํ™” (๋‹ค์Œ ์—๋””์…˜์œผ๋กœ ์ด๋™)

๋กœ๋“œ๋งต RFC์˜ ์‹ค์ œ ๊ตฌํ˜„

๋ฐ์ฝ”๋ ˆ์ดํ„ฐ

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ํ†ฐ ๋ฐ์ผ | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

  • [x] RFC emberjs/rfc#408

    • [x] ์ถ”๊ฐ€ RFC - ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ ์ง€์› - [RFC #440]

  • [x] ๊ตฌํ˜„
  • [x] ๋ฌธ์„œ
  • [x] ๊ธฐ๋Šฅ ํ”Œ๋ž˜๊ทธ ํ™œ์„ฑํ™”

    • [x] ember-cli-babel์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋ณ€ํ™˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

Glimmer ๊ตฌ์„ฑ ์š”์†Œ(๊ธฐ๋ณธ ๊ตฌ์„ฑ ์š”์†Œ API๋กœ)

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ํ†ฐ ๋ฐ์ผ | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

  • [x] RFC emberjs/rfc#416
  • [x] ๊ตฌํ˜„ [PR]
  • [x] ๋ฌธ์„œ(์˜ฅํƒ„ ๊ฐ€์ด๋“œ์— ํ™๋ณด๋จ)

### ์ถ”์ ๋œ ์†์„ฑ

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ํ†ฐ ๋ฐ์ผ | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

  • [x] RFC

    • [x] [[๋ฌธ์ œ]](https://github.com/emberjs/rfcs/issues/404)

    • [x] ์ž‘์„ฑ [RFC #410]

    • [x] ๊ฒ€ํ† ๋จ

    • [x] FCP (1/25/19)

    • [x] ๋ณ‘ํ•ฉ

  • [x] ๊ตฌํ˜„(POC ์ง„ํ–‰ ์ค‘, @pzuraq)
  • [x] ๋ฌธ์„œ

    • [x] ๊ธฐ๋Šฅ ํ”Œ๋ž˜๊ทธ ํ™œ์„ฑํ™”

    • [x] ๋ฌดํ•œ ๋ Œ๋”๋ง CP ๋ฒ„๊ทธ #17799 ์ˆ˜์ • (https://github.com/emberjs/ember.js/pull/17835)

    • [x] ๊ด€์ฐฐ์ž ์ƒํ˜ธ ์šด์šฉ์„ฑ

    • [x] ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ

### ์š”์†Œ ์ˆ˜์ •์ž

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ํ†ฐ ๋ฐ์ผ | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

  • [x] RFC

    • [x] ์ž‘์„ฑ [RFC #415]

    • [x] ๊ฒ€ํ† ๋จ

    • [x] FCP

    • [x] ๋ณ‘ํ•ฉ

  • [x] RFC ์ง€์›: "Splattributes"๊ฐ€ ์žˆ๋Š” ์ „๋‹ฌ ์š”์†Œ ์ˆ˜์ •์ž [RFC #435]
  • [x] ๊ตฌํ˜„(์• ๋“œ์˜จ์œผ๋กœ) [ember-render-modifiers]
  • [x] ๋ฌธ์„œ [์ถ”์  ๋ฌธ์ œ]

    • [x] API ๋ฌธ์„œ(@GavinJoyce)

    • [x] ๊ฐ€์ด๋“œ( @wycats - dom ๊ฐ€์ด๋“œ์™€ ์ƒํ˜ธ ์ž‘์šฉ)

์—๋””์…˜

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: @tomdale | ์ƒํƒœ: ์ง„ํ–‰ ์ค‘ โœ…

  • [ ] RFC

    • [x] ์ž‘์„ฑ- [RFC #371]

    • [ ] ๊ฒ€ํ† ๋จ(์ง„ํ–‰ ์ค‘, @tomdale ์ฑ”ํ”ผ์–ธ)

    • [ ] FCP

    • [ ] ๋ณ‘ํ•ฉ

  • [ ] ๋ฌธ์„œ

๊ธฐ๋ณธ์ ์œผ๋กœ jQuery ์ œ๊ฑฐ

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ๋กœ๋ฒ„ํŠธ ์žญ์Šจ(@rwjblue) | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

  • [x] RFC

    • [x] ์ž‘์„ฑ [RFC #386]

    • [x] ๊ฒ€ํ† ๋จ

    • [x] FCP

    • [x] ๋ณ‘ํ•ฉ

  • [x] ๊ตฌํ˜„
  • [x] ๋ฌธ์„œ

๋„ค์ดํ‹ฐ๋ธŒ JS ํด๋ž˜์Šค

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ๋กœ๋ฒ„ํŠธ ์žญ์Šจ | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

  • [x] RFC

    • [x] ์ž‘์„ฑ [RFC #240]

    • [x] ๊ฒ€ํ† ๋จ

    • [x] FCP

    • [x] ๋ณ‘ํ•ฉ

  • [x] ๊ตฌํ˜„

    • [x](3.6์—์„œ ์ œ๊ณต๋จ)

    • [x] ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ ์ฝ”๋“œ ๋ชจ๋“œ [ember-es6-class-codemod] (์ง„ํ–‰ ์ค‘ @rwjblue @pzuraq)

    • [x] ๊ธฐ๋ณธ JS ํด๋ž˜์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋„๋ก ๊ฐ ๊ฐ์ฒด ์œ ํ˜•์— ๋Œ€ํ•œ ์ฒญ์‚ฌ์ง„ ์—…๋ฐ์ดํŠธ:

    • [x] ๊ฒฝ๋กœ

    • [x] ๋ผ์šฐํ„ฐ [์ถ”์  ๋ฌธ์ œ]

    • [x] ๊ตฌ์„ฑ ์š”์†Œ

    • [x] ์ปจํŠธ๋กค๋Ÿฌ

    • [x] ์„œ๋น„์Šค

  • [x] ๋ฌธ์„œ [์ถ”์  ๋ฌธ์ œ]

๋ธŒ๋กœ์ฝœ๋ฆฌ 2.0

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ๋กœ๋ฒ„ํŠธ ์žญ์Šจ(@rwjblue) | ์ƒํƒœ: ์ง„ํ–‰ ์ค‘ โœ…

  • [x] ๊ตฌํ˜„
  • [ ] ๋ฌธ์„œ

    • [x] ๋ธŒ๋กœ์ฝœ๋ฆฌ ์›น์‚ฌ์ดํŠธ( @oligriffiths - https://broccoli.build/)

    • [ ] Ember ๊ฐ€์ด๋“œ์— ๋ธŒ๋กœ์ฝœ๋ฆฌ ๊ธฐ๋ณธ ์ถ”๊ฐ€ [์ถ”์  ๋ฌธ์ œ] (์ง„ํ–‰ ์ค‘, @oligriffiths)

Ember ๊ฐ€์ด๋“œ ์—…๋ฐ์ดํŠธ

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: Jen Weber(@jenweber) | ์ƒํƒœ: ์ง„ํ–‰ ์ค‘ โœ…

์›น์‚ฌ์ดํŠธ ์žฌ์„ค๊ณ„

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: Leah Silber(@wifelette) & Mel Sumner(@melsumner) | ์ƒํƒœ: ์ง€์—ฐ๋จ

  • [x] RFC emberjs/rfc#425
  • [ ] ๊ตฌํ˜„(๋ชฉํ‘œ: 2019๋…„ 8์›”) Repo: ember-styleguide - ๋„์™€์ฃผ๊ณ  ์‹ถ์œผ์„ธ์š”? Discord์˜ #dev-ember-learning ์ฑ„๋„์—์„œ ํ•‘์„ ํ•˜์„ธ์š”.
  • [ ] ๋ฌธ์„œ( ember-learn/ํ•ธ๋“œ๋ถ ์—…๋ฐ์ดํŠธ )

์Šค์ฝ”ํ”„ ํฌ๋ฆฌํ”„

Octane ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๋Š” ๋™์•ˆ ์ถ”๊ฐ€ํ•ด์•ผ ํ•˜๋Š” ์ƒˆ๋กœ์šด ํ•ญ๋ชฉ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๋‹ค.

on ์ˆ˜์ •์ž

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ๋กœ๋ฒ„ํŠธ ์žญ์Šจ(@rwjblue) | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

  • [x] RFC emberjs/rfc#471 [์ถ”์  ๋ฌธ์ œ]
  • [x] ๊ตฌํ˜„(ํด๋ฆฌํ•„ ์™„๋ฃŒ, Ember์—์„œ ๊ตฌํ˜„ ์ง„ํ–‰ ์ค‘)
  • [x] ๋ฌธ์„œ( @pzuraq )

fn ๋„์šฐ๋ฏธ

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ๋กœ๋ฒ„ํŠธ ์žญ์Šจ(@rwjblue) | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

์ฃผ์ž… ๋งค๊ฐœ๋ณ€์ˆ˜ ์ •๊ทœํ™”(์†Œ์œ ์ž ํ„ฐ๋„/ํด๋ž˜์Šค ํฌํ„ธ)

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ๋กœ๋ฒ„ํŠธ ์žญ์Šจ(@rwjblue) | ์ƒํƒœ: ์™„๋ฃŒ ๐ŸŽ‰

  • [x] RFC emberjs/rfcs#451 [[์ถ”์  ๋ฌธ์ œ](https://github.com/emberjs/rfc-tracking/issues/34)]
  • [x] ๊ตฌํ˜„(์ง„ํ–‰ ์ค‘, PR https://github.com/emberjs/ember.js/pull/17858)
  • [x] ๋ฌธ์„œ

@classic ๋ฐ์ฝ”๋ ˆ์ดํ„ฐ

ํ•ต์‹ฌ ํŒ€ ์ฑ”ํ”ผ์–ธ: ๋กœ๋ฒ„ํŠธ ์žญ์Šจ(@rwjblue) | ์ƒํƒœ: ์ง„ํ–‰ ์ค‘

  • [x] RFC emberjs/rfc#468
  • [x] ๊ตฌํ˜„(์• ๋“œ์˜จ์ด ๋  ์˜ˆ์ •)
  • [ ] ๋ฌธ์„œ(๊ณต์‹ ๊ฐ€์ด๋“œ ๋Œ€์‹  Ember Atlas์— WIP๊ฐ€ ๋ฌธ์„œํ™”๋จ) ( @pzuraq )

์— ๋ฒ„ ์ธ์ŠคํŽ™ํ„ฐ

[์ถ”์  ๋ฌธ์ œ]

TODO ์ง€์›

  • [x] ์ƒํ™ฉ๋ณ„ ๋„์šฐ๋ฏธ ๋ฐ ์ˆ˜์ •์ž RFC(FCP - 1/25/19](https://github.com/emberjs/rfcs/pull/432)(@chancancode)
  • [x] ๊ตฌํ˜„: ember-cli์šฉ Octane Blueprint

    • [x] [์• ๋“œ์˜จ MVP - https://github.com/NullVoxPopuli/ember-octane-blueprint ](https://github.com/NullVoxPopuli/ember-octane-blueprint)

    • [x] ์• ๋“œ์˜จ์„ ember-cli org(@NullVoxPopuli)๋กœ ์ด๋™(https://github.com/ember-cli/ember-octane-blueprint)

  • [x] ๋ฌธ์„œ: Octane ์—๋””์…˜์˜ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์— ์˜ํ•ด ๋„์ž…๋œ CLI ์„ ํƒ์  ๊ธฐ๋Šฅ ํ”Œ๋ž˜๊ทธ(CLI ๊ฐ€์ด๋“œ๊ฐ€ ์•„๋‹Œ ์ผ๋ฐ˜ ๊ฐ€์ด๋“œ์— ๋ฌธ์„œํ™”๋จ)
  • [ ](์ตœ์ ํ™”) ํŒŒ์ผ ํฌ๊ธฐ ์ ˆ์•ฝ์„ ์œ„ํ•œ ์„ ํƒ์  ๊ธฐ๋Šฅ ํ”Œ๋ž˜๊ทธ ๋ณดํ˜ธ

ํ™•์žฅ ๋ชฉํ‘œ/๋ฒ”์œ„ ํ•ด์ œ ํ•ญ๋ชฉ

์ด๊ฒƒ๋“ค์€ Octane์—์„œ ๋ฒ”์œ„๊ฐ€ ํ•ด์ œ๋˜์—ˆ์œผ๋ฉฐ ์ด์ œ ํ™•์žฅ ๋ชฉํ‘œ๋กœ ์ถ”์ ๋˜๋Š” ํ•ญ๋ชฉ์ž…๋‹ˆ๋‹ค.

  • [ ] Svelte Builds(๋งˆ์ง€๋ง‰ ์ฝ”๋“œ ์ •๋ฆฌ๋ฅผ ํ†ตํ•ด ์ด ํ•ญ๋ชฉ์„ ํ™•์žฅ ๋ชฉํ‘œ๋กœ ์‰ฝ๊ฒŒ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Œ)
  • [ ] ์— ๋ฒ„ ๋ฐ์ดํ„ฐ ์•ˆ์ •ํ™”
  • [ ] [๋ผ์šฐํ„ฐ ์„œ๋น„์Šค](https://github.com/emberjs/rfcs/blob/master/text/0095-router-service.md)

    • [x] ๊ด€๋ จ: RouteInfo ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ [RFC #398]

    • [x] ๊ด€๋ จ: ๋ผ์šฐํ„ฐ ๋„์šฐ๋ฏธ [RFC #391]

    • [ ] ๊ตฌํ˜„: ๋ผ์šฐํ„ฐ ๋„์šฐ๋ฏธ

    • [ ] ๋ฌธ์„œ

  • [ ] ํŒจํ‚ค์ง€ ๊ฒŒ์‹œ(๋กœ๋“œ๋งต์—์„œ)
  • [ ] ์ฆ๋ถ„ ๋ Œ๋”๋ง(2/19/19๋ถ€ํ„ฐ ๋ฒ”์œ„ ํ•ด์ œ)

    • [ ] RFC

    • [ ] ๊ตฌํ˜„

    • [ ] ๋ฌธ์„œ

  • [ ] ํ…Œ์ŠคํŠธ์—์„œ ๋™๊ธฐ ๋ Œ๋”๋ง ์ œ๊ฑฐ(์• ๋“œ์˜จ์œผ๋กœ ์ถœ์‹œ ์˜ˆ์ •)
  • [ ] ์ฆ๋ถ„ ์žฌ์ˆ˜ํ™”/์žฌ์ˆ˜ํ™”

    • [ ] RFC(์ง„ํ–‰ ์ค‘, @rondale-sc)

    • [ ] ๊ตฌํ˜„

    • [ ] ๋ฌธ์„œ

  • [ ] ํ…œํ”Œ๋ฆฟ ๊ฐ€์ ธ์˜ค๊ธฐ

    • [ ] RFC emberjs/rfc#454

    • [ ] ๊ตฌํ˜„(POC ์ง„ํ–‰ ์ค‘, @wycats)

    • [ ] ๋ฌธ์„œ

  • [x] Decorators polyfill ์• ๋“œ์˜จ(์•„์ง ์ €์žฅ์†Œ ์—†์Œ)

    • [x] ๊ตฌํ˜„

    • [x] ๋ฌธ์„œ

  • [ ] ๊ตฌํ˜„: Embroider (ํŒจํ‚ค์ง• ์‚ฌ์–‘) ( @ef4 ) (์—…๋ฐ์ดํŠธ: ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒํ•˜์ง€๋งŒ ๋” ๋‚˜์€ ์•ˆ์ •์„ฑ์„ ๋ณด์žฅํ•˜๊ธฐ ์œ„ํ•ด Octane ๋ฆด๋ฆฌ์Šค์˜ ๊ฒฝ์šฐ ๋ฒ ํƒ€ ์ƒํƒœ์ž„)
  • [ ] ๋„ค์ดํ‹ฐ๋ธŒ JS ๋ชจ๋“ˆ: NPM ํŒจํ‚ค์ง€ ๊ฐ€์ ธ์˜ค๊ธฐ

    • [x] ๊ตฌํ˜„: NPM ํŒจํ‚ค์ง€์—์„œ ๊ฐ€์ ธ์˜ค๊ธฐ - [ember-auto-import]

    • [ ] ๊ตฌํ˜„: ๊ธฐ๋ณธ ์ฒญ์‚ฌ์ง„์œผ๋กœ ember-auto-import [๋ฌธ์ œ ์ถ”์ ]

    • [ ] ๋ฌธ์„œํ™”(์ง„ํ–‰ ์ค‘, @NullVoxPopuli)

ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ

์„ธ๋ถ€

  • [x] ๊ฐ ๊ด€๋ จ Ember ์กฐ์ง์— ์˜ฅํƒ„ ์ŠคํŠธ๋ผ์ดํฌ ํŒ€์„ ๊ตฌ์„ฑํ•ฉ๋‹ˆ๋‹ค.

    • [x] [ember-cli](https://github.com/orgs/ember-cli/teams/octane-strike-team)

    • [x] [ember.js](https://github.com/orgs/emberjs/teams/octane-strike-team/discussions)

    • [x] [ember-learn](https://github.com/orgs/ember-learn/teams/octane-strike-team)

  • [ ] ํ† ๋ก : ember ๋งˆ๋ฒ•์‚ฌ(์˜ˆ: ember-cli-create)

    • [ ] @rwjblue ember-cli ํŒ€๊ณผ ๋…ผ์˜

  • [x] ํ† ๋ก : ์ŠคํŠธ๋ ˆ์น˜ ๋ชฉํ‘œ๋ฅผ ์ถ”์ ํ•ฉ๋‹ˆ๊นŒ?
  • [x] ํ† ๋ก : ๋ฒ”์œ„๊ฐ€ ํ•ด์ œ๋œ(๋ฐ ์ด์œ ) ํ•ญ๋ชฉ ์ถ”์  - ์˜ˆ
  • [x] ํ† ๋ก : ์›น์‚ฌ์ดํŠธ ์—…๋ฐ์ดํŠธ ํ”„๋กœ์ ํŠธ ์ถ”์ 
  • [x] ํ† ๋ก : ์–ด๋–ค ์Šค์ฝ”ํ”„ ํฌ๋ฆฝ ์•„์ดํ…œ์„ ๋ฐœ๊ฒฌํ–ˆ์Šต๋‹ˆ๊นŒ? Ember์˜ ๋‹ค์Œ ํŒ์—๋Š” ๋ฌด์—‡์ด ํฌํ•จ๋˜์–ด์•ผ ํ•ฉ๋‹ˆ๊นŒ?
  • [x] ํ•„์š”: ๋” ๋งŽ์€ ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ตฌ์„ฑ์›์ด Octane ์ž‘์—…์— ์ฐธ์—ฌํ•  ๊ฒƒ์„ ์š”์ฒญํ•ฉ๋‹ˆ๋‹ค.
  • [x] Inspector ์ž‘์—…์„ ์ถ”์ ํ•˜๋Š” ๋ฐฉ๋ฒ• ์•Œ์•„๋ณด๊ธฐ
  • [x] ๊ณ„ํš: ๋ฌธ์„œํ™” ๋ฌธ์ œ: ์‚ฌ๋žŒ๋“ค์ด ์ „ํ™˜ํ•˜๋Š” ๋™์•ˆ ๊ฐ€์ด๋“œ ๋ฐ API์—์„œ ์ด์ „ ํ•ญ๋ชฉ๊ณผ ์ƒˆ ํ•ญ๋ชฉ์„ ์ถ”์ ํ•˜๋Š” ๋ฐฉ๋ฒ•.

์•ฑ์„ Octane์œผ๋กœ ์—…๊ทธ๋ ˆ์ด๋“œ

ํ•„์ˆ˜์˜

์ข…์†์„ฑ

  • ember-source@3.??.0
  • ember-data@3.??.0

์˜ต์…˜ ๊ธฐ๋Šฅ

  • application-template-wrapper ~ false
  • jquery-integration ~ false
  • template-only-glimmer-components ~ true
.ember-cli

์˜ต์…˜/์ฆ๋ถ„

  • Ember ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ Glimmer ๊ตฌ์„ฑ ์š”์†Œ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜
  • EmberObject.extend() ์—์„œ ๋„ค์ดํ‹ฐ๋ธŒ ํด๋ž˜์Šค๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜
  • ๊ณ„์‚ฐ๋œ ์†์„ฑ์—์„œ ์ถ”์ ๋œ ์†์„ฑ์œผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜

์ตœ์ข… ์ฒดํฌ๋ฆฌ์ŠคํŠธ

  • [ ] Octane Blueprint๋ฅผ ember-cli์— ๊ธฐ๋ณธ๊ฐ’์œผ๋กœ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค(์˜๋„ํ•œ ๋Œ€๋กœ ์ž‘๋™ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ํ™•์ธ๋˜๋ฉด)
  • [ ] ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ ๊ฒŒ์‹œ ๋ฐ ํฌํ•จ: ๋ Œ๋” ์ˆ˜์ •์ž ์„ค๋ช…, codemods , ์—…๊ทธ๋ ˆ์ด๋“œ ๊ฐ€์ด๋“œ
  • [ ] ๊ฐ€์ด๋“œ ๋ฐ ํŠœํ† ๋ฆฌ์–ผ์—์„œ ์ฒญ์‚ฌ์ง„ ์ฐธ์กฐ ์ œ๊ฑฐ
  • [ ] ๊ฐ€์ด๋“œ๋ฅผ ๋งˆ์Šคํ„ฐ๋กœ ๋ณ‘ํ•ฉ
Meta Octane

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

@melsumner https://broccoli.build ๋ฐ https://github.com/broccolijs/broccolijs.github.io ์ƒˆ ๋ธŒ๋กœ์ฝœ๋ฆฌ ์‚ฌ์ดํŠธ ๋ฐ ๋ฌธ์„œ

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

@MelSumner https://github.com/embroider-build/embroider ์—์„œ๋„ ๋นŒ๋“œ ํŒŒ์ดํ”„๋ผ์ธ ๊ฐœ์„  ์‚ฌํ•ญ์„ ์ถ”์ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

@melsumner https://broccoli.build ๋ฐ https://github.com/broccolijs/broccolijs.github.io ์ƒˆ ๋ธŒ๋กœ์ฝœ๋ฆฌ ์‚ฌ์ดํŠธ ๋ฐ ๋ฌธ์„œ

์ถ”์ ๋œ ์†์„ฑ RFC๋ฅผ ํ™•์ธํ•˜๊ณ  ๋งํฌ๋ฅผ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์šฐ๋ฆฌ๋Š” ๊ธฐ๋ณธ ์•ฑ ์ฒญ์‚ฌ์ง„์— ๋ฌด์—‡์ด ํฌํ•จ๋˜๋Š”์ง€ ๊ฐ์‚ฌํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•ด ์ด์•ผ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ด€๋ จ ๋ฌธ์ œ ๋ณด๊ธฐ:

  1. https://github.com/ember-cli/ember-cli/issues/6294
  2. https://github.com/ember-cli/ember-cli/issues/7760

FWIW, @tomdale ์€ Octane Edition๊ณผ ์ƒ๋‹นํžˆ ์ง๊ตํ•˜๋Š” ๊ฒƒ์ฒ˜๋Ÿผ ๋ณด์ž…๋‹ˆ๋‹ค.

์˜ฅํƒ„๊ฐ€์™€ ์ „ํ˜€ ๊ด€๋ จ์ด ์—†์Šต๋‹ˆ๋‹ค

์ตœ๊ทผ์— ์ด ๋ฌธ์ œ๋ฅผ ์ œ๊ธฐํ•œ ์ด์œ ๋Š” ์—ฌ๋Ÿฌ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ชจ๋ธ์„ ์ง€์›ํ•˜๋Š” ๊ธฐ๋ณธ ์ฒญ์‚ฌ์ง„(์˜ˆ: ๋ฏธ๋ž˜์˜ ๊ธฐ๋ณธ ์˜ฅํƒ„๊ฐ€ ์ฒญ์‚ฌ์ง„)์— ์ˆœ์ˆ˜ํ•œ "ํด๋ž˜์‹" ์•ฑ์ด๋‚˜ ์ˆœ์ˆ˜ํ•œ "์˜ฅํƒ„" ์•ฑ์ด ์ „ํ˜€ ํ•„์š”๋กœ ํ•˜์ง€ ์•Š๋Š” ์ถ”๊ฐ€ ์ž๋ฃŒ๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์ด๊ฒƒ์ด ๋ฌธ์ œ๊ฐ€ ์•„๋‹˜์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค๋ฉด ์ด๊ฒƒ์ด ์˜ฅํƒ„๊ฐ€์™€ ๋งค์šฐ ๋ฐ€์ ‘ํ•œ ๊ด€๋ จ์ด ์—†๋‹ค๋Š” ๋ฐ ๋™์˜ํ•ฉ๋‹ˆ๋‹ค.

imo, ์˜ฅํ…Œ์ธ ์ฒญ์‚ฌ์ง„, https://github.com/ember-cli/ember-octane-blueprint ๋Š” _ideal_ ์™„์ „ํžˆ ์ƒˆ๋กญ๊ณ  ๋น›๋‚˜๋Š” ์•ฑ์ด์–ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด์ „ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ๋ชจ๋ธ์ด ์ฒญ์‚ฌ์ง„์— ํฌํ•จ๋˜์–ด์„œ๋Š” ์•ˆ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. :-

@MelSumner - ์ด ์ฒดํฌ๋ฆฌ์ŠคํŠธ์—์„œ MU ๊ด€๋ จ ํ•ญ๋ชฉ์„

์ด๋ฏธ MU ๋ ˆ์ด์•„์›ƒ ๋Œ€์‹  Octane ๋ ˆ์ด์•„์›ƒ์œผ๋กœ ๋ถˆ๋ ธ๊ณ ... ์ƒ๊ฐํ• ์ˆ˜๋ก ์ดํ•ด๊ฐ€ ๊ฐ‘๋‹ˆ๋‹ค!

@MelSumner - ์ด ์ฒดํฌ๋ฆฌ์ŠคํŠธ์—์„œ MU ๊ด€๋ จ ํ•ญ๋ชฉ์„

@rwjblue ์ฒซ ๋ฒˆ์งธ ์„น์…˜์—์„œ MU ํ€˜์ŠคํŠธ ๋ฌธ์ œ์™€ ์—ฐ๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. "์‹œ์ž‘ํ•œ ๊ฒƒ ๋๋‚ด๊ธฐ" - ์ถ”์ ํ•ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•˜๋Š” ๊ฒƒ์ด ๋” ์žˆ์Šต๋‹ˆ๊นŒ?

ember-cli-create ์ €๋Š” ์ด ๋ฌธ์ œ๋ฅผ ํ•จ๊ป˜ ๋„ฃ์—ˆ์Šต๋‹ˆ๋‹ค: ember-cli/ember-cli#8343. ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์ž์ˆ˜ ์‚ฌ์–‘์ด ์˜ฅํƒ„๊ฐ€(= _publication_ ํ˜•์‹)์˜ ์ผ๋ถ€๋กœ ๊ตฌํ˜„๋  ๊ฒƒ์ธ์ง€์— ๋”ฐ๋ผ, ๋‚ด๊ฐ€ ๋งํฌํ•œ ๋ฌธ์ œ๋Š” ์ฃผ๋กœ ์ถœํŒ ํ˜•์‹์„ ๋ณด์™„ํ•  ์ˆ˜ ์žˆ๋Š” _authoring_ ํ˜•์‹์— ๊ด€ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ฐœ์ธ์ ์œผ๋กœ ember-cli-create ๋ฅผ ์˜ฅํƒ„๊ฐ€์˜ ์ผ๋ถ€๋กœ ๋ณด์ง€ ์•Š๊ณ  ์ž‘์„ฑ ํ˜•์‹์ด _๊ฐ€๋Šฅ_ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๊ธฐ๋ณธ์ ์œผ๋กœ ember-cli-create ์˜ ๊ธฐ์ดˆ๋ฅผ ์„ค์ •ํ•จ).

๊ทธ๊ฒƒ์ด ์ข‹์€ ์ถ”๊ฐ€๊ฐ€ ๋˜๊ฑฐ๋‚˜ ๋” ๋‚˜์€ ์‚ฌํ›„ ์˜ฅํƒ„ ๋ฆด๋ฆฌ์Šค๋กœ ์—ฐ๊ธฐํ•˜๊ฑฐ๋‚˜ ๋‚ด๊ฐ€ ์–ด๋–ป๊ฒŒ ๋„์šธ ์ˆ˜ ์žˆ๋Š”์ง€ ์•Œ๋ ค์ฃผ์‹ญ์‹œ์˜ค.

octane ์ฒญ์‚ฌ์ง„ > ์• ๋“œ์˜จ์„ ember-cli org๋กœ ์ด๋™ ํ™•์ธ ๊ฐ€๋Šฅ :)

์—…๋ฐ์ดํŠธ, ๊ฐ€์ด๋“œ https://github.com/ember-learn/guides-source/issues/139 ์—์„œ ์•ต๊ธ€ ๋ธŒ๋ž˜ํ‚ท ๋ณ€ํ™˜์„ ์ถ”์ ํ•˜๊ธฐ ์œ„ํ•œ ํ€˜์ŠคํŠธ ๋ฌธ์ œ๊ฐ€

jQuery RFC ์ œ๊ฑฐ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค! โœ…
๋˜ํ•œ https://github.com/emberjs/ember.js/issues/17476์— ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ๋Š” ์ถ”์  ๋ฌธ์ œ๋„ ๋งŒ๋“ค์—ˆ์Šต๋‹ˆ๋‹ค.

์˜ฅํƒ„๊ฐ€ ์ฒญ์‚ฌ์ง„๊ณผ ๊ด€๋ จ๋œ ๊ธฐ๋Šฅ ํ”Œ๋ž˜๊ทธ ๋ฐ ์„ ํƒ์  ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์‚ฌ์šฉ์ž ์Šคํ† ๋ฆฌ

์›Œํฌ์ƒต ๊ฐ•์‚ฌ๋กœ์„œ ์ €๋Š” ํ•™์ƒ๋“ค์ด ember new ๋ฅผ ์‹คํ–‰ํ•˜๊ณ  ember new ์ฃผ์œ„์— ์žฌ๋ฃŒ๋ฅผ ๋นŒ๋“œํ•  ๋•Œ ์–ป์„ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์„ ๊ตฌ์ฒด์ ์œผ๋กœ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ์˜ฅํƒ„ ์ฒญ์‚ฌ์ง„์˜ ๋‹ค์–‘ํ•œ ์„ ํƒ์ /๊ธฐ๋Šฅ ํ”Œ๋ž˜๊ทธ์— ๋Œ€ํ•œ ๊ธฐ๋ณธ๊ฐ’์„ ์•Œ์•„์•ผ ํ•ฉ๋‹ˆ๋‹ค ember new ์ƒ๋‹นํ•œ ๊ธฐ๊ฐ„ ๋™์•ˆ ์œ ํšจํ•œ ember new ์ž…๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ ์ €๋Š” Ember 2.12๋ฅผ ์ง€์›ํ•˜๋Š” @ember/render-modifiers 1.0.0์„ ๋ฐฉ๊ธˆ ๊ฒŒ์‹œํ–ˆ์Šต๋‹ˆ๋‹ค( ember-modifier-manager-polyfill ์‚ฌ์šฉ ). ์•„์ง ํ•ด์•ผ ํ•  ์ผ์ด ์•ฝ๊ฐ„ ์žˆ์ง€๋งŒ(๋” ๋งŽ์€ ๋ฌธ์„œ๊ฐ€ ํ•„์š”ํ•จ) ์ข‹์€ ์‹œ์ž‘์ž…๋‹ˆ๋‹ค...

@MelSumner ์ €๋Š” Native JS Classes ์ฒญ์‚ฌ์ง„์„ ์ž‘์—…ํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Classic+Octane ์„ธ๊ณ„์—์„œ https://github.com/ember-cli/ember-new-output ์— ๋Œ€ํ•ด ์–ด๋–ค ์ผ์ด ์ผ์–ด๋‚˜์•ผ ํ•˜๋Š”์ง€ ์ƒ๊ฐํ•ด ๋ณธ ์‚ฌ๋žŒ์ด ์žˆ์Šต๋‹ˆ๊นŒ?

ํ•ด๋‹น ๋ฆฌํฌ์ง€ํ† ๋ฆฌ์˜ ์ถœ๋ ฅ์€ ember new ์˜ ์ถœ๋ ฅ๊ณผ ์ผ์น˜ํ•˜๋ฉฐ, ํ˜„์žฌ ๊ณ„ํš์— ๋”ฐ๋ฅด๋ฉด "์ค€๋น„๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด" ์˜ฅํƒ„ ์ฒญ์‚ฌ์ง„์œผ๋กœ ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.

"๋กœ๋“œ๋งต RFC์˜ ์‹ค์ œ ๊ตฌํ˜„" ์„น์…˜์—์„œ ๋ชจ๋“ˆ ํ†ตํ•ฉ์ด ๋ˆ„๋ฝ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

"๋กœ๋“œ๋งต RFC์˜ ์‹ค์ œ ๊ตฌํ˜„" ์„น์…˜์—์„œ ๋ชจ๋“ˆ ํ†ตํ•ฉ์ด ๋ˆ„๋ฝ๋œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

ํ…œํ”Œ๋ฆฟ ๊ฐ€์ ธ์˜ค๊ธฐ๊ฐ€ ์•„์ง ๋ฐฐ์†ก๋˜์ง€ ์•Š์€ ์ฃผ์š” ๋ถ€๋ถ„์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฏ€๋กœ ์ด ๋ฌธ์ œ์—์„œ ์ถ”์  ์ค‘์ธ ๋ถ€๋ถ„์ž…๋‹ˆ๋‹ค. ๋„์›€์ด ๋˜๋‚˜์š” ,

@MelSumner ์•Œ๊ฒ ์Šต๋‹ˆ๋‹ค, ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค!

์•ˆ๋…•ํ•˜์„ธ์š” ์—ฌ๋Ÿฌ๋ถ„, "Remove jQuery" RFC์˜ ๊ตฌํ˜„์€ ๋Œ€๋ถ€๋ถ„ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์ ์–ด๋„ ์ฒซ ๋ฒˆ์งธ Ember 3.x ๋‹จ๊ณ„์— ๊ด€ํ•œ ํ•œ, https://github.com/emberjs/ember.js/issues/17476 ์ฐธ์กฐ) . ๋ฌด์—‡ ์—ฌ์ „ํžˆ ์—ด๋ ค ๊ธฐ๋ณธ์ ์œผ๋กœ ์–ด๋–ค jQuery๋ฅผ๋กœ ์ „ํ™˜ํ•˜๋ ค๋ฉด ์ฒญ์‚ฌ์ง„์„ (๊ธฐ๋ณธ, ๋น„ ์˜ฅํƒ„)๋ฅผ ์ฐจ๋‹จํ•˜๋Š” ๊ฒƒ์€์ž…๋‹ˆ๋‹ค ๋‚ด์žฅ๊ณผ ํ•จ๊ป˜ ์ž‘์—…์— ํƒ€๋‹ค ๋‚จ์€ ๋ฐ์ดํ„ฐ์˜ ๋Šฅ๋ ฅ fetch ๋Œ€์‹  $.ajax (์—†์ด ember-data ํŒจ์น˜ ๋ฏน์Šค์ธ์„ ์ ์šฉํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ) WIP PR: https://github.com/emberjs/data/pull/5386์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๊ทธ๋ƒฅ ์•Œ๋ ค๋“œ๋ฆฌ์ž๋ฉด... ๋‹ค์Œ ํ•ต์‹ฌ ํŒ€ ํšŒ์˜์—์„œ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ๊ฒฐ์Šน์„ ์„ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”?

๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•˜๊ณ  ์‹ถ์€ ember-cli์™€ ๊ด€๋ จ๋œ ๋ช‡ ๊ฐ€์ง€ ์‚ฌํ•ญ:

  • ์• ๋“œ์˜จ์€ ์‚ฌ์šฉ์ž ์ •์˜ ์œ ํ˜•์„ ์„ค์น˜ํ•˜๊ธฐ ์œ„ํ•ด ๋ช‡ ๊ฐ€์ง€ ํ›„ํฌ๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด
moduleConfig.collections = Object.assign(moduleConfig.collections, {
  // ember-simple-auth
  authenticators: {
    types: ['authenticator'],
    defaultType: 'authenticator'
  }
});

(์œ„, @sly7-7 ์ œ๊ณต :D)
๊ทธ๋ฆฌ๊ณ 

moduleConfig.types = Object.assign(moduleConfig.types, {
  // ember-intl
  'ember-intl<strong i="12">@adapter</strong>': { definitiveCollection: 'main' },
  'ember-intl<strong i="13">@translation</strong>': { definitiveCollection: 'main' },
  translation: { definitiveCollection: 'main' },
  formats: { definitiveCollection: 'main' },
  cldr: { definitiveCollection: 'main' },
  'util:intl': { definitiveCollection: 'utils' },
  'intl:util': { definitiveCollection: 'utils' },

  // ember-gestures
  'ember-gesture': { definitiveCollection: 'main' },
});

ember-cli์™€ ๊ด€๋ จ๋œ ๋‹ค๋ฅธ ๊ฒƒ์€ ์—ฌ๋Ÿฌ ๋”๋ฏธ ์•ฑ์„ ์ง€์›ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ง€๊ธˆ๊นŒ์ง€ ์—ฌ๊ธฐ์— ๋ช‡ ๊ฐ€์ง€ ๋””์ž์ธ ์ œ์•ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋˜ํ•œ ์ด๊ฒƒ์„ ์ถ”์ ํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ํ™•์‹คํ•˜์ง€ ์•Š์ง€๋งŒ @miguelcobain ์˜ ember-paper ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜ฅํƒ„ ์„ค์ • ํ”„๋กœ์„ธ์Šค๋ฅผ ๋งค์šฐ ๊ฐ„๋‹จํ•˜๊ฒŒ ์กฐ์ •ํ•˜๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค(ํ˜„์žฌ ์˜ฅํƒ„ ์•ฑ์—์„œ ember-paper๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ๊ฐ„๋‹จํ•˜์ง€ ์•Š์Œ)

์Šคํƒ€์ผ์ด ํ˜ธ์ŠคํŠธ ์•ฑ์— ๋…ธ์ถœ๋˜๋Š” ๊ฒƒ๊ณผ ๋Œ€๋ถ€๋ถ„ ๊ด€๋ จ์ด ์žˆ๋Š” ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด ์Šคํƒ€์ผ ์• ๋“œ์˜จ์ด "๊ทธ๋ƒฅ ์ž‘๋™"ํ•˜๋„๋ก ํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ„๋‹จํ•œ ์ž‘์—…์ด ์žˆ๋Š” ๊ฒฝ์šฐ ๋˜๋Š” ๋ชจ๋“  ์Šคํƒ€์ผ ์• ๋“œ์˜จ์— octane / isModuleUnification ์กฐ๊ฑด์„ ์ถ”๊ฐ€ํ•˜๋„๋ก ๋งŒ๋“ค๋ ค๋Š” ๊ฒฝ์šฐ idk?

@NullVoxPopuli

  • ํ›„ํฌ๊ฐ€ ์—†๋Š” ๊ฒฝ์šฐ ๋ฒ„๊ทธ๋กœ ์‹ ๊ณ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค(๊ฐ€๋Šฅํ•œ ํ•œ ์ž์„ธํžˆ ์„ค๋ช…). (์˜ฅํƒ„๊ฐ€ ๋ ˆ์ด๋ธ”์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค)
  • ์—ฌ๊ธฐ์—์„œ ํŠน์ • ์• ๋“œ์˜จ์„ ์ถ”์ ํ•  ์ƒ๊ฐ์€ ์—†์ง€๋งŒ(์ด ๋ฌธ์ œ๋Š” ๋กœ๋“œ๋งต RFC์— ๋‚˜์—ด๋œ ํ•ญ๋ชฉ์„ ์ถ”์ ํ•˜๋Š” ๋ฐ ์ง‘์ค‘ํ•˜๋ ค๊ณ  ํ•จ) "์• ๋“œ์˜จ ์—…๊ทธ๋ ˆ์ด๋“œ" ๊ฐ€์ด๋“œ๋ฅผ ๊ณต์œ ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•Œ์•„๋‚ผ ์ˆ˜ ์žˆ์„๊นŒ์š”? @miguelcobain ์ด emberjs.com ๋ธ”๋กœ๊ทธ์—

์•ˆ๋…•ํ•˜์„ธ์š”, "Remove jQuery" RFC์˜ ๊ตฌํ˜„์€ ๋Œ€๋ถ€๋ถ„ ์™„๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์ ์–ด๋„ ์ฒซ ๋ฒˆ์งธ Ember 3.x ๋‹จ๊ณ„์— ๊ด€ํ•œ ํ•œ, #17476 ์ฐธ์กฐ). ๋ฌด์—‡ ์—ฌ์ „ํžˆ ์—ด๋ ค ๊ธฐ๋ณธ์ ์œผ๋กœ ์–ด๋–ค jQuery๋ฅผ๋กœ ์ „ํ™˜ํ•˜๋ ค๋ฉด ์ฒญ์‚ฌ์ง„์„ (๊ธฐ๋ณธ, ๋น„ ์˜ฅํƒ„)๋ฅผ ์ฐจ๋‹จํ•˜๋Š” ๊ฒƒ์€์ž…๋‹ˆ๋‹ค ๋‚ด์žฅ๊ณผ ํ•จ๊ป˜ ์ž‘์—…์— ํƒ€๋‹ค ๋‚จ์€ ๋ฐ์ดํ„ฐ์˜ ๋Šฅ๋ ฅ fetch ๋Œ€์‹  $.ajax (์—†์ด ember-data ํŒจ์น˜ ๋ฏน์Šค์ธ์„ ์ ์šฉํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ) WIP PR: emberjs/data#5386 ์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๊ทธ๋ƒฅ ์•Œ๋ ค๋“œ๋ฆฌ์ž๋ฉด... ๋‹ค์Œ ํ•ต์‹ฌ ํŒ€ ํšŒ์˜์—์„œ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ด์•ผ ๊ฒฐ์Šน์„ ์„ ํ†ต๊ณผํ•  ์ˆ˜ ์žˆ์„๊นŒ์š”?

@dgeb / @igorT ์ด ์ฐจ๋‹จ๊ธฐ๋ฅผ ๋„์™€์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ?

@MelSumner ์˜ˆ, ED ํšŒ์˜์—์„œ ์ด ๋ฌธ์ œ๋ฅผ ์ œ๊ธฐํ–ˆ์Šต๋‹ˆ๋‹ค. ํ›„์† https://github.com/emberjs/data/pull/5386

@MelSumner

Update blueprints for each object type to use native JS classes ์ด #17621์— ๋ณ‘ํ•ฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธฐ์— ์ฒญ์‚ฌ์ง„์€ ์˜ฅํƒ„๊ฐ€ ์ฒญ์‚ฌ์ง„์„ ์‚ฌ์šฉํ•  ๋•Œ๋งŒ ๋„ค์ดํ‹ฐ๋ธŒ ํด๋ž˜์Šค๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

@tomdale , @MelSumner , @rwjblue

ํ…œํ”Œ๋ฆฟ ๊ฐ€์ ธ์˜ค๊ธฐ(์ž‘์—… ์ดˆ์•ˆ)

https://github.com/crashco/ember-template-component-import/issues/10

์ฐธ๊ณ ๋กœ Component Templates Co-locations RFC๋Š” ์•„์ง ์ด ์ถ”์  ๋ฌธ์ œ๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค. :)

https://github.com/emberjs/rfcs/pull/481

@ Panman8201 ๋งž์Šต๋‹ˆ๋‹ค- Octane์˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚ฉ๋‹ˆ๋‹ค. :)

๋‚˜๋Š” ์ด๊ฒƒ์ด ember octane 3.15+ ๋ฆด๋ฆฌ์Šค๋กœ ์—…๋ฐ์ดํŠธ๋˜์–ด์•ผ ํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. :)

Octane์„ ์ถœ์‹œํ–ˆ์œผ๋ฏ€๋กœ ์ด ๋ฌธ์ œ๋ฅผ ์ข…๋ฃŒํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค.

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