Merge branch '1.1.x' into wip/merge-1.1.x

This commit is contained in:
Eugene Yokota 2018-04-29 14:34:22 -04:00
commit 70d8275e59
6 changed files with 646 additions and 486 deletions

File diff suppressed because it is too large Load Diff

View File

@ -52,7 +52,8 @@
"postinstall": "node ./node_modules/vscode/bin/install"
},
"dependencies": {
"vscode": "^1.1.5",
"vscode-languageclient": "^3.4.2"
"vscode": "^1.1.16",
"vscode-languageclient": "^3.4.2",
"hoek": "^4.2.1"
}
}

View File

@ -3,10 +3,30 @@
import * as path from 'path';
let fs = require('fs');
import * as vscode from 'vscode';
import { ExtensionContext, workspace } from 'vscode'; // workspace,
import { LanguageClient, LanguageClientOptions, ServerOptions, TransportKind } from 'vscode-languageclient';
export function activate(context: ExtensionContext) {
export async function activate(context: ExtensionContext) {
// Start sbt
const terminal = vscode.window.createTerminal(`sbt`);
terminal.show();
terminal.sendText("sbt");
function delay(ms: number) {
return new Promise(resolve => setTimeout(resolve, ms));
}
// Wait for SBT server to start
let retries = 30;
while (retries > 0) {
retries--;
await delay(1000);
if (fs.existsSync(path.join(workspace.rootPath, 'project', 'target', 'active.json'))) {
break;
}
}
// The server is implemented in node
let serverModule = context.asAbsolutePath(path.join('server', 'server.js'));
// The debug options for the server

View File

@ -11,15 +11,15 @@
"dev": true
},
"@types/node": {
"version": "6.0.88",
"resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.88.tgz",
"integrity": "sha512-bYDPZTX0/s1aihdjLuAgogUAT5M+TpoWChEMea2p0yOcfn5bu3k6cJb9cp6nw268XeSNIGGr+4+/8V5K6BGzLQ==",
"version": "7.0.61",
"resolved": "https://registry.npmjs.org/@types/node/-/node-7.0.61.tgz",
"integrity": "sha512-X4MNN+Z36OmVPv7n08wxq46/t61/rauW4+xeyxGPueDQ9t7SetHnuEPS0p9n6wU/15HvJLGjzfLTc/RwN7id3A==",
"dev": true
},
"typescript": {
"version": "2.5.2",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-2.5.2.tgz",
"integrity": "sha1-A4qV99m7tCCxvzW6MdTFwd0//jQ=",
"version": "2.8.3",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-2.8.3.tgz",
"integrity": "sha512-K7g15Bb6Ra4lKf7Iq2l/I5/En+hLIHmxWZGq3D4DIRNFxMNV6j2SHSvDOqs2tGd4UvD/fJvrwopzQXjLrT7Itw==",
"dev": true
}
}

View File

@ -20,7 +20,7 @@
},
"devDependencies": {
"@types/mocha": "^2.2.42",
"@types/node": "^6.0.88",
"typescript": "^2.5.2"
"@types/node": "^7.0.10",
"typescript": "^2.7.2"
}
}

View File

@ -4,38 +4,40 @@
"lockfileVersion": 1,
"requires": true,
"dependencies": {
"vscode-jsonrpc": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.4.0.tgz",
"integrity": "sha1-qpWsWDvzHYD3JdV8J8CfTCz+n6k="
},
"vscode-languageserver": {
"version": "3.4.2",
"resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-3.4.2.tgz",
"integrity": "sha1-CMvlDuJpAdN91LXcUsJbkJNjwfE=",
"version": "3.5.1",
"resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-3.5.1.tgz",
"integrity": "sha512-RYUKn0DgHTFcS8kS4VaNCjNMaQXYqiXdN9bKrFjXzu5RPKfjIYcoh47oVWwZj4L3R/DPB0Se7HPaDatvYY2XgQ==",
"requires": {
"vscode-languageserver-protocol": "3.4.1",
"vscode-uri": "1.0.1"
"vscode-languageserver-protocol": "3.5.1",
"vscode-uri": "1.0.3"
},
"dependencies": {
"vscode-jsonrpc": {
"version": "3.5.0",
"resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.5.0.tgz",
"integrity": "sha1-hyOdnhZrLXNSJFuKgTWXgEwdY6o="
},
"vscode-languageserver-protocol": {
"version": "3.5.1",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.5.1.tgz",
"integrity": "sha512-1fPDIwsAv1difCV+8daOrJEGunClNJWqnUHq/ncWrjhitKWXgGmRCjlwZ3gDUTt54yRcvXz1PXJDaRNvNH6pYA==",
"requires": {
"vscode-jsonrpc": "3.5.0",
"vscode-languageserver-types": "3.5.0"
}
},
"vscode-languageserver-types": {
"version": "3.5.0",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.5.0.tgz",
"integrity": "sha1-5I15li8LjgLelV4/UkkI4rGcA3Q="
}
}
},
"vscode-languageserver-protocol": {
"version": "3.4.1",
"resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.4.1.tgz",
"integrity": "sha1-lrfIo+1opOvTCkB7BCenY3k1/h8=",
"requires": {
"vscode-jsonrpc": "3.4.0",
"vscode-languageserver-types": "3.4.0"
}
},
"vscode-languageserver-types": {
"version": "3.4.0",
"resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.4.0.tgz",
"integrity": "sha1-UEOuR+5KwWrwe7PQylYSNeDA0vo="
},
"vscode-uri": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-1.0.1.tgz",
"integrity": "sha1-Eahr7+rDxKo+wIYjZRo8gabQu8g="
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/vscode-uri/-/vscode-uri-1.0.3.tgz",
"integrity": "sha1-Yxvb9xbcyrDmUpGo3CXCMjIIWlI="
}
}
}