PowerShell

The PowerShell forum accepts bug reports as well as feedback and suggestions. For more information, check out the PowerShell Homepage

The following is a list of the states we use to track items.

status meaning
survey We saw this and we are considering it. Please upvote if it’s important to you.
needs more information We don’t understand the issue and need additional details.
investigating We are looking at this internally to understand things like: scenario, reproduction of issue, costing, or other technical details.
in queue The issue is understood and in our unprioritized backlog. Your votes will be used to drive prioritization of this work.
  • Hot ideas
  • Top ideas
  • New ideas
  • My feedback
  1. Compiling large number of DSC MOF files is slow

    We use logic to dynamically compose a ConfigurationData structure and pass it to the configuration. This logic executes quickly. Calling the configuration generates more than 5,000 MOF files for unique nodes. The process takes 1.5 hours on modern server-class hardware with 16GB RAM. Also, the MOF files are all created at the end of the process, rather than one-at-a-time throughout the process. This causes high memory usage. Please optimize the PSDesiredStateConfiguration module to generate large quantities of MOF files more quickly. This issue adds significant delay to the DSC pipeline.

    25 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    8 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  2. DSC StatusRetentionTimeInDays is not deleting files

    WMF 5 RTM

    StatusRetentionTimeInDays is not deleting files in C:\Windows\System32\Configuration\ConfigurationStatus as per http://powershell.org/forums/topic/cwindowssystem32configurationconfigurationstatus-directory-growing/#post-40747

    25 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    3 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  3. LCM Extensible Architecture - PowerShell

    Type: Feature Request
    Summary: Make LCM extensible simply by adding a psm1 in a folder, which will be loaded automatically.
    Details here: https://github.com/gaelcolas/LCM_ExtensibleArch

    Here's the workflow:
    1. LCM loads a psm1 file(s) from a pre-defined directory (or defined in LCM meta-configuration).
    2. Every LCM events are triggered and forwarded into the extensions' session
    3. $Global variables of the extension should be accessible from the Test/Set/Get methods of the DSC Resource
    3. The author of the PSM1 extension register-EngineEvent for required LCM Events
    4. He defines Event Handlers Actions that can call psm1's exported functions

    Having this extensible architecture would allow…

    25 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  4. Windows PowerShell ISE: Double click should select entire cmdlet/variable name

    Votes from Connect: 20

    Original Date Submitted: 6/21/2013 11:14:16 PM

    Description:
    Contact Information
    Handle: deadlydog
    Site Name: PowerShell
    Feedback ID: 790661


    Frequency: Always Happens
    Regression: Yes, this happens in all previous versions

    Problem Description:
    When you double click on a cmdlet or variable name in the PS IDE v3 it doesn't select the entire cmdlet/variable name. Unlike other text editors, PS IDE is meant for working with PowerShell code, so it should make some assumptions to make it more PowerShell friendly.

    Example 1: Get-Help
    - if you double click on Help, only "Help" is selected, but is should select "Get-Help".

    25 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  5. 24 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    6 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →

    Would be interested in understanding the scenario where you are using the cmdlet & specifying the reason for rebooting. To explain: our previous assumption was that users would EITHER use the server UI that captured this information, OR use the cmdlet (often so they didn’t need to supply that reason text).
    So, what would help is to understand in what situations the cmdlet is being used and specifying the reboot explanation is desirable.

  6. Allow DSC Reports to include ResourcesNotInDesiredState that were corrected during a consistency check

    Currently if a node is set up to ApplyAndAutoCorrect, when the report is sent back to the report server, there is no reference to any resources that were out of desired state at the time of the consistency check. DSC will just put them back in desired state without reporting what it did. For compliance reasons, we would like to be able to query the report server to see if any resources had to be put back into desired state.

    24 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  7. Create a SendTo-SysLog cmdlet and include it by default

    Please include by default a SendTo-Syslog cmdlet to send log messages to UNIX, Linux and SIEMs.

    If you were to add a syslog service role to send or accept syslog messages in a scalable way which integrated with the Windows event logs, that would be great too, but a cmdlet to just send UDP packets is easy enough to include in PoSh 5.1 right now.

    Thanks!

    24 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    6 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  8. [Bug] Install-Module -Force prompts for user input when NuGet-anycpu.exe is not present

    Steps to reproduce:


    1. Install WMF5 RTM on a fresh Windows 2012 R2 system

    2. Open an Administrator PS prompt and run "Install-Module Pester -Force"

    Expected result: The -Force parameter causes the NuGet client to be installed without user intervention.

    Actual result: The following message is displayed:

    NuGet-anycpu.exe is required to continue.
    PowerShellGet requires NuGet-anycpu.exe to interact with NuGet based galleries. NuGet-anycpu.exe must be available in
    'C:\Program Files\PackageManagement\ProviderAssemblies' or
    'C:\Users\Administrator\AppData\Local\PackageManagement\ProviderAssemblies'. For more information about NuGet provider,
    see http://OneGet.org/NuGet.html. Do you want PowerShellGet to download NuGet-anycpu.exe now?
    [Y] Yes [N] No [S] Suspend [?] Help (default is "Y"):

    The MSDN documentation for…

    24 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    9 comments  ·  Package Management  ·  Flag idea as inappropriate…  ·  Admin →
  9. Enable proactive validation of partial configuration MOFs

    Votes from Connect: 15

    Original Date Submitted: 9/15/2015 8:25:40 PM

    Description:
    Contact Information
    Handle: PowerShellDon
    Site Name: PowerShell
    Feedback ID: 1792984


    Problem Description:
    Currently, the only validation of partial configuration MOFs is in the client (LCM). If multiple MOFs are combined and there's a duplicate key situation, the LCM ceases processing. Having this happen on the target node - with no proactive change to catch the problem - is extremely undesirable, and doesn't set the stage for top-level manageability.

    I suggest refactoring that logic from the LCM into a standalone API. The LCM could then call that API to do…

    24 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  10. Windows PowerShell ISE: Caret and View do not jump to text being undone/redone

    Votes from Connect: 18

    Original Date Submitted: 6/21/2013 12:49:43 AM

    Description:
    Contact Information
    Handle: deadlydog
    Site Name: PowerShell
    Feedback ID: 790586


    Frequency: Always Happens
    Regression: I do not know if this issue existed previously

    Problem Description:
    In the PS ISE v3 Script Pane, if you use the undo or redo commands (Ctrl+Z and Ctrl+Y respectively), the caret does not jump to the text being undone/redone, and the view does not scroll to the text being undone/redone either. So if the text being changed is outside of the visible area, you don't know what changes are being undone/redone. This is a…

    24 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    4 comments  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  11. #region / #endregion code folding tokens in ISE should not be case sensitive

    Votes from Connect: 17

    Original Date Submitted: 5/23/2012 8:29:13 PM

    Description:
    Contact Information
    Handle: HalR
    Site Name: PowerShell
    Feedback ID: 743272


    Frequency: Always Happens
    Regression: No, this is new to the most recent version

    Problem Description:
    I've been using #REGION/#ENDREGION tokens in my code for some time to trigger code folding in various editors (e.g. PowerShellPlus and PowerGUI). The new v3 ISE supports this too which is great--but it's case sensitive for some reason. I consider that a bug and would love to see it made case-insensitive.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID…

    24 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  12. Add easy column aliasing for Select-Object

    In SQL, columns can be aliased as simply as this

    Select GivenName as FirstName, Surname as "Last Name"

    With PowerShell, I generally refer to a webpage or reference guide for a refresher on the syntax for Select-Object aliasing.

    Select-Object @{Name="Surname";Expression={$."Last Name"}}, @{Name="GivenName";Expression={$."First Name"}}

    I understand that Expressions are Powerful, but SQL supports similar power as seen in this example

    Select GivenName AS FirstName, Surname AS 'Last Name' FROM names

    SELECT NameChange =
    CASE
    WHEN Surname = 'LeMaire' THEN 'The Mayor'
    END
    FROM names

    Please add easier column name aliasing for Select-Object.

    23 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  13. Add ability to cancel Intellisense engine results

    Right now, if an exception occurs in the argument completer, then it immediately returns, and "falls back" to the built-in filesystem / item-based auto-completion. If an exception occurs in my custom argument completers, I'd rather be able to cancel auto-completion altogether, rather than have a bunch of useless results be thrown at the user.

    23 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  14. Software Restriction Policy - Constrained Language Mode

    Excerpt from this article ‘Constrained PowerShell’ https://blogs.msdn.microsoft.com/powershell/2015/06/09/powershell-the-blue-team:

    "In version 5, Power Shell now reduces its functionality to "Constrained Mode" for both interactive input and user-authored scripts when it detects that Power Shell scripts have an ‘Allow Mode’ policy applied to them. Constrained Power Shell limits the language mode to Constrained Language (as described in aboutLanguageModes), a mode first introduced for Windows RT.

    Constrained Language doesn’t limit the capability of the core Power Shell language – familiar techniques such as variables, loops, and functions are all supported. It does, however, limit the extended language features that can lead…

    23 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    6 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  15. The -ToSession parameter for copy-item should accept multiple sessions

    The Copy-Item cmdlet now supports copying to a remote session. I typically work against a farm of servers and do something like
    $s = new-pssession server1, server2, server3.
    I want to be able to do copy c:\file.txt -tosession $s -destination c:\file.txt.

    Right now, I get an error saying cannot convert an array of objects to a System.Management.Automation.Runspaces.PSSession object. I had to copy the file 3 different times to each session.

    23 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →

    Thank you for your input. Based on its current ranking compared to other feedback items and product schedule, work on this item is pending (and will be driven by) further customer input. If you did not open this issue and are also impacted by it, please vote this item up.

  16. Issue with register-packagesource where adding internal source errors on sourcelocation but successfully adds.

    Register-PSRepository -InstallationPolicy trusted -PackageManagementProvider Nuget -Sourcelocation
    https://binrepo.target.com/artifactory/api/nuget/powershell-gallery2 -name PSModule_TGT
    PackageManagement\Register-PackageSource : The property 'SourceLocation' cannot be found on this object. Verify that
    the property exists.
    At C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:3281 char:17
    + ... $null = PackageManagement\Register-PackageSource @PSBoundParamete ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : NotSpecified: (Microsoft.Power...erPackageSource:RegisterPackageSource) [Register-Packag
    

    eSource], Exception

    + FullyQualifiedErrorId : PropertyNotFoundStrict,Microsoft.PowerShell.PackageManagement.Cmdlets.RegisterPackageSou
    

    rce

    PS C:\Users\vagrant> get-packagesource

    Name ProviderName IsTrusted IsRegistered IsValidated Location


    PSGalleryTGT PowerShellGet True True False https://binrepo.target.com/ar...
    PSModule_TGT PowerShellGet True True False https://binrepo.target.com/ar...

    23 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    8 comments  ·  Package Management  ·  Flag idea as inappropriate…  ·  Admin →

    Thanks for the updates an input on this item. We are working on a solution, and will update this item when it is publicly available.

  17. ISE: Add support for "Copy Full Path" context menu command on script tabs

    I often need the path name to the file I'm editing. In V3 I can hover the mouse over the tab and a tooltip will present the path. However, I usually need to provide this path to other commands (like cd or paste them into another window), and I currently have to hand-repeat it.

    Right-Click on tab -> Copy Full Path is a great way to solve this; it's the same approach used by Visual Studio.

    23 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    1 comment  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  18. Allow whitespace between final newline and quotation mark in here-string

    Votes from Connect: 10

    Original Date Submitted: 12/10/2011 12:21:15 AM

    Description:
    Contact Information
    Handle: JoshGav
    Site Name: PowerShell
    Feedback ID: 712796


    Frequency: Always Happens
    Regression: Yes, this happens in previous released versions

    Problem Description:
    The final delimiter in a here-string is defined as newline-quotemarks-atsign. This means that the "@ has to be at the beginning of the final line, with no whitespace preceding it. This ruins attempts at tab indentation in scripts and functions. Whitespace should be allowed as part of the ending pattern between the newline and quotemarks so that tab indentation can be cleanly utilized.

    Product Studio item…

    23 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    0 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  19. Set-Service -StartupType 'Automatic (Delayed Start)'

    Can we get this missing option added?
    It would be also nice if this was shown with Get-Service rather than services only showing Automatic when they are actually 'Automatic Delayed Start'.

    22 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  20. Convert Group Policy to use PowerShell DSC

    I think it's time for an overhaul of Group Policy and GP Preferences. You can still keep the GUI to allow everyone to have something familiar, but I would love to see if Group Policy can be converted to start using PowerShell DSC under the hood. I think this would make things much simpler in terms of deployment and wouldn't require logon/logoff or restarts anymore (unless you wanted a script to run at those times). For everything else like IE/Edge settings, registry settings, mapped drives/printers, desktop backgrounds and such I think having everything exposed in PowerShell would both make it…

    22 votes
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    5 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feedback and Knowledge Base