PowerShell 7.6 changes
Microsoft's edit ·
Microsoft's commit message in MicrosoftDocs/PowerShell-Docs · commit 479dd09 · +90 −3 lines · also on GitHub
11
---
22
title: What's New in PowerShell 7.6
33
description: New features and changes released in PowerShell 7.6
4
−ms.date: 02/18/2025
4
+ms.date: 03/26/2025
55
---
66
77
# What's New in PowerShell 7.6
88
9
−PowerShell 7.6-preview.3 includes the following features, updates, and breaking changes. PowerShell
9
+PowerShell 7.6-preview.4 includes the following features, updates, and breaking changes. PowerShell
1010
7.6 is built on .NET 9.0.101 GA release.
1111
1212
For a complete list of changes, see the [CHANGELOG][04] in the GitHub repository.
1313
1414
## Updated modules
1515
16
−PowerShell 7.6-preview.3 includes the following updated modules:
16
+PowerShell 7.6-preview.4 includes the following updated modules:
1717
1818
- **Microsoft.PowerShell.PSResourceGet** v1.1.0
1919
- **PSReadLine** v2.3.6
20
+- **Microsoft.PowerShell.ThreadJob** v2.2.0
21
+- **ThreadJob** v2.1.0
2022
23
+The **ThreadJob** was renamed to **Microsoft.PowerShell.ThreadJob** module. There is no difference
24
+in the functionality of the module. To ensure backward compatibility for scripts that use the old
25
+name, the **ThreadJob** v2.1.0 module is a proxy module that points to the
26
+**Microsoft.PowerShell.ThreadJob** v2.2.0.
27
+
2128
## Breaking Changes
2229
30
+- Fix `WildcardPattern.Escape` to escape lone backticks correctly ([#25211][25211]) (Thanks
31
+ @ArmaanMcleod!)
32
+- Convert `-ChildPath` parameter to `string[]` for `Join-Path` cmdlet ([#24677][24677]) (Thanks
33
+ @ArmaanMcleod!)
2334
- Remove trailing space from event source name ([#24192][24192]) (Thanks @MartinGC94!)
2435
2536
## Tab completion improvements
⋯ 16 unchanged lines
4253
([#24907][24907]) (Thanks @ArmaanMcleod!)
4354
- Add quote handling in `Verb`, `StrictModeVersion`, `Scope` and `PropertyType` Argument
4455
Completers with single helper method ([#24839][24839]) (Thanks @ArmaanMcleod!)
56
+- Fix share completion with provider and spaces (#[19440][19440]) (Thanks @MartinGC94!)
57
+- Improve variable type inference ([#19830][19830]) (Thanks @MartinGC94!)
58
+- Add tooltips for hashtable key completions ([#17864][17864]) (Thanks @MartinGC94!)
59
+- Fix type inference of parameters in classic functions ([#25172][25172]) (Thanks @MartinGC94!)
60
+- Improve assignment type inference ([#21143][21143]) (Thanks @MartinGC94!)
61
+- Exclude **OutVariable** assignments within the same `CommandAst` when inferring variables
62
+ ([#25224][25224]) (Thanks @MartinGC94!)
63
+- Fix parameter completion when script requirements fail ([#17687][17687]) (Thanks @MartinGC94!)
64
+- Improve the completion for attribute arguments ([#25129][25129]) (Thanks @MartinGC94!)
65
+- Fix completion that relies on pseudobinding in script blocks ([#25122][25122]) (Thanks
66
+ @MartinGC94!)
67
+- Don't complete duplicate command names ([#21113][21113]) (Thanks @MartinGC94!)
68
+- Add completion for variables assigned by command redirection ([#25104][25104]) (Thanks
69
+ @MartinGC94!)
70
+- Fix `TypeName.GetReflectionType()` to work when the `TypeName` instance represents a generic type
71
+ definition within a `GenericTypeName` ([#24985][24985])
72
+- Update variable/property assignment completion so it can fallback to type inference
73
+ ([#21134][21134]) (Thanks @MartinGC94!)
74
+- Handle type inference for redirected commands ([#21131][21131]) (Thanks @MartinGC94!)
75
+- Use `Get-Help` approach to find `about_*.help.txt` files with correct locale for completions
76
+ ([#24194][24194]) (Thanks @MartinGC94!)
77
+- Fix completion of variables assigned inside Do loops ([#25076][25076]) (Thanks @MartinGC94!)
78
+- Fix completion of provider paths when a path returns itself instead of its children
79
+ ([#24755][24755]) (Thanks @MartinGC94!)
80
+- Enable completion of scoped variables without specifying scope ([#20340][20340]) (Thanks
81
+ @MartinGC94!)
82
+- Fix issue with incomplete results when completing paths with wildcards in non-filesystem providers
83
+ ([#24757][24757]) (Thanks @MartinGC94!)
4584
4685
## Cmdlet improvements
4786
⋯ 20 unchanged lines
68107
@ArmaanMcleod!)
69108
- Stringify **ErrorRecord** with empty exception message to empty string ([#24949][24949]) (Thanks
70109
@MatejKafka!)
110
+- Add `PipelineStopToken` to `Cmdlet` which will be signaled when the pipeline is stopping
111
+ ([#24620][24620]) (Thanks @jborean93!)
112
+- Fallback to AppLocker after `WldpCanExecuteFile` ([#24912][24912])
113
+- Move .NET method invocation logging to after the needed type conversion is done for method
114
+ arguments ([#25022][25022])
115
+- Fix infinite loop in variable type inference ([#25206][25206]) (Thanks @MartinGC94!)
116
+- Remove the old fuzzy suggestion and fix the local script file name suggestion ([#25177][25177])
117
+- Make `SystemPolicy` public APIs visible but non-op on Unix platforms so that they can be included
118
+ in `PowerShellStandard.Library` ([#25051][25051])
119
+- Set standard handles explicitly when starting a process with `-NoNewWindow` ([#25061][25061])
120
+- Fix tooltip for variable expansion and include desc ([#25112][25112]) (Thanks @jborean93!)
121
+- Allow empty prefix string in 'Import-Module -Prefix' to override default prefix in manifest
122
+ ([#20409][20409]) (Thanks @MartinGC94!)
123
+- Use script filepath when completing relative paths for using statements ([#20017][20017]) (Thanks
124
+ @MartinGC94!)
125
+- Allow DSC parsing through OS architecture translation layers ([#24852][24852]) (Thanks @bdeb1337!)
71126
72127
## Experimental features
73128
⋯ 10 unchanged lines
84139
[03]: ../learn/experimental-features.md#psserializejsonlongenumasnumber
85140
[04]: https://github.com/PowerShell/PowerShell/blob/master/CHANGELOG/preview.md
86141
142
+[17687]: https://github.com/PowerShell/PowerShell/pull/17687
87143
[17785]: https://github.com/PowerShell/PowerShell/pull/17785
144
+[17864]: https://github.com/PowerShell/PowerShell/pull/17864
88145
[18019]: https://github.com/PowerShell/PowerShell/pull/18019
89146
[18955]: https://github.com/PowerShell/PowerShell/pull/18955
147
+[19440]: https://github.com/PowerShell/PowerShell/pull/19440
148
+[19830]: https://github.com/PowerShell/PowerShell/pull/19830
149
+[20017]: https://github.com/PowerShell/PowerShell/pull/20017
90150
[20330]: https://github.com/PowerShell/PowerShell/pull/20330
151
+[20340]: https://github.com/PowerShell/PowerShell/pull/20340
152
+[20409]: https://github.com/PowerShell/PowerShell/pull/20409
153
+[21113]: https://github.com/PowerShell/PowerShell/pull/21113
91154
[21115]: https://github.com/PowerShell/PowerShell/pull/21115
92155
[21117]: https://github.com/PowerShell/PowerShell/pull/21117
156
+[21131]: https://github.com/PowerShell/PowerShell/pull/21131
157
+[21134]: https://github.com/PowerShell/PowerShell/pull/21134
93158
[21137]: https://github.com/PowerShell/PowerShell/pull/21137
159
+[21143]: https://github.com/PowerShell/PowerShell/pull/21143
94160
[24192]: https://github.com/PowerShell/PowerShell/pull/24192
161
+[24194]: https://github.com/PowerShell/PowerShell/pull/24194
162
+[24620]: https://github.com/PowerShell/PowerShell/pull/24620
95163
[24669]: https://github.com/PowerShell/PowerShell/pull/24669
164
+[24677]: https://github.com/PowerShell/PowerShell/pull/24677
96165
[24711]: https://github.com/PowerShell/PowerShell/pull/24711
97166
[24714]: https://github.com/PowerShell/PowerShell/pull/24714
98167
[24747]: https://github.com/PowerShell/PowerShell/pull/24747
168
+[24755]: https://github.com/PowerShell/PowerShell/pull/24755
169
+[24757]: https://github.com/PowerShell/PowerShell/pull/24757
99170
[24839]: https://github.com/PowerShell/PowerShell/pull/24839
171
+[24852]: https://github.com/PowerShell/PowerShell/pull/24852
100172
[24879]: https://github.com/PowerShell/PowerShell/pull/24879
101173
[24880]: https://github.com/PowerShell/PowerShell/pull/24880
102174
[24907]: https://github.com/PowerShell/PowerShell/pull/24907
175
+[24912]: https://github.com/PowerShell/PowerShell/pull/24912
103176
[24936]: https://github.com/PowerShell/PowerShell/pull/24936
104177
[24949]: https://github.com/PowerShell/PowerShell/pull/24949
105178
[24963]: https://github.com/PowerShell/PowerShell/pull/24963
106179
[24971]: https://github.com/PowerShell/PowerShell/pull/24971
107180
[24977]: https://github.com/PowerShell/PowerShell/pull/24977
181
+[24985]: https://github.com/PowerShell/PowerShell/pull/24985
182
+[25022]: https://github.com/PowerShell/PowerShell/pull/25022
183
+[25051]: https://github.com/PowerShell/PowerShell/pull/25051
184
+[25061]: https://github.com/PowerShell/PowerShell/pull/25061
185
+[25076]: https://github.com/PowerShell/PowerShell/pull/25076
186
+[25104]: https://github.com/PowerShell/PowerShell/pull/25104
187
+[25112]: https://github.com/PowerShell/PowerShell/pull/25112
188
+[25122]: https://github.com/PowerShell/PowerShell/pull/25122
189
+[25129]: https://github.com/PowerShell/PowerShell/pull/25129
190
+[25172]: https://github.com/PowerShell/PowerShell/pull/25172
191
+[25177]: https://github.com/PowerShell/PowerShell/pull/25177
192
+[25206]: https://github.com/PowerShell/PowerShell/pull/25206
193
+[25211]: https://github.com/PowerShell/PowerShell/pull/25211
194
+[25224]: https://github.com/PowerShell/PowerShell/pull/25224
Microsoft's Markdown source from MicrosoftDocs/PowerShell-Docs, © Microsoft Corporation, under CC BY 4.0. Changed lines with up to 3 unchanged lines around each; ChangeIntel kept this copy 10 Oct 00:24 UTC. The commit date is when the source changed, which can be hours or days before Learn published it.