mirror of
https://github.com/PowerShell/PowerShell
synced 2026-06-08 12:12:50 +00:00
Co-authored-by: Justin Chung <chungjustin@microsoft.com> Co-authored-by: Patrick Meinecke <SeeminglyScience@users.noreply.github.com> Co-authored-by: Travis Plunk <travis.plunk@microsoft.com> Co-authored-by: PowerShell Team Bot <69177312+pwshBot@users.noreply.github.com> Co-authored-by: Dongbo Wang <dongbow@microsoft.com> Co-authored-by: Anam Navied <anam.naviyou@gmail.com>
16 KiB
16 KiB
Preview Changelog
7.7.0-preview.1
Breaking Changes
- Add
ValidateNotNullOrEmptyattribute to the-PropertyofFormat-Table/List/Custom(#26552) - Fix to use accurate message for validating a string argument is not null and not an empty string (#26668)
- Correct handling of explicit
-[Operator]:$falseparameter values inWhere-Object(#26485) (Thanks @yotsuda!)
Engine Updates and Fixes
- Update
MaxVisitCountandMaxHashtableKeyCountifVisitorSafeValueContextindicatesSkipLimitCheckis true (#27308) - Enable usage in AppContainers (#27305)
- Delay update notification for one week to ensure all packages become available (#27095)
- Fix up default value for parameters with the
inmodifier (#26785) (Thanks @jborean93!) - Fix
WSManInstanceCOM interface withResourceURI(#26692) (Thanks @jborean93!) - Refactor the module path construction code to make it more robust and easier to maintain (#26565)
- Fix checks for local user config file paths (#26269)
General Cmdlet Updates and Fixes
- Add verbose message to
Get-Servicewhen properties cannot be returned (#27109) (Thanks @reabr!) - Fix
Remove-Itemconfirmation message to use provider path instead (#27123) (Thanks @scuzqy!) - PSStyle: validate background index against
BackgroundColorMap(#27106) (Thanks @cuiweixie!) - Update PowerShell Profile DSC resource manifests to allow null for content (#26929)
- Add
SubjectAlternativeNameproperty to theSignatureobject returned fromGet-AuthenticodeSignature(#26252) - Mark
-NoTypeInformationas obsolete no-op and evaluate-IncludeTypeInformationon by value on Csv cmdlets (#26719) (Thanks @yotsuda!) - Support
TargetObjectposition inParserErrors(#26649) (Thanks @jborean93!) - Fix the CLR internal error and null ref exception when running
show-commandwith PowerShell API (#26669) - Fix
Test-Jsonfalse positive errors when usingoneOforanyOfin schema (#26618) (Thanks @yotsuda!) - Add
ToRegexmethod toWildcardPatternclass (#26515) (Thanks @yotsuda!) - Add
-ExcludePropertyparameter toFormat-*cmdlets (#26514) (Thanks @yotsuda!) - Fix NOTES section formatting in comment-based help (#26512) (Thanks @yotsuda!)
- Disable AMSI content logging in release (#26235) (Thanks @xtqqczze!)
- Add tab completion for
$PSBoundParameters.Keysswitch cases and access patterns (#26483) (Thanks @yotsuda!) - Fix formatting to properly handle the
ResetVT sequences that appear in the middle of a string (#26424) - Add
-Extensionparameter toJoin-Pathcmdlet (#26482) (Thanks @yotsuda!) - Make
Export-Csv-Appendand-NoHeadermutually exclusive (#26472) (Thanks @yotsuda!) - Respect
-Qualifier/-NoQualifier/-Leaf/-IsAbsolute:$falseinSplit-Path(#26474) (Thanks @yotsuda!) - Respect
-UseWindowsPowerShell:$falseinNew-PSSession(#26469) (Thanks @yotsuda!) - Respect
-Repeat/-MtuSize/-Traceroute:$falseinTest-Connection(#26479) (Thanks @yotsuda!) - Fix
Invoke-RestMethodto support read-only files in multipart form data (#26454) (Thanks @yotsuda!) - Respect
-ListAvailable:$falseinGet-TimeZone(#26463) (Thanks @yotsuda!) - Respect
-Shuffle:$falseinGet-SecureRandom(#26460) (Thanks @yotsuda!) - Respect
-Shuffle:$falseinGet-Random(#26457) (Thanks @yotsuda!) - DSC v3 resource for Powershell Profile (#26157)
- Make the experimental feature
PSFeedbackProviderstable (#26343) - Make some experimental features stable (#26348)
- Add
PSApplicationOutputEncodingvariable (#21219) (Thanks @jborean93!) - Dynamically evaluate width of
LastWriteTimefor formatting output on Unix (#24624) (Thanks @MathiasMagnus!) - Handle null reference exception in CsvCommands.cs:
ConvertPSObjectToCSV(#26144) (Thanks @mikkas456!) - Improve
ValidateLengtherror message consistency and refactor validation tests (#25806) (Thanks @jorgeasaurus!) - Correct handling of explicit
-Since:$falseparameter value inGet-Uptime(#26141) (Thanks @logiclrd!) - Add property and event for debug attach (#25788) (Thanks @jborean93!)
- Fix memory leak in
GetFileShares(#25896) (Thanks @xtqqczze!) - Correct handling of explicit
-Empty:$falseparameter value inNew-Guid(#26140) (Thanks @logiclrd!)
Code Cleanup
We thank the following contributors!
@xtqqczze, @yotsuda, @ThioJoe, @rwp0, @amritanand-py
- Fix
IDisposableimplementation in sealed classes (#26215) (Thanks @xtqqczze!) - Enable CA1852: Seal internal types (#25890) (Thanks @xtqqczze!)
- Remove obsolete
CA2006rule suppression (#25939) (Thanks @xtqqczze!) - Use consistent indentation in the file
HelpersCommon.psm1(#26608) - Centralize
ExcludePropertyfilter application inViewGeneratorbase class (#26574) (Thanks @yotsuda!) - Refactor
IsComputerNameValidcharacter validation (#26274) (Thanks @xtqqczze!) - Remove obsolete test/docker/networktest directory (#26388)
- Avoid regex for exact word matching in
DscClassCache(#26306) (Thanks @xtqqczze!) - Enable analyzers: Use char overload (#26301) (Thanks @xtqqczze!)
- Enable CA1200: Avoid using cref tags with a prefix (#26298) (Thanks @xtqqczze!)
- Remove unused timeout variable from
RemoteHyperVTestsclass (#26297) (Thanks @xtqqczze!) - Enable CA2022: Avoid inexact read with
Stream.Read(#25814) (Thanks @xtqqczze!) - Fix a few simple typos in comments and string outputs (#25805) (Thanks @ThioJoe!)
- Remove unused Azure Devops windows CI workflows (#26245)
- Fix CA1837: Use
Environment.ProcessId(#26242) (Thanks @xtqqczze!) - Enable IDE0080: RemoveConfusingSuppressionForIsExpression (#26206) (Thanks @xtqqczze!)
- Remove redundant
CharSetfromStructLayoutattributes. Part 1 (#26216) (Thanks @xtqqczze!) - Fix IDE0083: UseNotPattern (#26213) (Thanks @xtqqczze!)
- Fix
IDE0049forstringinSystem.Management.Automation(#25921) (Thanks @xtqqczze!) - Fix
IDE0049forobjectinSystem.Management.Automation. Part 1 (#25923) (Thanks @xtqqczze!) - Replace stackallocs with collection expressions (#25803) (Thanks @xtqqczze!)
- Capitalize Windows in
PSNativeWindowsTildeExpansionexperimental feature description (#25266) (Thanks @rwp0!) - Fix
SA1028: Code should not contain trailing whitespace. Part 1. (#26203) (Thanks @xtqqczze!) - Fix IDE0083: UseNotPattern (#26209) (Thanks @xtqqczze!)
- Fix CA1852: Seal internal types. Part 1 (#26205) (Thanks @xtqqczze!)
- Enable IDE0019: InlineAsTypeCheck (#25920) (Thanks @xtqqczze!)
- Fix mismatched indentation in
.config/suppress.json(#26192) (Thanks @xtqqczze!) - Replace custom method with
File.ReadAllText()in ScriptAnalysis.cs (#26060) (Thanks @amritanand-py!) - Avoid possible multiple enumerations in
ImportModuleCommand.IsPs1xmlFileHelper_IsPresentInEntries(#26104) (Thanks @xtqqczze!) - Enable
SA1206: Declaration keywords should follow order (#24973) (Thanks @xtqqczze!) - Disable IDE0049: PreferBuiltInOrFrameworkType (#26094) (Thanks @xtqqczze!)
- Enable CA1853: Unnecessary call to
Dictionary.ContainsKey(key)(#26106) (Thanks @xtqqczze!) - Enable CA1860: Avoid using
Enumerable.Any()extension method (#26109) (Thanks @xtqqczze!) - Enable CA1858: Use
StartsWithinstead ofIndexOf(#26107) (Thanks @xtqqczze!) - Add
CodeQLsuppressions forNativeCommandProcessor(#26729)
Tools
- Add GitOps policy to auto-label backport candidates when CL-BuildPackaging is added (#26881)
- Add Pester CI Analysis Skill (#26806)
- Delete unused winget release script (#26683)
- Improve error message from
Start-NativeExecution(#26500) (Thanks @logiclrd!) - Add default CODEOWNERS entry for maintainers (#26660)
- Add Attack Surface Analyzer Script (#26379)
- Add merge conflict marker detection to linux-ci workflow and refactor existing actions to use reusable get-changed-files action (#26350)
- Add reusable get-changed-files action and refactor existing actions (#26355)
- Refactor analyze job to reusable workflow and enable on Windows CI (#26322)
- Create github copilot setup workflow (#26285)
- Update dependabot.yml to monitor release/* branches (#26251)
Tests
- Fix the
PSNativeCommandArgumentPassingtest (#27057) - Fix
Import-Module.Tests.ps1to handle Arm32 platform (#26862) - Add comprehensive PowerShell class tests for
ConvertTo-Json(#26769) (Thanks @yotsuda!) - Add comprehensive
PSCustomObjecttests forConvertTo-Json(#26743) (Thanks @yotsuda!) - Add GitHub Actions annotations for Pester test failures (#26789)
- Add comprehensive depth and multilevel composition tests for
ConvertTo-Json(#26744) (Thanks @yotsuda!) - Add comprehensive array and dictionary tests for
ConvertTo-Json(#26742) (Thanks @yotsuda!) - Add comprehensive scalar type tests for
ConvertTo-Json(#26736) (Thanks @yotsuda!) - Fix the fuzzy test (#26402)
- Add Fuzz Tests (#26384)
- Fix merge conflict checker for empty file lists and filter *.cs files (#26365)
- Fix linux_packaging job being skipped when only packaging files change (#26315)
- Use
[initialsessionstate]type accelerator (#25912) (Thanks @xtqqczze!) - Add markdown link verification for PRs (#26219)
- Check for
GetWindowPlacementsuccess (#26122) (Thanks @xtqqczze!)
Build and Packaging Improvements
We thank the following contributors!
@powercode, @kasperk81, @xtqqczze
- Update branch for release (#27291)
- Remove package verification from the notice pipeline (#27289)
- Remove MSI from publishing pipeline (#27213)
- Externalize
findMissingNoticestarget framework selection with ordered Windows fallback (#27269) - Fix the package pipeline by adding in PDP-Media directory (#27254)
- Bump actions/checkout from 4 to 6.0.2 (#27206)
- Build, package, and create VPack for the PowerShell-LTS store package within the same
msixbundle-vpackpipeline (#150) (#27209) - Pin ready-to-merge.yml reusable workflow to commit SHA (#27204)
- Change the display name of
PowerShell-LTSMSIX package to "PowerShell LTS" (#27203) - [StepSecurity] ci: Harden GitHub Actions (#27201)
- [StepSecurity] ci: Harden GitHub Actions (#27202)
- Redo windows image fix to use latest image (#27198)
- Separate Store Package Creation, Skip Polling for Store Publish, Clean up PDP-Media (#27024)
- Revert "Fetch latest ICU release version dynamically" (#27127)
- Update package references and move to .NET SDK 11.0-preview.2 (#27117)
- Add comment-based help documentation to
build.psm1functions (#27122) (Thanks @powercode!) - Bump github/codeql-action from 3.30.3 to 4.35.1 (#27120)
- Select New MSIX Package Name (#27096)
- Separate Official and NonOfficial templates for ADO pipelines (#26897)
- Update the
PhoneProductIdto be the official LTS id used by Store (#27077) - release-upload-buildinfo: replace version-comparison channel gating with metadata flags (#27074)
- Update build to create two msix's and msixbundles for LTS and Stable (#27056)
- Update
metadata.jsonfor the v7.6.0 release (#27054) - Move
_GetDependenciesMSBuild target from dynamic generation inbuild.psm1intoMicrosoft.PowerShell.SDK.csproj(#27052) - Fix PMC repo URL for RHEL10 (#27059)
- Create Linux LTS deb/rpm packages for LTS releases (#27049)
- Create LTS pkg and non-LTS pkg for macOS for LTS releases (#27039)
- Fix the container image for vPack, MSIX vPack and Package pipelines (#27015)
- Update
Microsoft.PowerShell.PSResourceGetversion to 1.2.0 (#27003) - Fix ConvertFrom-ClearlyDefinedCoordinates to handle API object coordinates (#26893)
- Bump actions/upload-artifact from 4 to 7 (#26914)
- Bump actions/dependency-review-action from 4.7.3 to 4.9.0 (#26938)
- Hardcode Official templates (#26928)
- Add PMC packages for debian13 and rhel10 (#26912)
- Split TPN manifest and Component Governance manifest (#26891)
- Add version in description and pass store task on failure (#26885)
- Correct the package name for .deb and .rpm packages (#26877)
- Fix a preview detection test for the packaging script (#26882)
- Exclude .exe packages from publishing to GitHub (#26859)
- Update metadata.json for v7.6.0-rc.1 (#26856)
- Fetch latest ICU release version dynamically (#26827) (Thanks @kasperk81!)
- Update
LangVersiontopreview(#26214) (Thanks @xtqqczze!) - Update to .NET 11 SDK and update dependencies (#26783)
- Update outdated package references (#26771)
- Create es-metadata (#26759)
- Add policy to restrict the
Approved-LowRisklabel (#26728) - Move PowerShell build to depend on .NET SDK 10.0.102 (#26697)
- Update metadata.json to update the Latest attribute with a better name (#26380)
- Update outdated package references (#26656)
- Bring release changes from the v7.6.0-preview.6 release branch (#26627)
- Update build to use .NET SDK 10.0.100 (#26448)
- Update the macos package name for preview releases to match the previous pattern (#26429)
- Fix condition syntax for StoreBroker package tasks in MSIX pipeline (#26427)
- Fix template path for rebuild branch check in package.yml (#26425)
- Update the WCF packages to the latest version that is compatible with v4.10.3 (#26406)
- Add rebuild branch support with conditional MSIX signing (#26415)
- Optimize/split windows package signing (#26403)
- Improve ADO package build and validation across platforms (#26398)
- Update outdated test package references (#26368)
- Delete this way of collecting feedback (#26364)
- Update the
Microsoft.PowerShell.Nativepackage version (#26347) - Add log grouping to build.psm1 for collapsible GitHub Actions logs (#26326)
- Bump actions/setup-dotnet from 4 to 5 (#26327)
- Update SDK to 10.0.100-rc.2.25502.107 (#26305)
- Replace
fpmwithdpkg-debfor DEB package generation (#26281) - Replace fpm with native macOS packaging tools (pkgbuild/productbuild) (#26268)
- Separate Store Automation Service Endpoints, Resolve AppID (#26210)
- Update concurrency groups to prevent merge runs and pull request runs from canceling each other (#26257)
- Update release tags to version 7.5.4 and 7.4.13 (#26258)
- Update outdated package references (#26148)
- Refactor: Centralize xUnit tests into reusable workflow and remove legacy verification (#26243)
- Convert Azure DevOps Linux Packaging pipeline to GitHub Actions workflow (#26225)
- Update vPack name (#26090)
- Update
metadata.jsonfor v7.6.0-preview.5 release (#26158) - Bump ossf/scorecard-action from 2.4.2 to 2.4.3 (#26128)
Documentation and Help Content
- Check in
7.6.mdafter v7.6.0 release (#27063) - Update changelog for release v7.5.5 (#27014)
- Add 7.4.14 changelog (#26998)
- Update
SECURITY.mdto remove email reporting option (#26653) - Update changelog for the release v7.6.0-preview.6 (#26597)
- Explain the parameter
-UseNuGetOrgin build documentation (#26507) (Thanks @logiclrd!) - Update backport prompt (#26392)
- Add a backport prompt for copilot (#26383)
- Update
linux.mddocumentation to reflect current CI build configuration (#26255) - Add GitHub Copilot instruction files for PowerShell CI build system (#26253)
- Add documentation for publishing Pester test results in GitHub Actions (#26254)
- Remove Gitter from README (#26200) (Thanks @xtqqczze!)
- Remove nightly build status section from README.md (#26227) (Thanks @xtqqczze!)
- Update changelog for v7.5.4 and v7.4.13 (#26202)