PowerShell Team
Automating the world one-liner at a time…
Latest posts
Native Commands in PowerShell – A New Approach – Part 2
How to wrap native commands to take better advantage of the PowerShell environment
Native Commands in PowerShell – A New Approach
In this two part blog post I'm going to investigate how PowerShell can take better advantage of native executables. In the first post, I'm going to discuss a few of the ways that PowerShell can better incorporate native executables into our object oriented world and how we can use these tools to better fit into our model of more discrete operations. In the second post, I'll be exploring some of the work to more easily convert the use of native tools into the cmdlet/object output model of PowerShell. PowerShell provides a number of benefits to its users Some of these are not unique ...
Resolving PowerShell Module Assembly Dependency Conflicts
When writing a PowerShell module, especially a binary module (i.e. one written in a language like C# and loaded into PowerShell as an assembly/DLL), it's natural to take dependencies on other packages or libraries to provide functionality. Taking dependencies on other libraries is usually desirable for code reuse. However, PowerShell always loads assemblies into the same context, and this can present issues when a module's dependencies conflict with already-loaded DLLs, preventing two otherwise unrelated modules from being used together in the same PowerShell session. If you've been hit by this yourself, you w...
PowerShell Team May 2020 Update
Previously, I published a blog on our investments plans during the PowerShell 7.1 release timeframe. We've made progress across many of those investments with more work ahead of us. PowerShell 7.1 preview 3 We are now able to ship simultaneously with each new .NET 5 preview release! This means that you can start leveraging new capabilities in .NET 5 and assess the new performance improvements. For PowerShell it means we can find issues early during integration with .NET and get those issues resolved much more quickly. Because we will be able to simultaneously release with .NET, it also means users will g...
PowerShellGet 3.0 Preview 3
PowerShellGet 3.0 preview 3 is now available on the PowerShell Gallery. The focus of this release is the parameter for which now allows for json, hashtable, or .json files as input. For a full list of the issues addressed by this release please refer to this GitHub project. Note: For background information on PowerShellGet 3.0 please refer to the blog post for the first preview release and the second preview release. How to install the module To install this version of PowerShellGet open any PowerShell console and run: New Features of this release New Features Bug Fix Wha...
PowerShell 7 Video Series
As a part of our PowerShell 7 release, the PowerShell Team put together a series of videos explaining and demoing aspects of the release. The intent of these videos was for User Groups to host events celebrating and discussing PowerShell 7, however, in light of the current guidance against group gatherings, we have decided to make these videos available publicly on the PowerShell Team YouTube channel. The content is broken down into 10 videos with a total runtime of 58 minutes. We have included links to the videos below, along with links to other related resources. ...
PSScriptAnalyzer (PSSA) 1.19.0 has been released
TL;DR; (Too Long; Didn't Read) This new minor version brings 5 new rules, the formatter is much faster and other enhancements and fixes. You can get it from the PSGallery here. At the same time the PowerShell extension for VS Code has released a new preview version. This ships with this new version of PSSA so that you can also take advantage of all the new configuration options. Therefore, whenever we reference the next version of the extension below, we mean the recently updated preview version or the next, upcoming release of the GA version. You can still take advantage of the new PSSA release in the GA versio...
PowerShellGet 3.0 Preview 2
PowerShellGet 3.0 preview 2 is now available on the PowerShell Gallery. The focus of this release is the Install-PSResource parameter, error messages, and warnings. For a full list of the issues addressed by this release please refer to this GitHub project. Note: For background information on PowerShellGet 3.0 please refer to the blog post for the first preview release. How to install the module To install this version of PowerShellGet open any PowerShell console and run: New Features of this release What is next GitHub is the best place to track the bugs/feature re...
PowerShell Gallery TLS Support
Summary To provide the best-in-class encryption to our customers, the PowerShell Gallery has deprecated Transport Layer Security (TLS) versions 1.0 and 1.1 as of April 2020. The Microsoft TLS 1.0 implementation has no known security vulnerabilities. But because of the potential for future protocol downgrade attacks and other TLS vulnerabilities, we are discontinuing support for TLS 1.0 and 1.1 in the PowerShell Gallery. For information about how to remove TLS 1.0 and 1.1 dependencies, see the whitepaper Solving the TLS 1.0 problem. More information As of April 2020, TLS 1.2 is set to be the default for the...