Sdílet prostřednictvím


Novinky v PowerShellu 7.6

PowerShell 7.6-preview.6 obsahuje následující funkce, aktualizace a zásadní změny. PowerShell 7.6 je založený na verzi GA .NET 10.0.0.

Úplný seznam změn najdete v CHANGELOG v úložišti GitHub.

Aktualizované moduly

PowerShell 7.6-preview.6 obsahuje následující aktualizované moduly:

  • Microsoft.PowerShell.PSResourceGet v1.2.0-preview5
  • PSReadLine v2.4.4-beta4
  • Microsoft.PowerShell.ThreadJob v2.2.0
  • ThreadJob v2.1.0

ThreadJob byl přejmenován na modul Microsoft.PowerShell.ThreadJob. Funkce modulu se nijak neliší. Aby se zajistila zpětná kompatibilita skriptů, které používají starý název, je modul ThreadJob v2.1.0 proxy modulem, který odkazuje na Microsoft.PowerShell.ThreadJob v2.2.0.

Zásadní změny

  • Oprava WildcardPattern.Escape správného úniku lone backticks (#25211) (Díky @ArmaanMcleod!)
  • Převeďte -ChildPath parametr na string[] pro cmdlet Join-Path (#24677) (Děkujeme @ArmaanMcleod!))
  • Odstraňte koncovou mezeru z názvu zdroje události (#24192) (Děkujeme @MartinGC94!)

Vylepšení automatického doplňování příkazů pomocí klávesy Tab

  • Správně rozbalit aliasy na jejich skutečné vyřešené příkazy (#26571) (poděkování @kilasuit!))
  • Použití parametru HelpMessage pro nápovědu při dokončování parametrů (#25108) (Díky @jborean93!)
  • Odebrání duplicitních modulů z výsledků dokončení (#25538) (Díky @MartinGC94!)
  • Přidejte kompletaci pro proměnné přiřazené ve ArrayLiteralAst a ParenExpressionAst (#25303) (Díky @MartinGC94!)
  • Oprava dokončování tabulátoru pro proměnné env/function (#25346) (Díky @jborean93!)
  • Aktualizovat odvozování typu pro pojmenované bloky a bloky příkazů tak, aby v rámci výstupu (#21137) nezahrnovaly přiřazovací příkazy a operátory inkrementace/dekrementace (Thanks )
  • Přidejte -PropertyType dokončovač argumentů pro New-ItemProperty (#21117) (Děkujeme @ArmaanMcleod!)
  • Přidání podpory jednoduchých nebo dvojitých uvozovek pro -Noun parametr pro Get-Command (#24977) (Děkujeme) @ArmaanMcleod!)
  • Přidání podpory pro dokončení jednoduchých/dvojitých uvozovek pro parametr -PSEdition pro Get-Module (#24971) (Děkujeme @ArmaanMcleod!))
  • Převeďte InvalidCommandNameCharacters v AnalysisCache na SearchValues<char>, aby bylo možné efektivnější hledání znaků (#24880) (díky @ArmaanMcleod!))
  • Konverze s_charactersRequiringQuotes v nástrojích pro dokončování na SearchValues<char> pro efektivnější vyhledávání znaků (#24879). Díky @ArmaanMcleod!)
  • Aktualizujte IndexOfAny() volání s neplatnou cestou/názvem souboru na SearchValues<char> pro efektivnější vyhledávání znaků ([#24896][24896]) (Díky @ArmaanMcleod!)
  • Nahraďte char[] pole v CompletionRequiresQuotes mezipamětí SearchValues<char> (#24907) (Děkujeme @ArmaanMcleod!))
  • Přidejte zpracování uvozovek v Verb, StrictModeVersion, Scope a PropertyType Argument Completers pomocí jediné pomocné metody (#24839) (Díky @ArmaanMcleod!))
  • Oprava dokončování sdílení s poskytovateli a mezerami (#19440) (Děkujeme @MartinGC94!)
  • Zlepšení odvození typu proměnné (#19830) (Díky @MartinGC94!)
  • Přidat popisky pro dokončování klíče v hashtable (#17864) (Děkujeme @MartinGC94!)
  • Oprava odvozování typů parametrů v klasických funkcích (#25172) (Díky @MartinGC94!)
  • Zlepšení odvozování typu přiřazení (#21143) (Děkujeme @MartinGC94!)
  • Vyloučení přiřazení OutVariable ve stejném CommandAst rozsahu při odvozování proměnných (#25224) (Díky @MartinGC94!)
  • Oprava dokončování parametrů při selhání požadavků na skript (#17687) (Díky @MartinGC94!)
  • Vylepšení dokončování argumentů atributů (#25129) (Děkujeme @MartinGC94!)
  • Oprava dokončování, které spoléhá na pseudobindování v blocích skriptu (#25122) (Díky @MartinGC94!)
  • Nedokončujte duplicitní názvy příkazů (#21113) (Děkujeme @MartinGC94!)
  • Přidání dokončování pro proměnné přiřazené přesměrováním příkazu (#25104) (Děkujeme @MartinGC94!)
  • Oprava TypeName.GetReflectionType() tak, aby fungovala, když instance TypeName představuje definici obecného typu v rámci GenericTypeName (#24985)
  • Aktualizace dokončování přiřazení proměnné nebo vlastnosti, aby mohlo přejít k odvození typu (#21134) (děkujeme @MartinGC94!)
  • Zpracování odvození typů pro přesměrované příkazy (#21131) (Díky @MartinGC94!)
  • Použití Get-Help přístupu k vyhledání about_*.help.txt souborů se správným národním prostředím pro dokončení (#24194) (Díky @MartinGC94!)
  • Oprava dokončení proměnných přiřazených ve smyčkách Do (#25076). Děkujeme @MartinGC94!)
  • Oprava dokončování cest zprostředkovatele, když cesta vrátí svůj vlastní odkaz místo svých podřízených položek (#24755) (Děkujeme @MartinGC94!)
  • Povolte dokončování proměnných s vymezeným oborem bez zadání oboru (#20340) (Díky @MartinGC94!)
  • Oprava potíží s neúplnými výsledky při dokončování cest pomocí zástupných znaků u jiných poskytovatelů než poskytovatelů systému souborů (#24757) (Děkujeme @MartinGC94!)

Vylepšení Cmdletů

  • Přidání -Delimiter parametru do Get-Clipboard (#26572) (Děkujeme @MartinGC94!)
  • Oprava Out-GridView nahrazením použití zastaralého BinaryFormatteru vlastní implementací (#25497) (Díky @mawosoft!)
  • Vylepšení podrobného zasílání zpráv na úrovni protokolování a ladění ve webových rutinách (#25510) (díky @JustinGrote!)
  • Vylepšení protokolování ladění požadavků a odpovědí webové rutiny (#25479) (děkujeme @JustinGrote!)
  • Přidejte parametr Register-ArgumentCompleter -NativeFallback pro podporu registrace univerzálního doplňovače pro nativní příkazy (#25230)
  • Ponechte -Target jako literál v New-Item (#25186) (Díky @GameMicrowave!))
  • Aktualizace systémové proměnné prostředí PATH pro spustitelný soubor správce balíčků v systému Windows (#25847)
  • Aktualizace Get-Service pro ignorování běžných chyb při načítání nekritiových vlastností pro službu (#24245) (Děkujeme @jborean93!)
  • Přidání podpory jednoduchých nebo dvojitých uvozovek pro Join-String Argument Completer (#25283) (Díky @ArmaanMcleod!)
  • Odebrat IsScreenReaderActive() kontrolu z ConsoleHost (#26118)
  • Vylepšení podpory výrazů $using v Invoke-Command (#24025) (Děkujeme @jborean93!)
  • Změna výchozího časového limitu poskytovatele zpětné vazby z 300ms na 1000 ms (#25910)
  • Přidejte podporu pro oddělovače tisíců v [bigint] typové konverzi (#25396) (Díky @AbishekPonmudi!))
  • Přidejte MethodInvocation trasování pro sledování přetížení (#21320) (Děkujeme @jborean93!)
  • Oprava ConvertFrom-Json, aby ignorovala komentáře uvnitř pole literálů (#14553) (#26050) (Děkujeme @MatejKafka!)
  • Opravit -Debug, aby nevyvolával ShouldProcess (#26081)
  • Upravit Write-Host aby respektoval OutputRendering = PlainText (#21188)
  • Oprava chyby trasování ladění pomocí magických rozsahů (#25726) (Díky @jborean93!)
  • Oprava uvozovek při dokončování, pokud cesta obsahuje znak dvojité uvozovky (#25631) (Díky @MartinGC94!)
  • Oprava běžného parametru -ProgressAction pro pokročilé funkce (#24591) (Díky @cmkb3!)
  • Opravit NullReferenceException při zapisování záznamů o postupu do konzole z více vláken (#25440) (Díky @kborowinski!))
  • Použijte absolutní cestu v FileSystemProvider.CreateDirectory (#24615) (Díky @Tadas!)
  • Zpřístupnění zděděných chráněných interních členů instance v rámci třídy PowerShell (#25245) (děkujeme @mawosoft!))
  • Přidání interních metod pro kontrolu předvoleb (#25514) (Díky @iSazonov!)
  • Přidání -ExcludeModule parametru do Get-Command (#18955) (Děkujeme @MartinGC94!)
  • Vrátit správnou vlastnost FileName pro Get-Item při výpisu alternativních datových proudů (#18019) (Díky @kilasuit!)
  • Oprava Get-ItemProperty k zaznamenání chyby, která neukončuje výjimku při přetypování (#21115) (Děkujeme @ArmaanMcleod!)
  • Oprava chyby v tom, jak Q zpracovává objekt XmlNode (#24669) (Díky @brendandburns!)
  • Chyba při New-Item -Force předání neplatného názvu adresáře (#24936) (Děkujeme @kborowinski!)
  • Povolit Start-Transcript použití $Transcript zabaleného PSObject řetězce k zadání cesty přepisu (#24963) (Díky @kborowinski!)
  • Zlepšení Start-Process -Wait efektivity dotazování (#24711) (děkujeme @jborean93!)
  • Přidání dokončování modulů podle jejich krátkého názvu (#20330) (Díky @MartinGC94!)

Vylepšení motoru

  • Oprava regrese v rozhraní API CompletionCompleters.CompleteFilename(), která způsobuje výjimku null reference (#26487)
  • Zavření popisovačů kanálu po vytvoření podřízeného procesu ssh (#26564)
  • Aktualizace modulu PSDiagnostics pro správu poskytovatele PowerShellCore v PowerShellu 7 (#25590)
  • Povolení odhlášení z naslouchacího procesu pojmenovaného kanálu pomocí proměnné POWERSHELL_DIAGNOSTICS_OPTOUT prostředí (#26086)
  • Ujistěte se, že jsou časové limity soketů nastavené pouze během ověřování tokenu (#26066).
  • Oprava stderr výstupu konzolového hostitele, aby respektoval NO_COLOR (#24391)
  • Aktualizace protokolu PSRP pro vyřazení výměny klíčů relace mezi novějším klientem a serverem (#25774)
  • ssh Oprava kontroly PATH v SSHConnectionInfo když výchozí prostředí Runspace není k dispozici (#25780) (děkujeme @jborean93!)
  • Přidání šestnáctkového formátu pro ukončovací kódy nativních příkazů (#21067) (Díky @sba923!)
  • Oprava havárie způsobené nekonečnou smyčkou při odvození typu proměnné (#25696) (Díky @MartinGC94!)
  • Přidejte PSForEach a PSWhere jako aliasy pro vnitřní metody PowerShellu Where a Foreach (#25511) (Děkujeme @powercode!))
  • Přidání modulu AIShellu do seznamu shromažďování telemetrie (#24747)
  • Byl přidán pomocník v EnumSingleTypeConverter pro získání názvů výčtů jako pole (#17785) (Díky @fflaten!))
  • Aktualizace dnsNameList pro X509Certificate2 pro použití X509SubjectAlternativeNameExtension.EnumerateDnsNames() metody (#24714) (díky @ArmaanMcleod!)
  • Stringifikovat ErrorRecord s prázdnou výjimkovou zprávou na prázdný řetězec (#24949) (Díky @MatejKafka!)
  • Přidejte PipelineStopToken k Cmdlet, který bude signalizován při zastavení potrubí (#24620) (Díky @jborean93!)
  • Návrat do AppLockeru po WldpCanExecuteFile (#24912)
  • Přesunout protokolování volání metody .NET po provedení potřebné konverze typu pro argumenty metody (#25022)
  • Oprava nekonečné smyčky při odvození typu proměnné (#25206) (Díky @MartinGC94!)
  • Odeberte starý nejasný návrh a opravte návrh názvu souboru místního skriptu (#25177).
  • Zpřístupněte SystemPolicy veřejná rozhraní API jako viditelná, ale nefunkční na platformách Unix, aby je bylo možné zahrnout do PowerShellStandard.Library (#25051)
  • Nastavení standardních popisovačů explicitně při spuštění procesu pomocí -NoNewWindow (#25061)
  • Oprava nápovědy pro rozšíření proměnných a zahrnutí popisu (#25112) (Děkujeme @jborean93!)
  • Při dokončování relativních cest pro použití příkazů (#20017) použijte cestu k souboru skriptu (díky @MartinGC94!)
  • Povolit analýzu DSC prostřednictvím překladových vrstev architektury operačního systému (#24852) (díky @bdeb1337!)

Experimentální funkce

PowerShell 7.6-preview.6 obsahuje následující změny experimentálních funkcí.

Následující funkce byly převedeny na hlavní funkce:

Tato verze obsahuje následující experimentální funkce: