Skip to content

Commit 53856cc

Browse files
authored
breaking: vs code / language-server major (#2475)
- use Svelte 4 as built-in version now - add exports map - bump vs code ls/client version to 9 - require Node 18 / VS Code 1.82 minimum - drive-by fix of __sveltets_2_ensureComponent (the previous version didn't work after all)
1 parent 89a1532 commit 53856cc

File tree

14 files changed

+267
-144
lines changed

14 files changed

+267
-144
lines changed

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
},
1818
"devDependencies": {
1919
"cross-env": "^7.0.2",
20-
"prettier": "~3.2.5",
20+
"prettier": "~3.3.3",
2121
"ts-node": "^10.0.0"
2222
},
2323
"packageManager": "[email protected]"

packages/language-server/package.json

Lines changed: 14 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,13 @@
11
{
22
"name": "svelte-language-server",
3-
"version": "0.16.0",
3+
"version": "0.17.0",
44
"description": "A language server for Svelte",
55
"main": "dist/src/index.js",
66
"typings": "dist/src/index",
7+
"exports": {
8+
"./package.json": "./package.json",
9+
".": "./dist/src/index.js"
10+
},
711
"scripts": {
812
"test": "cross-env TS_NODE_TRANSPILE_ONLY=true mocha --require ts-node/register \"test/**/*.ts\" --exclude \"test/**/*.d.ts\"",
913
"build": "tsc",
@@ -31,38 +35,37 @@
3135
},
3236
"homepage": "https://github.com/sveltejs/language-tools#readme",
3337
"engines": {
34-
"node": ">= 12.0.0"
38+
"node": ">= 18.0.0"
3539
},
3640
"devDependencies": {
3741
"@types/estree": "^0.0.42",
3842
"@types/lodash": "^4.14.116",
3943
"@types/mocha": "^9.1.0",
40-
"@types/node": "^16.0.0",
41-
"@types/prettier": "^2.2.3",
44+
"@types/node": "^18.0.0",
4245
"@types/sinon": "^7.5.2",
4346
"cross-env": "^7.0.2",
4447
"mocha": "^9.2.0",
4548
"sinon": "^11.0.0",
4649
"ts-node": "^10.0.0"
4750
},
4851
"dependencies": {
49-
"@jridgewell/trace-mapping": "^0.3.17",
52+
"@jridgewell/trace-mapping": "^0.3.25",
5053
"@vscode/emmet-helper": "2.8.4",
5154
"chokidar": "^3.4.1",
5255
"estree-walker": "^2.0.1",
5356
"fdir": "^6.2.0",
5457
"lodash": "^4.17.21",
55-
"prettier": "~3.2.5",
56-
"prettier-plugin-svelte": "^3.2.2",
57-
"svelte": "^3.57.0",
58+
"prettier": "~3.3.3",
59+
"prettier-plugin-svelte": "^3.2.6",
60+
"svelte": "^4.2.19",
5861
"svelte2tsx": "workspace:~",
5962
"typescript": "^5.5.2",
6063
"typescript-auto-import-cache": "^0.3.3",
6164
"vscode-css-languageservice": "~6.3.0",
6265
"vscode-html-languageservice": "~5.3.0",
63-
"vscode-languageserver": "8.0.2",
64-
"vscode-languageserver-protocol": "3.17.2",
65-
"vscode-languageserver-types": "3.17.2",
66+
"vscode-languageserver": "9.0.1",
67+
"vscode-languageserver-protocol": "3.17.5",
68+
"vscode-languageserver-types": "3.17.5",
6669
"vscode-uri": "~3.0.0"
6770
}
6871
}

packages/language-server/src/importPackage.ts

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -63,14 +63,6 @@ export function importSvelte(fromPath: string): typeof svelte {
6363
Logger.debug('Using Svelte v' + pkg.version.full, 'from', main);
6464
if (pkg.version.major === 4) {
6565
return dynamicRequire(main + '.cjs');
66-
} else if (pkg.version.major === 5) {
67-
// TODO remove once Svelte 5 is released
68-
// (we switched from compiler.cjs to compiler/index.js at some point)
69-
try {
70-
return dynamicRequire(main);
71-
} catch (e) {
72-
return dynamicRequire(main + '.cjs');
73-
}
7466
} else {
7567
return dynamicRequire(main);
7668
}

packages/language-server/src/plugins/typescript/features/CallHierarchyProvider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@ export class CallHierarchyProviderImpl implements CallHierarchyProvider {
213213
.provideCallHierarchyOutgoingCalls(filePath, offset)
214214
.concat(
215215
isComponentModulePosition
216-
? this.getOutgoingCallsForComponent(program, filePath) ?? []
216+
? (this.getOutgoingCallsForComponent(program, filePath) ?? [])
217217
: []
218218
);
219219

packages/language-server/src/plugins/typescript/features/CodeActionsProvider.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1471,7 +1471,7 @@ export class CodeActionsProviderImpl implements CodeActionsProvider {
14711471

14721472
const position = inModuleScript
14731473
? originalRange.start
1474-
: this.fixPropsCodeActionRange(originalRange.start, document) ?? originalRange.start;
1474+
: (this.fixPropsCodeActionRange(originalRange.start, document) ?? originalRange.start);
14751475

14761476
// fix the length of trailing indent
14771477
const linesOfNewText = edit.newText.split('\n');

packages/svelte-check/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
"node": ">= 18.0.0"
2727
},
2828
"dependencies": {
29-
"@jridgewell/trace-mapping": "^0.3.17",
29+
"@jridgewell/trace-mapping": "^0.3.25",
3030
"chokidar": "^3.4.1",
3131
"fdir": "^6.2.0",
3232
"picocolors": "^1.0.0",
@@ -52,7 +52,7 @@
5252
"rollup": "3.7.5",
5353
"rollup-plugin-cleanup": "^3.2.0",
5454
"rollup-plugin-copy": "^3.4.0",
55-
"svelte": "^3.57.0",
55+
"svelte": "^4.2.19",
5656
"svelte-language-server": "workspace:*",
5757
"typescript": "^5.5.2",
5858
"vscode-languageserver": "8.0.2",

packages/svelte-vscode/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@
3737
"Formatters"
3838
],
3939
"engines": {
40-
"vscode": "^1.67.0"
40+
"vscode": "^1.82.0"
4141
},
4242
"activationEvents": [
4343
"onLanguage:svelte",
@@ -718,7 +718,7 @@
718718
},
719719
"devDependencies": {
720720
"@types/lodash": "^4.14.116",
721-
"@types/node": "^16.0.0",
721+
"@types/node": "^18.0.0",
722722
"@types/vscode": "^1.67",
723723
"js-yaml": "^3.14.0",
724724
"tslib": "^2.4.0",
@@ -729,7 +729,7 @@
729729
"lodash": "^4.17.21",
730730
"svelte-language-server": "workspace:*",
731731
"typescript-svelte-plugin": "workspace:*",
732-
"vscode-languageclient": "^8.0.0",
733-
"vscode-languageserver-protocol": "3.17.2"
732+
"vscode-languageclient": "^9.0.1",
733+
"vscode-languageserver-protocol": "3.17.5"
734734
}
735735
}

packages/svelte-vscode/src/html/autoClose.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export function activateTagClosing(
2626
updateEnabledState();
2727
window.onDidChangeActiveTextEditor(updateEnabledState, null, disposables);
2828

29-
let timeout: NodeJS.Timer | undefined = void 0;
29+
let timeout: NodeJS.Timeout | undefined = void 0;
3030

3131
function updateEnabledState() {
3232
isEnabled = false;

packages/svelte2tsx/package.json

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@
1818
"module": "index.mjs",
1919
"types": "index.d.ts",
2020
"devDependencies": {
21-
"@jridgewell/sourcemap-codec": "^1.4.14",
22-
"@jridgewell/trace-mapping": "^0.3.17",
21+
"@jridgewell/sourcemap-codec": "^1.5.0",
22+
"@jridgewell/trace-mapping": "^0.3.25",
2323
"@rollup/plugin-commonjs": "^24.0.0",
2424
"@rollup/plugin-json": "^6.0.0",
2525
"@rollup/plugin-node-resolve": "^15.0.0",
2626
"@rollup/plugin-typescript": "^10.0.0",
2727
"@types/estree": "^0.0.42",
2828
"@types/mocha": "^9.1.0",
29-
"@types/node": "^16.0.0",
29+
"@types/node": "^18.0.0",
3030
"@types/unist": "^2.0.3",
3131
"@types/vfile": "^3.0.2",
3232
"builtin-modules": "^3.3.0",
@@ -37,7 +37,7 @@
3737
"rollup": "3.7.5",
3838
"rollup-plugin-delete": "^2.0.0",
3939
"source-map-support": "^0.5.16",
40-
"svelte": "~3.57.0",
40+
"svelte": "~4.2.19",
4141
"tiny-glob": "^0.2.6",
4242
"tslib": "^2.4.0",
4343
"typescript": "^5.5.2"

packages/svelte2tsx/src/htmlxtojsx_v2/utils/node-utils.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -233,7 +233,7 @@ export function rangeWithTrailingPropertyAccess(
233233
* Get the end of the node, excluding the type annotation
234234
*/
235235
export function getEnd(node: any) {
236-
return isTypescriptNode(node) ? node.expression.end : node.typeAnnotation?.start ?? node.end;
236+
return isTypescriptNode(node) ? node.expression.end : (node.typeAnnotation?.start ?? node.end);
237237
}
238238

239239
export function isTypescriptNode(node: any) {

0 commit comments

Comments
 (0)