diff --git a/.vscode/cspell/psdocs/dictionaries/psdocs.txt b/.vscode/cspell/psdocs/dictionaries/psdocs.txt index 5220b96fed4d..cf506dca7949 100644 --- a/.vscode/cspell/psdocs/dictionaries/psdocs.txt +++ b/.vscode/cspell/psdocs/dictionaries/psdocs.txt @@ -301,6 +301,7 @@ WBEM WDAC webservice WinCompat +WinGet wmicimv2 workgroup workgroups diff --git a/reference/docs-conceptual/install/Installing-PowerShell-on-Windows.md b/reference/docs-conceptual/install/Installing-PowerShell-on-Windows.md index 0de9839fb7df..a65550b84101 100644 --- a/reference/docs-conceptual/install/Installing-PowerShell-on-Windows.md +++ b/reference/docs-conceptual/install/Installing-PowerShell-on-Windows.md @@ -8,7 +8,7 @@ title: Installing PowerShell on Windows There are multiple ways to install PowerShell in Windows. Each install method is designed to support different scenarios and workflows. Choose the method that best suits your needs. -- [Winget][14] - Recommended way to install PowerShell on Windows clients +- [WinGet][14] - Recommended way to install PowerShell on Windows clients - [MSI package][11] - Best choice for Windows Servers and enterprise deployment scenarios - [ZIP package][15] - Easiest way to "side load" or install multiple versions - Use this method for Windows Nano Server, Windows IoT, and Arm-based systems @@ -18,16 +18,16 @@ different scenarios and workflows. Choose the method that best suits your needs. [!INCLUDE [Latest version](../../includes/latest-install.md)] -## Install PowerShell using Winget (recommended) +## Install PowerShell using WinGet (recommended) -Winget, the Windows Package Manager, is a command-line tool enables users to discover, install, +WinGet, the Windows Package Manager, is a command-line tool enables users to discover, install, upgrade, remove, and configure applications on Windows client computers. This tool is the client interface to the Windows Package Manager service. The `winget` command-line tool is bundled with Windows 11 and modern versions of Windows 10 by default as the **App Installer**. > [!NOTE] > See the [winget documentation][09] for a list of system requirements and install instructions. -> `Winget` isn't available on Windows Server 2022 or earlier versions. Windows Server 2025 Preview +> `winget` isn't available on Windows Server 2022 or earlier versions. Windows Server 2025 Preview > Build 26085 and later includes `winget` for **Windows Server with Desktop Experience** only. The following commands can be used to install PowerShell using the published `winget` packages: @@ -229,15 +229,15 @@ session is running. - If the value is `$HOME\.dotnet\tools`, PowerShell was installed with the [.NET Global tool][10]. - If the value is `$Env:ProgramFiles\PowerShell\7`, PowerShell was installed as an - [MSI package][11] or with [Winget][14] on a computer with an X86 or x64 processor. + [MSI package][11] or with [WinGet][14] on a computer with an X86 or x64 processor. - If the value starts with `$Env:ProgramFiles\WindowsApps\`, PowerShell was installed as a - [Microsoft Store package][12] or with [Winget][14] on computer with an ARM processor. + [Microsoft Store package][12] or with [WinGet][14] on computer with an ARM processor. - If the value is anything else, it's likely that PowerShell was installed as a [ZIP package][15]. If you installed via the MSI package, that information also appears in the **Programs and Features** Control Panel. -To determine whether PowerShell may be upgraded with Winget, run the following command: +To determine whether PowerShell may be upgraded with WinGet, run the following command: ```powershell winget list --name PowerShell --upgrade-available @@ -382,6 +382,7 @@ can't support those methods. [13]: #powershell-remoting [14]: #winget [15]: #zip +[18]: https://github.com/PowerShell/PowerShell/releases/latest [19]: https://github.com/ms-iot/iot-adk-addonkit/blob/master/Tools/IoTCoreImaging/Docs/Import-PSCoreRelease.md#Import-PSCoreRelease [20]: https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/PowerShell-7.5.0-win-arm64.msi [21]: https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/PowerShell-7.5.0-win-arm64.zip diff --git a/reference/docs-conceptual/install/Installing-PowerShell-on-macOS.md b/reference/docs-conceptual/install/Installing-PowerShell-on-macOS.md index a3095310c6ad..d1782d951301 100644 --- a/reference/docs-conceptual/install/Installing-PowerShell-on-macOS.md +++ b/reference/docs-conceptual/install/Installing-PowerShell-on-macOS.md @@ -1,6 +1,6 @@ --- description: Information about installing PowerShell on macOS -ms.date: 01/27/2025 +ms.date: 01/29/2025 title: Installing PowerShell on macOS --- @@ -282,8 +282,8 @@ support those methods. [19]: https://github.com/PowerShell/PowerShell/releases/download/v7.4.7/powershell-7.4.7-osx-arm64.tar.gz [20]: https://github.com/PowerShell/PowerShell/releases/download/v7.4.7/powershell-7.4.7-osx-x64.pkg [21]: https://github.com/PowerShell/PowerShell/releases/download/v7.4.7/powershell-7.4.7-osx-x64.tar.gz -[22]: https://github.com/PowerShell/PowerShell/releases/download/7.5.0/powershell-7.5.0-osx-arm64.pkg -[23]: https://github.com/PowerShell/PowerShell/releases/download/7.5.0/powershell-7.5.0-osx-arm64.tar.gz -[24]: https://github.com/PowerShell/PowerShell/releases/download/7.5.0/powershell-7.5.0-osx-x64.pkg -[25]: https://github.com/PowerShell/PowerShell/releases/download/7.5.0/powershell-7.5.0-osx-x64.tar.gz +[22]: https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/powershell-7.5.0-osx-arm64.pkg +[23]: https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/powershell-7.5.0-osx-arm64.tar.gz +[24]: https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/powershell-7.5.0-osx-x64.pkg +[25]: https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/powershell-7.5.0-osx-x64.tar.gz [26]: https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html diff --git a/reference/docs-conceptual/install/install-alpine.md b/reference/docs-conceptual/install/install-alpine.md index cf251af0b894..b2784b3f4a4b 100644 --- a/reference/docs-conceptual/install/install-alpine.md +++ b/reference/docs-conceptual/install/install-alpine.md @@ -23,7 +23,7 @@ Installation on Alpine is based on downloading tar.gz package from the [releases to the package depends on the version of PowerShell you want to install. - PowerShell 7.4 - `https://github.com/PowerShell/PowerShell/releases/download/v7.4.7/powershell-7.4.7-linux-musl-x64.tar.gz` -- PowerShell 7.5 - `https://github.com/PowerShell/PowerShell/releases/download/7.5.0/powershell-7.5.0-linux-musl-x64.tar.gz` +- PowerShell 7.5 - `https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/powershell-7.5.0-linux-musl-x64.tar.gz` Then, in the terminal, execute the following shell commands to install PowerShell 7.4: diff --git a/reference/docs-conceptual/install/install-debian.md b/reference/docs-conceptual/install/install-debian.md index 19a8f47a19f7..f23f843f7f89 100644 --- a/reference/docs-conceptual/install/install-debian.md +++ b/reference/docs-conceptual/install/install-debian.md @@ -1,6 +1,6 @@ --- description: Information about installing PowerShell on Debian Linux -ms.date: 01/23/2025 +ms.date: 01/29/2025 title: Installing PowerShell on Debian --- # Installing PowerShell on Debian @@ -74,7 +74,7 @@ The link to the current version is: - PowerShell 7.4 (LTS) universal package for supported versions of Debian - `https://github.com/PowerShell/PowerShell/releases/download/v7.4.7/powershell_7.4.7-1.deb_amd64.deb` - PowerShell 7.5 universal package for supported versions of Debian - - `https://github.com/PowerShell/PowerShell/releases/download/7.5.0/powershell-preview_7.5.0-1.deb_amd64.deb` + - `https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/powershell_7.5.0-1.deb_amd64.deb` The following shell script downloads and installs the current release of PowerShell. You can change the URL to download the version of PowerShell that you want to install. diff --git a/reference/docs-conceptual/install/install-rhel.md b/reference/docs-conceptual/install/install-rhel.md index 071b8b08297e..381bd6628692 100644 --- a/reference/docs-conceptual/install/install-rhel.md +++ b/reference/docs-conceptual/install/install-rhel.md @@ -1,6 +1,6 @@ --- description: Information about installing PowerShell on Red Hat Enterprise Linux (RHEL) -ms.date: 01/23/2025 +ms.date: 01/29/2025 title: Installing PowerShell on Red Hat Enterprise Linux (RHEL) --- # Installing PowerShell on Red Hat Enterprise Linux (RHEL) @@ -69,7 +69,7 @@ The link to the current version is: - PowerShell 7.4.7 universal package for supported versions of RHEL - `https://github.com/PowerShell/PowerShell/releases/download/v7.4.7/powershell-7.4.7-1.rh.x86_64.rpm` - PowerShell 7.5.0 universal package for supported versions of RHEL - - `https://github.com/PowerShell/PowerShell/releases/download/7.5.0/powershell-preview-7.5.0_preview.2-1.rh.x86_64.rpm` + - `https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/powershell-7.5.0-1.rh.x86_64.rpm` The following shell script downloads and installs the current preview release of PowerShell. You can change the URL to download the version of PowerShell that you want to install. diff --git a/reference/docs-conceptual/install/install-ubuntu.md b/reference/docs-conceptual/install/install-ubuntu.md index d88873a411e3..bceafa382a45 100644 --- a/reference/docs-conceptual/install/install-ubuntu.md +++ b/reference/docs-conceptual/install/install-ubuntu.md @@ -1,6 +1,6 @@ --- description: Information about installing PowerShell on Ubuntu -ms.date: 01/27/2025 +ms.date: 01/29/2025 title: Installing PowerShell on Ubuntu --- # Installing PowerShell on Ubuntu @@ -86,7 +86,7 @@ The link to the current version is: - PowerShell 7.4 (LTS) universal package for supported versions of Ubuntu - `https://github.com/PowerShell/PowerShell/releases/download/v7.4.7/powershell_7.4.7-1.deb_amd64.deb` - PowerShell 7.5 universal package for supported versions of Ubuntu - - `https://github.com/PowerShell/PowerShell/releases/download/7.5.0/powershell-preview_7.5.0-1.deb_amd64.deb` + - `https://github.com/PowerShell/PowerShell/releases/download/v7.5.0/powershell-preview_7.5.0-1.deb_amd64.deb` The following shell script downloads and installs the current preview release of PowerShell. You can change the URL to download the version of PowerShell that you want to install. diff --git a/reference/docs-conceptual/whats-new/What-s-New-in-PowerShell-75.md b/reference/docs-conceptual/whats-new/What-s-New-in-PowerShell-75.md index c07c55a9db2a..cd989448ef42 100644 --- a/reference/docs-conceptual/whats-new/What-s-New-in-PowerShell-75.md +++ b/reference/docs-conceptual/whats-new/What-s-New-in-PowerShell-75.md @@ -1,7 +1,7 @@ --- title: What's New in PowerShell 7.5 description: New features and changes released in PowerShell 7.5 -ms.date: 01/23/2025 +ms.date: 01/29/2025 --- # What's New in PowerShell 7.5 @@ -9,7 +9,8 @@ ms.date: 01/23/2025 PowerShell 7.5.0 includes the following features, updates, and breaking changes. PowerShell 7.5 is built on .NET 9.0.1 GA release. -For a complete list of changes, see the [CHANGELOG][chg] in the GitHub repository. +For a complete list of changes, see the [CHANGELOG][chg] in the GitHub repository. For more +information about .NET 9, see [What's new in .NET 9][07]. ## Breaking Changes @@ -21,6 +22,9 @@ For a complete list of changes, see the [CHANGELOG][chg] in the GitHub repositor - The Windows installer now remembers installation options used and uses them to initialize options for the next installation ([#20420][20420]) (Thanks @reduckted!) - `ConvertTo-Json` now serializes `BigInteger` as a number ([#21000][21000]) (Thanks @jborean93!) +- .NET 9 removed the `BinaryFormatter` implementation causing a regression in the `Out-GridView` + cmdlet. The search feature of `Out-GridView` doesn't work in PowerShell 7.5. This problem is + tracked in [Issue #24749][24749]. ## Updated modules @@ -120,7 +124,7 @@ Many thanks to **@ArmaanMcleod** and others for all their work to improve tab co @jborean93!) - Add telemetry to check for specific tags when importing a module ([#20371][20371]) - Add `PSAdapter` and `ConsoleGuiTools` to module load telemetry allowlist ([#20641][20641]) -- Add Winget module to track usage ([#21040][21040]) +- Add WinGet module to track usage ([#21040][21040]) - Ensure the filename is not null when logging WDAC ETW events ([#20910][20910]) (Thanks @jborean93!) - Fix four regressions introduced by the WDAC logging feature ([#20913][20913]) @@ -189,25 +193,25 @@ $tests = @{ $groupResult = foreach($test in $tests.GetEnumerator()) { $ms = (Measure-Command { & $test.Value -Count $_ }).TotalMilliseconds -[pscustomobject]@{ + [pscustomobject]@{ CollectionSize = $_ Test = $test.Key TotalMilliseconds = [math]::Round($ms, 2) } -[GC]::Collect() - [GC]::WaitForPendingFinalizers() + [GC]::Collect() + [GC]::WaitForPendingFinalizers() } -$groupResult = $groupResult | Sort-Object TotalMilliseconds - $groupResult | Select-Object *, @{ - Name = 'RelativeSpeed' - Expression = { - $relativeSpeed = $_.TotalMilliseconds / $groupResult[0].TotalMilliseconds - $speed = [math]::Round($relativeSpeed, 2).ToString() + 'x' - if ($speed -eq '1x') { $speed } else { $speed + ' slower' } - } - } | Format-Table -AutoSize + $groupResult = $groupResult | Sort-Object TotalMilliseconds + $groupResult | Select-Object *, @{ + Name = 'RelativeSpeed' + Expression = { + $relativeSpeed = $_.TotalMilliseconds / $groupResult[0].TotalMilliseconds + $speed = [math]::Round($relativeSpeed, 2).ToString() + 'x' + if ($speed -eq '1x') { $speed } else { $speed + ' slower' } + } + } | Format-Table -AutoSize } ``` @@ -249,7 +253,7 @@ CollectionSize Test TotalMilliseconds RelativeSpeed -[chg]: https://github.com/PowerShell/PowerShell/blob/master/CHANGELOG/preview.md +[chg]: https://github.com/PowerShell/PowerShell/blob/master/CHANGELOG/7.5.md [01]: ../learn/experimental-features.md#psnativewindowstildeexpansion [02]: ../learn/experimental-features.md#pscommandnotfoundsuggestion @@ -257,6 +261,7 @@ CollectionSize Test TotalMilliseconds RelativeSpeed [04]: ../learn/experimental-features.md#psmoduleautoloadskipofflinefiles [05]: ../learn/experimental-features.md#psredirecttovariable [06]: ../learn/experimental-features.md#psserializejsonlongenumasnumber +[07]: /dotnet/core/whats-new/dotnet-9/overview) [19896]: https://github.com/PowerShell/PowerShell/pull/19896 [20014]: https://github.com/PowerShell/PowerShell/pull/20014 @@ -328,3 +333,4 @@ CollectionSize Test TotalMilliseconds RelativeSpeed [24115]: https://github.com/PowerShell/PowerShell/pull/24115 [24228]: https://github.com/PowerShell/PowerShell/pull/24228 [24236]: https://github.com/PowerShell/PowerShell/pull/24236 +[24749]: https://github.com/PowerShell/PowerShell/issues/24749