After releasing the preview versions of the next major version of PowerShell, Microsoft finally released PowerShell version 7.4.0 Long Term Support (LTS). LTS versions are supported for 3 years, as opposed to the regular versions that are supported for only 18 months.
PowerShell 7.4 will likely replace PowerShell 7.2, also an LTS release. However, PowerShell 7.2 is supported for another year, which gives ample time to the developers and programs to switch to the updated version.
PowerShell 7.4 was developed in .NET 8, which was also recently released. Therefore, apart from the minor build and packaging improvements, it also packs performance improvements.
Other than that, Microsoft has also released updates for PowerShell 7.3 and 7.2. More precisely, PowerShell versions 7.3.10 and 7.2.17 LTS have been released. These only include minor build and packaging improvements.
This guide highlights the new features in these PowerShell updates and provides direct download links for offline installers.
Changes and Improvements
PowerShell 7.4.0
- [Breaking changes]
- Nano server docker images aren’t available for this release.
- Added the ProgressAction parameter to the Common Parameters.
- Updated some PowerShell APIs to throw ArgumentException instead of ArgumentNullException when the argument is an empty string.
- Removed code related to
#requires -pssnapin
. Test-Json
now uses Json.Schema.Net instead of Newtonsoft.Json.Schema. With this change,Test-Json
no longer supports the older Draft 4 schemas.- Output from
Test-Connection
now includes more detailed information about TCP connection tests.
- [General cmdlet updates and fixes]
- Added a missing
ConfigureAwait(false)
call to webcmdlets so they don’t block. - Fix
Group-Object
so output uses current culture. - Block getting help from network locations in restricted remoting sessions.
- Added a missing
- [Build and Packaging Improvements]
- Added internal .NET SDK URL parameter to release pipeline.
- Updated the CGManifest file for the v7.4.0 release.
- Fixed repository root for the nuget.config.
- Added internal nuget feed to compliance build.
- Copied the Azure blob with the PowerShell global tool to the private blob and moved to CDN during release.
- Fixed the release build by making the internal SDK parameter optional.
- Made internal .NET SDK URL as a parameter for release build.
- Updated the
PSResourceGet
version for1.0.1
release. - Bumped .NET 8 to 8.0.0 RTM build.
- Removed Auth header content from ErrorRecord.
- Fixed the setting of the variable to consume the internal SDK source.
- Bumped Microsoft.Management.Infrastructure to v3.0.0.
- Bumped
Microsoft.PowerShell.Native
tov7.4.0
.
Other than these, there are a plethora of improvements, changes, and fixes in PowerShell 7.4. To read more in detail refer to the PowerShell 7.4.0 Microsoft announcement.
PowerShell 7.3.10
- [Build and Packaging Improvements]
- Added internal .NET SDK URL parameter to release pipeline.
- Fixed the release build by making the internal SDK parameter optional.
- Made internal .NET SDK URL as a parameter for release build.
- Updated the Notices file and cgmanifest.
- Updated .NET to 7.0.404.
- Copied Azure blob with the PowerShell global tool to the private blob and moved to CDN during the release.
PowerShell 7.2.17 LTS
- [Build and Packaging Improvements]
- Bumped to .NET 6.0.417.
- Copied Azure blob with the PowerShell global tool to the private blob and moved to CDN during the release.
Download PowerShell 7.4.0
You can download PowerShell 7.4.0 by clicking on the respective link below:
Version | Platform | Download |
---|---|---|
PowerShell 7.4.0 | Windows 10, 11, 8.1, 7 | x64 x86 |
PowerShell 7.4.0 | MacOS | 64-bit ARM64 |
PowerShell 7.4.0 | Linux | Redhat Debian |
Refer to this PowerShell 7.4.0 download page for more download options.
Download PowerShell 7.3.10
You can download PowerShell 7.3.10 by clicking on the respective link below:
Version | Platform | Download |
---|---|---|
PowerShell 7.3.10 | Windows 10, 11, 8.1, 7 | x64 x86 |
PowerShell 7.3.10 | MacOS | 64-bit ARM64 |
PowerShell 7.3.10 | Linux | Redhat Debian |
Refer to this PowerShell 7.3.10 download page for more download options.
Download PowerShell 7.2.17
You can download PowerShell 7.2.17 by clicking on the respective link below:
Version | Platform | Download |
---|---|---|
PowerShell 7.2.17 | Windows 10, 11, 8.1, 7 | x64 x86 |
PowerShell 7.2.17 LTS | MacOS | 64-bit ARM64 |
PowerShell 7.2.17 LTS | Linux | Redhat Debian |
Refer to this PowerShell 7.2.17 download page for more download options.
Install PowerShell 7.4, 7.3.10, 7.2.16
Here is how you can install Windows PowerShell on Windows 11, 10, 8.1, and Windows 7:
-
Download and execute the respective MSI file from the links above.
The installation wizard will now run.
-
Click Next.
-
Select the destination folder for the installation and click Next again.
-
Select the optional features you want to install and click Next.
Select the optional features to install, such as adding PowerShell to environment variables, enabling PowerShell remoting, adding PowerShell to the context menu, etc.
-
Click Next again.
Leave default settings and proceed with the installation
-
Click Install to begin the installation.
-
Once installed, click Finish.
-
Now type in “pwsh” in the Run Command box to confirm the installation.
Learn more about PowerShell and PowerShell Core. You can also download and install PowerShell over the network.
How to uninstall PowerShell
If you do not require PowerShell in the future then you may remove it from your computer. Here is how:
-
Press the Windows Key + R to open the Run Command box.
-
Type in “appwiz.cpl” and press Enter to open the Programs and Features applet.
-
Right-click on the PowerShell version that you want to remove and then click Uninstall.
If asked for confirmation, click Yes.
The selected version of PowerShell will now be removed from your computer.
PowerShell 7 Release History
Complete Version | Release Date | Significant Improvements | Changelog and Downloads |
7.4.0 | 16-Nov-23 | Updated versions of PSResourceGet and PSReadLine, tab completion, web cmdlets, and engine improvements | PowerShell 7.4.0 complete changelog |
7.3.10 | 16-Nov-23 | Added internal .NET SDK URL parameter to release pipeline, fixed release build by making the internal SDK parameter optional | PowerShell 7.3.10 complete changelog |
7.3.9 | 26-Oct-23 | – General build and packaging improvements | PowerShell 7.3.9 complete changelog |
7.3.8 | 10-Oct-23 | – General build and packaging improvements | PowerShell 7.3.8 complete changelog |
7.3.6 | 13-Jul-23 | – General build and packaging improvements | PowerShell 7.3.6 complete changelog |
7.3.5 | 17-Jun-23 | – Includes general build and packaging improvements | PowerShell 7.3.5 complete changelog |
7.3.4 | 13-Apr-23 | – Includes engine updates and general build and packaging improvements | PowerShell 7.3.4 complete changelog |
7.3.3 | 23-Feb-23 | – General build and packaging improvements | PowerShell 7.3.3 complete changelog |
7.3.2 | 24-Jan-23 | -Includes engine, build, and general cmdlet updates | PowerShell 7.3.2 complete changelog |
7.3.1 | 13-Dec-22 | -Several packages updated along with versions -Some issues were fixed | PowerShell 7.3.1 complete changelog |
7.3.0 | 8-Nov-22 | -Added test for the framework-dependent package in the pipeline -Fixes for building test artifacts -AzCopy has been removed | PowerShell 7.3 complete changelog |