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. Tear-off ISE tabs

    Votes from Connect: 17

    Original Date Submitted: 5/2/2014 4:25:16 PM

    Description:
    Contact Information
    Handle: Sean E Gray
    Site Name: PowerShell
    Feedback ID: 865384


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

    Problem Description:
    It would be incredibly useful to me if we could 'tear off' tabs from the ISE to make new windows, or drag and drop tags between ISE windows. Ideally, this would work in exactly the same was as it does in Internet Explorer.

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

    Repro Steps:
    Expected Results:

    12 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 →
  2. PowerShell must support calling Async APIs

    Votes from Connect: 57

    Original Date Submitted: 3/24/2014 10:15:46 AM

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


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

    Problem Description:
    Currently PowerShell has it's own systems (based on "Jobs") for doing asynchronous tasks -- while this was admirable in the .Net 2.0 and 3.0 era, in the modern .Net Framework we have new "IAsyncResult" task APIs, and they do not work in PowerShell at all.

    As more and more of the .Net Framework itself and 3rd party APIs begin to depend on Tasks, IAsyncResult,…

    12 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. [BUG] PowerShell ISE hangs when opening multiple files if Files.CollectionChanged event has a subscriber

    Powershell ISE (both 5.0 and ISEpreview) hangs when you open multiple files at the same time (open dialoge) when you subscribe to the event $psISE.CurrentPowerShellTab.Files.CollectionChanged .

    Works fine when a single document is opened/closed.

    $action = {

    Write-Host "Test"
    

    }

    Register-ObjectEvent -InputObject $psISE.CurrentPowerShellTab.Files -EventName CollectionChanged -Action $action -SourceIdentifier "ToggeRegionExpansionOnOpen"

    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  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  4. v5 special method `New` conflicts with static methods `New`

    PowerShell v5 comes with a new feature. Instead of old fashioned creation of an object

    New-Object System.Text.StringBuilder
    

    it is possible to use the new syntax

    [System.Text.StringBuilder]::new()
    

    The new syntax introduces a problem thought. If a class has a static method
    New then it cannot be called directly anymore. It looks like PowerShell
    thinks we are about to call a constructor, not this static method.

    My real problem case cannot be explained in here so I use an existing class
    just as an example.

    This code works in PowerShell v4

    [System.Linq.Expressions.Expression]::New([psobject])
    

    It calls the static method New and creates an expression.

    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 →
  5. [Bug] ErrorDetails.RecommendAction property value not output by Write-Error cmdlet

    When passing an ErrorRecord to the Write-Error cmdlet, and the ErrorDetails property is set to a ErrorDetails object where the RecommendAction property is set, the value of the RecommendAction property is not output.

    This is illustrated by the following code:

    using namespace System
    using namespace System.Management.Automation
    $exception = New-Object Exception -ArgumentList "This is the Exception message"
    $errorRecord = New-Object ErrorRecord -ArgumentList $exception, "This is the ErrorRecord Message", NotSpecified, $null
    $errorDetails = New-Object ErrorDetails -ArgumentList "This is the ErrorDetails message"
    $errorRecord.ErrorDetails = $errorDetails
    $errorDetails.RecommendedAction = "This is the recommended action"
    Write-Error $errorRecord
    : This is the ErrorDetails message
    + CategoryInfo :…

    3 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 →
  6. Bug: [nullable[enum]] DSC Property throws System.NotSupportedException in WMF5 RTM

    In WMF5 Production Preview the [nullable] flag was required to allow a DSC Property to be null valued. Without this flag a default value was being added to the mof file.

    In WMF5 RTM (Windows 10 installation) the [nullable] flag causes a System.NotSupportedException error to be thrown when running a configuration block.

    In WMF5 RTM, if the [nullable] flag is not used, null values are allowed. I believe this is the same functionality as WMF4.

    The [nullable] flag is shown in the MSDN documentation for DSC. https://msdn.microsoft.com/en-us/powershell/dsc/authoringresourceclass

    This should be fixed/clarified to the community.

    1 vote
    Sign in
    (thinking…)
    Sign in with: Facebook Google
    Signed in as (Sign out)

    We’ll send you updates on this idea

    2 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  7. Test-Connection should support suppressing errors and returning the full result objects

    Use case:

    Test-Connection (1..15 | % { "comp{0:00}" -f $ }) -Count 1 | select Address, IPV4Address, ResponseTime, @{Name='Success'; Expression={$.StatusCode -eq 0}} | ft

    Currently, the code above will produce a table with successful pings, interleaved with error records for unreachable machines. It would be very useful to be able to provide a switch so that Test-Connection would return objects with appropriate status instead of errors.

    As an icing on the cake, the objects returned by Test-Connection could be extended with a bool Success property, calculated based on StatusCode (like in the example above).

    9 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 →
  8. Start signing the ISE Preview module

    The ISE preview module file "C:\Program Files\WindowsPowerShell\Modules\PowerShellISE-preview\5.1.1\PowerShellISE-preview.psm1" is not signed. Can you start signing it so it is available in an environment where running unsigned scripts is restricted by the execution policy.

    I know there are ways around this but it would be nice to see the file signed by MS.

    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  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  9. Documentation on Remoting Session Configuration is missing for PS5.0

    Help is missing on new options for WinRM remoting in PS 5.0

    get-help : No parameter matches criteria TranscriptDirectory.
    At line:1 char:1
    + get-help New-PSSessionConfigurationFile -Parameter TranscriptDirector ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : InvalidArgument: (System.Manageme...CommandHelpInfo:ProviderCommandHelpInfo) [Get-Help],
    
    PSArgumentException
    + FullyQualifiedErrorId : NoParmsFound,Microsoft.PowerShell.Commands.GetHelpCommand

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

    We’ll send you updates on this idea

    2 comments  ·  Documentation  ·  Flag idea as inappropriate…  ·  Admin →
  10. BUG : Test-PSSessionConfigurationFile : Key 'RunAsVirtualAccount' Fails

    The validation process done in Test-PSConfigurationFile for identifying valid keys in a configuration document is which is not working as it should.

    Test-PSSessionConfiguration file calls a method VerifyConfigTable, which as part of its validation routine checks against a set of constants contained in a collection, ConfigTypeEntry.

    RunAsVirtualAccount isn't in this list.

    System.Management.Automation.Remoting.ConfigFileConstants.ConfigFileKeys is the full qualified name

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  11. Using dynamic parameters in a DSC resource

    I just tried to use dynamic parameters in a DSC resource. Unfortunately during testing, DSC prompted me with the following message:
    "The command Test-TargetResource of the PS module MSFTx<RESOURCENAME> does not implement the write property ApplicationPool mentioned in the corresponding MOF schema file C:\Program Files\WindowsPowerShell\Modules&lt;RESOURCENAME>\0.9.0.0\Ds
    cResources\MSFT
    xSPWordAutomationServiceApp\MSFT_<RESOURCENAME>.schema.mof. All write paramenters mentioned in the schema file must be implemented by the command Test-TargetResource."

    So it looks like Dynamic Parameters isn't supported in DSC resource, which is too bad. This forces me to add additional checks in my code.

    Can you please add this support to DSC?

    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 →
  12. Splatting for switch parameter with explicit value does not work properly

    function f {

    param(
    
    [Parameter(Position=1)]
    [Object]$PositionalParameter,
    [Switch]$SwitchParameter
    )
    &quot;`$PositionalParameter=$PositionalParameter;`$SwitchParameter=$SwitchParameter&quot;

    }

    function g {

    f @args
    

    }

    f -SwitchParameter:$false

    $PositionalParameter=;$SwitchParameter=False

    f -SwitchParameter:$true

    $PositionalParameter=;$SwitchParameter=True

    g -SwitchParameter:$false

    $PositionalParameter=False;$SwitchParameter=True

    g -SwitchParameter:$true

    $PositionalParameter=True;$SwitchParameter=True

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

    We’ll send you updates on this idea

    2 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  13. Add write-information logic to write-warning and error

    Please give Write-Warning and Error the same functionality as the new write-information in WMF5.0.

    Would especially like the tag functionaliy

    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  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  14. Support op_addition on System.Object[]

    Votes from Connect: 4

    Original Date Submitted: 5/29/2015 12:55:07 AM

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


    Problem Description:
    PowerShell currently implements addition on arrays:

    $Array = 1,2,3
    $Array = $Array + 4
    $Array = $Array + 5,6,7
    $Array += 8
    $Array += 9,10

    I would like it to support subtraction, such that
    $array -= $object
    $array = $array - $object

    Both become alternate syntax for:
    $array = $array -ne $object

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

    Repro Steps:

    Internal BugId: 14522

    10 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 →
  15. The ~ shortcut for the home folder should IMPLY the FileSystem.

    Votes from Connect: 22

    Original Date Submitted: 5/13/2015 11:36:18 PM

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


    Problem Description:
    Currently, when I write cd ~ if my current provider location is not in the FileSystem provider I get this error:

    cd : Home location for this provider is not set. To set the home location, call "(get-psprovider
    'Registry').Home = 'path'".

    This is a very frustrating implementation because:
    1. Anyone who knows "~" expects it to be in the FileSystem (the equivalent of $Env:UserProfile)
    2. There are NO OTHER providers which define "Home"

    Please change…

    9 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 →
  16. Inline help for DSC resource properties

    Votes from Connect: 38

    Original Date Submitted: 3/20/2015 9:34:20 PM

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


    Problem Description:
    To continue the trend of having built-in help with PowerShell structures, it would be great to add support for help documentation for DSC resource properties, in class-based DSC resources.

    My initial suggestion was to put comment-based help just prior to a [DscProperty()] declaration in a class, but Ravi suggested having a HelpMessage property added to the [DscProperty()] attribute, which I think is a better idea.

    Product Studio item created by Connect Synchronizer due to creation…

    9 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. Powershell ConvertTo-Json Error when has string with trailing backslash

    Votes from Connect: 13

    Original Date Submitted: 5/9/2014 3:59:33 AM

    Description:
    Contact Information
    Handle: George Mauer
    Site Name: PowerShell
    Feedback ID: 869768


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

    Problem Description:
    [The following bit of code generates an error](http://stackoverflow.com/questions/23552000/convertto-json-throws-error-when-using-a-string-terminating-in-backslash)

    W:\surge\ogre&gt; @{SolutionDir=&#39;W:\Surge\ogre\&#39;} | ConvertTo-Json
    
    ConvertTo-Json : The converted JSON string is in bad format.
    At line:1 char:35
    + @{SolutionDir=&#39;W:\Surge\ogre\&#39;} | ConvertTo-Json
    + ~~~~~~~~~~~~~~
    + CategoryInfo : InvalidOperation: (System.Collections.Hashtable:PSObject) [ConvertTo-Json], InvalidOperationException
    + FullyQualifiedErrorId : JsonStringInBadFormat,Microsoft.PowerShell.Commands.ConvertToJsonCommand

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

    Repro Steps: …

    9 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 →
  18. PSsessionConfiguration file is not imported into WSMAN properly in PS5.0

    PS5.0 RTM is not properly importing PSSC files into WSMAN. It's not honoring new attributes like RunAsVirtualAccount etc. Example us below

    WSManConfig: Microsoft.WSMan.Management\WSMan::localhost\Plugin\jea

    Type Name SourceOfValue Value


    System.String RunAsVirtualAccount True

    b8a.pssc | sls "RunAsVirtualAccount"

    RunAsVirtualAccount = $false
    RunAsVirtualAccountGroups= 'Remote Desktop Users', 'Administrators'

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

    We’ll send you updates on this idea

    3 comments  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  19. Make starting a string on a line above a folded code region not unfold the code region

    When beginning a string on a line above a folded code region it unfolds the region because everything after the " becomes part of the string until it's closed with another ". This unfolds previously folded code regions.

    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 →
  20. HelpMessage parameter in Parameter attribute should support empty strings or have better error handling

    Assigning an empty string to the HelpMessage attribute in a function results in an error that only appears at runtime when that function is invoked.

    For example, if you define this function:

    function Test-EmptyHelpMessage {
    [CmdletBinding()]
    param (
    [parameter(HelpMessage = "")]
    [string]
    $String
    )
    }

    When you invoke Test-EmptyHelpMessage, you'll get a non-intuitive runtime error. Depending on how you declare your parameter attributes (on one line, mixed up with a bunch of stuff), it may be difficult to identify what is going on. The error message itself is very poor. Since using an empty string is not supported for the…

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

Feedback and Knowledge Base