Новости 512 #166

В этом выпуске: производительность CSS-in-JS в рантайме, ленивая загрузка свойств в JS, обзор новых псевдоклассов, пояснение спецификации CSS Nesting, релиз Ubuntu 21.04 и open-source часы.

Интересные публикации

Томаш Пустельник (Tomas Pustelnik) сравнил производительность CSS-in-JS c рантаймом и без. Если коротко: не стоит использовать CSS-in-JS в рантайме, это негативно сказывается на производительности. Автор для примера сравнивает Styled Components с Linaria, который позволяет использовать CSS-in-JS без рантайма. Linaria в этом сравнении побеждает. Подробности и цифры — в блоге Томаша.

Следующий материал от Николаса Закаса (Nicholas Zakas) — статья о свойствах с ленивой загрузкой в JavaScript. Суть довольно проста: вычислять свойство объекта, когда к нему происходит обращение. Николас показывает паттерн, который позволяет отложить вычисление и закешировать его результат.

Стефани Эклз (Stephanie Eckles) на SmashingMagazine написала обзор новых псевдоклассов, которые с большой вероятностью попадут в стандарт. Речь идёт о таких псевдоселекторах, как :any-link(), :focus-visible(), :focus-within(), :is(), :where() и улучшенный :not(). Также упоминаются селекторы, которые предложены, но их будущее пока не вполне понятно — :has() и :empty().

Роман Дворнов в своём Telegram-канале написал серию постов с разбором нестинга в CSS, а Вадим Макеев собрал их в статью и опубликовал на Веб-стандартах. Вокруг пропозала много непонятного: кто-то говорит, что это не нужно, кто-то считает, что это позволит избавиться от препроцессоров. Роман рассказал, что же на самом деле с этой спецификацией, какое влияние может оказать фича и когда, возможно, её стоит ждать в браузерах.

Завершат рубрику три полезные ссылки:

Гайд по старту проекта с TypeScript в 2021, который покрывает базовую настройку, тесты, сборку с esbuild, публикацию в npm и CI.

csshell.dev, который был вдохновлён htmlhell.dev и собирает распространенные ошибки в CSS.

Gridjs.io — библиотека для создания таблиц и работы с ними. Как раз вышла четвертая мажорная версия.

Новости релизов

Откроет рубрику релиз Ember.js 3.26. Это релиз с багфиксами, улучшениями производительности и несколькими приготовлениями к релизу 4.0. Новых фич в этой версии не было.

ESLint обновился до версии 7.25. В этом выпуске обновили зависимости, документацию и добавили небольшое улучшение для правила no-unused-vars.

Вышел дистрибутив Ubuntu 21.04. Напомню, что это не LTS-версия; по идее, LTS станет 22 версия ОС. В этом выпуске появилась темная тема, поддержка Microsoft SQL Server и Flutter SDK. Я уже рассказывал о том, что фокус в разработке приложений для Ubuntu сместился на Flutter — его SDK позволит быстро публиковать Flutter-приложения для Linux-пользователей.

Также отмечу релизы ядра Linux 5.12, ChromeOS 90 и GraalVM 21.1.

Другие новости

Недавно я рассказывал о том, как при помощи GitHub Actions на сервера GitHub подсаживали майнеры крипты. В блоге GitHub появилась статья о том, как с этим бороться. Если коротко, pull request с workflow от нового контрибьютора будет требовать подтверждения вручную от другого контрибьютора с правами на запись. А сам workflow до этого подтверждения не запустится. В блоге GitHub есть больше подробностей о причинах введения новой фичи и небольшая техническая инструкция.

Появилась страница о том, как начать участвовать в проекте MDN. По ссылке вы найдете короткую инструкцию, а также типы возможных задач: есть задачи, которые требуют навыков программирования или работы с текстом, а есть те, где пригодится и то, и другое. Выбрать можно на свой вкус, а бывалые участники помогут.

Закроет выпуск новость, посвященная любителям open-source. Существует сообщество PINE64, которое разработало open-source смартфон PinePhone. Они представили первый релиз InfiniTime — прошивки для умных часов PineTime. Это также open-source продукт, с первым мажорным релизом InfiniTime эти часы были обозначены как готовый для пользователей продукт. На часы установлена цена в 25$, но купить раньше августа их вряд ли получится — из-за нехватки компонентов их пока нет на складе. Тем не менее, может быть, вам захочется эти часы в будущем.

Пишите нам и читайте

Telegram—канал CSSSR

Twitter CSSSR

Twitter новостей

Telegram ведущего

Twitter ведущего

Комментарии

Продолжая пользование данным Сайтом, вы даете свое согласие на сбор и обработку технической информации (cookies). Подробнее о cookies читайте вПолитике конфиденциальности.