PowerShell 7.1 (als Store-App) verfügbar, Updates für PSReadLine, SecretManagement und PowerShellGet

    PowerShell 7Microsoft gab das Release 7.1 von Power­Shell frei, das primär Bugfixes und kleinere Änderungen bringt. Updates gibt es zudem für einige Module, darunter PSReadLine 2.1 mit einer Auto­ver­voll­ständigung auf Basis der History. Neue Previews erschienen für Secret­Management und Power­ShellGet.

    Rund ein halbes Jahr nach der Freigabe von PowerShell 7.0 bringt Microsoft das Update auf 7.1. Die wichtigste technische Neuerung besteht darin, dass dieses Release nun auf .NET 5 läuft. Dieses führt das .NET Framework und .NET Core 3 zu einer gemeinsamen Plattform zusammen.

    PowerShell 7.1 ist die erste Version, die auf .NET 5 basiert.

    Während PowerShell 7.0 noch zahlreiche neue Features, darunter auch Erweiterungen des Sprach­umfangs brachte, handelt es sich bei der Version 7.1 primär um ein Maintenance-Release. Es beschränkt sich im Wesentlichen auf die Behebung von Fehlern. Dennoch enthält das Update einige Änderungen, die bei bestehenden Scripts zum Abbruch führen könnten.

    Installation über den Store

    Ein Novum von PowerShell 7.1 ist die Installations­option über den Microsoft Store. Dieser Schritt war absehbar, weil man bereits die Version 7.0x als MSIX beziehen konnte. Wie bei Store Apps üblich, wird PowerShell dann aber nur für den aktuellen Benutzer hinzugefügt.

    PowerShell 7.1 kann man erstmals als Store App bekommen.

    Möchte man PowerShell als Administrator ausführen, was ja keine Seltenheit ist, dann muss man für das privilegierte Konto die App nochmals extra installieren. Andernfalls läuft man in eine Fehlermeldung. Der Nutzen eines Admin-Tools als Store App ist somit fragwürdig und besteht in erster Linie darin, dass man Updates automatisch erhält.

    Wenn man PowerShell 7.1 als Administrator ausführen möchte, dann muss man die Store App auch für dieses Konto installieren.

    Das herkömmliche MSI-Paket kann man von Github herunterladen.

    PSReadLine 2.1

    Eine weitere Neuerung von PowerShell 7.1 besteht im Modul PSReadLine 2.1, das jedoch separat entwickelt wird und das man somit auch auf älteren Versionen (ab 5.1) nach­installieren kann. Die Aufgabe dieses Moduls besteht im Editieren der Befehlszeile, unter anderem durch Suche in der Historie (siehe dazu: Kommandozeile und Befehlshistorie in PowerShell bearbeiten mit PSReadline).

    Das Update führt ein Feature namens Predictive IntelliSense ein. Es ergänzt die Autover­voll­ständigung während des Tippens um passende Kommandos aus der Befehls­historie. Das Feature lässt sich anpassen, so kann etwa man das Hellgrau der Schrift durch eine besser lesbare Farbe ersetzen.

    Predictive IntelliSense sucht in der Historie nach Befehlen, die zur aktuellen Eingabe passen.

    Standard­mäßig ist es deaktiviert, man kann es über das Kommando

    Set-PSReadLineOption -PredictionSource History

    anschalten. Weitere Konfigurations­optionen sowie einen Ausblick auf weitere geplante Funktionen bietet dieser Devblog-Beitrag.

    Preview von SecretManagement

    Für zwei weitere Module, die sich schon seit einiger Zeit in Entwicklung befinden, erschienen neue Preview-Versionen. Eines davon ist SecretManagement, das der Verwaltung von Passwort-Managern dient. Seit der ersten Preview, die ich hier besprochen habe, gab es einige weitreichende Änderungen.

    So wurden die meisten Cmdlets umbenannt und auch das Modul selbst erhielt einen neuen Namen. Außerdem wurde das Projekt aufgeteilt und der Code zum Einrichten und Verwalten des PowerShell-eigenen Vaults in ein separates Modul namens SecretStore ausgelagert.

    Mittlerweile existieren zudem frühe Versionen von Erweiterungen, mit denen sich populäre Passwort-Manager integrieren lassen. Das zählen solche für KeePass, LastPass, Hashicorp Vault, KeyChain und CredMan.

    PowerShellGet 3.0

    Schließlich gab Microsoft bereits die zehnte Preview von PowerShellGet 3.0 frei. Das Modul dient dem Hinzufügen von Paketen aus externen Quellen wie der PowerShell Gallery. Die Version 3.0 wird von Grund auf neu in C# statt wie bisher in PowerShell geschrieben.

    Zu den wesentlichen Neuerungen der Preview 10 gehört das Zusatzmodul CompatPowerShellGet, das die Aufrufe von Cmdlets aus PowerShellGet 2.0 auf jene für 3.0 übersetzt. Es soll helfen, bestehende Scripts beim Umstieg auf die neue Ausführeng weiter­zu ­verwenden.

    Bis zur endgültigen Freigabe planen die Entwickler noch bis zu drei weitere Previews. Diese sollen bereits in die Vorabversion von PowerShell 7.2 einfließen. Die GA von PowerShellGet 3.0 liefert Microsoft dann mit neuen Versionen von PowerShell aus.

    Keine Kommentare