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. Bug Get-Help Get-Help -Full

    Votes from Connect: 1

    Original Date Submitted: 8/19/2015 6:21:37 PM

    Description:
    ********Contact Information********
    Handle: H_Ski
    Site Name: PowerShell
    Feedback ID: 1686799
    ***************************************

    Frequency: Documentation
    Regression:

    Problem Description:
    PSv4 and PSv5 with updated help (2015-august-19):

    .Input says: You can not pipe objects to Get-Help
    BUT
    Get-Help Get-Help -parameter name says: Accept pipeline input? true (ByPropertyName)

    In v5 if you do get-help get-help -full help for gcm and get-item also shows up.

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

    Repro Steps:
    Expected Results:

    Internal BugId: 15748

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

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  2. Powershell 5 enum definitions

    Votes from Connect: 3

    Original Date Submitted: 8/11/2015 6:16:25 PM

    Description:
    ********Contact Information********
    Handle: SamiKoskivaara
    Site Name: PowerShell
    Feedback ID: 1654123
    ***************************************

    Frequency: PowerShell
    Regression: Create two enums, explicitly define a variable to have named enum type, assign value to that variable from another enum type. It does not give an error message that the value is not from the right enum type.

    Problem Description:
    If I define two enums 'Size' and 'PizzaType'

    Enum Size {
    Small
    Medium
    Large
    }

    Enum PizzaType {
    Margherita
    Vegetariana
    Peperoni
    }

    and then I want to explicitly say that my variable $a is [PizzaType]…

    2 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 →
  3. Invoke-WebRequest doesn't work with protocol-relative URLs

    Votes from Connect: 4

    Original Date Submitted: 7/8/2015 11:36:23 AM

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

    Frequency: PowerShell
    Regression: 1. Use the Invoke-WebRequest command to call a protocol-relative URL
    2. Exception occurs: "iwr : Invalid URI: The hostname could not be parsed."

    Problem Description:
    Invoke-WebRequest doesn't work with protocol-relative URLs.

    http://www.paulirish.com/2010/the-protocol-relative-url/

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

    Repro Steps:
    1. Use the Invoke-WebRequest command to call a protocol-relative URL
    2. Exception occurs: "iwr : Invalid URI: The hostname could not be…

    3 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. Registering an internal repository with PowerShellGet requires an internet connection

    Votes from Connect: 7

    Original Date Submitted: 7/7/2015 11:40:08 PM

    Description:
    ********Contact Information********
    Handle: bobdean
    Site Name: PowerShell
    Feedback ID: 1518092
    ***************************************

    Problem Description:
    PS C:\> Register-PSRepository -Name InternalNuget -SourceLocation https://nexussrv1/service/local/nuget/nuget-releases/
    -InstallationPolicy Trusted -PublishLocation https://nexussrv1/service/local/nuget/nuget-releases/
    WARNING: Unable to download the list of available providers. Check your internet connection.

    Servers should not require administrators to set proxy settings that enable internet connectivity to leverage an internal NuGet based repository - even if it is only a one time event.

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

    Repro Steps:

    Internal BugId: 15630

    3 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. Help missing for Configuration as a keyword or function

    Votes from Connect: 3

    Original Date Submitted: 6/29/2015 1:59:05 AM

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

    Frequency: Documentation
    Regression:
    PS C:\ps-test> get-help Configuration

    NAME
    Configuration

    SYNTAX
    Configuration [[-ModuleDefinition] <Object>] [[-ResourceDefinition] <Object>] [[-OutputPath] <Object>] [[-Name] <Object>]
    [[-Body] <scriptblock>] [[-ArgsToBody] <hashtable>] [[-ConfigurationData] <hashtable>] [[-InstanceName] <string>]
    [<CommonParameters>]

    ALIASES
    None

    REMARKS
    Get-Help cannot find the Help files for this cmdlet on this computer. It is displaying only partial help.
    -- To download and install Help files for the module that includes this cmdlet, use Update-Help.

    PS C:\> Get-Help about_Language_Keywords | Out-String -Stream | Select-String Configuration
    PS C:\>

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

    We’ll send you updates on this idea

    0 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  6. WMF5 April PowerShellGet Publish-Module NuGetAPIKey is Mandatory

    Votes from Connect: 3

    Original Date Submitted: 6/9/2015 1:49:33 AM

    Description:
    ********Contact Information********
    Handle: Joel 'Jaykul' Bennett
    Site Name: PowerShell
    Feedback ID: 1413156
    ***************************************

    Frequency: PowerShell
    Regression: Register-PSRepository -Name LocalFolder -Source "$Pwd" -Publish "$Pwd"
    Publish-Module -Name C:\Users\Joel\Projects\Modules\Autoload -Repository LocalFolder -NuGetApiKey (Get-Random)

    Problem Description:
    The NuGetApiKey should not be mandatory on Publish Module, because it's not actually mandatory.

    For instance, if I'm publishing to a local folder, I don't need to specify a key!

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

    Repro Steps:
    Register-PSRepository -Name LocalFolder -Source "$Pwd" -Publish "$Pwd"
    Publish-Module…

    3 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. ISE Intellisense for class constructor not shown until class is imported

    Votes from Connect: 4

    Original Date Submitted: 6/6/2015 6:28:35 AM

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

    Frequency: PowerShell ISE
    Regression:

    Problem Description:
    The PowerShell ISE doesn't show Intellisense for a user-defined class constructor (new() method) until the class has been imported into the PowerShell session.

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

    Repro Steps:
    Expected Results:

    Internal BugId: 14548

    3 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 →
  8. Wildcard in registry path causing high cpu / long enumeration

    Votes from Connect: 3

    Original Date Submitted: 5/23/2015 6:40:05 AM

    Description:
    ********Contact Information********
    Handle: jskiba
    Site Name: PowerShell
    Feedback ID: 1357781
    ***************************************

    Frequency: PowerShell
    Regression: within powershell console

    navigate to "HKLM:\SOFTWARE\Classes\*"
    run "gci" to find an available subkey name (eg: "OpenWithList")
    run "get-acl .\OpenWithList
    Verify CPU load time, and registry enumeration via procmon

    Problem Description:
    The asterisk “*” character is valid as a registry key name. When navigating to the path “HKLM:\SOFTWARE\Classes\*” and attempting to query ACL for values such as those in “HKLM:\SOFTWARE\Classes\*\OpenWithList” , everything under “Classes” is queried, treating the “*” as a wildcard and not a path…

    2 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 →
  9. New Cmdlet : Export-WinEvent

    Votes from Connect: 4

    Original Date Submitted: 5/19/2015 2:54:47 PM

    Description:
    ********Contact Information********
    Handle: ShellDealer
    Site Name: PowerShell
    Feedback ID: 1346220
    ***************************************

    Problem Description:
    Like wevtutil, get-WinEvent permit usefull xmlfilter filter
    $query = @'
    <QueryList>
    <Query Id="0" Path="Security">
    <Select Path="Security">*[System[TimeCreated[timediff(@SystemTime) &lt;= 3600000]]]</Select>
    </Query>
    </QueryList>
    '@

    Get-WinEvent -FilterXML $query

    I suggest a cmdlet to export the result

    Export-WinEvent [-syslog]
    Export-WinEvent [-Path] -fileType (evtx|xml|csv|txt)

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

    Repro Steps:

    Internal BugId: 14485

    3 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. Suggestions for new approved verbs

    Votes from Connect: 4

    Original Date Submitted: 5/17/2015 10:14:13 PM

    Description:
    ********Contact Information********
    Handle: Juho Lehto
    Site Name: PowerShell
    Feedback ID: 1341385
    ***************************************

    Problem Description:
    I would like to propose following three verbs to be added: Download, Upload and Reinstall.
    Thank you.

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

    Repro Steps:

    Internal BugId: 14476

    3 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. Add Exception Visibility to Cmdlet Help

    Votes from Connect: 4

    Original Date Submitted: 5/13/2015 9:02:25 PM

    Description:
    ********Contact Information********
    Handle: Matt McNabb
    Site Name: PowerShell
    Feedback ID: 1329164
    ***************************************

    Problem Description:
    It would be nice to have cmdlet help include information about any error types that might be thrown and whether they are terminating or non-terminating. This would be a benefit when writing scripts that have formal error-handling with try/catch so we can properly filter the catch blocks and add -ErrorAction Stop where necessary.

    Usage could be something like:

    Get-Help Get-Something -Errors

    Or:

    Get-Help Get-Something -Exceptions

    Product Studio item created by Connect Synchronizer due to creation…

    3 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. PSPossibleIncorrectComparisonWithNull - $null should be on the left side of equality comparisons.

    Votes from Connect: 3

    Original Date Submitted: 5/3/2015 6:39:12 PM

    Description:
    ********Contact Information********
    Handle: Remco Kapinga
    Site Name: PowerShell
    Feedback ID: 1299466
    ***************************************

    Problem Description:
    Invoke-ScriptAnalyzer flags this as a Warning:

    if ($item -ne $null) { .. }

    And suggest that we should write this comparison as:

    if ($null -ne $item) { .. }

    That makes code less readable (yoda-speak). This reminds us of the c language defect with if(a = null) { .. } versus if(a == null) { .. }

    I don't see the point of this rule in PowerShell, and the suggested construct makes code less readable.

    3 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 →
  13. Export-CSV should include milliseconds for datetime objects

    Votes from Connect: 3

    Original Date Submitted: 3/24/2015 1:39:18 PM

    Description:
    ********Contact Information********
    Handle: sba923
    Site Name: PowerShell
    Feedback ID: 1200023
    ***************************************

    Problem Description:
    As of today, Export-CSV doesn't include milliseconds when dumping datetime objects. This makes it impossible to process sub-second resolution data e.g. in Excel.

    Workaround is to convert the datetime objects to strings using ("{0:yyyy-MM-dd HH:mm:ss.fff}" -f $timestamp), but that's not really convenient...

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

    Repro Steps:

    Internal BugId: 14334

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

    We’ll send you updates on this idea

    1 comment  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  14. PowerShell DSC needs to support "Property Sets"

    Votes from Connect: 12

    Original Date Submitted: 3/24/2015 8:05:35 AM

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

    Problem Description:
    NOTE: I believe this functionality is already in progress, but I wanted to make sure it was documented in the official PowerShell feedback channel.

    PowerShell DSC Resources need the ability to support multiple "property sets" similar to the "parameter sets" that are

    Suggested implementation:

    1. Add a "PropertySetName" property to the [DscProperty()] attribute (eg. [DscProperty(PropertySetName = "PropertySet1", Key)]
    2. Add a private property (eg. $PropertySetName) to the [DscResource()] attribute, to ensure that the Get(),…

    3 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 →
  15. $_ should be accessible without curly brackets with Where-Object

    Votes from Connect: 5

    Original Date Submitted: 10/30/2014 6:04:29 AM

    Description:
    ********Contact Information********
    Handle: Peter M10
    Site Name: PowerShell
    Feedback ID: 1014939
    ***************************************

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

    Problem Description:
    I would like to access the pipeline object with Where-Object without curly brackets like so:

    1..10 | Where-Object $_ % 2 -eq 1

    to get only uneven numbers.

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

    Repro Steps:
    1..10 | Where-Object $_ % 2 -eq 1

    Expected Results:
    Gives an "Cannot validate argument on parameter…

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

    We’ll send you updates on this idea

    0 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  16. Cmdlets in the WebAdministration module occasionally generates errors when used in a custom DSC configuration

    Votes from Connect: 5

    Original Date Submitted: 9/17/2014 2:30:56 AM

    Description:
    ********Contact Information********
    Handle: Jan Egil Ring
    Site Name: PowerShell
    Feedback ID: 973480
    ***************************************

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

    Problem Description:
    When using cmdlets from the WebAdministration (IIS) PowerShell module in a custom DSC resource, errors are thrown when invoking the Get/Set/Test-TargetResource functions (for example by running Test-DscConfiguration).

    The error thrown is:
    Unable to cast COM object of type 'Microsoft.IIs.PowerShell.Framework.AppHostQueryProcessor' to interface type 'Mic
    rosoft.IIs.PowerShell.Framework.IAppHostQueryProcessor'. This operation failed because the QueryInterface call on the COM component for the
    interface with IID '{6E0E6BE3-71C1-4A66-800E-11B9CBA00EAB}'…

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

    We’ll send you updates on this idea

    1 comment  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  17. Incorrect default values when pass $null as splatting parameter

    Votes from Connect: 5

    Original Date Submitted: 8/29/2014 4:44:23 PM

    Description:
    ********Contact Information********
    Handle: EricDong1989
    Site Name: PowerShell
    Feedback ID: 958702
    ***************************************

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

    Problem Description:
    function test{
    param(
    [Parameter(Mandatory=$false)][int]$age=20,
    [Parameter(Mandatory=$false)][string]$name = 'Name'
    )
    Write-Host $age
    Write-Host $name
    }
    $aa = $null
    test $aa

    You will see outputs:
    0
    Name

    However the age should be 20.
    Further more, modify the function above to
    function test{
    param(

    [Parameter(Mandatory=$true)][int]$age,
    [Parameter(Mandatory=$false)][string]$name = 'Name'
    )
    Write-Host $age
    Write-Host $name
    }

    and run
    $aa = $null
    test $aa

    The result is same as above, but the…

    3 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 →
  18. Write-Error allows both Message and Exception parameters without an error saying the parameters are mutually exclusive

    Votes from Connect: 3

    Original Date Submitted: 8/22/2014 2:01:53 AM

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

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

    Problem Description:
    Write-Error isn't supposed to take both a message and an exception (see `help Write-Error`), but you can pass both without getting the "Parameter set cannot be resolved using the specified named parameters." error message.

    Also, when you use Write-Error in a catch block, and use both parameters, the original exception bubbles up instead of what gets written with Write-Error.

    Product Studio item…

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

    We’ll send you updates on this idea

    0 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  19. PowerShell ISE Intellisense does not work for Import-DscResource

    Votes from Connect: 9

    Original Date Submitted: 8/21/2014 11:08:39 PM

    Description:

    ********Contact Information********
    Handle: Trevor Sullivan [MVP]
    Site Name: PowerShell
    Feedback ID: 951804
    ***************************************

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

    Problem Description:
    NOTE: Please see attached video for example.

    When writing a PowerShell DSC configuration using the PowerShell ISE, and adding the Import-DscResource command to the configuration block, the PowerShell ISE does not show the Intellisense for parameter names or parameter values.

    Because there is no mention of Import-DscResource in the built-in PowerShell help, and because no documentation can be found in the Microsoft TechNet…

    3 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 →
  20. Import-Module "less discoverable" warning should suggest using Get-Command

    Votes from Connect: 5

    Original Date Submitted: 8/8/2014 12:33:28 AM

    Description:
    ********Contact Information********
    Handle: Joel 'Jaykul' Bennett
    Site Name: PowerShell
    Feedback ID: 940605
    ***************************************

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

    Problem Description:
    When importing a module with a lot of verbose logging or hundreds of commands, it's a pain to use Import-Module -Verbose as a way of detecting the less discoverable commands. This is especially the case since there are no verbose warnings for commands without verbs (see https://connect.microsoft.com/PowerShell/feedbackdetail/view/940569).

    I think that instead of suggesting Import-Module 'ModuleName' -Verbose ... you should suggest:

    Get-Command -Module…

    3 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