diff --git a/.yarn/versions/942403b3.yml b/.yarn/versions/942403b3.yml new file mode 100644 index 00000000000..5bf14ec3f6b --- /dev/null +++ b/.yarn/versions/942403b3.yml @@ -0,0 +1,5 @@ +releases: + "@fast-check/vitest": patch + +declined: + - fast-check diff --git a/packages/fast-check/package.json b/packages/fast-check/package.json index 5b33a2a27b7..e87e32a99ad 100644 --- a/packages/fast-check/package.json +++ b/packages/fast-check/package.json @@ -63,7 +63,7 @@ "@fast-check/poisoning": "workspace:*", "@microsoft/api-extractor": "^7.47.0", "@types/node": "^20.14.10", - "@vitest/coverage-v8": "^1.6.0", + "@vitest/coverage-v8": "^2.0.1", "cross-env": "^7.0.3", "glob": "^11.0.0", "not-node-buffer": "npm:buffer@^6.0.3", @@ -71,7 +71,7 @@ "replace-in-file": "^8.1.0", "typedoc": "^0.26.4", "typescript": "~5.5.3", - "vitest": "^1.6.0" + "vitest": "^2.0.1" }, "keywords": [ "property-based testing", diff --git a/packages/fast-check/test/e2e/NoStackOverflowOnShrink.spec.ts b/packages/fast-check/test/e2e/NoStackOverflowOnShrink.spec.ts index f5d42940c73..df0e0eba4a8 100644 --- a/packages/fast-check/test/e2e/NoStackOverflowOnShrink.spec.ts +++ b/packages/fast-check/test/e2e/NoStackOverflowOnShrink.spec.ts @@ -23,7 +23,7 @@ const callStackSizeWithMargin = 2 * callStackSize; // Configure arbitraries and provide them with a maximal length much greater than the default one // This value is hardcoded in order to avoid variations from one env to another and ease replays in case of problem -const maxDepthForArrays = 120_000; +const maxDepthForArrays = 50_000; // Not all the shrunk values of a given generated value will be asked // The aim is to check if asking for the first maxShrinksToAsk might trigger unwanted stack overflows diff --git a/packages/fast-check/test/unit/__test-helpers__/Mocked.ts b/packages/fast-check/test/unit/__test-helpers__/Mocked.ts index 12f330e9f3f..72a8d2a6598 100644 --- a/packages/fast-check/test/unit/__test-helpers__/Mocked.ts +++ b/packages/fast-check/test/unit/__test-helpers__/Mocked.ts @@ -5,7 +5,8 @@ type MockableFunction = (...args: any[]) => any; type ArgumentsOf = T extends (...args: infer A) => any ? A : never; type ConstructorArgumentsOf = T extends new (...args: infer A) => any ? A : never; -export interface MockWithArgs extends MockInstance, ReturnType> { +export interface MockWithArgs + extends MockInstance<(...args: ArgumentsOf) => ReturnType> { new (...args: ConstructorArgumentsOf): T; (...args: ArgumentsOf): ReturnType; } @@ -17,7 +18,7 @@ type PropertyKeysOf = { [K in keyof T]: T[K] extends MockableFunction ? never : K; }[keyof T]; type MaybeMockedConstructor = T extends new (...args: any[]) => infer R - ? MockInstance, R> + ? MockInstance<(...args: ConstructorArgumentsOf) => R> : T; type MockedFunction = MockWithArgs & { [K in keyof T]: T[K]; diff --git a/packages/fast-check/test/unit/arbitrary/_internals/AdapterArbitrary.spec.ts b/packages/fast-check/test/unit/arbitrary/_internals/AdapterArbitrary.spec.ts index 7485fb64bea..7b640899241 100644 --- a/packages/fast-check/test/unit/arbitrary/_internals/AdapterArbitrary.spec.ts +++ b/packages/fast-check/test/unit/arbitrary/_internals/AdapterArbitrary.spec.ts @@ -22,7 +22,7 @@ describe('AdapterArbitrary', () => { generate.mockReturnValueOnce(value); const { instance: mrng } = fakeRandom(); const adapterFunction = vi - .fn<[any], AdapterOutput>() + .fn<(arg0: any) => AdapterOutput>() .mockImplementation((v) => ({ adapted: false, value: v })); // Act @@ -54,7 +54,7 @@ describe('AdapterArbitrary', () => { generate.mockReturnValueOnce(value); const { instance: mrng } = fakeRandom(); const adapterFunction = vi - .fn<[any], AdapterOutput>() + .fn<(arg0: any) => AdapterOutput>() .mockImplementation(() => ({ adapted: true, value: vAdapted })); // Act @@ -89,7 +89,7 @@ describe('AdapterArbitrary', () => { const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockReturnValueOnce(canShrink); const adapterFunction = vi - .fn<[any], AdapterOutput>() + .fn<(arg0: any) => AdapterOutput>() .mockImplementation(() => ({ adapted: hasToAdapt, value: vA })); // Act @@ -129,7 +129,7 @@ describe('AdapterArbitrary', () => { canShrinkWithoutContext.mockReturnValue(canShrinkIfAdapted); const { instance: mrng } = fakeRandom(); const adapterFunction = vi - .fn<[any], AdapterOutput>() + .fn<(arg0: any) => AdapterOutput>() .mockImplementation((v) => (Object.is(v, vA) ? adaptedA : Object.is(v, vAA) ? adaptedAA : adaptedAB)); // Act @@ -221,7 +221,7 @@ describe('AdapterArbitrary', () => { canShrinkWithoutContext.mockReturnValueOnce(canShrinkIfAdapted); const { instance: mrng } = fakeRandom(); const adapterFunction = vi - .fn<[any], AdapterOutput>() + .fn<(arg0: any) => AdapterOutput>() .mockImplementation((v) => Object.is(v, vA) ? adaptedA @@ -287,7 +287,7 @@ describe('AdapterArbitrary', () => { const { instance, generate, shrink, canShrinkWithoutContext } = fakeArbitrary(); shrink.mockReturnValueOnce(Stream.of(valueAA, valueAB)); const adapterFunction = vi - .fn<[any], AdapterOutput>() + .fn<(arg0: any) => AdapterOutput>() .mockImplementation((v) => (Object.is(v, vAA) ? adaptedAA : adaptedAB)); // Act diff --git a/packages/fast-check/test/unit/arbitrary/_internals/ArrayArbitrary.spec.ts b/packages/fast-check/test/unit/arbitrary/_internals/ArrayArbitrary.spec.ts index bb6ebcae6f1..eed14a0d314 100644 --- a/packages/fast-check/test/unit/arbitrary/_internals/ArrayArbitrary.spec.ts +++ b/packages/fast-check/test/unit/arbitrary/_internals/ArrayArbitrary.spec.ts @@ -354,7 +354,9 @@ describe('ArrayArbitrary', () => { const minLength = Math.min(Math.max(0, value.length - offsetMin), maxGeneratedLength); const maxLength = Math.max(Math.min(MaxLengthUpperBound, value.length + offsetMax), maxGeneratedLength); const { instance, canShrinkWithoutContext } = fakeArbitrary(); - canShrinkWithoutContext.mockImplementation((vTest) => value.find((v) => Object.is(v[0], vTest))![1]); + canShrinkWithoutContext.mockImplementation( + (vTest): vTest is any => value.find((v) => Object.is(v[0], vTest))![1], + ); const data: any[] = []; const customSet: CustomSet> = { size: () => data.length, diff --git a/packages/fast-check/test/unit/arbitrary/_internals/IntegerArbitrary.spec.ts b/packages/fast-check/test/unit/arbitrary/_internals/IntegerArbitrary.spec.ts index b8fbe69810c..51d7c8e4b58 100644 --- a/packages/fast-check/test/unit/arbitrary/_internals/IntegerArbitrary.spec.ts +++ b/packages/fast-check/test/unit/arbitrary/_internals/IntegerArbitrary.spec.ts @@ -95,8 +95,7 @@ describe('IntegerArbitrary', () => { } nextInt.mockReturnValueOnce(mid); // Remark: this value will most of the time be outside of requested range const biasNumericRange = vi.spyOn(BiasNumericRangeMock, 'biasNumericRange') as unknown as MockInstance< - [min: number, max: number, logLike: (n: number) => number], - { min: number; max: number }[] + (min: number, max: number, logLike: (n: number) => number) => { min: number; max: number }[] >; biasNumericRange.mockReturnValueOnce(ranges); diff --git a/packages/fast-check/test/unit/arbitrary/_internals/mappers/PatternsToString.spec.ts b/packages/fast-check/test/unit/arbitrary/_internals/mappers/PatternsToString.spec.ts index acfcc3d31b0..a9f5f83bc3f 100644 --- a/packages/fast-check/test/unit/arbitrary/_internals/mappers/PatternsToString.spec.ts +++ b/packages/fast-check/test/unit/arbitrary/_internals/mappers/PatternsToString.spec.ts @@ -32,7 +32,7 @@ describe('patternsToStringUnmapperFor', () => { // Arrange const sourceChunksSet = new Set(sourceChunks); const { instance, canShrinkWithoutContext } = fakeArbitrary(); - canShrinkWithoutContext.mockImplementation((value) => sourceChunksSet.has(value as string)); + canShrinkWithoutContext.mockImplementation((value): value is string => sourceChunksSet.has(value as string)); // Act const unmapper = patternsToStringUnmapperFor(instance, constraints); @@ -52,7 +52,7 @@ describe('patternsToStringUnmapperFor', () => { // Arrange const sourceChunksSet = new Set(sourceChunks); const { instance, canShrinkWithoutContext } = fakeArbitrary(); - canShrinkWithoutContext.mockImplementation((value) => sourceChunksSet.has(value as string)); + canShrinkWithoutContext.mockImplementation((value): value is string => sourceChunksSet.has(value as string)); // Act / Assert const unmapper = patternsToStringUnmapperFor(instance, constraints); @@ -70,7 +70,7 @@ describe('patternsToStringUnmapperFor', () => { // Arrange const sourceChunksSet = new Set(sourceChunks); const { instance, canShrinkWithoutContext } = fakeArbitrary(); - canShrinkWithoutContext.mockImplementation((value) => sourceChunksSet.has(value as string)); + canShrinkWithoutContext.mockImplementation((value): value is string => sourceChunksSet.has(value as string)); const source = sourceMods.map((mod) => sourceChunks[mod % sourceChunks.length]).join(''); // Act @@ -99,7 +99,7 @@ describe('patternsToStringUnmapperFor', () => { // Arrange const sourceChunksSet = new Set(sourceChunks); const { instance, canShrinkWithoutContext } = fakeArbitrary(); - canShrinkWithoutContext.mockImplementation((value) => sourceChunksSet.has(value as string)); + canShrinkWithoutContext.mockImplementation((value): value is string => sourceChunksSet.has(value as string)); const source = sourceMods.map((mod) => sourceChunks[mod % sourceChunks.length]).join(''); const constraints = { minLength: Math.max(0, sourceMods.length - constraintsMinOffset), diff --git a/packages/fast-check/test/unit/arbitrary/_internals/mappers/WordsToLorem.spec.ts b/packages/fast-check/test/unit/arbitrary/_internals/mappers/WordsToLorem.spec.ts index f204d34f06b..d45bcf93e1b 100644 --- a/packages/fast-check/test/unit/arbitrary/_internals/mappers/WordsToLorem.spec.ts +++ b/packages/fast-check/test/unit/arbitrary/_internals/mappers/WordsToLorem.spec.ts @@ -42,7 +42,7 @@ describe('wordsToJoinedStringUnmapperFor', () => { // Arrange const { instance: wordsArbitrary, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello', 'world', 'winter', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello', 'world', 'winter', 'summer'].includes(value), ); // Act @@ -57,7 +57,7 @@ describe('wordsToJoinedStringUnmapperFor', () => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello,', 'world,', 'winter', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello,', 'world,', 'winter', 'summer'].includes(value), ); // Act @@ -72,7 +72,7 @@ describe('wordsToJoinedStringUnmapperFor', () => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello,', 'world,', 'spring', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello,', 'world,', 'spring', 'summer'].includes(value), ); // Act / Assert @@ -85,7 +85,9 @@ describe('wordsToJoinedStringUnmapperFor', () => { fc.property(wordsArrayArbitrary, (words) => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); - canShrinkWithoutContext.mockImplementation((value) => typeof value === 'string' && words.includes(value)); + canShrinkWithoutContext.mockImplementation( + (value): value is string => typeof value === 'string' && words.includes(value), + ); // Act const mapped = wordsToJoinedStringMapper(words); @@ -120,7 +122,7 @@ describe('wordsToSentenceUnmapperFor', () => { // Arrange const { instance: wordsArbitrary, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello', 'world', 'winter', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello', 'world', 'winter', 'summer'].includes(value), ); // Act @@ -135,7 +137,7 @@ describe('wordsToSentenceUnmapperFor', () => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello,', 'world,', 'winter', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello,', 'world,', 'winter', 'summer'].includes(value), ); // Act @@ -150,7 +152,7 @@ describe('wordsToSentenceUnmapperFor', () => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello', 'world,', 'spring', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello', 'world,', 'spring', 'summer'].includes(value), ); // Act / Assert @@ -163,7 +165,7 @@ describe('wordsToSentenceUnmapperFor', () => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello', 'world,', 'winter', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello', 'world,', 'winter', 'summer'].includes(value), ); // Act / Assert @@ -176,7 +178,7 @@ describe('wordsToSentenceUnmapperFor', () => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello', 'world,', 'winter', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello', 'world,', 'winter', 'summer'].includes(value), ); // Act / Assert @@ -189,7 +191,7 @@ describe('wordsToSentenceUnmapperFor', () => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello', 'world,', 'winter', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello', 'world,', 'winter', 'summer'].includes(value), ); // Act / Assert @@ -202,7 +204,7 @@ describe('wordsToSentenceUnmapperFor', () => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); canShrinkWithoutContext.mockImplementation( - (value) => typeof value === 'string' && ['hello', 'world,', 'winter,', 'summer'].includes(value), + (value): value is string => typeof value === 'string' && ['hello', 'world,', 'winter,', 'summer'].includes(value), ); // Act / Assert @@ -216,7 +218,9 @@ describe('wordsToSentenceUnmapperFor', () => { fc.property(wordsArrayArbitrary, (words) => { // Arrange const { instance, canShrinkWithoutContext } = fakeArbitrary(); - canShrinkWithoutContext.mockImplementation((value) => typeof value === 'string' && words.includes(value)); + canShrinkWithoutContext.mockImplementation( + (value): value is string => typeof value === 'string' && words.includes(value), + ); // Act const mapped = wordsToSentenceMapper(words); diff --git a/packages/vitest/package.json b/packages/vitest/package.json index 4585e54735b..fc128511f53 100644 --- a/packages/vitest/package.json +++ b/packages/vitest/package.json @@ -47,7 +47,7 @@ "fast-check": "^3.0.0" }, "peerDependencies": { - "vitest": ">=0.28.1 <1.0.0 || ^1" + "vitest": ">=0.28.1 <1.0.0 || ^1 || ^2" }, "devDependencies": { "@babel/core": "^7.24.8", @@ -60,7 +60,7 @@ "jest": "^29.7.0", "typescript": "~5.5.3", "vite": "^5.3.3", - "vitest": "^1.6.0" + "vitest": "^2.0.1" }, "keywords": [ "vitest", diff --git a/yarn.lock b/yarn.lock index 80494393abd..16a7731a2d9 100644 --- a/yarn.lock +++ b/yarn.lock @@ -206,7 +206,7 @@ __metadata: languageName: node linkType: hard -"@ampproject/remapping@npm:^2.2.0, @ampproject/remapping@npm:^2.2.1": +"@ampproject/remapping@npm:^2.2.0, @ampproject/remapping@npm:^2.3.0": version: 2.3.0 resolution: "@ampproject/remapping@npm:2.3.0" dependencies: @@ -2889,9 +2889,9 @@ __metadata: jest: "npm:^29.7.0" typescript: "npm:~5.5.3" vite: "npm:^5.3.3" - vitest: "npm:^1.6.0" + vitest: "npm:^2.0.1" peerDependencies: - vitest: ">=0.28.1 <1.0.0 || ^1" + vitest: ">=0.28.1 <1.0.0 || ^1 || ^2" languageName: unknown linkType: soft @@ -5665,80 +5665,79 @@ __metadata: languageName: node linkType: hard -"@vitest/coverage-v8@npm:^1.6.0": - version: 1.6.0 - resolution: "@vitest/coverage-v8@npm:1.6.0" +"@vitest/coverage-v8@npm:^2.0.1": + version: 2.0.1 + resolution: "@vitest/coverage-v8@npm:2.0.1" dependencies: - "@ampproject/remapping": "npm:^2.2.1" + "@ampproject/remapping": "npm:^2.3.0" "@bcoe/v8-coverage": "npm:^0.2.3" - debug: "npm:^4.3.4" + debug: "npm:^4.3.5" istanbul-lib-coverage: "npm:^3.2.2" istanbul-lib-report: "npm:^3.0.1" - istanbul-lib-source-maps: "npm:^5.0.4" - istanbul-reports: "npm:^3.1.6" - magic-string: "npm:^0.30.5" - magicast: "npm:^0.3.3" - picocolors: "npm:^1.0.0" - std-env: "npm:^3.5.0" - strip-literal: "npm:^2.0.0" - test-exclude: "npm:^6.0.0" + istanbul-lib-source-maps: "npm:^5.0.6" + istanbul-reports: "npm:^3.1.7" + magic-string: "npm:^0.30.10" + magicast: "npm:^0.3.4" + picocolors: "npm:^1.0.1" + std-env: "npm:^3.7.0" + strip-literal: "npm:^2.1.0" + test-exclude: "npm:^7.0.1" peerDependencies: - vitest: 1.6.0 - checksum: 10c0/a7beaf2a88b628a9dc16ddca7589f2b2e4681598e6788d68423dffbb06c608edc52b2dd421ada069eb3cfd83f8f592ddd6e8b8db2d037bf13965a56c5e5835ac + vitest: 2.0.1 + checksum: 10c0/e3b15616983e78ed67c4ad25b1416c54991f1e1df1e34f013fe4ee1fb4d748b09f39e159e213412a42122279d437c498a20509604ff71fa51ba8f45a4c087efe languageName: node linkType: hard -"@vitest/expect@npm:1.6.0": - version: 1.6.0 - resolution: "@vitest/expect@npm:1.6.0" +"@vitest/expect@npm:2.0.1": + version: 2.0.1 + resolution: "@vitest/expect@npm:2.0.1" dependencies: - "@vitest/spy": "npm:1.6.0" - "@vitest/utils": "npm:1.6.0" - chai: "npm:^4.3.10" - checksum: 10c0/a4351f912a70543e04960f5694f1f1ac95f71a856a46e87bba27d3eb72a08c5d11d35021cbdc6077452a152e7d93723fc804bba76c2cc53c8896b7789caadae3 + "@vitest/spy": "npm:2.0.1" + "@vitest/utils": "npm:2.0.1" + chai: "npm:^5.1.1" + checksum: 10c0/75c82f9f2fc11d96cca342ef15c448254e37174f7cbf526cc533a0545074efc91528cd5247e07f07a787f4b2f4e2d76089ebbdd217214e1811844b9b35256297 languageName: node linkType: hard -"@vitest/runner@npm:1.6.0": - version: 1.6.0 - resolution: "@vitest/runner@npm:1.6.0" +"@vitest/runner@npm:2.0.1": + version: 2.0.1 + resolution: "@vitest/runner@npm:2.0.1" dependencies: - "@vitest/utils": "npm:1.6.0" - p-limit: "npm:^5.0.0" - pathe: "npm:^1.1.1" - checksum: 10c0/27d67fa51f40effe0e41ee5f26563c12c0ef9a96161f806036f02ea5eb9980c5cdf305a70673942e7a1e3d472d4d7feb40093ae93024ef1ccc40637fc65b1d2f + "@vitest/utils": "npm:2.0.1" + pathe: "npm:^1.1.2" + checksum: 10c0/2e1da08c4739fd48aaae3f163d785a0a9cc3789072c8722575e7d2abe51efb6c1ce9666b71f9ac16e628964173b0c52777178241ca0889066227b739206e5060 languageName: node linkType: hard -"@vitest/snapshot@npm:1.6.0": - version: 1.6.0 - resolution: "@vitest/snapshot@npm:1.6.0" +"@vitest/snapshot@npm:2.0.1": + version: 2.0.1 + resolution: "@vitest/snapshot@npm:2.0.1" dependencies: - magic-string: "npm:^0.30.5" - pathe: "npm:^1.1.1" + magic-string: "npm:^0.30.10" + pathe: "npm:^1.1.2" pretty-format: "npm:^29.7.0" - checksum: 10c0/be027fd268d524589ff50c5fad7b4faa1ac5742b59ac6c1dc6f5a3930aad553560e6d8775e90ac4dfae4be746fc732a6f134ba95606a1519707ce70db3a772a5 + checksum: 10c0/0bcddbd0f52d82ec3852eba010d382896bfca3171a7f7aaa61bc2380f3d4360e78eee09bbd02cbb3117dd2476aaecee2942f12d2fa74e80e2623b271eb3e1211 languageName: node linkType: hard -"@vitest/spy@npm:1.6.0": - version: 1.6.0 - resolution: "@vitest/spy@npm:1.6.0" +"@vitest/spy@npm:2.0.1": + version: 2.0.1 + resolution: "@vitest/spy@npm:2.0.1" dependencies: - tinyspy: "npm:^2.2.0" - checksum: 10c0/df66ea6632b44fb76ef6a65c1abbace13d883703aff37cd6d062add6dcd1b883f19ce733af8e0f7feb185b61600c6eb4042a518e4fb66323d0690ec357f9401c + tinyspy: "npm:^3.0.0" + checksum: 10c0/b9ed4a306dba9517a51db666516a22e96d37c637b1f3782e89e714f9db4f1db1d8e878e0f49e6e4bec22b8a911b09d36337d7887ef68a004d15bc97e2afee1e6 languageName: node linkType: hard -"@vitest/utils@npm:1.6.0": - version: 1.6.0 - resolution: "@vitest/utils@npm:1.6.0" +"@vitest/utils@npm:2.0.1": + version: 2.0.1 + resolution: "@vitest/utils@npm:2.0.1" dependencies: diff-sequences: "npm:^29.6.3" estree-walker: "npm:^3.0.3" - loupe: "npm:^2.3.7" + loupe: "npm:^3.1.1" pretty-format: "npm:^29.7.0" - checksum: 10c0/8b0d19835866455eb0b02b31c5ca3d8ad45f41a24e4c7e1f064b480f6b2804dc895a70af332f14c11ed89581011b92b179718523f55f5b14787285a0321b1301 + checksum: 10c0/1a49f72f4ba3b33d3b44a73dbddb50cc7472fc96024f375e697e5a669c38b865e40a045de29553cabcb17f604120e875cd2645ace9bc676e3594f82e3a4cff36 languageName: node linkType: hard @@ -6399,10 +6398,10 @@ __metadata: languageName: node linkType: hard -"assertion-error@npm:^1.1.0": - version: 1.1.0 - resolution: "assertion-error@npm:1.1.0" - checksum: 10c0/25456b2aa333250f01143968e02e4884a34588a8538fbbf65c91a637f1dbfb8069249133cd2f4e530f10f624d206a664e7df30207830b659e9f5298b00a4099b +"assertion-error@npm:^2.0.1": + version: 2.0.1 + resolution: "assertion-error@npm:2.0.1" + checksum: 10c0/bbbcb117ac6480138f8c93cf7f535614282dea9dc828f540cdece85e3c665e8f78958b96afac52f29ff883c72638e6a87d469ecc9fe5bc902df03ed24a55dba8 languageName: node linkType: hard @@ -7053,18 +7052,16 @@ __metadata: languageName: node linkType: hard -"chai@npm:^4.3.10": - version: 4.4.1 - resolution: "chai@npm:4.4.1" +"chai@npm:^5.1.1": + version: 5.1.1 + resolution: "chai@npm:5.1.1" dependencies: - assertion-error: "npm:^1.1.0" - check-error: "npm:^1.0.3" - deep-eql: "npm:^4.1.3" - get-func-name: "npm:^2.0.2" - loupe: "npm:^2.3.6" - pathval: "npm:^1.1.1" - type-detect: "npm:^4.0.8" - checksum: 10c0/91590a8fe18bd6235dece04ccb2d5b4ecec49984b50924499bdcd7a95c02cb1fd2a689407c19bb854497bde534ef57525cfad6c7fdd2507100fd802fbc2aefbd + assertion-error: "npm:^2.0.1" + check-error: "npm:^2.1.1" + deep-eql: "npm:^5.0.1" + loupe: "npm:^3.1.0" + pathval: "npm:^2.0.0" + checksum: 10c0/e7f00e5881e3d5224f08fe63966ed6566bd9fdde175863c7c16dd5240416de9b34c4a0dd925f4fd64ad56256ca6507d32cf6131c49e1db65c62578eb31d4566c languageName: node linkType: hard @@ -7138,12 +7135,10 @@ __metadata: languageName: node linkType: hard -"check-error@npm:^1.0.3": - version: 1.0.3 - resolution: "check-error@npm:1.0.3" - dependencies: - get-func-name: "npm:^2.0.2" - checksum: 10c0/94aa37a7315c0e8a83d0112b5bfb5a8624f7f0f81057c73e4707729cdd8077166c6aefb3d8e2b92c63ee130d4a2ff94bad46d547e12f3238cc1d78342a973841 +"check-error@npm:^2.1.1": + version: 2.1.1 + resolution: "check-error@npm:2.1.1" + checksum: 10c0/979f13eccab306cf1785fa10941a590b4e7ea9916ea2a4f8c87f0316fc3eab07eabefb6e587424ef0f88cbcd3805791f172ea739863ca3d7ce2afc54641c7f0e languageName: node linkType: hard @@ -7578,13 +7573,6 @@ __metadata: languageName: node linkType: hard -"confbox@npm:^0.1.7": - version: 0.1.7 - resolution: "confbox@npm:0.1.7" - checksum: 10c0/18b40c2f652196a833f3f1a5db2326a8a579cd14eacabfe637e4fc8cb9b68d7cf296139a38c5e7c688ce5041bf46f9adce05932d43fde44cf7e012840b5da111 - languageName: node - linkType: hard - "config-chain@npm:^1.1.11": version: 1.1.13 resolution: "config-chain@npm:1.1.13" @@ -8169,7 +8157,7 @@ __metadata: languageName: node linkType: hard -"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4": +"debug@npm:4, debug@npm:^4.0.0, debug@npm:^4.1.0, debug@npm:^4.1.1, debug@npm:^4.3.1, debug@npm:^4.3.2, debug@npm:^4.3.4, debug@npm:^4.3.5": version: 4.3.5 resolution: "debug@npm:4.3.5" dependencies: @@ -8225,12 +8213,10 @@ __metadata: languageName: node linkType: hard -"deep-eql@npm:^4.1.3": - version: 4.1.4 - resolution: "deep-eql@npm:4.1.4" - dependencies: - type-detect: "npm:^4.0.0" - checksum: 10c0/264e0613493b43552fc908f4ff87b8b445c0e6e075656649600e1b8a17a57ee03e960156fce7177646e4d2ddaf8e5ee616d76bd79929ff593e5c79e4e5e6c517 +"deep-eql@npm:^5.0.1": + version: 5.0.2 + resolution: "deep-eql@npm:5.0.2" + checksum: 10c0/7102cf3b7bb719c6b9c0db2e19bf0aa9318d141581befe8c7ce8ccd39af9eaa4346e5e05adef7f9bd7015da0f13a3a25dcfe306ef79dc8668aedbecb658dd247 languageName: node linkType: hard @@ -9484,7 +9470,7 @@ __metadata: "@fast-check/poisoning": "workspace:*" "@microsoft/api-extractor": "npm:^7.47.0" "@types/node": "npm:^20.14.10" - "@vitest/coverage-v8": "npm:^1.6.0" + "@vitest/coverage-v8": "npm:^2.0.1" cross-env: "npm:^7.0.3" glob: "npm:^11.0.0" not-node-buffer: "npm:buffer@^6.0.3" @@ -9493,7 +9479,7 @@ __metadata: replace-in-file: "npm:^8.1.0" typedoc: "npm:^0.26.4" typescript: "npm:~5.5.3" - vitest: "npm:^1.6.0" + vitest: "npm:^2.0.1" languageName: unknown linkType: soft @@ -10063,7 +10049,7 @@ __metadata: languageName: node linkType: hard -"get-func-name@npm:^2.0.1, get-func-name@npm:^2.0.2": +"get-func-name@npm:^2.0.1": version: 2.0.2 resolution: "get-func-name@npm:2.0.2" checksum: 10c0/89830fd07623fa73429a711b9daecdb304386d237c71268007f788f113505ef1d4cc2d0b9680e072c5082490aec9df5d7758bf5ac6f1c37062855e8e3dc0b9df @@ -10164,9 +10150,9 @@ __metadata: languageName: node linkType: hard -"glob@npm:^10.2.2, glob@npm:^10.3.10, glob@npm:^10.4.2": - version: 10.4.3 - resolution: "glob@npm:10.4.3" +"glob@npm:^10.2.2, glob@npm:^10.3.10, glob@npm:^10.4.1, glob@npm:^10.4.2": + version: 10.4.4 + resolution: "glob@npm:10.4.4" dependencies: foreground-child: "npm:^3.1.0" jackspeak: "npm:^3.1.2" @@ -10176,7 +10162,7 @@ __metadata: path-scurry: "npm:^1.11.1" bin: glob: dist/esm/bin.mjs - checksum: 10c0/bea148e5dae96c17e2764f4764c72376a6ab7072b27a21e861ae4af6f97f3e810d79d67f64de52f63ce1d7fdb73b7306f61c65b48d0f61ca7c8647ce8acaf9a7 + checksum: 10c0/8f0887ae6b9e7ec97841c88f3189643a326c9c37f9881050979c131a2198f2230d4b0a196b71ec6a6694871c25fb8631a72af6e2ea941a667c55f155765546ab languageName: node linkType: hard @@ -11773,7 +11759,7 @@ __metadata: languageName: node linkType: hard -"istanbul-lib-source-maps@npm:^5.0.4": +"istanbul-lib-source-maps@npm:^5.0.6": version: 5.0.6 resolution: "istanbul-lib-source-maps@npm:5.0.6" dependencies: @@ -11784,7 +11770,7 @@ __metadata: languageName: node linkType: hard -"istanbul-reports@npm:^3.1.3, istanbul-reports@npm:^3.1.6": +"istanbul-reports@npm:^3.1.3, istanbul-reports@npm:^3.1.7": version: 3.1.7 resolution: "istanbul-reports@npm:3.1.7" dependencies: @@ -12754,16 +12740,6 @@ __metadata: languageName: node linkType: hard -"local-pkg@npm:^0.5.0": - version: 0.5.0 - resolution: "local-pkg@npm:0.5.0" - dependencies: - mlly: "npm:^1.4.2" - pkg-types: "npm:^1.0.3" - checksum: 10c0/f61cbd00d7689f275558b1a45c7ff2a3ddf8472654123ed880215677b9adfa729f1081e50c27ffb415cdb9fa706fb755fec5e23cdd965be375c8059e87ff1cc9 - languageName: node - linkType: hard - "locate-path@npm:^3.0.0": version: 3.0.0 resolution: "locate-path@npm:3.0.0" @@ -12861,12 +12837,12 @@ __metadata: languageName: node linkType: hard -"loupe@npm:^2.3.6, loupe@npm:^2.3.7": - version: 2.3.7 - resolution: "loupe@npm:2.3.7" +"loupe@npm:^3.1.0, loupe@npm:^3.1.1": + version: 3.1.1 + resolution: "loupe@npm:3.1.1" dependencies: get-func-name: "npm:^2.0.1" - checksum: 10c0/71a781c8fc21527b99ed1062043f1f2bb30bdaf54fa4cf92463427e1718bc6567af2988300bc243c1f276e4f0876f29e3cbf7b58106fdc186915687456ce5bf4 + checksum: 10c0/99f88badc47e894016df0c403de846fedfea61154aadabbf776c8428dd59e8d8378007135d385d737de32ae47980af07d22ba7bec5ef7beebd721de9baa0a0af languageName: node linkType: hard @@ -12943,7 +12919,7 @@ __metadata: languageName: node linkType: hard -"magic-string@npm:^0.30.5": +"magic-string@npm:^0.30.10": version: 0.30.10 resolution: "magic-string@npm:0.30.10" dependencies: @@ -12952,7 +12928,7 @@ __metadata: languageName: node linkType: hard -"magicast@npm:^0.3.3": +"magicast@npm:^0.3.4": version: 0.3.4 resolution: "magicast@npm:0.3.4" dependencies: @@ -14151,18 +14127,6 @@ __metadata: languageName: node linkType: hard -"mlly@npm:^1.4.2, mlly@npm:^1.7.1": - version: 1.7.1 - resolution: "mlly@npm:1.7.1" - dependencies: - acorn: "npm:^8.11.3" - pathe: "npm:^1.1.2" - pkg-types: "npm:^1.1.1" - ufo: "npm:^1.5.3" - checksum: 10c0/d836a7b0adff4d118af41fb93ad4d9e57f80e694a681185280ba220a4607603c19e86c80f9a6c57512b04280567f2599e3386081705c5b5fd74c9ddfd571d0fa - languageName: node - linkType: hard - "mri@npm:^1.1.0": version: 1.2.0 resolution: "mri@npm:1.2.0" @@ -14764,15 +14728,6 @@ __metadata: languageName: node linkType: hard -"p-limit@npm:^5.0.0": - version: 5.0.0 - resolution: "p-limit@npm:5.0.0" - dependencies: - yocto-queue: "npm:^1.0.0" - checksum: 10c0/574e93b8895a26e8485eb1df7c4b58a1a6e8d8ae41b1750cc2cc440922b3d306044fc6e9a7f74578a883d46802d9db72b30f2e612690fcef838c173261b1ed83 - languageName: node - linkType: hard - "p-locate@npm:^3.0.0": version: 3.0.0 resolution: "p-locate@npm:3.0.0" @@ -15157,17 +15112,17 @@ __metadata: languageName: node linkType: hard -"pathe@npm:^1.1.1, pathe@npm:^1.1.2": +"pathe@npm:^1.1.2": version: 1.1.2 resolution: "pathe@npm:1.1.2" checksum: 10c0/64ee0a4e587fb0f208d9777a6c56e4f9050039268faaaaecd50e959ef01bf847b7872785c36483fa5cdcdbdfdb31fef2ff222684d4fc21c330ab60395c681897 languageName: node linkType: hard -"pathval@npm:^1.1.1": - version: 1.1.1 - resolution: "pathval@npm:1.1.1" - checksum: 10c0/f63e1bc1b33593cdf094ed6ff5c49c1c0dc5dc20a646ca9725cc7fe7cd9995002d51d5685b9b2ec6814342935748b711bafa840f84c0bb04e38ff40a335c94dc +"pathval@npm:^2.0.0": + version: 2.0.0 + resolution: "pathval@npm:2.0.0" + checksum: 10c0/602e4ee347fba8a599115af2ccd8179836a63c925c23e04bd056d0674a64b39e3a081b643cc7bc0b84390517df2d800a46fcc5598d42c155fe4977095c2f77c5 languageName: node linkType: hard @@ -15269,17 +15224,6 @@ __metadata: languageName: node linkType: hard -"pkg-types@npm:^1.0.3, pkg-types@npm:^1.1.1": - version: 1.1.3 - resolution: "pkg-types@npm:1.1.3" - dependencies: - confbox: "npm:^0.1.7" - mlly: "npm:^1.7.1" - pathe: "npm:^1.1.2" - checksum: 10c0/4cd2c9442dd5e4ae0c61cbd8fdaa92a273939749b081f78150ce9a3f4e625cca0375607386f49f103f0720b239d02369bf181c3ea6c80cf1028a633df03706ad - languageName: node - linkType: hard - "pkg-up@npm:^3.1.0": version: 3.1.0 resolution: "pkg-up@npm:3.1.0" @@ -17698,7 +17642,7 @@ __metadata: languageName: node linkType: hard -"std-env@npm:^3.0.1, std-env@npm:^3.5.0": +"std-env@npm:^3.0.1, std-env@npm:^3.7.0": version: 3.7.0 resolution: "std-env@npm:3.7.0" checksum: 10c0/60edf2d130a4feb7002974af3d5a5f3343558d1ccf8d9b9934d225c638606884db4a20d2fe6440a09605bca282af6b042ae8070a10490c0800d69e82e478f41e @@ -17922,7 +17866,7 @@ __metadata: languageName: node linkType: hard -"strip-literal@npm:^2.0.0": +"strip-literal@npm:^2.1.0": version: 2.1.0 resolution: "strip-literal@npm:2.1.0" dependencies: @@ -18183,6 +18127,17 @@ __metadata: languageName: node linkType: hard +"test-exclude@npm:^7.0.1": + version: 7.0.1 + resolution: "test-exclude@npm:7.0.1" + dependencies: + "@istanbuljs/schema": "npm:^0.1.2" + glob: "npm:^10.4.1" + minimatch: "npm:^9.0.4" + checksum: 10c0/6d67b9af4336a2e12b26a68c83308c7863534c65f27ed4ff7068a56f5a58f7ac703e8fc80f698a19bb154fd8f705cdf7ec347d9512b2c522c737269507e7b263 + languageName: node + linkType: hard + "text-table@npm:^0.2.0": version: 0.2.0 resolution: "text-table@npm:0.2.0" @@ -18232,7 +18187,7 @@ __metadata: languageName: node linkType: hard -"tinybench@npm:^2.5.1": +"tinybench@npm:^2.8.0": version: 2.8.0 resolution: "tinybench@npm:2.8.0" checksum: 10c0/5a9a642351fa3e4955e0cbf38f5674be5f3ba6730fd872fd23a5c953ad6c914234d5aba6ea41ef88820180a81829ceece5bd8d3967c490c5171bca1141c2f24d @@ -18246,17 +18201,17 @@ __metadata: languageName: node linkType: hard -"tinypool@npm:^0.8.3": - version: 0.8.4 - resolution: "tinypool@npm:0.8.4" - checksum: 10c0/779c790adcb0316a45359652f4b025958c1dff5a82460fe49f553c864309b12ad732c8288be52f852973bc76317f5e7b3598878aee0beb8a33322c0e72c4a66c +"tinypool@npm:^1.0.0": + version: 1.0.0 + resolution: "tinypool@npm:1.0.0" + checksum: 10c0/71b20b9c54366393831c286a0772380c20f8cad9546d724c484edb47aea3228f274c58e98cf51d28c40869b39f5273209ef3ea94a9d2a23f8b292f4731cd3e4e languageName: node linkType: hard -"tinyspy@npm:^2.2.0": - version: 2.2.1 - resolution: "tinyspy@npm:2.2.1" - checksum: 10c0/0b4cfd07c09871e12c592dfa7b91528124dc49a4766a0b23350638c62e6a483d5a2a667de7e6282246c0d4f09996482ddaacbd01f0c05b7ed7e0f79d32409bdc +"tinyspy@npm:^3.0.0": + version: 3.0.0 + resolution: "tinyspy@npm:3.0.0" + checksum: 10c0/eb0dec264aa5370efd3d29743825eb115ed7f1ef8a72a431e9a75d5c9e7d67e99d04b0d61d86b8cd70c79ec27863f241ad0317bc453f78762e0cbd76d2c332d0 languageName: node linkType: hard @@ -18417,7 +18372,7 @@ __metadata: languageName: node linkType: hard -"type-detect@npm:4.0.8, type-detect@npm:^4.0.0, type-detect@npm:^4.0.8": +"type-detect@npm:4.0.8": version: 4.0.8 resolution: "type-detect@npm:4.0.8" checksum: 10c0/8fb9a51d3f365a7de84ab7f73b653534b61b622aa6800aecdb0f1095a4a646d3f5eb295322127b6573db7982afcd40ab492d038cf825a42093a58b1e1353e0bd @@ -18617,13 +18572,6 @@ __metadata: languageName: node linkType: hard -"ufo@npm:^1.5.3": - version: 1.5.3 - resolution: "ufo@npm:1.5.3" - checksum: 10c0/1df10702582aa74f4deac4486ecdfd660e74be057355f1afb6adfa14243476cf3d3acff734ccc3d0b74e9bfdefe91d578f3edbbb0a5b2430fe93cd672370e024 - languageName: node - linkType: hard - "unbox-primitive@npm:^1.0.2": version: 1.0.2 resolution: "unbox-primitive@npm:1.0.2" @@ -19032,18 +18980,18 @@ __metadata: languageName: node linkType: hard -"vite-node@npm:1.6.0": - version: 1.6.0 - resolution: "vite-node@npm:1.6.0" +"vite-node@npm:2.0.1": + version: 2.0.1 + resolution: "vite-node@npm:2.0.1" dependencies: cac: "npm:^6.7.14" - debug: "npm:^4.3.4" - pathe: "npm:^1.1.1" - picocolors: "npm:^1.0.0" + debug: "npm:^4.3.5" + pathe: "npm:^1.1.2" + picocolors: "npm:^1.0.1" vite: "npm:^5.0.0" bin: vite-node: vite-node.mjs - checksum: 10c0/0807e6501ac7763e0efa2b4bd484ce99fb207e92c98624c9f8999d1f6727ac026e457994260fa7fdb7060d87546d197081e46a705d05b0136a38b6f03715cbc2 + checksum: 10c0/c3a3196c17c1069f31aeb81dedbbf5d571fb362a24c3c170ada23271874a214184fcfc55a9a593483431dd862d0e1a8a115590e594666e50532c03f5680fd8e2 languageName: node linkType: hard @@ -19087,35 +19035,33 @@ __metadata: languageName: node linkType: hard -"vitest@npm:^1.6.0": - version: 1.6.0 - resolution: "vitest@npm:1.6.0" - dependencies: - "@vitest/expect": "npm:1.6.0" - "@vitest/runner": "npm:1.6.0" - "@vitest/snapshot": "npm:1.6.0" - "@vitest/spy": "npm:1.6.0" - "@vitest/utils": "npm:1.6.0" - acorn-walk: "npm:^8.3.2" - chai: "npm:^4.3.10" - debug: "npm:^4.3.4" +"vitest@npm:^2.0.1": + version: 2.0.1 + resolution: "vitest@npm:2.0.1" + dependencies: + "@ampproject/remapping": "npm:^2.3.0" + "@vitest/expect": "npm:2.0.1" + "@vitest/runner": "npm:2.0.1" + "@vitest/snapshot": "npm:2.0.1" + "@vitest/spy": "npm:2.0.1" + "@vitest/utils": "npm:2.0.1" + chai: "npm:^5.1.1" + debug: "npm:^4.3.5" execa: "npm:^8.0.1" - local-pkg: "npm:^0.5.0" - magic-string: "npm:^0.30.5" - pathe: "npm:^1.1.1" - picocolors: "npm:^1.0.0" - std-env: "npm:^3.5.0" - strip-literal: "npm:^2.0.0" - tinybench: "npm:^2.5.1" - tinypool: "npm:^0.8.3" + magic-string: "npm:^0.30.10" + pathe: "npm:^1.1.2" + picocolors: "npm:^1.0.1" + std-env: "npm:^3.7.0" + tinybench: "npm:^2.8.0" + tinypool: "npm:^1.0.0" vite: "npm:^5.0.0" - vite-node: "npm:1.6.0" + vite-node: "npm:2.0.1" why-is-node-running: "npm:^2.2.2" peerDependencies: "@edge-runtime/vm": "*" "@types/node": ^18.0.0 || >=20.0.0 - "@vitest/browser": 1.6.0 - "@vitest/ui": 1.6.0 + "@vitest/browser": 2.0.1 + "@vitest/ui": 2.0.1 happy-dom: "*" jsdom: "*" peerDependenciesMeta: @@ -19133,7 +19079,7 @@ __metadata: optional: true bin: vitest: vitest.mjs - checksum: 10c0/065da5b8ead51eb174d93dac0cd50042ca9539856dc25e340ea905d668c41961f7e00df3e388e6c76125b2c22091db2e8465f993d0f6944daf9598d549e562e7 + checksum: 10c0/c6bc72bb347880a2938e395ee127543aff366e030a21248f0389e1b894cae7856c9aae25c1764d4425ba9199a5376b3127cb61c47c67443f999ca0bd01895fc5 languageName: node linkType: hard