diff --git a/lsp-multi-server-sample/.vscode/launch.json b/lsp-multi-server-sample/.vscode/launch.json index c2409dd2..d9d99a0f 100644 --- a/lsp-multi-server-sample/.vscode/launch.json +++ b/lsp-multi-server-sample/.vscode/launch.json @@ -3,33 +3,45 @@ // List of configurations. Add new configurations or edit existing ones. "configurations": [ { - "name": "Launch Client", "type": "extensionHost", "request": "launch", + "name": "Launch Client", "runtimeExecutable": "${execPath}", - "args": ["--extensionDevelopmentPath=${workspaceRoot}/client" ], + "args": ["--extensionDevelopmentPath=${workspaceRoot}" ], "stopOnEntry": false, "sourceMaps": true, - "outFiles": [ "${workspaceRoot}/client/out/src/**/*.js" ], - "preLaunchTask": "watch:client" + "outFiles": ["${workspaceRoot}/client/out/**/*.js"], + "preLaunchTask": "npm: watch:client" }, { - "name": "Attach to Server 11", "type": "node", "request": "attach", + "name": "Attach to Server 6010", + "address": "localhost", + "protocol": "inspector", + "port": 6010, + "sourceMaps": true, + "outFiles": ["${workspaceRoot}/server/out/**/*.js"] + }, + { + "type": "node", + "request": "attach", + "name": "Attach to Server 6011", + "address": "localhost", + "protocol": "inspector", "port": 6011, "sourceMaps": true, - "outFiles": [ "${workspaceRoot}/client/server/**/*.js" ], - "preLaunchTask": "watch:server" + "outFiles": ["${workspaceRoot}/server/out/**/*.js"] }, { - "name": "Attach to Server 12", "type": "node", "request": "attach", + "name": "Attach to Server 6012", + "address": "localhost", + "protocol": "inspector", "port": 6012, "sourceMaps": true, - "outFiles": [ "${workspaceRoot}/client/server/**/*.js" ], - "preLaunchTask": "watch:server" - } + "outFiles": ["${workspaceRoot}/server/out/**/*.js"] + } ] } diff --git a/lsp-multi-server-sample/.vscode/settings.json b/lsp-multi-server-sample/.vscode/settings.json index 19fbd676..18b0d1ee 100644 --- a/lsp-multi-server-sample/.vscode/settings.json +++ b/lsp-multi-server-sample/.vscode/settings.json @@ -7,5 +7,6 @@ }, "typescript.tsdk": "./node_modules/typescript/lib", "typescript.tsc.autoDetect": "off", - "npm.autoDetect": "off" + "npm.exclude": ["**/client", "**/server"], + "npm.enableScriptExplorer": true } \ No newline at end of file diff --git a/lsp-multi-server-sample/.vscode/tasks.json b/lsp-multi-server-sample/.vscode/tasks.json index e1e2656d..98288bba 100644 --- a/lsp-multi-server-sample/.vscode/tasks.json +++ b/lsp-multi-server-sample/.vscode/tasks.json @@ -10,9 +10,8 @@ "problemMatcher": [] }, { - "label": "compile:client", - "type": "shell", - "command": "npm run compile:client", + "type": "npm", + "script": "compile:client", "group": "build", "presentation": { "panel": "dedicated", @@ -24,9 +23,8 @@ ] }, { - "label": "compile:server", - "type": "shell", - "command": "npm run compile:server", + "type": "npm", + "script": "compile:server", "group": "build", "presentation": { "panel": "dedicated", @@ -49,9 +47,8 @@ "problemMatcher": [] }, { - "label": "watch:client", - "type": "shell", - "command": "npm run watch:client", + "type": "npm", + "script": "watch:client", "isBackground": true, "group": "build", "presentation": { @@ -63,9 +60,8 @@ ] }, { - "label": "watch:server", - "type": "shell", - "command": "npm run watch:server", + "type": "npm", + "script": "watch:server", "isBackground": true, "group": "build", "presentation": { diff --git a/lsp-multi-server-sample/.vscodeignore b/lsp-multi-server-sample/.vscodeignore new file mode 100644 index 00000000..948a9580 --- /dev/null +++ b/lsp-multi-server-sample/.vscodeignore @@ -0,0 +1,13 @@ +.vscode/** +**/*.ts +**/*.map +.gitignore +**/tsconfig.json +**/tsconfig.base.json +contributing.md +.travis.yml +client/node_modules/** +!client/node_modules/vscode-jsonrpc/** +!client/node_modules/vscode-languageclient/** +!client/node_modules/vscode-languageserver-protocol/** +!client/node_modules/vscode-languageserver-types/** \ No newline at end of file diff --git a/lsp-multi-server-sample/client/.vscodeignore b/lsp-multi-server-sample/client/.vscodeignore deleted file mode 100644 index 9ca85fe6..00000000 --- a/lsp-multi-server-sample/client/.vscodeignore +++ /dev/null @@ -1,7 +0,0 @@ -.vscode/** -typings/** -**/*.ts -**/*.map -.gitignore -tsconfig.json -vsc-extension-quickstart.md diff --git a/lsp-multi-server-sample/client/package-lock.json b/lsp-multi-server-sample/client/package-lock.json index 9e63ba21..605228c5 100644 --- a/lsp-multi-server-sample/client/package-lock.json +++ b/lsp-multi-server-sample/client/package-lock.json @@ -1,5 +1,5 @@ { - "name": "lsp-multi-server-example-client-part", + "name": "lsp-sample-multi-server-client-part", "version": "0.0.1", "lockfileVersion": 1, "requires": true, @@ -23,14 +23,6 @@ "ansi-wrap": "0.1.0" } }, - "ansi-gray": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/ansi-gray/-/ansi-gray-0.1.1.tgz", - "integrity": "sha1-KWLPVOyXksSFEKPetSRDaGHvclE=", - "requires": { - "ansi-wrap": "0.1.0" - } - }, "ansi-red": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/ansi-red/-/ansi-red-0.1.1.tgz", @@ -39,16 +31,6 @@ "ansi-wrap": "0.1.0" } }, - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=" - }, - "ansi-styles": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz", - "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=" - }, "ansi-wrap": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", @@ -145,11 +127,6 @@ "tweetnacl": "0.14.5" } }, - "beeper": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/beeper/-/beeper-1.1.1.tgz", - "integrity": "sha1-5tXqjF2tABMEpwsiY4RH9pyy+Ak=" - }, "block-stream": { "version": "0.0.9", "resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz", @@ -158,14 +135,6 @@ "inherits": "2.0.3" } }, - "boom": { - "version": "4.3.1", - "resolved": "https://registry.npmjs.org/boom/-/boom-4.3.1.tgz", - "integrity": "sha1-T4owBctKfjiJ90kDD9JbluAdLjE=", - "requires": { - "hoek": "4.2.1" - } - }, "brace-expansion": { "version": "1.1.11", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", @@ -196,27 +165,15 @@ "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" }, "buffer-from": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.0.0.tgz", - "integrity": "sha512-83apNb8KK0Se60UE1+4Ukbe3HbfELJ6UlI4ldtOGs7So4KD26orJM8hIY9lxdzP+UpItH1Yh/Y8GUvNFWFFRxA==" + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.0.tgz", + "integrity": "sha512-c5mRlguI/Pe2dSZmpER62rSCu0ryKmWddzRYsuXc50U2/g8jMOulc31VZMa4mYx31U5xsmSOpDCgH88Vl9cDGQ==" }, "caseless": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" }, - "chalk": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz", - "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=", - "requires": { - "ansi-styles": "2.2.1", - "escape-string-regexp": "1.0.5", - "has-ansi": "2.0.0", - "strip-ansi": "3.0.1", - "supports-color": "2.0.0" - } - }, "clone": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/clone/-/clone-0.2.0.tgz", @@ -247,11 +204,6 @@ "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=" }, - "color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==" - }, "combined-stream": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.6.tgz", @@ -280,24 +232,6 @@ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" }, - "cryptiles": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/cryptiles/-/cryptiles-3.1.2.tgz", - "integrity": "sha1-qJ+7Ig9c4l7FboxKqKT9e1sNKf4=", - "requires": { - "boom": "5.2.0" - }, - "dependencies": { - "boom": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/boom/-/boom-5.2.0.tgz", - "integrity": "sha512-Z5BTk6ZRe4tXXQlkqftmsAUANpXmuwlsF5Oov8ThoMbQRzdGTA1ngYRW160GexgOgjsFOKJz0LYhoNi+2AMBUw==", - "requires": { - "hoek": "4.2.1" - } - } - } - }, "dashdash": { "version": "1.14.1", "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", @@ -306,11 +240,6 @@ "assert-plus": "1.0.0" } }, - "dateformat": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/dateformat/-/dateformat-2.2.0.tgz", - "integrity": "sha1-QGXiATz5+5Ft39gu+1Bq1MZ2kGI=" - }, "debug": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", @@ -342,41 +271,10 @@ "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=" }, - "duplexer2": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/duplexer2/-/duplexer2-0.0.2.tgz", - "integrity": "sha1-xhTc9n4vsUmVqRcR5aYX6KYKMds=", - "requires": { - "readable-stream": "1.1.14" - }, - "dependencies": { - "isarray": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", - "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=" - }, - "readable-stream": { - "version": "1.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "requires": { - "core-util-is": "1.0.2", - "inherits": "2.0.3", - "isarray": "0.0.1", - "string_decoder": "0.10.31" - } - }, - "string_decoder": { - "version": "0.10.31", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", - "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=" - } - } - }, "duplexify": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.5.4.tgz", - "integrity": "sha512-JzYSLYMhoVVBe8+mbHQ4KgpvHpm0DZpJuL8PY93Vyv1fW7jYJ90LoXa1di/CVbJM+TgMs91rbDapE/RNIfnJsA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.6.0.tgz", + "integrity": "sha512-fO3Di4tBKJpYTFHAxTU00BcfWMY9w24r/x21a6rZRbsD/ToUgGxsMbiGRmB7uVAXeGKXD9MwiLZa5E97EVgIRQ==", "requires": { "end-of-stream": "1.4.1", "inherits": "2.0.3", @@ -433,7 +331,7 @@ "resolved": "https://registry.npmjs.org/expand-range/-/expand-range-1.8.2.tgz", "integrity": "sha1-opnv/TNf4nIeuujiV+x5ZE/IUzc=", "requires": { - "fill-range": "2.2.3" + "fill-range": "2.2.4" } }, "extend": { @@ -469,16 +367,6 @@ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=" }, - "fancy-log": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/fancy-log/-/fancy-log-1.3.2.tgz", - "integrity": "sha1-9BEl49hPLn2JpD0G2VjI94vha+E=", - "requires": { - "ansi-gray": "0.1.1", - "color-support": "1.1.3", - "time-stamp": "1.1.0" - } - }, "fast-deep-equal": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-1.1.0.tgz", @@ -490,9 +378,9 @@ "integrity": "sha1-1RQsDK7msRifh9OnYREGT4bIu/I=" }, "fd-slicer": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.0.1.tgz", - "integrity": "sha1-i1vL2ewyfFBBv5qwI/1nUPEXfmU=", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", + "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=", "requires": { "pend": "1.2.0" } @@ -503,13 +391,13 @@ "integrity": "sha1-wcS5vuPglyXdsQa3XB4wH+LxiyY=" }, "fill-range": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.3.tgz", - "integrity": "sha1-ULd9/X5Gm8dJJHCWNpn+eoSFpyM=", + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-2.2.4.tgz", + "integrity": "sha512-cnrcCbj01+j2gTG921VZPnHbjmdAf8oQV/iGeV2kZxGSyfYjjTyY79ErsK1WJWMpw6DaApEX72binqJE+/d+5Q==", "requires": { "is-number": "2.1.0", "isobject": "2.1.0", - "randomatic": "1.1.7", + "randomatic": "3.0.0", "repeat-element": "1.1.2", "repeat-string": "1.6.1" } @@ -689,14 +577,6 @@ } } }, - "glogg": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/glogg/-/glogg-1.0.1.tgz", - "integrity": "sha512-ynYqXLoluBKf9XGR1gA59yEJisIL7YHEH4xr3ZziHB5/yl4qWfaK8Js9jGe6gBGCSCKVqiyO30WnRZADvemUNw==", - "requires": { - "sparkles": "1.0.0" - } - }, "graceful-fs": { "version": "4.1.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz", @@ -775,7 +655,7 @@ "requires": { "event-stream": "3.3.4", "node.extend": "1.1.6", - "request": "2.85.0", + "request": "2.87.0", "through2": "2.0.3", "vinyl": "2.1.0" }, @@ -851,40 +731,15 @@ } }, "gulp-untar": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/gulp-untar/-/gulp-untar-0.0.6.tgz", - "integrity": "sha1-1r3v3n6ajgVMnxYjhaB4LEvnQAA=", + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/gulp-untar/-/gulp-untar-0.0.7.tgz", + "integrity": "sha512-0QfbCH2a1k2qkTLWPqTX+QO4qNsHn3kC546YhAP3/n0h+nvtyGITDuDrYBMDZeW4WnFijmkOvBWa5HshTic1tw==", "requires": { "event-stream": "3.3.4", - "gulp-util": "3.0.8", "streamifier": "0.1.1", "tar": "2.2.1", - "through2": "2.0.3" - } - }, - "gulp-util": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/gulp-util/-/gulp-util-3.0.8.tgz", - "integrity": "sha1-AFTh50RQLifATBh8PsxQXdVLu08=", - "requires": { - "array-differ": "1.0.0", - "array-uniq": "1.0.3", - "beeper": "1.1.1", - "chalk": "1.1.3", - "dateformat": "2.2.0", - "fancy-log": "1.3.2", - "gulplog": "1.0.0", - "has-gulplog": "0.1.0", - "lodash._reescape": "3.0.0", - "lodash._reevaluate": "3.0.0", - "lodash._reinterpolate": "3.0.0", - "lodash.template": "3.6.2", - "minimist": "1.2.0", - "multipipe": "0.1.2", - "object-assign": "3.0.0", - "replace-ext": "0.0.1", "through2": "2.0.3", - "vinyl": "0.5.3" + "vinyl": "1.2.0" }, "dependencies": { "clone": { @@ -892,25 +747,15 @@ "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=" }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=" - }, - "object-assign": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-3.0.0.tgz", - "integrity": "sha1-m+3VygiXlJvKR+f/QIBi1Un1h/I=" - }, "replace-ext": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/replace-ext/-/replace-ext-0.0.1.tgz", "integrity": "sha1-KbvZIHinOfC8zitO5B6DeVNSKSQ=" }, "vinyl": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-0.5.3.tgz", - "integrity": "sha1-sEVbOPxeDPMNQyUTLkYZcMIJHN4=", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/vinyl/-/vinyl-1.2.0.tgz", + "integrity": "sha1-XIgDbPVl5d8FVYv8kR+GVt8hiIQ=", "requires": { "clone": "1.0.4", "clone-stats": "0.0.1", @@ -929,7 +774,7 @@ "through2": "2.0.3", "vinyl": "2.1.0", "vinyl-fs": "2.4.4", - "yauzl": "2.9.1", + "yauzl": "2.9.2", "yazl": "2.4.3" }, "dependencies": { @@ -966,14 +811,6 @@ } } }, - "gulplog": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/gulplog/-/gulplog-1.0.0.tgz", - "integrity": "sha1-4oxNRdBey77YGDY86PnFkmIp/+U=", - "requires": { - "glogg": "1.0.1" - } - }, "har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -988,48 +825,16 @@ "har-schema": "2.0.0" } }, - "has-ansi": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz", - "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=", - "requires": { - "ansi-regex": "2.1.1" - } - }, "has-flag": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-2.0.0.tgz", "integrity": "sha1-6CB68cx7MNRGzHC3NLXovhj4jVE=" }, - "has-gulplog": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/has-gulplog/-/has-gulplog-0.1.0.tgz", - "integrity": "sha1-ZBTIKRNpfaUVkDl9r7EvIpZ4Ec4=", - "requires": { - "sparkles": "1.0.0" - } - }, - "hawk": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/hawk/-/hawk-6.0.2.tgz", - "integrity": "sha512-miowhl2+U7Qle4vdLqDdPt9m09K6yZhkLDTWGoUiUzrQCn+mHHSmfJgAyGaLRZbPmTqfFFjRV1QWCW0VWUJBbQ==", - "requires": { - "boom": "4.3.1", - "cryptiles": "3.1.2", - "hoek": "4.2.1", - "sntp": "2.1.0" - } - }, "he": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/he/-/he-1.1.1.tgz", "integrity": "sha1-k0EP0hsAlzUVH4howvJx80J+I/0=" }, - "hoek": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/hoek/-/hoek-4.2.1.tgz", - "integrity": "sha512-QLg82fGkfnJ/4iy1xZ81/9SIJiq1NGFUMGs6ParyjBZr6jW2Ufj/snDqTHixNlHdPNwN2RLVD0Pi3igeK9+JfA==" - }, "http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -1224,119 +1029,21 @@ "readable-stream": "2.3.6" } }, - "lodash._basecopy": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._basecopy/-/lodash._basecopy-3.0.1.tgz", - "integrity": "sha1-jaDmqHbPNEwK2KVIghEd08XHyjY=" - }, - "lodash._basetostring": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._basetostring/-/lodash._basetostring-3.0.1.tgz", - "integrity": "sha1-0YYdh3+CSlL2aYMtyvPuFVZqB9U=" - }, - "lodash._basevalues": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._basevalues/-/lodash._basevalues-3.0.0.tgz", - "integrity": "sha1-W3dXYoAr3j0yl1A+JjAIIP32Ybc=" - }, - "lodash._getnative": { - "version": "3.9.1", - "resolved": "https://registry.npmjs.org/lodash._getnative/-/lodash._getnative-3.9.1.tgz", - "integrity": "sha1-VwvH3t5G1hzc3mh9ZdPuy6o6r/U=" - }, - "lodash._isiterateecall": { - "version": "3.0.9", - "resolved": "https://registry.npmjs.org/lodash._isiterateecall/-/lodash._isiterateecall-3.0.9.tgz", - "integrity": "sha1-UgOte6Ql+uhCRg5pbbnPPmqsBXw=" - }, - "lodash._reescape": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reescape/-/lodash._reescape-3.0.0.tgz", - "integrity": "sha1-Kx1vXf4HyKNVdT5fJ/rH8c3hYWo=" - }, - "lodash._reevaluate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reevaluate/-/lodash._reevaluate-3.0.0.tgz", - "integrity": "sha1-WLx0xAZklTrgsSTYBpltrKQx4u0=" - }, - "lodash._reinterpolate": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz", - "integrity": "sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0=" - }, - "lodash._root": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/lodash._root/-/lodash._root-3.0.1.tgz", - "integrity": "sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI=" - }, - "lodash.escape": { - "version": "3.2.0", - "resolved": "https://registry.npmjs.org/lodash.escape/-/lodash.escape-3.2.0.tgz", - "integrity": "sha1-mV7g3BjBtIzJLv+ucaEKq1tIdpg=", - "requires": { - "lodash._root": "3.0.1" - } - }, - "lodash.isarguments": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lodash.isarguments/-/lodash.isarguments-3.1.0.tgz", - "integrity": "sha1-L1c9hcaiQon/AGY7SRwdM4/zRYo=" - }, - "lodash.isarray": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/lodash.isarray/-/lodash.isarray-3.0.4.tgz", - "integrity": "sha1-eeTriMNqgSKvhvhEqpvNhRtfu1U=" - }, "lodash.isequal": { "version": "4.5.0", "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", "integrity": "sha1-QVxEePK8wwEgwizhDtMib30+GOA=" }, - "lodash.keys": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/lodash.keys/-/lodash.keys-3.1.2.tgz", - "integrity": "sha1-TbwEcrFWvlCgsoaFXRvQsMZWCYo=", - "requires": { - "lodash._getnative": "3.9.1", - "lodash.isarguments": "3.1.0", - "lodash.isarray": "3.0.4" - } - }, - "lodash.restparam": { - "version": "3.6.1", - "resolved": "https://registry.npmjs.org/lodash.restparam/-/lodash.restparam-3.6.1.tgz", - "integrity": "sha1-k2pOMJ7zMKdkXtQUWYbIWuWyCAU=" - }, - "lodash.template": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/lodash.template/-/lodash.template-3.6.2.tgz", - "integrity": "sha1-+M3sxhaaJVvpCYrosMU9N4kx0U8=", - "requires": { - "lodash._basecopy": "3.0.1", - "lodash._basetostring": "3.0.1", - "lodash._basevalues": "3.0.0", - "lodash._isiterateecall": "3.0.9", - "lodash._reinterpolate": "3.0.0", - "lodash.escape": "3.2.0", - "lodash.keys": "3.1.2", - "lodash.restparam": "3.6.1", - "lodash.templatesettings": "3.1.1" - } - }, - "lodash.templatesettings": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/lodash.templatesettings/-/lodash.templatesettings-3.1.1.tgz", - "integrity": "sha1-+zB4RHU7Zrnxr6VOJix0UwfbqOU=", - "requires": { - "lodash._reinterpolate": "3.0.0", - "lodash.escape": "3.2.0" - } - }, "map-stream": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/map-stream/-/map-stream-0.1.0.tgz", "integrity": "sha1-5WqpTEyAVaFkBKBnS3jyFffI4ZQ=" }, + "math-random": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/math-random/-/math-random-1.0.1.tgz", + "integrity": "sha1-izqsWIuKZuSXXjzepn97sylgH6w=" + }, "merge-stream": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-1.0.1.tgz", @@ -1445,16 +1152,6 @@ "he": "1.1.1", "mkdirp": "0.5.1", "supports-color": "4.4.0" - }, - "dependencies": { - "supports-color": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", - "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", - "requires": { - "has-flag": "2.0.0" - } - } } }, "ms": { @@ -1473,14 +1170,6 @@ "minimatch": "3.0.4" } }, - "multipipe": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/multipipe/-/multipipe-0.1.2.tgz", - "integrity": "sha1-Ko8t33Du1WTf8tV/HhoTfZ8FB4s=", - "requires": { - "duplexer2": "0.0.2" - } - }, "node.extend": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/node.extend/-/node.extend-1.1.6.tgz", @@ -1633,39 +1322,24 @@ } }, "randomatic": { - "version": "1.1.7", - "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-1.1.7.tgz", - "integrity": "sha512-D5JUjPyJbaJDkuAazpVnSfVkLlpeO3wDlPROTMLGKG1zMFNFRgrciKo1ltz/AzNTkqE0HzDx655QOL51N06how==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/randomatic/-/randomatic-3.0.0.tgz", + "integrity": "sha512-VdxFOIEY3mNO5PtSRkkle/hPJDHvQhK21oa73K4yAc9qmp6N429gAyF1gZMOTMeS0/AYzaV/2Trcef+NaIonSA==", "requires": { - "is-number": "3.0.0", - "kind-of": "4.0.0" + "is-number": "4.0.0", + "kind-of": "6.0.2", + "math-random": "1.0.1" }, "dependencies": { "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "requires": { - "kind-of": "3.2.2" - }, - "dependencies": { - "kind-of": { - "version": "3.2.2", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", - "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "requires": { - "is-buffer": "1.1.6" - } - } - } + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-4.0.0.tgz", + "integrity": "sha512-rSklcAIlf1OmFdyAqbnWTLVelsQ58uvZ66S/ZyawjWqIviTWCjg2PzVGw8WUA+nNuPTqb4wgA+NszrJ+08LlgQ==" }, "kind-of": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-4.0.0.tgz", - "integrity": "sha1-IIE989cSkosgc3hpGkUGb65y3Vc=", - "requires": { - "is-buffer": "1.1.6" - } + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.2.tgz", + "integrity": "sha512-s5kLOcnH0XqDO+FvuaLX8DDjZ18CGFk7VygH40QoKPUQhW4e2rvM0rwUq0t8IQDOwYSeLK01U90OjzBTme2QqA==" } } }, @@ -1712,9 +1386,9 @@ "integrity": "sha1-3mMSg3P8v3w8z6TeWkgMRaZ5WOs=" }, "request": { - "version": "2.85.0", - "resolved": "https://registry.npmjs.org/request/-/request-2.85.0.tgz", - "integrity": "sha512-8H7Ehijd4js+s6wuVPLjwORxD4zeuyjYugprdOXlPSqaApmL/QOy+EB/beICHVCHkGMKNh5rvihb5ov+IDw4mg==", + "version": "2.87.0", + "resolved": "https://registry.npmjs.org/request/-/request-2.87.0.tgz", + "integrity": "sha512-fcogkm7Az5bsS6Sl0sibkbhcKsnyon/jV1kF3ajGmF0c8HrttdKTPRT9hieOaQHA5HEq6r8OyWOo/o781C1tNw==", "requires": { "aws-sign2": "0.7.0", "aws4": "1.7.0", @@ -1724,7 +1398,6 @@ "forever-agent": "0.6.1", "form-data": "2.3.2", "har-validator": "5.0.3", - "hawk": "6.0.2", "http-signature": "1.2.0", "is-typedarray": "1.0.0", "isstream": "0.1.2", @@ -1734,7 +1407,6 @@ "performance-now": "2.1.0", "qs": "6.5.2", "safe-buffer": "5.1.2", - "stringstream": "0.0.5", "tough-cookie": "2.3.4", "tunnel-agent": "0.6.0", "uuid": "3.2.1" @@ -1763,33 +1435,20 @@ "resolved": "https://registry.npmjs.org/semver/-/semver-5.5.0.tgz", "integrity": "sha512-4SJ3dm0WAwWy/NVeioZh5AntkdJoWKxHxcmyP622fOkgHa4z3R0TdBJICINyaSDE6uNwVc8gZr+ZinwZAH4xIA==" }, - "sntp": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/sntp/-/sntp-2.1.0.tgz", - "integrity": "sha512-FL1b58BDrqS3A11lJ0zEdnJ3UOKqVxawAkF3k7F0CVN7VQ34aZrV+G8BZ1WC9ZL7NyrwsW0oviwsWDgRuVYtJg==", - "requires": { - "hoek": "4.2.1" - } - }, "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" }, "source-map-support": { - "version": "0.5.5", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.5.tgz", - "integrity": "sha512-mR7/Nd5l1z6g99010shcXJiNEaf3fEtmLhRB/sBcQVJGodcHCULPp2y4Sfa43Kv2zq7T+Izmfp/WHCR6dYkQCA==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.6.tgz", + "integrity": "sha512-N4KXEz7jcKqPf2b2vZF11lQIz9W5ZMuUcIOGj243lduidkf2fjkVKJS9vNxVWn3u/uxX38AcE8U9nnH9FPcq+g==", "requires": { - "buffer-from": "1.0.0", + "buffer-from": "1.1.0", "source-map": "0.6.1" } }, - "sparkles": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/sparkles/-/sparkles-1.0.0.tgz", - "integrity": "sha1-Gsu/tZJDbRC76PeFt8xvgoFQEsM=" - }, "split": { "version": "0.3.3", "resolved": "https://registry.npmjs.org/split/-/split-0.3.3.tgz", @@ -1852,19 +1511,6 @@ "safe-buffer": "5.1.2" } }, - "stringstream": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/stringstream/-/stringstream-0.0.5.tgz", - "integrity": "sha1-TkhM1N5aC7vuGORjB3EKioFiGHg=" - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "requires": { - "ansi-regex": "2.1.1" - } - }, "strip-bom": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-2.0.0.tgz", @@ -1883,9 +1529,12 @@ } }, "supports-color": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz", - "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=" + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-4.4.0.tgz", + "integrity": "sha512-rKC3+DyXWgK0ZLKwmRsrkyHVZAjNkfzeehuFWdGGcqGDTZFH73+RH6S/RDAAxl9GusSjZSUWYLmT9N5pzXFOXQ==", + "requires": { + "has-flag": "2.0.0" + } }, "tar": { "version": "2.2.1", @@ -1920,11 +1569,6 @@ "xtend": "4.0.1" } }, - "time-stamp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/time-stamp/-/time-stamp-1.1.0.tgz", - "integrity": "sha1-dkpaEa9QVhkhsTPztE5hhofg9cM=" - }, "to-absolute-glob": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/to-absolute-glob/-/to-absolute-glob-0.1.1.tgz", @@ -2022,7 +1666,7 @@ "resolved": "https://registry.npmjs.org/vinyl-fs/-/vinyl-fs-2.4.4.tgz", "integrity": "sha1-vm/zJwy1Xf19MGNkDegfJddTIjk=", "requires": { - "duplexify": "3.5.4", + "duplexify": "3.6.0", "glob-stream": "5.3.5", "graceful-fs": "4.1.11", "gulp-sourcemaps": "1.6.0", @@ -2073,9 +1717,9 @@ } }, "vscode": { - "version": "1.1.17", - "resolved": "https://registry.npmjs.org/vscode/-/vscode-1.1.17.tgz", - "integrity": "sha512-yNMyrgEua2qyW7+trNNYhA6PeldRrBcwtLtlazkdtzcmkHMKECM/08bPF8HF2ZFuwHgD+8FQsdqd/DvJYQYjJg==", + "version": "1.1.18", + "resolved": "https://registry.npmjs.org/vscode/-/vscode-1.1.18.tgz", + "integrity": "sha512-SyDw4qFwZ+WthZX7RWp71PNiWLF7VhpM65j2oryY/6jtSORd8qH6J8vclwWZJ6Jvu0EH7JamO2RWNfBfsMR9Zw==", "requires": { "glob": "7.1.2", "gulp-chmod": "2.0.0", @@ -2083,42 +1727,42 @@ "gulp-gunzip": "1.0.0", "gulp-remote-src-vscode": "0.5.0", "gulp-symdest": "1.1.0", - "gulp-untar": "0.0.6", + "gulp-untar": "0.0.7", "gulp-vinyl-zip": "2.1.0", "mocha": "4.1.0", - "request": "2.85.0", + "request": "2.87.0", "semver": "5.5.0", - "source-map-support": "0.5.5", + "source-map-support": "0.5.6", "url-parse": "1.4.0", "vinyl-source-stream": "1.1.2" } }, "vscode-jsonrpc": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.5.0.tgz", - "integrity": "sha1-hyOdnhZrLXNSJFuKgTWXgEwdY6o=" + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.6.2.tgz", + "integrity": "sha512-T24Jb5V48e4VgYliUXMnZ379ItbrXgOimweKaJshD84z+8q7ZOZjJan0MeDe+Ugb+uqERDVV8SBmemaGMSMugA==" }, "vscode-languageclient": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-3.5.0.tgz", - "integrity": "sha1-NtAswYaoNlpEZ3GaKQ+yAKmuSQo=", + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/vscode-languageclient/-/vscode-languageclient-4.1.4.tgz", + "integrity": "sha512-V2fWd+2vm8wmShjgciBxovMzSXMzBFtQo2R6OIW5kJIynds6x0J3SwMNa3QKAmhsCDy3WmBwnplBGtyGNNnvPA==", "requires": { - "vscode-languageserver-protocol": "3.5.0" + "vscode-languageserver-protocol": "3.7.2" } }, "vscode-languageserver-protocol": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.5.0.tgz", - "integrity": "sha1-Bnxcvidwl5U5jRGWksl+u6FFIgk=", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.7.2.tgz", + "integrity": "sha512-VVJwIA/FPl/FnVtrns0FPK6TLi/ET7n1Yo6tCrm6aG7+yAVwIGWdpTmKE+nbP8wEMMbHCkIabk63IJvfz2HNRg==", "requires": { - "vscode-jsonrpc": "3.5.0", - "vscode-languageserver-types": "3.5.0" + "vscode-jsonrpc": "3.6.2", + "vscode-languageserver-types": "3.7.2" } }, "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=" + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.7.2.tgz", + "integrity": "sha512-L9D2RA+PDS2CiyhLQY5ZrOmyRvXyjc4Ha8s9PqS6mIgGxj00R5Xx2vLKBnAOVfrawJXYZST+2hioMks6SQVU7A==" }, "wrappy": { "version": "1.0.2", @@ -2131,12 +1775,12 @@ "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=" }, "yauzl": { - "version": "2.9.1", - "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.1.tgz", - "integrity": "sha1-qBmB6nCleUYTOIPwKcWCGok1mn8=", + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.9.2.tgz", + "integrity": "sha1-T7G8euH8L1cDe1SvasyP4QMcW3c=", "requires": { "buffer-crc32": "0.2.13", - "fd-slicer": "1.0.1" + "fd-slicer": "1.1.0" } }, "yazl": { diff --git a/lsp-multi-server-sample/client/package.json b/lsp-multi-server-sample/client/package.json index f43b022f..741f3504 100644 --- a/lsp-multi-server-sample/client/package.json +++ b/lsp-multi-server-sample/client/package.json @@ -1,55 +1,23 @@ { - "name": "lsp-multi-server-example-client-part", - "description": "A language server example demoing servers per workspace folder", + "name": "lsp-sample-multi-server-client-part", + "description": "VSCode part of a language server", + "author": "Microsoft Corporation", + "license": "MIT", "version": "0.0.1", "publisher": "vscode", - "engines": { - "vscode": "^1.15.0" + "repository": { + "type": "git", + "url": "https://github.com/Microsoft/vscode-extension-samples" }, - "activationEvents": [ - "onLanguage:plaintext" - ], - "main": "./out/src/extension", - "contributes": { - "configuration": { - "type": "object", - "title": "Multi LSP configuration", - "properties": { - "lspMultiServerSample.enable": { - "scope": "resource", - "type": "boolean", - "default": true, - "description": "Controls the enablement." - }, - "lspMultiServerSample.options": { - "scope": "resource", - "type": "object", - "default": {}, - "description": "Additional options." - }, - "lspMultiServerSample.trace.server": { - "scope": "window", - "type": "string", - "enum": [ - "off", - "messages", - "verbose" - ], - "default": "off", - "description": "Traces the communication between VSCode and the language server." - } - } - } + "engines": { + "vscode": "^1.23.0" }, "scripts": { - "vscode:prepublish": "tsc -p ./", - "compile": "tsc -p ./", - "watch": "tsc -w -p ./", "update-vscode": "node ./node_modules/vscode/bin/install", "postinstall": "node ./node_modules/vscode/bin/install" }, "dependencies": { - "vscode": "^1.1.17", - "vscode-languageclient": "^3.5.0" + "vscode": "^1.1.18", + "vscode-languageclient": "^4.1.4" } } diff --git a/lsp-multi-server-sample/client/src/extension.ts b/lsp-multi-server-sample/client/src/extension.ts index 1975c4a7..4841b77c 100644 --- a/lsp-multi-server-sample/client/src/extension.ts +++ b/lsp-multi-server-sample/client/src/extension.ts @@ -1,9 +1,9 @@ import * as path from 'path'; -import { +import { workspace as Workspace, window as Window, ExtensionContext, TextDocument, OutputChannel, WorkspaceFolder, Uri -} from 'vscode'; +} from 'vscode'; -import { +import { LanguageClient, LanguageClientOptions, TransportKind } from 'vscode-languageclient'; @@ -45,9 +45,9 @@ function getOuterMostWorkspaceFolder(folder: WorkspaceFolder): WorkspaceFolder { export function activate(context: ExtensionContext) { - let module = context.asAbsolutePath(path.join('server', 'server.js')); + let module = context.asAbsolutePath(path.join('server', 'out', 'server.js')); let outputChannel: OutputChannel = Window.createOutputChannel('lsp-multi-server-example'); - + function didOpenTextDocument(document: TextDocument): void { // We are only interested in language mode text if (document.languageId !== 'plaintext' || (document.uri.scheme !== 'file' && document.uri.scheme !== 'untitled')) { @@ -66,11 +66,10 @@ export function activate(context: ExtensionContext) { documentSelector: [ { scheme: 'untitled', language: 'plaintext' } ], - diagnosticCollectionName: 'multi-lsp', + diagnosticCollectionName: 'lsp-multi-server-example', outputChannel: outputChannel } defaultClient = new LanguageClient('lsp-multi-server-example', 'LSP Multi Server Example', serverOptions, clientOptions); - defaultClient.registerProposedFeatures(); defaultClient.start(); return; } @@ -82,7 +81,7 @@ export function activate(context: ExtensionContext) { } // If we have nested workspace folders we only start a server on the outer most workspace folder. folder = getOuterMostWorkspaceFolder(folder); - + if (!clients.has(folder.uri.toString())) { let debugOptions = { execArgv: ["--nolazy", `--inspect=${6011 + clients.size}`] }; let serverOptions = { @@ -98,7 +97,6 @@ export function activate(context: ExtensionContext) { outputChannel: outputChannel } let client = new LanguageClient('lsp-multi-server-example', 'LSP Multi Server Example', serverOptions, clientOptions); - client.registerProposedFeatures(); client.start(); clients.set(folder.uri.toString(), client); } diff --git a/lsp-multi-server-sample/client/tsconfig.json b/lsp-multi-server-sample/client/tsconfig.json index f535e0ce..91eb51b2 100644 --- a/lsp-multi-server-sample/client/tsconfig.json +++ b/lsp-multi-server-sample/client/tsconfig.json @@ -1,18 +1,17 @@ { + "extends": "../tsconfig.base.json", "compilerOptions": { - "noUnusedLocals": true, - "noUnusedParameters": true, - "noImplicitAny": true, - "noImplicitReturns": true, "module": "commonjs", "target": "es6", - "rootDir": ".", "outDir": "out", - "lib": [ "es6"], + "rootDir": "src", + "lib": [ "es6" ], "sourceMap": true }, + "include": [ + "src" + ], "exclude": [ - "node_modules", - "server" + "node_modules" ] } \ No newline at end of file diff --git a/lsp-multi-server-sample/package-lock.json b/lsp-multi-server-sample/package-lock.json index 7740d0f5..59dc8b89 100644 --- a/lsp-multi-server-sample/package-lock.json +++ b/lsp-multi-server-sample/package-lock.json @@ -1,25 +1,25 @@ { - "name": "lsp-mulit-server-sample", - "version": "0.0.1", + "name": "lsp-sample-multi-server", + "version": "1.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { "@types/mocha": { - "version": "2.2.48", - "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-2.2.48.tgz", - "integrity": "sha512-nlK/iyETgafGli8Zh9zJVCTicvU3iajSkRwOh3Hhiva598CMqNJ4NcVCGMTGKpGpTYj/9R8RLzS9NAykSSCqGw==", + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-5.2.1.tgz", + "integrity": "sha512-dOrgprHnkDaj1pmrwdcMAf0QRNQzqTB5rxJph+iIQshSmIvtgRqJ0nim8u1vvXU8iOXZrH96+M46JDFTPLingA==", "dev": true }, "@types/node": { - "version": "6.0.101", - "resolved": "https://registry.npmjs.org/@types/node/-/node-6.0.101.tgz", - "integrity": "sha512-IQ7V3D6+kK1DArTqTBrnl3M+YgJZLw8ta8w3Q9xjR79HaJzMAoTbZ8TNzUTztrkCKPTqIstE2exdbs1FzsYLUw==", + "version": "8.10.18", + "resolved": "https://registry.npmjs.org/@types/node/-/node-8.10.18.tgz", + "integrity": "sha512-WoepSz+wJlU5Bjq5oK6cO1oXe2FgPcjMtQPgKPS8fVaTAD0lxkScMCCbMimdkVCsykqaA4lvHWz3cmj28yimhA==", "dev": true }, "typescript": { - "version": "2.7.2", - "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.7.2.tgz", - "integrity": "sha512-p5TCYZDAO0m4G344hD+wx/LATebLWZNkkh2asWUFqSsD2OrDNhbAHuSjobrmsUmdzjJjEeZVU9g1h3O6vpstnw==", + "version": "2.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-2.8.3.tgz", + "integrity": "sha512-K7g15Bb6Ra4lKf7Iq2l/I5/En+hLIHmxWZGq3D4DIRNFxMNV6j2SHSvDOqs2tGd4UvD/fJvrwopzQXjLrT7Itw==", "dev": true } } diff --git a/lsp-multi-server-sample/package.json b/lsp-multi-server-sample/package.json index f568fd2a..cfd3551b 100644 --- a/lsp-multi-server-sample/package.json +++ b/lsp-multi-server-sample/package.json @@ -1,25 +1,68 @@ { - "name": "lsp-mulit-server-sample", - "description": "A language server example demoing servers per workspace folder", + "name": "lsp-sample-multi-server", + "description": "A multi server LSP example", "author": "Microsoft Corporation", "license": "MIT", - "version": "0.0.1", - "publisher": "vscode", + "version": "1.0.0", "repository": { "type": "git", "url": "https://github.com/Microsoft/vscode-extension-samples" }, + "publisher": "vscode", + "categories": [], + "keywords": [ + "multi-root ready" + ], + "engines": { + "vscode": "^1.23.0" + }, + "activationEvents": [ + "onLanguage:plaintext" + ], + "main": "./client/out/extension", + "contributes": { + "configuration": { + "type": "object", + "title": "Multi LSP configuration", + "properties": { + "lspMultiServerSample.enable": { + "scope": "resource", + "type": "boolean", + "default": true, + "description": "Controls the enablement." + }, + "lspMultiServerSample.options": { + "scope": "resource", + "type": "object", + "default": {}, + "description": "Additional options." + }, + "lspMultiServerSample.trace.server": { + "scope": "window", + "type": "string", + "enum": [ + "off", + "messages", + "verbose" + ], + "default": "off", + "description": "Traces the communication between VSCode and the language server." + } + } + } + }, "scripts": { - "postinstall": "cd server && npm install && cd ../client && npm install && cd ..", - "compile": "tsc -p client/tsconfig.json && cd server && npm run installServer && cd .. && tsc -p server/tsconfig.json", - "compile:client": "tsc -p client/tsconfig.json", - "watch:client": "tsc -w -p client/tsconfig.json", - "compile:server": "cd server && npm run installServer && cd .. && tsc -p server/tsconfig.json", - "watch:server": "cd server && npm run installServer && cd .. && tsc -w -p server/tsconfig.json" + "vscode:prepublish": "cd client && npm run update-vscode && cd .. && npm run compile", + "compile:client": "tsc -p ./client/tsconfig.json", + "compile:server": "tsc -p ./server/tsconfig.json", + "watch:client": "tsc -w -p ./client/tsconfig.json", + "watch:server": "tsc -w -p ./server/tsconfig.json", + "compile": "npm run compile:client && npm run compile:server", + "postinstall": "cd client && npm install && cd ../server && npm install && cd .." }, "devDependencies": { - "@types/mocha": "^2.2.48", - "@types/node": "^6.0.101", - "typescript": "^2.7.2" + "@types/mocha": "^5.2.0", + "@types/node": "^8.0.0", + "typescript": "2.8.3" } } diff --git a/lsp-multi-server-sample/server/package-lock.json b/lsp-multi-server-sample/server/package-lock.json index 76bd3326..77098ccb 100644 --- a/lsp-multi-server-sample/server/package-lock.json +++ b/lsp-multi-server-sample/server/package-lock.json @@ -1,41 +1,41 @@ { - "name": "lsp-multi-server-example-server-part", - "version": "0.0.1", + "name": "lsp-sample-server", + "version": "1.0.0", "lockfileVersion": 1, "requires": true, "dependencies": { "vscode-jsonrpc": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.5.0.tgz", - "integrity": "sha1-hyOdnhZrLXNSJFuKgTWXgEwdY6o=" + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/vscode-jsonrpc/-/vscode-jsonrpc-3.6.2.tgz", + "integrity": "sha512-T24Jb5V48e4VgYliUXMnZ379ItbrXgOimweKaJshD84z+8q7ZOZjJan0MeDe+Ugb+uqERDVV8SBmemaGMSMugA==" }, "vscode-languageserver": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-3.5.0.tgz", - "integrity": "sha1-0oCZvG3dqMHdFrcH5FThsd2uDbo=", + "version": "4.1.3", + "resolved": "https://registry.npmjs.org/vscode-languageserver/-/vscode-languageserver-4.1.3.tgz", + "integrity": "sha512-D6p3q9x8QPtPLRUO5d2UKizjFYfg8zLVJqKoMpAaom8Wuhl1oKRCjeLg+Cp4mgPeCwR71wbgX2BM/jL51ni/0g==", "requires": { - "vscode-languageserver-protocol": "3.5.0", - "vscode-uri": "1.0.1" + "vscode-languageserver-protocol": "3.7.2", + "vscode-uri": "1.0.3" } }, "vscode-languageserver-protocol": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.5.0.tgz", - "integrity": "sha1-Bnxcvidwl5U5jRGWksl+u6FFIgk=", + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.7.2.tgz", + "integrity": "sha512-VVJwIA/FPl/FnVtrns0FPK6TLi/ET7n1Yo6tCrm6aG7+yAVwIGWdpTmKE+nbP8wEMMbHCkIabk63IJvfz2HNRg==", "requires": { - "vscode-jsonrpc": "3.5.0", - "vscode-languageserver-types": "3.5.0" + "vscode-jsonrpc": "3.6.2", + "vscode-languageserver-types": "3.7.2" } }, "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=" + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/vscode-languageserver-types/-/vscode-languageserver-types-3.7.2.tgz", + "integrity": "sha512-L9D2RA+PDS2CiyhLQY5ZrOmyRvXyjc4Ha8s9PqS6mIgGxj00R5Xx2vLKBnAOVfrawJXYZST+2hioMks6SQVU7A==" }, "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=" } } } diff --git a/lsp-multi-server-sample/server/package.json b/lsp-multi-server-sample/server/package.json index cbd7355b..1e2de173 100644 --- a/lsp-multi-server-sample/server/package.json +++ b/lsp-multi-server-sample/server/package.json @@ -1,7 +1,8 @@ { - "name": "lsp-multi-server-example-server-part", - "description": "A language server example demoing servers per workspace folder", - "version": "0.0.1", + "name": "lsp-sample-server", + "description": "Example implementation of a language server in node.", + "version": "1.0.0", + "author": "Microsoft Corporation", "license": "MIT", "engines": { "node": "*" @@ -11,11 +12,7 @@ "url": "https://github.com/Microsoft/vscode-extension-samples" }, "dependencies": { - "vscode-languageserver": "^3.5.0" + "vscode-languageserver": "^4.1.3" }, - "scripts": { - "installServer": "installServerIntoExtension ../client ./package.json ./tsconfig.json", - "compile": "installServerIntoExtension ../client ./package.json ./tsconfig.json && tsc -p .", - "watch": "installServerIntoExtension ../client ./package.json ./tsconfig.json && tsc -w -p ." - } + "scripts": {} } diff --git a/lsp-multi-server-sample/server/tsconfig.json b/lsp-multi-server-sample/server/tsconfig.json index 27c7eebc..91eb51b2 100644 --- a/lsp-multi-server-sample/server/tsconfig.json +++ b/lsp-multi-server-sample/server/tsconfig.json @@ -1,16 +1,16 @@ { + "extends": "../tsconfig.base.json", "compilerOptions": { - "noUnusedLocals": true, - "noUnusedParameters": true, - "noImplicitAny": true, - "noImplicitReturns": true, - "target": "es6", "module": "commonjs", - "moduleResolution": "node", - "sourceMap": true, - "lib" : [ "es2016" ], - "outDir": "../client/server" + "target": "es6", + "outDir": "out", + "rootDir": "src", + "lib": [ "es6" ], + "sourceMap": true }, + "include": [ + "src" + ], "exclude": [ "node_modules" ] diff --git a/lsp-multi-server-sample/tsconfig.base.json b/lsp-multi-server-sample/tsconfig.base.json new file mode 100644 index 00000000..3e627f3a --- /dev/null +++ b/lsp-multi-server-sample/tsconfig.base.json @@ -0,0 +1,8 @@ +{ + "compilerOptions": { + "noImplicitAny": true, + "noImplicitReturns": true, + "noUnusedLocals": true, + "noUnusedParameters": true + } +} \ No newline at end of file diff --git a/lsp-sample/client/package.json b/lsp-sample/client/package.json index be3fd30b..9eaa1d98 100644 --- a/lsp-sample/client/package.json +++ b/lsp-sample/client/package.json @@ -1,5 +1,5 @@ { - "name": "lsp-mulit-root-sample-client-part", + "name": "lsp-sample-client", "description": "VSCode part of a language server", "author": "Microsoft Corporation", "license": "MIT", @@ -13,8 +13,6 @@ "vscode": "^1.23.0" }, "scripts": { - "compile": "tsc -p ./", - "watch": "tsc -w -p ./", "update-vscode": "node ./node_modules/vscode/bin/install", "postinstall": "node ./node_modules/vscode/bin/install" },