Компания Microsoft выпустила новую превью-версию PowerShell 7.1 — средства для автоматизации работы и языка сценариев для Windows, Linux и macOS. Эта версия содержит в себе возможности, которых не было в PowerShell 7.0. Общедоступная версия PowerShell 7.0, которой предшествовала платформа PowerShell Core 6.x, выпущена в начале Марта сего года.
Превью PowerShell 7.1 включает в себя новые модули и инструменты, над которыми работает команда PowerShell. Но нет гарантии того, что всё это попадёт в обычный выпуск PowerShell 7.1, который должен выйти через неделю или две после выхода платформы .NET 5. Это так из-за того, что, начиная с PowerShell 7.0, Microsoft согласует выход новых версий PowerShell с расписанием выхода новых версий .NET.
Microsoft работает над превью-версией PowerShellGet 3.0, которая нацелена на обеспечение большего удобства использования системы и на отказ от зависимостей PackageManagement и Nuget. Кроме того, в этой версии будет осуществлён переход с языка скриптов PowerShell на C#. Первая превью-версия должна появиться совсем скоро, она будет опубликована в PowerShell Gallery.
Кроме того, в PowerShell Gallery будет опубликована новая версия модуля Secrets Management, которая поддерживает PowerShell 5.1 и PowerShell 7. Microsoft рассматривает возможность включения этого модуля в состав PowerShell 7.1.
На прошлой неделе компания выпустила вторую превью-версию модуля, которая может быть использована для управления секретными и учётными данными, применяемыми для аутентификации сложных PowerShell-скриптов в гетерогенных облачных средах.
Модуль предоставляет набор командлетов, которые позволяют пользователям хранить секретные данные локально, используя некую систему безопасного хранения данных, такую, как Credential Manager (диспетчер учётных данных) Windows. Этот модуль, посредством расширений, позволяет работать и с учётными данными, размещёнными в удалённых хранилищах. Например — в таких, как Azure Key Vault.
Пока этот модуль поддерживает лишь Windows, но Microsoft, в следующем превью, планирует добавить поддержку Linux благодаря сервису GNOME Keyring. Позже планируется добавить поддержку macOS Keychain.
Microsoft, кроме того, собирается переписать части статического анализатора кода PSScriptAnalyzer, используемые для линтинга расширений PowerShell в Visual Studio Code, выполняемого в режиме реального времени.
Продолжается работа и над поддержкой PowerShell в Jupyter Notebooks. Это — часть проекта .NET Interactive.
Microsoft изучает подходы к упрощению установки и обновления PowerShell 7. Правда, на данный момент включать PowerShell 7 в состав Windows не планируется.
Кроме того, ведётся работа над улучшениями командной оболочки, упрощающими выполнение операций копирования и вставки фрагментов кода из популярных системных оболочек в PowerShell.
Если говорить об улучшении пользовательского опыта, то сейчас изучаются вопросы того, как можно, применяя различные технологии автозавершения ввода, помочь пользователям быстрее вводить команды. Кроме того, рассматриваются задачи предоставления пользователям контекстной помощи при вводе команд, или полной справки по некоей функции системы. Данные механизмы должны приносить пользу, но при этом как можно меньше отвлекать пользователя.
И наконец, разработчики стремятся к тому, чтобы применять в PowerShell больше цветов. Это поможет облегчить чтение больших объёмов выходных данных, давая пользователям визуальные подсказки. В состав PowerShell 7.1 может входить поддержка цветового оформления строк.
Кроме того, разработчики, в рамках движения в сторону уменьшения размера развёрнутой системы, намереваются разделить модули Utility, Management и Security.
В целом можно отметить, что Microsoft, приближаясь к релизу PowerShell 7.1, стремится повысить удобство работы в этой среде.
Автор: ru_vds