Fork me on GitHub

2021-02-09: npm 7 정식 릴리스, Vuex v4.0.0, Puppeteer v6.0.0

Translator: U-Yeong Ju Edit on GitHub See Revisions

JSer.info #526 - npm 7이 정식 릴리스됐다.
npm install --global npm으로 npm 7을 설치할 수 있다.
Node.js 15부터 npm 7이 포함된다.

npm 7에서 package-lock.json 포멧이 변경된다.
이와 함께 yarn.lock 파일 지원이 추가됐다.
그 외 비호환 변경 사항으로 peerDependencies 자동 설치, npx 명령어 변경, npm audit 출력 형식 변경이 포함됐다.

기능 추가로는 acceptDependencies 지원, workspaces를 지원한다.
명령어 관련해서는 npm exec, npm set-script, npm diff 등이 추가됐다.

또, 정식 릴리스에 맞춰 Dependabot이 npm 7을 지원한다.

renovatebot은 아래 Issue를 참고하길 바란다.


Vuex 4.0.0이 릴리스됐다.

Vue 3 지원, 설치 프로세스 변경, this.$store의 전역 타입 정의 제거.
또, Vue 3의 배포 형식에 맞춰 esm, cjs, global 같은 복수 형식의 빌드를 제공한다.

Vuex 4.0.0에 Composition API에 대응하는 useStore API가 추가됐다.
3.x에서 4.x으로 마이그레이션은 아래 문서를 참고한다.


헤드라인


npm 7 is now Generally Available - GitHub Changelog

github.blog/changelog/2021-02-02-npm-7-is-now-generally-available/

npm ReleaseNote

npm 7이 latest로서 릴리스돼 npm install --global npm으로 npm 7을 설치할 수 있게 됐다.


Release v6.0.0 · puppeteer/puppeteer

github.com/puppeteer/puppeteer/releases/tag/v6.0.0

Chrome library ReleaseNote

Puppeteer v6.0.0 릴리스.
aria/* selector가 비표시 등 스킵된 요소에는 매치되지 않도록 변경, TypeScript 타입 정의 파일이 패키지에 포함되도록.
또, Chromium 갱신, page.emulateNetworkConditions 추가, Apple M1 지원 등.


Node v15.8.0 (Current) | Node.js

nodejs.org/en/blog/release/v15.8.0/

node.js ReleaseNote

Node.js 15.8.0 릴리스.
crypto 모듈에 generatePrimecheckPrime 메서드 추가, npm 7.5.0으로 갱신.
dgram.createSocketreadline.question에서 AbortSignal 지원.


Release v4.0.0 · vuejs/vuex

github.com/vuejs/vuex/releases/tag/v4.0.0

Vue library ReleaseNote

Vuex 4.0이 릴리스 됐다.
Vue 3 지원, 설치 프로세스 변경, Vue 3에 맞춘 bundle 파일 형식 배포.


Node.js 14.x runtime now available in AWS Lambda | AWS Compute Blog

aws.amazon.com/jp/blogs/compute/node-js-14-x-runtime-now-available-in-aws-lambda/

node.js aws Lambda news

AWS Lambda에서 Node.js 14를 지원한다.


Typicode's blog - Husky 5

blog.typicode.com/husky-5/

JavaScript library Tools git ReleaseNote

Git Hooks를 다루는 husky 5 정식 릴리스.
의존 라이브러리 없도록 변경, 라이센스가 MIT에서 License Zero's Parity License로 변경됐다.
4.x에서의 마이그레이션 도구도 함께 공개됐다.


아티클


Node By Numbers 2020 - NodeSource

nodesource.com/blog/node-by-numbers-2020

node.js article

Linux 환경 용 Node.js에 대한 숫자로 되돌아보는 2020년. Nodesource의 글이다.
rpm과 deb 다운로드 수, 지역, 버전별 다운로드 수 등.
보안 릴리스가 있는 경우에 다운로드 스파이크가 발생한 일에 대해.


SMS OTP 자동 입력 의한 리스크와 대책 - Akaki I/O(일본어)

akaki.io/2021/sms_otp_autofill

security HTML article iOS Android

iOS와 Android에서의 SMS OTP 자동 입력(autocomplete="one-time-code") 동작 검증.
피싱 등 공격에 활용될 수 있는 경우와 Domain-bound codes의 자동 입력 검증 방식 및 사양 등 소개.


순수 WebGL과 TypeScript로 Vercel 로고 만들기(일본어)

zenn.dev/ixkaito/articles/webgl-typescript-vercel-logo

WebGL JavaScript article tutorial TypeScript

WebGL를 사용해 도형을 그리는 과정을 step by step으로 설명하는 튜토리얼.


useEncapsulation | Kyle Shevlin

kyleshevlin.com/use-encapsulation

React article

React Component에서 다루는 State를 Custom Hooks로 만드는 패턴을 소개.
Custom Hooks에 정리하는 것으로 State 및 조작을 캡슐화할 수 있고 의존 관계를 파악하기 쉬워진다고 설명.


Introducing Private Click Measurement, PCM | WebKit

webkit.org/blog/11529/introducing-private-click-measurement-pcm/

safari iOS privacy ad article

iOS 14.5 베타에서 Safari와 앱에서 가능한 Private Click Measurement(PCM)에 대한 해설.
트래커로부터 프라이버시를 보호하면서 광고 컨버전을 지연 송신하는 구조에 대해.


10 bad TypeScript habits to break this year

startup-cto.net/10-bad-typescript-habits-to-break-this-year/

TypeScript article

TypeScript에서 좋지 않은 습관 소개.
왜 좋지 않은지, 어떻게 해야 하는지에 대해서 작성돼 있다.
strict, ||, any, as, Optional, Genrics의 이름, 진위값 검사, !!, != null 등에 대해.


사이트, 서비스, 문서


Replay: Record and replay web applications

replay.io/

browser webservice debug

리플레이 디버깅 서비스.

리플레이를 기록 / 재생하기 위한 브라우저를 오픈소스로 공개. Firefox 기반이다.
https://github.com/RecordReplay/


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


samthor/gumnut: JS parser in Web Assembly / C

github.com/samthor/gumnut

JavaScript library WebAssembly

C로 작성된 JavaScript 파서를 WebAssembly로 컴파일 하여 다루는 JavaScript 파서 라이브러리.


davidjbradshaw/eslint-config-auto: Automatically configure ESLint based on project dependencies

github.com/davidjbradshaw/eslint-config-auto

ESLint Tools

프로젝트의 package.json 기초로 Airbnb 규칙을 기반으로한 ESLint 규칙 설정을 자동으로 수행하는 도구.


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