Files

103 lines
3.7 KiB
YAML

name: Bug report 🐛
description: Report errors or unexpected behavior 🤔
labels: Needs-Triage
body:
- type: checkboxes
attributes:
label: Prerequisites
options:
- label: Write a descriptive title.
required: true
- label: Make sure you are able to repro it on the [latest released version](https://www.powershellgallery.com/packages/PSReadLine)
required: true
- label: Search the existing issues, especially the pinned issues.
required: true
- type: textarea
attributes:
label: Exception report
description: |
Copy and paste the **COMPLETE** exception report message generated by PSReadLine.
If no exception report was involved, simply put "N/A" below.
render: console
placeholder: Oops, something went wrong ...
validations:
required: true
- type: textarea
attributes:
label: Screenshot
description: |
- In case of an exception, **DO NOT take screenshot of the exception report**!
Instead, please scroll up to above the exception report, and take a screenshot of the console state right before the exception happened.
Also, please keep your terminal window size unchanged when taking screenshot.
- If no exception was involved, please upload images or animations that you think may be helpful, or put "N/A" below.
validations:
required: true
- type: textarea
attributes:
label: Environment data
description: |
The following script will generate the environment data that helps triage and investigate the issue.
Please run the script in the PowerShell session where you ran into the issue, and paste the verbatim output below.
```powershell
& {
$hostName = $Host.Name
if ($hostName -eq "ConsoleHost" -and (Get-Command Get-CimInstance -ErrorAction SilentlyContinue)) {
$id = $PID; $inWindowsTerminal = $false
while ($true) {
$p = Get-CimInstance -ClassName Win32_Process -Filter "ProcessId Like $id"
if (!$p -or !$p.Name) { break }
if ($p.Name -eq "WindowsTerminal.exe") { $inWindowsTerminal = $true; break }
$id = $p.ParentProcessId
}
if ($inWindowsTerminal) { $hostName += " (Windows Terminal)" }
}
$m = Get-Module PSReadline
$v = $m.Version; $pre = $m.PrivateData.PSData.Prerelease
if ($pre) { $v = "$v-$pre" }
$os = if ($IsLinux -or $IsMacOS) { uname -a } else { (dir $env:SystemRoot\System32\cmd.exe).VersionInfo.FileVersion }
Write-Host ''
Write-Host "PS Version: $($PSVersionTable.PSVersion)"
Write-Host "PS HostName: $hostName"
Write-Host "PSReadLine Version: $v"
Write-Host "PSReadLine EditMode: $((Get-PSReadLineOption).EditMode)"
Write-Host "OS: $os"
Write-Host "BufferWidth: $([console]::BufferWidth)"
Write-Host "BufferHeight: $([console]::BufferHeight)"
Write-Host ''
}
```
render: console
placeholder: |
PS Version: ...
PS HostName: ...
PSReadLine Version: ...
PSReadLine EditMode: ...
OS: ...
BufferWidth: ...
BufferHeight: ...
validations:
required: true
- type: textarea
attributes:
label: Steps to reproduce
description: |
List of steps or sample code to reproduce the issue.
placeholder: |
A description of how to trigger the issue.
validations:
required: true
- type: textarea
attributes:
label: Expected behavior
placeholder: No exception ...
validations:
required: true
- type: textarea
attributes:
label: Actual behavior
placeholder: The above exception happens ...
validations:
required: true