Compat 2021 Update, Chrome 97, Firefox 96, Safari 15.2, Ember 4.0, Jasmine 4.0, and more  | Front End News #048
Tags: news, frontendnews
Published: 2022-01-19 03:20:37

> **NOTE:** This is issue #048 of my newsletter, which went live on Monday, January 17th. If you find this information useful and interesting and you want to receive future issues as they are published, ahead of everyone else, I invite you to join the subscriber list at [frontendnexus.com](https://frontendnexus.com/).

***

Compat 2021 yielded great results in improving cross-browser compatibility. Chrome 97 introduced the `WebTransport` API. Firefox 96 comes with improved performance and security. Safari 15.2 and Safari Technology Preview 137 rolled out to users. Ember 4.0 and Jasmine 4.0.0 lead the updates section and don't forget to apply the January Security Updates for your Node installation.

***

## Compat 2021 Holiday Update

I was glad to see all major browser vendors come together to work on the Compat 2021 initiative. And the results are visible for us all. Where 2021 started with scores between 64 and 69 for the stable versions, now all browsers pass the 90 points threshold.

The end of the year announcement of the Chromium team gives us more details on each focus area. The initiative is planned to continue in 2022 as well, under the name Interop 2022. Discussions are underway to decide the focus points.

- [Compat 2021 Holiday Update: presents for developers before the end of the year](https://web.dev/compat2021-holiday-update/)

***

## Browser news

### Chrome

Chrome 97 rolled out at the start of the year. Here are the main changes that arrived in this update:

- `WebTransport` is a new API offering low-latency, bidirectional, client-server messaging
- You can use feature detection to see what types of scripts a browser supports
- It's easier to search JavaScript arrays from the end with the new `findLast()` and `findLastIndex()` static methods.

More details on these topics and the other things included in the update can be found in the official release notes linked below:

- [New in Chrome 97](https://developer.chrome.com/blog/new-in-chrome-97/)

### Firefox

Firefox users received an update as well to version 96. Here are the main changes:

- The main-thread load has been lowered
- All cookies will have by default a `SameSite=lax` attribute which helps defend against Cross-Site Request Forgery (CSRF) attacks
- The `Web Locks API` allows scripts running in different service workers or tabs to coordinate with each other.
- Added CSS `color-scheme` support to allow web pages to indicate which color schemes they can be rendered with (such as system dark mode).
- You can now use `hwb()` values to specify colors in CSS

More details are available in the release notes below:

- [See what’s new in Firefox 96](https://www.mozilla.org/en-US/firefox/96.0/releasenotes/)
- [Firefox 96 for developers](https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/96)

### WebKit

Safari 15.2 went out to all users running iOS and iPadOS 15.2 and macOS 12.1. Here are the main WebKit features that are now available to everyone:

- WebAssembly apps can now access up to 4GB of memory
- The new `Cross-Origin-Opener-Policy (COOP)` and `Cross-Origin-Embedder-Policy (COEP)` HTTP response headers can enable process isolation and access to shared memory
- Wide gamut support for Canvas

You can find more details in the articles below:

- [New WebKit Features in Safari 15.2](https://webkit.org/blog/12140/new-webkit-features-in-safari-15-2/)
- [Safari 15.2 Release Notes](https://developer.apple.com/documentation/safari-release-notes/safari-15_2-release-notes)

Safari Technology Preview 137 arrived as well, bringing support for `:has()` CSS pseudo-class and many other features, fixes, and updates:

- [Release Notes for Safari Technology Preview 137](https://webkit.org/blog/12156/release-notes-for-safari-technology-preview-137/)


***

## Software updates and releases

- **[AVA 4](https://github.com/avajs/ava/releases/tag/v4.0.0)** - Node.js test runner that lets you develop with confidence
- **[billboard.js 3.2.0](https://github.com/naver/billboard.js/releases/tag/3.2.0)** - re-usable, easy interface JavaScript chart library based on D3.js
- **[Chart.js v3.7.0](https://github.com/chartjs/Chart.js/releases/tag/v3.7.0)** - Simple HTML5 Charts using the `<canvas>` tag
- **[Create React App v5.0.0](https://github.com/facebook/create-react-app/releases/tag/v5.0.0)** - set up a modern web app by running one command
- **[D3 v7.3.0](https://github.com/d3/d3/releases/tag/v7.3.0)** - bring data to life with SVG, Canvas and HTML
- **[Deno 1.17](https://deno.com/blog/v1.17)** - a JavaScript/TypeScript runtime with secure defaults
- **[Eleventy v1.0.0](https://github.com/11ty/eleventy/releases/tag/v1.0.0)** - a simpler static site generator
- **[Elk 2.2.0](https://github.com/cesanta/elk/releases/tag/2.2.0)** - a low footprint JavaScript engine for embedded systems
- **[Ember 4.0](https://blog.emberjs.com/ember-4-0-released/)** - a JavaScript framework for creating ambitious web applications
- **[Ember 4.1](https://github.com/emberjs/ember.js/releases/tag/v4.1.0)**
- **[ESLint v8.6.0](https://eslint.org/blog/2021/12/eslint-v8.6.0-released)** - find and fix problems in your JavaScript code
- **[fast-json-stringify v3.0.0](https://github.com/fastify/fast-json-stringify/releases/tag/v3.0.0)** - 2x faster than JSON.stringify()
- **[Got v12.0.0](https://github.com/sindresorhus/got/releases/tag/v12.0.0)** - human-friendly and powerful HTTP request library for Node.js
- **[GSAP 3.9](https://greensock.com/3-9/)** - JavaScript animation library
- **[Gutemberg 12.2](https://make.wordpress.org/core/2021/12/22/whats-new-in-gutenberg-12-2-22-december/)**
- **[Jasmine 4.0.0](https://github.com/jasmine/jasmine/blob/main/release_notes/4.0.0.md)** - simple JavaScript testing framework for browsers and node.js
- **[jsPDF v2.5.0](https://github.com/parallax/jsPDF/releases/tag/v2.5.0)** - client-side JavaScript PDF generation for everyone
- **[Node January 10th 2022 Security Releases](https://nodejs.org/en/blog/vulnerability/jan-2022-security-releases/)**
- **[NVM for Windows 1.1.9](https://github.com/coreybutler/nvm-windows/releases/tag/1.1.9)** - a node.js version management utility for Windows
- **[Parcel v2.2.0](https://github.com/parcel-bundler/parcel/releases/tag/v2.2.0)** - the zero configuration build tool for the web
- **[quick-lint-js Release 1.0](https://quick-lint-js.com/blog/version-1.0/)** - finds bugs in JavaScript programs
- **[React Date Picker 4.6.0](https://github.com/Hacker0x01/react-datepicker/releases/tag/v4.6.0)** - a simple and reusable datepicker component for React
- **[React-PDF v5.6.0](https://github.com/wojtekmaj/react-pdf/releases/tag/v5.6.0)** - display PDFs in your React app as easily as if they were images
- **[Solid v1.3.0](https://github.com/solidjs/solid/releases/tag/v1.3.0)** - a declarative, efficient, and flexible JavaScript library for building user interfaces

***

## Wrapping things up

That's about all I have for the first update of 2022. If you enjoyed this newsletter, there are a couple of ways to support it. You can share the [link to this issue](https://frontendnexus.com/news/048/) on social media, and follow me on [Twitter](https://twitter.com/frontendnexus). Each one of these helps me out, and I would appreciate your consideration.

Have a great and productive week, keep yourselves safe, spend as much time as possible with your loved ones, and I will see you again next time!