PowerShell / PowerShell/PowerShell

pwsh.exe -NoProfile takes minutes to load after .NET update

Ouverte
#23,830 2 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Needs-Triage
Langage dominant
C#
Étoiles
55.5k
Forks
8.5k
Merge moyen
1 j 2 h
PR mergées (30 j)
88

Description

Prerequisites
Steps to reproduce

I installed these updates yesterday:

image

Since then, PowerShell 7.4.2 takes about three minutes to load, even when I use pwsh.exe -NoProfile. Since there's no difference in behavior with or without loading the profile, here's an example when I do load with a profile so you can see the load time.

PowerShell 7.4.2
Loading personal and system profiles took 180574ms.

Even after loading, everything is glacially slow. For example:

PS C:\Users\Chad> Measure-Command { Get-Date }

Days              : 0
Hours             : 0
Minutes           : 0
Seconds           : 10
Milliseconds      : 11
Ticks             : 100117544
TotalDays         : 0.000115876787037037
TotalHours        : 0.00278104288888889
TotalMinutes      : 0.166862573333333
TotalSeconds      : 10.0117544
TotalMilliseconds : 10011.7544

Things I've tried:

  • pwsh.exe -NoProfile
  • pwsh.exe -NoProfile -NonInteractive
  • POWERSHELL_TELEMETRY_OPTOUT = 1 and POWERSHELL_UPDATECHECK = Off
  • Verified that Controlled Folder Access is set to Not configured (Issue https://github.com/PowerShell/PowerShell/issues/21546 has similar symptoms)
  • Reinstalled 7.4.2
Expected behavior
Acceptable performance
Actual behavior
As described above
Error details

No response

Environment data
Name                           Value
----                           -----
PSVersion                      7.4.2
PSEdition                      Core
GitCommitId                    7.4.2
OS                             Microsoft Windows 10.0.22631
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           1.1.0.1
WSManStackVersion              3.0
Visuals

No response

Guide de contribution

Ouvrir le guide de contribution

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Piste de recherche

Reproduisez le ralentissement avec pwsh.exe -NoProfile et Measure-Command { Get-Date } dans l’environnement Windows PowerShell 7.4.2 signalé, puis comparez le démarrage avec et sans profils. Examinez les symptômes et l’issue associée #21546 ; le travail est considéré comme terminé lorsque le démarrage et les commandes de base retrouvent des performances acceptables et que la régression est couverte par un test ou un diagnostic approprié.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
powershell
Domaine
cli, performance
Type d'issue
Bug
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
30/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.