PowerShell Universal v4.1

PowerShell Universal

September 12, 2023

quote Discuss this Article

Today, we’re happy to announce the release of PowerShell Universal v4.1! You can download directly from the PowerShell Universal downloads page. Below, you’ll find the highlights.

New Components and Parameters

We’ve added numerous new components and parameters for apps. Some of these include:

UDSnackbar is built into our client-side framework, MUI, unlike UDToast. While the functionality is similar, UDSnackbar will honor themes and allow for much more flexibility.

New-UDTheme

We’ve added a new cmdlet to generate simple themes. This cmdlet has parameters like -PrimaryColor and -DarkPrimaryColor to simplify generating themes without having to generate the proper hashtable for a theme.

New-UDTheme -PrimaryColor 'red' -SecondaryColor 'blue' -BackgroundColor 'green'

Event Hubs Connections

Messages can now be sent to specific connections with event hubs. When sending messages to specific connections, those connections can then return data back to the caller of Send-PSUEvent. This could be used, for example, to allow a user connected to an app, click a button that sends an event to their locally running event hub connection, and then execute PowerShell script locally and return the result back to the PSU server.

Check out the Get-PSUEventHubConnection and -ConnectionId parameter of Send-PSUEvent to take advantage of this feature.

SQLite Support

We’ve introduced support for SQLite as a persistence method. While LiteDB continues to be supported, we have found that SQLite is better supported and more widely used. We recommend SQLite for new installations that do not require the centralized storage of SQL.

VS Code Extension Improvements

We’ve spent time improving the VS Code experience for Universal. This includes features such as:

We’d love to hear more about how you are editing your scripts in PSU. Please let us know if there are specific features of the Universal extension that would improve your experience. Due to the extensive management API for Universal, we can greatly extend the features of the extension but do most of our work based on feedback from our users.

Assembly View

To better diagnosis issues with conflicts between assemblies loaded into PowerShell environments, we have added an assembly view to see what assemblies are loaded and from where. This can be used to help determine why particular modules may not be loading properly.

Extensibility Work

We are working towards a more robust extensibility system in Universal. This will include extension points such as:

As part of this effort we are building a Service Catalog plugin that can be hosted within Universal. It will allow for our team to validate the extensibility features of the platform and also deliver a feature requested by some of our customers. The extensible admin console will be based on the app framework rather than the current admin console to allow for the greatest amount of customization.

We anticipate shipping this in version 5 but extensibility features will begin to be rolled out in v4 as experimental features. In addition to new features, we are evaluating whether existing features can use the extensibility system to allow users to completely remove features (rather than just disable via feature flags) for smaller installations.

PSU v4.1 Demo

Interested in seeing these features in action? Join us on September 14th at 12:00 CDT for a live demo.

https://www.meetup.com/de-DE/powershell-usergroup-inn-salzach/events/295531080/