diff --git a/.github/actions/build-for-integrations/action.yaml b/.github/actions/build-for-integrations/action.yaml index bf4d3af202a..5c1f7fb6859 100644 --- a/.github/actions/build-for-integrations/action.yaml +++ b/.github/actions/build-for-integrations/action.yaml @@ -26,7 +26,7 @@ outputs: Return values: - 'true' - the cache was used. - '' - the cache was not used. - value: ${{ steps.step-cache-build.outputs.cache-hit }} + value: ${{ steps.step-cache-build.outputs.cache-hit == 'true' || '' }} runs: using: 'composite' @@ -65,7 +65,7 @@ runs: - name: Cache Build id: step-cache-build - uses: actions/cache@v4 + uses: actions/cache@v4.0.2 with: key: ${{ steps.cache-key.outputs.value }} path: ${{ steps.cache-path.outputs.value }} @@ -77,13 +77,13 @@ runs: Build Cache: ${{ steps.step-cache-build.outputs.cache-hit && 'Hit' || 'Miss' }} - name: Setup Env - if: ${{ !steps.step-cache-build.outputs.cache-hit && inputs.use-setup }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' && inputs.use-setup }} uses: ./.github/actions/setup with: node-version: ${{ inputs.node-version }} - name: Pnpm CI - if: ${{ !steps.step-cache-build.outputs.cache-hit }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' }} run: pnpm i shell: bash @@ -95,12 +95,12 @@ runs: shell: bash - name: Clean - if: ${{ !steps.step-cache-build.outputs.cache-hit }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' }} run: pnpm run clean shell: bash - name: Build - if: ${{ !steps.step-cache-build.outputs.cache-hit }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' }} run: pnpm run build shell: bash diff --git a/.github/actions/build/action.yaml b/.github/actions/build/action.yaml index 0026e4d9edc..deec18547ca 100644 --- a/.github/actions/build/action.yaml +++ b/.github/actions/build/action.yaml @@ -26,7 +26,7 @@ outputs: Return values: - 'true' - the cache was used. - '' - the cache was not used. - value: ${{ steps.step-cache-build.outputs.cache-hit }} + value: ${{ steps.step-cache-build.outputs.cache-hit == 'true' || '' }} runs: using: 'composite' @@ -81,7 +81,7 @@ runs: - name: Cache Build id: step-cache-build - uses: actions/cache@v4 + uses: actions/cache@v4.0.2 with: key: ${{ steps.cache-key.outputs.value }} path: ${{ steps.cache-path.outputs.value }} @@ -90,16 +90,16 @@ runs: uses: ./.github/actions/echo with: value: >- - Build Cache: ${{ steps.step-cache-build.outputs.cache-hit && 'Hit' || 'Miss' }} + Build Cache: ${{ steps.step-cache-build.outputs.cache-hit == 'true' && 'Hit' || 'Miss' }} - name: Setup Env - if: ${{ !steps.step-cache-build.outputs.cache-hit && inputs.use-setup }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' && inputs.use-setup }} uses: ./.github/actions/setup with: node-version: ${{ inputs.node-version }} - name: Pnpm CI - if: ${{ !steps.step-cache-build.outputs.cache-hit }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' }} run: pnpm i shell: bash @@ -111,12 +111,12 @@ runs: shell: bash - name: Clean - if: ${{ !steps.step-cache-build.outputs.cache-hit }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' }} run: pnpm run clean shell: bash - name: Build - if: ${{ !steps.step-cache-build.outputs.cache-hit }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' }} run: pnpm run build shell: bash @@ -131,4 +131,4 @@ runs: ``` ${{ steps.cache-path.outputs.value }} ``` - - hit: ${{ steps.step-cache-build.outputs.cache-hit || 'Miss' }} + - hit: ${{ steps.step-cache-build.outputs.cache-hit == 'true' && 'true' || 'Miss' }} diff --git a/.github/actions/smoke-test/action.yaml b/.github/actions/smoke-test/action.yaml index 4c415b22ded..d000d76789f 100644 --- a/.github/actions/smoke-test/action.yaml +++ b/.github/actions/smoke-test/action.yaml @@ -22,7 +22,7 @@ runs: shell: bash - name: Restore CSpell cache - uses: actions/cache@v4 + uses: actions/cache@v4.0.2 if: ${{ inputs.use_cspell_cache == 'true' }} with: key: cspell-cache-${{ runner.os }}-smoke-test-${{ hashFiles('**/*.ts', '**/*.md') }} diff --git a/.github/workflows/clean-cache.yml b/.github/workflows/clean-cache.yml new file mode 100644 index 00000000000..8985f34c03a --- /dev/null +++ b/.github/workflows/clean-cache.yml @@ -0,0 +1,29 @@ +name: cleanup caches by a branch +on: + pull_request: + types: + - closed + +jobs: + cleanup: + runs-on: ubuntu-latest + steps: + - name: Cleanup + run: | + gh extension install actions/gh-actions-cache + + echo "Fetching list of cache key" + cacheKeysForPR=$(gh actions-cache list -R $REPO -B $BRANCH -L 100 | cut -f 1 ) + + ## Setting this to not fail the workflow while deleting cache keys. + set +e + echo "Deleting caches..." + for cacheKey in $cacheKeysForPR + do + gh actions-cache delete $cacheKey -R $REPO -B $BRANCH --confirm + done + echo "Done" + env: + GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} + REPO: ${{ github.repository }} + BRANCH: refs/pull/${{ github.event.pull_request.number }}/merge diff --git a/.github/workflows/cspell-cli.yml b/.github/workflows/cspell-cli.yml index cf375d983d0..527ebde7e11 100644 --- a/.github/workflows/cspell-cli.yml +++ b/.github/workflows/cspell-cli.yml @@ -32,7 +32,7 @@ jobs: - run: pnpm --filter @cspell/cspell-types --filter @cspell/cspell-bundled-dicts run build - name: Restore CSpell cache - uses: actions/cache@v4 + uses: actions/cache@v4.0.2 with: key: cspell-cache-v2-${{ runner.os }}-${{ hashFiles('**/*.ts', '**/*.md') }} path: | diff --git a/.github/workflows/integration-test.yml b/.github/workflows/integration-test.yml index 32fd4df675c..80137de771f 100644 --- a/.github/workflows/integration-test.yml +++ b/.github/workflows/integration-test.yml @@ -176,7 +176,7 @@ jobs: - name: Cache Integration Run id: step-cache-run - uses: actions/cache@v4 + uses: actions/cache@v4.0.2 with: key: integration-run--${{ env.REF_BRANCH }}-${{ steps.repo-hash.outputs.value }}-${{ fromJSON(steps.step-repo-info.outputs.repo-info).commit }}-1 # Store the patch files to update the integration perf data @@ -186,34 +186,34 @@ jobs: - uses: ./.github/actions/echo with: value: | - Run Cache: ${{ steps.step-cache-run.outputs.cache-hit && 'Hit' || 'Miss' }} + Run Cache: ${{ steps.step-cache-run.outputs == 'true' && 'Hit' || 'Miss' }} - name: Setup Env - if: ${{ !steps.step-cache-run.outputs.cache-hit }} + if: ${{ steps.step-cache-run.outputs.cache-hit != 'true' }} uses: ./.github/actions/setup with: node-version: ${{ matrix.node-version }} - id: step-cache-build - if: ${{ !steps.step-cache-run.outputs.cache-hit }} + if: ${{ steps.step-cache-run.outputs.cache-hit != 'true' }} uses: ./.github/actions/build-for-integrations - uses: ./.github/actions/echo - if: ${{ !steps.step-cache-run.outputs.cache-hit }} + if: ${{ steps.step-cache-run.outputs.cache-hit != 'true' }} with: value: | - Run Cache: ${{ steps.step-cache-run.outputs.cache-hit && 'Hit' || 'Miss' }} + Run Cache: ${{ steps.step-cache-run.outputs.cache-hit == 'true' && 'Hit' || 'Miss' }} - name: Cache Integration Test Repository Files - if: ${{ !steps.step-cache-run.outputs.cache-hit }} - uses: actions/cache@v4 + if: ${{ steps.step-cache-run.outputs.cache-hit != 'true' }} + uses: actions/cache@v4.0.2 with: key: int-repo-temp-files-${{ matrix.repo }}-${{ fromJSON(steps.step-repo-info.outputs.repo-info).commit }} path: | integration-tests/repositories/temp/${{ matrix.repo }} - name: Run Integration Tests ${{ matrix.repo }} - if: ${{ !steps.step-cache-run.outputs.cache-hit }} + if: ${{ steps.step-cache-run.outputs.cache-hit != 'true' }} env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} run: > @@ -222,7 +222,7 @@ jobs: && pnpm run integration-tests -- ${{ matrix.repo }} - name: store perf run - if: ${{ !steps.step-cache-run.outputs.cache-hit }} + if: ${{ steps.step-cache-run.outputs.cache-hit != 'true' }} uses: actions/upload-artifact@v4 with: name: perf-repo-${{ steps.step-normalize-repo-name.outputs.REPO_NAME }} diff --git a/.github/workflows/update-dictionaries.yml b/.github/workflows/update-dictionaries.yml index f1bf40db113..37473c8cb01 100644 --- a/.github/workflows/update-dictionaries.yml +++ b/.github/workflows/update-dictionaries.yml @@ -171,14 +171,14 @@ jobs: - name: Cache Build id: step-cache-build - uses: actions/cache@v4 + uses: actions/cache@v4.0.2 with: key: ${{ needs.build.outputs.key }} path: ${{ needs.build.outputs.path }} - name: Cached Results run: | - echo Build Cache: ${{ steps.step-cache-build.outputs.cache-hit && 'Hit' || 'Miss' }} + echo Build Cache: ${{ steps.step-cache-build.outputs.cache-hit == 'true' && 'Hit' || 'Miss' }} - name: Install run: pnpm i @@ -190,7 +190,7 @@ jobs: cat /home/runner/.pnpm/_logs/*.log - name: Check Build - if: ${{ !steps.step-cache-build.outputs.cache-hit }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' }} run: exit 1 - name: Repo Info @@ -199,7 +199,7 @@ jobs: echo "repo-info=$(jq -c '.repositories[] | select(.path == "${{ matrix.repo }}")' integration-tests/config/config.json)" >> $GITHUB_OUTPUT - name: Cache Integration Test Repository Files - uses: actions/cache@v4 + uses: actions/cache@v4.0.2 with: key: int-repo-temp-files-${{ matrix.repo }}-${{ fromJSON(steps.step-repo-info.outputs.repo-info).commit }} path: | diff --git a/.github/workflows/update-integration-repositories.yml b/.github/workflows/update-integration-repositories.yml index 59b83b443d3..1a2b365c9c7 100644 --- a/.github/workflows/update-integration-repositories.yml +++ b/.github/workflows/update-integration-repositories.yml @@ -91,14 +91,14 @@ jobs: - name: Cache Build id: step-cache-build - uses: actions/cache@v4 + uses: actions/cache@v4.0.2 with: key: ${{ needs.build.outputs.key }} path: ${{ needs.build.outputs.path }} - name: Cached Results run: | - echo Build Cache: ${{ steps.step-cache-build.outputs.cache-hit && 'Hit' || 'Miss' }} + echo Build Cache: ${{ steps.step-cache-build.outputs.cache-hit == 'true' && 'Hit' || 'Miss' }} - name: pnpm CI run: pnpm i @@ -110,7 +110,7 @@ jobs: cat /home/runner/.pnpm/_logs/*.log - name: Check Build - if: ${{ !steps.step-cache-build.outputs.cache-hit }} + if: ${{ steps.step-cache-build.outputs.cache-hit != 'true' }} run: exit 1 - name: Run Integration Tests ${{ matrix.repo }} diff --git a/package.json b/package.json index ddbcf65f009..5a9252e4664 100644 --- a/package.json +++ b/package.json @@ -107,7 +107,7 @@ "@rollup/plugin-typescript": "^12.1.0", "@swc-node/register": "^1.10.9", "@tsconfig/node18": "^18.2.4", - "@types/node": "^18.19.54", + "@types/node": "^18.19.55", "@vitest/coverage-istanbul": "^2.1.2", "conventional-changelog-conventionalcommits": "^8.0.0", "eslint": "^9.12.0", @@ -126,7 +126,7 @@ "ts2mjs": "^3.0.0", "tslib": "^2.7.0", "typescript": "~5.6.2", - "typescript-eslint": "^8.8.0", + "typescript-eslint": "^8.8.1", "vite": "^5.4.8", "vitest": "^2.1.2" } diff --git a/packages/cspell-eslint-plugin/package.json b/packages/cspell-eslint-plugin/package.json index 7723b08f766..a7d9cb31f64 100644 --- a/packages/cspell-eslint-plugin/package.json +++ b/packages/cspell-eslint-plugin/package.json @@ -83,9 +83,9 @@ "@internal/fixture-test-dictionary": "workspace:*", "@types/eslint": "^8.56.12", "@types/estree": "^1.0.6", - "@types/mocha": "^10.0.8", - "@typescript-eslint/parser": "^8.8.0", - "@typescript-eslint/types": "^8.8.0", + "@types/mocha": "^10.0.9", + "@typescript-eslint/parser": "^8.8.1", + "@typescript-eslint/types": "^8.8.1", "eslint": "^9.12.0", "eslint-plugin-jsonc": "^2.16.0", "eslint-plugin-mdx": "^3.1.5", @@ -98,7 +98,7 @@ "mocha": "^10.7.3", "ts-json-schema-generator": "^2.3.0", "typescript": "~5.6.2", - "typescript-eslint": "^8.8.0", + "typescript-eslint": "^8.8.1", "yaml-eslint-parser": "^1.2.3" }, "dependencies": { diff --git a/packages/cspell-lib/api/api.d.ts b/packages/cspell-lib/api/api.d.ts index e0070199a8b..193d4ef1a37 100644 --- a/packages/cspell-lib/api/api.d.ts +++ b/packages/cspell-lib/api/api.d.ts @@ -27,7 +27,28 @@ declare function clearCachedFiles(): Promise; */ declare function clearCaches(): void; +interface Uri { + readonly scheme: string; + readonly path: string; + readonly authority?: string; + readonly fragment?: string; + readonly query?: string; +} type DocumentUri = Uri | URL | string; + +interface Document { + uri: UriString; + text?: string; + languageId?: string; + locale?: string; +} +type UriString = string; +interface DocumentWithText extends Document { + text: string; +} + +declare function isBinaryFile(filename: Uri | URL | string, languageId?: string | string[], text?: string): boolean; + interface Position { line: number; character: number; @@ -109,27 +130,6 @@ interface TextDocumentContentChangeEvent { declare function createTextDocument({ uri, content, languageId, locale, version, }: CreateTextDocumentParams): TextDocument; declare function updateTextDocument(doc: TextDocument, edits: TextDocumentContentChangeEvent[], version?: number): TextDocument; -interface Uri { - readonly scheme: string; - readonly path: string; - readonly authority?: string; - readonly fragment?: string; - readonly query?: string; -} - -interface Document { - uri: UriString; - text?: string; - languageId?: string; - locale?: string; -} -type UriString = string; -interface DocumentWithText extends Document { - text: string; -} - -declare function isBinaryFile(filename: Uri | URL | string, languageId?: string | string[], text?: string): boolean; - declare function fileToDocument(file: string): Document; declare function fileToDocument(file: string, text: string, languageId?: string, locale?: string): DocumentWithText; declare function fileToDocument(file: string, text?: string, languageId?: string, locale?: string): Document | DocumentWithText; diff --git a/packages/cspell-lib/src/lib/Document/Document.ts b/packages/cspell-lib/src/lib/Document/Document.ts index 310d348daf0..0514201165b 100644 --- a/packages/cspell-lib/src/lib/Document/Document.ts +++ b/packages/cspell-lib/src/lib/Document/Document.ts @@ -1,4 +1,4 @@ -import type { Uri } from '../util/Uri.js'; +import type { Uri } from '../util/IUri.js'; export interface Document { uri: UriString; diff --git a/packages/cspell-lib/src/lib/Document/isBinaryDoc.ts b/packages/cspell-lib/src/lib/Document/isBinaryDoc.ts index 747956a287c..aee81d13042 100644 --- a/packages/cspell-lib/src/lib/Document/isBinaryDoc.ts +++ b/packages/cspell-lib/src/lib/Document/isBinaryDoc.ts @@ -1,5 +1,5 @@ import { getLanguagesForBasename, isGenerated } from '../fileTypes.js'; -import type { Uri } from '../util/Uri.js'; +import type { Uri } from '../util/IUri.js'; import { basename, toUri } from '../util/Uri.js'; import type { Document } from './Document.js'; import { normalizeLanguageIds } from './normalizeLanguageIds.js'; diff --git a/packages/cspell-lib/src/lib/Models/TextDocument.ts b/packages/cspell-lib/src/lib/Models/TextDocument.ts index 70c3e790f32..537b2f43ce5 100644 --- a/packages/cspell-lib/src/lib/Models/TextDocument.ts +++ b/packages/cspell-lib/src/lib/Models/TextDocument.ts @@ -1,13 +1,13 @@ import assert from 'node:assert'; -import { toFileURL, toURL } from '@cspell/url'; import { TextDocument as VsTextDocument } from 'vscode-languageserver-textdocument'; import { getFileSystem } from '../fileSystem.js'; import { getLanguagesForBasename } from '../fileTypes.js'; -import * as Uri from '../util/Uri.js'; +import type { DocumentUri } from '../util/IUri.js'; +import { basename, documentUriToURL, toUri } from '../util/Uri.js'; -export type DocumentUri = Uri.Uri | URL | string; +export { documentUriToURL } from '../util/Uri.js'; export interface Position { line: number; @@ -204,8 +204,8 @@ export function createTextDocument({ version, }: CreateTextDocumentParams): TextDocument { version = version ?? 1; - uri = Uri.toUri(uri); - languageId = languageId ?? getLanguagesForBasename(Uri.basename(uri)); + uri = toUri(uri); + languageId = languageId ?? getLanguagesForBasename(basename(uri)); languageId = languageId.length === 0 ? 'text' : languageId; return new TextDocumentImpl(uri, content, languageId, locale, version); } @@ -224,16 +224,10 @@ function isTextDocumentImpl(doc: TextDocument | unknown): doc is TextDocumentImp } export async function loadTextDocument(filename: string | DocumentUri, languageId?: string): Promise { - const uri = Uri.toUri(filename); + const uri = toUri(filename); const url = new URL(uri.toString()); const file = await getFileSystem().readFile(url); return createTextDocument({ uri, languageId, content: file.getText() }); } export const isTextDocument: (doc: TextDocument | unknown) => doc is TextDocument = isTextDocumentImpl; - -export function documentUriToURL(uri: DocumentUri): URL { - return toURL( - uri instanceof URL ? uri : typeof uri === 'string' ? toFileURL(uri) : new URL(Uri.from(uri).toString()), - ); -} diff --git a/packages/cspell-lib/src/lib/exclusionHelper.ts b/packages/cspell-lib/src/lib/exclusionHelper.ts index 05a1083d66a..40a9d723b67 100644 --- a/packages/cspell-lib/src/lib/exclusionHelper.ts +++ b/packages/cspell-lib/src/lib/exclusionHelper.ts @@ -1,7 +1,7 @@ import type { Glob } from '@cspell/cspell-types'; import { GlobMatcher } from 'cspell-glob'; -import type { Uri } from './util/Uri.js'; +import type { Uri } from './util/IUri.js'; import { toUri, uriToFilePath } from './util/Uri.js'; const defaultAllowedSchemes = new Set(['file', 'untitled']); diff --git a/packages/cspell-lib/src/lib/spellCheckFile.ts b/packages/cspell-lib/src/lib/spellCheckFile.ts index 9d3c717bb77..bb9423869b2 100644 --- a/packages/cspell-lib/src/lib/spellCheckFile.ts +++ b/packages/cspell-lib/src/lib/spellCheckFile.ts @@ -9,7 +9,7 @@ import { determineTextDocumentSettings } from './textValidation/determineTextDoc import type { DocumentValidatorOptions } from './textValidation/index.js'; import { DocumentValidator } from './textValidation/index.js'; import { isError } from './util/errors.js'; -import type { Uri } from './util/Uri.js'; +import type { Uri } from './util/IUri.js'; import { toUri } from './util/Uri.js'; import type { ValidateTextOptions, ValidationIssue } from './validator.js'; diff --git a/packages/cspell-lib/src/lib/util/IUri.ts b/packages/cspell-lib/src/lib/util/IUri.ts new file mode 100644 index 00000000000..75d012388d9 --- /dev/null +++ b/packages/cspell-lib/src/lib/util/IUri.ts @@ -0,0 +1,14 @@ +export interface Uri { + readonly scheme: string; + readonly path: string; + readonly authority?: string; + readonly fragment?: string; + readonly query?: string; +} + +export interface UriInstance extends Uri { + toString(): string; + toJSON(): unknown; +} + +export type DocumentUri = Uri | URL | string; diff --git a/packages/cspell-lib/src/lib/util/Uri.test.ts b/packages/cspell-lib/src/lib/util/Uri.test.ts index 7109e1d65ea..8458c277df9 100644 --- a/packages/cspell-lib/src/lib/util/Uri.test.ts +++ b/packages/cspell-lib/src/lib/util/Uri.test.ts @@ -6,9 +6,9 @@ import { URI } from 'vscode-uri'; import { pathRepoTestFixtures } from '../../test-util/index.mjs'; import { extendExpect } from '../../test-util/test.matchers.mjs'; -import type { Uri, UriInstance } from './Uri.js'; +import type { Uri, UriInstance } from './IUri.js'; import { - from, + uriFrom, fromFilePath, fromStdinFilePath, isUri, @@ -70,7 +70,7 @@ describe('Uri', () => { }); const uriFilename = URI.file(__filename); - const uriStdinFilename = from(uriFilename, { scheme: 'stdin' }); + const uriStdinFilename = uriFrom(uriFilename, { scheme: 'stdin' }); const stdinFilename = uriStdinFilename.toString(); test.each` @@ -111,8 +111,8 @@ describe('Uri', () => { ${j(toUri('stdin://relative/file/path'))} | ${{ ...u, scheme: 'stdin', path: 'relative/file/path' }} ${toUri('stdin://relative/file/path').toString()} | ${'stdin://relative/file/path'} ${toUri('stdin:///absolute-file-path').toString()} | ${'stdin:///absolute-file-path'} - ${j(from(URI.file(__filename)))} | ${{ ...u, scheme: 'file', path: eqCI(normalizePath(__filename)) }} - ${j(from(URI.file(__filename), { scheme: 'stdin' }))} | ${{ ...u, scheme: 'stdin', path: eqCI(normalizePath(__filename)) }} + ${j(uriFrom(URI.file(__filename)))} | ${{ ...u, scheme: 'file', path: eqCI(normalizePath(__filename)) }} + ${j(uriFrom(URI.file(__filename), { scheme: 'stdin' }))} | ${{ ...u, scheme: 'stdin', path: eqCI(normalizePath(__filename)) }} `('uri assumptions $uri', ({ uri, expected }) => { expect(uri).toEqual(expected); }); diff --git a/packages/cspell-lib/src/lib/util/Uri.ts b/packages/cspell-lib/src/lib/util/Uri.ts index 6e2d746ea52..081276fd138 100644 --- a/packages/cspell-lib/src/lib/util/Uri.ts +++ b/packages/cspell-lib/src/lib/util/Uri.ts @@ -1,24 +1,11 @@ import assert from 'node:assert'; import { pathToFileURL } from 'node:url'; -import { toFilePathOrHref, toFileURL } from '@cspell/url'; +import { toFilePathOrHref, toFileURL, toURL } from '@cspell/url'; import { isUrlLike } from 'cspell-io'; import { URI, Utils } from 'vscode-uri'; -import { DocumentUri, documentUriToURL } from '../Models/TextDocument.js'; - -export interface Uri { - readonly scheme: string; - readonly path: string; - readonly authority?: string; - readonly fragment?: string; - readonly query?: string; -} - -export interface UriInstance extends Uri { - toString(): string; - toJSON(): unknown; -} +import type { DocumentUri, Uri, UriInstance } from './IUri.js'; interface HRef { href: string; @@ -97,7 +84,7 @@ export function resolvePath(uri: Uri, ...paths: string[]): UriInstance { return UriImpl.from(Utils.resolvePath(URI.from(uri), ...paths)); } -export function from(uri: Uri, ...parts: Partial[]): UriInstance { +export function uriFrom(uri: Uri, ...parts: Partial[]): UriInstance { return UriImpl.from(uri, ...parts); } @@ -200,6 +187,12 @@ function parseStdinUri(uri: string): Uri { }; } +export function documentUriToURL(uri: DocumentUri): URL { + return toURL( + uri instanceof URL ? uri : typeof uri === 'string' ? toFileURL(uri) : new URL(uriFrom(uri).toString()), + ); +} + export const __testing__ = { UriImpl, normalizeFilePath, diff --git a/packages/cspell-lib/src/lib/util/text.ts b/packages/cspell-lib/src/lib/util/text.ts index d0344e27eee..2fd68b272db 100644 --- a/packages/cspell-lib/src/lib/util/text.ts +++ b/packages/cspell-lib/src/lib/util/text.ts @@ -12,7 +12,7 @@ import { regExWords, regExWordsAndDigits, } from './textRegex.js'; -import type { Uri } from './Uri.js'; +import type { Uri } from './IUri.js'; import { toUri } from './Uri.js'; import { scanMap } from './util.js'; diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5c4f27e2001..23ddd0d8f9c 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -54,11 +54,11 @@ importers: specifier: ^18.2.4 version: 18.2.4 '@types/node': - specifier: ^18.19.54 - version: 18.19.54 + specifier: ^18.19.55 + version: 18.19.55 '@vitest/coverage-istanbul': specifier: ^2.1.2 - version: 2.1.2(vitest@2.1.2(@types/node@18.19.54)(terser@5.34.1)) + version: 2.1.2(vitest@2.1.2(@types/node@18.19.55)(terser@5.34.1)) conventional-changelog-conventionalcommits: specifier: ^8.0.0 version: 8.0.0 @@ -97,10 +97,10 @@ importers: version: 0.3.4 ts-jest: specifier: ^29.2.5 - version: 29.2.5(@babel/core@7.25.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.7))(jest@29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)))(typescript@5.6.2) + version: 29.2.5(@babel/core@7.25.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.7))(jest@29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)))(typescript@5.6.2) ts-node: specifier: ^10.9.2 - version: 10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2) + version: 10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2) ts2mjs: specifier: ^3.0.0 version: 3.0.0 @@ -111,14 +111,14 @@ importers: specifier: ~5.6.2 version: 5.6.2 typescript-eslint: - specifier: ^8.8.0 - version: 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + specifier: ^8.8.1 + version: 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) vite: specifier: ^5.4.8 - version: 5.4.8(@types/node@18.19.54)(terser@5.34.1) + version: 5.4.8(@types/node@18.19.55)(terser@5.34.1) vitest: specifier: ^2.1.2 - version: 2.1.2(@types/node@18.19.54)(terser@5.34.1) + version: 2.1.2(@types/node@18.19.55)(terser@5.34.1) doc-generator: dependencies: @@ -197,7 +197,7 @@ importers: version: link:../packages/cspell jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + version: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) packages/Samples: devDependencies: @@ -457,7 +457,7 @@ importers: version: 29.5.13 jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + version: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) packages/cspell-config-lib: dependencies: @@ -527,14 +527,14 @@ importers: specifier: ^1.0.6 version: 1.0.6 '@types/mocha': - specifier: ^10.0.8 - version: 10.0.8 + specifier: ^10.0.9 + version: 10.0.9 '@typescript-eslint/parser': - specifier: ^8.8.0 - version: 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + specifier: ^8.8.1 + version: 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) '@typescript-eslint/types': - specifier: ^8.8.0 - version: 8.8.0 + specifier: ^8.8.1 + version: 8.8.1 eslint: specifier: ^9.12.0 version: 9.12.0(jiti@2.1.0) @@ -572,8 +572,8 @@ importers: specifier: ~5.6.2 version: 5.6.2 typescript-eslint: - specifier: ^8.8.0 - version: 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + specifier: ^8.8.1 + version: 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) yaml-eslint-parser: specifier: ^1.2.3 version: 1.2.3 @@ -628,7 +628,7 @@ importers: devDependencies: jest: specifier: ^29.7.0 - version: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + version: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) packages/cspell-io: dependencies: @@ -1006,8 +1006,8 @@ importers: specifier: ^17.10.3 version: 17.10.3(eslint@9.12.0(jiti@2.1.0)) typescript-eslint: - specifier: ^8.8.0 - version: 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + specifier: ^8.8.1 + version: 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) test-packages/cspell-eslint-plugin/test-cspell-eslint-plugin-v9-basic: devDependencies: @@ -2134,8 +2134,8 @@ packages: '@cspell/dict-dart@2.2.1': resolution: {integrity: sha512-yriKm7QkoPx3JPSSOcw6iX9gOb2N50bOo/wqWviqPYbhpMRh9Xiv6dkUy3+ot+21GuShZazO8X6U5+Vw67XEwg==} - '@cspell/dict-data-science@2.0.1': - resolution: {integrity: sha512-xeutkzK0eBe+LFXOFU2kJeAYO6IuFUc1g7iRLr7HeCmlC4rsdGclwGHh61KmttL3+YHQytYStxaRBdGAXWC8Lw==} + '@cspell/dict-data-science@2.0.2': + resolution: {integrity: sha512-VwAck6OZQVqrscKyOrvllixIugIPF+Q6YoFNvXZCPhHGtNyOAVraD3S7kOgPYBdUjgno4QbdMWm92BUPqL1QjQ==} '@cspell/dict-de-de@4.0.0': resolution: {integrity: sha512-MLRMRy44xdjtBLW2jqO73RTbnNfSLztK/mG1/LSblY4hpWxc6iJBAVA7hQye8m06sde6FHgnP38x+jgql/6q6A==} @@ -3861,8 +3861,8 @@ packages: '@types/minimatch@5.1.2': resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} - '@types/mocha@10.0.8': - resolution: {integrity: sha512-HfMcUmy9hTMJh66VNcmeC9iVErIZJli2bszuXc6julh5YGuRb/W5OnkHjwLNYdFlMis0sY3If5SEAp+PktdJjw==} + '@types/mocha@10.0.9': + resolution: {integrity: sha512-sicdRoWtYevwxjOHNMPTl3vSfJM6oyW8o1wXeI7uww6b6xHg8eBznQDNSGBCDJmsE8UMxP05JgZRtsKbTqt//Q==} '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} @@ -3876,14 +3876,14 @@ packages: '@types/node@17.0.45': resolution: {integrity: sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==} - '@types/node@18.19.54': - resolution: {integrity: sha512-+BRgt0G5gYjTvdLac9sIeE0iZcJxi4Jc4PV5EUzqi+88jmQLr+fRZdv2tCTV7IHKSGxM6SaLoOXQWWUiLUItMw==} + '@types/node@18.19.55': + resolution: {integrity: sha512-zzw5Vw52205Zr/nmErSEkN5FLqXPuKX/k5d1D7RKHATGqU7y6YfX9QxZraUzUrFGqH6XzOzG196BC35ltJC4Cw==} - '@types/node@20.16.10': - resolution: {integrity: sha512-vQUKgWTjEIRFCvK6CyriPH3MZYiYlNy0fKiEYHWbcoWLEgs4opurGGKlebrTLqdSMIbXImH6XExNiIyNUv3WpA==} + '@types/node@20.16.11': + resolution: {integrity: sha512-y+cTCACu92FyA5fgQSAI8A1H429g7aSK2HsO7K4XYUWc4dY5IUz55JSDIYT6/VsOLfGy8vmvQYC2hfb0iF16Uw==} - '@types/node@22.7.4': - resolution: {integrity: sha512-y+NPi1rFzDs1NdQHHToqeiX2TIS79SWEAw9GYhkkx8bD0ChpfqC+n2j5OXOCpzfojBEBt6DnEnnG9MY0zk1XLg==} + '@types/node@22.7.5': + resolution: {integrity: sha512-jML7s2NAzMWc//QSJ1a3prpk78cOPchGvXJsC3C6R6PSMoooztvRVQEz89gmBTBY1SPMaqo5teB4uNHPdetShQ==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -3966,8 +3966,8 @@ packages: '@types/yargs@17.0.33': resolution: {integrity: sha512-WpxBCKWPLr4xSsHgz511rFJAM+wS28w2zEO1QDNY5zM/S8ok70NNfztH0xwhqKyaK0OHCbN98LDAZuy1ctxDkA==} - '@typescript-eslint/eslint-plugin@8.8.0': - resolution: {integrity: sha512-wORFWjU30B2WJ/aXBfOm1LX9v9nyt9D3jsSOxC3cCaTQGCW5k4jNpmjFv3U7p/7s4yvdjHzwtv2Sd2dOyhjS0A==} + '@typescript-eslint/eslint-plugin@8.8.1': + resolution: {integrity: sha512-xfvdgA8AP/vxHgtgU310+WBnLB4uJQ9XdyP17RebG26rLtDrQJV3ZYrcopX91GrHmMoH8bdSwMRh2a//TiJ1jQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 @@ -3977,8 +3977,8 @@ packages: typescript: optional: true - '@typescript-eslint/parser@8.8.0': - resolution: {integrity: sha512-uEFUsgR+tl8GmzmLjRqz+VrDv4eoaMqMXW7ruXfgThaAShO9JTciKpEsB+TvnfFfbg5IpujgMXVV36gOJRLtZg==} + '@typescript-eslint/parser@8.8.1': + resolution: {integrity: sha512-hQUVn2Lij2NAxVFEdvIGxT9gP1tq2yM83m+by3whWFsWC+1y8pxxxHUFE1UqDu2VsGi2i6RLcv4QvouM84U+ow==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -3987,12 +3987,12 @@ packages: typescript: optional: true - '@typescript-eslint/scope-manager@8.8.0': - resolution: {integrity: sha512-EL8eaGC6gx3jDd8GwEFEV091210U97J0jeEHrAYvIYosmEGet4wJ+g0SYmLu+oRiAwbSA5AVrt6DxLHfdd+bUg==} + '@typescript-eslint/scope-manager@8.8.1': + resolution: {integrity: sha512-X4JdU+66Mazev/J0gfXlcC/dV6JI37h+93W9BRYXrSn0hrE64IoWgVkO9MSJgEzoWkxONgaQpICWg8vAN74wlA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.8.0': - resolution: {integrity: sha512-IKwJSS7bCqyCeG4NVGxnOP6lLT9Okc3Zj8hLO96bpMkJab+10HIfJbMouLrlpyOr3yrQ1cA413YPFiGd1mW9/Q==} + '@typescript-eslint/type-utils@8.8.1': + resolution: {integrity: sha512-qSVnpcbLP8CALORf0za+vjLYj1Wp8HSoiI8zYU5tHxRVj30702Z1Yw4cLwfNKhTPWp5+P+k1pjmD5Zd1nhxiZA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -4000,12 +4000,12 @@ packages: typescript: optional: true - '@typescript-eslint/types@8.8.0': - resolution: {integrity: sha512-QJwc50hRCgBd/k12sTykOJbESe1RrzmX6COk8Y525C9l7oweZ+1lw9JiU56im7Amm8swlz00DRIlxMYLizr2Vw==} + '@typescript-eslint/types@8.8.1': + resolution: {integrity: sha512-WCcTP4SDXzMd23N27u66zTKMuEevH4uzU8C9jf0RO4E04yVHgQgW+r+TeVTNnO1KIfrL8ebgVVYYMMO3+jC55Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/typescript-estree@8.8.0': - resolution: {integrity: sha512-ZaMJwc/0ckLz5DaAZ+pNLmHv8AMVGtfWxZe/x2JVEkD5LnmhWiQMMcYT7IY7gkdJuzJ9P14fRy28lUrlDSWYdw==} + '@typescript-eslint/typescript-estree@8.8.1': + resolution: {integrity: sha512-A5d1R9p+X+1js4JogdNilDuuq+EHZdsH9MjTVxXOdVFfTJXunKJR/v+fNNyO4TnoOn5HqobzfRlc70NC6HTcdg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -4013,14 +4013,14 @@ packages: typescript: optional: true - '@typescript-eslint/utils@8.8.0': - resolution: {integrity: sha512-QE2MgfOTem00qrlPgyByaCHay9yb1+9BjnMFnSFkUKQfu7adBXDTnCAivURnuPPAG/qiB+kzKkZKmKfaMT0zVg==} + '@typescript-eslint/utils@8.8.1': + resolution: {integrity: sha512-/QkNJDbV0bdL7H7d0/y0qBbV2HTtf0TIyjSDTvvmQEzeVx8jEImEbLuOA4EsvE8gIgqMitns0ifb5uQhMj8d9w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - '@typescript-eslint/visitor-keys@8.8.0': - resolution: {integrity: sha512-8mq51Lx6Hpmd7HnA2fcHQo3YgfX1qbccxQOgZcb4tvasu//zXRaA1j5ZRFeCw/VRAdFi4mRM9DnZw0Nu0Q2d1g==} + '@typescript-eslint/visitor-keys@8.8.1': + resolution: {integrity: sha512-0/TdC3aeRAsW7MDvYRwEc1Uwm0TIBfzjPFgg60UU2Haj5qsCs9cc3zNgY71edqE3LbWfF/WoZQd3lJoDXFQpag==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.2.0': @@ -5162,8 +5162,8 @@ packages: deep-is@0.1.4: resolution: {integrity: sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==} - deepmerge-ts@7.1.1: - resolution: {integrity: sha512-M27OAbyR/XgJujhAd6ZlYvZGzejbzvGPSZWwuzezPCdKLT9VMtK0kpRNDc5LeUDYqFN3e254gWG1yKpjidCtow==} + deepmerge-ts@7.1.3: + resolution: {integrity: sha512-qCSH6I0INPxd9Y1VtAiLpnYvz5O//6rCfJXKk0z66Up9/VOSr+1yS8XSKA5IWRxjocFGlzPyaZYe+jxq7OOLtQ==} engines: {node: '>=16.0.0'} deepmerge@4.3.1: @@ -5337,8 +5337,8 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-to-chromium@1.5.32: - resolution: {integrity: sha512-M+7ph0VGBQqqpTT2YrabjNKSQ2fEl9PVx6AK3N558gDH9NO8O6XN9SXXFWRo9u9PbEg/bWq+tjXQr+eXmxubCw==} + electron-to-chromium@1.5.33: + resolution: {integrity: sha512-+cYTcFB1QqD4j4LegwLfpCNxifb6dDFUAwk6RsLusCwIaZI6or2f+q8rs5tTB2YC53HhOlIbEaqHMAAC8IOIwA==} emittery@0.13.1: resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} @@ -9426,8 +9426,8 @@ packages: peerDependencies: typescript: 4.6.x || 4.7.x || 4.8.x || 4.9.x || 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x - typescript-eslint@8.8.0: - resolution: {integrity: sha512-BjIT/VwJ8+0rVO01ZQ2ZVnjE1svFBiRczcpr1t1Yxt7sT25VSbPfrJtDsQ8uQTy2pilX5nI9gwxhUyLULNentw==} + typescript-eslint@8.8.1: + resolution: {integrity: sha512-R0dsXFt6t4SAFjUSKFjMh4pXDtq04SsFKCVGDP3ZOzNP7itF0jBcZYU4fMsZr4y7O7V7Nc751dDeESbe4PbQMQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '*' @@ -11096,7 +11096,7 @@ snapshots: '@cspell/dict-dart@2.2.1': {} - '@cspell/dict-data-science@2.0.1': {} + '@cspell/dict-data-science@2.0.2': {} '@cspell/dict-de-de@4.0.0': {} @@ -11180,7 +11180,7 @@ snapshots: '@cspell/dict-python@4.2.8': dependencies: - '@cspell/dict-data-science': 2.0.1 + '@cspell/dict-data-science': 2.0.2 '@cspell/dict-r@2.0.1': {} @@ -12198,7 +12198,7 @@ snapshots: '@inquirer/figures': 1.0.7 '@inquirer/type': 2.0.0 '@types/mute-stream': 0.0.4 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/wrap-ansi': 3.0.0 ansi-escapes: 4.3.2 cli-width: 4.1.0 @@ -12257,27 +12257,27 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2))': + '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)) + jest-config: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -12298,21 +12298,21 @@ snapshots: - supports-color - ts-node - '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2))': + '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + jest-config: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -12337,7 +12337,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -12355,7 +12355,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 22.7.4 + '@types/node': 22.7.5 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -12377,7 +12377,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 22.7.4 + '@types/node': 22.7.5 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -12447,7 +12447,7 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/yargs': 17.0.33 chalk: 4.1.2 @@ -13396,28 +13396,28 @@ snapshots: '@types/body-parser@1.19.5': dependencies: '@types/connect': 3.4.38 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/bonjour@3.5.13': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/braces@3.0.4': {} '@types/concat-stream@2.0.3': dependencies: - '@types/node': 20.16.10 + '@types/node': 20.16.11 '@types/configstore@6.0.2': {} '@types/connect-history-api-fallback@1.5.4': dependencies: '@types/express-serve-static-core': 5.0.0 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/connect@3.4.38': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/debug@4.1.12': dependencies: @@ -13436,14 +13436,14 @@ snapshots: '@types/express-serve-static-core@4.19.6': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/qs': 6.9.16 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 '@types/express-serve-static-core@5.0.0': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/qs': 6.9.16 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -13457,21 +13457,21 @@ snapshots: '@types/file-entry-cache@5.0.4': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/glob@7.2.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/glob@8.1.0': dependencies: '@types/minimatch': 5.1.2 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/graceful-fs@4.1.9': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/gtag.js@0.0.12': {} @@ -13489,7 +13489,7 @@ snapshots: '@types/http-proxy@1.17.15': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/is-empty@1.2.3': {} @@ -13528,29 +13528,29 @@ snapshots: '@types/minimatch@5.1.2': {} - '@types/mocha@10.0.8': {} + '@types/mocha@10.0.9': {} '@types/ms@0.7.34': {} '@types/mute-stream@0.0.4': dependencies: - '@types/node': 18.19.54 + '@types/node': 18.19.55 '@types/node-forge@1.3.11': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/node@17.0.45': {} - '@types/node@18.19.54': + '@types/node@18.19.55': dependencies: undici-types: 5.26.5 - '@types/node@20.16.10': + '@types/node@20.16.11': dependencies: undici-types: 6.19.8 - '@types/node@22.7.4': + '@types/node@22.7.5': dependencies: undici-types: 6.19.8 @@ -13601,7 +13601,7 @@ snapshots: '@types/send@0.17.4': dependencies: '@types/mime': 1.3.5 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/serve-index@1.9.4': dependencies: @@ -13610,17 +13610,17 @@ snapshots: '@types/serve-static@1.15.7': dependencies: '@types/http-errors': 2.0.4 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/send': 0.17.4 '@types/shelljs@0.8.15': dependencies: '@types/glob': 7.2.0 - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/sockjs@0.3.36': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/stack-utils@2.0.3': {} @@ -13634,7 +13634,7 @@ snapshots: '@types/ws@8.5.12': dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 '@types/yargs-parser@21.0.3': {} @@ -13642,14 +13642,14 @@ snapshots: dependencies: '@types/yargs-parser': 21.0.3 - '@typescript-eslint/eslint-plugin@8.8.0(@typescript-eslint/parser@8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2))(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2)': + '@typescript-eslint/eslint-plugin@8.8.1(@typescript-eslint/parser@8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2))(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2)': dependencies: '@eslint-community/regexpp': 4.11.1 - '@typescript-eslint/parser': 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) - '@typescript-eslint/scope-manager': 8.8.0 - '@typescript-eslint/type-utils': 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) - '@typescript-eslint/utils': 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) - '@typescript-eslint/visitor-keys': 8.8.0 + '@typescript-eslint/parser': 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + '@typescript-eslint/scope-manager': 8.8.1 + '@typescript-eslint/type-utils': 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + '@typescript-eslint/visitor-keys': 8.8.1 eslint: 9.12.0(jiti@2.1.0) graphemer: 1.4.0 ignore: 5.3.2 @@ -13660,12 +13660,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2)': + '@typescript-eslint/parser@8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2)': dependencies: - '@typescript-eslint/scope-manager': 8.8.0 - '@typescript-eslint/types': 8.8.0 - '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.6.2) - '@typescript-eslint/visitor-keys': 8.8.0 + '@typescript-eslint/scope-manager': 8.8.1 + '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.6.2) + '@typescript-eslint/visitor-keys': 8.8.1 debug: 4.3.7(supports-color@8.1.1) eslint: 9.12.0(jiti@2.1.0) optionalDependencies: @@ -13673,15 +13673,15 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@8.8.0': + '@typescript-eslint/scope-manager@8.8.1': dependencies: - '@typescript-eslint/types': 8.8.0 - '@typescript-eslint/visitor-keys': 8.8.0 + '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/visitor-keys': 8.8.1 - '@typescript-eslint/type-utils@8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2)': + '@typescript-eslint/type-utils@8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2)': dependencies: - '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.6.2) - '@typescript-eslint/utils': 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) debug: 4.3.7(supports-color@8.1.1) ts-api-utils: 1.3.0(typescript@5.6.2) optionalDependencies: @@ -13690,12 +13690,12 @@ snapshots: - eslint - supports-color - '@typescript-eslint/types@8.8.0': {} + '@typescript-eslint/types@8.8.1': {} - '@typescript-eslint/typescript-estree@8.8.0(typescript@5.6.2)': + '@typescript-eslint/typescript-estree@8.8.1(typescript@5.6.2)': dependencies: - '@typescript-eslint/types': 8.8.0 - '@typescript-eslint/visitor-keys': 8.8.0 + '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/visitor-keys': 8.8.1 debug: 4.3.7(supports-color@8.1.1) fast-glob: 3.3.2 is-glob: 4.0.3 @@ -13707,25 +13707,25 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2)': + '@typescript-eslint/utils@8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.12.0(jiti@2.1.0)) - '@typescript-eslint/scope-manager': 8.8.0 - '@typescript-eslint/types': 8.8.0 - '@typescript-eslint/typescript-estree': 8.8.0(typescript@5.6.2) + '@typescript-eslint/scope-manager': 8.8.1 + '@typescript-eslint/types': 8.8.1 + '@typescript-eslint/typescript-estree': 8.8.1(typescript@5.6.2) eslint: 9.12.0(jiti@2.1.0) transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/visitor-keys@8.8.0': + '@typescript-eslint/visitor-keys@8.8.1': dependencies: - '@typescript-eslint/types': 8.8.0 + '@typescript-eslint/types': 8.8.1 eslint-visitor-keys: 3.4.3 '@ungap/structured-clone@1.2.0': {} - '@vitest/coverage-istanbul@2.1.2(vitest@2.1.2(@types/node@18.19.54)(terser@5.34.1))': + '@vitest/coverage-istanbul@2.1.2(vitest@2.1.2(@types/node@18.19.55)(terser@5.34.1))': dependencies: '@istanbuljs/schema': 0.1.3 debug: 4.3.7(supports-color@8.1.1) @@ -13737,7 +13737,7 @@ snapshots: magicast: 0.3.5 test-exclude: 7.0.1 tinyrainbow: 1.2.0 - vitest: 2.1.2(@types/node@18.19.54)(terser@5.34.1) + vitest: 2.1.2(@types/node@18.19.55)(terser@5.34.1) transitivePeerDependencies: - supports-color @@ -13748,13 +13748,13 @@ snapshots: chai: 5.1.1 tinyrainbow: 1.2.0 - '@vitest/mocker@2.1.2(@vitest/spy@2.1.2)(vite@5.4.8(@types/node@18.19.54)(terser@5.34.1))': + '@vitest/mocker@2.1.2(@vitest/spy@2.1.2)(vite@5.4.8(@types/node@18.19.55)(terser@5.34.1))': dependencies: '@vitest/spy': 2.1.2 estree-walker: 3.0.3 magic-string: 0.30.11 optionalDependencies: - vite: 5.4.8(@types/node@18.19.54)(terser@5.34.1) + vite: 5.4.8(@types/node@18.19.55)(terser@5.34.1) '@vitest/pretty-format@2.1.2': dependencies: @@ -14294,7 +14294,7 @@ snapshots: browserslist@4.24.0: dependencies: caniuse-lite: 1.0.30001667 - electron-to-chromium: 1.5.32 + electron-to-chromium: 1.5.33 node-releases: 2.0.18 update-browserslist-db: 1.1.1(browserslist@4.24.0) @@ -14769,13 +14769,13 @@ snapshots: optionalDependencies: typescript: 5.6.2 - create-jest@29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)): + create-jest@29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)) + jest-config: 29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -14784,13 +14784,13 @@ snapshots: - supports-color - ts-node - create-jest@29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)): + create-jest@29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + jest-config: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -15086,7 +15086,7 @@ snapshots: deep-is@0.1.4: {} - deepmerge-ts@7.1.1: {} + deepmerge-ts@7.1.3: {} deepmerge@4.3.1: {} @@ -15256,7 +15256,7 @@ snapshots: dependencies: jake: 10.9.2 - electron-to-chromium@1.5.32: {} + electron-to-chromium@1.5.33: {} emittery@0.13.1: {} @@ -15875,7 +15875,7 @@ snapshots: eval@0.1.8: dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 require-like: 0.1.2 eventemitter3@4.0.7: {} @@ -17121,7 +17121,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.3 @@ -17141,16 +17141,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)): + jest-cli@29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)) + create-jest: 29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)) + jest-config: 29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -17160,16 +17160,16 @@ snapshots: - supports-color - ts-node - jest-cli@29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)): + jest-cli@29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + create-jest: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + jest-config: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -17179,7 +17179,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)): + jest-config@29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)): dependencies: '@babel/core': 7.25.7 '@jest/test-sequencer': 29.7.0 @@ -17204,13 +17204,13 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 18.19.54 - ts-node: 10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2) + '@types/node': 18.19.55 + ts-node: 10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)): + jest-config@29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)): dependencies: '@babel/core': 7.25.7 '@jest/test-sequencer': 29.7.0 @@ -17235,13 +17235,13 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 22.7.4 - ts-node: 10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2) + '@types/node': 22.7.5 + ts-node: 10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)): + jest-config@29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)): dependencies: '@babel/core': 7.25.7 '@jest/test-sequencer': 29.7.0 @@ -17266,8 +17266,8 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 22.7.4 - ts-node: 10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2) + '@types/node': 22.7.5 + ts-node: 10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -17296,7 +17296,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -17306,7 +17306,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 - '@types/node': 22.7.4 + '@types/node': 22.7.5 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -17345,7 +17345,7 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 jest-util: 29.7.0 jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): @@ -17380,7 +17380,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -17408,7 +17408,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 chalk: 4.1.2 cjs-module-lexer: 1.4.1 collect-v8-coverage: 1.0.2 @@ -17454,7 +17454,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 18.19.54 + '@types/node': 18.19.55 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -17473,7 +17473,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.7.4 + '@types/node': 22.7.5 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -17482,35 +17482,35 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 22.7.4 + '@types/node': 22.7.5 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)): + jest@29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)) '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)) + jest-cli: 29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros - supports-color - ts-node - jest@29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)): + jest@29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@22.7.4)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2)) + jest-cli: 29.7.0(@types/node@22.7.5)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -20430,12 +20430,12 @@ snapshots: dependencies: typescript: 5.6.2 - ts-jest@29.2.5(@babel/core@7.25.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.7))(jest@29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)))(typescript@5.6.2): + ts-jest@29.2.5(@babel/core@7.25.7)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.25.7))(jest@29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)))(typescript@5.6.2): dependencies: bs-logger: 0.2.6 ejs: 3.1.10 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@18.19.54)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2)) + jest: 29.7.0(@types/node@18.19.55)(ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -20470,14 +20470,14 @@ snapshots: typescript: 5.6.2 webpack: 5.95.0(@swc/core@1.7.26)(webpack-cli@5.1.4) - ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.54)(typescript@5.6.2): + ts-node@10.9.2(@swc/core@1.7.26)(@types/node@18.19.55)(typescript@5.6.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 18.19.54 + '@types/node': 18.19.55 acorn: 8.12.1 acorn-walk: 8.3.4 arg: 4.1.3 @@ -20490,14 +20490,14 @@ snapshots: optionalDependencies: '@swc/core': 1.7.26 - ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.4)(typescript@5.6.2): + ts-node@10.9.2(@swc/core@1.7.26)(@types/node@22.7.5)(typescript@5.6.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 22.7.4 + '@types/node': 22.7.5 acorn: 8.12.1 acorn-walk: 8.3.4 arg: 4.1.3 @@ -20606,11 +20606,11 @@ snapshots: typescript: 5.6.2 yaml: 2.5.1 - typescript-eslint@8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2): + typescript-eslint@8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2): dependencies: - '@typescript-eslint/eslint-plugin': 8.8.0(@typescript-eslint/parser@8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2))(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) - '@typescript-eslint/parser': 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) - '@typescript-eslint/utils': 8.8.0(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + '@typescript-eslint/eslint-plugin': 8.8.1(@typescript-eslint/parser@8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2))(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + '@typescript-eslint/parser': 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) + '@typescript-eslint/utils': 8.8.1(eslint@9.12.0(jiti@2.1.0))(typescript@5.6.2) optionalDependencies: typescript: 5.6.2 transitivePeerDependencies: @@ -20655,7 +20655,7 @@ snapshots: '@types/concat-stream': 2.0.3 '@types/debug': 4.1.12 '@types/is-empty': 1.2.3 - '@types/node': 20.16.10 + '@types/node': 20.16.11 '@types/unist': 3.0.3 concat-stream: 2.0.0 debug: 4.3.7(supports-color@8.1.1) @@ -20862,12 +20862,12 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-node@2.1.2(@types/node@18.19.54)(terser@5.34.1): + vite-node@2.1.2(@types/node@18.19.55)(terser@5.34.1): dependencies: cac: 6.7.14 debug: 4.3.7(supports-color@8.1.1) pathe: 1.1.2 - vite: 5.4.8(@types/node@18.19.54)(terser@5.34.1) + vite: 5.4.8(@types/node@18.19.55)(terser@5.34.1) transitivePeerDependencies: - '@types/node' - less @@ -20879,20 +20879,20 @@ snapshots: - supports-color - terser - vite@5.4.8(@types/node@18.19.54)(terser@5.34.1): + vite@5.4.8(@types/node@18.19.55)(terser@5.34.1): dependencies: esbuild: 0.21.5 postcss: 8.4.47 rollup: 4.24.0 optionalDependencies: - '@types/node': 18.19.54 + '@types/node': 18.19.55 fsevents: 2.3.3 terser: 5.34.1 - vitest@2.1.2(@types/node@18.19.54)(terser@5.34.1): + vitest@2.1.2(@types/node@18.19.55)(terser@5.34.1): dependencies: '@vitest/expect': 2.1.2 - '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(vite@5.4.8(@types/node@18.19.54)(terser@5.34.1)) + '@vitest/mocker': 2.1.2(@vitest/spy@2.1.2)(vite@5.4.8(@types/node@18.19.55)(terser@5.34.1)) '@vitest/pretty-format': 2.1.2 '@vitest/runner': 2.1.2 '@vitest/snapshot': 2.1.2 @@ -20907,11 +20907,11 @@ snapshots: tinyexec: 0.3.0 tinypool: 1.0.1 tinyrainbow: 1.2.0 - vite: 5.4.8(@types/node@18.19.54)(terser@5.34.1) - vite-node: 2.1.2(@types/node@18.19.54)(terser@5.34.1) + vite: 5.4.8(@types/node@18.19.55)(terser@5.34.1) + vite-node: 2.1.2(@types/node@18.19.55)(terser@5.34.1) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 18.19.54 + '@types/node': 18.19.55 transitivePeerDependencies: - less - lightningcss @@ -21243,7 +21243,7 @@ snapshots: write-package@7.1.0: dependencies: - deepmerge-ts: 7.1.1 + deepmerge-ts: 7.1.3 read-pkg: 9.0.1 sort-keys: 5.1.0 type-fest: 4.26.1 diff --git a/scripts/clear-github-cach.sh b/scripts/clear-github-cach.sh new file mode 100644 index 00000000000..69aa7267297 --- /dev/null +++ b/scripts/clear-github-cach.sh @@ -0,0 +1,17 @@ +#!/bin/bash + +## Delete old cache keys from GitHub Actions. + +gh extension install actions/gh-actions-cache + +echo "Fetching list of cache key" +cacheKeysForPR=$(gh actions-cache list --order asc --sort last-used -L 100 | cut -f 1 ) + +## Setting this to not fail the workflow while deleting cache keys. +set +e +echo "Deleting caches..." +for cacheKey in $cacheKeysForPR +do + gh actions-cache delete $cacheKey --confirm +done +echo "Done" diff --git a/test-packages/cspell-eslint-plugin/test-cspell-eslint-plugin-v9/package.json b/test-packages/cspell-eslint-plugin/test-cspell-eslint-plugin-v9/package.json index 5e9bb7dd335..8f956eef170 100644 --- a/test-packages/cspell-eslint-plugin/test-cspell-eslint-plugin-v9/package.json +++ b/test-packages/cspell-eslint-plugin/test-cspell-eslint-plugin-v9/package.json @@ -20,7 +20,7 @@ "@types/react": "^18.3.11", "eslint": "^9.12.0", "eslint-plugin-n": "^17.10.3", - "typescript-eslint": "^8.8.0" + "typescript-eslint": "^8.8.1" }, "dependencies": { "react": "^18.3.1"