diff --git a/package.json b/package.json index 80c7cc95..f785803d 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "test:jest": "jest" }, "dependencies": { - "@glimmer/syntax": ">= 0.84.3", + "@glimmer/syntax": ">=0.94.9", "@types/tmp": "^0.2.6", "async-promise-queue": "^1.0.5", "colors": "^1.4.0", @@ -44,10 +44,10 @@ "workerpool": "^6.4.0" }, "devDependencies": { - "@types/jest": "^27.4.0", - "@types/workerpool": "^6.1.1", "@glimmer/reference": "^0.84.3", "@glimmer/validator": "^0.84.3", + "@types/jest": "^27.4.0", + "@types/workerpool": "^6.1.1", "@typescript-eslint/eslint-plugin": "^5.9.1", "@typescript-eslint/parser": "^5.9.1", "benchmark": "^2.1.4", @@ -63,7 +63,7 @@ "prettier": "^2.5.1", "release-plan": "^0.16.0", "ts-jest": "^26.5.6", - "typescript": "~4.9.5" + "typescript": "~5.8.3" }, "packageManager": "pnpm@10.9.0", "engines": { @@ -71,16 +71,5 @@ }, "publishConfig": { "registry": "https://registry.npmjs.org" - }, - "pnpm": { - "overrides": { - "@glimmer/reference": "0.84.3", - "@glimmer/syntax": "0.84.3", - "@glimmer/validator": "0.84.3" - }, - "override-nodes": [ - "@glimmer/* pinned for typescript reasons", - "TODO: We should test against a range of @glimmer/syntaxes -- or bump to 1.0" - ] } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 69f574e7..7b7cf785 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -4,18 +4,13 @@ settings: autoInstallPeers: true excludeLinksFromLockfile: false -overrides: - '@glimmer/syntax': 0.84.3 - '@glimmer/reference': 0.84.3 - '@glimmer/validator': 0.84.3 - importers: .: dependencies: '@glimmer/syntax': - specifier: 0.84.3 - version: 0.84.3 + specifier: '>=0.94.9' + version: 0.94.9 '@types/tmp': specifier: ^0.2.6 version: 0.2.6 @@ -45,10 +40,10 @@ importers: version: 6.5.1 devDependencies: '@glimmer/reference': - specifier: 0.84.3 + specifier: ^0.84.3 version: 0.84.3 '@glimmer/validator': - specifier: 0.84.3 + specifier: ^0.84.3 version: 0.84.3 '@types/jest': specifier: ^27.4.0 @@ -58,10 +53,10 @@ importers: version: 6.4.7 '@typescript-eslint/eslint-plugin': specifier: ^5.9.1 - version: 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@4.9.5))(eslint@8.57.1)(typescript@4.9.5) + version: 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1)(typescript@5.8.3) '@typescript-eslint/parser': specifier: ^5.9.1 - version: 5.62.0(eslint@8.57.1)(typescript@4.9.5) + version: 5.62.0(eslint@8.57.1)(typescript@5.8.3) benchmark: specifier: ^2.1.4 version: 2.1.4 @@ -100,10 +95,10 @@ importers: version: 0.16.0 ts-jest: specifier: ^26.5.6 - version: 26.5.6(jest@26.6.3)(typescript@4.9.5) + version: 26.5.6(jest@26.6.3)(typescript@5.8.3) typescript: - specifier: ~4.9.5 - version: 4.9.5 + specifier: ~5.8.3 + version: 5.8.3 packages: @@ -295,18 +290,27 @@ packages: '@glimmer/interfaces@0.84.3': resolution: {integrity: sha512-dk32ykoNojt0mvEaIW6Vli5MGTbQo58uy3Epj7ahCgTHmWOKuw/0G83f2UmFprRwFx689YTXG38I/vbpltEjzg==} + '@glimmer/interfaces@0.94.6': + resolution: {integrity: sha512-sp/1WePvB/8O+jrcUHwjboNPTKrdGicuHKA9T/lh0vkYK2qM5Xz4i25lQMQ38tEMiw7KixrjHiTUiaXRld+IwA==} + '@glimmer/reference@0.84.3': resolution: {integrity: sha512-lV+p/aWPVC8vUjmlvYVU7WQJsLh319SdXuAWoX/SE3pq340BJlAJiEcAc6q52y9JNhT57gMwtjMX96W5Xcx/qw==} - '@glimmer/syntax@0.84.3': - resolution: {integrity: sha512-ioVbTic6ZisLxqTgRBL2PCjYZTFIwobifCustrozRU2xGDiYvVIL0vt25h2c1ioDsX59UgVlDkIK4YTAQQSd2A==} + '@glimmer/syntax@0.94.9': + resolution: {integrity: sha512-OBw8DqMzKO4LX4kJBhwfTUqtpbd7O9amQXNTfb1aS7pufio5Vu5Qi6mRTfdFj6RyJ//aSI/l0kxWt6beYW0Apg==} '@glimmer/util@0.84.3': resolution: {integrity: sha512-qFkh6s16ZSRuu2rfz3T4Wp0fylFj3HBsONGXQcrAdZjdUaIS6v3pNj6mecJ71qRgcym9Hbaq/7/fefIwECUiKw==} + '@glimmer/util@0.94.8': + resolution: {integrity: sha512-HfCKeZ74clF9BsPDBOqK/yRNa/ke6niXFPM6zRn9OVYw+ZAidLs7V8He/xljUHlLRL322kaZZY8XxRW7ALEwyg==} + '@glimmer/validator@0.84.3': resolution: {integrity: sha512-RTBV4TokUB0vI31UC7ikpV7lOYpWUlyqaKV//pRC4pexYMlmqnVhkFrdiimB/R1XyNdUOQUmnIAcdic39NkbhQ==} + '@glimmer/wire-format@0.94.8': + resolution: {integrity: sha512-A+Cp5m6vZMAEu0Kg/YwU2dJZXyYxVJs2zI57d3CP6NctmX7FsT8WjViiRUmt5abVmMmRH5b8BUovqY6GSMAdrw==} + '@handlebars/parser@2.0.0': resolution: {integrity: sha512-EP9uEDZv/L5Qh9IWuMUGJRfwhXJ4h1dqKTT4/3+tY0eu7sPis7xh23j61SYUnNF4vqCQvvUXpDo9Bh/+q1zASA==} @@ -3384,6 +3388,10 @@ packages: resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} engines: {node: '>=8'} + type-fest@4.41.0: + resolution: {integrity: sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==} + engines: {node: '>=16'} + typed-array-buffer@1.0.3: resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==} engines: {node: '>= 0.4'} @@ -3403,9 +3411,9 @@ packages: typedarray-to-buffer@3.1.5: resolution: {integrity: sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==} - typescript@4.9.5: - resolution: {integrity: sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g==} - engines: {node: '>=4.2.0'} + typescript@5.8.3: + resolution: {integrity: sha512-p1diW6TqL9L07nNxvRMM7hMMw4c5XOo/1ibL4aAIGmSAt9slTE1Xgw5KWuof2uTOvCg9BY7ZRi+GaF+7sfgPeQ==} + engines: {node: '>=14.17'} hasBin: true uglify-js@3.19.3: @@ -3885,6 +3893,11 @@ snapshots: dependencies: '@simple-dom/interface': 1.4.0 + '@glimmer/interfaces@0.94.6': + dependencies: + '@simple-dom/interface': 1.4.0 + type-fest: 4.41.0 + '@glimmer/reference@0.84.3': dependencies: '@glimmer/env': 0.1.7 @@ -3893,10 +3906,11 @@ snapshots: '@glimmer/util': 0.84.3 '@glimmer/validator': 0.84.3 - '@glimmer/syntax@0.84.3': + '@glimmer/syntax@0.94.9': dependencies: - '@glimmer/interfaces': 0.84.3 - '@glimmer/util': 0.84.3 + '@glimmer/interfaces': 0.94.6 + '@glimmer/util': 0.94.8 + '@glimmer/wire-format': 0.94.8 '@handlebars/parser': 2.0.0 simple-html-tokenizer: 0.5.11 @@ -3906,11 +3920,19 @@ snapshots: '@glimmer/interfaces': 0.84.3 '@simple-dom/interface': 1.4.0 + '@glimmer/util@0.94.8': + dependencies: + '@glimmer/interfaces': 0.94.6 + '@glimmer/validator@0.84.3': dependencies: '@glimmer/env': 0.1.7 '@glimmer/global-context': 0.84.3 + '@glimmer/wire-format@0.94.8': + dependencies: + '@glimmer/interfaces': 0.94.6 + '@handlebars/parser@2.0.0': {} '@humanwhocodes/config-array@0.13.0': @@ -4344,34 +4366,34 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@4.9.5))(eslint@8.57.1)(typescript@4.9.5)': + '@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@5.8.3))(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 5.62.0(eslint@8.57.1)(typescript@4.9.5) + '@typescript-eslint/parser': 5.62.0(eslint@8.57.1)(typescript@5.8.3) '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.1)(typescript@4.9.5) - '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@4.9.5) + '@typescript-eslint/type-utils': 5.62.0(eslint@8.57.1)(typescript@5.8.3) + '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.8.3) debug: 4.4.0 eslint: 8.57.1 graphemer: 1.4.0 ignore: 5.3.2 natural-compare-lite: 1.4.0 semver: 7.7.1 - tsutils: 3.21.0(typescript@4.9.5) + tsutils: 3.21.0(typescript@5.8.3) optionalDependencies: - typescript: 4.9.5 + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@4.9.5)': + '@typescript-eslint/parser@5.62.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5) + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.8.3) debug: 4.4.0 eslint: 8.57.1 optionalDependencies: - typescript: 4.9.5 + typescript: 5.8.3 transitivePeerDependencies: - supports-color @@ -4380,21 +4402,21 @@ snapshots: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 - '@typescript-eslint/type-utils@5.62.0(eslint@8.57.1)(typescript@4.9.5)': + '@typescript-eslint/type-utils@5.62.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: - '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5) - '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@4.9.5) + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.8.3) + '@typescript-eslint/utils': 5.62.0(eslint@8.57.1)(typescript@5.8.3) debug: 4.4.0 eslint: 8.57.1 - tsutils: 3.21.0(typescript@4.9.5) + tsutils: 3.21.0(typescript@5.8.3) optionalDependencies: - typescript: 4.9.5 + typescript: 5.8.3 transitivePeerDependencies: - supports-color '@typescript-eslint/types@5.62.0': {} - '@typescript-eslint/typescript-estree@5.62.0(typescript@4.9.5)': + '@typescript-eslint/typescript-estree@5.62.0(typescript@5.8.3)': dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 @@ -4402,20 +4424,20 @@ snapshots: globby: 11.1.0 is-glob: 4.0.3 semver: 7.7.1 - tsutils: 3.21.0(typescript@4.9.5) + tsutils: 3.21.0(typescript@5.8.3) optionalDependencies: - typescript: 4.9.5 + typescript: 5.8.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@5.62.0(eslint@8.57.1)(typescript@4.9.5)': + '@typescript-eslint/utils@5.62.0(eslint@8.57.1)(typescript@5.8.3)': dependencies: '@eslint-community/eslint-utils': 4.6.1(eslint@8.57.1) '@types/json-schema': 7.0.15 '@types/semver': 7.7.0 '@typescript-eslint/scope-manager': 5.62.0 '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@4.9.5) + '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.8.3) eslint: 8.57.1 eslint-scope: 5.1.1 semver: 7.7.1 @@ -7673,7 +7695,7 @@ snapshots: transitivePeerDependencies: - supports-color - ts-jest@26.5.6(jest@26.6.3)(typescript@4.9.5): + ts-jest@26.5.6(jest@26.6.3)(typescript@5.8.3): dependencies: bs-logger: 0.2.6 buffer-from: 1.1.2 @@ -7685,15 +7707,15 @@ snapshots: make-error: 1.3.6 mkdirp: 1.0.4 semver: 7.7.1 - typescript: 4.9.5 + typescript: 5.8.3 yargs-parser: 20.2.9 tslib@1.14.1: {} - tsutils@3.21.0(typescript@4.9.5): + tsutils@3.21.0(typescript@5.8.3): dependencies: tslib: 1.14.1 - typescript: 4.9.5 + typescript: 5.8.3 type-check@0.4.0: dependencies: @@ -7709,6 +7731,8 @@ snapshots: type-fest@0.8.1: {} + type-fest@4.41.0: {} + typed-array-buffer@1.0.3: dependencies: call-bound: 1.0.4 @@ -7746,7 +7770,7 @@ snapshots: dependencies: is-typedarray: 1.0.0 - typescript@4.9.5: {} + typescript@5.8.3: {} uglify-js@3.19.3: optional: true diff --git a/src/parse-result.test.ts b/src/parse-result.test.ts index 688bca81..df521b9a 100644 --- a/src/parse-result.test.ts +++ b/src/parse-result.test.ts @@ -1563,6 +1563,7 @@ describe('ember-template-recast', function () {

here is some multiline string

{{ other-stuff }} `; + /* @ts-expect-error this is only a test - TODO fix it */ let { code } = transform(template, () => { return { ElementNode() { diff --git a/src/parse-result.ts b/src/parse-result.ts index 90808d36..7deb226a 100644 --- a/src/parse-result.ts +++ b/src/parse-result.ts @@ -408,7 +408,6 @@ export default class ParseResult { const { original } = nodeInfo; switch (ast.type) { - case 'Program': case 'Block': case 'Template': { diff --git a/tsconfig.json b/tsconfig.json index 81d7f732..b0f4b880 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -12,6 +12,7 @@ "rootDir": "./src", "noImplicitAny": true, "baseUrl": ".", + "skipLibCheck": true, "paths": { "*": ["types/*"]