PowerShell 7.7.0-preview.5 est sorti le 23 septembre 2026, cinquième preview depuis l’ouverture de la branche 7.7 le 28 avril. Pas de date de GA annoncée pour l’instant côté Microsoft. Deux changements de cette preview méritent qu’on s’y arrête, parce qu’ils répondent à des frictions bien réelles plutôt qu’à des ajouts cosmétiques : un réglage pensé pour les agents IA qui pilotent ta session, et un correctif de démarrage qui va soulager pas mal d’admins sous OneDrive.
$PSStyle.AutoSizeDefaultFormatting : quand ce n’est plus toi qui lis la sortie
La preview 5 ajoute une propriété $PSStyle.AutoSizeDefaultFormatting, qui force un formatage compact et auto-dimensionné pour les vues table et wide — par défaut, sans avoir à ajouter | Format-Table -AutoSize à chaque commande. L’intérêt saute aux yeux dès que ta session tourne dans un terminal étroit, mais la vraie motivation derrière ce changement est ailleurs : de plus en plus de sessions PowerShell sont désormais pilotées par un agent IA plutôt que lues directement par un humain, et une sortie tronquée ou mal alignée peut faire dérailler un parsing automatisé qui s’attendait à des colonnes propres.
C’est une propriété $PSStyle, pas une nouvelle cmdlet ni un flag de ligne de commande — tu la positionnes une fois dans ton profil si tu veux ce comportement par défaut sur toutes tes sessions, scriptées ou interactives.
Le fail-open qui va sauver des démarrages cassés
Le second changement est plus discret mais plus impactant au quotidien : le fichier powershell.config.json au niveau utilisateur échoue désormais en mode ouvert (fail open) plutôt qu’en faisant planter PowerShell au démarrage. Le ticket (PR #27373) cible précisément le cas d’un fichier de config corrompu ou verrouillé par une synchronisation OneDrive active sur le dossier de profil — un scénario qu’on croise régulièrement en support, où l’utilisateur ne comprend pas pourquoi pwsh refuse de démarrer après un simple déplacement de dossier.
Attention à la nuance : seul le fichier de config par utilisateur bascule en fail-open. Le fichier de config système continue de faire planter le démarrage s’il ne peut pas être chargé — logique, puisqu’une config système cassée doit rester visible immédiatement plutôt que de s’exécuter silencieusement avec des réglages par défaut potentiellement non voulus.
Un breaking change qui mérite un test avant upgrade : New-Guid passe en UUID v7
Dans la liste des breaking changes officielle de la 7.7 (PR #27033), New-Guid génère désormais par défaut des UUID version 7 (triables temporellement) au lieu de la version 4 (aléatoire pure). Le format de sortie ne change pas — ça reste un GUID .NET classique — mais la structure interne, elle, change : un v7 encode un horodatage dans ses premiers octets, ce qu’un v4 ne fait jamais.
Si un de tes scripts dépend d’une distribution vraiment aléatoire (génération de tokens, tests de charge avec clés dispersées pour éviter les hotspots d’index, etc.), ce changement par défaut peut introduire un biais silencieux. La parade reste simple : appeler directement [guid]::NewGuid() plutôt que la cmdlet si tu as besoin de garantir du v4.
Le reste de la preview 5, en bref
- Nouvelle cmdlet
New-TemporaryDirectory(PR #27549), contribution externe de @KirtiRamchandani — l’équivalent répertoire de l’historiqueNew-TemporaryFile. - Durcissement WLDP : nouveau réglage
EnableFileOnlyEntry(PR #26752) côté Windows Lockdown Policy — une brique de plus pour les environnements contraints par Device Guard. - Modules mis à jour : Microsoft.PowerShell.PSResourceGet passe en v1.3.0-preview2 (on avait couvert la bascule de ce module vers Microsoft Artifact Registry) et PSReadLine en v2.4.5.
- Runtime : PowerShell 7.7.0-preview.5 est désormais buildé sur .NET 11.0.0-rc.1 — à ne pas confondre avec les branches LTS 7.6/7.5/7.4, qui restent respectivement sur .NET 10, 9 et 8.
Rien de tout ça n’est un virage de direction : c’est la continuité directe de la feuille de route 2026 qu’on avait détaillée dans notre article sur PowerShell 7.7, OpenSSH et DSC v3, et ça complète ce qu’apporte déjà DSC v3.3 côté gestion de configuration.
FAQ
PowerShell 7.7 est-il prêt pour la production ?
Non, pas encore — c’est une branche preview, pas de date de GA communiquée à ce stade. Pour la production, reste sur une branche LTS (7.6, 7.5 ou 7.4 selon ta politique de support) et teste les previews à part, sur des machines dédiées.
Le fail-open du config utilisateur introduit-il un risque de sécurité ?
Le fail-open ne s’applique qu’au fichier de config par utilisateur, pas au fichier système — celui qui porte les réglages à portée de sécurité reste en fail-closed. L’objectif ici est la résilience du démarrage côté utilisateur, pas un assouplissement des contrôles.
Dois-je changer mes scripts à cause du passage de New-Guid en UUID v7 ?
Seulement si tu as une dépendance explicite à une distribution purement aléatoire. Pour la plupart des usages (identifiants d’objets, clés de dictionnaire, etc.), le changement est transparent.
Pour aller plus loin
Si tu fais tourner des agents ou des pipelines d’automatisation qui parsent la sortie de PowerShell, teste $PSStyle.AutoSizeDefaultFormatting dès maintenant sur un environnement de preview — c’est le genre de réglage qui t’évite une mauvaise surprise le jour où un agent IA interprète une colonne tronquée comme une valeur vide. Et si OneDrive synchronise ton dossier de profil, note que cette classe de panne au démarrage va bientôt disparaître — sans action de ta part une fois la 7.7 stabilisée.

Laisser un commentaire