Getting read EPIPE error

Issue #226 resolved
Former user created an issue

When I run either * > PowerShell Pro Tools: Generate Windows Form * > PowerShell Pro Tools: Show Windows Forms Designer

in Visual Studio code a Read EPIPE error shows up in lower right hand corner of active window.

A potential wrinkle in the issue is that I've installed the system version of VS Code (versus the user version)

Please help

Comments (9)

  1. Adam Driscoll

    Are you seeing any errors in the terminal window when the extension loads or just this error?

  2. Christopher R. Lowery

    I’m having the same issue with Generate Windows Form and Profile Script (though not with Show Windows Form Designer).

    The renderer1.log gets the following error recorded:

    [2019-11-27 14:42:24.287] [renderer1] [error] read EPIPE: Error: read EPIPE
        at Pipe.onStreamRead (internal/stream_base_commons.js:183:27)
    

  3. Adam Driscoll

    I just published 5.4.3 to the gallery. Can you please update your extension and enable the Debug Module Load setting in the PowerShell Pro Tools section? It will print log messages to the terminal window.

  4. Christopher R. Lowery

    Done. Here’s what I got:

    PS> Import-Module 'c:\Users\<user>\.vscode\extensions\ironmansoftware.powershellprotools-5.4.3\out\PowerShellProTools.VSCode.psd1' -ArgumentList 
    @($true)
    Starting server with PSScriptRoot: C:\Users\<user>\.vscode\extensions\ironmansoftware.powershellprotools-5.4.3\out
    Importing PowerShell Pro Tools module.
    Importing PowerShell Pro Tools for VS Code module.
    Starting named pipe server.
    Starting server with PSScriptRoot: C:\Users\<user>\.vscode\extensions\ironmansoftware.powershellprotools-5.4.3\out
    PoshProTools runspace already exists. Not starting server.
    PS> Received command: 
    Exception in server: System.IO.IOException: Pipe is broken.
       at System.IO.Pipes.NamedPipeServerStream.CheckConnectOperationsServer()
       at System.IO.Pipes.NamedPipeServerStream.CheckConnectOperationsServerWithHandle()
       at System.IO.Pipes.NamedPipeServerStream.WaitForConnection()
       at PowerShellToolsPro.Cmdlets.VSCodeHelpers.StartServer(String psScriptRoot) in D:\a\1\s\PowerShellToolsPro.Cmdlets\VSCodeHelpers.cs:line 103
    Received command: Install-PoshProToolsLicense -License 'poshtools-[redacted]' -StoreInMemory
    Output is not null. Writing output (41 bytes).
    Received command: Get-PoshProToolsLicense | ForEach-Object { [PSCustomObject]@{ UserName = $_.UserName; EndDate = $_.EndDate.ToString(); IsTrial = $_.IsTrial; Status = $_.Status.ToString() } } | ConvertTo-Json
    Output is not null. Writing output (118 bytes).
    

    (first post deleted because I realized it had the license info in it and I hadn’t redacted it)

  5. Adam Driscoll

    Thanks. Can you try executing the commands you’re having issues with? Aside from the exception, which is likely benign, your log looks ok.

  6. Christopher R. Lowery
    Received command: Get-PoshProToolsLicense | ForEach-Object { [PSCustomObject]@{ UserName = $_.UserName; EndDate = $_.EndDate.ToString(); IsTrial = $_.IsTrial; Status = $_.Status.ToString() } } | ConvertTo-Json
    Output is not null. Writing output (118 bytes).
    Received command: ConvertTo-WinForm -Path 'e:\repo\ps\tools\ADTools.ps1' -OutputPath 'e:\repo\ps\tools\ADTools.form.ps1'
    
    Received command: Get-PoshProToolsLicense | ForEach-Object { [PSCustomObject]@{ UserName = $_.UserName; EndDate = $_.EndDate.ToString(); IsTrial = $_.IsTrial; Status = $_.Status.ToString() } } | ConvertTo-Json
    Output is not null. Writing output (118 bytes).
    Received command: Measure-Script -FilePath 'e:\repo\ps\tools\ADTools.ps1' | ConvertTo-Json -Depth 10 
    Output is not null. Writing output (2226 bytes).
    
    Received command: Get-PoshProToolsLicense | ForEach-Object { [PSCustomObject]@{ UserName = $_.UserName; EndDate = $_.EndDate.ToString(); IsTrial = $_.IsTrial; Status = $_.Status.ToString() } } | ConvertTo-Json
    Output is not null. Writing output (118 bytes).
    Received command: Measure-Script -FilePath 'e:\repo\ps\local-testcode\ADMembershipDiff.ps1' | ConvertTo-Json -Depth 10
    

    The second one didn’t give the error, though I wonder if that error is caused (on the third) by the script dot sourcing another file with functions in it…

    Also, although I get the read EPIPE error on the first one, it does still generate the files. I haven’t checked if they’re fully functional yet though.

  7. Adam Driscoll

    The EPIPE error will be resolved in 5.4.5. The issue was that an error is being thrown internally by PoshTools and it’s not being shown correctly in the UI. I think what we will find is a different error is being returned that we can diagnosis when that pops up. Please open a new issue with the relevant information,

  8. Log in to comment