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. PowerShell Should Ship all its Modules through a NuGet-like service

    Votes from Connect: 63

    Original Date Submitted: 11/29/2012 12:00:27 AM

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


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

    Problem Description:
    The PowerShell team should ship it's modules via a Module Repository (like NuGet), and add commands for retrieving and installing modules to the Core module.

    They should use that mechanism to further separate releases from the Windows Server ship schedule. In fact, I suggest that you should externalize all of the non-core modules (everything which is currently loaded on-demand) to separate them from the…

    12 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 →

    Thanks for the suggestion. This is something we are investigating, but it requires some complex review to ensure proper operation across a range of Windows actions (eg: applying Windows updates). No decision has been made at this time.

  2. "Test-NetConnection" add timeout

    please add timeout to "Test-NetConnection" see https://superuser.com/q/805621/216033

    11 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 →
  3. Copy headers when copying from Out-GridView

    It would be great to copy headers for all the columns when copying data from the Out-GridView table lists.

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

    We’ll send you updates on this idea

    survey  ·  2 comments  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  4. Invoke-WebRequest returned object hangs when accessing Links property

    OS: Windows 7 - 10

    Name : ConsoleHost
    Version : 5.0.10586.117
    InstanceId : 078d4e23-84fd-433c-a831-37bb0935166e
    UI : System.Management.Automation.Internal.Host.InternalHostUserInterface
    CurrentCulture : en-US
    CurrentUICulture : en-US
    PrivateData : Microsoft.PowerShell.ConsoleHost+ConsoleColorProxy
    DebuggerEnabled : True
    IsRunspacePushed : False
    Runspace : System.Management.Automation.Runspaces.LocalRunspace


    Not working example:

    $releases = 'https://github.com/hluk/CopyQ/releases'
    $downloadpage = Invoke-WebRequest -Uri $releases -UseBasicParsing
    $download
    page.links # <-- hangs here

    Other properties seem to work normally.


    This example uses basic parsing and works without out. However, the behavior doesn't generally depend on this setting and I had sites that hang on many occasions.

    The following issues seems related:

    https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/11088744-invoke-webrequest-hangs-in-some-cases-unless-use
    https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/11515881-invoke-webrequest-hangs-freeze-at-many-websites

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

    We’ll send you updates on this idea

    survey  ·  4 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  5. BUG: new-localuser fails to allow connection to Microsoft account

    The New-LocalUser cmdlet available in Windows 10 Anniversary Update cannot perform a function described in the documentation.

    Local user accounts may be connected with existing Microsoft accounts. New-LocalUser should support this by accepting a -Name parameter of the form "MicrosoftAccount&lt;user>@outlook.com". This is described in the detailed help.

    However this fails because the parameter fails validation as it is over 20 characters in length (already true with "MicrosoftAccount&quot; and "@outlook.com" let alone the "actual" user name). The 20 character limit is valid for a regular local account name, but shouldn't be valid for an MS account name.

    There appears no other…

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

    We’ll send you updates on this idea

    survey  ·  4 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  6. Req: JEA add ability to define parameter as mandatory in psrc

    Currently you can define what parameters are exposes and if needed, you can provide a validateset or validatepattern for the parameter. What I can't do is specify the parameter in question should be mandatory even though the cmdlet or function does not enforce its usage.
    E.g.: I define the following in my psrc
    VisibleCmdlets = @{

    Name = &#39;Get-Process&#39;
    
    Parameters = @{
    Name = &#39;Name&#39;
    ValidateSet = &#39;ZoomIt&#39;
    }

    }

    this does not restrict the user from just typing Get-Service and have every service returned.
    Current workaround is to create a proxy function and expose that instead of the cmdlet. …

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

    We’ll send you updates on this idea

    survey  ·  1 comment  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  7. Class based DSC Description Attribute

    Add a description Attribute or extend the DscProperty and DscResource attributes to allow for descriptions that should be surfaced in the generated MOF file.

    Looking at how the MOF file is currently generated using Reflection this should be easy to implement.

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

    We’ll send you updates on this idea

    survey  ·  0 comments  ·  Desired State Configuration (DSC)  ·  Flag idea as inappropriate…  ·  Admin →
  8. Import-Module -Verbose:$False doesn't suppress verbose messages

    Compare the following:

    $VerbosePreference = 'Continue'
    Import-Module -Name Storage -Verbose:$False

    and

    $VerbosePreference = 'SilentlyContinue'
    Import-Module -Name Storage

    The first produces lots of verbose output: "Importing function", etc. The second produces no verbose output. It seems to me that neither should produce any verbose output.

    11 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 →
  9. Bug: Get-ItemPropertyValue does not respect -ErrorAction SilentlyContinue

    Get-ItemPropertyValue throws an exception if the requested property does not exist when -ErrorAction is set to SilentlyContinue

    COMMAND:
    Get-ItemPropertyValue HKLM:\SOFTWARE\TEST -Name 'SomeNonExistentProperty' -ErrorAction SilentlyContinue

    OUTPUT:
    Get-ItemPropertyValue : Property SomeNonExistentProperty does not exist at path HKEYLOCALMACHINE\SOFTWARE\TEST.
    At line:1 char:1
    + Get-ItemPropertyValue HKLM:\SOFTWARE\TEST -Name 'SomeNonExistentProperty' ...
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : InvalidArgument: (:) [Get-ItemPropertyValue], PSArgumentException
    
    + FullyQualifiedErrorId : Argument,Microsoft.PowerShell.Commands.GetItemPropertyValueCommand

    11 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. Bug: Copy-Item -FromSession Fails if Local Machine Doesn't Have the Drive Being Copied From

    TLDR

    In the title. If you copy from the F:\ drive on the remote machine and the local machine doesn't have an F:\ drive, failure mode ensues.

    Scenario:

    Bob wants to copy a test.txt from &quot;F:\PowerShell&quot; on RemoteServer to &quot;C:\Users\Bob&quot; on LocalMachine.

    $Session = New-PSSession -ComputerName RemoteServer -Credential (Get-Credential RemoteDomain\Bob)
    
    Copy-Item -FromSession $Session -Path &quot;F:\PowerShell\Test.txt&quot; -Destination &quot;C:\Users\Bob&quot;

    Result:

    > Copy-Item : A parameter cannot be found that matches parameter name 'FromSession'.

    Notes:


    1. Bob has full permissions to both the F:\ drive and the file on RemoteServer.

    2. Bob is able to successfully copy files from C:\ and D:\ on the RemoteServer…
    11 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 →
  11. semantic versioning

    Semantic versioning does not work for PSGallery

    Allow new versions of modules to be published according to semantic version.

    Without semantic versioning, it is very difficult to evolve a module in a backwards compatible manner. Sometimes breaking changes are needed to get away from previous bad design decisions, but you still don't want to break existing clients, and wants to be able to provide bug fixes for those.

    That is, allow v1.1 to be published, even if there is a v2.0.

    See http://semver.org/ for details.

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

    We’ll send you updates on this idea

    0 comments  ·  Package Management  ·  Flag idea as inappropriate…  ·  Admin →

    Thanks for the suggestion. This one may be a bit tougher than others. However, your point is clear – there’s no way to rev an older version of a module once you have published a major version due to a breaking change.

  12. nCurses-like Library for PowerShell

    Votes from Connect: 10

    Original Date Submitted: 5/22/2015 10:16:03 PM

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


    Problem Description:
    Please include a text-GUI library, similar to nCurses, with PowerShell on Nano Server. This would enable the building of applications, such as text-based text editors.

    The framework should include support for building text-based windows, and keyboard shortcuts.

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

    Repro Steps:

    Internal BugId: 14507

    11 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. Powershell editor tab/indent size

    Votes from Connect: 12

    Original Date Submitted: 11/7/2014 1:29:30 AM

    Description:
    Contact Information
    Handle: SPGC
    Site Name: PowerShell
    Feedback ID: 1022999


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

    Problem Description:
    PLEASE can we have the option of changing the tab size in the editor as well as the option to replace tabs with spaces etc. as is generally available in most editors!

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

    Repro Steps:
    Expected Results:

    Internal BugId: 13090

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

    We’ll send you updates on this idea

    1 comment  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  14. Test-Path does not support PSCredential

    Votes from Connect: 4

    Original Date Submitted: 8/12/2014 2:16:43 AM

    Description:
    Contact Information
    Handle: Graeme Bray
    Site Name: PowerShell
    Feedback ID: 943873


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

    Problem Description:
    Test-Path states that it supports a PSCredential, however it does not and errors when you attempt to pass a Credential object to it. This should either be removed or it should be changed to allow the passage of credentials.

    This can especially be an issue if there is no trust between domains/forest and you have to pass a credential in a script that…

    11 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 →
  15. Please enable port forwarding within PowerShell

    The very cool features on linux is about the port forwarding when we ssh to a remote server.
    I hope PowserShell come with these cool things.

    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  ·  WinRM  ·  Flag idea as inappropriate…  ·  Admin →
  16. Pure Pain: Preinstalled PS Modules - Please Rationalize Them with Package Management Installs

    I am trying to update Pester on Windows 2016 to 4.x because the preshipped Pester 3.4.0 emits a note about the depreciation of the -quiet switch when I use the quiet switch. This get's scooped into stdout when executing via AWS SSM remote commands. Version 3.x complains it does not understand "-Show None".

    I want to update to 4.x - in which I ran into all the problems documented here: https://github.com/OneGet/oneget/issues/215

    But ended up with "Install-module pester -force -SkipPublisherCheck.

    So far so bad, but when I go to remove the 3.4.0 version (with admin rights) from: 'c:\program files\windowspowershell\modules\pester\3.4.0' I get…

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

    We’ll send you updates on this idea

    6 comments  ·  Package Management  ·  Flag idea as inappropriate…  ·  Admin →

    The issues you have encountered can be frustrating, sorry that is the case for you.

    Moving this to Survey to try to gauge the scope of the problem for users generally.

    We are somewhat limited by security requirements: what ships with Windows will always be tagged so that nothing can replace it easily unless it is signed by Microsoft. While Pester is part of Windows, it is not owned or developed by Microsoft, so updates delivered via the Gallery cannot be Microsoft signed.

    Once the Gallery version is installed on a system, -SkipPublisherCheck is no longer required for future updates. That first experience, however, is bad.

    This leaves us with a dilemma: do we stop shipping Pester in with PowerShell in the future, or do we continue to provide the feature set knowing users who update from the Gallery will encounter these issues?

    Looking for feedback from as many users…

  17. Get-Credential does not support Smart Card user name hints

    If you utilize Smart Cards with certificates that are not directly linked to users (no suitable user DN in Subject and no UPNs in SANs), you are able to link a single certificate to multiple accounts dynamically with the caveat that users need to provide explicit user name hints during logon in order to log on.

    User name hints need to be enabled via GPO or registry settings ("X509HintsNeeded"), after which all standard credential dialogs in Windows support them, except PowerShell's Get-Credential. This effectively prevents using PowerShell remoting with such Smart Cards / certificates if different credentials are required.

    In…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  18. Need a PowerShell version of tpmvscmgr.exe to manage TPM smart cards

    We need a PowerShell version of tpmvscmgr.exe to manage TPM virtual smart cards.

    The tpmvscmgr.exe tool 1) does not accept PIN, PUK and AdminKey numbers as arguments, these must be entered interactively in powershell.exe only, not ISE or with a pop-up, 2) cannot list currently existing virtual smart card ID strings, and 3) is somewhat crude in how it manages card lockout policies and unlocks.

    This is needed not just for Windows clients, but also because Server 2016 Hyper-V supports virtual smart cards for guest VMs, such as for VDI scenarios.

    We need to be able to pass in PIN,…

    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  ·  Other PowerShell  ·  Flag idea as inappropriate…  ·  Admin →
  19. Compress-Archive throws "OutOfMemory" on large folders

    When using Compress-Archive on a very large folder, I am getting a "OutOfMemory Exception" error. This also happens when I pipe the folder from Get-ChildItem.

    PS E:&gt; Compress-Archive -Path \servername\downloads\foldername -DestinationPath e:\Foldername_bef
    ore-12-01-2016.zip -CompressionLevel Optimal
    Exception calling "Write" with "3" argument(s): "Exception of type 'System.OutOfMemoryException' was thrown."
    At
    C:\windows\system32\windowspowershell\v1.0\Modules\Microsoft.PowerShell.Archive\Microsoft.PowerShell.Archive.psm1:809
    char:29
    + ... $destStream.Write($buffer, 0, $numberOfBytesRead)
    + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    + CategoryInfo          : NotSpecified: (:) [], MethodInvocationException
    
    + FullyQualifiedErrorId : OutOfMemoryException

    PS E:&gt; $Psversiontable

    Name Value


    PSVersion 5.0.10586.117
    PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
    BuildVersion 10.0.10586.117
    CLRVersion 4.0.30319.34209
    WSManStackVersion 3.0
    PSRemotingProtocolVersion 2.3
    SerializationVersion 1.1.0.1

    PS E:&gt;

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

    We’ll send you updates on this idea

    3 comments  ·  Microsoft.PowerShell.* Modules  ·  Flag idea as inappropriate…  ·  Admin →
  20. Support basic line wrapping in ISE Script Pane

    All IDE's support line wrapping inside the editor, except Powershell ISE (even Notepad has it)! This is useful, for example, when using ISE in a virtual machine console session, where the screen is often smaller than your screens actual resolution.

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

    We’ll send you updates on this idea

    survey  ·  0 comments  ·  ISE and tooling  ·  Flag idea as inappropriate…  ·  Admin →
  • Don't see your idea?

Feedback and Knowledge Base