Fast and tiny JavaScript/TypeScript cron parser with timezone support
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

fix test on Deno

+243 -37
-2
package.json
··· 74 74 "@cloudflare/vitest-pool-workers": "^0.12.10", 75 75 "@types/node": "^25.2.2", 76 76 "@vitest/coverage-v8": "^3.2.4", 77 - "@vitest/ui": "^3.2.4", 78 77 "cron-parser": "^5.5.0", 79 78 "cron-schedule": "^6.0.0", 80 79 "cron-validate": "^1.5.3", ··· 85 84 "tsdown": "^0.20.3", 86 85 "tsx": "^4.21.0", 87 86 "typescript": "^5.9.3", 88 - "vite": "^7.3.1", 89 87 "vitest": "3.2.4" 90 88 }, 91 89 "packageManager": "pnpm@10.29.2"
+238 -30
pnpm-lock.yaml
··· 17 17 '@vitest/coverage-v8': 18 18 specifier: ^3.2.4 19 19 version: 3.2.4(vitest@3.2.4) 20 - '@vitest/ui': 21 - specifier: ^3.2.4 22 - version: 3.2.4(vitest@3.2.4) 23 20 cron-parser: 24 21 specifier: ^5.5.0 25 22 version: 5.5.0 ··· 43 40 version: 1.43.0 44 41 tsdown: 45 42 specifier: ^0.20.3 46 - version: 0.20.3(typescript@5.9.3) 43 + version: 0.20.3(oxc-resolver@11.17.1)(typescript@5.9.3) 47 44 tsx: 48 45 specifier: ^4.21.0 49 46 version: 4.21.0 50 47 typescript: 51 48 specifier: ^5.9.3 52 49 version: 5.9.3 53 - vite: 54 - specifier: ^7.3.1 55 - version: 7.3.1(@types/node@25.2.2)(tsx@4.21.0) 56 50 vitest: 57 51 specifier: 3.2.4 58 - version: 3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(tsx@4.21.0) 52 + version: 3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(jiti@2.6.1)(tsx@4.21.0) 59 53 60 54 packages: 61 55 ··· 663 657 '@oxc-project/types@0.112.0': 664 658 resolution: {integrity: sha512-m6RebKHIRsax2iCwVpYW2ErQwa4ywHJrE4sCK3/8JK8ZZAWOKXaRJFl/uP51gaVyyXlaS4+chU1nSCdzYf6QqQ==} 665 659 660 + '@oxc-resolver/binding-android-arm-eabi@11.17.1': 661 + resolution: {integrity: sha512-+VuZyMYYaap5uDAU1xDU3Kul0FekLqpBS8kI5JozlWfYQKnc/HsZg2gHPkQrj0SC9lt74WMNCfOzZZJlYXSdEQ==} 662 + cpu: [arm] 663 + os: [android] 664 + 665 + '@oxc-resolver/binding-android-arm64@11.17.1': 666 + resolution: {integrity: sha512-YlDDTjvOEKhom/cRSVsXsMVeXVIAM9PJ/x2mfe08rfuS0iIEfJd8PngKbEIhG72WPxleUa+vkEZj9ncmC14z3Q==} 667 + cpu: [arm64] 668 + os: [android] 669 + 670 + '@oxc-resolver/binding-darwin-arm64@11.17.1': 671 + resolution: {integrity: sha512-HOYYLSY4JDk14YkXaz/ApgJYhgDP4KsG8EZpgpOxdszGW9HmIMMY/vXqVKYW74dSH+GQkIXYxBrEh3nv+XODVg==} 672 + cpu: [arm64] 673 + os: [darwin] 674 + 675 + '@oxc-resolver/binding-darwin-x64@11.17.1': 676 + resolution: {integrity: sha512-JHPJbsa5HvPq2/RIdtGlqfaG9zV2WmgvHrKTYmlW0L5esqtKCBuetFudXTBzkNcyD69kSZLzH92AzTr6vFHMFg==} 677 + cpu: [x64] 678 + os: [darwin] 679 + 680 + '@oxc-resolver/binding-freebsd-x64@11.17.1': 681 + resolution: {integrity: sha512-UD1FRC8j8xZstFXYsXwQkNmmg7vUbee006IqxokwDUUA+xEgKZDpLhBEiVKM08Urb+bn7Q0gn6M1pyNR0ng5mg==} 682 + cpu: [x64] 683 + os: [freebsd] 684 + 685 + '@oxc-resolver/binding-linux-arm-gnueabihf@11.17.1': 686 + resolution: {integrity: sha512-wFWC1wyf2ROFWTxK5x0Enm++DSof3EBQ/ypyAesMDLiYxOOASDoMOZG1ylWUnlKaCt5W7eNOWOzABpdfFf/ssA==} 687 + cpu: [arm] 688 + os: [linux] 689 + 690 + '@oxc-resolver/binding-linux-arm-musleabihf@11.17.1': 691 + resolution: {integrity: sha512-k/hUif0GEBk/csSqCfTPXb8AAVs1NNWCa/skBghvNbTtORcWfOVqJ3mM+2pE189+enRm4UnryLREu5ysI0kXEQ==} 692 + cpu: [arm] 693 + os: [linux] 694 + 695 + '@oxc-resolver/binding-linux-arm64-gnu@11.17.1': 696 + resolution: {integrity: sha512-Cwm6A071ww60QouJ9LoHAwBgEoZzHQ0Qaqk2E7WLfBdiQN9mLXIDhnrpn04hlRElRPhLiu/dtg+o5PPLvaINXQ==} 697 + cpu: [arm64] 698 + os: [linux] 699 + libc: [glibc] 700 + 701 + '@oxc-resolver/binding-linux-arm64-musl@11.17.1': 702 + resolution: {integrity: sha512-+hwlE2v3m0r3sk93SchJL1uyaKcPjf+NGO/TD2DZUDo+chXx7FfaEj0nUMewigSt7oZ2sQN9Z4NJOtUa75HE5Q==} 703 + cpu: [arm64] 704 + os: [linux] 705 + libc: [musl] 706 + 707 + '@oxc-resolver/binding-linux-ppc64-gnu@11.17.1': 708 + resolution: {integrity: sha512-bO+rsaE5Ox8cFyeL5Ct5tzot1TnQpFa/Wmu5k+hqBYSH2dNVDGoi0NizBN5QV8kOIC6O5MZr81UG4yW/2FyDTA==} 709 + cpu: [ppc64] 710 + os: [linux] 711 + libc: [glibc] 712 + 713 + '@oxc-resolver/binding-linux-riscv64-gnu@11.17.1': 714 + resolution: {integrity: sha512-B/P+hxKQ1oX4YstI9Lyh4PGzqB87Ddqj/A4iyRBbPdXTcxa+WW3oRLx1CsJKLmHPdDk461Hmbghq1Bm3pl+8Aw==} 715 + cpu: [riscv64] 716 + os: [linux] 717 + libc: [glibc] 718 + 719 + '@oxc-resolver/binding-linux-riscv64-musl@11.17.1': 720 + resolution: {integrity: sha512-ulp2H3bFXzd/th2maH+QNKj5qgOhJ3v9Yspdf1svTw3CDOuuTl6sRKsWQ7MUw0vnkSNvQndtflBwVXgzZvURsQ==} 721 + cpu: [riscv64] 722 + os: [linux] 723 + libc: [musl] 724 + 725 + '@oxc-resolver/binding-linux-s390x-gnu@11.17.1': 726 + resolution: {integrity: sha512-LAXYVe3rKk09Zo9YKF2ZLBcH8sz8Oj+JIyiUxiHtq0hiYLMsN6dOpCf2hzQEjPAmsSEA/hdC1PVKeXo+oma8mQ==} 727 + cpu: [s390x] 728 + os: [linux] 729 + libc: [glibc] 730 + 731 + '@oxc-resolver/binding-linux-x64-gnu@11.17.1': 732 + resolution: {integrity: sha512-3RAhxipMKE8RCSPn7O//sj440i+cYTgYbapLeOoDvQEt6R1QcJjTsFgI4iz99FhVj3YbPxlZmcLB5VW+ipyRTA==} 733 + cpu: [x64] 734 + os: [linux] 735 + libc: [glibc] 736 + 737 + '@oxc-resolver/binding-linux-x64-musl@11.17.1': 738 + resolution: {integrity: sha512-wpjMEubGU8r9VjZTLdZR3aPHaBqTl8Jl8F4DBbgNoZ+yhkhQD1/MGvY70v2TLnAI6kAHSvcqgfvaqKDa2iWsPQ==} 739 + cpu: [x64] 740 + os: [linux] 741 + libc: [musl] 742 + 743 + '@oxc-resolver/binding-openharmony-arm64@11.17.1': 744 + resolution: {integrity: sha512-XIE4w17RYAVIgx+9Gs3deTREq5tsmalbatYOOBGNdH7n0DfTE600c7wYXsp7ANc3BPDXsInnOzXDEPCvO1F6cg==} 745 + cpu: [arm64] 746 + os: [openharmony] 747 + 748 + '@oxc-resolver/binding-wasm32-wasi@11.17.1': 749 + resolution: {integrity: sha512-Lqi5BlHX3zS4bpSOkIbOKVf7DIk6Gvmdifr2OuOI58eUUyP944M8/OyaB09cNpPy9Vukj7nmmhOzj8pwLgAkIg==} 750 + engines: {node: '>=14.0.0'} 751 + cpu: [wasm32] 752 + 753 + '@oxc-resolver/binding-win32-arm64-msvc@11.17.1': 754 + resolution: {integrity: sha512-l6lTcLBQVj1HNquFpXSsrkCIM8X5Hlng5YNQJrg00z/KyovvDV5l3OFhoRyZ+aLBQ74zUnMRaJZC7xcBnHyeNg==} 755 + cpu: [arm64] 756 + os: [win32] 757 + 758 + '@oxc-resolver/binding-win32-ia32-msvc@11.17.1': 759 + resolution: {integrity: sha512-VTzVtfnCCsU/6GgvursWoyZrhe3Gj/RyXzDWmh4/U1Y3IW0u1FZbp+hCIlBL16pRPbDc5YvXVtCOnA41QOrOoQ==} 760 + cpu: [ia32] 761 + os: [win32] 762 + 763 + '@oxc-resolver/binding-win32-x64-msvc@11.17.1': 764 + resolution: {integrity: sha512-jRPVU+6/12baj87q2+UGRh30FBVBzqKdJ7rP/mSqiL1kpNQB9yZ1j0+m3sru1m+C8hiFK7lBFwjUtYUBI7+UpQ==} 765 + cpu: [x64] 766 + os: [win32] 767 + 666 768 '@oxfmt/darwin-arm64@0.28.0': 667 769 resolution: {integrity: sha512-jmUfF7cNJPw57bEK7sMIqrYRgn4LH428tSgtgLTCtjuGuu1ShREyrkeB7y8HtkXRfhBs4lVY+HMLhqElJvZ6ww==} 668 770 cpu: [arm64] ··· 1297 1399 jackspeak@3.4.3: 1298 1400 resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} 1299 1401 1402 + jiti@2.6.1: 1403 + resolution: {integrity: sha512-ekilCSN1jwRvIbgeg/57YFh8qQDNbwDb9xT/qu2DAHbFFZUicIl4ygVaAvzveMhMVr3LnpSKTNnwt8PoOfmKhQ==} 1404 + hasBin: true 1405 + 1300 1406 js-tokens@10.0.0: 1301 1407 resolution: {integrity: sha512-lM/UBzQmfJRo9ABXbPWemivdCW8V2G8FHaHdypQaIy523snUjog0W71ayWXTjiR+ixeMyVHN2XcpnTd/liPg/Q==} 1302 1408 ··· 1359 1465 1360 1466 obug@2.1.1: 1361 1467 resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} 1468 + 1469 + oxc-resolver@11.17.1: 1470 + resolution: {integrity: sha512-pyRXK9kH81zKlirHufkFhOFBZRks8iAMLwPH8gU7lvKFiuzUH9L8MxDEllazwOb8fjXMcWjY1PMDfMJ2/yh5cw==} 1362 1471 1363 1472 oxfmt@0.28.0: 1364 1473 resolution: {integrity: sha512-3+hhBqPE6Kp22KfJmnstrZbl+KdOVSEu1V0ABaFIg1rYLtrMgrupx9znnHgHLqKxAVHebjTdiCJDk30CXOt6cw==} ··· 1813 1922 cjs-module-lexer: 1.4.3 1814 1923 esbuild: 0.27.0 1815 1924 miniflare: 4.20260205.0 1816 - vitest: 3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(tsx@4.21.0) 1925 + vitest: 3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(jiti@2.6.1)(tsx@4.21.0) 1817 1926 wrangler: 4.63.0 1818 1927 transitivePeerDependencies: 1819 1928 - '@cloudflare/workers-types' ··· 2146 2255 2147 2256 '@oxc-project/types@0.112.0': {} 2148 2257 2258 + '@oxc-resolver/binding-android-arm-eabi@11.17.1': 2259 + optional: true 2260 + 2261 + '@oxc-resolver/binding-android-arm64@11.17.1': 2262 + optional: true 2263 + 2264 + '@oxc-resolver/binding-darwin-arm64@11.17.1': 2265 + optional: true 2266 + 2267 + '@oxc-resolver/binding-darwin-x64@11.17.1': 2268 + optional: true 2269 + 2270 + '@oxc-resolver/binding-freebsd-x64@11.17.1': 2271 + optional: true 2272 + 2273 + '@oxc-resolver/binding-linux-arm-gnueabihf@11.17.1': 2274 + optional: true 2275 + 2276 + '@oxc-resolver/binding-linux-arm-musleabihf@11.17.1': 2277 + optional: true 2278 + 2279 + '@oxc-resolver/binding-linux-arm64-gnu@11.17.1': 2280 + optional: true 2281 + 2282 + '@oxc-resolver/binding-linux-arm64-musl@11.17.1': 2283 + optional: true 2284 + 2285 + '@oxc-resolver/binding-linux-ppc64-gnu@11.17.1': 2286 + optional: true 2287 + 2288 + '@oxc-resolver/binding-linux-riscv64-gnu@11.17.1': 2289 + optional: true 2290 + 2291 + '@oxc-resolver/binding-linux-riscv64-musl@11.17.1': 2292 + optional: true 2293 + 2294 + '@oxc-resolver/binding-linux-s390x-gnu@11.17.1': 2295 + optional: true 2296 + 2297 + '@oxc-resolver/binding-linux-x64-gnu@11.17.1': 2298 + optional: true 2299 + 2300 + '@oxc-resolver/binding-linux-x64-musl@11.17.1': 2301 + optional: true 2302 + 2303 + '@oxc-resolver/binding-openharmony-arm64@11.17.1': 2304 + optional: true 2305 + 2306 + '@oxc-resolver/binding-wasm32-wasi@11.17.1': 2307 + dependencies: 2308 + '@napi-rs/wasm-runtime': 1.1.1 2309 + optional: true 2310 + 2311 + '@oxc-resolver/binding-win32-arm64-msvc@11.17.1': 2312 + optional: true 2313 + 2314 + '@oxc-resolver/binding-win32-ia32-msvc@11.17.1': 2315 + optional: true 2316 + 2317 + '@oxc-resolver/binding-win32-x64-msvc@11.17.1': 2318 + optional: true 2319 + 2149 2320 '@oxfmt/darwin-arm64@0.28.0': 2150 2321 optional: true 2151 2322 ··· 2197 2368 '@pkgjs/parseargs@0.11.0': 2198 2369 optional: true 2199 2370 2200 - '@polka/url@1.0.0-next.29': {} 2371 + '@polka/url@1.0.0-next.29': 2372 + optional: true 2201 2373 2202 2374 '@poppinss/colors@4.1.6': 2203 2375 dependencies: ··· 2372 2544 std-env: 3.10.0 2373 2545 test-exclude: 7.0.1 2374 2546 tinyrainbow: 2.0.0 2375 - vitest: 3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(tsx@4.21.0) 2547 + vitest: 3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(jiti@2.6.1)(tsx@4.21.0) 2376 2548 transitivePeerDependencies: 2377 2549 - supports-color 2378 2550 ··· 2384 2556 chai: 5.3.3 2385 2557 tinyrainbow: 2.0.0 2386 2558 2387 - '@vitest/mocker@3.2.4(vite@7.3.1(@types/node@25.2.2)(tsx@4.21.0))': 2559 + '@vitest/mocker@3.2.4(vite@7.3.1(@types/node@25.2.2)(jiti@2.6.1)(tsx@4.21.0))': 2388 2560 dependencies: 2389 2561 '@vitest/spy': 3.2.4 2390 2562 estree-walker: 3.0.3 2391 2563 magic-string: 0.30.21 2392 2564 optionalDependencies: 2393 - vite: 7.3.1(@types/node@25.2.2)(tsx@4.21.0) 2565 + vite: 7.3.1(@types/node@25.2.2)(jiti@2.6.1)(tsx@4.21.0) 2394 2566 2395 2567 '@vitest/pretty-format@3.2.4': 2396 2568 dependencies: ··· 2436 2608 sirv: 3.0.2 2437 2609 tinyglobby: 0.2.15 2438 2610 tinyrainbow: 2.0.0 2439 - vitest: 3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(tsx@4.21.0) 2611 + vitest: 3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(jiti@2.6.1)(tsx@4.21.0) 2612 + optional: true 2440 2613 2441 2614 '@vitest/utils@3.2.4': 2442 2615 dependencies: ··· 2535 2708 2536 2709 detect-libc@2.1.2: {} 2537 2710 2538 - dts-resolver@2.1.3: {} 2711 + dts-resolver@2.1.3(oxc-resolver@11.17.1): 2712 + optionalDependencies: 2713 + oxc-resolver: 11.17.1 2539 2714 2540 2715 eastasianwidth@0.2.0: {} 2541 2716 ··· 2617 2792 optionalDependencies: 2618 2793 picomatch: 4.0.3 2619 2794 2620 - fflate@0.8.2: {} 2795 + fflate@0.8.2: 2796 + optional: true 2621 2797 2622 - flatted@3.3.3: {} 2798 + flatted@3.3.3: 2799 + optional: true 2623 2800 2624 2801 foreground-child@3.3.1: 2625 2802 dependencies: ··· 2681 2858 optionalDependencies: 2682 2859 '@pkgjs/parseargs': 0.11.0 2683 2860 2861 + jiti@2.6.1: 2862 + optional: true 2863 + 2684 2864 js-tokens@10.0.0: {} 2685 2865 2686 2866 js-tokens@9.0.1: {} ··· 2727 2907 2728 2908 minipass@7.1.2: {} 2729 2909 2730 - mrmime@2.0.1: {} 2910 + mrmime@2.0.1: 2911 + optional: true 2731 2912 2732 2913 ms@2.1.3: {} 2733 2914 ··· 2735 2916 2736 2917 obug@2.1.1: {} 2737 2918 2919 + oxc-resolver@11.17.1: 2920 + optionalDependencies: 2921 + '@oxc-resolver/binding-android-arm-eabi': 11.17.1 2922 + '@oxc-resolver/binding-android-arm64': 11.17.1 2923 + '@oxc-resolver/binding-darwin-arm64': 11.17.1 2924 + '@oxc-resolver/binding-darwin-x64': 11.17.1 2925 + '@oxc-resolver/binding-freebsd-x64': 11.17.1 2926 + '@oxc-resolver/binding-linux-arm-gnueabihf': 11.17.1 2927 + '@oxc-resolver/binding-linux-arm-musleabihf': 11.17.1 2928 + '@oxc-resolver/binding-linux-arm64-gnu': 11.17.1 2929 + '@oxc-resolver/binding-linux-arm64-musl': 11.17.1 2930 + '@oxc-resolver/binding-linux-ppc64-gnu': 11.17.1 2931 + '@oxc-resolver/binding-linux-riscv64-gnu': 11.17.1 2932 + '@oxc-resolver/binding-linux-riscv64-musl': 11.17.1 2933 + '@oxc-resolver/binding-linux-s390x-gnu': 11.17.1 2934 + '@oxc-resolver/binding-linux-x64-gnu': 11.17.1 2935 + '@oxc-resolver/binding-linux-x64-musl': 11.17.1 2936 + '@oxc-resolver/binding-openharmony-arm64': 11.17.1 2937 + '@oxc-resolver/binding-wasm32-wasi': 11.17.1 2938 + '@oxc-resolver/binding-win32-arm64-msvc': 11.17.1 2939 + '@oxc-resolver/binding-win32-ia32-msvc': 11.17.1 2940 + '@oxc-resolver/binding-win32-x64-msvc': 11.17.1 2941 + optional: true 2942 + 2738 2943 oxfmt@0.28.0: 2739 2944 dependencies: 2740 2945 tinypool: 2.1.0 ··· 2790 2995 2791 2996 resolve-pkg-maps@1.0.0: {} 2792 2997 2793 - rolldown-plugin-dts@0.22.1(rolldown@1.0.0-rc.3)(typescript@5.9.3): 2998 + rolldown-plugin-dts@0.22.1(oxc-resolver@11.17.1)(rolldown@1.0.0-rc.3)(typescript@5.9.3): 2794 2999 dependencies: 2795 3000 '@babel/generator': 8.0.0-rc.1 2796 3001 '@babel/helper-validator-identifier': 8.0.0-rc.1 ··· 2798 3003 '@babel/types': 8.0.0-rc.1 2799 3004 ast-kit: 3.0.0-beta.1 2800 3005 birpc: 4.0.0 2801 - dts-resolver: 2.1.3 3006 + dts-resolver: 2.1.3(oxc-resolver@11.17.1) 2802 3007 get-tsconfig: 4.13.1 2803 3008 obug: 2.1.1 2804 3009 rolldown: 1.0.0-rc.3 ··· 2905 3110 '@polka/url': 1.0.0-next.29 2906 3111 mrmime: 2.0.1 2907 3112 totalist: 3.0.1 3113 + optional: true 2908 3114 2909 3115 source-map-js@1.2.1: {} 2910 3116 ··· 2973 3179 2974 3180 toposort@2.0.2: {} 2975 3181 2976 - totalist@3.0.1: {} 3182 + totalist@3.0.1: 3183 + optional: true 2977 3184 2978 3185 tree-kill@1.2.2: {} 2979 3186 2980 - tsdown@0.20.3(typescript@5.9.3): 3187 + tsdown@0.20.3(oxc-resolver@11.17.1)(typescript@5.9.3): 2981 3188 dependencies: 2982 3189 ansis: 4.2.0 2983 3190 cac: 6.7.14 ··· 2988 3195 obug: 2.1.1 2989 3196 picomatch: 4.0.3 2990 3197 rolldown: 1.0.0-rc.3 2991 - rolldown-plugin-dts: 0.22.1(rolldown@1.0.0-rc.3)(typescript@5.9.3) 3198 + rolldown-plugin-dts: 0.22.1(oxc-resolver@11.17.1)(rolldown@1.0.0-rc.3)(typescript@5.9.3) 2992 3199 semver: 7.7.3 2993 3200 tinyexec: 1.0.2 2994 3201 tinyglobby: 0.2.15 ··· 3035 3242 dependencies: 3036 3243 rolldown: 1.0.0-rc.3 3037 3244 3038 - vite-node@3.2.4(@types/node@25.2.2)(tsx@4.21.0): 3245 + vite-node@3.2.4(@types/node@25.2.2)(jiti@2.6.1)(tsx@4.21.0): 3039 3246 dependencies: 3040 3247 cac: 6.7.14 3041 3248 debug: 4.4.3 3042 3249 es-module-lexer: 1.7.0 3043 3250 pathe: 2.0.3 3044 - vite: 7.3.1(@types/node@25.2.2)(tsx@4.21.0) 3251 + vite: 7.3.1(@types/node@25.2.2)(jiti@2.6.1)(tsx@4.21.0) 3045 3252 transitivePeerDependencies: 3046 3253 - '@types/node' 3047 3254 - jiti ··· 3056 3263 - tsx 3057 3264 - yaml 3058 3265 3059 - vite@7.3.1(@types/node@25.2.2)(tsx@4.21.0): 3266 + vite@7.3.1(@types/node@25.2.2)(jiti@2.6.1)(tsx@4.21.0): 3060 3267 dependencies: 3061 3268 esbuild: 0.27.3 3062 3269 fdir: 6.5.0(picomatch@4.0.3) ··· 3067 3274 optionalDependencies: 3068 3275 '@types/node': 25.2.2 3069 3276 fsevents: 2.3.3 3277 + jiti: 2.6.1 3070 3278 tsx: 4.21.0 3071 3279 3072 - vitest@3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(tsx@4.21.0): 3280 + vitest@3.2.4(@types/node@25.2.2)(@vitest/ui@3.2.4)(jiti@2.6.1)(tsx@4.21.0): 3073 3281 dependencies: 3074 3282 '@types/chai': 5.2.3 3075 3283 '@vitest/expect': 3.2.4 3076 - '@vitest/mocker': 3.2.4(vite@7.3.1(@types/node@25.2.2)(tsx@4.21.0)) 3284 + '@vitest/mocker': 3.2.4(vite@7.3.1(@types/node@25.2.2)(jiti@2.6.1)(tsx@4.21.0)) 3077 3285 '@vitest/pretty-format': 3.2.4 3078 3286 '@vitest/runner': 3.2.4 3079 3287 '@vitest/snapshot': 3.2.4 ··· 3091 3299 tinyglobby: 0.2.15 3092 3300 tinypool: 1.1.1 3093 3301 tinyrainbow: 2.0.0 3094 - vite: 7.3.1(@types/node@25.2.2)(tsx@4.21.0) 3095 - vite-node: 3.2.4(@types/node@25.2.2)(tsx@4.21.0) 3302 + vite: 7.3.1(@types/node@25.2.2)(jiti@2.6.1)(tsx@4.21.0) 3303 + vite-node: 3.2.4(@types/node@25.2.2)(jiti@2.6.1)(tsx@4.21.0) 3096 3304 why-is-node-running: 2.3.0 3097 3305 optionalDependencies: 3098 3306 '@types/node': 25.2.2
+5 -5
test/scheduler.test.ts
··· 1335 1335 const runs = nextRuns("0 0 15 * 1", 5, { from }); 1336 1336 1337 1337 // Should get: Feb 2 (Mon), Feb 9 (Mon), Feb 15 (Sun, day 15), Feb 16 (Mon), Feb 23 (Mon) 1338 - expect(runs[0].toDateString()).toBe("Mon Feb 02 2026"); 1339 - expect(runs[1].toDateString()).toBe("Mon Feb 09 2026"); 1340 - expect(runs[2].toDateString()).toBe("Sun Feb 15 2026"); // Day 15 1341 - expect(runs[3].toDateString()).toBe("Mon Feb 16 2026"); 1342 - expect(runs[4].toDateString()).toBe("Mon Feb 23 2026"); 1338 + expect(runs[0].toISOString()).toBe("2026-02-02T00:00:00.000Z"); 1339 + expect(runs[1].toISOString()).toBe("2026-02-09T00:00:00.000Z"); 1340 + expect(runs[2].toISOString()).toBe("2026-02-15T00:00:00.000Z"); 1341 + expect(runs[3].toISOString()).toBe("2026-02-16T00:00:00.000Z"); 1342 + expect(runs[4].toISOString()).toBe("2026-02-23T00:00:00.000Z"); 1343 1343 }); 1344 1344 1345 1345 it("should treat explicit all weekdays (0-6) as restricted, not wildcard", () => {