Fork me on GitHub

2016-04-04 JS: Node.js 5.10.0, npm security fix, Safari Technology Preview

Translator: U-Yeong Ju Edit on GitHub See Revisions

JSer.info #273 - Node v5.10.0 (Stable)이 릴리즈됐습니다.

다음 절에서 소개하는 npm의 보안 관련 문제를 수정한 버전도 포함돼 있습니다.

2016-03-17 JS에서도 소개했었지만, Node.js v6에서는 Buffer API가 변경될 예정입니다.

이 API의 변경과 --zero-fill-buffers 명령줄 옵션이, Node.js 5.10.0에 백포드됐습니다.

또, NW.js나 Electron의 환경에서 주로 사용되겠지만 --no-browser-globals 플래그로
아래와 같은 글로벌에서 접근할 수 있는 브라우저 호환 API를 노출시키지 않은 옵션도 추가됐습니다.

setTimeout, clearTimeout, setInterval, clearInterval, setImmediate, clearImmediate
console

The npm Blog — fixing a bearer token vulnerability에서는 npm < 2.15.1 또는 npm < 3.8.3에 있었던 보안 취약점에 관해 소개하고 있스빈다.

npm의 CLI로 실행한 리퀘스트에서, registry 이외에도 token 정보를 송신하던 문제입니다. 기존의 토큰은 토큰 설정 페이지에서 취소할 수 있습니다.

npm 2.x와 3.x 각각 업데이트가 이뤄졌습니다.
이미 설치돼 있는 Node.js 경우는 Node.js 자체를 업데이트 하거나 npm i -g npm으로 npm을 업데이트할 필요가 있습니다.

Windows의 경우엔 npm-windows-upgrade를 사용하여 npm i -g npm와 동일하게 업데이트할 수 있습니다.

npm은 Azer의 Kik 문제를 겪고난 후, 여러가지 변경이나 개선을 진행하고 있습니다. 따라서 관련 사항을 모두 살펴보는게 좋을 것 같습니다.

간단히 정리하면


Safari Technology Preview가 공개돼 있습니다.
2주간 마다 갱신되는 개발자 용 버전으로, Firefox Developer Edition이나 Chrome Dev Channel과 같은 느낌입니다.

Safari Technology Preview에서 문제를 발견하면, Bugzilla나 Bug Reporter를 사용해 알려줄 수 있습니다.


헤드라인


Node v5.10.0 (Stable) | Node.js

nodejs.org/en/blog/release/v5.10.0/

node.js ReleaseNote

Node.js 5.10.0이 릴리즈됐습니다.
npm의 보안을 업데이트한 버전이 포함돼 있습니다.
또, Buffer(size)의 allocation 문제에 대응한 Buffer.alloc/Buffer.allocUnsafe/Buffer.from--zero-fill-buffers 커맨드 라인 옵션이 추가됐습니다.


Introducing Safari Technology Preview | WebKit

webkit.org/blog/6017/introducing-safari-technology-preview/

safari browser debug

Safari의 개발자 프리뷰 버전이 공개됐습니다.


Pixi.JS v4 Arrives - Goodboy™ — Goodboy™

www.goodboydigital.com/pixi-js-v4/

game WebGL ReleaseNote JavaScript

PixiJS v4 RC가 릴리즈됐습니다.
WebGL의 코어 구현 부분을 pixi-gl-core으로 분리했고, 임의의 시점에서 RenderTexture를 GC 시킬 수 있도록 변경됐습니다.


아티클


The npm Blog — fixing a bearer token vulnerability

blog.npmjs.org/post/142036323955/fixing-a-bearer-token-vulnerability

npm security ReleaseNote

npm에 MITM 가능한 취약점이 있어 2.x와 3.x 각각 보안 업데이트가 진행됐습니다.
npm i -g npm또는 npm-windows-upgrade을 사용하는 것으로 npm의 버전을 업데이트할 수 있습니다.


Webpack 2 Tree Shaking Configuration — Modus Create: Front End Development — Medium

medium.com/modus-create-front-end-development/webpack-2-tree-shaking-configuration-9f1de90f3233

webpack

webpack 1에서 2로의 마이그레이션 방법에 관해 작성돼 있습니다.


React vs Angular2: The fight rages on – Evojam Technology Blog

tech.evojam.com/2016/03/31/react-vs-angular2-the-fight-rages-on/

React AngularJS

React와 AngularJS 2를 비교한 글입니다.


Houdini: Maybe The Most Exciting Development In CSS You've Never Heard Of – Smashing Magazine

www.smashingmagazine.com/2016/03/houdini-maybe-the-most-exciting-development-in-css-youve-never-heard-of/

CSS

W3C task force의 Houdini는 무엇이며, 어떤 문제를 해결하는 것이 목적인지 설명돼 있습니다.


The JavaScript Event Loop: Explained

blog.carbonfive.com/2013/10/27/the-javascript-event-loop-explained/

JavaScript

다이어그램과 함께 JavaScript의 이벤트 루프에 관해 설명합니다.
DOM Event나 WebWorker에 관해서 이해할 수 있습니다.


슬라이드, 영상


What's New in TypeScript? | Build 2016 | Channel 9

channel9.msdn.com/Events/Build/2016/B881

TypeScript 영상

금년에 릴리즈될 TypeScript 관해 소개합니다.
또, non-nullable type이나 npm과 d.ts 관해서도 이야기합니다.


Let's Learn ES6 - YouTube

www.youtube.com/playlist?list=PL57atfCFqj2h5fpdZD-doGEIs0NZxeJTX

ECMAScript JavaScript 영상

ES6를 학습할 있는 스크린캐스트가 연재되고 있습니다.


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


buzinas/tslint-eslint-rules: Improve your TSLint with the missing ESLint rules

github.com/buzinas/tslint-eslint-rules

TypeScript JavaScript Tools

TSLint 용으로 작성된 ESLint 규칙 셋입니다.


aadsm/jschardet: Character encoding auto-detection in JavaScript (port of python's chardet)

github.com/aadsm/jschardet

JavaScript 문자코드

JavaScript에서 문자코드를 판단(detection)할 수 있는 라이브러리입니다.


rbuckton/prex: Async coordination primitives and extensions on top of ES6 Promises

github.com/rbuckton/prex

JavaScript Promises library

Promise를 확장하는 보조 라이브러리입니다.
Cancellation, Semaphore, Scheduling API를 제공합니다.


LiquidLabsGmbH/retractor: Expose react internals for E2E testing

github.com/LiquidLabsGmbH/retractor

webdriver React

selenium-webderiver에 React Element를 전달할 수 있도록 findElement를 확장한 라이브러리입니다.


bfred-it/object-fit-images: Adds support to object-fit to images on IE9, IE10, IE11, Edge and other old browsers.

github.com/bfred-it/object-fit-images

JavaScript CSS library

object-fit 속성을 IE에서도 동작할 수 있도록하는 JavaScript 라이브러리입니다.


thejameskyle/the-super-tiny-compiler: Possibly the smallest compiler ever

github.com/thejameskyle/the-super-tiny-compiler

JavaScript tutorial

JavaScript로 작성한 작은 사이즈의 Compiler/Transpiler 구현체 입니다.
주석이 잘 작성돼 있어 컴파일러를 만드는 방법에 관해 배울 수 있습니다.


gajus/create-index: Creates ES6 ./index.js file in target directories that imports and exports all sibling files and directories.

github.com/gajus/create-index

node.js library Tools

디렉터리를 지정하면, 해당 디렉터리에 있는 모듈을 읽어 import하는 index.js를 자동으로 생성하는 도구입니다.


Babel Starter Kit ∙ A project template for authoring and publishing JavaScript libraries

www.kriasoft.com/babel-starter-kit/

babel JavaScript tutorial

Babel을 사용한 Starter Kit입니다.


도서


ECSS: Home Page

ecss.io/

CSS book

ECSS(Enduring CSS)에 관한 서적입니다.
CSS의 설계와 설계 관점 등을 다룹니다.


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