
Новый выпуск Biome предлагает более быструю лининг с типовой точностью
23 июня 2025 г.Привет, энтузиасты JavaScript!
Добро пожаловать в новое издание "На этой неделе в JavaScript"
На этой неделе мы рассмотрим релиз V2, изменяющий игру BIOME, отмечаем базовую доступность модулей JSON в современных браузерах, исследуйте движение Astro к динамическому содержанию и рассмотрим некоторые захватывающие релизы инструментов от HONO, MockRTC и многое другое.
Biome v2 идет для Eslint и красивее
Biome v2ВКодовым биотипомВофициально вышел, и это большие новости. Впервые JavaScript и TypeScript Linter может предлагать правила с учетом типов, не полагаясь на компилятор TypeScript. Это снижает потребность в типовойписах в качестве зависимости, повышая производительность при сохранении расширенных возможностей для линовода.
Одной из выдающихся функций является правило nofloatingpromises, которое уже обнаруживает 75% проблем, пойманных в результате TypeScript-Eslint, но за долю от стоимости производительности. Это основано на недавно введенном многофильном анализе Biome и индивидуальном выводе.
Biome 2.0 также вводит вспомогательные действия, такие как импортная организация и сортировка атрибутов, без диагностики. Поддержка MonorePos теперь значительно лучше с вложенными файлами конфигурации, и новый HTML -форматер (все еще экспериментальный) теперь может обрабатывать файлы .html, что в будущем приближает Biome к поддержке шаблонов Vue и Svelte.
Мигрировать проста со встроеннымmigrate
Команда:
npm install --save-dev --save-exact @biomejs/biome
npx @biomejs/biome migrate --write
При поддержке работы с выводом типа BIOME сигнализирует о своем намерении серьезно конкурировать с Eslint и красивым.
Сценарии модуля JSON теперь базовые во всех основных браузерах
Давно зачисленная функция импорта JSONПоскольку модуль теперь наконец поддерживается во всех современных браузерах, включенных через атрибуты импорта. Это знаменует собой большой шаг для стандартного поведения модуля в Интернете, что облегчает работу, чем когда -либо, работа со структурированными данными непосредственно внутри JavaScript.
Вместо того, чтобы получать и разрабатывать JSON вручную, теперь вы можете написать:
Импортировать данные из './foo.json' с {type: 'json'};
Эта функция поступает из предложения «Импорт атрибутов», которое позволяет проходить метаданные наряду с импортом, чтобы сообщить двигателю JavaScript, как обрабатывать файл. Он был разделен от первоначального предложения на отдельную дорожку, чтобы ускорить принятие, и теперь модули JSON первыми стали исходными.
Проблемы безопасности, связанные с несоответствиями типа MIME, привели к этому явному подходу к объявлению, гарантируя, что такие модули, как JSON или CSS, не выполняют произвольный код. Будущие расширения могут включать поддержку CSS и HTML -модулей с использованием того же механизма. Динамический импорт и реэкспорты также поддерживают новый синтаксис:
import("./config.json", { with: { type: "json" } })
Это изменение повышает совместимость и упрощает фронтальные рабочие процессы, более тесно выравнивая систему модулей с тем, что разработчики ожидают от современных инструментов, таких как Vite и Webpack.
9 новых функций JavaScript в ES2025
ES2025 представляет девять мощных функций JavaScript, которые оптимизируют манипулирование данными, регулярные выражения, импорт модулей и числовые операции. Вот быстрый разрыв того, что будет:
1. regexp.escape ()- Новый статический метод для безопасного избежания внедренных пользователей строк для использования внутри регулярных выражений.
const escaped = RegExp.escape("Hello.");
const re = new RegExp(escaped, 'g');
2. Float16array-Новый типированный массив, который обеспечивает 16-битные операции с плавающей запятой. Идеально подходит для GPU работы, обработки цвета и чувствительных к памяти приложений.
3. обещание.try ()- Более эргономичный способ безопасной обертывания синхронизации или асинхронных функций и немедленно обрабатывать ошибки.
Promise.try(() => mightThrow()).then(...).catch(...);
4. Помощники итератора- Дополнения как.map()
В.filter()
В.reduce()
В.toArray()
На местных итераторах делают их намного более мощными и похожими на массив.
5. JSON MODULES- Теперь стандартизировано и обрабатывается с помощью атрибутов импорта, позволяя импорту JSON вести себя предсказуемо и надежно.
6. Импорт атрибутов- Улучшение синтаксиса для передачи метаданных вместе с импортом модулей, таким как тип импортного файла.
import data from "./file.json" with { type: "json" };
7. Модификаторы рисунка regexp- Поддержка для включения или отключения флагов коррекса встроенных в подложках.
const re = /^(?i:[a-z])[a-z]$/;
8. Новые методы набора- математические операции, как.union()
В.intersection()
В.difference()
, и.isSubsetOf()
Принесите возможности пользователя мощности в комплекты.
9. Дубликат названных групп захвата- JavaScript теперь поддержит использование одной и той же названной группы захвата в нескольких частях шаблона, не бросая ошибку.
Эти улучшения делают JavaScript более мощным и выразительным для приложений с тяжелыми данными, богатым пользовательским интерфейсом и чувствительных к производительности приложений.
Astro 5.10: коллекции контента живого контента и стабильные отзывчивые изображения
Astro 5.10Корабли с захватывающей новой экспериментальной функцией: живые коллекции контента. В отличие от статического контента, который собирается составлена во время сборки, живые коллекции извлекают данные во время выполнения. Это означает, что ваш контент теперь может отражать обновления в реальном времени, пользовательские предпочтения или динамические фильтры.
Эта функция идеально подходит для сайтов, где данные часто изменяются или являются конкретными пользователями. Вместо того, чтобы восстановить ваш сайт для каждого изменения, живые коллекции позволяют вам обслуживать свежий контент по требованию, повышая гибкость, не жертвуя производительностью, когда статические данные достаточны.
Также теперь стабильными являются отзывчивые изображения Astro. Они автоматически генерируют оптимизированные варианты изображения и SRCSET, помогающие уменьшить сдвиги макета и улучшить основные веб -жизненные силы. Это особенно полезно для ориентированных на производительность сборки и с тяжелыми макетами.
Дополнительные обновления включают в себя улучшения CSP, настраиваемую точку записи работников CloudFlare и расширенную обработку ошибок для коллекций контента в прямом эфире с использованием предсказуемых объектов результата.
Bun V1.2.16: исправления маршрутизации файлов и утечки памяти
Булочка 1.2.16Вводит поддержку возврата файлов непосредственно в обработчиках маршрута с использованием Bun.serve. Это позволяет разработчикам легко обслуживать статические файлы без ручного чтения или буферизации их.
Обновление включает в себя 73 ошибки, патчи утечки памяти и более 100 дополнительных тестов совместимости Node.js. Примечательно, что утечки памяти в ручке N-API и STDIO из Bun.Spaws были фиксированы, улучшая стабильность в продолжительных процессах. Новый Hashing API, Bun.hash.rapidhash, также дебютирует, обещающие более быстрые хэш -вычисления.
Дополнительные обновления включают в себя поддержку Vm.syntheticModule, привязки HTTPPARSER и улучшения в устаревшей команде BUN, что делает BUN более универсальным для современных рабочих процессов веб -приложений.
Инструменты и релизы, о которых вы должны знать
LogTape: структурированная регистрация во всех времени запуска
Logtapeявляется библиотекой журнала с нулевой зависимостью, которая плавно работает в узле, Deno, Bun, Browsers и Edge. Он поддерживает структурированную регистрацию, редакцию конфиденциальных данных, матрицы литералов для форматирования журнала и иерархическую систему категории для мелкозернистых уровней журнала.
Его выдающаяся функция - простота расширения его с помощью пользовательских раковинов, позволяющих отправлять журналы, где бы вы ни захотели. Будь то создание решения для ведения журнала для библиотеки или приложения с полным стеком, LogTape предоставляет гибкий и согласованный API.
HONO: Молническая веб-фреймворк, которая работает где угодно
Хоноэто крошечная и сверхбыстрая веб -структура, созданная по веб -стандартам. Он работает везде - работники Cloudflare, Deno, Vercel, Node, Bun и многое другое.
Благодаря первоклассной поддержке TypeScript, HONO предлагает промежуточное программное обеспечение, включенное в батареи, прокачанную маршрутизацию REGEXP (без линейных сканов) и восхитительный опыт разработчика. Его Hono/Tiny Preset весит менее 12 КБ, что делает его одной из самых легких полнофункциональных рамок. Если вы строите приложения или API-интерфейсы с краями, HONO определенно стоит посмотреть.
Mockrtc: издеваться и проверить webrtc как профессионал
Mockrtcдает разработчикам возможность перехватить и издеваться над соединениями WEBRTC для тестирования, отладки или моделирования условий отказа. Он может захватывать трафик, вводить поведение и даже зацепить живые сеансы WEBRTC без изменения производственного кода.
Вы можете смоделировать реальных сверстников, автоматизировать тесты или создавать прокси -слои для преобразования или мониторинга. Функции крючка Mockrtc делают интеграцию бесшовной, а его возможности утверждения помогают уверенно проверить поведение в области края. Это необходимо для команд, работающих на коммуникационных платформах в реальном времени.
И это все для сорокаНа этой неделе в JavaScript."
Не стесняйтесь поделиться этим информационным бюллетенем с коллегой -разработчиком и убедитесь, что вы подписаны на получение уведомления о следующем выпуске.
До следующего раза, счастливого кодирования!
Оригинал