Fork me on GitHub

2019-04-30: Node.js 12.0.0(Node.js 6.x는 EOL), Electron 5.0.0, Pixi.js 5.0.0(WebGL by default)

Translator: U-Yeong Ju Edit on GitHub See Revisions

JSer.info #433 - Node.js의 새로운 메이저 버전인 12.0.0이 릴리스됐습니다.

V8 7.4로 갱신, TLS 1.3 지원, http parser를 llhttp로 변경, os.type() 추가 등 여러 변경 사항이 있습니다.
또, Node.js 11.x에 추가된 시험적 기능인 Worker Threads、, iagnostic Reports, Heap Dumps, ES Modules를 지원하며 fs.promises를 Stable로 전환했습니다.

시험적(experimental) 기능에 관해서는 다음 글을 참고하시길 바랍니다.

12.0.0에서 발견된 new Date().toLocaleString()의 문제를 수정하고 일본의 연호(令和)를 지원하는 Node v12.1.0도 이어서 릴리스됐습니다.

Node.js 12.x가 LTS(Long Term Support)가 되는 시점은 2019-10-22으로 예정돼 있습니다.
또, Node.js 6.x는 2019-04-30에 EOL(End-of-life)가 됐으며 현시점 LTS는 Node.js 8.x과 10.x 입니다.


Electron 5.0.0이 릴리스됐습니다.

Chromium 73, Node 12.0.0으로 갱신됐습니다.
Cookies API를 비롯 여러 API가 Promise를 대응하며 BrowserWindow에서 여러 BrowserView를 지원하고 iframe에 대응해 node integration을 설정 할 수 있도록 변경됐습니다.
또 비호환적 변경 사항으로 패키지 애플리케이션은 기본적으로 애플리케이션 메뉴가 작성되며 window-all-closed의 핸들링을 행하도록 수정됐습니다.
보안적인 이유로 nodeIntegrationwebViewTag는 기본 false로 설정되도록 변경됐습니다.


2D 그래픽 라이브러리인 PixiJS 5.0.0이 릴리스됐습니다.

지금까지는 Canvas를 사용한 CanvasRender가 기본이었지만 5.0.0에서는 WebGL이 기본 렌더링으로 변경됐습니다.
이에 맞춰 CanvasRenderpixi.js에서 제거됐으며 、CanvasRender 사용할 경우엔 pixi.js-legacy 패키지를 사용하도록 변경됐습니다.

또, 지금까지 global에 PIXI 객체를 자동으로 생성했지만 5.0.0부터는 자동으로 생성되지 않습니다.
이 밖에 Render의 시그니처 변경, PIXI.Mesh 추가, Graphics Holes 대응 개선이 이뤄졌습니다.

마이그레이션 가이드도 공개됐으니 함께 살펴보면 좋을 것 같습니다.


헤드라인


Release v3.0.0 · facebook/create-react-app

github.com/facebook/create-react-app/releases/tag/v3.0.0

React Tools ReleaseNote

create-react-app v3.0.0이 릴리스됐습니다.
Jest 24로 갱신됐고 React Hooks를 사용하며 ESLint로 TypeScript를 Lint 하도록 변경됐습니다. 또, tsconfig.jsonbaseUrl을 지원합니다.


Release electron v5.0.0 · electron/electron

github.com/electron/electron/releases/tag/v5.0.0

Electron ReleaseNote

Electron v5.0.0이 릴리스됐습니다.
Chromium 73, Node 12.0.0으로 갱신됐습니다.
ELECTRON_DISABLE_SANDBOX로 sandbox 기능을 끌 수 있습니다.
Cookies API를 비롯 여러 API가 Promise를 대응하며 BrowserWindow에서 여러 BrowserView를 지원하고 iframe에 대응해 node integration을 설정 할 수 있도록 변경됐습니다.


New in Chrome 74  |  Web  |  Google Developers

developers.google.com/web/updates/2019/04/nic74

Chrome ReleaseNote

Chrome 74의 변경 사항이 정리돼 있습니다.
private class fields, prefers-reduced-motion, feature policy api 등을 지원합니다.


Node v12.0.0 (Current) | Node.js

nodejs.org/en/blog/release/v12.0.0/

node.js ReleaseNote

Node.js 12.0.0이 릴리스됐습니다.
V8 7.4로 갱신, TLS 1.3 지원, http parser를 llhttp로 변경, os.type() 추가 등 여러 변경 사항이 있습니다.
또, Node.js 11.x에 추가된 시험적 기능인 Worker Threads、, iagnostic Reports, Heap Dumps, ES Modules를 지원합니다.


Release v1.15.0 · GoogleChrome/puppeteer

github.com/GoogleChrome/puppeteer/releases/tag/v1.15.0

Chrome node.js library ReleaseNote

Puppeteer 1.15.0이 릴리스됐습니다.
Chromium 75.0.3765.0으로 갱신됐으며 puppeteer.devicespuppeteer.errors 추가됐고 Request Interception 문제가 수정됐습니다.


documentation/CHANGELOG.md at master · documentationjs/documentation

github.com/documentationjs/documentation/blob/master/CHANGELOG.md#1010-2019-04-25

document JavaScript TypeScript ReleaseNote

코드를 토대 문서를 생성하는 도구 documentationjs 10.1.0이 릴리스됐습니다.
TypeScript를 지원합니다.


아티클


Color accessibility: tools and resources to help you design inclusive products, by Stéphanie Walter - UX designer & Mobile Expert.

stephaniewalter.design/blog/color-accessibility-tools-resources-to-design-inclusive-products/

color accessibility article

접근성과 색상, 콘트라스트 관련 도구와 리소스가 정리돼 있는 글입니다.


Comparing JVM alternatives to JavaScript

renato.athaydes.com/posts/comparing-jvm-alternatives-to-js.html

JavaScript Java article

Java에서 JavaScript로 변환하는 도구 비교 글입니다.
성능, 파일 크기, 코드 행 수 등으로 비교하고 있습니다.


AddyOsmani.com - Native image lazy-loading for the web!

addyosmani.com/blog/lazy-loading/

Chrome WebPlatformAPI HTML article

이미지 혹은 iframe을 지연 로드하는 loading 속성에 대한 글입니다.
속성 값 lazy, eager, auto을 각각 설명하고 Feature Detection과 Fallback하는 방법에 대해서도 작성돼 있습니다.


사이트, 서비스, 문서


faast.js · Serverless batch computing made simple

faastjs.org/

serverless library JavaScript TypeScript

serverless를 사용해 배치를 처리하는 프레임워크입니다.
배치의 각 처리를 함수로 로컬, AWS lambda、Google Cloud Functions에서 실행할 수 있으며 배포나 클린업 관련 워크플로우를 관리할 수 있습니다.


PixiJS v5 lands – Goodboy Digital – Medium

medium.com/goodboy-digital/pixijs-v5-lands-5e112d84e510

JavaScript WebGL canvas library game

PixiJS 5.0.0이 릴리스됐습니다.
WebGL이 기본 렌더러로 변경됐으며 Cnavas 버전은 pixi.js-legacy를 이용해 사용합니다.
global에 PIXI 객체 두지않고 import 할 수 있도록 변경됐습니다.
Renderer 시그니쳐가 변경됐고 PIXI.Mesh가 추가됐으며 Graphics Holes 대응이 개선됐습니다.


소프트웨어, 도구, 라이브러리


TypeScript AST Viewer

ts-ast-viewer.com/

TypeScript AST Tools

TypeScript 코드의 AST 뷰어 도구입니다.
코드를 생성하는 AST 실행 코드도 함께 출력됩니다.


infinitered/gluegun: A delightful toolkit for building Node-powered CLIs.

github.com/infinitered/gluegun

node.js console library

Node.js 명령줄 개발을 위한 프레임워크입니다.
명령어 템플릿, 명령줄 인수 전달과 핸들링, Util 처리 등을 제공합니다.


gkozlenko/node-video-lib: Node.js Video Library / MP4 & FLV parser / HLS muxer

github.com/gkozlenko/node-video-lib

node.js JavaScript video HLS library

의존 라이브러리 없는 MP4와 FLV 파서 및 HLS muxer 라이브러리입니다.


도서


O'Reilly Japan - Node.js 디자인패턴 제2판(일본어)

www.oreilly.co.jp/books/9784873118734/

node.js JavaScript book

2019년 5월 18일 출간 예정인 Node.js 디자인 패턴을 주제로 한 도서입니다.


Programming TypeScript - O'Reilly Media

shop.oreilly.com/product/0636920158059.do

TypeScript book

TypeScript을 주제로 한 입문 서적입니다.


Pull Request to this article
JSer.info Slackに参加する