Рубріки: Подборки

Главные релизы недели: новый TypeScript, сверхскоростной алгоритм объединения веток в Git и еще больше инструментов разработчика в Chrome

Богдан Мирченко

Компания Microsoft выпустила новую версию языка программирования TypeScript, Chrome 96 получил новые инструменты для веб-разработки, а Git обзавелся новым алгоритмом объединения веток. Редакция Highload продолжает рассказывать про лучшие релизы недели. Что еще нового вышло за прошедшие семь дней — читайте далее. 

TypeScript 4.5

Компания Microsoft сообщила о выходе новой версии языка программирования TypeScript 4.5. Ее можно получить через NuGet, а также с помощью npm со следующей командой: 

npm install typescript

По словам создателей, в новой версии сделан акцент на повышении производительности языка. Что касается поддержки модуля ECMAScript для Node.js 12, то она была отложена до следующего релиза, а пока доступна только в качестве экспериментального флага в нестабильных версиях. 

Что нового: 

  • Новый служебный тип awaited, который предназначен для моделирования операций await в асинхронных функциях или для рекурсивного развертывания промисов. Тип может быть полезен для моделирования существующих API, в том числе модулей JavaScript, таких как Promise.all, Promise.race и так далее.
// A = string
type A = Awaited<Promise<string>>;

// B = number
type B = Awaited<Promise<Promise<number>>>; 

// C = boolean | number
type C = Awaited<boolean | Promise<number>>;
  • Поддержка lib из node_modules — это способ переопределения конкретной встроенной библиотеки аналогичный тому, как работает метод @types/.
  • Язык теперь может сузить значения, которые имеют типы строк шаблона, а также распознает типы строк шаблона как дискриминанты.
  • Реализован механизм устранения хвостовой рекурсии при вызове узловых типов.
  • Появился новый флаг --preservValueImports, который запрещает языку удалять любые пользовательские импортированные значения.
  • Поддержка функции realpathSync.native в Node.js на всех операционных системах.

Обо всех изменениях можно почитать здесь. Кстати, у TypeScript-разработчиков самые высокие зарплаты среди фронтендеров, а если вы пишите на этом языке программирования, будет не лишним разобрать и добавить в портфолио проект файлового менеджера на TypeScript.

По словам разработчиков продукта, они уже начали работу над TypeScript 4.6, в котором планируется сделать акцент на производительности и стабильности. 

Chrome 96

Компания Google выпустила свежую версию браузера Chrome 96 с новыми инструментами для веб-разработчиков, исправленными ошибками, расширенными экспериментальными функциями в мобильной версии и обновлениями безопасности. 

Основные изменения: 

  • добавили CSS-свойство font-synthesis, которое позволяет управлять синтезом начертаний, отсутствующих в выбранном семействе шрифтов;
  • новая версия лишилась поддержки Android 5.0 и более старых версий;
  • появилась поддержка директивы CSP wasm-unsafe-eval для запуска кода на WebAssembly;
  • новая опция в Cross-Origin-Embedder-Policy, которая заставляет запросы с перекрестным происхождением без проверки пропускать учетные данные;
  • сетевые данные перенесены в поддиректорию /Network/;
  • API PaymentRequest больше не поддерживает основной способ оплаты картой и будет удален в Chrome 100;
  • экспериментальная функция Origin Trial, которая вводит атрибут важности, чтобы влиять на вычисленный приоритет ресурса;
  • в WebAssembly добавили поддержку ссылочных типов.

Стоит отметить, что с выходом Chrome 96 старые браузеры Chrome (версии 48 и старее) теряют возможность синхронизации с серверами Google. 

Скачать новую версию браузера можно здесь. По словам разработчиков продукта, ветка будет сопровождаться в течение восьми недель, а выпуск Chrome 97 запланирован на 4 января 2022 года. 

Git 2.34

Создатели распределенной системы управления версиями с открытым исходным кодом Git выпустили обновление с функциями и исправлениями ошибок от более чем 109 независимых программистов, 29 из которых — новички. 

Что нового: 

  • Проработана функция выделения части репозитория в отдельный компонент.
  • Добавлена функция «Разряженный индекс», которая позволяет легко копировать фрагмент репозитория без необходимости сохранять информацию обо всей связанной структуре файлов.
  • Усовершенствованный алгоритм объединения веток репозитория. В среднем скорость возросла в 500 раз.
  • Исправлены ошибки в работе приложения на Windows.
  • Улучшена система уведомления об ошибках и процесс их обработки.
  • Оптимизированы команды git fetch и git rebase –r.
  • Устранены некоторые утечки памяти.
  • git bundle unbundle теперь отображает прогресс.
  • Обновлена таблица ширины символов Unicode.
  • Из parse-options API удалена функция OPTION_ARGUMENT.

Больше информации о новшествах в Git 2.34 доступно по ссылке. 

Kotlin 1.6

Компания JetBrains выпустила новую версию языка программирования Kotlin 1.6 со стабильным исчерпывающим пактом whens, Kover и обновленным менеджером памяти для Kotlin/Native. Другие возможности языка и стандартной библиотеки, анонсированные в версии 1.5.3, также стали стабильными. 

Что нового: 

  • Запечатанный when — долгожданная функция, которая заставляет компилятор Kotlin предупреждать пользователя, если оператор «when» не исчерпывающий. Это делает код более безопасным без необходимости вводить собственные функции.
  • Приостановка функций как супертипов.
  • Улучшенный ввод типов для рекурсивных универсальных типов.
  • Поддержка предыдущих версий API в течение более длительного периода.
  • Компиляция целей Windows на любом хосте.
  • Стабилизирован Duration API.

Это только малая часть изменений в новом версии языка. Обо всех остальных читайте на официальном сайте продукта

Если вы используете IntelliJ IDEA или Android Studio, можете обновиться до новой версии Kotlin, как только она станет доступной. Больше информации о том, как установить релиз 1.6 — по ссылке. 

Lighthouse 9.0

Google Lighthouse — это инструмент аудита с открытым исходным кодом, который помогает разработчикам повысить производительность и доступность своих веб-проектов. Новая версия уже доступна в командной строке в Chrome Canary и PageSpeed Insights, а также появится в стабильной версии Chrome 98. 

Основные изменения: 

  • Ряд изменений в API. Подробнее о них можно прочитать здесь.
  • Поддержка User Flows — API, который позволяет анализировать User Flow, моделируя клики по ссылкам, прокрутку и загрузку дополнительных страниц вместо анализа производительности каждой страницы по отдельности.
  • Отчет стал более читаемым, а источники данных — понятнее.
  • Теперь перечислены все элементы, имеющие один идентификатор.

Lighthouse доступен в Chrome DevTools, npm (как модуль узла и CLI) и как расширение браузера (в Chrome и Firefox). Он поддерживает многие сервисы Google, включая web.dev/measure и PageSpeed ​​Insights

Ранее мы писали о том, как прокачать рейтинг в Google Lighthouse.

Останні статті

Обучение Power BI – какие онлайн курсы аналитики выбрать

Сегодня мы поговорим о том, как выбрать лучшие курсы Power BI в Украине, особенно для…

13.01.2024

Work.ua назвал самые конкурентные вакансии в IТ за 2023 год

В 2023 году во всех крупнейших регионах конкуренция за вакансию выросла на 5–12%. Не исключением…

08.12.2023

Украинская IT-рекрутерка создала бесплатный трекер поиска работы

Unicorn Hunter/Talent Manager Лина Калиш создала бесплатный трекер поиска работы в Notion, систематизирующий все этапы…

07.12.2023

Mate academy отправит работников в 10-дневный оплачиваемый отпуск

Edtech-стартап Mate academy принял решение отправить своих работников в десятидневный отпуск – с 25 декабря…

07.12.2023

Переписки, фото, история браузера: киевский программист зарабатывал на шпионаже

Служба безопасности Украины задержала в Киеве 46-летнего программиста, который за деньги устанавливал шпионские программы и…

07.12.2023

Как вырасти до сеньйора? Девелопер создал популярную подборку на Github

IT-специалист Джордан Катлер создал и выложил на Github подборку разнообразных ресурсов, которые помогут достичь уровня…

07.12.2023