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. Add support for calculated properties to Measure-Object

    Votes from Connect: 4

    Original Date Submitted: 11/20/2014 5:43:42 AM

    Description:
    Contact Information
    Handle: Tom Nolan [MSFT]
    Site Name: PowerShell
    Feedback ID: 1033948


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

    Problem Description:
    Most of the *-Object commands support the use of calculated properties, but Measure-Object doesn't. This would be a useful piece of functionality and would also put it in line with the other cmdlets.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 1033948 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=1033948).

    Repro Steps:

    The following code is a simple example showing the various *-Object commands

    2 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 →
  2. Add bandwidth switch to invoke-webrequest

    Votes from Connect: 3

    Original Date Submitted: 11/15/2014 1:29:53 AM

    Description:
    Contact Information
    Handle: Gantcho Radoslavov
    Site Name: PowerShell
    Feedback ID: 1029839


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

    Problem Description:
    Invoke-webrequest is proving quite helpful. It would be nice however to be able to control the bandwidth used by the cmdlet. Is it possible to add the feature to throttle the bandwidth used by the command?

    Thank you

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 1029839 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=1029839).

    Repro Steps:
    using invoke-webrequest to fetch files from…

    2 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 →
  3. Caught exceptions still appear in global $Error list

    Votes from Connect: 3

    Original Date Submitted: 9/16/2014 12:15:09 AM

    Description:
    Contact Information
    Handle: Aaron Jensen
    Site Name: PowerShell
    Feedback ID: 972566


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

    Problem Description:
    When you catch exceptions, those exception still appear in the global $Error list. I expect that caught exceptions shouldn't appear there because I'm catching and handling them. We have build pipelines that fail builds if there are any errors in the global $Error variable, and this causes false failures in situations where we are handling the exceptions.

    $Error.Clear()
    try
    {

     throw 'Blarg!'
    

    }
    catch
    {

    2 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 →
  4. Dynamic switches before positional parameters may not work as expected

    Votes from Connect: 4

    Original Date Submitted: 8/31/2014 12:30:14 PM

    Description:
    Contact Information
    Handle: Roman Kuzmin
    Site Name: PowerShell
    Feedback ID: 960194


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

    Problem Description:
    StackOverflow question:
    http://stackoverflow.com/questions/25560038/dynamic-switches-before-positional-parameters-may-not-work-as-expected

    Here is the code that demonstrates the problem. The cmdlet Set-Location has the
    dynamic switch ReadOnly if the provider is FileSystem.

    ------8<--------

    # provider that does not have the dynamic ReadOnly
    
    Set-Location env:

    # case 1: works because we explicitly specify FileSystem
    Get-ChildItem C:\ -ReadOnly

    # case 2: fails even though we explicitly specify FileSystem
    Get-ChildItem -ReadOnly C:\

    ------8<--------

    Normally position of…

    2 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 →
  5. Allow Move-Item/Copy-Item Commands to work Across Compatible Providers

    Votes from Connect: 22

    Original Date Submitted: 12/27/2013 7:41:19 AM

    Description:
    Contact Information
    Handle: Mark Michaelis
    Site Name: PowerShell
    Feedback ID: 812361


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

    Problem Description:
    Hi,

    I have created several providers that work for files (e.g. Skydrive, Dropbox, photo sights, etc.). I would like to be able to copy files from the file system up to these providers and vice-versa. Please provide some means so that the provider copy-item and move-item operations will work across providers. Without this feature the following error is returned:

     &quot;Source and destination did not resolve
    2 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 →
  6. Mandatory parameter prompts should accept variable input

    Votes from Connect: 10

    Original Date Submitted: 12/6/2012 12:15:54 AM

    Description:

    Contact Information
    Handle: Trevor Sullivan
    Site Name: PowerShell
    Feedback ID: 773554


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

    Problem Description:
    When writing a PowerShell function, script, or ScriptBlock that accepts named parameters, it is sometimes desirable to have the end user prompted for input. PowerShell input prompts work great for strings and integers, but fails with other data types (eg. bool, object).

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 773554 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=773554).

    Repro Steps:
    function Test-Parameter {

    [CmdletBinding()]
    
    2 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 →
  7. Make it easier for module authors to store user configuration data in the right location

    Votes from Connect: 10

    Original Date Submitted: 5/9/2012 10:46:55 PM

    Description:
    Contact Information
    Handle: Kirk Munro
    Site Name: PowerShell
    Feedback ID: 741367


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

    Problem Description:
    This is a request for v.Next (post v3). More and more admins have been asking how they can store modules in a central repository so that they can centrally manage them while making them available to all systems where they use PowerShell. This is easy to do, however they need to be careful because some modules are designed to store configuration/state information in their own…

    2 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 →
  8. save-help failure - "Unable to connect to help content" error while Connected to internet via corporate proxy server

    Votes from Connect: 40

    Original Date Submitted: 3/10/2012 1:56:58 PM

    Description:

    Contact Information
    Handle: ramseyg [MVP]
    Site Name: PowerShell
    Feedback ID: 730195


    Frequency: Always Happens
    Regression: I don't know if this issue existed previously

    Problem Description:
    We have a user-authenticated proxy server on our corporate network. All systems/users must authenticate to access the internet. It is seamless from an internet browser perspective. We have an autoconfiguration script, or we can just enter the proxy information into internet explorer settings, and can browse to the web without any challenge/password.

    I can even run commands like get-help get-command -online successfully. But I…

    2 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 →
  9. Allow the .. Operator to Accept a Step Value and a Keyword to Signify the Array's length

    Votes from Connect: 10

    Original Date Submitted: 3/8/2012 8:34:09 AM

    Description:
    Contact Information
    Handle: Nektar
    Site Name: PowerShell
    Feedback ID: 729570


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

    Problem Description:
    In other scripting languages such as Python and MatLab, you can create say a list of all numbers from 0 to 100 stepping by 5 each time by typing something like 0:5:100. Also, you can splice an array from a point to the end by typing 0:end or in Python the last item is -1. In Powershell the .. operator can only accept a starting and…

    2 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 →
  10. Remote Registry should "just work" (no WinRM dependency)

    Votes from Connect: 13

    Original Date Submitted: 9/21/2011 11:21:52 AM

    Description:
    Contact Information
    Handle: Matthew Reynolds [MSFT]
    Site Name: PowerShell
    Feedback ID: 689864


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

    Problem Description:
    Remote registry is a core feature of Windows since before I can remember. IT Pros shouldn't have to resort to external exes, WMI, WinRM or .Net methods to use remote regsitry from powershell. They should be able to script naturally against remote registry.

    Providers/cmdlets which interact with registry (e.g., set-item, get-item, etc) should be updated to use remote registry just like they can use…

    1 vote
    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 →
  11. Implement support for remote file transfers (think scp)

    Votes from Connect: 10

    Original Date Submitted: 9/19/2011 2:51:47 PM

    Description:
    Contact Information
    Handle: PeterMoberg
    Site Name: PowerShell
    Feedback ID: 689422


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

    Problem Description:
    I would like to see file remote file transfers, like the SSH scp, implemented in PowerShell.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 689422 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=689422).

    Repro Steps:
    Expected Results:

    Internal BugId: 3022

    1 vote
    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 →
  12. Get-ChildItem and 'Filter' parameter misissue

    Votes from Connect: 14

    Original Date Submitted: 6/14/2011 7:44:51 PM

    Description:
    Contact Information
    Handle: Vadims Podans
    Site Name: PowerShell
    Feedback ID: 675309


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

    Problem Description:
    '-Filter' parameter tries to bind filter pattern to a both general name and a name in the 8.3 notation (MS-DOS format). This causes that in the 'Get-ChildItem -Filter' output appears unexpected items. For details see repro section.

    Also this may cause catstrophic results if Get-ChildItem output is passed to Remove-Item cmdlet. Administrator will not expect that Program Files folders will match this pattern. Also PowerShell…

    1 vote
    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 →
  13. PowerShell Should do Globbing for Cmdlets - at least for FileSystem Paths

    Votes from Connect: 15

    Original Date Submitted: 10/21/2010 7:25:53 AM

    Description:
    Contact Information
    Handle: rkeithhill
    Site Name: PowerShell
    Feedback ID: 615447


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

    Problem Description:
    It would be nice if you could decorate an advanced function parameter with an “AcceptsWildcard” attribute like this and have the parameter parsing code actually do the wildcard expansion for you. Of course the doc comment help should use the presence of this attribute to indicate correctly whether or not the parameter accepts wildcards. Perhaps the attribute would take an option to specify simple…

    2 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 →
  14. PowerShell async Invoke with only one explicit statement never report completion.

    If you have PowerShell object with only one statement and you explicitly called AddStatement at the end, then async invocation (BeginInvoke/EndInvoke) of that PowerShell object will never report completion.

    PowerShell version: 5.0.10586.0

    Reproduce:
    $PowerShell=[PowerShell]::Create().AddScript{}.AddStatement()
    $PowerShell.EndInvoke($PowerShell.BeginInvoke())

    1 vote
    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 →
  15. get-childitem does not work correctly if -recurse and -literalpath are both specified

    Votes from Connect: 4

    Original Date Submitted: 8/24/2015 10:15:01 PM

    Description:
    Contact Information
    Handle: herzbube
    Site Name: PowerShell
    Feedback ID: 1707779


    Frequency: PowerShell
    Regression: 1. Create a folder C:[foo]
    2. Add a file "bar" to the folder
    3. Run the following commands in PowerShell:

    $path = &#39;C:\[foo]&#39;
    
    get-childitem -literalpath $path -recurse

    Problem Description:
    Let's say I have this file:

    C:\[foo]\bar
    

    I then run these PowerShell commands:

    $path = &#39;C:\[foo]&#39;
    
    get-childitem -literalpath $path

    Everything works fine, get-childitem shows me the file bar, then returns immediately.

    Now I add the -recurse option:

    $path = &#39;C:\[foo]&#39;
    
    get-childitem -literalpath $path -recurse

    get-childitem no…

    1 vote
    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 →
  16. Uninstall-Module needs Scope parameter

    Votes from Connect: 7

    Original Date Submitted: 8/6/2015 9:17:18 PM

    Description:
    Contact Information
    Handle: June Blender
    Site Name: PowerShell
    Feedback ID: 1634561


    Problem Description:
    Add a Scope parameter to Uninstall-Module so I can uninstall a module from a specified scope.

    Install-Module has a scope parameter and multiple *Version parameters. On PowerShell 5.0+, you can install the same version in multiple scopes. However, because there's no Scope parameter for Uninstall-Module, you can specify only the version, not the scope.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 1634561 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=1634561).

    Repro Steps:

    Internal BugId: 15715

    1 vote
    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 →
  17. Event logging memory hoard when processing a large number of pipeline objects

    Votes from Connect: 8

    Original Date Submitted: 7/28/2015 10:16:32 AM

    Description:
    Contact Information
    Handle: Keith Hill MVP
    Site Name: PowerShell
    Feedback ID: 1599091


    Frequency: PowerShell
    Regression: Run this script:

    function Get-DummyData() {

    for ($i = 0; $i -lt 10000000; $i++) {
    
    &quot;This is freaking huge!! I&#39;m a ninja! More words, yay!&quot;
    }

    }
    Get-DummyData | Out-Null

    BTW here's another example:

    1..1000000 | foreach {if ($ % 100000 -eq 0) {[GC]::Collect(2,'Forced',$true); $}}

    Problem Description:
    It appears that for every pipeline object, bound to a pipeline parameter, a string like this is stuffed into a collection - where it waits to…

    1 vote
    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 →
  18. PowerShell host process crash on recursive class method invocation

    Votes from Connect: 7

    Original Date Submitted: 7/15/2015 6:52:19 AM

    Description:
    Contact Information
    Handle: Trevor Sullivan [MVP]
    Site Name: PowerShell
    Feedback ID: 1546571


    Frequency: PowerShell
    Regression: class CrashMe {

    [void] BreakMe([bool] $ShouldIBreak) {
    
    $this.BreakMe($ShouldIBreak);
    }

    }

    $MyCrashMe = [CrashMe]::new();
    $MyCrashMe.BreakMe($true);

    Problem Description:
    class CrashMe {

    [void] BreakMe([bool] $ShouldIBreak) {
    
    $this.BreakMe($ShouldIBreak);
    }

    }

    $MyCrashMe = [CrashMe]::new();
    $MyCrashMe.BreakMe($true);

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 1546571 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=1546571).

    Repro Steps:
    class CrashMe {

    [void] BreakMe([bool] $ShouldIBreak) {
    
    $this.BreakMe($ShouldIBreak);
    }

    }

    $MyCrashMe = [CrashMe]::new();
    $MyCrashMe.BreakMe($true);

    Expected Results:

    Internal BugId: 15649

    1 vote
    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. On Windows8.1 PowerShell calls ToString() method of an object when it is passed as argument to a script function.

    Votes from Connect: 3

    Original Date Submitted: 7/10/2015 6:50:26 PM

    Description:
    Contact Information
    Handle: Dimitar Milov
    Site Name: PowerShell
    Feedback ID: 1529031


    Frequency: PowerShell
    Regression:

    Problem Description:
    The issue seems to be OS specific and only reproduces on Windows 8/8.1 and Windows 10. When a .NET object instance is passed to a function as an argument the function calls the object's ToString method.

    Product Studio item created by Connect Synchronizer due to creation of feedback ID 1529031 (http://connect.microsoft.com/PowerShell/feedback/ViewFeedback.aspx?FeedbackID=1529031).

    Repro Steps:
    Expected Results:
    $Source = @"
    using System;

    namespace Test
    {

    public class TestClass
    
    {

    private bool _ts;
    public…

    1 vote
    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 →
  20. Get-Help -Parameter fails for common parameters

    Votes from Connect: 5

    Original Date Submitted: 7/7/2015 4:53:38 AM

    Description:
    Contact Information
    Handle: June Blender
    Site Name: PowerShell
    Feedback ID: 1515009


    Frequency: PowerShell
    Regression: PS C:\ps-test> Get-Help Get-Command -Parameter PipelineVariable
    Get-Help : No parameter matches criteria PipelineVariable.
    At line:1 char:1
    + Get-Help Get-Command -Parameter PipelineVariable
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : InvalidArgument: (System.Manageme...CommandHelpInfo:ProviderCommandHelpInfo) [Get-Help], PSArgumen
    

    tException

    + FullyQualifiedErrorId : NoParmsFound,Microsoft.PowerShell.Commands.GetHelpCommand
    

    PS C:\ps-test> Get-Command Get-Command -ParameterName PipelineVariable

    CommandType Name ModuleName


    Cmdlet Get-Command Microsoft.PowerShell.Core

    Problem Description:
    Commands in this format:

    Get-Help &lt;commandName&gt; -Parameter &lt;any_common_parameter&gt;
    

    return a PSArgumentException error, even when the command has the common parameter.

    Get-Help Parameter parameter code needs a…

    1 vote
    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 →
  • Don't see your idea?

Feedback and Knowledge Base