PowerShell 7.4
lun, 20/11/2023 - 16:03
Dans la foulée de la publication de .NET 8, Microsoft a annoncé la disponibilité de PowerShell 7.4. Celui-ci est construit sur .NET 8 et il s'agit d'une version avec support à long terme (LTS) pour une durée de 3 ans.
Cette version inclut PSResourceGet, qui a lui-même été mis à la disposition générale plus tôt cette année. PSResourceGet remplace PowerShellGet (bien que les deux fonctionnent côte à côte pour les scripts existants). Cette version se concentre sur une nouvelle base de code plus maintenable et offrant également de meilleures performances. De plus, ce module utilise un ensemble différent d'applets de commande pour permettre des modifications avec rupture qui offrent une expérience utilisateur plus intuitive, explique Microsoft. Cette version inclut aussi la dernière version de PSReadLine qui contient un certain nombre d'améliorations et de corrections de bugs.
Cette version apporte encore 7 nouvelles fonctionnalités stables, parmi lesquelles nous citerons tout d'abord PSConstrainedAuditLogging. Cette fonctionnalité permet à PowerShell 7 d'adhérer au mode d'audit WDAC et de consigner les événements dans le journal des événements Windows. Dans ce mode, PowerShell exécute des scripts en mode langage complet, mais enregistre les événements s'il existe une différence de comportement en mode de verrouillage du système. Cela permet aux administrateurs de déployer plus facilement PowerShell 7 dans des environnements dont le mode de verrouillage du système est activé en comprenant quels scripts devraient être modifiés pour s'exécuter dans ce mode.
Nous remarquons aussi PSCustomTableHeaderLabelDecoration qui répond à un retour courant des utilisateurs qui était qu'avec les objets rendus sous forme de tableaux, il n'était pas clair quand une étiquette d'en-tête n'était pas une propriété de l'objet. Par exemple, lorsque vous utilisez Get-Process, vous voyez une colonne avec un en-tête indiquant le nombre de secondes CPU utilisées par ce processus. Cependant, si vous essayez d'accéder à cette propriété, vous constaterez qu'elle est en fait appelée juste CPU et que le (s) a été ajouté à l'en-tête pour indiquer qu'il s'agissait de secondes. Cette nouvelle fonctionnalité permet de décorer l'étiquette d'en-tête pour indiquer clairement qu'il ne s'agit pas d'une propriété de l'objet. La décoration par défaut affiche simplement l'étiquette d'en-tête en italique.
Toutes les nouveautés de PowerShell 7.4 figurent dans sa documentation.