
Дено, наконец, повторно вносит связку
7 июля 2025 г.Привет, энтузиасты JavaScript!
Добро пожаловать в новое издание "На этой неделе в JavaScript"
На этой неделе Deno Bundle сделал безумное возвращение, чат Github Copilot получает открытый источник, кто-то сделал Minecraft с CSS, а PNG также получает обновления.
Кроме того, у нас есть несколько мощных новых+обновленных инструментов для вашего рабочего процесса разработки!
Deno 2.4: Deno Bundle вернулся
DENO 2.4 Вновь введена в давно заслуженную команду Deno Bundle, Включение однолетных JavaScript или TypeScript Paclles для среды для серверов и браузеров. При поддержке зависимостей NPM и JSR, а также автоматического увольнения деревьев и минимификации через ESBUILD, это отмечает значительный скачок вперед для опыта разработчика DEDO.
Ранее устаревший из -за сложности Deno Bundle теперь использует Esbuild под капотом и здесь, чтобы остаться. Планы на будущее включают в себя разоблачение API -API -интерфейса времени выполнения и поддержки плагинов для настраиваемых сборков, что делает его более гибким, чем когда -либо.
Помимо объединения, Deno 2.4 представляет несколько заметных функций, которые улучшают как DX, так и спецификацию:
- Импорт текста и двоичных файловнепосредственно в модулях, полезные для таких активов, как Markdown, значки или бинарные капли. Вместо того, чтобы загружать активы во время выполнения, разработчики теперь могут импортировать их статически в специфике, согласуясь с направлением предложения импорта атрибутов.
- Стабильная поддержка Opentelemetryтеперь встроен в DENO, обеспечивая структурированную наблюдаемость без дополнительной настройки.
- Новый
--preload
Флаг позволяет изменить среду времени выполнения DENO перед выполнением сценариев, полезным для инъекции кода или инструментации. deno update
Упрощает управление зависимостями, сохраняя все свежее с одной командой.- Покрытие сценария теперь можно собрать через
deno run --coverage
, облегчая отслеживание качества теста и идентифицировать непроверенную логику. - Дополнительные изменения включают в себя:
- Поддержка для
DENO_COMPAT=1
Режим для лучшей совместимости узлов - Условный экспорт в
package.json
- Поддержка XML и SVG в
deno fmt
- Расширенная поддержка местных пакетов NPM
- Лучше
tsconfig.json
умение обращаться - Упрощенная узла глобальная обработка
- Улучшения в протоколе языкового сервера (LSP)
Deno 2.4 является одним из самых существенных выпусков, ужесточая выравнивание времени выполнения с современными стандартами, улучшая объединение, наблюдаемость и эргономику по всем направлениям.
Github Copilot Chat теперь открыт в коде VS VS
Microsoft официально открыла расширение чата Github Copilot для Visual Studio CodeСогласно лицензии MIT, отмечает свой первый основной веху в направлении создания редактора кода с открытым исходным кодом. Этот ход открывает полностью прозрачный взгляд на то, как Microsoft реализует кодирование AI на основе агента внутри VS-кода.
Теперь вы можете изучить, как контекст передается в LLMS, как структурированы системы системы и как взаимодействие ИИ встроено в интерфейс редактора, непосредственно в общественном репо. Все, от захвата телеметрии до быстрого инженерной логики, видно и модифицируется.
Релиз является частью более широких усилий по продвижению инноваций, основанных на сообществе в инструментах искусственного интеллекта. Благодаря чату с открытым исходным газом, Microsoft надеется повторить успех открытой модели VS Code, одновременно продвигая доверие, расширяемость и понимание интеграции ИИ.
Разработчики могут:
- Изучите, как работает режим агента под капюшоном
- Узнайте на реализации Microsoft многоэтапную обработку задач и программирование на основе чата
- Внести свой вклад непосредственно в проблемы с расширением или файлами
- Используйте собственные возможности чата Copilot, чтобы ориентироваться и понять саму базу кодовой
В долгосрочной перспективе Microsoft стремится интегрировать расширение чата Copilot непосредственно в Code Code. В то время как оригинальный встроенный двигатель Copilot на данный момент остается закрытым исходным кодом, Microsoft заявила, что будущие итерации этой функции могут также перейти к фонду чата с открытым исходным кодом.
Этот релиз поддерживает полное взаимодействие в чате внутри редактора, от разговоров с несколькими разговорами до AI-управляемых редакторов, рефакторирования метода и обработки ошибок, по десяткам языков, таких как Python, JavaScript, GO и C ++.
С полной интеграцией в пользовательский интерфейс VS Code, обновления чата Copilot вместе с каждым выпуском кода VS. Чтобы получить доступ к последним возможностям, пользователи должны оставаться в самой последней версии VS -кода.
Этот шаг с открытым исходным газом укрепляет прозрачность, улучшает доверие сообщества и дает разработчикам мелкозернистый контроль над тем, как инструменты искусственного интеллекта включены в их рабочие процессы. Приверженность Microsoft ясна: разработка AI-Prirst должна быть открыта по дизайну.
Minecraft ... в чистом CSS?!
Да, это реально: кто -то воссоздал Minecraft, используя только HTML и CSS, нет javascript, нет Webgl. Вы можете строить блоки, сломать их, вращать мир и исследовать, все с помощью только селекторов CSS, радио и дикого творчества.
Этот проект подталкивает CSS к его абсолютным пределам, используя смесь:has()
, радио входы и механика метки для имитации интерактивных изменений 3D состояния, по существу превратив браузер в воксельный двигатель, используя правила чистого стиля.
По своей сути:
- Игра используетБолее 35 000
<label>
элементыи почти6000<input type="radio">
элементыхранить состояние. - Каждый куб в трехмерной сетке представлен с использованием комбинаций этих входов, позволяя CSS «отслеживать» типы и позиции блоков.
Изменение блоков работает, выбрав различные радио входы. Соответствующие цели этикетки используют для атрибутов для обновления видимых стилей, изменения текстур или удаления блоков, в зависимости от того, какой вход проверяется.
Рендеринг и интерактивность обрабатываются через:
- Анимация только для CSSкоторые работают при взаимодействии, используя
:active
иanimation-play-state
обманывать. Удержание кнопки движения (например, «вверх» или «вниз») запускает гладкие преобразования и вращается в мире. - 3D преобразования и перспективы, включая пиксельное рендеринг текстур для этого подлинного вида Minecraft.
- Предварительно скомпилированныйHTML-файл 46 000 линийс просто480 линий фактических CSS(Сгенерировано с помощью шаблонов SCSS) организует весь опыт.
Что делает это возможным:
- Умное использование
:has()
и:checked
Selectors позволяет входным состояниям запускать изменения DOM без JavaScript. image-rendering: pixelated
Обеспечивает чистую визуальную верность для блоков.- Слоистые элементы контейнера отслеживают перспективу и движение на основе оси в 3D.
Это не просто визуальная демонстрация, этоПолностью интерактивныйПолем Вы можете копать, разместить блоки, вращать и исследовать миниатюрный мир CSS. Несмотря на то, что он не построен для производства или масштабируемости, инженерия, стоящая за ней, удивительно.
Это потрясающий пример того, как далеко продвинулись нативные веб -технологии и насколько возможно, когда вы готовы изучить границы CSS.
PNG получает свое первое крупное обновление за более чем 20 лет
Формат изображения PNG только что получил свое первое обновление Spec за два десятилетия, и это большой. С вкладами Adobe, Apple, Google, BBC, W3C и многое другое, PNG теперь официально современно, готова конкурировать с передовыми форматами изображений в рабочих процессах HDR, анимации и метаданных.
Так что же нового?
- Истинная поддержка HDR
В настоящее время PNG поддерживает цвет высокого динамического диапазона с 4 дополнительными байтами на изображение (плюс накладные расходы на кожу). Это привносит яркую, широкополосную поддержку в формате, ранее ограниченном SDR, и предназначен для будущего. Новый цвет кодировки хорошо задокументирована и уже поддерживается в крупных браузерах и инструментах изображений. - Анимированные PNG (APNG) теперь официально являются официальными
Давно поддерживаемая неофициально в Firefox, а затем Chrome и Safari, APNG теперь официально являются частью спецификации. Это кодифицирует их место в современных рабочих процессах изображения и очищает путь для более широкого внедрения. - Встроенные метаданные Exif
В настоящее время PNG поддерживает встраивание данных ESIF, включая GPS, авторские права и настройки камеры, как JPEG. Это улучшает совместимость между фотографиями и архивными приложениями, одновременно снижая зависимость от файлов коляска. - Очистка спецификации и разъяснения
Обновление также включает в себя долговременную домашнюю работу: более четкую документацию, разрешенные ошибки и гармонизированные интерпретации ключевых функций.
Почему сейчас?
Это обновление было вызвано потребностью в поддержке HDR в рабочих процессах субтитров из рабочей группы по времени W3C. То, что началось как узкое техническое предложение, набирало быстрый импульс, вызвав интерес от Who's Who Media и Platform Giants.
Сторонники новой спецификации включают:
Adobe, Apple, BBC, Comcast/Nbcuniversal, Google, Movielabs и W3C.
С такой институциональной поддержкой PNG не просто обновляется, но и ускоряется.
Уже поддерживается- обновленная спецификация PNG уже реализована в:
- Браузеры:Chrome, Firefox, Safari
- Операционные системы:iOS, macOS
- Инструменты:Photoshop, Davinci Resolve, Avid Media Composer
Рабочие процессы вещания также принимают его. Таким образом, в следующий раз, когда вы увидите тикеров HDR News или спортивную графику, есть большая вероятность, что он работает на этом модернизированном PNG.
Инструменты и релизы, о которых вы должны знать
RSPACK 1.4: Высокоскоростная веб-объединение, теперь в браузере
RSPACK-это веб-пакет на основе ржавчины, предназначенный для того, чтобы быть более быстрой заменой для WebPack.
Он компилирует современный JavaScript, TypeScript, CSS и другие фронтальные активы с молниеносной скоростью и полностью совместим с существующими конфигурациями WebPack, что делает миграцию бесшовной для крупных кодовых баз.
Версия 1.4 делает смелый шаг вперед: Rspack теперь может работать в браузере, благодаря Webassembly. Это разблокирует варианты использования, такие как редакторы онлайн -кода, игровые площадки и мгновенные предварительные просмотры без сервера. Для команд, создающих инструменты DX или образовательные платформы, новые возможности RSPACK предлагают быстрые, портативные сборки, где традиционные инструменты не могут достигать.
Электрон 37.0: Создание кроссплатформенных настольных приложений с помощью веб-технологий
Electron-это структура для создания настольных приложений с использованием веб-технологий, таких как HTML, CSS и JavaScript. Он собирает Chromium и Node.js вместе, предоставляя разработчикам полный контроль над пользовательским интерфейсом и функциями системного уровня в одной кодовой базе.
Electron 37.0 включает в себя последние обновления хрома и узлов, улучшение производительности и лучшую совместимость между операционными системами. Независимо от того, создаете ли вы приложения для производительности, инструменты разработчиков или внутренние утилиты, Electron позволяет повторно использовать свои навыки на переднем плане для поставки приложений для чувства собственных нативных по MacOS, Windows и Linux.
Eslint 9.30.1: Чистая линейка для импорта TypeScript
Eslint-это стандарт отрасли Linter для JavaScript Projects и TypeScript, помогая разработчикам рано поймать ошибки, руководства по обеспечению соблюдения и поддерживать согласованный код между командами.
Версия 9.30.1-это релиз патча, но включает в себя заметное исправление для пользователей TypeScript: правило без дубликатов-импортов теперь позволяет импортировать по умолчанию и названным типам сосуществовать из того же модуля. Это разрешает давнее трение при использовании TypeScript со строгими правилами линирования и обеспечивает более чистые, без конфликтных импортных операторов без обходных путей.
Вавилон 7.28.0:TypeScript Toning и готов к будущему
Babel-это широко используемый компилятор JavaScript, который позволяет разработчикам использовать функции JavaScript следующего поколения, перенесив их в широко поддерживаемый синтаксис. Это важно для больших кодовых баз, которые хотят оставаться современными, не жертвуя совместимостью с браузером.
В версии 7.28.0 Babel представляет собственную поддержку файлов конфигурации TypeScript (babel.config.ts и babel.config.mts), устраняя необходимость дополнительного инструмента. Это также позволяет по умолчанию явного управления ресурсами ES2026 по умолчанию (с использованием операторов) поддерживает предложение о привязке сброса (полезно для игнорирования значений в деструкции) и добавляет новую опцию Sourcetype для лучшего обработки модулей CommonJS.
Эти обновления делают Babel более способным, эргономичным и готовым к будущему для современных проектов JS, особенно в гибридных кодовых базах, смешивающих ESM, CJS и TypeScript.
И это все для сорок второго выпуска "На этой неделе в JavaScript."
Не стесняйтесь поделиться этим информационным бюллетенем с коллегой -разработчиком и убедитесь, что вы следите за более еженедельными обновлениями.
До следующего раза, счастливого кодирования!
Оригинал