ํŒŒ์ด์–ดํญ์Šค 78 ๋ฆด๋ฆฌ์Šค

์›น ๋ธŒ๋ผ์šฐ์ € ์ถœ์‹œ ํŒŒ์ด์–ด ํญ์Šค 78, ๋ชจ๋ฐ”์ผ ๋ฒ„์ „๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํŒŒ์ด์–ด ํญ์Šค 68.10 ์•ˆ๋“œ๋กœ์ด๋“œ ํ”Œ๋žซํผ์šฉ. Firefox 78 ๋ฆด๋ฆฌ์Šค๋Š” ESR(ํ™•์žฅ ์ง€์› ์„œ๋น„์Šค)๋กœ ๋ถ„๋ฅ˜๋˜๋ฉฐ ์—ฐ์ค‘ โ€‹โ€‹๋‚ด๋‚ด ์—…๋ฐ์ดํŠธ๊ฐ€ ๋ฆด๋ฆฌ์Šค๋ฉ๋‹ˆ๋‹ค. ๊ฒŒ๋‹ค๊ฐ€ ๊ธฐ์กด ์—…๋ฐ์ดํŠธ๋„ ๋‚˜๋ญ‡ ๊ฐ€์ง€ ์žฅ๊ธฐ ์ง€์› 68.10.0 (ํ–ฅํ›„ 68.11 ๋ฐ 68.12์˜ ๋‘ ๊ฐ€์ง€ ์—…๋ฐ์ดํŠธ๊ฐ€ ๋” ์ถ”๊ฐ€๋  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.) ๊ณง ๋ฌด๋Œ€์— ์˜ค๋ฅผ ์˜ˆ์ • ๋ฒ ํƒ€ ํ…Œ์ŠคํŠธ Firefox 79 ๋ถ„๊ธฐ๊ฐ€ ์ „ํ™˜๋  ์˜ˆ์ •์ด๋ฉฐ, ์ถœ์‹œ๋Š” 28์›” XNUMX์ผ๋กœ ์˜ˆ์ •๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์ฃผ์š” ํ˜์‹ :

  • ์ด๋™ ์ถ”์ , ์ž๊ฒฉ ์ฆ๋ช… ์†์ƒ ํ™•์ธ ๋ฐ ๋น„๋ฐ€๋ฒˆํ˜ธ ๊ด€๋ฆฌ์— ๋Œ€ํ•œ ๋ณดํ˜ธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์˜ ํšจ์œจ์„ฑ์— ๋Œ€ํ•œ ๋ณด๊ณ ์„œ๋กœ ์š”์•ฝ ํŽ˜์ด์ง€(๋ณดํ˜ธ ๋Œ€์‹œ๋ณด๋“œ)๊ฐ€ ํ™•์žฅ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ƒˆ ๋ฆด๋ฆฌ์Šค๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์†์ƒ๋œ ์ž๊ฒฉ ์ฆ๋ช… ์‚ฌ์šฉ์— ๋Œ€ํ•œ ํ†ต๊ณ„๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์„ ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์ €์žฅ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ์™€ ์•Œ๋ ค์ง„ ์‚ฌ์šฉ์ž ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์œ ์ถœ์˜ ๊ต์ฐจ์ ์„ ์ถ”์ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฒ€์ฆ์€ Haveibeenpwned.com ํ”„๋กœ์ ํŠธ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€์˜ ํ†ตํ•ฉ์„ ํ†ตํ•ด ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” 9.7๊ฐœ ์‚ฌ์ดํŠธ ํ•ดํ‚น์œผ๋กœ ์ธํ•ด ๋„๋‚œ๋‹นํ•œ 456์–ต ๊ฐœ์˜ ๊ณ„์ •์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์š”์•ฝ์€ "about:protections" ํŽ˜์ด์ง€์— ์ œ๊ณต๋˜๊ฑฐ๋‚˜ ์ฃผ์†Œ ํ‘œ์‹œ์ค„์˜ ๋ฐฉํŒจ ์•„์ด์ฝ˜์„ ํด๋ฆญํ•˜์—ฌ ํ˜ธ์ถœ๋˜๋Š” ๋ฉ”๋‰ด๋ฅผ ํ†ตํ•ด ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค(์ด์ œ ๋ณด๊ณ ์„œ ํ‘œ์‹œ ๋Œ€์‹  ๋ณดํ˜ธ ๋Œ€์‹œ๋ณด๋“œ๊ฐ€ โ€‹โ€‹ํ‘œ์‹œ๋จ).
    ํŒŒ์ด์–ดํญ์Šค 78 ๋ฆด๋ฆฌ์Šค

  • ์ œ๊ฑฐ ํ”„๋กœ๊ทธ๋žจ์— ๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.Firefox ์ƒˆ๋กœ ๊ณ ์นจ"๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ถ•์ ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ์žƒ์ง€ ์•Š๊ณ  ์„ค์ •์„ ์žฌ์„ค์ •ํ•˜๊ณ  ๋ชจ๋“  ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด ์‚ฌ์šฉ์ž๋Š” ๋ธŒ๋ผ์šฐ์ €๋ฅผ ๋‹ค์‹œ ์„ค์น˜ํ•˜์—ฌ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋ ค๊ณ  ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์ƒˆ๋กœ ๊ณ ์นจ ๋ฒ„ํŠผ์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ถ๋งˆํฌ, ๊ฒ€์ƒ‰ ๊ธฐ๋ก, ์ €์žฅ๋œ ๋น„๋ฐ€๋ฒˆํ˜ธ, ์ฟ ํ‚ค, ์—ฐ๊ฒฐ๋œ ์‚ฌ์ „ ๋ฐ ์ž๋™ ์ฑ„์šฐ๊ธฐ ์–‘์‹ ๋ฐ์ดํ„ฐ๋ฅผ ์žƒ์ง€ ์•Š๊ณ  ์œ ์‚ฌํ•œ ํšจ๊ณผ๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(๋ฒ„ํŠผ์„ ํด๋ฆญํ•˜๋ฉด ์ƒˆ ํ”„๋กœํ•„์ด ์ƒ์„ฑ๋˜๊ณ  ์ง€์ •๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ์ „์†ก๋ฉ๋‹ˆ๋‹ค). ๊ทธ๊ฒƒ์—). ์ƒˆ๋กœ ๊ณ ์นจ์„ ํด๋ฆญํ•˜๋ฉด ์ถ”๊ฐ€ ๊ธฐ๋Šฅ, ํ…Œ๋งˆ, ์•ก์„ธ์Šค ๊ถŒํ•œ ์ •๋ณด, ์—ฐ๊ฒฐ๋œ ๊ฒ€์ƒ‰ ์—”์ง„, ๋กœ์ปฌ DOM ์ €์žฅ์†Œ, ์ธ์ฆ์„œ, ๋ณ€๊ฒฝ๋œ ์„ค์ •, ์‚ฌ์šฉ์ž ์Šคํƒ€์ผ(userChrome, userContent)์ด ์†์‹ค๋ฉ๋‹ˆ๋‹ค.
    ํŒŒ์ด์–ดํญ์Šค 78 ๋ฆด๋ฆฌ์Šค

  • ์—ฌ๋Ÿฌ ํƒญ์„ ํ•ด์ œํ•˜๊ณ , ํ˜„์žฌ ํƒญ ์˜ค๋ฅธ์ชฝ์— ์žˆ๋Š” ํƒญ์„ ๋‹ซ๊ณ , ํ˜„์žฌ ํƒญ์„ ์ œ์™ธํ•œ ๋ชจ๋“  ํƒญ์„ ๋‹ซ์„ ์ˆ˜ ์žˆ๋Š” ํƒญ์— ๋Œ€ํ•ด ํ‘œ์‹œ๋˜๋Š” ์ƒํ™ฉ์— ๋งž๋Š” ๋ฉ”๋‰ด์— ํ•ญ๋ชฉ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.

    ํŒŒ์ด์–ดํญ์Šค 78 ๋ฆด๋ฆฌ์Šค

  • WebRTC ๊ธฐ๋ฐ˜์˜ ํ™”์ƒ ํ†ตํ™” ๋ฐ ํšŒ์˜ ์ค‘์— ํ™”๋ฉด ๋ณดํ˜ธ๊ธฐ๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ชจ๋“  ํ™”๋ฉด ํ•ด์ƒ๋„์˜ Intel GPU์šฉ Windows ํ”Œ๋žซํผ ํฌํ•จ ๋œ ํ•ฉ์„ฑ ์‹œ์Šคํ…œ Web ๋ Œ๋”, Rust๋กœ ์ž‘์„ฑ๋˜์–ด ๋ Œ๋”๋ง ์†๋„๋ฅผ ํฌ๊ฒŒ ๋†’์ด๊ณ  CPU ๋ถ€ํ•˜๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. WebRender๋Š” GPU์—์„œ ์‹คํ–‰๋˜๋Š” ์…ฐ์ด๋”๋ฅผ ํ†ตํ•ด ๊ตฌํ˜„๋˜๋Š” ํŽ˜์ด์ง€ ์ฝ˜ํ…์ธ  ๋ Œ๋”๋ง ์ž‘์—…์„ GPU ์ธก์œผ๋กœ ์•„์›ƒ์†Œ์‹ฑํ•ฉ๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ์ž‘์€ ํ™”๋ฉด ํ•ด์ƒ๋„๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ Intel GPU์šฉ Windows 10 ํ”Œ๋žซํผ๊ณผ AMD Raven Ridge, AMD Evergreen APU๊ฐ€ ํƒ‘์žฌ๋œ ์‹œ์Šคํ…œ, NVIDIA ๊ทธ๋ž˜ํ”ฝ ์นด๋“œ๊ฐ€ ํƒ‘์žฌ๋œ ๋…ธํŠธ๋ถ์—์„œ WebRender๊ฐ€ ํ™œ์„ฑํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค. Linux์—์„œ WebRender๋Š” ํ˜„์žฌ ์•ผ๊ฐ„ ๋นŒ๋“œ์—์„œ๋งŒ Intel ๋ฐ AMD ์นด๋“œ์— ๋Œ€ํ•ด ํ™œ์„ฑํ™”๋˜๋ฉฐ NVIDIA ์นด๋“œ์—์„œ๋Š” ์ง€์›๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. about:config๋ฅผ ๊ฐ•์ œ๋กœ ์ ์šฉํ•˜๋ ค๋ฉด "gfx.webrender.all" ๋ฐ "gfx.webrender.enabled" ์„ค์ •์„ ํ™œ์„ฑํ™”ํ•˜๊ฑฐ๋‚˜ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ MOZ_WEBRENDER=1์ด ์„ค์ •๋œ Firefox๋ฅผ ์‹คํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
  • ์ƒˆ ํƒญ ํŽ˜์ด์ง€์—์„œ Pocket ์„œ๋น„์Šค ์ถ”์ฒœ ์ฝ˜ํ…์ธ  ํ‘œ์‹œ๊ฐ€ ํ™œ์„ฑํ™”๋œ ์˜๊ตญ ์‚ฌ์šฉ์ž์˜ ๋น„์œจ์ด 100%๋กœ ๋Š˜์–ด๋‚ฌ์Šต๋‹ˆ๋‹ค. ์ด์ „์—๋Š” ์ด๋Ÿฌํ•œ ํŽ˜์ด์ง€๊ฐ€ ๋ฏธ๊ตญ, ์บ๋‚˜๋‹ค, ๋…์ผ์˜ ์‚ฌ์šฉ์ž์—๊ฒŒ๋งŒ ํ‘œ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์Šคํฐ์„œ๊ฐ€ ์ง€๋ถˆํ•œ ๋ธ”๋ก์€ ๋ฏธ๊ตญ์—์„œ๋งŒ ํ‘œ์‹œ๋˜๋ฉฐ ๊ด‘๊ณ ๋กœ ๋ช…ํ™•ํ•˜๊ฒŒ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ฝ˜ํ…์ธ  ์„ ํƒ๊ณผ ๊ด€๋ จ๋œ ๊ฐœ์ธํ™”๋Š” ์‚ฌ์šฉ์ž ์ •๋ณด๋ฅผ ์ œXNUMX์ž์—๊ฒŒ ์ „์†กํ•˜์ง€ ์•Š๊ณ  ํด๋ผ์ด์–ธํŠธ ์ธก์—์„œ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค(์˜ค๋Š˜์˜ ์ถ”์ฒœ ๋งํฌ ์ „์ฒด ๋ชฉ๋ก์ด ๋ธŒ๋ผ์šฐ์ €์— ๋กœ๋“œ๋˜๋ฉฐ, ๋ธŒ๋ผ์šฐ์ €๋Š” ๊ฒ€์ƒ‰ ๊ธฐ๋ก ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ์‚ฌ์šฉ์ž ์ธก์—์„œ ์ˆœ์œ„๊ฐ€ โ€‹โ€‹๋งค๊ฒจ์ง‘๋‹ˆ๋‹ค). ). Pocket์—์„œ ๊ถŒ์žฅํ•˜๋Š” ์ฝ˜ํ…์ธ ๋ฅผ ๋น„ํ™œ์„ฑํ™”ํ•˜๋ ค๋ฉด ๊ตฌ์„ฑ์ž์— ์„ค์ •(Firefox Home Content/Recommended by Pocket)์ด ์žˆ๊ณ  about:config์— "browser.newtabpage.activity-stream.feeds.topsites" ์˜ต์…˜์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํฌํ•จ๋จ VA-API๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋น„๋””์˜ค ๋””์ฝ”๋”ฉ์˜ ํ•˜๋“œ์›จ์–ด ๊ฐ€์† ์„ฑ๋Šฅ ๋ฐ ์•ˆ์ •์„ฑ์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ํŒจ์น˜(Wayland ๊ธฐ๋ฐ˜ ํ™˜๊ฒฝ์—์„œ๋งŒ ์ง€์›)
  • Linux ์‹œ์Šคํ…œ ๊ตฌ์„ฑ ์š”์†Œ์— ๋Œ€ํ•œ ์š”๊ตฌ ์‚ฌํ•ญ์ด ์ฆ๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ Linux์—์„œ Firefox๋ฅผ ์‹คํ–‰ํ•˜๋ ค๋ฉด ์ตœ์†Œํ•œ Glibc 2.17, libstdc++ 4.8.1 ๋ฐ GTK+ 3.14๊ฐ€ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.
  • ๋ ˆ๊ฑฐ์‹œ ์•”ํ˜ธํ™” ์•Œ๊ณ ๋ฆฌ์ฆ˜์— ๋Œ€ํ•œ ์ง€์› ์ข…๋ฃŒ ๊ณ„ํš์— ๋”ฐ๋ผ DHE(TLS_DHE_*, Diffie-Hellman ํ‚ค ๊ตํ™˜ ํ”„๋กœํ† ์ฝœ) ๊ธฐ๋ฐ˜์˜ ๋ชจ๋“  TLS ์•”ํ˜ธํ™” ์ œํ’ˆ๊ตฐ์€ ๊ธฐ๋ณธ์ ์œผ๋กœ ๋น„ํ™œ์„ฑํ™”๋ฉ๋‹ˆ๋‹ค. DHE ๋น„ํ™œ์„ฑํ™”๋กœ ์ธํ•œ ์ž ์žฌ์ ์ธ ๋ถ€์ •์ ์ธ ์˜ํ–ฅ์„ ์ค„์ด๊ธฐ ์œ„ํ•ด ๋‘ ๊ฐœ์˜ ์ƒˆ๋กœ์šด SHA2 ๊ธฐ๋ฐ˜ AES-GCM ์•”ํ˜ธํ™” ์ œํ’ˆ๊ตฐ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ์žฅ์• ๊ฐ€ ์žˆ๋Š” TLS 1.0 ๋ฐ TLS 1.1 ํ”„๋กœํ† ์ฝœ์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋ณด์•ˆ ํ†ต์‹  ์ฑ„๋„์„ ํ†ตํ•ด ์‚ฌ์ดํŠธ์— ์•ก์„ธ์Šคํ•˜๋ ค๋ฉด ์„œ๋ฒ„๊ฐ€ ์ตœ์†Œํ•œ TLS 1.2๋ฅผ ์ง€์›ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. Google์— ๋”ฐ๋ฅด๋ฉด ํ˜„์žฌ ์›นํŽ˜์ด์ง€ ๋‹ค์šด๋กœ๋“œ์˜ ์•ฝ 0.5%๊ฐ€ ๊ณ„์†ํ•ด์„œ ์˜ค๋ž˜๋œ ๋ฒ„์ „์˜ TLS๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ˆ˜ํ–‰๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์— ๋”ฐ๋ผ ํ์‡„๊ฐ€ ์ง„ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ถ”์ฒœ IETF(์ธํ„ฐ๋„ท ์—”์ง€๋‹ˆ์–ด๋ง ํƒœ์Šคํฌ ํฌ์Šค). TLS 1.0/1.1 ์ง€์›์„ ๊ฑฐ๋ถ€ํ•˜๋Š” ์ด์œ ๋Š” ์ตœ์‹  ์•”ํ˜ธ(์˜ˆ: ECDHE ๋ฐ AEAD)์— ๋Œ€ํ•œ ์ง€์›์ด ๋ถ€์กฑํ•˜๊ณ  ์˜ค๋ž˜๋œ ์•”ํ˜ธ๋ฅผ ์ง€์›ํ•ด์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ํ˜„์žฌ ์ปดํ“จํŒ… ๊ธฐ์ˆ  ๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ ์‹ ๋ขฐ์„ฑ์ด ์˜์‹ฌ๋ฉ๋‹ˆ๋‹ค( ์˜ˆ๋ฅผ ๋“ค์–ด TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA์— ๋Œ€ํ•œ ์ง€์›์ด ํ•„์š”ํ•˜๋ฉฐ MD5๋Š” ๋ฌด๊ฒฐ์„ฑ ๊ฒ€์‚ฌ ๋ฐ ์ธ์ฆ์— ์‚ฌ์šฉ๋˜๋ฉฐ SHA-1). security.tls.version.enable-deprecated = true๋ฅผ ์„ค์ •ํ•˜๊ฑฐ๋‚˜ ์ด์ „ ํ”„๋กœํ† ์ฝœ์„ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์ดํŠธ๋ฅผ ๋ฐฉ๋ฌธํ•  ๋•Œ ํ‘œ์‹œ๋˜๋Š” ์˜ค๋ฅ˜ ํŽ˜์ด์ง€์˜ ๋ฒ„ํŠผ์„ ์‚ฌ์šฉํ•˜์—ฌ ์˜ค๋ž˜๋œ TLS ๋ฒ„์ „์œผ๋กœ ์ž‘์—…ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ๋ณต์›ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์‹œ๊ฐ ์žฅ์• ๊ฐ€ ์žˆ๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ํ™”๋ฉด ํŒ๋…๊ธฐ๋ฅผ ์‚ฌ์šฉํ•œ ์ž‘์—… ํ’ˆ์งˆ์ด ํฌ๊ฒŒ ํ–ฅ์ƒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์ปค์„œ ์œ„์น˜ ๋ฌธ์ œ ํ•ด๊ฒฐ, ์ •์ง€ ํ˜„์ƒ ์ œ๊ฑฐ, ๋งค์šฐ ํฐ ํ…Œ์ด๋ธ” ์ฒ˜๋ฆฌ ๊ฐ€์†ํ™” ๋“ฑ). ํŽธ๋‘ํ†ต, ๊ฐ„์งˆ์ด ์žˆ๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•ด ํƒญ ๊ฐ•์กฐ, ๊ฒ€์ƒ‰์ฐฝ ํ™•์žฅ ๋“ฑ์˜ ์• ๋‹ˆ๋ฉ”์ด์…˜ ํšจ๊ณผ๊ฐ€ ๊ฐ์†Œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • ๊ธฐ์—…์˜ ๊ฒฝ์šฐ ์™ธ๋ถ€ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ์ฒ˜๋ฆฌ๊ธฐ ๊ตฌ์„ฑ, PIP(Picture-in-Picture) ๋ชจ๋“œ ๋น„ํ™œ์„ฑํ™” ๋ฐ ๋งˆ์Šคํ„ฐ ๋น„๋ฐ€๋ฒˆํ˜ธ ์ง€์ • ์š”๊ตฌ์— ๋Œ€ํ•œ ๊ทธ๋ฃน ์ •์ฑ…์— ์ƒˆ๋กœ์šด ๊ทœ์น™์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • SpiderMonkey JavaScript ์—”์ง„์—์„œ ์—…๋ฐ์ดํŠธ Chromium ํ”„๋กœ์ ํŠธ ๊ธฐ๋ฐ˜ ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‚ฌ์šฉ๋˜๋Š” V8 JavaScript ์—”์ง„์˜ ๊ตฌํ˜„๊ณผ ๋™๊ธฐํ™”๋˜๋Š” ์ •๊ทœ์‹ ์ฒ˜๋ฆฌ ํ•˜์œ„ ์‹œ์Šคํ…œ์ž…๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋ณ€๊ฒฝ์„ ํ†ตํ•ด ์ •๊ทœ ํ‘œํ˜„์‹๊ณผ ๊ด€๋ จ๋œ ๋‹ค์Œ ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ์ง€์›์„ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
    • ๋ช…๋ช…๋œ ๊ทธ๋ฃน ์ •๊ทœ์‹๊ณผ ์ผ์น˜ํ•˜๋Š” ๋ฌธ์ž์—ด ๋ถ€๋ถ„์„ ์ผ์น˜ ํ•ญ๋ชฉ์˜ ์ผ๋ จ ๋ฒˆํ˜ธ ๋Œ€์‹  ํŠน์ • ์ด๋ฆ„๊ณผ ์—ฐ๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: "/(\d{4})-(\d{2})-(\d{ ๋Œ€์‹ ). 2})/โ€๋ฅผ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. โ€œ/( ? \d{4})-(? \d{2})-(? \d{2})/" ๋ฐ result[1]์ด ์•„๋‹Œ result.groups.year)๋ฅผ ํ†ตํ•ด ์—ฐ๋„์— ์•ก์„ธ์Šคํ•ฉ๋‹ˆ๋‹ค.
    • ์ด์Šค์ผ€์ดํ”„ ํด๋ž˜์Šค ์œ ๋‹ˆ์ฝ”๋“œ ๋ฌธ์ž๋Š” \p{...} ๋ฐ \P{...} ๊ตฌ์„ฑ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด \p{Number}๋Š” ์ˆซ์ž(XNUMX๊ณผ ๊ฐ™์€ ๋ฌธ์ž ํฌํ•จ)๋ฅผ ์„ค๋ช…ํ•˜๋Š” ๋ชจ๋“  ๊ฐ€๋Šฅํ•œ ๋ฌธ์ž๋ฅผ ์ •์˜ํ•˜๊ณ , \p{Alphabetic} - ๋ฌธ์ž(ํฌํ•จ)๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค. hieroglyphs ), \p{Math} โ€” ์ˆ˜ํ•™ ๊ธฐํ˜ธ ๋“ฑ
    • ๊นƒ๋ฐœ ๋„ํŠธ ์˜ฌ "." ๋งˆ์Šคํฌ๊ฐ€ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค. ์ค„ ๋ฐ”๊ฟˆ ๋ฌธ์ž๋ฅผ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.
    • ์ œ๋„ ๋’ค๋Œ์•„๋ณด๊ธฐ ์ •๊ทœ์‹์—์„œ ํ•œ ํŒจํ„ด์ด ๋‹ค๋ฅธ ํŒจํ„ด๋ณด๋‹ค ์•ž์— ์žˆ๋Š”์ง€ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: ๋‹ฌ๋Ÿฌ ๊ธฐํ˜ธ๋ฅผ ์บก์ฒ˜ํ•˜์ง€ ์•Š๊ณ  ๋‹ฌ๋Ÿฌ ๊ธˆ์•ก ์ผ์น˜).
  • CSS ์˜์‚ฌ ํด๋ž˜์Šค ๊ตฌํ˜„ :์ด๋‹ค() ะธ :์–ด๋””() CSS ๊ทœ์น™์„ ์„ ํƒ๊ธฐ ์„ธํŠธ์— ๋ฐ”์ธ๋”ฉํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋Œ€์‹ 

    ํ—ค๋” p:hover, ๋ฉ”์ธ p:hover, ๋ฐ”๋‹ฅ๊ธ€ p:hover {...}

    ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค

    :is(๋จธ๋ฆฌ๊ธ€, ๊ธฐ๋ณธ, ๋ฐ”๋‹ฅ๊ธ€) p:hover {...}

  • CSS ์˜์‚ฌ ํด๋ž˜์Šค ํฌํ•จ :์ฝ๊ธฐ ์ „์šฉ ะธ :์ฝ๊ธฐ-์“ฐ๊ธฐ ๊ธˆ์ง€๋˜๊ฑฐ๋‚˜ ํŽธ์ง‘์ด ํ—ˆ์šฉ๋˜๋Š” ์–‘์‹ ์š”์†Œ(์ž…๋ ฅ ๋˜๋Š” ํ…์ŠคํŠธ ์˜์—ญ)์— ๋ฐ”์ธ๋”ฉํ•ฉ๋‹ˆ๋‹ค.
  • ์ถ”๊ฐ€๋œ ๋ฉ”์†Œ๋“œ ์ง€์› ๊ตญ์ œ๋ชฉ๋กํ˜•์‹() ํ˜„์ง€ํ™”๋œ ๋ชฉ๋ก์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค(์˜ˆ: "or"๋ฅผ "or"๋กœ, "and"๋ฅผ "and"๋กœ ๊ต์ฒด).

    const lf = new Intl.ListFormat('en');
    lf.format(['ํ”„๋žญํฌ', 'ํฌ๋ฆฌ์Šคํ‹ด', 'ํ”Œ๋กœ๋ผ']);
    // โ†’ 'ํ”„๋žญํฌ, ํฌ๋ฆฌ์Šคํ‹ด, ํ”Œ๋กœ๋ผ'
    // ๋กœ์ผ€์ผ "ru"์˜ ๊ฒฝ์šฐ 'Frank, Christine and Flora'๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

  • ๋ฐฉ๋ฒ• ๊ตญ์ œ ๋ฒˆํ˜ธ ํ˜•์‹ ์ธก์ • ๋‹จ์œ„, ํ†ตํ™”, ๊ณผํ•™ ๋ฐ ์•ฝ์‹ ํ‘œ๊ธฐ๋ฒ•์— ๋Œ€ํ•œ ์ง€์›์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค(์˜ˆ: "Intl.NumberFormat('en', {style: 'unit', ๋‹จ์œ„: 'meter-per-second'}").
  • ์ถ”๊ฐ€๋œ ๋ฐฉ๋ฒ• ParentNode.replaceChildren(), ๊ธฐ์กด ํ•˜์œ„ ๋…ธ๋“œ๋ฅผ ๋ฐ”๊พธ๊ฑฐ๋‚˜ ์ง€์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ESR ๋ธŒ๋žœ์น˜์—๋Š” ์„œ๋น„์Šค ์›Œ์ปค ๋ฐ ํ‘ธ์‹œ API์— ๋Œ€ํ•œ ์ง€์›์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค(์ด์ „ ESR ๋ฆด๋ฆฌ์Šค์—์„œ๋Š” ๋น„ํ™œ์„ฑํ™”๋˜์—ˆ์Šต๋‹ˆ๋‹ค).
  • WebAssembly๋Š” JavaScript BigInt ์œ ํ˜•์„ ์‚ฌ์šฉํ•˜์—ฌ 64๋น„ํŠธ ์ •์ˆ˜ ํ•จ์ˆ˜ ๋งค๊ฐœ๋ณ€์ˆ˜ ๊ฐ€์ ธ์˜ค๊ธฐ ๋ฐ ๋‚ด๋ณด๋‚ด๊ธฐ ์ง€์›์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. WebAssembly์— ๋Œ€ํ•œ ํ™•์žฅ๋„ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋‹ค์ค‘ ๊ฐ’, ํ—ˆ์šฉ ํ•จ์ˆ˜๋Š” ๋‘˜ ์ด์ƒ์˜ ๊ฐ’์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
  • ์›น ๊ฐœ๋ฐœ์ž์šฉ ์ฝ˜์†”์—์„œ ํ™•๋ณด ์ด๋ฆ„, ์Šคํƒ, ์†์„ฑ์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ํฌํ•จํ•˜์—ฌ Promise ๊ด€๋ จ ์˜ค๋ฅ˜๋ฅผ ์ž์„ธํžˆ ๊ธฐ๋กํ•˜๋ฏ€๋กœ Angular์™€ ๊ฐ™์€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ์˜ค๋ฅ˜ ๋ฌธ์ œ๋ฅผ ํ›จ์”ฌ ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

    ํŒŒ์ด์–ดํญ์Šค 78 ๋ฆด๋ฆฌ์Šค

  • ์›น ๊ฐœ๋ฐœ์ž ๋„๊ตฌ๋Š” CSS ์†์„ฑ์„ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์ดํŠธ๋ฅผ ๊ฒ€์‚ฌํ•  ๋•Œ DOM ํƒ์ƒ‰ ์„ฑ๋Šฅ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œ์ผฐ์Šต๋‹ˆ๋‹ค.
  • JavaScript ๋””๋ฒ„๊ฑฐ์—๋Š” ์ด์ œ ๋‹ค์Œ์„ ์‚ฌ์šฉํ•  ๋•Œ ์†Œ์Šค ๋งต์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๋‹จ์ถ•๋œ ๋ณ€์ˆ˜ ์ด๋ฆ„์„ ํ™•์žฅํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋กœ๊น… ํฌ์ธํŠธ (๋กœ๊ทธ ํฌ์ธํŠธ), ํƒœ๊ทธ๊ฐ€ ์‹คํ–‰๋˜๋Š” ์ˆœ๊ฐ„ ์ฝ”๋“œ์˜ ์ค„ ๋ฒˆํ˜ธ์™€ ๋ณ€์ˆ˜ ๊ฐ’์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์›น ์ฝ˜์†”์— ๋คํ”„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋„คํŠธ์›Œํฌ ๊ฒ€์‚ฌ ์ธํ„ฐํŽ˜์ด์Šค์—๋Š” ์š”์ฒญ ์ฐจ๋‹จ์„ ์ดˆ๋ž˜ํ•œ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ, ์ถ”์  ๋ฐฉ์ง€ ๋ฉ”์ปค๋‹ˆ์ฆ˜ ๋ฐ CORS(Cross-Origin Resource Sharing) ์ œํ•œ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ •๋ณด๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    ํŒŒ์ด์–ดํญ์Šค 78 ๋ฆด๋ฆฌ์Šค

Firefox 78์˜ ํ˜์‹  ๋ฐ ๋ฒ„๊ทธ ์ˆ˜์ • ์™ธ์—๋„
์ œ๊ฑฐ ์ผ๋ จ์˜ ์ทจ์•ฝ์ , ๊ทธ ์ค‘ ๋ช‡๋ช‡์€ ์ค‘์š”(Critical)๋กœ ํ‘œ์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํŠน๋ณ„ํžˆ ์„ค๊ณ„๋œ ํŽ˜์ด์ง€๋ฅผ ์—ด ๋•Œ ๊ณต๊ฒฉ์ž์˜ ์ฝ”๋“œ๊ฐ€ ์‹คํ–‰๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๊ฒฐ๋œ ๋ณด์•ˆ ๋ฌธ์ œ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ •๋ณด๋Š” ํ˜„์žฌ ์ œ๊ณต๋˜์ง€ ์•Š์ง€๋งŒ ๋ช‡ ์‹œ๊ฐ„ ๋‚ด์— ์ทจ์•ฝ์  ๋ชฉ๋ก์ด ๊ฒŒ์‹œ๋  ๊ฒƒ์œผ๋กœ ์˜ˆ์ƒ๋ฉ๋‹ˆ๋‹ค.

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€