diff options
Diffstat (limited to 'extension/src/activation')
| -rw-r--r-- | extension/src/activation/activate.ts | 103 | ||||
| -rw-r--r-- | extension/src/activation/environmentSetup.ts | 19 | 
2 files changed, 51 insertions, 71 deletions
| diff --git a/extension/src/activation/activate.ts b/extension/src/activation/activate.ts index a7f6c55b..a1d88a31 100644 --- a/extension/src/activation/activate.ts +++ b/extension/src/activation/activate.ts @@ -1,7 +1,4 @@  import * as vscode from "vscode"; -import { registerAllCommands } from "../commands"; -import { registerAllCodeLensProviders } from "../lang-server/codeLens"; -import { sendTelemetryEvent, TelemetryEvent } from "../telemetry";  import IdeProtocolClient from "../continueIdeClient";  import { getContinueServerUrl } from "../bridge";  import { ContinueGUIWebviewViewProvider } from "../debugPanel"; @@ -10,8 +7,6 @@ import {    startContinuePythonServer,  } from "./environmentSetup";  import fetch from "node-fetch"; -import registerQuickFixProvider from "../lang-server/codeActions"; -// import { CapturedTerminal } from "../terminal/terminalEmulator";  const PACKAGE_JSON_RAW_GITHUB_URL =    "https://raw.githubusercontent.com/continuedev/continue/HEAD/extension/package.json"; @@ -37,60 +32,60 @@ export async function activateExtension(context: vscode.ExtensionContext) {      .catch((e) => console.log("Error checking for extension updates: ", e));    // Start the server and display loader if taking > 2 seconds -  await new Promise((resolve) => { -    let serverStarted = false; +  const sessionIdPromise = (async () => { +    await new Promise((resolve) => { +      let serverStarted = false; -    // Start the server and set serverStarted to true when done -    startContinuePythonServer().then(() => { -      serverStarted = true; -      resolve(null); -    }); +      // Start the server and set serverStarted to true when done +      startContinuePythonServer().then(() => { +        serverStarted = true; +        resolve(null); +      }); -    // Wait for 2 seconds -    setTimeout(() => { -      // If the server hasn't started after 2 seconds, show the notification -      if (!serverStarted) { -        vscode.window.withProgress( -          { -            location: vscode.ProgressLocation.Notification, -            title: -              "Starting Continue Server... (it may take a minute to download Python packages)", -            cancellable: false, -          }, -          async (progress, token) => { -            // Wait for the server to start -            while (!serverStarted) { -              await new Promise((innerResolve) => -                setTimeout(innerResolve, 1000) -              ); +      // Wait for 2 seconds +      setTimeout(() => { +        // If the server hasn't started after 2 seconds, show the notification +        if (!serverStarted) { +          vscode.window.withProgress( +            { +              location: vscode.ProgressLocation.Notification, +              title: +                "Starting Continue Server... (it may take a minute to download Python packages)", +              cancellable: false, +            }, +            async (progress, token) => { +              // Wait for the server to start +              while (!serverStarted) { +                await new Promise((innerResolve) => +                  setTimeout(innerResolve, 1000) +                ); +              } +              return Promise.resolve();              } -            return Promise.resolve(); -          } -        ); -      } -    }, 2000); -  }); +          ); +        } +      }, 2000); +    }); -  // Initialize IDE Protocol Client -  const serverUrl = getContinueServerUrl(); -  ideProtocolClient = new IdeProtocolClient( -    `${serverUrl.replace("http", "ws")}/ide/ws`, -    context -  ); +    // Initialize IDE Protocol Client +    const serverUrl = getContinueServerUrl(); +    ideProtocolClient = new IdeProtocolClient( +      `${serverUrl.replace("http", "ws")}/ide/ws`, +      context +    ); +    return await ideProtocolClient.getSessionId(); +  })();    // Register Continue GUI as sidebar webview, and beging a new session -  { -    const sessionIdPromise = await ideProtocolClient.getSessionId(); -    const provider = new ContinueGUIWebviewViewProvider(sessionIdPromise); +  const provider = new ContinueGUIWebviewViewProvider(sessionIdPromise); -    context.subscriptions.push( -      vscode.window.registerWebviewViewProvider( -        "continue.continueGUIView", -        provider, -        { -          webviewOptions: { retainContextWhenHidden: true }, -        } -      ) -    ); -  } +  context.subscriptions.push( +    vscode.window.registerWebviewViewProvider( +      "continue.continueGUIView", +      provider, +      { +        webviewOptions: { retainContextWhenHidden: true }, +      } +    ) +  );  } diff --git a/extension/src/activation/environmentSetup.ts b/extension/src/activation/environmentSetup.ts index c341db39..5a9345a6 100644 --- a/extension/src/activation/environmentSetup.ts +++ b/extension/src/activation/environmentSetup.ts @@ -9,7 +9,6 @@ import fetch from "node-fetch";  import * as vscode from "vscode";  import * as os from "os";  import fkill from "fkill"; -import { sendTelemetryEvent, TelemetryEvent } from "../telemetry";  const WINDOWS_REMOTE_SIGNED_SCRIPTS_ERROR =    "A Python virtual enviroment cannot be activated because running scripts is disabled for this user. In order to use Continue, please enable signed scripts to run with this command in PowerShell: `Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser`, reload VS Code, and then try again."; @@ -57,9 +56,6 @@ async function retryThenFail(        vscode.window.showErrorMessage(msg);      } -    sendTelemetryEvent(TelemetryEvent.ExtensionSetupError, { -      error: e.message, -    });      throw e;    }  } @@ -83,12 +79,6 @@ async function runCommand(cmd: string): Promise<[string, string | undefined]> {      stdout = "";    } -  if (stderr) { -    sendTelemetryEvent(TelemetryEvent.ExtensionSetupError, { -      error: stderr, -    }); -  } -    return [stdout, stderr];  } @@ -139,7 +129,7 @@ export async function getPythonPipCommands() {      if (!versionExists) {        vscode.window.showErrorMessage( -        "Continue requires Python3 version 3.8 or greater. Please update your Python3 installation, reload VS Code, and try again." +        "Continue requires Python version 3.8 or greater. Please update your Python installation, reload VS Code, and try again."        );        throw new Error("Python3.8 or greater is not installed.");      } @@ -480,16 +470,11 @@ export async function startContinuePythonServer() {              console.log("Successfully started Continue python server");              resolve(null);            } else if (data.includes("ERROR") || data.includes("Traceback")) { -            sendTelemetryEvent(TelemetryEvent.ExtensionSetupError, { -              error: data, -            }); +            console.log("Error starting Continue python server: ", data);            }          });          child.on("error", (error: any) => {            console.log(`error: ${error.message}`); -          sendTelemetryEvent(TelemetryEvent.ExtensionSetupError, { -            error: error.message, -          });          });          // Write the current version of vscode to a file called server_version.txt | 
