{"id":12824,"date":"2016-11-15T08:12:47","date_gmt":"2016-11-15T16:12:47","guid":{"rendered":"https:\/\/www.sapien.com\/blog\/?p=12824"},"modified":"2016-11-15T08:34:23","modified_gmt":"2016-11-15T16:34:23","slug":"powershell-studio-2016-service-release-v5-3-130","status":"publish","type":"post","link":"https:\/\/dev.sapien.com\/blog\/2016\/11\/15\/powershell-studio-2016-service-release-v5-3-130\/","title":{"rendered":"PowerShell Studio 2016 &#8211; Service Release v5.3.130"},"content":{"rendered":"<p>Today we release a new build of PowerShell Studio 2016 and it includes some major changes and new features.<\/p>\n<p>&nbsp;<\/p>\n<h2>Project Changes and Compatibility<\/h2>\n<p><span style=\"color: #800000;\"><strong>IMPORTANT: This build will convert your projects and create a backup of the original (*.psproj.bak). The new project version is not backwards compatible with older builds of PowerShell Studio.<\/strong><\/span><\/p>\n<p>We made changed to our projects in order comply with the best practices and warning produces by PSScriptAnalyzer. Previously, when you invoke a GUI or script file from a project, you had to use a reference function that used a <strong><em>Call<\/em><\/strong> verb. For example:<\/p>\n<pre style=\"background-color: #ffffff;\"><span style=\"color: #008080;\">Call-MainForm_psf<\/span><\/pre>\n<p>The <em><strong>Call<\/strong><\/em> verb was used to distinguish it from other functions, but since <strong><em>Call<\/em><\/strong> isn\u2019t an approved verb, PSScriptAnalyzer would produce a warning.<\/p>\n<p>With this release, PowerShell Studio will replace the <em><strong>Call<\/strong><\/em> verb with the following verbs:<\/p>\n<table class=\"nicetable\" border=\"0\" width=\"488\" cellspacing=\"0\" cellpadding=\"2\">\n<tbody>\n<tr>\n<td valign=\"top\" width=\"137\"><strong>File Type<\/strong><\/td>\n<td valign=\"top\" width=\"99\"><strong>Verb<\/strong><\/td>\n<td valign=\"top\" width=\"250\"><strong>Example<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"137\">Form<\/td>\n<td valign=\"top\" width=\"99\">Show<\/td>\n<td valign=\"top\" width=\"250\">Show-MainForm_psf<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"137\">ps1 script<\/td>\n<td valign=\"top\" width=\"99\">Invoke<\/td>\n<td valign=\"top\" width=\"250\">Invoke-MyScript_ps1<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>When you open your project in PowerShell Studio, it will automatically update and refactor the <strong><em>Call<\/em><\/strong> reference functions in your project.<\/p>\n<h3>Renamed Project File Properties<\/h3>\n<p>We renamed some of the project file properties:<\/p>\n<table class=\"nicetable\" border=\"0\" width=\"769\" cellspacing=\"0\" cellpadding=\"2\">\n<tbody>\n<tr>\n<td valign=\"top\" width=\"137\"><strong>Old Name<\/strong><\/td>\n<td valign=\"top\" width=\"132\"><strong>New Name<\/strong><\/td>\n<td valign=\"top\" width=\"498\"><strong>Purpose<\/strong><\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"137\">Command Extension<\/td>\n<td valign=\"top\" width=\"132\">Shared<\/td>\n<td valign=\"top\" width=\"498\">If <em>True<\/em>, the ps1 file\u2019s functions and variables are shared across the project and you will no longer be able to invoke the file.<\/td>\n<\/tr>\n<tr>\n<td valign=\"top\" width=\"137\">Reference Name<\/td>\n<td valign=\"top\" width=\"132\">Reference Function<\/td>\n<td valign=\"top\" width=\"498\">The name of the function that invokes the project file.<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<p>&nbsp;<\/p>\n<h3>Using Statements<\/h3>\n<p>Using statements were introduced with PowerShell V5.<\/p>\n<pre lang=\"PowerShell\">#Requires -Version 5\r\nusing Module TestModule11; #Import classes from the module<\/pre>\n<p>&nbsp;<\/p>\n<p>PowerShell requires that using statements much be located at the beginning of a script file, otherwise it results in an error:<\/p>\n<pre class=\"output\"><span style=\"color: red;\">ERROR: +\u00a0\u00a0\u00a0\u00a0 using Module TestModule11; #Import classes from the module\r\nERROR: +\u00a0\u00a0\u00a0\u00a0 ~~~~~~~~~~~~~~~~~~~~~~~~~\r\nERROR: A 'using' statement must appear before any other statements in a script.<\/span><\/pre>\n<p>&nbsp;<\/p>\n<p>With this release, PowerShell Studio will relocate using statements and requires comments to ensure to that the generated GUI and project scripts do not produce errors.<\/p>\n<p>&nbsp;<\/p>\n<h2>Performance Monitor<\/h2>\n<p>A major new feature, is the Performance Monitor, which displays the CPU and memory usage of your PowerShell scripts.<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Performance-Graph.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"Performance Graph\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Performance-Graph_thumb.png\" alt=\"Performance Graph\" width=\"644\" height=\"99\" border=\"0\" \/><\/a><\/p>\n<p>We previously announced the feature for PrimalScript 2016:<\/p>\n<p><a title=\"https:\/\/www.sapien.com\/blog\/2016\/07\/07\/primalscript-2016-service-build-adds-cpu-and-memory-performance-graphs\/\" href=\"https:\/\/www.sapien.com\/blog\/2016\/07\/07\/primalscript-2016-service-build-adds-cpu-and-memory-performance-graphs\/\">https:\/\/www.sapien.com\/blog\/2016\/07\/07\/primalscript-2016-service-build-adds-cpu-and-memory-performance-graphs\/<\/a><\/p>\n<p>&nbsp;<\/p>\n<p>To enable monitoring in PowerShell Studio, check the option in the Ribbon (Home-&gt;Run-&gt;Monitor):<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Enable-Performance-Monitor.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"Enable Performance Monitor\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Enable-Performance-Monitor_thumb.png\" alt=\"Enable Performance Monitor\" width=\"644\" height=\"96\" border=\"0\" \/><\/a><\/p>\n<p>When monitoring is enabled, PowerShell Studio will graph the memory and CPU usage in real time and display the results are in the new performance panel.<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Performance-Panel.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"Performance Panel\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Performance-Panel_thumb.png\" alt=\"Performance Panel\" width=\"644\" height=\"361\" border=\"0\" \/><\/a><\/p>\n<p>For your convenience, the CPU and Memory usage is also displayed in status bar. This way you can still get a quick view of the statistics without having the monitor panel open.<\/p>\n<p><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"Status Bar Report\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Status-Bar-Report.png\" alt=\"Status Bar Report\" width=\"372\" height=\"26\" border=\"0\" \/><\/p>\n<p>The performance monitor will also display the last three results of a script, so that you can compare the performance differences of each run through.<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Performance-History.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"Performance History\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Performance-History_thumb.png\" alt=\"Performance History\" width=\"644\" height=\"155\" border=\"0\" \/><\/a><\/p>\n<p>The performance monitor will not record the statistics during debugging, because it will not produce an accurate result. The results would be skewed due to line breaking and variable querying.<\/p>\n<p>&nbsp;<\/p>\n<h2>New Packager Options and UI<\/h2>\n<p>We updated the packager UI in an effort minimize the choices and provide a preview and description of the available engines.<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/New-Packager-UI.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"New Packager UI\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/New-Packager-UI_thumb.png\" alt=\"New Packager UI\" width=\"644\" height=\"419\" border=\"0\" \/><\/a><\/p>\n<p>The packager is no longer restricted to a single platform selection:<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Target-Platforms.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"Target Platforms\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Target-Platforms_thumb.png\" alt=\"Target Platforms\" width=\"644\" height=\"419\" border=\"0\" \/><\/a><\/p>\n<p>You now have the option to build 32 Bit and 64 Bit platforms simultaneously.\u00a0 Additionally, the new Native platform option produces a starter executable to will launch the appropriate version of the executable for you.<\/p>\n<p>For more details on changes to the packager, please refer to the following article:<\/p>\n<p><a title=\"https:\/\/www.sapien.com\/blog\/2016\/10\/24\/sapien-script-packager-updates-and-new-features\/\" href=\"https:\/\/www.sapien.com\/blog\/2016\/10\/24\/sapien-script-packager-updates-and-new-features\/\">https:\/\/www.sapien.com\/blog\/2016\/10\/24\/sapien-script-packager-updates-and-new-features\/<\/a><\/p>\n<p>&nbsp;<\/p>\n<h2>New View Tab<\/h2>\n<p>We added a new <strong>View<\/strong> tab, where you can hide and display panels and load layouts.<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/View-Tab.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"View Tab\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/View-Tab_thumb.png\" alt=\"View Tab\" width=\"644\" height=\"86\" border=\"0\" \/><\/a><\/p>\n<p>The <strong>View<\/strong> tab also allows you to create Tab groups and split views of the editor.<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Tab-Group.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"Tab Group\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Tab-Group_thumb.png\" alt=\"Tab Group\" width=\"644\" height=\"391\" border=\"0\" \/><\/a><\/p>\n<h2>Navigation Bar Addition<\/h2>\n<p>The navigation bar will now display comments starting with <strong>#MARK:<\/strong>. You can use MARK comments to designate navigation points with in your script.<\/p>\n<p><a href=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Navigation-Menu.png\" target=\"_blank\"><img loading=\"lazy\" decoding=\"async\" style=\"background-image: none; padding-top: 0px; padding-left: 0px; display: inline; padding-right: 0px; border-width: 0px;\" title=\"Navigation Menu\" src=\"https:\/\/www.sapien.com\/blog\/wp-content\/uploads\/2016\/11\/Navigation-Menu_thumb.png\" alt=\"Navigation Menu\" width=\"644\" height=\"459\" border=\"0\" \/><\/a><\/p>\n<p>As you can see, the comment hash is no longer displayed to reduce visual clutter.<\/p>\n<p>&nbsp;<\/p>\n<p>Please continue providing your feedback. Many of the new features included in the service builds are suggestions from users like you. Therefore, if you have any suggestions or feature requests, please share them with us on our <a href=\"https:\/\/www.sapien.com\/forums\/viewforum.php?f=9\">Wish List and Feature Requests<\/a> forum.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Today we release a new build of PowerShell Studio 2016 and it includes some major changes and new features. &nbsp; Project Changes and Compatibility IMPORTANT: This build will convert your projects and create a backup of the original (*.psproj.bak). The new project version is not backwards compatible with older builds of PowerShell Studio. We made [&hellip;]<\/p>\n","protected":false},"author":10,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"categories":[703,624,21,632],"tags":[437,374,28,1068,645],"class_list":["post-12824","post","type-post","status-publish","format-standard","hentry","category-powershell-studio","category-service-build","category-software-news","category-whats-new-software-news","tag-packager","tag-performance","tag-powershell","tag-powershell-studio-2016","tag-service-build-2"],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/12824","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/users\/10"}],"replies":[{"embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/comments?post=12824"}],"version-history":[{"count":12,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/12824\/revisions"}],"predecessor-version":[{"id":12852,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/posts\/12824\/revisions\/12852"}],"wp:attachment":[{"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/media?parent=12824"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/categories?post=12824"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/dev.sapien.com\/blog\/wp-json\/wp\/v2\/tags?post=12824"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}