diff options
-rw-r--r-- | .devcontainer/devcontainer.json | 1 | ||||
-rw-r--r-- | continuedev/src/continuedev/server/main.py | 12 | ||||
-rw-r--r-- | extension/package-lock.json | 4 | ||||
-rw-r--r-- | extension/package.json | 2 | ||||
-rw-r--r-- | extension/src/util/vscode.ts | 43 | ||||
-rw-r--r-- | logging.ini | 27 |
6 files changed, 68 insertions, 21 deletions
diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json index be682b50..ad93c14a 100644 --- a/.devcontainer/devcontainer.json +++ b/.devcontainer/devcontainer.json @@ -1,6 +1,5 @@ { "image": "mcr.microsoft.com/devcontainers/universal:2", "features": { - "postCreateCommand": "curl -sSL https://install.python-poetry.org | python3 -" } } diff --git a/continuedev/src/continuedev/server/main.py b/continuedev/src/continuedev/server/main.py index 7b7124de..a8597c8a 100644 --- a/continuedev/src/continuedev/server/main.py +++ b/continuedev/src/continuedev/server/main.py @@ -1,8 +1,10 @@ import os +import sys from fastapi import FastAPI from fastapi.middleware.cors import CORSMiddleware from .ide import router as ide_router from .gui import router as gui_router +import logging import uvicorn import argparse @@ -23,6 +25,7 @@ app.add_middleware( @app.get("/health") def health(): + print("Testing") return {"status": "ok"} @@ -32,12 +35,15 @@ parser.add_argument("-p", "--port", help="server port", type=int, default=8000) args = parser.parse_args() +log_file = open('output.log', 'a') +sys.stdout = log_file + + def run_server(): if os.path.exists("logging.yaml"): - uvicorn.run(app, host="0.0.0.0", port=args.port, - log_config="logging.yaml") + uvicorn.run(app, host="0.0.0.0", port=args.port, log_level="info") else: - uvicorn.run(app, host="0.0.0.0", port=args.port) + uvicorn.run(app, host="0.0.0.0", port=args.port, log_level="info") if __name__ == "__main__": diff --git a/extension/package-lock.json b/extension/package-lock.json index 647e3aa2..15ea6428 100644 --- a/extension/package-lock.json +++ b/extension/package-lock.json @@ -1,12 +1,12 @@ { "name": "continue", - "version": "0.0.13", + "version": "0.0.14", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "continue", - "version": "0.0.13", + "version": "0.0.14", "license": "Apache-2.0", "dependencies": { "@electron/rebuild": "^3.2.10", diff --git a/extension/package.json b/extension/package.json index 1219ca8e..2d83a58c 100644 --- a/extension/package.json +++ b/extension/package.json @@ -14,7 +14,7 @@ "displayName": "Continue", "pricing": "Free", "description": "Refine code 10x faster", - "version": "0.0.13", + "version": "0.0.14", "publisher": "Continue", "engines": { "vscode": "^1.74.0" diff --git a/extension/src/util/vscode.ts b/extension/src/util/vscode.ts index 4eab98a7..a76b53c7 100644 --- a/extension/src/util/vscode.ts +++ b/extension/src/util/vscode.ts @@ -128,25 +128,40 @@ export async function readFileAtRange( }); } +let showTextDocumentInProcess = false; + export function openEditorAndRevealRange( editorFilename: string, range?: vscode.Range, viewColumn?: vscode.ViewColumn ): Promise<vscode.TextEditor> { return new Promise((resolve, _) => { - // Check if the editor is already open - vscode.workspace.openTextDocument(editorFilename).then((doc) => { - vscode.window - .showTextDocument( - doc, - getViewColumnOfFile(editorFilename) || viewColumn - ) - .then((editor) => { - if (range) { - editor.revealRange(range); - } - resolve(editor); - }); - }); + vscode.workspace.openTextDocument(editorFilename).then(async (doc) => { + try { + // An error is thrown mysteriously if you open two documents in parallel, hence this + while (showTextDocumentInProcess) { + await new Promise((resolve) => { + setInterval(() => { + resolve(null); + }, 200); + }) + } + showTextDocumentInProcess = true; + vscode.window + .showTextDocument( + doc, + getViewColumnOfFile(editorFilename) || viewColumn + ) + .then((editor) => { + if (range) { + editor.revealRange(range); + } + resolve(editor); + showTextDocumentInProcess = false; + }) + } catch (err) { + console.log(err); + } + }); }); } diff --git a/logging.ini b/logging.ini new file mode 100644 index 00000000..5b478619 --- /dev/null +++ b/logging.ini @@ -0,0 +1,27 @@ +[loggers] +keys=root + +[handlers] +keys=logfile,logconsole + +[formatters] +keys=logformatter + +[logger_root] +level=INFO +handlers=logfile, logconsole + +[formatter_logformatter] +format=[%(asctime)s.%(msecs)03d] %(levelname)s [%(thread)d] - %(message)s + +[handler_logfile] +class=handlers.RotatingFileHandler +level=INFO +args=('logfile.log','a') +formatter=logformatter + +[handler_logconsole] +class=handlers.logging.StreamHandler +level=INFO +args=() +formatter=logformatter
\ No newline at end of file |