diff --git a/_i18n/ja/_posts/2021/2021-12-20-npm-v8.3.0-core-js-3.20.0-the-state-of-css-2021.md b/_i18n/ja/_posts/2021/2021-12-20-npm-v8.3.0-core-js-3.20.0-the-state-of-css-2021.md new file mode 100644 index 00000000000..75309d36340 --- /dev/null +++ b/_i18n/ja/_posts/2021/2021-12-20-npm-v8.3.0-core-js-3.20.0-the-state-of-css-2021.md @@ -0,0 +1,195 @@ +--- +title: "2021-12-20のJS: npm v8.3.0、core-js 3.20.0、 The State of CSS 2021" +author: "azu" +layout: post +date : 2021-12-20T10:49:17.551Z +category: JSer +tags: +- npm +- Tools +- CSS +- React +- polyfill + +--- + +JSer.info #571 - npm 8.3.0がリリースされました。 + +- [Release v8.3.0 · npm/cli](https://github.com/npm/cli/releases/tag/v8.3.0) + +`package.json`の`overrides`フィールドによって、依存のバージョン指定を強制的に変更できるようになっています。 +これは、Yarnの[resolutions](https://classic.yarnpkg.com/en/docs/selective-version-resolutions/)とよく似た機能となっています。 + +- [rfcs/0036-overrides.md at main · npm/rfcs](https://github.com/npm/rfcs/blob/main/accepted/0036-overrides.md) + +--- + +polyfillライブラリであるcore-js 3.20.0がリリースされました。 + +- [Release 3.20.0 - 2021.12.16 · zloirock/core-js](https://github.com/zloirock/core-js/releases/tag/v3.20.0) + +`structuredClone`と`DOMException`のpolyfillが追加されています。(`structuredClone`が`DOMException`に依存しているため、`DOMException`も実装された) +`structuredClone`はオブジェクトをdeep-cloneをするDOM APIで、次の記事でも解説されています。 + +- [Deep-copying in JavaScript using structuredClone](https://web.dev/structured-clone/) + +core-js 3.20.0では、Stage 3の`Array.prototype.groupByToMap`のサポート。 Stage 1の`String.cooked`、Stage 0の`Function.prototype.unThis`と`Function.{isCallable, isConstructor}`のサポートなどが追加されています。 + +また、core-jsとも関係する話ですが、TC39のECMAScript ProcessドキュメントのStage 1でpolyfillを実装することを推奨するべきかどうかという議論が行われています。 + +- [Remove harmful stage 1 polyfill recommendation by ljharb · Pull Request #33 · tc39/process-document](https://github.com/tc39/process-document/pull/33) + +---- + +CSSについての開発者アンケートであるThe State of CSS 2021の結果が公開されいます。 + +- [The State of CSS 2021](https://2021.stateofcss.com/en-US/) + +CSSの機能、Pre/Post Processors、フレームワーク、CSS in JS、ツールやリソースなどの項目ごとのアンケート結果が公開されているので、興味がある人は見てみるとよさそうです。 + +また、アンケートデータそのものやAPIも公開されているので、アンケートデータを使ってみるのもよさそうです。 + +- [State of JS API](https://api.stateofjs.com/) +- [State of CSS | Kaggle](https://www.kaggle.com/sachag/state-of-css) + + + +---- + +

ヘッドライン

+ +---- + +## Release v8.3.0 · npm/cli +[github.com/npm/cli/releases/tag/v8.3.0](https://github.com/npm/cli/releases/tag/v8.3.0 "Release v8.3.0 · npm/cli") +

npm ReleaseNote

+ +npm 8.3.0リリース。 +`overrides`フィールドでのパッケージの依存バージョンの上書きをサポートなサポートなど + +- [rfcs/0036-overrides.md at main · npm/rfcs](https://github.com/npm/rfcs/blob/main/accepted/0036-overrides.md "rfcs/0036-overrides.md at main · npm/rfcs") + +---- + +## Release 3.20.0 - 2021.12.16 · zloirock/core-js +[github.com/zloirock/core-js/releases/tag/v3.20.0](https://github.com/zloirock/core-js/releases/tag/v3.20.0 "Release 3.20.0 - 2021.12.16 · zloirock/core-js") +

JavaScript polyfill ReleaseNote

+ +core-js 3.20.0リリース。 +`structuredClone`と`DOMException`の実装、Stage 3の`Array.prototype.groupByToMap`のサポート。 +Stage 1の`String.cooked`、Stage 0の`Function.prototype.unThis`と`Function.{isCallable, isConstructor}`のサポートなど + + +---- + +## Turborepo +[turborepo.org/](https://turborepo.org/ "Turborepo") +

Tools monorepo npm

+ +monorepoのビルドツール。 +インクリメンタルビルド、ビルドキャッシュ、リモートキャッシングなどの機能を持っている。 + +- [vercel/turborepo: The High-performance Build System for JavaScript & TypeScript Codebases](https://github.com/vercel/turborepo "vercel/turborepo: The High-performance Build System for JavaScript & TypeScript Codebases") +- [Vercel acquires Turborepo to accelerate build speed and improve developer experience – Vercel](https://vercel.com/blog/vercel-acquires-turborepo "Vercel acquires Turborepo to accelerate build speed and improve developer experience – Vercel") + +---- + +## Deno 1.17 Release Notes +[deno.com/blog/v1.17](https://deno.com/blog/v1.17 "Deno 1.17 Release Notes") +

deno ReleaseNote

+ +Deno 1.17リリース。 +Import assertionsのサポート、リモートモジュールの型チェックをスキップする`--no-check=remote`の追加、`AbortSignal#throwIfAborted`のサポート。 +また、`Deno.test`のoverloads APIを追加、`--watch`フラグで外部ファイルのWatchをサポート。 +Unstableとして`Deno.connectTls()`がALPNの指定をサポート、timerがプログラムの終了をブロックさせなくする`Deno.unrefTimer`の追加など。 + + +---- +

アーティクル

+ +---- + +## Web Performance Calendar » CSS me not +[calendar.perfplanet.com/2021/css-me-not/](https://calendar.perfplanet.com/2021/css-me-not/ "Web Performance Calendar » CSS me not") +

CSS performance article

+ +CSSファイルの肥大化を避けるために不要なCSSを検知する方法について。 +CSSファイルの読み込みをToggleするブックマークレット、Chrome開発者ツールのCoverageツール、UnCSSで各セレクタに`background-image`のログを仕込む方法について。 + + +---- + +## Updates from the 87th meeting of TC39 - DEV Community 👩‍💻👨‍💻 +[dev.to/hemanth/updates-from-the-87th-meeting-of-tc39-44e4](https://dev.to/hemanth/updates-from-the-87th-meeting-of-tc39-44e4 "Updates from the 87th meeting of TC39 - DEV Community 👩‍💻👨‍💻") +

ECMAScript article news

+ +2021年12月のTC39 MeetingによるECMAScriptのProposalステータスの変更点まとめ + + +---- + +## Deep-copying in JavaScript using structuredClone +[web.dev/structured-clone/](https://web.dev/structured-clone/ "Deep-copying in JavaScript using structuredClone") +

JavaScript DOM API article

+ +`structuredClone`でのdeep cloneについて。 +shallow cloneとの比較、`structuredClone`でコピーできないデータの制限について。 + + +---- +

スライド、動画関係

+ +---- + +## The State of CSS 2021 +[2021.stateofcss.com/](https://2021.stateofcss.com/ "The State of CSS 2021") +

CSS Survey

+ +CSSについて開発者アンケートであるThe State of CSS 2021が公開された。 +CSSの機能、Pre/Post Processors、フレームワーク、CSS in JS、ツールやリソースなどの項目ごとのアンケート結果が公開されている + + +---- + +## React Conf 2021 Recap – React Blog +[reactjs.org/blog/2021/12/17/react-conf-2021-recap.html](https://reactjs.org/blog/2021/12/17/react-conf-2021-recap.html "React Conf 2021 Recap – React Blog") +

React video Conference

+ +React Conf 2021の動画まとめ + + +---- +

サイト、サービス、ドキュメント

+ +---- + +## Shopify/react-native-skia: High-performance React Native Graphics using Skia +[github.com/Shopify/react-native-skia](https://github.com/Shopify/react-native-skia "Shopify/react-native-skia: High-performance React Native Graphics using Skia") +

React iOS Android

+ +React Native向けのSkia bindingライブラリ + + +---- +

ソフトウェア、ツール、ライブラリ関係

+ +---- + +## t12t/a11y-components +[github.com/t12t/a11y-components](https://github.com/t12t/a11y-components "t12t/a11y-components") +

UI accessibility links

+ +アクセッシブルなコンポーネントについてのリンク集 + + +---- + +## quick-lint/quick-lint-js: quick-lint-js finds bugs in JavaScript programs +[github.com/quick-lint/quick-lint-js](https://github.com/quick-lint/quick-lint-js "quick-lint/quick-lint-js: quick-lint-js finds bugs in JavaScript programs") +

JavaScript ESLint C++ Tools

+ +C++で書かれたJavaScriptのLintツール + +- [Faster, easier, friendlier: how quick-lint-js will take over ESLint](https://quick-lint-js.com/blog/version-1.0/ "Faster, easier, friendlier: how quick-lint-js will take over ESLint") + +----