Fork me on GitHub

2020-07-28のJS: SvelteのTypeScriptサポート、Chrome 85 beta、Web Speed Hackathon Online

Edit on GitHub 編集履歴を見る

JSer.info #498 - UIフレームワークであるSvelteがTypeScriptをサポートしました。

記事ではSvelteのテンプレート内でTypeScriptを使う方法とエディタでのLSP(Language Server Protocol)を使ったコード補完の方法について紹介しています。


Chrome 85 betaがリリースされました。

Origin TrialとしてFetch upload streamingWebHIDDeclarative Shadow DOMPortalsがサポートされています。
また、Mixed Contentの画像に関するAutoupgradeの追加、AVIFフォーマットのサポート、CSSのcontent-visibilitycounter-setプロパティのサポートなども追加されています。
非推奨、破壊的な変更としては、color-schemeプロパティのonlyを削除、Referrer Policyのデフォルト値をstrict-origin-when-cross-originに変更。CookieでSecure属性がないSameSite=Noneのサポート終了などが含まれています。

Chrome 85に含まれるJavaScriptのアップデートはV8のブログの方にまとまっています。
2020-07のTC39 ミーティングStage 4となったPromise.anyAggregateError、Logical assignment operatorsが実装されています。
また、同様にStage 4でES2021に入る予定のString#replaceAllも実装されています。
その他には、WebAssemblyでMulti-valueのサポート、BigIntsの値を渡せるようになるといった変更も含まれています。


WIC Speed Hackathon Onlineというウェブアプリケーションのパフォーマンス改善を競うハッカソンの課題と解説が公開されています。

解説では、パフォーマンスのポイントやどのように改善していくのかについて解説しています。
ビルド(主にフロントエンド)、フロントエンド、バックエンドの項目に大きく分けて解説されています。


JSer.infoをサポートするには

JSer.info Sponsors

JSer.info SponsorsGitHub SponsorsとしてJSer.infoを支援してくれている方々です。


ヘッドライン


Node v14.6.0 (Current) | Node.js

nodejs.org/en/blog/release/v14.6.0/

node.js ReleaseNote

Node.js 14.6.0リリース。
imports fieldの実装、vmmicrotaskModeオプションの追加、fsのfile descriptorにtrackUnmanagedFdsオプションの追加など


Svelte <3 TypeScript

svelte.dev/blog/svelte-and-typescript

Svelte TypeScript ReleaseNote

SvelteのTypeScriptサポート。
テンプレートにTypeScriptで書けるようになり、型チェックが行える。
エディタはLSPを使ったサポートを実装している


wixplosives/pleb: a casual publisher

github.com/wixplosives/pleb

npm Tools

monorepoのnpm publishで行うツール。
gitコミットハッシュベースのcanaryリリースを行うこともできる


ECMAScript proposal updates @ 2020-07 | ECMAScript Daily

ecmascript-daily.github.io/ecmascript/2020/07/26/ecmascript-proposal-update

ECMAScript proposal news

2020-07のTC39ミーティングでステータスが変わったECMAScript Proposalのまとめ。
Promise.any、WeakRefs、Logical Assignment Operators、Numeric separatorsがStage 4となりES2021に入る予定


V8 release v8.5 · V8

v8.dev/blog/v8-release-85

V8 ReleaseNote

V8 8.5リリース。
Stage 4のPromise.anyAggregateError、String#replaceAll、Logical assignment operatorsの実装。
WebAssemblyでMulti-valueのサポート、BigIntsの値を渡せるようになるなど


Chromium Blog: Chrome 85: Upload Streaming, Human Interface Devices, Custom Properties with Inheritance and More

blog.chromium.org/2020/07/chrome-85-upload-streaming-human.html

Chrome ReleaseNote

Chrome 85 beta リリース。
Origin TrialとしてFetch upload streaming、WebHID、Declarative Shadow DOM、Portalsのサポート。
Mixed Contentの画像に関するAutoupgradeの追加、AVIFフォーマットのサポート、CSSのcontent-visibilitycounter-setプロパティのサポート。
color-schemeプロパティのonlyを削除、Referrer Policyのデフォルト値をstrict-origin-when-cross-originに変更。CookieでSecure属性がないSameSite=Noneのサポート終了など


Release 3.11.0 · avajs/ava

github.com/avajs/ava/releases/tag/v3.11.0

node.js testing ReleaseNote library

AVA 3.11.0リリース。
t.like() assertionの追加。


Wiki.js

wiki.js.org/

wiki node.js webservice library

Node.js製のWikiエンジン


アーティクル


HTML5 Worker Test

html5workertest.com/

webworker browser

WebWorkerで利用できるAPIについてブラウザごとにまとめた対応表


TypeScript Contribution Diary: // @ts-expect-error | Goldblog

blog.joshuakgoldberg.com/ts-expect-error/

TypeScript article

@ts-expect-errorをどのように実装したのかについて


Web Speed Hackathon Online 出題のねらいと解説 · CyberAgentHack/web-speed-hackathon-online Wiki

github.com/CyberAgentHack/web-speed-hackathon-online/wiki/Web-Speed-Hackathon-Online-%E5%87%BA%E9%A1%8C%E3%81%AE%E3%81%AD%E3%82%89%E3%81%84%E3%81%A8%E8%A7%A3%E8%AA%AC

performance article webpack babel CSS

ウェブアプリケーションのパフォーマンス改善ハッカソンの解説。
フロントエンド、バックエンド、ビルド処理での最適化についてハッカソンのアプリを題材に解説している


A Mental Model to think in Typescript

leandrotk.github.io/tk/2020/07/a-mental-model-to-think-in-typescript/

TypeScript article

TypeScriptの型システム、コンパイルエラーとランタイムエラーの違いについてなどについて解説している記事


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


Create App - your tool for starting a new webpack or Parcel project

createapp.dev/

JavaScript Tools webpack

webpackやparcelの設定ジェネレータ。
使いたいJavaScriptやCSSのフレームワーク、Lintツールなどを選択するとそれを導入できるwebpackやparcelの設定ファイルを出力してくれるツール


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


returntocorp/semgrep: Lightweight static analysis for many languages. Find bug variants with patterns that look like source code.

github.com/returntocorp/semgrep

console Tools search

ASTベースのコード検索ツール。
Python/JavaScript/Go/Java/C/JSONなどに対してパターンマッチでの検索ができる


hugojosefson/minimum-node-version: Figures out the lowest version of Node.js that satisfies engines.node in package.json.

github.com/hugojosefson/minimum-node-version

node.js Tools

依存してるライブラリのenginesフィールドを満たす最小のNode.jsバージョンを検索するツール


この記事へ修正リクエストをする
JSer.info Slackに参加する