From 3db8bfaedee5b728279bf8777e6a7b70dd138ff1 Mon Sep 17 00:00:00 2001 From: Avi Vahl Date: Tue, 14 Jan 2025 16:39:07 +0200 Subject: [PATCH 1/4] fix(language-service): allow native esm to import package with this patch, `@tailwindcss/language-service` can be imported/used in Node.js in native esm mode. adjusted "semver" imports to include an extension, as that package has no "exports". also upgrade semver to latest stable (7.6.3) --- package.json | 2 +- .../tailwindcss-language-service/package.json | 2 +- .../src/util/semver.ts | 4 +- pnpm-lock.yaml | 49 +++++++------------ 4 files changed, 23 insertions(+), 34 deletions(-) diff --git a/package.json b/package.json index 218a4fb2..355c9e88 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "esbuild": "^0.20.2", "minimist": "^1.2.8", "prettier": "^3.2.5", - "semver": "^7.5.4" + "semver": "^7.6.3" }, "prettier": { "semi": false, diff --git a/packages/tailwindcss-language-service/package.json b/packages/tailwindcss-language-service/package.json index d92a10c7..0f1d1fce 100644 --- a/packages/tailwindcss-language-service/package.json +++ b/packages/tailwindcss-language-service/package.json @@ -31,7 +31,7 @@ "postcss": "8.4.31", "postcss-selector-parser": "6.0.2", "postcss-value-parser": "4.2.0", - "semver": "7.5.2", + "semver": "7.6.3", "sift-string": "0.0.2", "stringify-object": "3.3.0", "tmp-cache": "1.1.0", diff --git a/packages/tailwindcss-language-service/src/util/semver.ts b/packages/tailwindcss-language-service/src/util/semver.ts index 813d5d65..2d259dab 100644 --- a/packages/tailwindcss-language-service/src/util/semver.ts +++ b/packages/tailwindcss-language-service/src/util/semver.ts @@ -1,5 +1,5 @@ -import semverGte from 'semver/functions/gte' -import semverLte from 'semver/functions/lte' +import semverGte from 'semver/functions/gte.js' +import semverLte from 'semver/functions/lte.js' export function gte(v1: string, v2: string): boolean { if (v1.startsWith('0.0.0-insiders')) { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f0ca5d41..b371f737 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -27,8 +27,8 @@ importers: specifier: ^3.2.5 version: 3.2.5 semver: - specifier: ^7.5.4 - version: 7.5.4 + specifier: ^7.6.3 + version: 7.6.3 packages/tailwindcss-language-server: devDependencies: @@ -264,8 +264,8 @@ importers: specifier: 4.2.0 version: 4.2.0 semver: - specifier: 7.5.2 - version: 7.5.2 + specifier: 7.6.3 + version: 7.6.3 sift-string: specifier: 0.0.2 version: 0.0.2 @@ -2273,13 +2273,8 @@ packages: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true - semver@7.5.2: - resolution: {integrity: sha512-SoftuTROv/cRjCze/scjGyiDtcUyxw1rgYQSZY7XTmtR5hX+dm76iDbTH8TkLPHCQmlbQVSSbNZCPM2hb0knnQ==} - engines: {node: '>=10'} - hasBin: true - - semver@7.5.4: - resolution: {integrity: sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==} + semver@7.6.3: + resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} engines: {node: '>=10'} hasBin: true @@ -2970,7 +2965,7 @@ snapshots: proc-log: 3.0.0 promise-inflight: 1.0.1 promise-retry: 2.0.1 - semver: 7.5.4 + semver: 7.6.3 which: 4.0.0 transitivePeerDependencies: - bluebird @@ -2983,7 +2978,7 @@ snapshots: json-parse-even-better-errors: 3.0.0 normalize-package-data: 6.0.0 proc-log: 3.0.0 - semver: 7.5.4 + semver: 7.6.3 transitivePeerDependencies: - bluebird @@ -3221,7 +3216,7 @@ snapshots: minimatch: 3.1.2 parse-semver: 1.1.1 read: 1.0.7 - semver: 7.5.4 + semver: 7.6.3 tmp: 0.2.3 typed-rest-client: 1.8.11 url-join: 4.0.1 @@ -3325,7 +3320,7 @@ snapshots: builtins@5.0.1: dependencies: - semver: 7.5.4 + semver: 7.6.3 bun-types@1.1.21: dependencies: @@ -4108,7 +4103,7 @@ snapshots: node-abi@3.65.0: dependencies: - semver: 7.5.4 + semver: 7.6.3 optional: true node-addon-api@3.2.1: {} @@ -4136,21 +4131,21 @@ snapshots: dependencies: hosted-git-info: 4.1.0 is-core-module: 2.13.0 - semver: 7.5.4 + semver: 7.6.3 validate-npm-package-license: 3.0.4 normalize-package-data@6.0.0: dependencies: hosted-git-info: 7.0.1 is-core-module: 2.13.0 - semver: 7.5.4 + semver: 7.6.3 validate-npm-package-license: 3.0.4 normalize-path@3.0.0: {} npm-install-checks@6.3.0: dependencies: - semver: 7.5.4 + semver: 7.6.3 npm-normalize-package-bin@1.0.1: {} @@ -4160,7 +4155,7 @@ snapshots: dependencies: hosted-git-info: 7.0.1 proc-log: 3.0.0 - semver: 7.5.4 + semver: 7.6.3 validate-npm-package-name: 5.0.0 npm-pick-manifest@9.0.0: @@ -4168,7 +4163,7 @@ snapshots: npm-install-checks: 6.3.0 npm-normalize-package-bin: 3.0.1 npm-package-arg: 11.0.1 - semver: 7.5.4 + semver: 7.6.3 npm-run-path@5.3.0: dependencies: @@ -4543,13 +4538,7 @@ snapshots: semver@5.7.2: {} - semver@7.5.2: - dependencies: - lru-cache: 6.0.0 - - semver@7.5.4: - dependencies: - lru-cache: 6.0.0 + semver@7.6.3: {} set-function-length@1.2.2: dependencies: @@ -4921,13 +4910,13 @@ snapshots: vscode-languageclient@8.0.2: dependencies: minimatch: 3.1.2 - semver: 7.5.4 + semver: 7.6.3 vscode-languageserver-protocol: 3.17.2 vscode-languageclient@8.1.0: dependencies: minimatch: 5.1.6 - semver: 7.5.4 + semver: 7.6.3 vscode-languageserver-protocol: 3.17.3 vscode-languageserver-protocol@3.17.2: From 578f8acf1b927251289313bad258253dee7f9041 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Tue, 4 Feb 2025 10:36:37 -0500 Subject: [PATCH 2/4] Bump semver version --- package.json | 2 +- packages/tailwindcss-language-service/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 355c9e88..e90bbba1 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "esbuild": "^0.20.2", "minimist": "^1.2.8", "prettier": "^3.2.5", - "semver": "^7.6.3" + "semver": "^7.7.1" }, "prettier": { "semi": false, diff --git a/packages/tailwindcss-language-service/package.json b/packages/tailwindcss-language-service/package.json index 0f1d1fce..3f3460a7 100644 --- a/packages/tailwindcss-language-service/package.json +++ b/packages/tailwindcss-language-service/package.json @@ -31,7 +31,7 @@ "postcss": "8.4.31", "postcss-selector-parser": "6.0.2", "postcss-value-parser": "4.2.0", - "semver": "7.6.3", + "semver": "7.7.1", "sift-string": "0.0.2", "stringify-object": "3.3.0", "tmp-cache": "1.1.0", From 13c82bf0bb00dd905ee0e5af8e94c7919d7e61d6 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Tue, 4 Feb 2025 10:36:43 -0500 Subject: [PATCH 3/4] Tweak formatting --- packages/tailwindcss-language-service/src/util/semver.ts | 2 ++ 1 file changed, 2 insertions(+) diff --git a/packages/tailwindcss-language-service/src/util/semver.ts b/packages/tailwindcss-language-service/src/util/semver.ts index 2d259dab..d46d76f0 100644 --- a/packages/tailwindcss-language-service/src/util/semver.ts +++ b/packages/tailwindcss-language-service/src/util/semver.ts @@ -5,6 +5,7 @@ export function gte(v1: string, v2: string): boolean { if (v1.startsWith('0.0.0-insiders')) { return true } + return semverGte(v1, v2) } @@ -12,5 +13,6 @@ export function lte(v1: string, v2: string): boolean { if (v1.startsWith('0.0.0-insiders')) { return false } + return semverLte(v1, v2) } From 4011420ca69cf47e0f29f4ac941ca704e8cfc1a9 Mon Sep 17 00:00:00 2001 From: Jordan Pittman Date: Tue, 4 Feb 2025 10:38:11 -0500 Subject: [PATCH 4/4] Update lockfile --- pnpm-lock.yaml | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 46747267..f5ec96f4 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -27,8 +27,8 @@ importers: specifier: ^3.2.5 version: 3.2.5 semver: - specifier: ^7.6.3 - version: 7.6.3 + specifier: ^7.7.1 + version: 7.7.1 packages/tailwindcss-language-server: devDependencies: @@ -276,8 +276,8 @@ importers: specifier: 4.2.0 version: 4.2.0 semver: - specifier: 7.6.3 - version: 7.6.3 + specifier: 7.7.1 + version: 7.7.1 sift-string: specifier: 0.0.2 version: 0.0.2 @@ -2316,8 +2316,8 @@ packages: resolution: {integrity: sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==} hasBin: true - semver@7.6.3: - resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==} + semver@7.7.1: + resolution: {integrity: sha512-hlq8tAfn0m/61p4BVRcPzIGr6LKiMwo4VM6dGi6pt4qcRkmNzTcWq6eCEjEh+qXjkMDvPlOFFSGwQjoEa6gyMA==} engines: {node: '>=10'} hasBin: true @@ -3026,7 +3026,7 @@ snapshots: proc-log: 3.0.0 promise-inflight: 1.0.1 promise-retry: 2.0.1 - semver: 7.6.3 + semver: 7.7.1 which: 4.0.0 transitivePeerDependencies: - bluebird @@ -3039,7 +3039,7 @@ snapshots: json-parse-even-better-errors: 3.0.0 normalize-package-data: 6.0.0 proc-log: 3.0.0 - semver: 7.6.3 + semver: 7.7.1 transitivePeerDependencies: - bluebird @@ -3277,7 +3277,7 @@ snapshots: minimatch: 3.1.2 parse-semver: 1.1.1 read: 1.0.7 - semver: 7.6.3 + semver: 7.7.1 tmp: 0.2.3 typed-rest-client: 1.8.11 url-join: 4.0.1 @@ -3381,7 +3381,7 @@ snapshots: builtins@5.0.1: dependencies: - semver: 7.6.3 + semver: 7.7.1 bun-types@1.1.21: dependencies: @@ -4174,7 +4174,7 @@ snapshots: node-abi@3.65.0: dependencies: - semver: 7.6.3 + semver: 7.7.1 optional: true node-addon-api@3.2.1: {} @@ -4202,21 +4202,21 @@ snapshots: dependencies: hosted-git-info: 4.1.0 is-core-module: 2.13.0 - semver: 7.6.3 + semver: 7.7.1 validate-npm-package-license: 3.0.4 normalize-package-data@6.0.0: dependencies: hosted-git-info: 7.0.1 is-core-module: 2.13.0 - semver: 7.6.3 + semver: 7.7.1 validate-npm-package-license: 3.0.4 normalize-path@3.0.0: {} npm-install-checks@6.3.0: dependencies: - semver: 7.6.3 + semver: 7.7.1 npm-normalize-package-bin@1.0.1: {} @@ -4226,7 +4226,7 @@ snapshots: dependencies: hosted-git-info: 7.0.1 proc-log: 3.0.0 - semver: 7.6.3 + semver: 7.7.1 validate-npm-package-name: 5.0.0 npm-pick-manifest@9.0.0: @@ -4234,7 +4234,7 @@ snapshots: npm-install-checks: 6.3.0 npm-normalize-package-bin: 3.0.1 npm-package-arg: 11.0.1 - semver: 7.6.3 + semver: 7.7.1 npm-run-path@5.3.0: dependencies: @@ -4617,7 +4617,7 @@ snapshots: semver@5.7.2: {} - semver@7.6.3: {} + semver@7.7.1: {} set-function-length@1.2.2: dependencies: @@ -5001,13 +5001,13 @@ snapshots: vscode-languageclient@8.0.2: dependencies: minimatch: 3.1.2 - semver: 7.6.3 + semver: 7.7.1 vscode-languageserver-protocol: 3.17.2 vscode-languageclient@8.1.0: dependencies: minimatch: 5.1.6 - semver: 7.6.3 + semver: 7.7.1 vscode-languageserver-protocol: 3.17.3 vscode-languageserver-protocol@3.17.2: