PowerShell / PowerShell/vscode-powershell

PSDefaultParameterValues on Get-Help for ShowWindow triggers help window on mouse over of cmdlet

Open
#2,121 8 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Area-UI Issue-Bug Up for Grabs
Dominant language
TypeScript
Stars
1.9k
Forks
547
PR merge metrics
No merged PRs in 30d

Description

System Details
  • Windows 10 build 17134
  • VS Code 1.26.1
  • PowerShell extension v2019.5.0
  • Output from $PSVersionTable
    Name Value

PSVersion 5.1.17134.858
PSEdition Desktop
PSCompatibleVersions {1.0, 2.0, 3.0, 4.0...}
BuildVersion 10.0.17134.858
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1

Issue Description

With the following set, i get a help window pop up on mouse over of cmdlets/functions
$PSDefaultParameterValues.'Get-Help:ShowWindow' = $true

Expected Behaviour

Nothing

Actual Behaviour

Help window pops up

Attached Logs

event log that triggers it:

2019-08-05 10:59:47.487 [VERBOSE] tid:23 in 'WriteMessage' C:\PowerShellEditorServices\src\PowerShellEditorServices.Protocol\MessageProtocol\MessageWriter.cs: line 88
    Writing Response 'textDocument/hover' with id 10
    
    {
      "jsonrpc": "2.0",
      "id": "10",
      "result": {
        "contents": [
          {
            "language": "PowerShell",
            "value": "function Set-PSReadlineOption"
          }
        ],
        "range": {
          "start": {
            "line": 42,
            "character": 0
          },
          "end": {
            "line": 42,
            "character": 20
          }
        }
      }
    }```

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the PowerShell extension behavior with $PSDefaultParameterValues.'Get-Help:ShowWindow' set to $true, then trace the textDocument/hover request described in the log. Review the MessageWriter.cs output and hover-related entry points to determine why help is shown on mouse over. Done means hovering over a cmdlet or function no longer opens a help window under this setting, while normal hover behavior remains intact.

Written by the indexing model from the issue text.

Assessment

Tech stack
powershell, typescript
Domain
developer-experience, tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.