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. Cmdlet to validate a JSON string against a JSON schema

    Votes from Connect: 7

    Original Date Submitted: 3/5/2015 10:18:32 PM

    Description:
    Contact Information
    Handle: Jamie Thomson
    Site Name: PowerShell
    Feedback ID: 1162436


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

    Problem Description:
    JSON is supported quite well today in PowerShell via ConfertFrom-JSON & ConvertTo-Json. there are gaps though.

    JSON schema is to JSON what XML schema is to XML (see http://json-schema.org/ for more details). it would be really nice to have a cmdlet in powerShell (it might be called Check-JsonSchema, or perhaps Test-jsonSchema) to which I pass a JSON snippet and a JSON schema definition and the…

    7 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. MOF Files Include Authoring Metadata

    Votes from Connect: 4

    Original Date Submitted: 8/20/2014 2:21:09 AM

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


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

    Problem Description:
    When converting configuration blocks to .mof files, they .mof files contain authoring metadata that causes the .mof file's contents and checksum to change, even when none of the configuration in the .mof file has changed. This makes it hard to know when a .mof file's configuration has really changed or not. All .mof files essentially look like they are always changing. This makes…

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

    We’ll send you updates on this idea

    investigating  ·  0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  3. TCP connection hanging in CLOSE_WAIT when using Invoke-RestMethod with PUT or DELETE

    Votes from Connect: 37

    Original Date Submitted: 3/19/2014 9:07:48 PM

    Description:

    Contact Information
    Handle: ChrisBanck
    Site Name: PowerShell
    Feedback ID: 836732


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

    Problem Description:
    When issuing more than two Invoke-RestMethod commands with the PUT or DELETE method against the same server, the third one fails with error: "Invoke-RestMethod : The operation has timed out." Only after closing the powershell and reopening will allow a new Invoke-RestMethod command run successfully.
    This behavior was tested with two different servers, offering a REST API. GET and POST methods are not affected.

    Using "netstat…

    7 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. Subfolder bug with command "copy-item c:\folder\ c:\folder2\ -recurse" when done more times

    Votes from Connect: 15

    Original Date Submitted: 11/28/2013 1:25:47 AM

    Description:
    Contact Information
    Handle: RoviLuca
    Site Name: PowerShell
    Feedback ID: 809855


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

    Problem Description:
    Hello,

    i'm using powershell 4.0 and unexpected behaviour happened when i ran the command : "copy-item c:\folder\ c:\folder2\ -recurse" and in the folder is contained another folder.

    after first run it completes correctly:
    source: c:\folder\temp\test.txt
    Destination: c:\folder2\temp\test.txt

    Done again "copy-item c:\folder\ c:\folder2\ -recurse" and:
    Destination: c:\folder2\temp\temp\test.txt

    Maybe that copy item finding an already existing temp folder, instead of skipping or rewriting, goes inside and…

    6 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 →
  5. get-content -wait does not follow a file

    Votes from Connect: 14

    Original Date Submitted: 7/8/2013 1:59:29 PM

    Description:
    Contact Information
    Handle: Serve Laurijssen
    Site Name: PowerShell
    Feedback ID: 792983


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

    Problem Description:
    Consider the following situation:

    Theres one application writing to a file with the CLR object System.Diagnostics.Trace

    Windows powershell tries to follow the file with get-content "file" -wait

    But whenever a line is added to the file it wont show up in the powershell console.

    Would be nice if this was fixed as it makes downloading tools for this unnessecary

    Product Studio item created by Connect…

    6 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. Make the foreach statement work with a pipeline

    Votes from Connect: 29

    Original Date Submitted: 7/21/2011 4:50:05 AM

    Description:
    Contact Information
    Handle: Joel -Jaykul- Bennett
    Site Name: PowerShell
    Feedback ID: 680120


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

    Problem Description:
    Can we please make foreach(){} work on the pipeline?

    It obviously has output, this works (in version 2):

    $x = foreach($i in 1..5) { $i }
    
    $x | Write-Host

    And so does this:

    ($null = foreach($i in 1..5) { $i }) | Write-Host
    

    But this throws a parse error about a "empty pipe element"

    foreach($i in 1..5) { $i } | write-host
    
    6 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 →
  7. Wrong output in CIM cmdlets like Get-SmbShareAccess, Enable-NetAdapterChecksumOffload, etc.

    (Originally posted in https://connect.microsoft.com/PowerShell/feedback/details/1852524)

    Standard CIM cmdlets can produce invalid output. I reproduced the problem with
    two commands — Get-SmbShareAccess and Enable-NetAdapterChecksumOffload.
    I also believe that the problem is not limited to these particular commands.

    Below is an example of me executing 'Get-SmbShareAccess C$, D$' twice. Please
    note that the first output is incorrect and it shows 6 entries for C$, instead
    of expected 3 entries for C$ and 3 entries for D$:

    PS C:> Get-SmbShareAccess C$, D$

    Name ScopeName AccountName AccessControlType AccessRight


    C$ * BUILTIN\Administrators Allow Full
    C$ * BUILTIN\Administrators Allow Full
    C$ * BUILTIN\Backup Operators Allow Full …

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

    We’ll send you updates on this idea

    0 comments  ·  WMI  ·  Flag idea as inappropriate…  ·  Admin →
  8. *BUG* Windows 10 Powershell HasMoreData incorrect

    Original post from here
    https://social.technet.microsoft.com/Forums/windowsserver/en-US/2ca2b44a-bdb8-49b0-ba0f-76230bfaa7f7/windows-10-powershell-hasmoredata-incorrect?forum=winserverpowershell

    On windows 10 built from scratch its broken. If upgraded from windows 8 its working and it works properly on 8 and 7.

    $sb={$value = get-date}
    $silent = Start-Job -ScriptBlock $sb
    $silent = Get-Job | Wait-Job
    if (Get-Job -HasMoreData $True){'NOT Working'}else{'Working'}

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  9. A better way to check if a file/item exists or not in PowerShell

    Votes from Connect: 3

    Original Date Submitted: 8/9/2015 2:55:53 AM

    Description:
    Contact Information
    Handle: Omid K. Rad
    Site Name: PowerShell
    Feedback ID: 1643846


    Problem Description:
    Related StackOverflow Q/A: http://stackoverflow.com/a/31888581/450913

    The syntax of Test-Path in conditional statements is just too ugly, an prone to logical errors if parenthesis are not used properly:

    if (Test-Path $path) { ... }
    
    

    if (-not (Test-Path $path)) { ... }
    if (!(Test-Path $path)) { ... }

    I would like to suggest the following aliases to be supported natively in PowerShell:

    function not-exist { -not (Test-Path $args) }
    
    Set-Alias !exist not-exist -Option "Constant, AllScope"
    Set-Alias exist Test-Path
    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  10. Support regex modifier operator =~ from perl

    Votes from Connect: 4

    Original Date Submitted: 5/29/2015 1:15:18 AM

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


    Problem Description:
    Just make =~ equivalent to -replace so these two commands mean the same thing:

    $String = $string -replace $pattern,"newtext"
    $String =~ $pattern,"newtext"

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

    Repro Steps:

    Internal BugId: 14523

    6 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 →
  11. Better documentation on writing Providers in .NET

    Votes from Connect: 4

    Original Date Submitted: 5/9/2015 3:36:45 AM

    Description:
    Contact Information
    Handle: TofuBug
    Site Name: PowerShell
    Feedback ID: 1315394


    Problem Description:
    It would be a VERY nice thing to see an expanded set of documentation and examples related to writing PowerShell providers that go beyond the simple examples currently related to access databases.

    A webcast or training video would be awesome! Especially to go over things like

    -How to determine what type of provider would best suit my specific need with actual examples showing those reasons)
    -What are some things I can do to "think" about things through…

    6 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 →
  12. Fix [DateTime] for proper international use

    Votes from Connect: 21

    Original Date Submitted: 12/22/2014 2:44:28 AM

    Description:
    Contact Information
    Handle: Chris J Warwick
    Site Name: PowerShell
    Feedback ID: 1062130


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

    Problem Description:
    The [DateTime] type accelerator assumes US format dates for short date formats. As a user outside of the US, the date ‘1/2/2014’ would be the 1st February 2014 for me - but I assume not everyone would see it that way. This does not vary depending on your locale.

    I often see people struggling with this and even to this day, date formatting is…

    5 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 →
  13. powershell should have a [json] accelerator

    Votes from Connect: 25

    Original Date Submitted: 11/14/2014 6:10:38 AM

    Description:
    Contact Information
    Handle: Oisín Grehan
    Site Name: PowerShell
    Feedback ID: 1029193


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

    Problem Description:
    JSON is taking a greater role these days in many places: rest, asp.net vnext etc. It would be nice to be able to use an accelerator as a shortcut to using the convertfrom-json cmdlet. e.g.

    ps> $obj = [json]"{ x: 1; y: 2}"
    ps> $obj.x
    1

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

    Repro…

    6 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. DSC: Group resource fails to add a domain user to a local group without domain credentials

    Votes from Connect: 8

    Original Date Submitted: 8/28/2014 4:44:56 AM

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


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

    Problem Description:
    The Group resource fails to add a domain user to a local group without domain credentials. Also, if using credentials, they have to be in the same domain as the account being added, so you can't mix accounts from different domains.

    I know the LCM can talk to our AD because I wrote the following Script resource which works. This is rough and…

    6 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. Invoke-RestMethod bypasses proxy server for local connections

    Votes from Connect: 3

    Original Date Submitted: 7/25/2014 12:59:37 AM

    Description:
    Contact Information
    Handle: Trevor Sullivan
    Site Name: PowerShell
    Feedback ID: 928132


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

    Problem Description:
    When using Invoke-RestMethod to connect to the local computer, the proxy server specified in the -Proxy parameter, as well as the configured system-wide proxy (eg. when using Fiddler), is bypassed.

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

    Repro Steps:
    1. Install IIS (if necessary)
    2. Open PowerShell ISE
    3. Install/launch Fiddler
    4. Run…

    5 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. 'Set-Service -Status Stopped' fails with "Cannot stop service 'servicename' because it is dependent on other services‏

    Votes from Connect: 27

    Original Date Submitted: 10/26/2011 8:07:49 PM

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


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

    Problem Description:
    Using Set-Service on remote machines to set a service to be Stopped, e.g.

    Set-Service -ComputerName Server01 -Name spooler -Status stopped

    fails to stop the service on those with dependent services. The error is "Set-Service : Cannot stop service 'Print Spooler (spooler)' because it is dependent on other services."

    This service stops without issue from the GUI or from net stop spooler. Using

    Stop-Service Spooler

    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 →
  17. Write-Error in a cmdlet should output more like PSCmdlet.WriteError

    It's a lot of work to call $PSCmdlet.WriteError or $PSCmdlet.ThrowTerminatingError -- I hate having to do it.

    Write-Error should support customizing the error and even throwing terminating errors so that we can do less of this.

    See for example the "ThrowError" function in Microsoft's PowerShellGet\PSGet.psm1 module.

    More and more modules are including a wrapper function like this to clean up error messages, and it's silly and unnecessary -- the functionality should be built into Write-Error.

    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  ·  PowerShell Engine  ·  Flag idea as inappropriate…  ·  Admin →
  18. Execute multi-line command line using F8 without selecting the region.

    Consider the following in the script pane:

    Get-Command `
    -Verb Get

    If the cursor is on the first line containing "Get-Command" and if F8 is pressed, an "IncompleteString" error is generated. Since, there is a back-tick present at the end of the line, ISE should take the next line into account for execution.

    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 →
  19. Powershell 5 on windows 10

    Please release an update for the Windows 10 Powershell 5.0 preview release, so we can play with it without the need of Server OS.

    3 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 →
  20. Help for Install-Module does not reflect that -Force overrides repository installation policy

    The help document for Install-Module has the following text on the parameter -Force:
    -Force [<SwitchParameter>]

        Forces the installation of modules. If a module of the same name and version already exists on the computer,
    
    this parameter overwrites the existing module with one of the same name that was found by the command.

    This does not reflect that the parameter also makes Install-Module ignore the repository installation policy.

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

Feedback and Knowledge Base