Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
"eslint": "^8.27.0",
"prettier": "^3.3.2",
"release-it": "^15.5.0",
"typescript": "~5.3.0"
"typescript": ">=5.4.0"
},
"resolutions:notes": {
"@glimmer/validator": "Newer versions of @glimmer/* are ESM-only, and Glint is compiled to CJS, so newer versions of @glimmer/* are not compatible",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -156,48 +156,6 @@ describe('Language Server: Diagnostic Augmentation', () => {

expect(diagnostics.items.reverse()).toMatchInlineSnapshot(`
[
{
"code": 2554,
"data": {
"documentUri": "volar-embedded-content://URI_ENCODED_PATH_TO/FILE",
"isFormat": false,
"original": {},
"pluginIndex": 0,
"uri": "file:///path/to/EPHEMERAL_TEST_PROJECT/index.gts",
"version": 0,
},
"message": "Expected 2 arguments, but got 1.",
"range": {
"end": {
"character": 28,
"line": 19,
},
"start": {
"character": 4,
"line": 19,
},
},
"relatedInformation": [
{
"location": {
"range": {
"end": {
"character": 44,
"line": 9,
},
"start": {
"character": 35,
"line": 9,
},
},
"uri": "file:///path/to/EPHEMERAL_TEST_PROJECT/index.gts",
},
"message": "An argument for 'b' was not provided.",
},
],
"severity": 1,
"source": "glint",
},
{
"code": 2554,
"data": {
Expand Down Expand Up @@ -246,72 +204,6 @@ describe('Language Server: Diagnostic Augmentation', () => {
"severity": 1,
"source": "glint",
},
{
"code": 2555,
"data": {
"documentUri": "volar-embedded-content://URI_ENCODED_PATH_TO/FILE",
"isFormat": false,
"original": {},
"pluginIndex": 0,
"uri": "file:///path/to/EPHEMERAL_TEST_PROJECT/index.gts",
"version": 0,
},
"message": "Expected at least 1 arguments, but got 0.",
"range": {
"end": {
"character": 28,
"line": 22,
},
"start": {
"character": 4,
"line": 22,
},
},
"relatedInformation": [
{
"location": {
"range": {
"end": {
"character": 39,
"line": 13,
},
"start": {
"character": 30,
"line": 13,
},
},
"uri": "file:///path/to/EPHEMERAL_TEST_PROJECT/index.gts",
},
"message": "An argument for 'a' was not provided.",
},
],
"severity": 1,
"source": "glint",
},
{
"code": 2554,
"data": {
"documentUri": "volar-embedded-content://URI_ENCODED_PATH_TO/FILE",
"isFormat": false,
"original": {},
"pluginIndex": 0,
"uri": "file:///path/to/EPHEMERAL_TEST_PROJECT/index.gts",
"version": 0,
},
"message": "Expected 2 arguments, but got 1.",
"range": {
"end": {
"character": 41,
"line": 24,
},
"start": {
"character": 4,
"line": 24,
},
},
"severity": 1,
"source": "glint",
},
{
"code": 2554,
"data": {
Expand All @@ -336,48 +228,6 @@ describe('Language Server: Diagnostic Augmentation', () => {
"severity": 1,
"source": "glint",
},
{
"code": 2555,
"data": {
"documentUri": "volar-embedded-content://URI_ENCODED_PATH_TO/FILE",
"isFormat": false,
"original": {},
"pluginIndex": 0,
"uri": "file:///path/to/EPHEMERAL_TEST_PROJECT/index.gts",
"version": 0,
},
"message": "Expected at least 1 arguments, but got 0.",
"range": {
"end": {
"character": 41,
"line": 26,
},
"start": {
"character": 4,
"line": 26,
},
},
"relatedInformation": [
{
"location": {
"range": {
"end": {
"character": 48,
"line": 115,
},
"start": {
"character": 4,
"line": 115,
},
},
"uri": "file:///PATH_TO_MODULE/@glint/template/-private/dsl/emit.d.ts",
},
"message": "Arguments for the rest parameter 'values' were not provided.",
},
],
"severity": 1,
"source": "glint",
},
]
`);
});
Expand Down Expand Up @@ -675,7 +525,7 @@ describe('Language Server: Diagnostic Augmentation', () => {
"message": "The given value does not appear to be usable as a component, modifier or helper.
No overload matches this call.
Overload 1 of 3, '(item: DirectInvokable): AnyFunction', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any) => any', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any[]) => any', gave the following error.
Overload 3 of 3, '(item: ((...params: any) => any) | null | undefined): (...params: any) => any', gave the following error.",
"range": {
"end": {
Expand Down Expand Up @@ -721,7 +571,7 @@ describe('Language Server: Diagnostic Augmentation', () => {
"message": "The given value does not appear to be usable as a component, modifier or helper.
No overload matches this call.
Overload 1 of 3, '(item: DirectInvokable): AnyFunction', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any) => any', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any[]) => any', gave the following error.
Overload 3 of 3, '(item: ((...params: any) => any) | null | undefined): (...params: any) => any', gave the following error.",
"range": {
"end": {
Expand Down Expand Up @@ -750,7 +600,7 @@ describe('Language Server: Diagnostic Augmentation', () => {
"message": "The given value does not appear to be usable as a component, modifier or helper.
No overload matches this call.
Overload 1 of 3, '(item: DirectInvokable): AnyFunction', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any) => any', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any[]) => any', gave the following error.
Overload 3 of 3, '(item: ((...params: any) => any) | null | undefined): (...params: any) => any', gave the following error.",
"range": {
"end": {
Expand Down Expand Up @@ -779,7 +629,7 @@ describe('Language Server: Diagnostic Augmentation', () => {
"message": "The given value does not appear to be usable as a component, modifier or helper.
No overload matches this call.
Overload 1 of 3, '(item: DirectInvokable): AnyFunction', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any) => any', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any[]) => any', gave the following error.
Overload 3 of 3, '(item: ((...params: any) => any) | null | undefined): (...params: any) => any', gave the following error.",
"range": {
"end": {
Expand Down Expand Up @@ -808,7 +658,7 @@ describe('Language Server: Diagnostic Augmentation', () => {
"message": "The given value does not appear to be usable as a component, modifier or helper.
No overload matches this call.
Overload 1 of 3, '(item: DirectInvokable): AnyFunction', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any) => any', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any[]) => any', gave the following error.
Overload 3 of 3, '(item: ((...params: any) => any) | null | undefined): (...params: any) => any', gave the following error.",
"range": {
"end": {
Expand Down Expand Up @@ -837,7 +687,7 @@ describe('Language Server: Diagnostic Augmentation', () => {
"message": "The given value does not appear to be usable as a component, modifier or helper.
No overload matches this call.
Overload 1 of 3, '(item: DirectInvokable): AnyFunction', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any) => any', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any[]) => any', gave the following error.
Overload 3 of 3, '(item: ((...params: any) => any) | null | undefined): (...params: any) => any', gave the following error.",
"range": {
"end": {
Expand Down Expand Up @@ -866,7 +716,7 @@ describe('Language Server: Diagnostic Augmentation', () => {
"message": "The given value does not appear to be usable as a component, modifier or helper.
No overload matches this call.
Overload 1 of 3, '(item: DirectInvokable): AnyFunction', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any) => any', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any[]) => any', gave the following error.
Overload 3 of 3, '(item: ((...params: any) => any) | null | undefined): (...params: any) => any', gave the following error.",
"range": {
"end": {
Expand Down Expand Up @@ -895,7 +745,7 @@ describe('Language Server: Diagnostic Augmentation', () => {
"message": "The given value does not appear to be usable as a component, modifier or helper.
No overload matches this call.
Overload 1 of 3, '(item: DirectInvokable): AnyFunction', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any) => any', gave the following error.
Overload 2 of 3, '(item: (abstract new (...args: unknown[]) => InvokableInstance) | null | undefined): (...args: any[]) => any', gave the following error.
Overload 3 of 3, '(item: ((...params: any) => any) | null | undefined): (...params: any) => any', gave the following error.",
"range": {
"end": {
Expand Down
2 changes: 1 addition & 1 deletion packages/core/__tests__/tsconfig.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"extends": "../tsconfig.json",
"include": ["../src", "**/*.ts", "../../typescript-plugin/src/typescript-server-plugin.ts"],
"include": ["../src", "**/*.ts"],
"compilerOptions": {
"rootDir": ".."
}
Expand Down
2 changes: 1 addition & 1 deletion packages/core/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
"prepack": "yarn build"
},
"peerDependencies": {
"typescript": ">=4.8.0"
"typescript": ">=5.4.0"
},
"dependencies": {
"@glimmer/syntax": "^0.84.3",
Expand Down
2 changes: 1 addition & 1 deletion packages/typescript-plugin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
"lib"
],
"scripts": {
"test": "vitest run",
"test": "echo 'no standalone tests within this project'",
"test:typecheck": "echo 'no standalone typecheck within this project'",
"test:tsc": "echo 'no standalone typecheck within this project'",
"build": "tsc --build",
Expand Down
8 changes: 3 additions & 5 deletions packages/typescript-plugin/src/typescript-server-plugin.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import type ts from 'typescript';

// Top level "imports" need to be CJS requires because TS Plugins must be CJS;
// we dynamically import() the ESM modules we need below within the async fn.
// Top level "imports" need to be CJS `require`s because TS Plugins must be CJS;
// we dynamically import() the ESM modules we need below within the async fn
// to cross the gap between CJS and ESM.
const {
createAsyncLanguageServicePlugin,
} = require('@volar/typescript/lib/quickstart/createAsyncLanguageServicePlugin.js');
Expand All @@ -15,9 +16,6 @@ const plugin = createAsyncLanguageServicePlugin(
const cwd = info.languageServiceHost.getCurrentDirectory();
const glintConfig = findConfig(cwd);

// NOTE: this code used to assert in the failure of finding Glint config; I'm
// not sure whether it's better to be lenient, but we were getting test failures
// on environment-ember-loose's `yarn run test`.
if (glintConfig) {
const gtsLanguagePlugin = createEmberLanguagePlugin(glintConfig);
return {
Expand Down
2 changes: 1 addition & 1 deletion packages/typescript-plugin/tsconfig.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
"outDir": "lib",

// ts server plugins need to be cjs
"module": "CommonJS",
"module": "preserve",
"moduleResolution": "node"
},
"include": ["src"],
Expand Down
6 changes: 0 additions & 6 deletions packages/vscode/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -158,12 +158,6 @@
}
}
],
"typescriptServerPlugins": [
{
"name": "typescript-hbs-plugin",
"enableForWorkspaceTypeScriptVersions": true
}
],
"jsonValidation": [
{
"fileMatch": "jsconfig*.json",
Expand Down
8 changes: 2 additions & 6 deletions packages/vscode/src/extension.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,11 +11,7 @@ import {
WorkspaceConfiguration,
} from 'vscode';
import * as languageServerProtocol from '@volar/language-server/protocol.js';
import {
LabsInfo,
createLabsInfo,
getTsdk,
} from '@volar/vscode';
import { LabsInfo, createLabsInfo, getTsdk } from '@volar/vscode';

import { Disposable, LanguageClient, ServerOptions } from '@volar/vscode/node.js';

Expand All @@ -32,7 +28,7 @@ export function activate(context: ExtensionContext): LabsInfo {
// TS Plugin kicks in. We do this because the TS extension is (obviously) not
// configured to activate for, say, .gts files:
// https://github.com/microsoft/vscode/blob/878af07/extensions/typescript-language-features/package.json#L62..L75
extensions.getExtension('vscode.typescript-language-features')?.activate()
extensions.getExtension('vscode.typescript-language-features')?.activate();

// TODO: Volar: i think this happens as part of dynamic registerCapability, i.e.
// I think maybe we can remove this from `activate` and wait for it to happen
Expand Down
8 changes: 4 additions & 4 deletions yarn.lock
Original file line number Diff line number Diff line change
Expand Up @@ -14156,10 +14156,10 @@ typescript-memoize@^1.0.0-alpha.3, typescript-memoize@^1.0.1:
resolved "https://registry.yarnpkg.com/typescript-memoize/-/typescript-memoize-1.1.1.tgz#02737495d5df6ebf72c07ba0d002e8f4cf5ccfa0"
integrity sha512-GQ90TcKpIH4XxYTI2F98yEQYZgjNMOGPpOgdjIBhaLaWji5HPWlRnZ4AeA1hfBxtY7bCGDJsqDDHk/KaHOl5bA==

typescript@~5.3.0:
version "5.3.3"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.3.3.tgz#b3ce6ba258e72e6305ba66f5c9b452aaee3ffe37"
integrity sha512-pXWcraxM0uxAS+tN0AG/BF2TyqmHO014Z070UsJ+pFvYuRSq8KH8DmWpnbXe0pEPDHXZV3FcAbJkijJ5oNEnWw==
typescript@>=5.4.0:
version "5.5.3"
resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.5.3.tgz#e1b0a3c394190838a0b168e771b0ad56a0af0faa"
integrity sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==

uc.micro@^1.0.1, uc.micro@^1.0.5:
version "1.0.6"
Expand Down