microsoft / vscode-powerquery-sdk

Power Query Connector Development SDK for VS Code
MIT License
72 stars 12 forks source link

Output split between "Output" and "Terminal" panes #159

Open bgribaudo opened 2 years ago

bgribaudo commented 2 years ago

Preflight Checklist

Power Query SDK

0.1.7

Regression From

No response

Platform

Windows

Architecture

x64

OS Version

No response

VSCode version

No response

PQSdkTool Path

No response

Bug Description

When VSCode builds an extension then evaluates the current file, the command line statements run + results produced are spliit between VSCode's "Output" and "Terminal" panes.

Steps to Reproduce

Edit extension file so that the SDK rebuilds it, then run "Evaluate current file."

Actual Experience

VSCode "Terminal" pane:

Executing task: c:\Users\ben\.vscode\extensions\powerquery.vscode-powerquery-sdk-0.1.7-win32-x64\.nuget\Microsoft.PowerQuery.SdkTools.2.110.3\tools\MakePQX.exe compile 

{
  "TargetMezRootPath": "C:\\Users\\ben\\Desktop\\TestConnector\\BenTest\\bin\\AnyCPU\\Debug\\BenTest.mez",
  "RelativePathsOfContent": [... {output truncated for brevity}
 *  Terminal will be reused by tasks, press any key to close it. 

VSCode "Output" pane:

[5:28:40 PM]    [Info]  [Task found] c:\Users\ben\.vscode\extensions\powerquery.vscode-powerquery-sdk-0.1.7-win32-x64\.nuget\Microsoft.PowerQuery.SdkTools.2.110.3\tools\PQTest.exe run-test
                --extension "c:\Users\ben\Desktop\TestConnector\BenTest\bin\AnyCPU\Debug\BenTest.mez"
                --queryFile "c:\Users\ben\Desktop\TestConnector\BenTest\BenTest.query.pq"
                --prettyPrint
[5:28:42 PM]    [Info]  RunTestBattery result [
    {
        "ActivityId": "5594a7b4-6688-4e53-9682-18fbf197ca5a",
{output truncated for brevity} 

Expected Experience

Both sets of output to appear in the same pane (i.e. either both in "Terminal" or both in "Output"). That way, the user can see all commands that were used in one place.

Additional Context

No response

mattmasson commented 2 years ago

I'm not sure there is anything we can change here.

@albertli-msft can keep me honest, but the Build Task is triggered at the VS Code level rather than calling it directly from the SDK. This runs it as a Task, so its output shows up in a Terminal window. We do it this way because it allows the developer complete control over their default Build Task, allowing the use of their build utility of choice (ant, make, cake...).

bgribaudo commented 2 years ago

That makes sense. Thanks, @mattmasson.