#Windows #PowerShell #macOS #7.4.0
Built on the .NET Framework, Windows PowerShell allows IT professionals to manage computers via commands or scripts, improving productivity through system automation.
Installation Process
Download the PKG package powershell-7.2.2-osx-x64.pkg from the Download Now button onto your macOS machine.
You can double-click the file and follow the prompts, or install it from the terminal:
- sudo installer -pkg powershell-7.1.2-osx-x64.pkg -target /
Install OpenSSL. OpenSSL is needed for PowerShell remoting and CIM operations.
What’s New
Bump .NET 8 to 8.0.0 RTM build
- Add internal .NET SDK URL parameter to release pipeline (Internal 28474)
- Update the CGManifest file for v7.4.0 release (Internal 28457)
- Fix repository root for the nuget.config (Internal 28456)
- Add internal nuget feed to compliance build (Internal 28449)
- Copy azure blob with PowerShell global tool to private blob and move to CDN during release (Internal 28438)
- Fix release build by making the internal SDK parameter optional (#20658) (Internal 28440)
- Make internal .NET SDK URL as a parameter for release builld (#20655) (Internal 28428)
- Update PSResourceGet version for 1.0.1 release (#20652) (Internal 28427)
- Bump .NET 8 to 8.0.0 RTM build (Internal 28360)
- Remove Auth header content from ErrorRecord (Internal 28409)
- Fix setting of variable to consume internal SDK source (Internal 28354)
- Bump Microsoft.Management.Infrastructure to v3.0.0 (Internal 28352)
- Bump Microsoft.PowerShell.Native to v7.4.0 (#20617) (#20624)
Previous Release Notes:
Security Fixes
- Block getting help from network locations in restricted remoting sessions (Internal 27698)
Build and Packaging Improvements
- Bump .NET SDK version to 7.0.401
- Update man page to match current help for pwsh (#20249)
Previous Release Notes:
PowerShell 7.3 is the next stable release, built on .NET 7.0.
PowerShell 7.3 includes the following features, updates, and breaking changes.
Breaking Changes and Improvements
- In this release, Windows APIs were updated or removed for compliance, which means that PowerShell 7.3 doesn’t run on Windows 7. While Windows 7 is no longer supported, previous builds could run on Windows 7.
- PowerShell Direct for Hyper-V is only supported on Windows 10, version 1809 and higher.
- Test-Connection is broken due to an intentional breaking change in .NET 7. It’s tracked by #17018
- Add clean block to script block as a peer to begin, process, and end to allow easy resource cleanup (#15177)
- Change default for $PSStyle.OutputRendering to Host
- Make Out-String and Out-File keep string input unchanged (#17455)
- Move the type data definition of System.Security.AccessControl.ObjectSecurity to the Microsoft.PowerShell.Security module (#16355) (Thanks @iSazonov!)
- Before this change, a user doesn’t need to explicitly import the Microsoft.PowerShell.Security module to use the code properties defined for an instance of System.Security.AccessControl.ObjectSecurity.
- After this change, a user needs to explicitly import Microsoft.PowerShell.Security module in order to use those code properties and code methods.
Tab completion improvements
- PowerShell 7.3 includes PSReadline 2.2.6, which enables Predictive IntelliSense by default. For more information, see about_PSReadLine.
- Fix tab completion within the script block specified for the ValidateScriptAttribute. (#14550) (Thanks @MartinGC94!)
- Added tab completion for loop labels after break/continue (#16438) (Thanks @MartinGC94!)
- Improve Hashtable completion in multiple scenarios (#16498) (Thanks @MartinGC94!)
- Parameter splatting
- Arguments parameter for Invoke-CimMethod
- FilterHashtable parameter for Get-WinEvent
- Property parameter for the CIM cmdlets
- Removes duplicates from member completion scenarios
- Support forward slashes in network share (UNC path) completion (#17111) (Thanks @sba923!)
- Improve member autocompletion (#16504) (Thanks @MartinGC94!)
- Prioritize ValidateSet completions over Enums for parameters (#15257) (Thanks @MartinGC94!)
- Add type inference support for generic methods with type parameters (#16951) (Thanks @MartinGC94!)
- Improve type inference and completions (#16963) (Thanks @MartinGC94!)
- Allows methods to be shown in completion results for ForEach-Object -MemberName
- Prevents completion on expressions that return void like ([void](“”))
- Allows non-default Class constructors to show up when class completion is based on the AST
- Improve type inference for $_ (#17716) (Thanks @MartinGC94!)
- Fix type inference for ICollection (#17752) (Thanks @MartinGC94!)
- Prevent braces from being removed when completing variables (#17751) (Thanks @MartinGC94!)
- Add completion for index expressions for dictionaries (#17619) (Thanks @MartinGC94!)
- Fix type completion for attribute tokens (#17484) (Thanks @MartinGC94!)
- Improve dynamic parameter tab completion (#17661) (Thanks @MartinGC94!)
- Avoid binding positional parameters when completing parameter in front of value (#17693) (Thanks @MartinGC94!)
Engine Updates and Fixes
- Add instrumentation to AmsiUtil and make the init variable readonly (#18727)
- Fix support for NanoServer due to the lack of AMSI (#18882)
- Adding missing guard for telemetry optout to avoid NullReferenceException when importing modules (#18949) (Thanks @powercode!)
- Fix VtSubstring helper method to correctly check chars copied (#19240)
- Fix ConciseView to handle custom ParserError error records (#19239)
Tests
- Backport CI fixed from #18508 (#18626)
- Mark charset test as pending (#18609)
Build and Packaging Improvements
Update package versions.
- SHA256 Hashes of the release artifacts
- D8CD0FE9D8462435D875B034D1DD3E0A1223CD6A62F867F4CE2FF4BE7D899491
- powershell_7.3.1-1.deb_amd64.deb
- C23B461A443AB87F9C11CE69FB625A01D7FD141F30CA42BEC7A86CEFED79EBAC
- powershell-7.3.1-1.cm.x86_64.rpm
- 9DC84952CEE2C3A8D644265A8E02EDE779DF986D222786182BDFE199CBD93149
- powershell-7.3.1-1.rh.x86_64.rpm
- BC5695F06121DBF8EBF56A842B8723E241FD5299BB34DB42B367A4157B9A9DA8
- powershell-7.3.1-linux-alpine-x64.tar.gz
- 043CBA55FC9208FCC51074D7174E295D4B46D2EDCABD03E107736BD6731DDF66
- powershell-7.3.1-linux-arm32.tar.gz
- 3AF65D5DB14D3B8D2C7F1E756821B036ED8629CC4BC59F7F6B260F6AF4DA72CA
- powershell-7.3.1-linux-arm64.tar.gz
- F0E03A128171E596A2387D86EF659F3A09D3700BE900D62BDEA3156D005EDA68
- powershell-7.3.1-linux-x64.tar.gz
- 68C2C0531A6796871DD7341B66C7085DDCC70570EB619DA3DBED769BCE4EE371
- powershell-7.3.1-linux-x64-fxdependent.tar.gz
- D6032C02D57DCBC3FAE5C0D2572DEA5682504811061BD1635A07B70B137E21FA
- powershell-7.3.1-osx-arm64.pkg
- ADB1E56FFF1E3B4BD1403E75089B92EF8B7432DCA6FE48CF94ED84A16936CD7E
- powershell-7.3.1-osx-arm64.tar.gz
- 66AE3E155043011A0CB7025E748C385C101C464FC105F39818DA678B702154BD
- powershell-7.3.1-osx-x64.pkg
- B6C8D4F8ED0CD1854CD00FE8A7816428093E71FDDC30546A3406C07F409C02AE
- powershell-7.3.1-osx-x64.tar.gz
- 18529E2EF589DACFA62B3ADAA0640EDABF5F31FE4CC3D484D5060F93166E6156
- PowerShell-7.3.1-win.msixbundle
- F2C9247D6108B42EBCD489FC2EF52078EB450CF7282E4B91B9525A334F38B233
- PowerShell-7.3.1-win-arm32.zip
- D808FBBB91E73F39BA1629D4339F2CC6E73D0C1A51EA5FF91BA8F68861B11A5E
- PowerShell-7.3.1-win-arm64.zip
- F86C1DA8896144A0D913B85B58157B419D3A89FF357EA191081D58DE944DE354
- PowerShell-7.3.1-win-fxdependent.zip
- 12A4E9100CF6448583D205714B262A0C3EA0CA4F2056ABEFD6831A6AFB923160
- PowerShell-7.3.1-win-fxdependentWinDesktop.zip
- 9938F6F95BBD0341B1279BA859B4BF643924759534DC6B527E15528E736E3149
- PowerShell-7.3.1-win-x64.msi
- CAD0026DF877F1B195B87AAE1858E8BC8BA759C19B7440CD62E1F5432665519F
- PowerShell-7.3.1-win-x64.zip
- 997EDF93ED570C0E6559588F2E3F52CB2B043535D7022128F2A734A2D904E3F5
- PowerShell-7.3.1-win-x86.msi
- 0266C3BCF23A35E5400C8DA28BE951986454D33973E56274D0E6217B0C56829A
- PowerShell-7.3.1-win-x86.zip
- 9FA3E39DC072093F0AB86EC75C91199D91B526BEFCE80722D6FB5F6614C21547