Fork me on GitHub

2017-04-10 JS: React 15.5.0, ESLint 4.0.0α, Glimmer

Translator: U-Yeong Ju Edit on GitHub See Revisions

JSer.info #326 - React 15.5.0이 릴리즈됐습니다.

마이너한 릴리즈지만 몇몇 기능을 사용할 때 비권장 경고가 출력되도록 변경됐습니다. 이는 향후 16.0 버전에서 변경되는 인터페이스를 고려한 부분입니다.

리액트 라이브러리에 포함돼 있던 React.PropTypesReact.createClass는 각각 prop-typescreate-react-class 패키지로 분리됐습니다.
이 변경에 관한 마이그레이션 스크립트는 react-codemod를 통해 공개돼 있습니다.

또, 새로 추가된 API나 변경된 인터페이스를 이용해 쉽게 대체할 수 있는 React Addons 패키지 몇개는 공식적으로 지원이 종료되게 됩니다.


ESLint v4.0.0의 알파(α) 버전이 릴리즈됐습니다.

npm install eslint@next --save-dev

위 명령어를 이용해 알파 버전을 설치할 수 있습니다.
빌트인 eslint:recommend 규칙이 변경됐고 indent 규칙이 더 엄격하게 검사되도록 변경됐습니다. 또, .eslintrc 파일을 잘못 작성(맞춤법 오류, 지원하지 않는 속성 기재 등)하는 경우 ESLint에서 오류가 발생하게 되는 등 여러가지 기능이 변경됐습니다.

자세한 변경 사항(에정)은 아래 마이그레이션 가이드에 자세히 작성돼 있으니 참고하시길 바랍니다.


Ember의 View 레이어를 담당하고 있는 렌더링(템플릿) 엔진인 Glimmer의 사이트가 공개됐습니다.

이미 Ember 2.10에 Glimmer2가 포함돼 있었습니다만 이번에 Glimmer를 별도의 컴포넌트 라이브러리로써 사용할 수 있도록 공개 됐습니다.

Glimmer에 관해서는 아래 문서에 자세히 소개돼 있으니 함께 읽어보시길 바랍니다.


헤드라인


Video.js 6.0 Release! | Video.js Blog

blog.videojs.com/Video-js-6-0-Release/

JavaScript video ReleaseNote

Video.js 6.0이 릴리즈됐습니다.
Flash가 코어에서 제거됐으며 middleware와 관련된 변경이 이뤄졌습니다. 또, DOM 관련 메서드를 videojs.dom으로 이전할 것으로 보입니다.


release: [email protected] by zkat · Pull Request #16244 · npm/npm

github.com/npm/npm/pull/16244

npm issue ReleaseNote

차후 릴리즈 예정인 npm 5.5.5 베타(β)에 관해 자세히 알 수 있는 PR 입니다.

npm install를 이용해 상대 경로로 패키지를 설치할 때 symlink를 만들도록(file:이 아닌 link:로) 변경되며 캐시 시스템의 개선됩니다. 또, --prefer-offline--ofline 추가됩니다.
앞으로 git:// 프로토콜 에서도 semver를 지정할 수 있도록 제공되며 npm install의 결과가 개요(summary) 형식으로 출력되도록 변경됩니다.


Release 0.19.0 · avajs/ava

github.com/avajs/ava/releases/tag/v0.19.0

JavaScript testing ReleaseNote

AVA 0.19.0이 릴리즈됐습니다.
assertion이 하나라도 실행되지 않는 테스트는 기본적으로 실패되도록 변경됐으며 t.throws()의 비동기 테스트와 관련된 부분이 개선됐습니다. 또, 비동기 테스트 시 진행되지 않고 멈춰있는(hanging) 것을 감지할 수 있도록 개선됐습니다.


Release v2.0.0-rc.0 · lerna/lerna

github.com/lerna/lerna/releases/tag/v2.0.0-rc.0

JavaScript Tools ReleaseNote

monorepo 관리 도구인 lerna 2.0.0 RC 버전이 릴리즈됐습니다.
--conventional-commits로 conventional-commits 기반의 CHANGELOG를 만들 수 있게 됐습니다.


ESLint v4.0.0-alpha.0 released - ESLint - Pluggable JavaScript linter

eslint.org/blog/2017/04/eslint-v4.0.0-alpha.0-released

JavaScript ESLint ReleaseNote

ESLint 4.0.0 알파(α) 버전이 릴리즈됐습니다.
eslint:recommend 규칙이 변경됐고 indent 규칙이 더 엄격하게 검사되도록 변경됐습니다. 또, AST nodes에서 코멘트 속성이 삭제되고 대신 코멘트를 얻을 수 있는 공개 API가 공개됐습니다.


Release v1.6.0 · karma-runner/karma

github.com/karma-runner/karma/releases/tag/v1.6.0

JavaScript browser testing ReleaseNote

Karma v1.6.0이 릴리즈됐습니다.
browser_info 이벤트가 추가 됐고 proxyResproxyReq 이벤트를 hook 할 수 있도록 변경됐습니다.


React v15.5.0 - React Blog

facebook.github.io/react/blog/2017/04/07/react-v15.5.0.html

React ReleaseNote

React 15.5.0이 릴리즈됐습니다.
라이브러리에 포함돼 있던 React.PropTypesReact.createClass가 비권장되고 각각 별도의 패키지로 분리됐습니다.
react-codemod를 사용하여 마이그레이션할 수 있습니다.


Release Notes for Safari Technology Preview 27 | WebKit

webkit.org/blog/7497/release-notes-for-safari-technology-preview-27/

safari ReleaseNote JavaScript

Safari Technology Preview Release 27이 릴리즈됐습니다.
Object spread/rest property와 window.opennoopener가 구현됐으며 Web Inspector가 개선됐습니다. 또, Web Cryptography API에서 SPKI/PKCS8를 대응하는 등 다양한 변경 사항이 있습니다.


Ember.js - EmberConf 2017: State of the Union

emberjs.com/blog/2017/04/05/emberconf-2017-state-of-the-union.html

JavaScript 역사 library

Ember.js의 역사와 현재에 관해 작성돼 있습니다.
독립적으로 사용할 수 있게 된 컴포넌트 레이어 도구 Glimmer에 관해서 소개돼 있습니다.


Glimmer

glimmerjs.com/

JavaScript DOM library WebComponents

Ember로 부터 분리돼 독자 컴포넌트로써 사용할 수 있게된 뷰 레이어 라이브러리 Glimmer의 공식 사이트입니다.


Release 8.0.0 · developit/preact

github.com/developit/preact/releases/tag/8.0.0

React JavaScript ReleaseNote

Preact 8.0.0(8.1.0)이 릴리즈됐습니다.
Pure Functional Components를 재작성하고 linkState를 별도의 패키지로 분리했습니다. 또, 객체를 직렬화해 className으로 표현하는 방식을 폐기하고 classnames 패키지 사용을 권고하는 등 다양한 변경 사항이 있습니다.


Release Version 3.0.0 · sweet-js/sweet.js

github.com/sweet-js/sweet.js/releases/tag/v3.0.0

JavaScript Tools ReleaseNote

Hygienic Macros를 지원하는 sweet.js 3.0.0이 릴리즈됐습니다.


아티클


How we built Twitter Lite | Twitter Blogs

blog.twitter.com/2017/how-we-built-twitter-lite

twitter mobile React

Twitter Lite의 기술 스택에 관해 소개돼 있습니다.
React, Redux, Normalizr, Globalize, Babel, Webpack, Jest, WebdriverIO 등을 사용하고 있다고 합니다.
성능을 위해 PRPL 패턴을 사용하고 requestAnimationFrame이나 requireIdleCallback을 사용해 렌더링 성능을 조절한 부분도 소개돼 있습니다.


Introducing ReactXP - ReactXP Blog

microsoft.github.io/reactxp/blog/2017/04/06/introducing-reactxp.html

React ReleaseNote windows ios Android

React/React Native 기반의 크로스 플랫폼 UI 프레임워크를 소개합니다.
공통된 컴포넌트를 여러 플랫폼에서 사용할 수 있도록 하는게 목적으로 MS의 Skype 팀이 만들고 있습니다.


GraphQL & React tutorial (part 1/6) – Chroma

blog.hichroma.com/graphql-react-tutorial-part-1-6-d0691af25858

GraphQL React tutorial

GraphQL에 관한 연재글입니다.
컴포넌트 주도 개발과 스키마 퍼스트 접근법이 소개돼 있습니다.


How to Create a Reddit Client Using Angular 4.0 - Progur!

progur.com/2017/03/how-to-create-reddit-client-with-angular-4.html

AngularJS tutorial

Angular v4으로 Reddit의 API로 데이터를 가져와 목록을 출력하는 과정을 예제로 한 튜토리얼 글입니다.


MathJax CDN shutting down on April 30, 2017

www.mathjax.org/cdn-shutting-down/

JavaScript library news

곧 MathJax CDN이 종료되기 때문에 사용 중인 파일을 로컬에 복사하거나 cloudflare를 이용할 필요가 있다는 공지 글입니다.


슬라이드, 영상


The Quest For Immer Mutable State Management

immer-mutable-state.surge.sh/

JavaScript slide

MobX에서의 Snapshot + mutable state tree에 관해 소개하는 슬라이드입니다.
풀/푸쉬 기반(Pull/Push-based) computed property 소개, Mutable State에서 Action을 리플레이 하기 위해 어떠한 방법을 사용해야 하는지 이야기합니다.


ng-conf 2017 - YouTube

www.youtube.com/watch?v=Nj9_p4qvm5U

AngularJS 이벤트 video

ng-conf 2017 행사의 발표 영상이 공개됐습니다.


Publish JavaScript packages on npm - Course by @trevordmiller @eggheadio

egghead.io/courses/publish-javascript-packages-on-npm

npm video tutorial

npm 패키지나 script에 관해 설명하는 스크린 캐스트 입니다.


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


Stylelint generator

maximgatilin.github.io/stylelint-config/

CSS 설정 Tools

Stylelint의 설정 파일을 하나하나 선택해서 만들 수 있는 제너레이터 사이트 입니다.


mobxjs/serializr: Serialize and deserialize complex object graphs to JSON

github.com/mobxjs/serializr

JavaScript library

클래스의 객체를 직렬화 또는 역직렬화할 수 있는 라이브러리입니다.


도서


ukyo/wasm-usui-book: webassembly에 관한 얇은 책

github.com/ukyo/wasm-usui-book

WebAssembly ebook

wasm에 관해 작성돼 있는 전자 서적입니다.
wasm의 개요, WABT를 사용한 개발, 파이너리 포멧이나 텍스트 포멧 등에 관해 적성돼 있습니다.


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