Microsoft представила один из способов упрощения установки версий PowerShell. Начиная с PowerShell 7.7-preview.1 в конце этого месяца компания откажется от установщиков MSI в пользу MSIX. 

Техгигант подчеркнул, что последний представляет собой более современный формат, обеспечивающий надёжность и предсказуемость по сравнению с MSI, который слишком сильно зависит от пользовательских скриптов. Это может приводить к непоследовательному поведению во время развёртывания.

Кроме того, MSIX предлагает большую гибкость в своей модели обслуживания, поскольку имеет встроенный механизм обновления, основанный на дифференциальных обновлениях. В отличие от этого, MSI основан на устаревших технологиях, которые не поддерживают современные стандарты доступности и часто требуют использования внешних инструментов и полной переустановки с каждым новым выпуском версии.

В Microsoft отмечают, что MSIX пока не поддерживает все возможности, предлагаемые MSI, в том числе определённые сценарии, такие как удалённое подключение и выполнение системными службами, например планировщик задач. Компания стремится устранить эти пробелы, инвестируя в MSIX в следующих областях: 

  • улучшение поддержки MSIX для сценариев развёртывания на системном уровне и в корпоративной среде;

  • обеспечение полного соответствия требованиям доступности для всех путей установки;

  • предоставление более чётких рекомендаций и инструментов для развертывания в масштабе.

В Microsoft отметили, что некоторые среды, использующие развёртывание MSI, могут быть затронуты этим изменением, но это пойдёт на пользу с точки зрения предсказуемости и доступности. Пакеты MSI будут по-прежнему предлагаться для существующих версий, то есть PowerShell 7.6, но, начиная с общедоступной версии PowerShell 7.7, MSIX станет методом установки по умолчанию.

Ранее Microsoft выпустила пару сборок Windows 11 для пользователей Canary — 28020.1797 и 29558.1000. Одна из них включает множество улучшений для Console Host или Command Line, в том числе более надёжную привязку к вводу/выводу в WSL и PowerShell.