Ironman Software Forums
Continue the conversion on the Ironman Software forums. Chat with over 1000 users about PowerShell, PowerShell Universal, and PowerShell Pro Tools.
This post outlines the new feature of PowerShell Pro Tools and PowerShell Universal that have been added in the November 2021 release cycle.
We have released new versions of the entire PowerShell Pro Tools suite of tools. Most of the tools contain small features and bug fixes. The PowerShell Tools for Visual Studio extension has had some big features added.
The Microsoft PowerShell Preview extension for Visual Studio Code has reached version 3. This version is a major rewrite of the backend of the extension which promises more stability and performance. The PowerShell Pro Tools extension now supports integrating with Preview v3.
PowerShell Tools for Visual Studio supports the new version of Visual Studio 2022.
PowerShell Pro Tools for Visual Studio, Visual Studio Code, PSScriptPad, and the PowerShell Module all support packaging PowerShell 7.1 scripts.
PSScriptPad now supports a Scratch Pad. The Scratch Pad is saved automatically and can be quickly opened and executed to try out scripts. With Scratch Pad, each execution is saved so you can view the historical executions of script within the IDE.
PowerShell Pro Tools for Visual Studio Code now supports Windows ARM. That said, it also no longer packages all platforms in the extension. Much like OmniSharp, PowerShell Pro Tools will download the host for your platform when you first install the extension. The extension size has been reduced by more than 80%.
For the full release notes for PowerShell Pro Tools, visit our documentation page.
The November release of PowerShell Universal provides many new features built into the existing feature groups. See below for some notable examples.
You can now include comment-based help in scripts. Comment-based help will appear within the script execution run dialog to provide extra context to users.
<#
.SYNOPSIS
This is a script for pinging other computers.
.DESCRIPTION
This script can ping other computers.
.PARAMETER HostName
The host name or address to ping.
.LINK
https://www.ironmansoftware.com
#>
param($HostName)
Test-NetConnection $HostName
Editor.JS is now integrated into Universal Dashboard. Allow users to edit documents visually. Store the data as either JSON or HTML.
Navigation and header customization has been simplified for dashboards to make it easier to specify custom navigation and change colors of the header toolbar.
New-UDDashboard -Content {
} -Navigation {
New-UDList -Children {
New-UDListItem -Label "Home"
New-UDListItem -Label "Getting Started" -Children {
New-UDListItem -Label "Installation" -OnClick {}
New-UDListItem -Label "Usage" -OnClick {}
New-UDListItem -Label "FAQs" -OnClick {}
New-UDListItem -Label "System Requirements" -OnClick {}
New-UDListItem -Label "Purchasing" -OnClick {}
}
}
} -NavigationLayout permanent
An IFrame component is now available for pages. The primary use-case is the ability to host dashboards within pages. This means you can take advantage of the easy, drag and drop functionality of pages but integrate complex components built with dashboards. You can also host external websites within the iframe component.
This is an example of a dashboard within a page.
Pages can now be assigned a group which will automatically create nested navigation within pages.
Authentication can now be configured in the admin console. You no longer need to restart the PowerShell Universal service when configuring authentication if you do it through the admin console or the authentication.ps1
file.
We still continue to support configuring authentication through appsettings.json
.
PowerShell Universal now supports SAML2 authentication. You can configure SAML2 authentication within the admin console.
A small set of cmdlets now support an integrated mode within PowerShell Universal. The following cmdlets can be called within APIs, Scripts and Dashboards without specifying an app token. These cmdlets are executed using internal RPC and do not round trip through the REST API. This simplifies deploy by removing the need for app tokens or for configuring the external URL if using a proxy like IIS or ngnix.
You can use all of these scripts within PowerShell Universal by specifying the -Integrated
parameter.
$Script = Get-PSUScript -Name "MyScript.ps1" -Integrated
Invoke-PSUScript $Script -Integrated -Wait
For the full release notes for PowerShell Universal, visit our documentation page.
If you have feedback, please post on our forums or open an issue on GitHub.
Continue the conversion on the Ironman Software forums. Chat with over 1000 users about PowerShell, PowerShell Universal, and PowerShell Pro Tools.
Receive once-a-month updates about Ironman Software. You'll learn about our product updates and blogs related to PowerShell.