TechEd session report: What’s Coming in Windows PowerShell V2?

Posted by MBrant on June 12 2008, 9:59 PM. Posted in Powershell, TechEd 2008.

“What’s Coming in Windows PowerShell V2?” by Jeffrey Snover, who is the partner architect for Windows PowerShell, and Narayanan Lakshmanan, Software Design Engineer.Jeffrey started the session by talking about the acceptance/implementation state of the current Powershell. In the 18 months since it launched, Powershell has been downloaded over 2 million times. Also allot of Microsoft teams are implementing the Powershell extensions in their solutions. Exchange, SQL,  SCOM, SCVMM and SCDPM teams have or have announced Powershell support. So adoption is doing good. Jeffrey also noted on how passionate the team is. Not only did work 200% on Powershell, they also helped write multiple books on Powershell available today. That’s dedication.He went on by stating that most of the press have made misconception on Powershell. Powershell isn’t a CLI or and CMD-replacement. It’s an automation scripting platform with multiple API’s and is accessible through the Powershell CLI. To prove that Powershell isn’t just a shell, he demoed a new cmdlet called “Gridview”. Gridview, invoked by adding it as an extra argument on commands, shows an powerfull GUI displaying the results of the command in a grid control. This allows you to sort, filter and organize the data as you please. This is called GUI over Powershell.One other subject was production scripting which doesn’t differ that much from the old scripting in powershell 1 with the exception with a couple of extra scripting features. They said they are supporting transactions. Transactions … in a CLI/scripting language? Jeffrey said they were the first ones to support such a feature. As you may expect when looking at transactions from SQL, they support rollback of commands. Mostly on the registry. It is limited, as you might expect, but be sure to check it out of you’re  a powershell dev.Furthermore they talked about Mobile Objects Model. MOM allows you take a part of your script/command, send it over the network and execute in a remote computer without the need of the whole app/script/execution to be on that remote computer. The object your working with will be serialized to a XML text stream and deserialized on the remote end.  A real nice feature which I’m sure a lot of deployment scripting experts will love.Also they talked about native code implementation. From v2 on you can use VB, C# and F# code in your Powershell scripts and make use of the full .NET platform. Job support allows you to run scripts in the background and control those as you wish. Remote or local. Restricted namespaces allow you to run scripts in a more secure, locked-down environment. Also eventing and triggering is now supported.They fixed the PS-Space bug. They said if you don’t know what it was, good for you. If you do, you can’t wait to get v2.Community was central to this release and powershell. They said they really listened to feedback and fixed  a lot of bugs and improved the engine and made it faster.The session itself was quite in-depth and I recommend Powershell gurus read through the PPTX! Also check out the Powershell team blog: http://blogs.msdn.com/Powershell