📦 v7.2.0-preview.5 Release of PowerShell.
Breaking Changes
- Make PowerShell Linux deb and RPM packages universal
- Enforce AppLocker Deny configuration before Execution Policy Bypass configuration
- Disallow mixed dash and slash in command line parameter prefix
Experimental Features
-
Engine Updates and Fixes
General Cmdlet Updates and Fixes
Breaking Changes
- Make PowerShell Linux deb and RPM packages universal
- Enforce AppLocker Deny configuration before Execution Policy Bypass configuration
- Disallow mixed dash and slash in command line parameter prefix
Experimental Features
-
PSNativeCommandArgumentPassing: Use ArgumentList for native executable invocation (breaking change) Engine Updates and Fixes
General Cmdlet Updates and Fixes
📌 A PowerShell users' guide to regular expressions: part 1 and part 2 (of 3).
Even experts can be a little intimidated by reading through a noscript and meeting something like
So here is piece of good news - It won’t take much longer to understand that monster. Let’s start at the beginning.
https://jhoneill.github.io/powershell/2021/04/10/regex1.html
https://jhoneill.github.io/powershell/2021/04/11/regex2.html
Even experts can be a little intimidated by reading through a noscript and meeting something like
^\{?[0-9a-f]{8}-([0-9a-f]{4}-){3}[0-9a-f]{12}\}?$So here is piece of good news - It won’t take much longer to understand that monster. Let’s start at the beginning.
https://jhoneill.github.io/powershell/2021/04/10/regex1.html
https://jhoneill.github.io/powershell/2021/04/11/regex2.html
jhoneill.github.io
A PowerShell users' guide to regular expressions: part 1 (of 3).
PowerShell (or PWSH if you prefer). Devops (especially Azure Devops), Photography, and general thoughts
🎬 PowerShell Testing with Pester 5
0:00 Intro
2:28 About Jakub Jares
3:15 Install Pester
4:46 Overview of Pester
13:32 Practical Example
34:38 Pester VSCode Extension
37:22 Debugging in VSCode with Pester
43:24 Practical Example
1:07:00 Test Drive
1:16:00 Other Features
1:34:00 VS Code Code Coverage
1:49:00 Q&A
https://www.youtube.com/watch?v=qeiy8fRMHf8
0:00 Intro
2:28 About Jakub Jares
3:15 Install Pester
4:46 Overview of Pester
13:32 Practical Example
34:38 Pester VSCode Extension
37:22 Debugging in VSCode with Pester
43:24 Practical Example
1:07:00 Test Drive
1:16:00 Other Features
1:34:00 VS Code Code Coverage
1:49:00 Q&A
https://www.youtube.com/watch?v=qeiy8fRMHf8
YouTube
PowerShell Testing with Pester 5
At this meeting we will have Pester owner and maintainer Jakub Jares as guest speaker.In this session the following topics are covered:0:00 Intro2:28 About...
📚 5 new modules on Microsoft Learn for PowerShell
▪️ Introduction to PowerShell
▪️ Connect commands into a pipeline
▪️ Introduction to noscripting in PowerShell
▪️ Write your first PowerShell code
▪️ Automate Azure tasks using noscripts with PowerShell
▪️ Introduction to PowerShell
▪️ Connect commands into a pipeline
▪️ Introduction to noscripting in PowerShell
▪️ Write your first PowerShell code
▪️ Automate Azure tasks using noscripts with PowerShell
PowerShell Summit 2021: Day 1
▪️ State of the Shell
▪️ Pwsh with GitHub Actions
▪️ Writing accessible Tools
▪️ Incident Management with PowerShell
▪️ State of the Shell
▪️ Pwsh with GitHub Actions
▪️ Writing accessible Tools
▪️ Incident Management with PowerShell
🎬 PowerShell Secrets Management Module - Easily use any secret provider
https://www.youtube.com/watch?v=7b0KGVI4VLY
https://www.youtube.com/watch?v=7b0KGVI4VLY
YouTube
New PowerShell Secrets Management Module - Easily use any secret provider
In this video I explore a solution to the problem of handling secrets in noscripts and having to use secret implementation specific code. The new Secrets Management module solves this.
My demo code is at https://github.com/johnthebrit/RandomStuff/blob/mas…
My demo code is at https://github.com/johnthebrit/RandomStuff/blob/mas…
Second preview of PowerShell Crescendo
A framework to rapidly develop PowerShell cmdlets for native commands, regardless of platform.
- Added support for native command elevation on Windows and Linux platforms.
- Export-CrescendoModule now exports a module manifest (psd1) along with the module file (psm1).
- Added support for generating aliases for Crescendo cmdlets
- Added support for SupportsShouldProcess.
https://devblogs.microsoft.com/powershell/announcing-powershell-crescendo-preview-2/
A framework to rapidly develop PowerShell cmdlets for native commands, regardless of platform.
- Added support for native command elevation on Windows and Linux platforms.
- Export-CrescendoModule now exports a module manifest (psd1) along with the module file (psm1).
- Added support for generating aliases for Crescendo cmdlets
- Added support for SupportsShouldProcess.
https://devblogs.microsoft.com/powershell/announcing-powershell-crescendo-preview-2/
PowerShell Team
Announcing PowerShell Crescendo Preview.2 | PowerShell Team
We are pleased to announce the second preview of PowerShell Crescendo, a framework to rapidly develop PowerShell cmdlets for native commands, regardless of platform. The updated preview releases are now available for download on the PowerShell Gallery: M…
I know, I missed "Announcing PSDesiredStateConfiguration on PowerShell Gallery" ☹️
But, how about Puppet's support for the PowerShell DSC configuration framework for Windows ?
See more details here:
But, how about Puppet's support for the PowerShell DSC configuration framework for Windows ?
See more details here:
PowerShell 7.2-preview.6 is out!
Experimental Features
- [Breaking Change] Update prediction interface to provide additional feedback to a predictor plugin
Performance
- Avoid collecting logs in buffer if a pipeline execution event is not going to be logged
- Avoid allocation in
- Replace
- Use
General Cmdlet Updates and Fixes
- Use
- Add completions for
- Add completions for comment-based help keywords
- Move cross platform DSC code to a PowerShell engine subsystem
- Fix
- Handle exception if ConsoleHost tries to set cursor out of bounds because screen buffer changed
- Fix
- Update
- Update the summary comment for
- Remove the unusable alias
- Fix tab completion for un-localized
- Remove the unneeded SSH stdio handle workaround
- Add
- Re-implement
- Kill native processes in pipeline when pipeline is disposed on Unix
- Default to MTA on Windows platforms where STA is not supported
Experimental Features
- [Breaking Change] Update prediction interface to provide additional feedback to a predictor plugin
Performance
- Avoid collecting logs in buffer if a pipeline execution event is not going to be logged
- Avoid allocation in
LanguagePrimitives.UpdateTypeConvertFromTypeTable - Replace
Directory.GetDirectories with Directory.EnumerateDirectories to avoid array allocations- Use
List.ConvertAll instead of LINQGeneral Cmdlet Updates and Fixes
- Use
AllocConsole before initializing CLR to ensure codepage is correct for WinRM remoting - Add completions for
#requires statements- Add completions for comment-based help keywords
- Move cross platform DSC code to a PowerShell engine subsystem
- Fix
Minimal progress view to handle activity that is longer than console width- Handle exception if ConsoleHost tries to set cursor out of bounds because screen buffer changed
- Fix
NullReferenceException in DSC ClearCache() - Update
ControlSequenceLength to handle colon as a virtual terminal parameter separator- Update the summary comment for
StopTrannoscriptCmdlet.cs- Remove the unusable alias
d for the -Directory parameter from Get-ChildItem- Fix tab completion for un-localized
about topics - Remove the unneeded SSH stdio handle workaround
- Add
LoadAssemblyFromNativeMemory API to load assemblies from memory in a native PowerShell host - Re-implement
Remove-Item OneDrive support- Kill native processes in pipeline when pipeline is disposed on Unix
- Default to MTA on Windows platforms where STA is not supported
💡Preview updating PowerShell 7.2 with Microsoft Update
With Microsoft Update, you’ll get the latest PowerShell 7 updates directly in your traditional Windows Update management flow
https://devblogs.microsoft.com/powershell/preview-updating-powershell-7-2-with-microsoft-update/
With Microsoft Update, you’ll get the latest PowerShell 7 updates directly in your traditional Windows Update management flow
https://devblogs.microsoft.com/powershell/preview-updating-powershell-7-2-with-microsoft-update/
PowerShell Team
Preview updating PowerShell 7.2 with Microsoft Update
Updating PowerShell 7 with Microsoft Update Today, we’re happy to announce that we’re taking the first steps to making PowerShell 7 easier than ever to update on Windows 10 and Server. In the past, Windows users were notified in their console that a new version…
❗ v7.2.0-preview.7 Release of PowerShell
Breaking Changes
- Remove PSDesiredStateConfiguration v2.0.5 module and published it to the PowerShell Gallery
Engine Updates and Fixes
- Fix splatting being treated as positional parameter in completions
- Prevent PowerShell from crashing when a telemetry mutex can't be created
- Ignore all exceptions when disposing an instance of a subsystem implementation
- Wait for SSH exit when closing remote connection
Performance
- Retrieve ProductVersion using informational version attribute in AmsiUtils.Init()
General Cmdlet Updates and Fixes
- Fix retrieving dynamic parameters from provider even if globbed path returns no results
- Revert "Enhance Remove-Item to work with OneDrive" due to long path issue
https://github.com/PowerShell/PowerShell/releases/tag/v7.2.0-preview.7
Breaking Changes
- Remove PSDesiredStateConfiguration v2.0.5 module and published it to the PowerShell Gallery
Engine Updates and Fixes
- Fix splatting being treated as positional parameter in completions
- Prevent PowerShell from crashing when a telemetry mutex can't be created
- Ignore all exceptions when disposing an instance of a subsystem implementation
- Wait for SSH exit when closing remote connection
Performance
- Retrieve ProductVersion using informational version attribute in AmsiUtils.Init()
General Cmdlet Updates and Fixes
- Fix retrieving dynamic parameters from provider even if globbed path returns no results
- Revert "Enhance Remove-Item to work with OneDrive" due to long path issue
https://github.com/PowerShell/PowerShell/releases/tag/v7.2.0-preview.7
GitHub
Release v7.2.0-preview.7 Release of PowerShell · PowerShell/PowerShell
7.2.0-preview.7 - 2021-06-17
Breaking Changes
Remove PSDesiredStateConfiguration v2.0.5 module and published it to the PowerShell Gallery (#15536)
Engine Updates and Fixes
Fix splatting being tr...
Breaking Changes
Remove PSDesiredStateConfiguration v2.0.5 module and published it to the PowerShell Gallery (#15536)
Engine Updates and Fixes
Fix splatting being tr...
💡 Azure Durable Functions for PowerShell: Human interaction
Azure Durable Functions provide some functionality that Azure functions don’t offer with the other bindings. The most important one is that it provides you with a state.
https://4bes.nl/2021/06/13/azure-durable-functions-for-powershell-human-interaction/
Azure Durable Functions provide some functionality that Azure functions don’t offer with the other bindings. The most important one is that it provides you with a state.
https://4bes.nl/2021/06/13/azure-durable-functions-for-powershell-human-interaction/
4bes.nl
Azure Durable Functions for PowerShell: Human interaction
I have written before about PowerShell in Durable functions. A few weeks ago, the great news was shared that Azure durable functions are now general available . Between my last post and this great new
🎬 What's the right Write cmdlet to use to write to the right output
https://www.youtube.com/watch?v=08U80wlmKNA
https://www.youtube.com/watch?v=08U80wlmKNA
YouTube
What's the right PowerShell Write cmdlet to use to write to the right output (Steven Judd)
Have you ever wondered if you're writing data in your noscripts the correct way? For example, when should you use Write-Host vs Write-Output? How do you write to the console and the logs at the same time?
Join Steven Judd for a walk through on the various…
Join Steven Judd for a walk through on the various…
❗v7.2.0-preview.8 Release of PowerShell
Engine Updates and Fixes
- Add a Windows mode to $PSNativeCommandArgumentPassing that allows some commands to use legacy argument passing
- Use nameof to get parameter names when creating ArgumentNullException
- Test if a command is 'Out-Default' more thoroughly for transcribing scenarios
- Add Microsoft.PowerShell.Crescendo to telemetry allow list
General Cmdlet Updates and Fixes
- Use $PSStyle.Formatting.FormatAccent for Format-List and $PSStyle.Formatting.TableHeader for Format-Table output
- Highlight using error color the exception Message and underline in PositionMessage for Get-Error
- Implement a completion for View parameter of format cmdlets
- Add support to colorize FileInfo file names
- Don't serialize to JSON ETS properties for DateTime and string types
- Fix HyperVSocketEndPoint.ServiceId setter
- Add DetailedView to $ErrorView
Engine Updates and Fixes
- Add a Windows mode to $PSNativeCommandArgumentPassing that allows some commands to use legacy argument passing
- Use nameof to get parameter names when creating ArgumentNullException
- Test if a command is 'Out-Default' more thoroughly for transcribing scenarios
- Add Microsoft.PowerShell.Crescendo to telemetry allow list
General Cmdlet Updates and Fixes
- Use $PSStyle.Formatting.FormatAccent for Format-List and $PSStyle.Formatting.TableHeader for Format-Table output
- Highlight using error color the exception Message and underline in PositionMessage for Get-Error
- Implement a completion for View parameter of format cmdlets
- Add support to colorize FileInfo file names
- Don't serialize to JSON ETS properties for DateTime and string types
- Fix HyperVSocketEndPoint.ServiceId setter
- Add DetailedView to $ErrorView
A new PowerShell book is now available for purchase.
All code examples and noscripts in the book are available on the GitHub repo for the book.
All code examples and noscripts in the book are available on the GitHub repo for the book.
👍1