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. 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 →
  2. Various parameter annoyances / inconsistencies with builtin cmdlets

    Votes from Connect: 4

    Original Date Submitted: 8/23/2014 7:08:24 AM

    Description:

    Contact Information
    Handle: Derp McDerp
    Site Name: PowerShell
    Feedback ID: 953115


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

    Problem Description:
    I wrote 2 functions (Find-ParamClash and Find-Param) to explore parameters in cmdlets (see the attatchments for source code). They found some problems/annoyances with the stock cmdlets in PowerShell v4:

    (Note: the lists below aren't comprehensive because Find-ParamClash and Find-Param uses the data returned by Get-Command. The fields needed are mostly empty because PowerShell lazy loads modules but gives you no way to see the fields…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  3. Hashtables seem to use different comparers on setting a value and creating the hashtable

    Votes from Connect: 4

    Original Date Submitted: 8/18/2014 1:14:35 PM

    Description:
    Contact Information
    Handle: Hypftier
    Site Name: PowerShell
    Feedback ID: 948988


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

    Problem Description:
    Apparently all keys are coerced to strings, or at least treated the same:

    PS&gt; $x = @{1 = 5; &#39;1&#39; = 7}
    
    At line:1 char:15
    + $x = @{1 = 5; &#39;1&#39; = 7}
    + ~~~
    Duplicate keys &#39;1&#39; are not allowed in hash literals.
    + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
    + FullyQualifiedErrorId : DuplicateKeyInHashLiteral

    However, when retrieving or setting values this does…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  4. "Windows Security Warning" dialog box cannot be dismissed

    Votes from Connect: 7

    Original Date Submitted: 7/17/2014 5:22:27 PM

    Description:
    Contact Information
    Handle: Invoke-Alex
    Site Name: PowerShell
    Feedback ID: 922384


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

    Problem Description:
    Certain sites will cause a dialog box with the title "Windows Security Warning" and contents "To allow this website to provide information personalized for you, will you allow it to put a small file (called a cookie) on your computer?" to open.

    If the Invoke-WebRequest command is done manually, I can dismiss the dialog box. However, if the Invoke-WebRequest is called from a script via a…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  5. PowerShell doesn't allow elided `N on nested generic types

    Votes from Connect: 3

    Original Date Submitted: 7/12/2014 5:52:23 AM

    Description:
    Contact Information
    Handle: Derp McDerp
    Site Name: PowerShell
    Feedback ID: 918471


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

    Problem Description:
    PowerShell allows you to elide the `N on generic types, e.g.:

    [tuple[int,float]]

    instead of:

    [tuple`2[int,float]]

    But it doesn't work on nested generics, see the reproduction steps for an example. I can't tell if this is a bug or is intentional but it feels like a bug to me.

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

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  6. Add formatting to Get-Help's output

    Votes from Connect: 6

    Original Date Submitted: 7/10/2014 9:26:39 PM

    Description:

    Contact Information
    Handle: sba
    Site Name: PowerShell
    Feedback ID: 917423


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

    Problem Description:
    As of PS4, the output from Get-Help looks very much like a Unix manpage in the 1970s: no colors, no underline, no bold (only some with -ShowWindow)...

    In 2014, I would expect formatted output -- see attached files to get... the picture ;-)

    The ability to have Get-Help output to a browser window, from where one would be able to print, would also be nice (while…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  7. [System.Management.Automation.Internal.AutomationNull]::Value shouldn't be [psobject] or [pscustomobject]

    Votes from Connect: 3

    Original Date Submitted: 6/24/2014 2:10:27 PM

    Description:
    Contact Information
    Handle: Derp McDerp
    Site Name: PowerShell
    Feedback ID: 904177


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

    Problem Description:
    <# The following is behaving as expected: #>

    $null -eq System.Management.Automation.Internal.AutomationNull::Value

    True

    True

    $null -is [object]

    False

    False

    <# Now it starts getting weird: #>

    $null -is [psobject]

    False

    True

    $null -is [pscustomobject]

    False

    True

    [AutomationNull] should be $false for those two just like $null is.

    PowerShell already has a way to distinguish between $null and [AutomationNull]:

    function Test-AutomationNull { begin { $ret =…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  8. Scripts loaded via a ScriptsToProcess attribute in a module manifest appear as if they are loaded modules

    Votes from Connect: 8

    Original Date Submitted: 6/23/2014 9:36:52 PM

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


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

    Problem Description:
    If you load a module that has one or more scripts in the ScriptsToProcess attribute of the module manifest, each of those scripts will appear as if they are modules after the module you loaded has finished loading. This should be fixed, because these scripts are just scripts, not modules.

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

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  9. Provide expected Comparison handling for DBNull

    Votes from Connect: 15

    Original Date Submitted: 3/9/2014 12:24:59 AM

    Description:
    Contact Information
    Handle: Cookie.Monster
    Site Name: PowerShell
    Feedback ID: 830412


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

    Problem Description:
    Greetings,

    First, my apologies. I have little development experience and thus may use improper terminology. My suggestion is to have PowerShell provide handling of System.DBNull values as one might logically expect.

    Current situation:
    if(System.DBNull::Value){"I would not expect this to display"} #The text displays.

    Expected situation:
    if(System.DBNull::Value){"I would not expect this to display"} #The text does not display

    How this affects users:
    When…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  10. Add #requires –runasadministrator ability to Module Manifest

    Votes from Connect: 10

    Original Date Submitted: 2/10/2014 11:05:45 PM

    Description:
    Contact Information
    Handle: Jonathan Medd
    Site Name: PowerShell
    Feedback ID: 817081


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

    Problem Description:
    PowerShell v4 adds the below new statement:

    requires –runasadministrator

    It would be useful to have this same ability available in a Module Manifest, e.g.

    Requires Run As Administrator

    RunAsAdministrator = $true

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

    Repro Steps:
    Add the below to your Module Manifest:

    Requires Run As Administrator

    RunAsAdministrator =…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  11. Need dedicated parameter attributes to simplify proper path handling

    Votes from Connect: 10

    Original Date Submitted: 2/1/2014 8:36:30 AM

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


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

    Problem Description:
    It is too difficult to write an advanced function that correctly handles various forms of path input e.g.:

    'foo.txt' | MyAdvFunc
    gci | MyAdvFunc
    MyAdvFunc foo.txt
    MyAdvFunc foo.txt,bar.txt
    MyAdvFunc *.txt
    MyAdvFunc -literalpath foo[bar].txt

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

    Repro Steps:
    You have to write code like this:

    [CmdletBinding(DefaultParameterSetName="Path")]

    param(
    
    [Parameter(Mandatory,
    Position=0,
    ParameterSetName=&quot;Path&quot;,
    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  12. 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 →
  13. Running as administrator and running "update-help" fails to update the module 'AppBackgroundTask'

    Votes from Connect: 11

    Original Date Submitted: 11/21/2013 7:25:26 AM

    Description:
    Contact Information
    Handle: Gary Bonie
    Site Name: PowerShell
    Feedback ID: 809166


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

    Problem Description:
    All help updates correctly except the help for AppBackgroundTask.

    Update-Help : Failed to update Help for the module(s) 'AppBackgroundTask' with UI culture(s) {en-US} : The value of the HelpInfoUri
    key in the module manifest must resolve to a container or root URL on a website where the help files are stored. The HelpInfoUri
    'http://technet.microsoft.com/en-us/library/dn296421.aspx&#39; does not resolve to a container.
    At…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  14. Reduce the need for line continuation use in PowerShell commands that span multiple lines

    Votes from Connect: 20

    Original Date Submitted: 5/10/2013 10:10:12 PM

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


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

    Problem Description:
    It is well known that the line continuation implementation is challenging (the fact that it doesn't work if there is anything after it, even just whitespace, causes problems for beginners; also, it doesn't help that it simply looks like a spec of dirt on the screen). Yet some of us find that commands are more readable when they span multiple lines, like this:

    Do-Something `

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  15. Add-Type: Add CSharpVersion4 and CSharpVersion5 to the list of languages supported in the Language parameter

    Votes from Connect: 10

    Original Date Submitted: 5/9/2013 12:57:09 AM

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


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

    Problem Description:
    In PowerShell 3 you cannot use Add-Type to compile C# code written using CSharp 4.0. Nor can you compile C# code written using CSharp 5.0. The highest version available in the Language parameter is CSharpVersion3.

    Please add CSharpVersion4 and CSharpVersion5 support to Add-Type so that it is keeping up with the times.

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

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  16. PowerShell ISE - Built in support for Team Foundation Server

    Votes from Connect: 34

    Original Date Submitted: 4/23/2013 10:58:34 PM

    Description:
    Contact Information
    Handle: Andrew Carney
    Site Name: PowerShell
    Feedback ID: 785399


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

    Problem Description:
    Add built in support for team foundation server, with gui.

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

    Repro Steps:
    Expected Results:

    Internal BugId: 4192

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  17. Add MultiSubnetFailover to Invoke-SqlCmd

    Votes from Connect: 11

    Original Date Submitted: 4/9/2013 2:21:32 AM

    Description:
    Contact Information
    Handle: dusthawk
    Site Name: PowerShell
    Feedback ID: 783217


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

    Problem Description:
    sqlcmd now has a flag for enabling MultiSubnetFailover. Could this also be added into Invoke-SqlCmd?

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

    Repro Steps:
    Expected Results:

    Internal BugId: 4173

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  18. 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 →
  19. Select-Object's -First, -Last, -Skip, and -Unique parameters should not change the output type

    Votes from Connect: 10

    Original Date Submitted: 10/10/2012 11:44:45 PM

    Description:
    Contact Information
    Handle: Aleksandar Nikolić
    Site Name: PowerShell
    Feedback ID: 766908


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

    Problem Description:
    When you pipe something to Select-Object –First (or –Last, -Skip, and –Unique), the input and the output type should be the same, because you are not changing any member.

    And that’s true for every type (compare, for example, Get-Process | Get-Member and Get-Process | select -First 1 | Get-Member) , except for the PSCustomObject type. In case of the PSCustomObject type will be prefixed…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  20. Events needed for module load/unload

    Votes from Connect: 10

    Original Date Submitted: 9/11/2012 2:44:04 AM

    Description:
    Contact Information
    Handle: Jason Shirk
    Site Name: PowerShell
    Feedback ID: 761976


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

    Problem Description:
    V3 added useful event handlers during command discovery including:


    • Pre command lookup

    • Post command lookup

    • Command not found

    It would be very useful to have similar events for modules:


    • Pre module lookup

    • Post module lookup

    • Module not found

    I'm most interested in post module lookup, but the others seem useful as well.

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

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feedback and Knowledge Base