Статья про то как загружать дополнительный JavaScript в зависимости от ресурсов устройства пользователя. Например, проверка на достаточное количество RAM, заряд батареи и т.д.
Может быть полезно, если на сайте много интерактивного, но необязательного JavaScript, который не стоит загружать, если у пользователя недостаточно ресурсов
- Весит 4KB - Поддерживает JSX - Компоненты, рефы, списки, ассинхронное получение данных, обработки ошибок - Роутинг с помощью forgo-router - Управление состоянием с помощью forgo-state
- Кросс-компиляция и уменьшение размера бинарников (deno compile --lite --target ...) - Поддержка MSYS для Windows - Добавлен новый метод Deno.resolveDns - Настраиваемые разрешения для Workers - Поддержка markdown для deno fmt - Поддержка UTF-16 и Big5 для TextEncoder/TextDecoder
- Кастомные хуки для управления состоянием пользователя и авторизации - Хранилище (localStorage, sessionStorage,AsyncStorage и т.д.) - Интеграция с React Router - Настраиваемая политика обновления (refresh policies) - Поддержка RxJS и промисов
- Оптимизации для сборки - JavaScript API для интегрирования Snowpack в серверные приложения - Node.js runtime API для импортирования собранных файлов в Node.js - Импорт заранее собранных модулей (через CDN)
- Реализован метод crypto.randomUUID() для генерации ID - Метод listen у сетевых серверов теперь поддерживает AbortController - Добвалено API для X509Certificate
Синдре Сорхус — автор большого количества npm-пакетов — поделился своими планами миграции на нативную модульную систему — "Get Ready For ESM".
В конце апреля 2021 года будет прекращена поддержка Node.js 10. Это означает, что майнтейнеры пакетов могут начать использовать все фичи Node.js 12 в том числе и ECMAScript Modules. ESM решает проблему интероперабельности модулей между Node.js и web, включает strict-режим по умолчанию и поддерживает три-шейкинг.
Синдре планирует в этом году перевести все свои npm-пакеты (более тысячи) на ESM и планирует полностью отказаться от CommonJS. Также он призывает всех майнтейнеров npm-пакетов присоединиться к этой инициативе, чтобы ускорить процесс миграции всей JavaScript-экосистемы.
В новой версии пакетного менеджера для команды pnpm install-completion теперь можно выбрать шелл для установки автозаполнения команд. Например: pnpm install-completion zsh
Также добавилась новая опция enable-modules-dir. Когда значение опции поставлено на false, pnpm не будет создавать файлы в node_modules. Такая фича может пригодиться при работе с FUSE.