From 496cc7d1481a37e834e7bbddd982acf6bb0b1de0 Mon Sep 17 00:00:00 2001 From: daiwei Date: Wed, 9 Jul 2025 16:13:52 +0800 Subject: [PATCH 1/5] chore: upgrade rolldown to latest --- package.json | 6 +- pnpm-lock.yaml | 483 +++++++++++++++++++++--------- rollup.dts.config.js | 3 +- scripts/build.js | 13 +- scripts/create-rolldown-config.js | 3 - scripts/inline-enums.js | 45 +-- 6 files changed, 372 insertions(+), 181 deletions(-) diff --git a/package.json b/package.json index 93463fded7c..6f2218efbd1 100644 --- a/package.json +++ b/package.json @@ -94,15 +94,15 @@ "markdown-table": "^3.0.4", "marked": "13.0.3", "npm-run-all2": "^7.0.1", - "oxc-parser": "^0.35.0", - "oxc-transform": "^0.35.0", + "oxc-parser": "^0.76.0", + "oxc-transform": "^0.76.0", "picocolors": "^1.1.1", "prettier": "^3.3.3", "pretty-bytes": "^6.1.1", "pug": "^3.0.3", "puppeteer": "~23.3.0", "rimraf": "^6.0.1", - "rolldown": "0.14.0-snapshot-d5e797b-20241114003621", + "rolldown": "1.0.0-beta.24", "rollup": "^4.25.0", "rollup-plugin-dts": "^6.1.1", "rollup-plugin-esbuild": "^6.1.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index dfaf1a9a59e..4bcb657a78d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -123,11 +123,11 @@ importers: specifier: ^7.0.1 version: 7.0.1 oxc-parser: - specifier: ^0.35.0 - version: 0.35.0 + specifier: ^0.76.0 + version: 0.76.0 oxc-transform: - specifier: ^0.35.0 - version: 0.35.0 + specifier: ^0.76.0 + version: 0.76.0 picocolors: specifier: ^1.1.1 version: 1.1.1 @@ -147,8 +147,8 @@ importers: specifier: ^6.0.1 version: 6.0.1 rolldown: - specifier: 0.14.0-snapshot-d5e797b-20241114003621 - version: 0.14.0-snapshot-d5e797b-20241114003621 + specifier: 1.0.0-beta.24 + version: 1.0.0-beta.24 rollup: specifier: ^4.25.0 version: 4.25.0 @@ -500,14 +500,14 @@ packages: conventional-commits-parser: optional: true - '@emnapi/core@1.3.1': - resolution: {integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==} + '@emnapi/core@1.4.4': + resolution: {integrity: sha512-A9CnAbC6ARNMKcIcrQwq6HeHCjpcBZ5wSx4U01WXCqEKlrzB9F9315WDNHkrs2xbx7YjjSxbUYxuN6EQzpcY2g==} - '@emnapi/runtime@1.3.1': - resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==} + '@emnapi/runtime@1.4.4': + resolution: {integrity: sha512-hHyapA4A3gPaDCNfiqyZUStTMqIkKRshqPIuDOXv1hcBnD4U3l8cP0T1HMCfGRxQ6V64TGCcoswChANyOAwbQg==} - '@emnapi/wasi-threads@1.0.1': - resolution: {integrity: sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==} + '@emnapi/wasi-threads@1.0.3': + resolution: {integrity: sha512-8K5IFFsQqF9wQNJptGbS6FNKgUTsSRYnTqNCG1vPP8jFdjSv18n2mQfJpkt2Oibo9iBEzcDnDxNwKTzC7svlJw==} '@esbuild/aix-ppc64@0.21.5': resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==} @@ -882,8 +882,8 @@ packages: '@jspm/core@2.0.1': resolution: {integrity: sha512-Lg3PnLp0QXpxwLIAuuJboLeRaIhrgJjeuh797QADg3xz8wGLugQOS5DpsE8A6i6Adgzf+bacllkKZG3J0tGfDw==} - '@napi-rs/wasm-runtime@0.2.5': - resolution: {integrity: sha512-kwUxR7J9WLutBbulqg1dfOrMTwhMdXLdcGUhcbCcGwnPLt3gz19uHVdwH1syKVDbE022ZS2vZxOWflFLS0YTjw==} + '@napi-rs/wasm-runtime@0.2.11': + resolution: {integrity: sha512-9DPkXtvHydrcOsopiYpUgPHpmj0HWZKMUnL2dZqpvC42lsratuBG06V5ipyno0fUek5VlFsNQ+AcFATSrJXgMA==} '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} @@ -897,86 +897,191 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} - '@oxc-parser/binding-darwin-arm64@0.35.0': - resolution: {integrity: sha512-2SSWMTMlrW8Ljcvgi0BOWr3Na6IX0Y9JYRRf4irV2OR9ZMGq1AcnK65ujMYE+w+zOfgqRKXVanz8vz6ii1bEmw==} + '@oxc-parser/binding-android-arm64@0.76.0': + resolution: {integrity: sha512-1XJW/16CDmF5bHE7LAyPPmEEVnxSadDgdJz+xiLqBrmC4lfAeuAfRw3HlOygcPGr+AJsbD4Z5sFJMkwjbSZlQg==} + engines: {node: '>=20.0.0'} + cpu: [arm64] + os: [android] + + '@oxc-parser/binding-darwin-arm64@0.76.0': + resolution: {integrity: sha512-yoQwSom8xsB+JdGsPUU0xxmxLKiF2kdlrK7I56WtGKZilixuBf/TmOwNYJYLRWkBoW5l2/pDZOhBm2luwmLiLw==} + engines: {node: '>=20.0.0'} cpu: [arm64] os: [darwin] - '@oxc-parser/binding-darwin-x64@0.35.0': - resolution: {integrity: sha512-q0p/DCz74/9pCZlzGgYw5nC11p2ilImq6XFCOsBOWDdAcB5FFEFO8dyLBxiWgKzXZW+B+FoAJQAGV3UPswx8Jw==} + '@oxc-parser/binding-darwin-x64@0.76.0': + resolution: {integrity: sha512-uRIopPLvr3pf2Xj7f5LKyCuqzIU6zOS+zEIR8UDYhcgJyZHnvBkfrYnfcztyIcrGdQehrFUi3uplmI09E7RdiQ==} + engines: {node: '>=20.0.0'} cpu: [x64] os: [darwin] - '@oxc-parser/binding-linux-arm64-gnu@0.35.0': - resolution: {integrity: sha512-MzSTS1nsYhuXHXaZvrKDFXGpUA5UOKFTb30kFVpRLmzunE3Rhp4BeT6aQib64oJBevuI+7OYE14p/CmfgOiavw==} + '@oxc-parser/binding-freebsd-x64@0.76.0': + resolution: {integrity: sha512-a0EOFvnOd2FqmDSvH6uWLROSlU6KV/JDKbsYDA/zRLyKcG6HCsmFnPsp8iV7/xr9WMbNgyJi6R5IMpePQlUq7Q==} + engines: {node: '>=20.0.0'} + cpu: [x64] + os: [freebsd] + + '@oxc-parser/binding-linux-arm-gnueabihf@0.76.0': + resolution: {integrity: sha512-ikRYDHL3fOdZwfJKmcdqjlLgkeNZ3Ez0qM8wAev5zlHZ+lY/Ig7qG5SCqPlvuTu+nNQ6zrFFaKvvt69EBKXU/g==} + engines: {node: '>=20.0.0'} + cpu: [arm] + os: [linux] + + '@oxc-parser/binding-linux-arm-musleabihf@0.76.0': + resolution: {integrity: sha512-dtRv5J5MRCLR7x39K8ufIIW4svIc7gYFUaI0YFXmmeOBhK/K2t/CkguPnDroKtsmXIPHDRtmJ1JJYzNcgJl6Wg==} + engines: {node: '>=20.0.0'} + cpu: [arm] + os: [linux] + + '@oxc-parser/binding-linux-arm64-gnu@0.76.0': + resolution: {integrity: sha512-IE4iiiggFH2snagQxHrY5bv6dDpRMMat+vdlMN/ibonA65eOmRLp8VLTXnDiNrcla/itJ1L9qGABHNKU+SnE8g==} + engines: {node: '>=20.0.0'} cpu: [arm64] os: [linux] - '@oxc-parser/binding-linux-arm64-musl@0.35.0': - resolution: {integrity: sha512-5WoOYIwE7/HN0IjGMToylXKclvczKM19R1ecbVFsYtKbuj7S6aXkP37x02njA+1DLtTRYv2TySxZjRrov+JFZg==} + '@oxc-parser/binding-linux-arm64-musl@0.76.0': + resolution: {integrity: sha512-wi9zQPMDHrBuRuT7Iurfidc9qlZh7cKa5vfYzOWNBCaqJdgxmNOFzvYen02wVUxSWGKhpiPHxrPX0jdRyJ8Npg==} + engines: {node: '>=20.0.0'} cpu: [arm64] os: [linux] - '@oxc-parser/binding-linux-x64-gnu@0.35.0': - resolution: {integrity: sha512-wLtbsco7oRAjQH6LZ10jChW0R4l/UrYtr2lOTv2uvguZ/Xtab8xbKV3J+i/ct3XyuPo05W9Z3gBeJVePV/4xHw==} + '@oxc-parser/binding-linux-riscv64-gnu@0.76.0': + resolution: {integrity: sha512-0tqqu1pqPee2lLGY8vtYlX1L415fFn89e0a3yp4q5N9f03j1rRs0R31qesTm3bt/UK8HYjECZ+56FCVPs2MEMQ==} + engines: {node: '>=20.0.0'} + cpu: [riscv64] + os: [linux] + + '@oxc-parser/binding-linux-s390x-gnu@0.76.0': + resolution: {integrity: sha512-y36Hh1a5TA+oIGtlc8lT7N9vdHXBlhBetQJW0p457KbiVQ7jF7AZkaPWhESkjHWAsTVKD2OjCa9ZqfaqhSI0FQ==} + engines: {node: '>=20.0.0'} + cpu: [s390x] + os: [linux] + + '@oxc-parser/binding-linux-x64-gnu@0.76.0': + resolution: {integrity: sha512-7/acaG9htovp3gp/J0kHgbItQTuHctl+rbqPPqZ9DRBYTz8iV8kv3QN8t8Or8i/hOmOjfZp9McDoSU1duoR4/A==} + engines: {node: '>=20.0.0'} cpu: [x64] os: [linux] - '@oxc-parser/binding-linux-x64-musl@0.35.0': - resolution: {integrity: sha512-DdqhCOm1uvHG3qCijQsdmGzVkGSQiVp5/576+01gvtIB1Xi72zJpo0d5Aoz/Ef262b+YkRJ23UncBMv2IWNLRQ==} + '@oxc-parser/binding-linux-x64-musl@0.76.0': + resolution: {integrity: sha512-AxFt0reY6Q2rfudABmMTFGR8tFFr58NlH2rRBQgcj+F+iEwgJ+jMwAPhXd2y1I2zaI8GspuahedUYQinqxWqjA==} + engines: {node: '>=20.0.0'} cpu: [x64] os: [linux] - '@oxc-parser/binding-win32-arm64-msvc@0.35.0': - resolution: {integrity: sha512-a+DgOdXBKvsNRHi0ohJViuGXUCKVYM5VWC77QEbScuDz5kM0VoAobCxOgaqW90xk0ASqL5U9MS/C0c0e17LZ3A==} + '@oxc-parser/binding-wasm32-wasi@0.76.0': + resolution: {integrity: sha512-wHdkHdhf6AWBoO8vs5cpoR6zEFY1rB+fXWtq6j/xb9j/lu1evlujRVMkh8IM/M/pOUIrNkna3nzST/mRImiveQ==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@oxc-parser/binding-win32-arm64-msvc@0.76.0': + resolution: {integrity: sha512-G7ZlEWcb2hNwCK3qalzqJoyB6HaTigQ/GEa7CU8sAJ/WwMdG/NnPqiC9IqpEAEy1ARSo4XMALfKbKNuqbSs5mg==} + engines: {node: '>=20.0.0'} cpu: [arm64] os: [win32] - '@oxc-parser/binding-win32-x64-msvc@0.35.0': - resolution: {integrity: sha512-Rm0CRpvsGLJI8++o06Fmz09Nza6vkzluOJj3Bye4DwqKcr4kLA+L/f+TyfiOZrzy9I9J9H8zM7C2UMdU0ws8/g==} + '@oxc-parser/binding-win32-x64-msvc@0.76.0': + resolution: {integrity: sha512-0jLzzmnu8/mqNhKBnNS2lFUbPEzRdj5ReiZwHGHpjma0+ullmmwP2AqSEqx3ssHDK9CpcEMdKOK2LsbCfhHKIA==} + engines: {node: '>=20.0.0'} cpu: [x64] os: [win32] - '@oxc-project/types@0.35.0': - resolution: {integrity: sha512-IM45j7X1wrbu5xDXtrqbQRkQSsTxKZOCaw6OujjBGItICRKvFE6VGq21czpgKUwDIH0BqTQlFabCbt+d1/7v2A==} + '@oxc-project/runtime@0.75.1': + resolution: {integrity: sha512-UH07DRi7xXqAsJ/sFbJJg0liIXnapB6P5uADXIiF1s6WQjZzcTIkKHca0s522QVxmijPxVX5ijCYxSr7eSq5CQ==} + engines: {node: '>=6.9.0'} + + '@oxc-project/types@0.75.1': + resolution: {integrity: sha512-7ZJy+51qWpZRvynaQUezeYfjCtaSdiXIWFUZIlOuTSfDXpXqnSl/m1IUPLx6XrOy6s0SFv3CLE14vcZy63bz7g==} + + '@oxc-project/types@0.76.0': + resolution: {integrity: sha512-CH3THIrSViKal8yV/Wh3FK0pFhp40nzW1MUDCik9fNuid2D/7JJXKJnfFOAvMxInGXDlvmgT6ACAzrl47TqzkQ==} - '@oxc-transform/binding-darwin-arm64@0.35.0': - resolution: {integrity: sha512-oh+L/TM7/u3A1qIlFz2hEW0LIVPdhgK+dGAgnyDCOaXqP0P45MgkklbTF+lSAXkv5PgpvNmrnocu4j1mjswskA==} + '@oxc-transform/binding-android-arm64@0.76.0': + resolution: {integrity: sha512-NjYRsQrBUJz1elPWXY8u6VRr2YlegRS+1fDTvxnofelIXcZbP6Klp9kR7FnOKFvT4nHMF42M6TtOwpt75noW7A==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [android] + + '@oxc-transform/binding-darwin-arm64@0.76.0': + resolution: {integrity: sha512-Sq1ikZFG9xFXQ/qnWH00w57VdM9AQmXm+o1VcP4W/zJ1bwUpjAIT5nre2ixpMejAW6g/Nn+INIq+QLuTeeu76A==} + engines: {node: '>=14.0.0'} cpu: [arm64] os: [darwin] - '@oxc-transform/binding-darwin-x64@0.35.0': - resolution: {integrity: sha512-/B8YOmxxHGKeNqCeCoe7FY3eLrru5R07kS5pObkOGZgz2jqWw2CnJ3XMq+GaNAAgvVJc4O7wU88yV8a/TX3ppQ==} + '@oxc-transform/binding-darwin-x64@0.76.0': + resolution: {integrity: sha512-z9rW+H5ConXji4AsnGYD57O6IqHgtPWl4zomFKAZkDNIgnH4lAMTFxJooWqibU6md3eqohzV97rK1ZXY3ioENw==} + engines: {node: '>=14.0.0'} cpu: [x64] os: [darwin] - '@oxc-transform/binding-linux-arm64-gnu@0.35.0': - resolution: {integrity: sha512-Smbku1J3IofBVEJFvnP6IcGyavZsAskbGBs++ty/4+JQqv67fCeGFNRf8erAWpNQGhpgsL/EW7QIPuZ89SlIBw==} + '@oxc-transform/binding-freebsd-x64@0.76.0': + resolution: {integrity: sha512-Lm2ySyYItojGqoKc1qtU/beARNdPLlXRtbgH/zqRh7Gy0nsMe0DHmsMciL57RJQxDb7LJ1eztE/r/QvgeDNPLg==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [freebsd] + + '@oxc-transform/binding-linux-arm-gnueabihf@0.76.0': + resolution: {integrity: sha512-cwWM8r/cxsQTohCFgzQCxP6XzYb3tciVSB6x70KpG/u6aQItks+zCqoMSu7cgL6McBEt/fvP2pGzNz5ZDEYq8Q==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + '@oxc-transform/binding-linux-arm-musleabihf@0.76.0': + resolution: {integrity: sha512-0qsWf7u2LdSZTwQ5cMw2kESRy/mnPzI0hRX6/lJ5frRJjEJ1OOH8mQkUOx6ctowQlipv/VDVR+ZSTqikPPdGow==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + '@oxc-transform/binding-linux-arm64-gnu@0.76.0': + resolution: {integrity: sha512-WpxFWdocseSUjbUMQAG9NMCMo/SSUkjBM3knYRW9P2HIaD961q0+NAHQu4ZNiZ5yyXeiT/QjpZjKQtrex8ab6w==} + engines: {node: '>=14.0.0'} cpu: [arm64] os: [linux] - '@oxc-transform/binding-linux-arm64-musl@0.35.0': - resolution: {integrity: sha512-H0CV1mf4TNIPm4PwkHWJUxekgOHvyyCTehHimUjBaB2XxImwo1pEa+bO79wkJYm/F1aSDRM4APivK9c3Hi4F0w==} + '@oxc-transform/binding-linux-arm64-musl@0.76.0': + resolution: {integrity: sha512-acoILN/8p5o0ut1bQlPxMSPqJ2JxgEl5bv94O7aIrQda0GvKKwSZvrtNdRqRA5DV5PusreuKnEHjHoe1hPAwaw==} + engines: {node: '>=14.0.0'} cpu: [arm64] os: [linux] - '@oxc-transform/binding-linux-x64-gnu@0.35.0': - resolution: {integrity: sha512-VSOiPOx4I/e3yTNED50Vn0VwHb3Pa0QQwqCZYRDKmqztsTQN6RSKnawWG+EPY+9mqLJs+8KfMphQMsjRE2K+hA==} + '@oxc-transform/binding-linux-riscv64-gnu@0.76.0': + resolution: {integrity: sha512-Y9UNgfs4BaMxtoN7NYON8BqTTUrnTgXtCbhWxAw2VoTV/VQXEoywMKMEFZoSmrzu+FF467GPWgWS6VqvgvidOQ==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [linux] + + '@oxc-transform/binding-linux-s390x-gnu@0.76.0': + resolution: {integrity: sha512-WwG79icPeZuuAfzETKU7tr7RHvlV25Sfzt02NqXdWwfFts2afLCpt1OVam11iLA30Kgj8q7HysZjhbIgEZUpkg==} + engines: {node: '>=14.0.0'} + cpu: [s390x] + os: [linux] + + '@oxc-transform/binding-linux-x64-gnu@0.76.0': + resolution: {integrity: sha512-BcDXgbDwfyiIVM8gtkPCL1pkic+YCPrRIMcYyoYuZwsHm5j/kz7mImXMNsT/Sad3fRblFfGrssoTzKn2i3zodA==} + engines: {node: '>=14.0.0'} cpu: [x64] os: [linux] - '@oxc-transform/binding-linux-x64-musl@0.35.0': - resolution: {integrity: sha512-ItoZZ1auUQsgSE+lvL559+cLBnZb4Q2zotTB0JpH8M8rxROpW+GVwU3TzBwQHmtGE9ri+KuywpXkPREifdOx9g==} + '@oxc-transform/binding-linux-x64-musl@0.76.0': + resolution: {integrity: sha512-jlsKpMap4e2yQeLvjlpz+qAUWtbFg3310NLB48NM9xIRfPddlF9RRguIrIOnssK9MzNeUKHP3H2t6XJs68Uigw==} + engines: {node: '>=14.0.0'} cpu: [x64] os: [linux] - '@oxc-transform/binding-win32-arm64-msvc@0.35.0': - resolution: {integrity: sha512-XuvyU0mhgpF5NIAcoknQPQnl70s/kfkBASo6xCx2HQP74vGGP6Aj810U4N0D66jGazpVw+mbaEsDzGHm3KWwiw==} + '@oxc-transform/binding-wasm32-wasi@0.76.0': + resolution: {integrity: sha512-fVMo9oickaMJSApbImlkPeCtYai47NR0ZOmAtyX05LHwRqrKmLBef46v9WXilKoNJ7MziyM7H11Nr01ze6SKrQ==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@oxc-transform/binding-win32-arm64-msvc@0.76.0': + resolution: {integrity: sha512-NHYNglz3Xnauz9puiTCSmaG/MaYp2sreYtH3YkzHrcwhG1NRS3mLIEH4Iu03sSeZOthvcPe1TuE2TUt6bECdeg==} + engines: {node: '>=14.0.0'} cpu: [arm64] os: [win32] - '@oxc-transform/binding-win32-x64-msvc@0.35.0': - resolution: {integrity: sha512-+hTWKxqO519Iot9A6XdCEdvokg/2Yid4NevjhsEJnsa1MrHHxbOjzWKq22GRjv0CpMgKlMyJXWHP4YKzDZ/Sog==} + '@oxc-transform/binding-win32-x64-msvc@0.76.0': + resolution: {integrity: sha512-1FDq8BsSgvBpXYOR0a4O7GW78irTP3lJvcU+xPPhMtomNdNx+mn19JhYNqj3sApZ2+UeAa2hb3ELPmMVEPFJrA==} + engines: {node: '>=14.0.0'} cpu: [x64] os: [win32] @@ -1065,69 +1170,72 @@ packages: engines: {node: '>=18'} hasBin: true - '@rolldown/binding-darwin-arm64@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-K+kETZAdSaIHG+ivKes6IGiyFK4+uriEXhUHMPWvKqz4njcaXA9Lk5wEOiIFMLNsiyygkddBvuE2JXiiqtc7pw==} + '@rolldown/binding-darwin-arm64@1.0.0-beta.24': + resolution: {integrity: sha512-gE4HGjIioZaMGZupq2zQQdqhlRV2b2qnjFHHkJEW50zVDmiVNWwdHjwvZDPx9JfW5y4GuHgp/zKDLZZbJlQ1/Q==} cpu: [arm64] os: [darwin] - '@rolldown/binding-darwin-x64@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-ZrW/GM6xu0VMHBnnboAoID2mtHgg/aO0C6dVuu41FXxNTb5TenK+CL7o6TRErIYh9UggOE8ElePlw9yDCquRqw==} + '@rolldown/binding-darwin-x64@1.0.0-beta.24': + resolution: {integrity: sha512-h2HfOtqmjIHIz9WdpKAJ8sBfLNGkrMlwrCfNV2MDDGu0x3YdYBYPE+ozS5PvE53Tp8y6EYn2/thNWJTGWy/N3Q==} cpu: [x64] os: [darwin] - '@rolldown/binding-freebsd-x64@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-ay0xOrOCH2DA5iBpn2w02o7BMw0ftqHnfu6hq5eXMkzAioObA0eCLS+8vpbN9FpPpWRPYZoK9z519npn9GfVcw==} + '@rolldown/binding-freebsd-x64@1.0.0-beta.24': + resolution: {integrity: sha512-lx3Q2TU2bbY4yDCZ6e+Wiom3VMLFlZmQswx/1CyjFd+Vv3Q+99SZm6CSfNAIZBaWD246yQRRr1Vx+iIoWCdYzQ==} cpu: [x64] os: [freebsd] - '@rolldown/binding-linux-arm-gnueabihf@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-flQG9NDOlYTlV9Y+7Lim+NZyv554Xrea8bN84ep9AJy49NHkwhzan46Ct9/drwbK4uQvTePk1Cof7CdX4/tJ7w==} + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.24': + resolution: {integrity: sha512-PLtsV6uf3uS1/cNF8Wu/kitTpXT2YpOZbN6VJm7oMi5A8o5oO0vh8STCB71O5k2kwQMVycsmxHWFk2ZyEa6aMw==} cpu: [arm] os: [linux] - '@rolldown/binding-linux-arm64-gnu@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-osxZlZdtOC+ck8PZiQ27ujf2jbi67rrQmWx60wwuTnFznl7Rj4pULTDmxaq7oO14yYAW7w00in8OKGXcvRQ5yw==} + '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.24': + resolution: {integrity: sha512-UxGukDkWnv7uS5R+BPVeJ4FSuwA+lgC62LRsyPPSJhJhKMNGZ2W9sQPIpEtBRlww8t0qR6QBsiD5TGLW98ktGw==} cpu: [arm64] os: [linux] - '@rolldown/binding-linux-arm64-musl@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-B1d+iRhQiKgBkbcO7ByUYoNUeWqV+XMP3Vz8Y27Nj+flgvt5GkmOEYJ2pJ4Nv5h9bzd4SwHsjzJ7XdXdbRk3Xw==} + '@rolldown/binding-linux-arm64-musl@1.0.0-beta.24': + resolution: {integrity: sha512-vB99yGYW9FOQe4lk3MNKa13+vRj+7waZFlRE3Ba/IpEy7RFxZ78ASkPLXkz4+kYYbUvMnRaOfk9RKX2fqYZRUg==} cpu: [arm64] os: [linux] - '@rolldown/binding-linux-x64-gnu@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-dQNu7BKid2dhJpRUJ7M+Lr+O77wyZfVDifjF3BEb5mlL/YJR029VZSEoguzyf0ir0xNFwcoFmXqvNol6RuCC7g==} + '@rolldown/binding-linux-x64-gnu@1.0.0-beta.24': + resolution: {integrity: sha512-fAMZBWutuKWHsyvHVsKjFYRXVgTbzBfNmomzPPpog8UtdkHk5Vnb0qVEeZP4hR4TsXnKfzD2EQ98NRqFej5QYA==} cpu: [x64] os: [linux] - '@rolldown/binding-linux-x64-musl@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-NKB/1i7f0j1YNnTd/DvOzlAfVufCVCovELxxBvdY1GqPBIbY8IrWsggHcw/A3ETdiHv/5qo6bg0OwyY0XJcUcA==} + '@rolldown/binding-linux-x64-musl@1.0.0-beta.24': + resolution: {integrity: sha512-0UY/Qo8fAlpolcWOg2ZU7SCUrsCJWifdRMliV9GXlZaBKbMoVNFw0pHGDm9cj/3TWhJu/iB0peZK00dm22LlNw==} cpu: [x64] os: [linux] - '@rolldown/binding-wasm32-wasi@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-3s1aV1BwnR1lGd4tq/f9of9q/9HjjYwukr6t++rK/hLG+SvhchLroHycjIdodew/cvvUNJjQoxp6o3XnoNzSVQ==} + '@rolldown/binding-wasm32-wasi@1.0.0-beta.24': + resolution: {integrity: sha512-7ubbtKCo6FBuAM4q6LoT5dOea7f/zj9OYXgumbwSmA0fw18mN5h8SrFTUjl7h9MpPkOyhi2uY6ss4pb39KXkcw==} engines: {node: '>=14.21.3'} cpu: [wasm32] - '@rolldown/binding-win32-arm64-msvc@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-Yb0WpkFVDog5jaa9wsp9S/S4OaNR/HwGC4gOUM24Aho7aJBogjwnnX9YXf6c9AS3CPqdeWhslRtgWfRKBzQZCQ==} + '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.24': + resolution: {integrity: sha512-S5WKIabtRBJyzu31KnJRlbZRR6FMrTMzYRrNTnIY2hWWXfpcB1PNuHqbo+98ODLpH8knul4Vyf5sCL61okLTjA==} cpu: [arm64] os: [win32] - '@rolldown/binding-win32-ia32-msvc@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-9ECBsIsmjEyKofobNQfgwjc2apokoLfP8hYxu/dQKUT1Mb8KPCZp2pPqhi27HpLB+asEOnO3xMleABJdrYGmtg==} + '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.24': + resolution: {integrity: sha512-5EW8mzHoukz3zBn/VAaTapK+i+/ZFbSSP9meDmLSuGnk6La8uLAPc7E+6S3gbJnQ6k8lSC6ipIIeXC4SPdttKQ==} cpu: [ia32] os: [win32] - '@rolldown/binding-win32-x64-msvc@0.14.0-snapshot-d5e797b-20241114003621': - resolution: {integrity: sha512-sIHCWBHaqpuF2SCfkGTb4Ml4sYAHCc4tyX8DW1/7tgA8uRsQ01UqoBZSv32KCao38AIYQSpC9HGQumcnjnximw==} + '@rolldown/binding-win32-x64-msvc@1.0.0-beta.24': + resolution: {integrity: sha512-KpurHt8+B0yTg9gHroC3H/Tf2c9VfjIBsC/wVHTf7GGAe+xkw1+5iYB3Y5iSy3OaMTGq1U3/YEvTqqBdSbDMUg==} cpu: [x64] os: [win32] '@rolldown/plugin-node-polyfills@1.0.0': resolution: {integrity: sha512-JUmEhvz+B6+0AaeUGvZ7SnJec7wpwYqZ+FcAng1I3UVGYKA1uSmE1H4vKHUewU665Nb37znDd9N4o/iImmKeVg==} + '@rolldown/pluginutils@1.0.0-beta.24': + resolution: {integrity: sha512-NMiim/enJlffMP16IanVj1ajFNEg8SaMEYyxyYfJoEyt5EiFT3HUH/T2GRdeStNWp+/kg5U8DiJqnQBgLQ8uCw==} + '@rollup/plugin-alias@5.1.1': resolution: {integrity: sha512-PR9zDb+rOzkRb2VD+EuKB7UC41vU5DIwZ5qqCpk0KJudcWAyi8rvYOhS7+L5aZCspw1stTViLgN5v6FF1p5cgQ==} engines: {node: '>=14.0.0'} @@ -1606,6 +1714,10 @@ packages: resolution: {integrity: sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==} engines: {node: '>=12'} + ansis@4.1.0: + resolution: {integrity: sha512-BGcItUBWSMRgOCe+SVZJ+S7yTRG0eGt9cXAHev72yuGcY23hnLA7Bky5L/xLyPINoSN95geovfBkqoTlNZYa7w==} + engines: {node: '>=14'} + arch@2.2.0: resolution: {integrity: sha512-Of/R0wqp83cgHozfIYLbBMnej79U/SVGOOyuB3VVFv1NRM/PSFMK12x9KVtiYzJqmnU5WR2qp0Z5rHb7sWGnFQ==} @@ -2812,11 +2924,13 @@ packages: resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} engines: {node: '>= 0.8.0'} - oxc-parser@0.35.0: - resolution: {integrity: sha512-80Xpm5vOvEE5iP9aSN95WMLGbRpdl5oTV/rbtM+epGQpro5737R5CWcoHiStwzU/1zZKgZlSNfaeuTj1iV3kYA==} + oxc-parser@0.76.0: + resolution: {integrity: sha512-l98B2e9evuhES7zN99rb1QGhbzx25829TJFaKi2j0ib3/K/G5z1FdGYz6HZkrU3U8jdH7v2FC8mX1j2l9JrOUg==} + engines: {node: '>=20.0.0'} - oxc-transform@0.35.0: - resolution: {integrity: sha512-biVB7H7ZxuAQYbMJPUZw1umT7nzDU44tEBYyqMgLle0mnAbi9AetadIqTpjAp8KmcOYpG6VmvGeFPxWihFCWFQ==} + oxc-transform@0.76.0: + resolution: {integrity: sha512-E3Ne/inNuOEspzLf4QOZZoHskX4jgWB/dtis4y2CruVhRC9qQZMTa6kqxYB7kQwrOKw4U3By/pGrqU8CMbXF5A==} + engines: {node: '>=14.0.0'} p-limit@3.1.0: resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} @@ -3119,8 +3233,8 @@ packages: engines: {node: 20 || >=22} hasBin: true - rolldown@0.14.0-snapshot-d5e797b-20241114003621: - resolution: {integrity: sha512-xJTXkA5ROenUW64VVgaqOglIDmrhJFkY1aFk100ROHAe59Gp2A6kaG8tpOoHDfnC4gmpXZnLr1dPDhdg960wYQ==} + rolldown@1.0.0-beta.24: + resolution: {integrity: sha512-eDyipoOnoHQ5p6INkJ8g31eKGlqPSCAN9PapyOTw5HET4FYIWALZnSgpMZ67mdn+xT3jAsqGidNnBcIM6EAUhA==} hasBin: true rollup-plugin-dts@6.1.1: @@ -3705,18 +3819,18 @@ snapshots: conventional-commits-filter: 5.0.0 conventional-commits-parser: 6.0.0 - '@emnapi/core@1.3.1': + '@emnapi/core@1.4.4': dependencies: - '@emnapi/wasi-threads': 1.0.1 + '@emnapi/wasi-threads': 1.0.3 tslib: 2.8.1 optional: true - '@emnapi/runtime@1.3.1': + '@emnapi/runtime@1.4.4': dependencies: tslib: 2.8.1 optional: true - '@emnapi/wasi-threads@1.0.1': + '@emnapi/wasi-threads@1.0.3': dependencies: tslib: 2.8.1 optional: true @@ -3948,10 +4062,10 @@ snapshots: '@jspm/core@2.0.1': {} - '@napi-rs/wasm-runtime@0.2.5': + '@napi-rs/wasm-runtime@0.2.11': dependencies: - '@emnapi/core': 1.3.1 - '@emnapi/runtime': 1.3.1 + '@emnapi/core': 1.4.4 + '@emnapi/runtime': 1.4.4 '@tybys/wasm-util': 0.9.0 optional: true @@ -3967,54 +4081,104 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 - '@oxc-parser/binding-darwin-arm64@0.35.0': + '@oxc-parser/binding-android-arm64@0.76.0': + optional: true + + '@oxc-parser/binding-darwin-arm64@0.76.0': + optional: true + + '@oxc-parser/binding-darwin-x64@0.76.0': + optional: true + + '@oxc-parser/binding-freebsd-x64@0.76.0': optional: true - '@oxc-parser/binding-darwin-x64@0.35.0': + '@oxc-parser/binding-linux-arm-gnueabihf@0.76.0': optional: true - '@oxc-parser/binding-linux-arm64-gnu@0.35.0': + '@oxc-parser/binding-linux-arm-musleabihf@0.76.0': optional: true - '@oxc-parser/binding-linux-arm64-musl@0.35.0': + '@oxc-parser/binding-linux-arm64-gnu@0.76.0': optional: true - '@oxc-parser/binding-linux-x64-gnu@0.35.0': + '@oxc-parser/binding-linux-arm64-musl@0.76.0': optional: true - '@oxc-parser/binding-linux-x64-musl@0.35.0': + '@oxc-parser/binding-linux-riscv64-gnu@0.76.0': optional: true - '@oxc-parser/binding-win32-arm64-msvc@0.35.0': + '@oxc-parser/binding-linux-s390x-gnu@0.76.0': optional: true - '@oxc-parser/binding-win32-x64-msvc@0.35.0': + '@oxc-parser/binding-linux-x64-gnu@0.76.0': optional: true - '@oxc-project/types@0.35.0': {} + '@oxc-parser/binding-linux-x64-musl@0.76.0': + optional: true - '@oxc-transform/binding-darwin-arm64@0.35.0': + '@oxc-parser/binding-wasm32-wasi@0.76.0': + dependencies: + '@napi-rs/wasm-runtime': 0.2.11 optional: true - '@oxc-transform/binding-darwin-x64@0.35.0': + '@oxc-parser/binding-win32-arm64-msvc@0.76.0': optional: true - '@oxc-transform/binding-linux-arm64-gnu@0.35.0': + '@oxc-parser/binding-win32-x64-msvc@0.76.0': optional: true - '@oxc-transform/binding-linux-arm64-musl@0.35.0': + '@oxc-project/runtime@0.75.1': {} + + '@oxc-project/types@0.75.1': {} + + '@oxc-project/types@0.76.0': {} + + '@oxc-transform/binding-android-arm64@0.76.0': optional: true - '@oxc-transform/binding-linux-x64-gnu@0.35.0': + '@oxc-transform/binding-darwin-arm64@0.76.0': optional: true - '@oxc-transform/binding-linux-x64-musl@0.35.0': + '@oxc-transform/binding-darwin-x64@0.76.0': optional: true - '@oxc-transform/binding-win32-arm64-msvc@0.35.0': + '@oxc-transform/binding-freebsd-x64@0.76.0': optional: true - '@oxc-transform/binding-win32-x64-msvc@0.35.0': + '@oxc-transform/binding-linux-arm-gnueabihf@0.76.0': + optional: true + + '@oxc-transform/binding-linux-arm-musleabihf@0.76.0': + optional: true + + '@oxc-transform/binding-linux-arm64-gnu@0.76.0': + optional: true + + '@oxc-transform/binding-linux-arm64-musl@0.76.0': + optional: true + + '@oxc-transform/binding-linux-riscv64-gnu@0.76.0': + optional: true + + '@oxc-transform/binding-linux-s390x-gnu@0.76.0': + optional: true + + '@oxc-transform/binding-linux-x64-gnu@0.76.0': + optional: true + + '@oxc-transform/binding-linux-x64-musl@0.76.0': + optional: true + + '@oxc-transform/binding-wasm32-wasi@0.76.0': + dependencies: + '@napi-rs/wasm-runtime': 0.2.11 + optional: true + + '@oxc-transform/binding-win32-arm64-msvc@0.76.0': + optional: true + + '@oxc-transform/binding-win32-x64-msvc@0.76.0': optional: true '@parcel/watcher-android-arm64@2.4.1': @@ -4090,46 +4254,48 @@ snapshots: transitivePeerDependencies: - supports-color - '@rolldown/binding-darwin-arm64@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-darwin-arm64@1.0.0-beta.24': optional: true - '@rolldown/binding-darwin-x64@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-darwin-x64@1.0.0-beta.24': optional: true - '@rolldown/binding-freebsd-x64@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-freebsd-x64@1.0.0-beta.24': optional: true - '@rolldown/binding-linux-arm-gnueabihf@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-linux-arm-gnueabihf@1.0.0-beta.24': optional: true - '@rolldown/binding-linux-arm64-gnu@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-linux-arm64-gnu@1.0.0-beta.24': optional: true - '@rolldown/binding-linux-arm64-musl@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-linux-arm64-musl@1.0.0-beta.24': optional: true - '@rolldown/binding-linux-x64-gnu@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-linux-x64-gnu@1.0.0-beta.24': optional: true - '@rolldown/binding-linux-x64-musl@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-linux-x64-musl@1.0.0-beta.24': optional: true - '@rolldown/binding-wasm32-wasi@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-wasm32-wasi@1.0.0-beta.24': dependencies: - '@napi-rs/wasm-runtime': 0.2.5 + '@napi-rs/wasm-runtime': 0.2.11 optional: true - '@rolldown/binding-win32-arm64-msvc@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-win32-arm64-msvc@1.0.0-beta.24': optional: true - '@rolldown/binding-win32-ia32-msvc@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-win32-ia32-msvc@1.0.0-beta.24': optional: true - '@rolldown/binding-win32-x64-msvc@0.14.0-snapshot-d5e797b-20241114003621': + '@rolldown/binding-win32-x64-msvc@1.0.0-beta.24': optional: true '@rolldown/plugin-node-polyfills@1.0.0': {} + '@rolldown/pluginutils@1.0.0-beta.24': {} + '@rollup/plugin-alias@5.1.1(rollup@4.25.0)': optionalDependencies: rollup: 4.25.0 @@ -4580,6 +4746,8 @@ snapshots: ansi-styles@6.2.1: {} + ansis@4.1.0: {} + arch@2.2.0: {} arg@5.0.2: {} @@ -5859,29 +6027,43 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - oxc-parser@0.35.0: + oxc-parser@0.76.0: dependencies: - '@oxc-project/types': 0.35.0 + '@oxc-project/types': 0.76.0 optionalDependencies: - '@oxc-parser/binding-darwin-arm64': 0.35.0 - '@oxc-parser/binding-darwin-x64': 0.35.0 - '@oxc-parser/binding-linux-arm64-gnu': 0.35.0 - '@oxc-parser/binding-linux-arm64-musl': 0.35.0 - '@oxc-parser/binding-linux-x64-gnu': 0.35.0 - '@oxc-parser/binding-linux-x64-musl': 0.35.0 - '@oxc-parser/binding-win32-arm64-msvc': 0.35.0 - '@oxc-parser/binding-win32-x64-msvc': 0.35.0 - - oxc-transform@0.35.0: + '@oxc-parser/binding-android-arm64': 0.76.0 + '@oxc-parser/binding-darwin-arm64': 0.76.0 + '@oxc-parser/binding-darwin-x64': 0.76.0 + '@oxc-parser/binding-freebsd-x64': 0.76.0 + '@oxc-parser/binding-linux-arm-gnueabihf': 0.76.0 + '@oxc-parser/binding-linux-arm-musleabihf': 0.76.0 + '@oxc-parser/binding-linux-arm64-gnu': 0.76.0 + '@oxc-parser/binding-linux-arm64-musl': 0.76.0 + '@oxc-parser/binding-linux-riscv64-gnu': 0.76.0 + '@oxc-parser/binding-linux-s390x-gnu': 0.76.0 + '@oxc-parser/binding-linux-x64-gnu': 0.76.0 + '@oxc-parser/binding-linux-x64-musl': 0.76.0 + '@oxc-parser/binding-wasm32-wasi': 0.76.0 + '@oxc-parser/binding-win32-arm64-msvc': 0.76.0 + '@oxc-parser/binding-win32-x64-msvc': 0.76.0 + + oxc-transform@0.76.0: optionalDependencies: - '@oxc-transform/binding-darwin-arm64': 0.35.0 - '@oxc-transform/binding-darwin-x64': 0.35.0 - '@oxc-transform/binding-linux-arm64-gnu': 0.35.0 - '@oxc-transform/binding-linux-arm64-musl': 0.35.0 - '@oxc-transform/binding-linux-x64-gnu': 0.35.0 - '@oxc-transform/binding-linux-x64-musl': 0.35.0 - '@oxc-transform/binding-win32-arm64-msvc': 0.35.0 - '@oxc-transform/binding-win32-x64-msvc': 0.35.0 + '@oxc-transform/binding-android-arm64': 0.76.0 + '@oxc-transform/binding-darwin-arm64': 0.76.0 + '@oxc-transform/binding-darwin-x64': 0.76.0 + '@oxc-transform/binding-freebsd-x64': 0.76.0 + '@oxc-transform/binding-linux-arm-gnueabihf': 0.76.0 + '@oxc-transform/binding-linux-arm-musleabihf': 0.76.0 + '@oxc-transform/binding-linux-arm64-gnu': 0.76.0 + '@oxc-transform/binding-linux-arm64-musl': 0.76.0 + '@oxc-transform/binding-linux-riscv64-gnu': 0.76.0 + '@oxc-transform/binding-linux-s390x-gnu': 0.76.0 + '@oxc-transform/binding-linux-x64-gnu': 0.76.0 + '@oxc-transform/binding-linux-x64-musl': 0.76.0 + '@oxc-transform/binding-wasm32-wasi': 0.76.0 + '@oxc-transform/binding-win32-arm64-msvc': 0.76.0 + '@oxc-transform/binding-win32-x64-msvc': 0.76.0 p-limit@3.1.0: dependencies: @@ -6235,22 +6417,25 @@ snapshots: glob: 11.0.0 package-json-from-dist: 1.0.0 - rolldown@0.14.0-snapshot-d5e797b-20241114003621: + rolldown@1.0.0-beta.24: dependencies: - zod: 3.23.8 + '@oxc-project/runtime': 0.75.1 + '@oxc-project/types': 0.75.1 + '@rolldown/pluginutils': 1.0.0-beta.24 + ansis: 4.1.0 optionalDependencies: - '@rolldown/binding-darwin-arm64': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-darwin-x64': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-freebsd-x64': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-linux-arm-gnueabihf': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-linux-arm64-gnu': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-linux-arm64-musl': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-linux-x64-gnu': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-linux-x64-musl': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-wasm32-wasi': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-win32-arm64-msvc': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-win32-ia32-msvc': 0.14.0-snapshot-d5e797b-20241114003621 - '@rolldown/binding-win32-x64-msvc': 0.14.0-snapshot-d5e797b-20241114003621 + '@rolldown/binding-darwin-arm64': 1.0.0-beta.24 + '@rolldown/binding-darwin-x64': 1.0.0-beta.24 + '@rolldown/binding-freebsd-x64': 1.0.0-beta.24 + '@rolldown/binding-linux-arm-gnueabihf': 1.0.0-beta.24 + '@rolldown/binding-linux-arm64-gnu': 1.0.0-beta.24 + '@rolldown/binding-linux-arm64-musl': 1.0.0-beta.24 + '@rolldown/binding-linux-x64-gnu': 1.0.0-beta.24 + '@rolldown/binding-linux-x64-musl': 1.0.0-beta.24 + '@rolldown/binding-wasm32-wasi': 1.0.0-beta.24 + '@rolldown/binding-win32-arm64-msvc': 1.0.0-beta.24 + '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.24 + '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.24 rollup-plugin-dts@6.1.1(rollup@4.25.0)(typescript@5.6.2): dependencies: diff --git a/rollup.dts.config.js b/rollup.dts.config.js index 6c2e26f4495..a45564d51ed 100644 --- a/rollup.dts.config.js +++ b/rollup.dts.config.js @@ -58,8 +58,7 @@ function patchTypes(pkg) { name: 'patch-types', renderChunk(code, chunk) { const s = new MagicString(code) - const { program: ast, errors } = parseSync(code, { - sourceFilename: 'x.d.ts', + const { program: ast, errors } = parseSync('x.d.ts', code, { sourceType: 'module', }) diff --git a/scripts/build.js b/scripts/build.js index c3581862185..680c1ece900 100644 --- a/scripts/build.js +++ b/scripts/build.js @@ -119,14 +119,17 @@ async function buildAll(targets) { if (configs) { all.push( Promise.all( - configs.map(c => - rolldown(c).then(bundle => { + configs.map(c => { + // @ts-expect-error + c.output.file = path.join('packages', t, 'dist', c.output.file) + return rolldown(c).then(bundle => { + // @ts-expect-error return bundle.write(c.output).then(() => { // @ts-expect-error - return path.join('packages', t, 'dist', c.output.file) + return c.output.file }) - }), - ), + }) + }), ).then(files => { files.forEach(f => { count++ diff --git a/scripts/create-rolldown-config.js b/scripts/create-rolldown-config.js index 7e8f04a23e0..512bf7b924b 100644 --- a/scripts/create-rolldown-config.js +++ b/scripts/create-rolldown-config.js @@ -125,8 +125,6 @@ export function createConfigsForPackage({ process.exit(1) } - output.dir = resolve('dist') - const isProductionBuild = /\.prod\.js$/.test(String(output.file) || '') const isBundlerESMBuild = /esm-bundler/.test(format) const isBrowserESMBuild = /esm-browser/.test(format) @@ -317,7 +315,6 @@ export function createConfigsForPackage({ resolve: { alias: entries, }, - // @ts-expect-error rollup's Plugin type incompatible w/ rolldown's vendored Plugin type plugins: [ ...(localDev ? [] : [enumPlugin]), ...resolveReplace(), diff --git a/scripts/inline-enums.js b/scripts/inline-enums.js index e849384b3df..3ac5d648d2f 100644 --- a/scripts/inline-enums.js +++ b/scripts/inline-enums.js @@ -40,6 +40,17 @@ function evaluate(exp) { return new Function(`return ${exp}`)() } +/** + * @param {import('oxc-parser').Expression | import('oxc-parser').PrivateIdentifier} exp + * @returns { exp is import('oxc-parser').StringLiteral | import('oxc-parser').NumericLiteral } + */ +function isStringOrNumberLiteral(exp) { + return ( + exp.type === 'Literal' && + (typeof exp.value === 'string' || typeof exp.value === 'number') + ) +} + // this is called in the build script entry once // so the data can be shared across concurrent Rollup processes export function scanEnums() { @@ -65,9 +76,7 @@ export function scanEnums() { for (const relativeFile of files) { const file = path.resolve(process.cwd(), relativeFile) const content = readFileSync(file, 'utf-8') - const res = parseSync(content, { - // plugins: ['typescript'], - sourceFilename: file, + const res = parseSync(file, content, { sourceType: 'module', }) @@ -99,9 +108,16 @@ export function scanEnums() { /** @type {Array} */ const members = [] - for (let i = 0; i < decl.members.length; i++) { - const e = decl.members[i] - const key = e.id.type === 'Identifier' ? e.id.name : e.id.value + for (let i = 0; i < decl.body.members.length; i++) { + const e = decl.body.members[i] + const key = + e.id.type === 'Identifier' + ? e.id.name + : e.id.type === 'Literal' + ? e.id.value + : '' + if (key === '') continue + const fullKey = /** @type {const} */ (`${id}.${key}`) const saveValue = (/** @type {string | number} */ value) => { // We need allow same name enum in different file. @@ -120,23 +136,17 @@ export function scanEnums() { if (init) { /** @type {string | number} */ let value - if ( - init.type === 'StringLiteral' || - init.type === 'NumericLiteral' - ) { + if (isStringOrNumberLiteral(init)) { value = init.value } // e.g. 1 << 2 else if (init.type === 'BinaryExpression') { const resolveValue = ( - /** @type {import('@babel/types').Expression | import('@babel/types').PrivateName} */ node, + /** @type {import('oxc-parser').Expression | import('oxc-parser').PrivateIdentifier} */ node, ) => { assert.ok(typeof node.start === 'number') assert.ok(typeof node.end === 'number') - if ( - node.type === 'NumericLiteral' || - node.type === 'StringLiteral' - ) { + if (isStringOrNumberLiteral(node)) { return node.value } else if ( node.type === 'MemberExpression' || @@ -163,10 +173,7 @@ export function scanEnums() { }${resolveValue(init.right)}` value = evaluate(exp) } else if (init.type === 'UnaryExpression') { - if ( - init.argument.type === 'StringLiteral' || - init.argument.type === 'NumericLiteral' - ) { + if (isStringOrNumberLiteral(init.argument)) { const exp = `${init.operator}${init.argument.value}` value = evaluate(exp) } else { From e0f29fa2ea387b47348c641fe007f0410bad6c8c Mon Sep 17 00:00:00 2001 From: daiwei Date: Wed, 9 Jul 2025 17:08:11 +0800 Subject: [PATCH 2/5] build: use rolldown-plugin-dts --- package.json | 2 +- pnpm-lock.yaml | 169 ++++++++++++++++-- ...up.dts.config.js => rolldown.dts.config.js | 12 +- scripts/build-types.js | 12 +- tsconfig.json | 3 +- 5 files changed, 166 insertions(+), 32 deletions(-) rename rollup.dts.config.js => rolldown.dts.config.js (95%) diff --git a/package.json b/package.json index 6f2218efbd1..768dde47af3 100644 --- a/package.json +++ b/package.json @@ -104,9 +104,9 @@ "rimraf": "^6.0.1", "rolldown": "1.0.0-beta.24", "rollup": "^4.25.0", - "rollup-plugin-dts": "^6.1.1", "rollup-plugin-esbuild": "^6.1.1", "rollup-plugin-polyfill-node": "^0.13.0", + "rolldown-plugin-dts": "0.13.13", "semver": "^7.6.3", "serve": "^14.2.4", "serve-handler": "^6.1.6", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4bcb657a78d..030dbd80429 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -149,12 +149,12 @@ importers: rolldown: specifier: 1.0.0-beta.24 version: 1.0.0-beta.24 + rolldown-plugin-dts: + specifier: 0.13.13 + version: 0.13.13(rolldown@1.0.0-beta.24)(typescript@5.6.2) rollup: specifier: ^4.25.0 version: 4.25.0 - rollup-plugin-dts: - specifier: ^6.1.1 - version: 6.1.1(rollup@4.25.0)(typescript@5.6.2) rollup-plugin-esbuild: specifier: ^6.1.1 version: 6.1.1(esbuild@0.24.0)(rollup@4.25.0) @@ -464,14 +464,26 @@ packages: resolution: {integrity: sha512-y5+tLQyV8pg3fsiln67BVLD1P13Eg4lh5RW9mF0zUuvLrv9uIQ4MCL+CRT+FTsBlBjcIan6PGsLcBN0m3ClUyQ==} engines: {node: '>=6.9.0'} + '@babel/generator@7.28.0': + resolution: {integrity: sha512-lJjzvrbEeWrhB4P3QBsH7tey117PjLZnDbLiQEKjQ/fNJTjuq4HSqgFA+UNSwZT8D7dxxbnuSBMsa1lrWzKlQg==} + engines: {node: '>=6.9.0'} + '@babel/helper-string-parser@7.24.8': resolution: {integrity: sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==} engines: {node: '>=6.9.0'} + '@babel/helper-string-parser@7.27.1': + resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} + engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@7.24.7': resolution: {integrity: sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==} engines: {node: '>=6.9.0'} + '@babel/helper-validator-identifier@7.27.1': + resolution: {integrity: sha512-D2hP9eA+Sqx1kBZgzxZh0y1trbuU+JoDkiEwqhQ36nodYqJwyEIhPSdMNd7lOm/4io72luTPWH20Yda0xOuUow==} + engines: {node: '>=6.9.0'} + '@babel/highlight@7.24.2': resolution: {integrity: sha512-Yac1ao4flkTxTteCDZLEvdxg2fZfz1v8M4QpaGypq/WPDqg3ijHYbDfs+LG5hvzSoqaSZ9/Z9lKSP3CjZjv+pA==} engines: {node: '>=6.9.0'} @@ -481,10 +493,19 @@ packages: engines: {node: '>=6.0.0'} hasBin: true + '@babel/parser@7.28.0': + resolution: {integrity: sha512-jVZGvOxOuNSsuQuLRTh13nU0AogFlw32w/MT+LV6D3sP5WdbW61E77RnkbaO2dUvmPAYrBDJXGn5gGS6tH4j8g==} + engines: {node: '>=6.0.0'} + hasBin: true + '@babel/types@7.25.2': resolution: {integrity: sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==} engines: {node: '>=6.9.0'} + '@babel/types@7.28.0': + resolution: {integrity: sha512-jYnje+JyZG5YThjHiF28oT4SIZLnYOcSBb6+SDaFIyzDVSkXQmQQYclJ2R+YxcdmK0AX6x1E5OQNtuh3jHDrUg==} + engines: {node: '>=6.9.0'} + '@bcoe/v8-coverage@0.2.3': resolution: {integrity: sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==} @@ -861,6 +882,9 @@ packages: resolution: {integrity: sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==} engines: {node: '>=8'} + '@jridgewell/gen-mapping@0.3.12': + resolution: {integrity: sha512-OuLGC46TjB5BbN1dH8JULVVZY4WTdkF7tV9Ys6wLL1rubZnCMstOhNHueU5bLCrnRuDhKPDM4g6sw4Bel5Gzqg==} + '@jridgewell/gen-mapping@0.3.5': resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} engines: {node: '>=6.0.0'} @@ -879,6 +903,9 @@ packages: '@jridgewell/trace-mapping@0.3.25': resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==} + '@jridgewell/trace-mapping@0.3.29': + resolution: {integrity: sha512-uw6guiW/gcAGPDhLmd77/6lW8QLeiV5RUTsAX46Db6oLhGaVj4lhnPwb184s1bkc8kdVg/+h988dro8GRDpmYQ==} + '@jspm/core@2.0.1': resolution: {integrity: sha512-Lg3PnLp0QXpxwLIAuuJboLeRaIhrgJjeuh797QADg3xz8wGLugQOS5DpsE8A6i6Adgzf+bacllkKZG3J0tGfDw==} @@ -1740,6 +1767,10 @@ packages: resolution: {integrity: sha512-Izi8RQcffqCeNVgFigKli1ssklIbpHnCYc6AknXGYoB6grJqyeby7jv12JUQgmTAnIDnbck1uxksT4dzN3PWBA==} engines: {node: '>=12'} + ast-kit@2.1.1: + resolution: {integrity: sha512-mfh6a7gKXE8pDlxTvqIc/syH/P3RkzbOF6LeHdcKztLEzYe6IMsRCL7N8vI7hqTGWNxpkCuuRTpT21xNWqhRtQ==} + engines: {node: '>=20.18.0'} + ast-types@0.13.4: resolution: {integrity: sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==} engines: {node: '>=4'} @@ -1776,6 +1807,9 @@ packages: resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==} engines: {node: '>=10.0.0'} + birpc@2.4.0: + resolution: {integrity: sha512-5IdNxTyhXHv2UlgnPHQ0h+5ypVmkrYHzL8QT+DwFZ//2N/oNV8Ch+BCRmTJ3x6/z9Axo/cXYBc9eprsUVK/Jsg==} + boxen@7.0.0: resolution: {integrity: sha512-j//dBVuyacJbvW+tvZ9HuH03fZ46QcaKvvhZickZqtB271DxJ7SNRSNxrV/dZX0085m7hISRZWbzWlJvx/rHSg==} engines: {node: '>=14.16'} @@ -2052,6 +2086,15 @@ packages: supports-color: optional: true + debug@4.4.1: + resolution: {integrity: sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + decimal.js@10.4.3: resolution: {integrity: sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA==} @@ -2101,6 +2144,15 @@ packages: resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==} engines: {node: '>=8'} + dts-resolver@2.1.1: + resolution: {integrity: sha512-3BiGFhB6mj5Kv+W2vdJseQUYW+SKVzAFJL6YNP6ursbrwy1fXHRotfHi3xLNxe4wZl/K8qbAFeCDjZLjzqxxRw==} + engines: {node: '>=20.18.0'} + peerDependencies: + oxc-resolver: '>=11.0.0' + peerDependenciesMeta: + oxc-resolver: + optional: true + eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} @@ -2362,6 +2414,9 @@ packages: resolution: {integrity: sha512-VaUJspBffn/LMCJVoMvSAdmscJyS1auj5Zulnn5UoYcY531UWmdwhRWkcGKnGU93m5HSXP9LP2usOryrBtQowA==} engines: {node: '>=16'} + get-tsconfig@4.10.1: + resolution: {integrity: sha512-auHyJ4AgMz7vgS8Hp3N6HXSmlMdUyhSUrfBF16w153rxtLIEOE+HGqaBppczZvnHLqQJfiHotCYpNhl0lUROFQ==} + get-tsconfig@4.7.6: resolution: {integrity: sha512-ZAqrLlu18NbDdRaHq+AKXzAmqIUPswPWKUchfytdAjiRFnCe5ojG2bstg6mRiZabkKfCoL/e98pbBELIV/YCeA==} @@ -2653,6 +2708,11 @@ packages: canvas: optional: true + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + json-buffer@3.0.1: resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==} @@ -3001,6 +3061,9 @@ packages: pathe@1.1.2: resolution: {integrity: sha512-whLdWMYL2TwI08hn8/ZqAbrVemu0LNaNNJZX73O6qaIdCTfXutsLhMkjdENX0qhsQ9uIimo4/aQOmXkoon2nDQ==} + pathe@2.0.3: + resolution: {integrity: sha512-WUjGcAqP1gQacoQe+OBJsFA7Ld4DyXuUIjZ5cc75cLHvJ7dtNsTugphxIADwspS+AraAUePCKrSVtPLFj/F88w==} + pathval@2.0.0: resolution: {integrity: sha512-vE7JKRyES09KiunauX7nd2Q9/L7lhok4smP9RZTDeD4MVs72Dp2qNFVz39Nz5a0FVEW0BJR6C0DYrq6unoziZA==} engines: {node: '>= 14.16'} @@ -3233,17 +3296,26 @@ packages: engines: {node: 20 || >=22} hasBin: true + rolldown-plugin-dts@0.13.13: + resolution: {integrity: sha512-Nchx9nQoa4IpfQ/BJzodKMvtJ3H3dT322siAJSp3uvQJ+Pi1qgEjOp7hSQwGSQRhaC5gC+9hparbWEH5oiAL9Q==} + engines: {node: '>=20.18.0'} + peerDependencies: + '@typescript/native-preview': '>=7.0.0-dev.20250601.1' + rolldown: ^1.0.0-beta.9 + typescript: ^5.0.0 + vue-tsc: ~2.2.0 + peerDependenciesMeta: + '@typescript/native-preview': + optional: true + typescript: + optional: true + vue-tsc: + optional: true + rolldown@1.0.0-beta.24: resolution: {integrity: sha512-eDyipoOnoHQ5p6INkJ8g31eKGlqPSCAN9PapyOTw5HET4FYIWALZnSgpMZ67mdn+xT3jAsqGidNnBcIM6EAUhA==} hasBin: true - rollup-plugin-dts@6.1.1: - resolution: {integrity: sha512-aSHRcJ6KG2IHIioYlvAOcEq6U99sVtqDDKVhnwt70rW6tsz3tv5OSjEiWcgzfsHdLyGXZ/3b/7b/+Za3Y6r1XA==} - engines: {node: '>=16'} - peerDependencies: - rollup: ^3.29.4 || ^4 - typescript: ^4.5 || ^5.0 - rollup-plugin-esbuild@6.1.1: resolution: {integrity: sha512-CehMY9FAqJD5OUaE/Mi1r5z0kNeYxItmRO2zG4Qnv2qWKF09J2lTy5GUzjJR354ZPrLkCj4fiBN41lo8PzBUhw==} engines: {node: '>=14.18.0'} @@ -3788,10 +3860,22 @@ snapshots: '@babel/highlight': 7.24.2 picocolors: 1.1.1 + '@babel/generator@7.28.0': + dependencies: + '@babel/parser': 7.28.0 + '@babel/types': 7.28.0 + '@jridgewell/gen-mapping': 0.3.12 + '@jridgewell/trace-mapping': 0.3.29 + jsesc: 3.1.0 + '@babel/helper-string-parser@7.24.8': {} + '@babel/helper-string-parser@7.27.1': {} + '@babel/helper-validator-identifier@7.24.7': {} + '@babel/helper-validator-identifier@7.27.1': {} + '@babel/highlight@7.24.2': dependencies: '@babel/helper-validator-identifier': 7.24.7 @@ -3803,12 +3887,21 @@ snapshots: dependencies: '@babel/types': 7.25.2 + '@babel/parser@7.28.0': + dependencies: + '@babel/types': 7.28.0 + '@babel/types@7.25.2': dependencies: '@babel/helper-string-parser': 7.24.8 '@babel/helper-validator-identifier': 7.24.7 to-fast-properties: 2.0.0 + '@babel/types@7.28.0': + dependencies: + '@babel/helper-string-parser': 7.27.1 + '@babel/helper-validator-identifier': 7.27.1 + '@bcoe/v8-coverage@0.2.3': {} '@conventional-changelog/git-client@1.0.1(conventional-commits-filter@5.0.0)(conventional-commits-parser@6.0.0)': @@ -4043,6 +4136,11 @@ snapshots: '@istanbuljs/schema@0.1.3': {} + '@jridgewell/gen-mapping@0.3.12': + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping': 0.3.29 + '@jridgewell/gen-mapping@0.3.5': dependencies: '@jridgewell/set-array': 1.2.1 @@ -4060,6 +4158,11 @@ snapshots: '@jridgewell/resolve-uri': 3.1.2 '@jridgewell/sourcemap-codec': 1.5.0 + '@jridgewell/trace-mapping@0.3.29': + dependencies: + '@jridgewell/resolve-uri': 3.1.2 + '@jridgewell/sourcemap-codec': 1.5.0 + '@jspm/core@2.0.1': {} '@napi-rs/wasm-runtime@0.2.11': @@ -4762,6 +4865,11 @@ snapshots: assertion-error@2.0.1: {} + ast-kit@2.1.1: + dependencies: + '@babel/parser': 7.28.0 + pathe: 2.0.3 + ast-types@0.13.4: dependencies: tslib: 2.8.1 @@ -4798,6 +4906,8 @@ snapshots: basic-ftp@5.0.5: {} + birpc@2.4.0: {} + boxen@7.0.0: dependencies: ansi-align: 3.0.1 @@ -5088,6 +5198,10 @@ snapshots: dependencies: ms: 2.1.2 + debug@4.4.1: + dependencies: + ms: 2.1.3 + decimal.js@10.4.3: {} deep-eql@5.0.2: {} @@ -5127,6 +5241,8 @@ snapshots: dependencies: is-obj: 2.0.0 + dts-resolver@2.1.1: {} + eastasianwidth@0.2.0: {} emoji-regex@10.3.0: {} @@ -5471,6 +5587,10 @@ snapshots: get-stream@8.0.1: {} + get-tsconfig@4.10.1: + dependencies: + resolve-pkg-maps: 1.0.0 + get-tsconfig@4.7.6: dependencies: resolve-pkg-maps: 1.0.0 @@ -5771,6 +5891,8 @@ snapshots: - supports-color - utf-8-validate + jsesc@3.1.0: {} + json-buffer@3.0.1: {} json-parse-even-better-errors@2.3.1: {} @@ -6140,6 +6262,8 @@ snapshots: pathe@1.1.2: {} + pathe@2.0.3: {} + pathval@2.0.0: {} pend@1.2.0: {} @@ -6417,6 +6541,23 @@ snapshots: glob: 11.0.0 package-json-from-dist: 1.0.0 + rolldown-plugin-dts@0.13.13(rolldown@1.0.0-beta.24)(typescript@5.6.2): + dependencies: + '@babel/generator': 7.28.0 + '@babel/parser': 7.28.0 + '@babel/types': 7.28.0 + ast-kit: 2.1.1 + birpc: 2.4.0 + debug: 4.4.1 + dts-resolver: 2.1.1 + get-tsconfig: 4.10.1 + rolldown: 1.0.0-beta.24 + optionalDependencies: + typescript: 5.6.2 + transitivePeerDependencies: + - oxc-resolver + - supports-color + rolldown@1.0.0-beta.24: dependencies: '@oxc-project/runtime': 0.75.1 @@ -6437,14 +6578,6 @@ snapshots: '@rolldown/binding-win32-ia32-msvc': 1.0.0-beta.24 '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.24 - rollup-plugin-dts@6.1.1(rollup@4.25.0)(typescript@5.6.2): - dependencies: - magic-string: 0.30.12 - rollup: 4.25.0 - typescript: 5.6.2 - optionalDependencies: - '@babel/code-frame': 7.24.2 - rollup-plugin-esbuild@6.1.1(esbuild@0.24.0)(rollup@4.25.0): dependencies: '@rollup/pluginutils': 5.1.0(rollup@4.25.0) diff --git a/rollup.dts.config.js b/rolldown.dts.config.js similarity index 95% rename from rollup.dts.config.js rename to rolldown.dts.config.js index a45564d51ed..1ad55d9161b 100644 --- a/rollup.dts.config.js +++ b/rolldown.dts.config.js @@ -3,7 +3,7 @@ import assert from 'node:assert/strict' import { parseSync } from 'oxc-parser' import { existsSync, readFileSync, readdirSync, writeFileSync } from 'node:fs' import MagicString from 'magic-string' -import dts from 'rollup-plugin-dts' +import { dts } from 'rolldown-plugin-dts' if (!existsSync('temp/packages')) { console.warn( @@ -19,7 +19,7 @@ const targetPackages = targets : packages export default targetPackages.map( - /** @returns {import('rollup').RollupOptions} */ + /** @returns {import('rolldown').BuildOptions} */ pkg => { return { input: `./temp/packages/${pkg}/src/index.d.ts`, @@ -29,7 +29,7 @@ export default targetPackages.map( }, plugins: [dts(), patchTypes(pkg), ...(pkg === 'vue' ? [copyMts()] : [])], onwarn(warning, warn) { - // during dts rollup, everything is externalized by default + // during dts rolldown, everything is externalized by default if ( warning.code === 'UNRESOLVED_IMPORT' && !warning.exporter?.startsWith('.') @@ -43,7 +43,7 @@ export default targetPackages.map( ) /** - * Patch the dts generated by rollup-plugin-dts + * Patch the dts generated by rolldown-plugin-dts * 1. Convert all types to inline exports * and remove them from the big export {} declaration * otherwise it gets weird in vitepress `defineComponent` call with @@ -51,7 +51,7 @@ export default targetPackages.map( * 2. Append custom augmentations (jsx, macros) * * @param {string} pkg - * @returns {import('rollup').Plugin} + * @returns {import('rolldown').Plugin} */ function patchTypes(pkg) { return { @@ -200,7 +200,7 @@ function patchTypes(pkg) { * two separate declaration files, so we need to copy vue.d.ts to vue.d.mts * upon build. * - * @returns {import('rollup').Plugin} + * @returns {import('rolldown').Plugin} */ function copyMts() { return { diff --git a/scripts/build-types.js b/scripts/build-types.js index 5019460216a..b7dd75dd34e 100644 --- a/scripts/build-types.js +++ b/scripts/build-types.js @@ -2,7 +2,7 @@ import fs from 'node:fs' import path from 'node:path' import glob from 'fast-glob' import { isolatedDeclaration } from 'oxc-transform' -import { rollup } from 'rollup' +import { rolldown } from 'rolldown' import picocolors from 'picocolors' if (fs.existsSync('temp/packages')) { @@ -43,16 +43,16 @@ if (errs) { write(path.join('temp', 'oxc-iso-decl-errors.txt'), errs) } -console.log('bundling dts with rollup-plugin-dts...') +console.log('bundling dts with rolldown-plugin-dts...') -// bundle with rollup-plugin-dts -const rollupConfigs = (await import('../rollup.dts.config.js')).default +// bundle with rolldown-plugin-dts +const rolldownConfigs = (await import('../rolldown.dts.config.js')).default start = performance.now() await Promise.all( - rollupConfigs.map(c => - rollup(c).then(bundle => { + rolldownConfigs.map(c => + rolldown(c).then(bundle => { return bundle.write(c.output).then(() => { console.log(picocolors.gray('built: ') + picocolors.blue(c.output.file)) }) diff --git a/tsconfig.json b/tsconfig.json index 9896083cf14..b443b7fbcbe 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -36,7 +36,8 @@ "packages/vue/jsx-runtime", "packages/runtime-dom/types/jsx.d.ts", "scripts/*", - "rollup.*.js" + "rollup.*.js", + "rolldown.dts.config.js" ], "exclude": ["packages-private/sfc-playground/src/vue-dev-proxy*"] } From d754e71dffab890b13c389a7d950d8807a5d24d7 Mon Sep 17 00:00:00 2001 From: daiwei Date: Wed, 9 Jul 2025 17:21:37 +0800 Subject: [PATCH 3/5] build: update output file paths --- scripts/build.js | 2 -- scripts/create-rolldown-config.js | 16 ++++++++-------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/scripts/build.js b/scripts/build.js index 680c1ece900..63cbecf8568 100644 --- a/scripts/build.js +++ b/scripts/build.js @@ -120,8 +120,6 @@ async function buildAll(targets) { all.push( Promise.all( configs.map(c => { - // @ts-expect-error - c.output.file = path.join('packages', t, 'dist', c.output.file) return rolldown(c).then(bundle => { // @ts-expect-error return bundle.write(c.output).then(() => { diff --git a/scripts/create-rolldown-config.js b/scripts/create-rolldown-config.js index 512bf7b924b..c090af523cf 100644 --- a/scripts/create-rolldown-config.js +++ b/scripts/create-rolldown-config.js @@ -59,32 +59,32 @@ export function createConfigsForPackage({ /** @type {Record} */ const outputConfigs = { 'esm-bundler': { - file: `${name}.esm-bundler.js`, + file: resolve(`dist/${name}.esm-bundler.js`), format: 'es', }, 'esm-browser': { - file: `${name}.esm-browser.js`, + file: resolve(`dist/${name}.esm-browser.js`), format: 'es', }, cjs: { - file: `${name}.cjs.js`, + file: resolve(`dist/${name}.cjs.js`), format: 'cjs', }, global: { - file: `${name}.global.js`, + file: resolve(`dist/${name}.global.js`), format: 'iife', }, // runtime-only builds, for main "vue" package only 'esm-bundler-runtime': { - file: `${name}.runtime.esm-bundler.js`, + file: resolve(`dist/${name}.runtime.esm-bundler.js`), format: 'es', }, 'esm-browser-runtime': { - file: `${name}.runtime.esm-browser.js`, + file: resolve(`dist/${name}.runtime.esm-browser.js`), format: 'es', }, 'global-runtime': { - file: `${name}.runtime.global.js`, + file: resolve(`dist/${name}.runtime.global.js`), format: 'iife', }, } @@ -336,7 +336,7 @@ export function createConfigsForPackage({ function createProductionConfig(/** @type {PackageFormat} */ format) { return createConfig(format, { - file: `${name}.${format}.prod.js`, + file: resolve(`dist/${name}.${format}.prod.js`), format: outputConfigs[format].format, }) } From 13ac153333856154e196731b4a044b0a0cd95f8f Mon Sep 17 00:00:00 2001 From: daiwei Date: Wed, 9 Jul 2025 22:24:21 +0800 Subject: [PATCH 4/5] fix: add the external for dts config --- package.json | 2 +- rolldown.dts.config.js | 16 ++++++++++++++++ 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/package.json b/package.json index 768dde47af3..918f75badd5 100644 --- a/package.json +++ b/package.json @@ -8,7 +8,7 @@ "build": "node scripts/build.js", "build-rollup": "node scripts/build-with-rollup.js", "build-dts": "node scripts/build-types.js", - "build-dts-tsc": "tsc -p tsconfig.build.json --noCheck && rollup -c rollup.dts.config.js", + "build-dts-tsc": "tsc -p tsconfig.build.json --noCheck && rolldown -c rolldown.dts.config.js", "clean": "rimraf --glob packages/*/dist temp .eslintcache", "size": "run-s \"size-*\" && node scripts/usage-size.js", "size-global": "node scripts/build.js vue runtime-dom -f global -p --size", diff --git a/rolldown.dts.config.js b/rolldown.dts.config.js index 1ad55d9161b..4666a77301d 100644 --- a/rolldown.dts.config.js +++ b/rolldown.dts.config.js @@ -4,6 +4,9 @@ import { parseSync } from 'oxc-parser' import { existsSync, readFileSync, readdirSync, writeFileSync } from 'node:fs' import MagicString from 'magic-string' import { dts } from 'rolldown-plugin-dts' +import { createRequire } from 'node:module' +import { fileURLToPath } from 'node:url' +import path from 'node:path' if (!existsSync('temp/packages')) { console.warn( @@ -12,12 +15,24 @@ if (!existsSync('temp/packages')) { process.exit(1) } +const require = createRequire(import.meta.url) +const __dirname = fileURLToPath(new URL('.', import.meta.url)) +const packagesDir = path.resolve(__dirname, 'packages') + const packages = readdirSync('temp/packages') const targets = process.env.TARGETS ? process.env.TARGETS.split(',') : null const targetPackages = targets ? packages.filter(pkg => targets.includes(pkg)) : packages +function resolveExternal(packageName) { + const pkg = require(`${packagesDir}/${packageName}/package.json`) + return [ + ...Object.keys(pkg.dependencies || {}), + ...Object.keys(pkg.peerDependencies || {}), + ] +} + export default targetPackages.map( /** @returns {import('rolldown').BuildOptions} */ pkg => { @@ -27,6 +42,7 @@ export default targetPackages.map( file: `packages/${pkg}/dist/${pkg}.d.ts`, format: 'es', }, + external: resolveExternal(pkg), plugins: [dts(), patchTypes(pkg), ...(pkg === 'vue' ? [copyMts()] : [])], onwarn(warning, warn) { // during dts rolldown, everything is externalized by default From f4ca3cfa1529ddb691866b03212e5eb2cf850e0f Mon Sep 17 00:00:00 2001 From: daiwei Date: Thu, 10 Jul 2025 08:33:46 +0800 Subject: [PATCH 5/5] build: use oxc-minify for code minification --- package.json | 1 + pnpm-lock.yaml | 259 ++++++++++++++++++++++++------ scripts/create-rolldown-config.js | 20 +-- scripts/usage-size.js | 16 +- 4 files changed, 227 insertions(+), 69 deletions(-) diff --git a/package.json b/package.json index 918f75badd5..c3de8bca231 100644 --- a/package.json +++ b/package.json @@ -96,6 +96,7 @@ "npm-run-all2": "^7.0.1", "oxc-parser": "^0.76.0", "oxc-transform": "^0.76.0", + "oxc-minify": "^0.76.0", "picocolors": "^1.1.1", "prettier": "^3.3.3", "pretty-bytes": "^6.1.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 030dbd80429..96b4ed5bdf7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -55,7 +55,7 @@ importers: version: 5.0.4(rollup@4.25.0) '@swc/core': specifier: ^1.9.1 - version: 1.9.1 + version: 1.12.11 '@types/hash-sum': specifier: ^1.0.2 version: 1.0.2 @@ -122,6 +122,9 @@ importers: npm-run-all2: specifier: ^7.0.1 version: 7.0.1 + oxc-minify: + specifier: ^0.76.0 + version: 0.76.0 oxc-parser: specifier: ^0.76.0 version: 0.76.0 @@ -924,6 +927,95 @@ packages: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} engines: {node: '>= 8'} + '@oxc-minify/binding-android-arm64@0.76.0': + resolution: {integrity: sha512-57BcdxLasTh5a2VMr6nQdVIdHCQi6Zn39PmTZMqMAIj1lxb1MnIju9pemhq16OzkhTCzMq1Hs0FZA194e6dUEg==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [android] + + '@oxc-minify/binding-darwin-arm64@0.76.0': + resolution: {integrity: sha512-jfIZW8MBD+vN/XV/IAu0V26hIgRSXeB58KbHPMtuzwKWZuV2fQ7HvOss57etM+0INlJi9h6qDIeyKyQqzt5kqw==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [darwin] + + '@oxc-minify/binding-darwin-x64@0.76.0': + resolution: {integrity: sha512-yIfcGZl5F2Z9VPQWIeupv0uCieILOK8hohsc64KRFaPoqUHdZZPKrxhO/7hv4s3xoFZMY9k22z/TmYRqmyt71g==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [darwin] + + '@oxc-minify/binding-freebsd-x64@0.76.0': + resolution: {integrity: sha512-KhUzycJuPk8nCyPbFio84uMk9HwOQyIRsH/Vx3sWsjNfDyLPv0cF/Wo/7Rf6F1cV1qSorIegaPnQVeSkUkrARg==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [freebsd] + + '@oxc-minify/binding-linux-arm-gnueabihf@0.76.0': + resolution: {integrity: sha512-mloIupz1Xj0enThPyGXmOr6iw3tjlYcOfEqL27hvjch7AA+SqnzWJYF5iRB/jCkGyDoY8QTDx014JmuYC5uTAQ==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + '@oxc-minify/binding-linux-arm-musleabihf@0.76.0': + resolution: {integrity: sha512-h0WVDgCmdlx14NU6pNKlM74YvxAQfODDT0o3UqYdPSvIrFl08qX47nigLHqUaJiYszwdNZyShitknpl7gVeJIA==} + engines: {node: '>=14.0.0'} + cpu: [arm] + os: [linux] + + '@oxc-minify/binding-linux-arm64-gnu@0.76.0': + resolution: {integrity: sha512-0G4qMaQxhwjUVrXyFUwsDvkV/DNVXDHv9GA5Sw1qNBFqDA5tBmvSbCbLY913mrVRCvQGih0BVKsx6lfVd85BHQ==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [linux] + + '@oxc-minify/binding-linux-arm64-musl@0.76.0': + resolution: {integrity: sha512-2FgzZ+GVdhAt8ZNGVt7JvtVsFCI0AEjRygT+W6zrZ/hdKFVzjO5X1yk4L+qmh2MwsaZB0nKki2/gZ0Tjav6dhw==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [linux] + + '@oxc-minify/binding-linux-riscv64-gnu@0.76.0': + resolution: {integrity: sha512-qvOksH0YvrQ6neST5Dfd0JiKPShbfDK+Sa7WYteCqapX5VfjRcBRaacU8o+GATbD/PV5GBsIzSkhH+fY86f2Hw==} + engines: {node: '>=14.0.0'} + cpu: [riscv64] + os: [linux] + + '@oxc-minify/binding-linux-s390x-gnu@0.76.0': + resolution: {integrity: sha512-+rBIgzsLds1ePjKVco0psBL1L+4xhdiWdEoL2niLFj+/dZvTLOlPzsW+sSuWNjSFoP9nd8jD+wUTEiV53xsKNw==} + engines: {node: '>=14.0.0'} + cpu: [s390x] + os: [linux] + + '@oxc-minify/binding-linux-x64-gnu@0.76.0': + resolution: {integrity: sha512-72HLmtFX6skE2pAnpON+yWEPJxi1fLttcEYkg1sc1kL1DyDuf6JCXHoA+o0aS299HjOyKpmynAtJ4C9LYWVijQ==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [linux] + + '@oxc-minify/binding-linux-x64-musl@0.76.0': + resolution: {integrity: sha512-YZMyttoPUql03kYxrWjCuve2nxbpbEq6Ab1K2UGX8CGtIQFhXn9rB6erRSzLwvmSilIAFwdgml3sBnrC/2lz1w==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [linux] + + '@oxc-minify/binding-wasm32-wasi@0.76.0': + resolution: {integrity: sha512-IFG1cdn3JPQ0VesAD5MV/77c+W0rhE2C5RSyUITaNYn/SikHtyQBpq9H4M8ytQ29dm/WariOoNVqliaLeLkOUg==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@oxc-minify/binding-win32-arm64-msvc@0.76.0': + resolution: {integrity: sha512-ITflQZN4Gs6zmN2ort+HJJ5XN5nIBLqs3HsC4WzzHRajm1Lf8KZbX0JmK4cHcDwwPZkrinJkH2Rkw71nY5XvIQ==} + engines: {node: '>=14.0.0'} + cpu: [arm64] + os: [win32] + + '@oxc-minify/binding-win32-x64-msvc@0.76.0': + resolution: {integrity: sha512-4MPXaTXm2LzKnZkq65unanen7XLcuWxRLM95zEhBJHQ4wTOGrK9BAmT3K/2pD4eXjit/QFnP9GMc1/UUrLVY7Q==} + engines: {node: '>=14.0.0'} + cpu: [x64] + os: [win32] + '@oxc-parser/binding-android-arm64@0.76.0': resolution: {integrity: sha512-1XJW/16CDmF5bHE7LAyPPmEEVnxSadDgdJz+xiLqBrmC4lfAeuAfRw3HlOygcPGr+AJsbD4Z5sFJMkwjbSZlQg==} engines: {node: '>=20.0.0'} @@ -1416,71 +1508,71 @@ packages: cpu: [x64] os: [win32] - '@swc/core-darwin-arm64@1.9.1': - resolution: {integrity: sha512-2/ncHSCdAh5OHem1fMITrWEzzl97OdMK1PHc9CkxSJnphLjRubfxB5sbc5tDhcO68a5tVy+DxwaBgDec3PXnOg==} + '@swc/core-darwin-arm64@1.12.11': + resolution: {integrity: sha512-J19Jj9Y5x/N0loExH7W0OI9OwwoVyxutDdkyq1o/kgXyBqmmzV7Y/Q9QekI2Fm/qc5mNeAdP7aj4boY4AY/JPw==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.9.1': - resolution: {integrity: sha512-4MDOFC5zmNqRJ9RGFOH95oYf27J9HniLVpB1pYm2gGeNHdl2QvDMtx2QTuMHQ6+OTn/3y1BHYuhBGp7d405oLA==} + '@swc/core-darwin-x64@1.12.11': + resolution: {integrity: sha512-PTuUQrfStQ6cjW+uprGO2lpQHy84/l0v+GqRqq8s/jdK55rFRjMfCeyf6FAR0l6saO5oNOQl+zWR1aNpj8pMQw==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.9.1': - resolution: {integrity: sha512-eVW/BjRW8/HpLe3+1jRU7w7PdRLBgnEEYTkHJISU8805/EKT03xNZn6CfaBpKfeAloY4043hbGzE/NP9IahdpQ==} + '@swc/core-linux-arm-gnueabihf@1.12.11': + resolution: {integrity: sha512-poxBq152HsupOtnZilenvHmxZ9a8SRj4LtfxUnkMDNOGrZR9oxbQNwEzNKfi3RXEcXz+P8c0Rai1ubBazXv8oQ==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.9.1': - resolution: {integrity: sha512-8m3u1v8R8NgI/9+cHMkzk14w87blSy3OsQPWPfhOL+XPwhyLPvat+ahQJb2nZmltjTgkB4IbzKFSfbuA34LmNA==} + '@swc/core-linux-arm64-gnu@1.12.11': + resolution: {integrity: sha512-y1HNamR/D0Hc8xIE910ysyLe269UYiGaQPoLjQS0phzWFfWdMj9bHM++oydVXZ4RSWycO7KyJ3uvw4NilvyMKQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.9.1': - resolution: {integrity: sha512-hpT0sQAZnW8l02I289yeyFfT9llGO9PzKDxUq8pocKtioEHiElRqR53juCWoSmzuWi+6KX7zUJ0NKCBrc8pmDg==} + '@swc/core-linux-arm64-musl@1.12.11': + resolution: {integrity: sha512-LlBxPh/32pyQsu2emMEOFRm7poEFLsw12Y1mPY7FWZiZeptomKSOSHRzKDz9EolMiV4qhK1caP1lvW4vminYgQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.9.1': - resolution: {integrity: sha512-sGFdpdAYusk/ropHiwtXom2JrdaKPxl8MqemRv6dvxZq1Gm/GdmOowxdXIPjCgBGMgoXVcgNviH6CgiO5q+UtA==} + '@swc/core-linux-x64-gnu@1.12.11': + resolution: {integrity: sha512-bOjiZB8O/1AzHkzjge1jqX62HGRIpOHqFUrGPfAln/NC6NR+Z2A78u3ixV7k5KesWZFhCV0YVGJL+qToL27myA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.9.1': - resolution: {integrity: sha512-YtNLNwIWs0Z2+XgBs6+LrCIGtfCDtNr4S4b6Q5HDOreEIGzSvhkef8eyBI5L+fJ2eGov4b7iEo61C4izDJS5RA==} + '@swc/core-linux-x64-musl@1.12.11': + resolution: {integrity: sha512-4dzAtbT/m3/UjF045+33gLiHd8aSXJDoqof7gTtu4q0ZyAf7XJ3HHspz+/AvOJLVo4FHHdFcdXhmo/zi1nFn8A==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.9.1': - resolution: {integrity: sha512-qSxD3uZW2vSiHqUt30vUi0PB92zDh9bjqh5YKpfhhVa7h1vt/xXhlid8yMvSNToTfzhRrTEffOAPUr7WVoyQUA==} + '@swc/core-win32-arm64-msvc@1.12.11': + resolution: {integrity: sha512-h8HiwBZErKvCAmjW92JvQp0iOqm6bncU4ac5jxBGkRApabpUenNJcj3h2g5O6GL5K6T9/WhnXE5gyq/s1fhPQg==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.9.1': - resolution: {integrity: sha512-C3fPEwyX/WRPlX6zIToNykJuz1JkZX0sk8H1QH2vpnKuySUkt/Ur5K2FzLgSWzJdbfxstpgS151/es0VGAD+ZA==} + '@swc/core-win32-ia32-msvc@1.12.11': + resolution: {integrity: sha512-1pwr325mXRNUhxTtXmx1IokV5SiRL+6iDvnt3FRXj+X5UvXXKtg2zeyftk+03u8v8v8WUr5I32hIypVJPTNxNg==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.9.1': - resolution: {integrity: sha512-2XZ+U1AyVsOAXeH6WK1syDm7+gwTjA8fShs93WcbxnK7HV+NigDlvr4124CeJLTHyh3fMh1o7+CnQnaBJhlysQ==} + '@swc/core-win32-x64-msvc@1.12.11': + resolution: {integrity: sha512-5gggWo690Gvs7XiPxAmb5tHwzB9RTVXUV7AWoGb6bmyUd1OXYaebQF0HAOtade5jIoNhfQMQJ7QReRgt/d2jAA==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.9.1': - resolution: {integrity: sha512-OnPc+Kt5oy3xTvr/KCUOqE9ptJcWbyQgAUr1ydh9EmbBcmJTaO1kfQCxm/axzJi6sKeDTxL9rX5zvLOhoYIaQw==} + '@swc/core@1.12.11': + resolution: {integrity: sha512-P3GM+0lqjFctcp5HhR9mOcvLSX3SptI9L1aux0Fuvgt8oH4f92rCUrkodAa0U2ktmdjcyIiG37xg2mb/dSCYSA==} engines: {node: '>=10'} peerDependencies: - '@swc/helpers': '*' + '@swc/helpers': '>=0.5.17' peerDependenciesMeta: '@swc/helpers': optional: true @@ -1488,8 +1580,8 @@ packages: '@swc/counter@0.1.3': resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} - '@swc/types@0.1.14': - resolution: {integrity: sha512-PbSmTiYCN+GMrvfjrMo9bdY+f2COnwbdnoMw7rqU/PI5jXpKjxOGZ0qqZCImxnT81NkNsKnmEpvu+hRXLBeCJg==} + '@swc/types@0.1.23': + resolution: {integrity: sha512-u1iIVZV9Q0jxY+yM2vw/hZGDNudsN85bBpTqzAQ9rzkxW9D+e3aEM4Han+ow518gSewkXgjmEK0BD79ZcNVgPw==} '@tootallnate/quickjs-emscripten@0.23.0': resolution: {integrity: sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==} @@ -2984,6 +3076,10 @@ packages: resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==} engines: {node: '>= 0.8.0'} + oxc-minify@0.76.0: + resolution: {integrity: sha512-/iHPSaGtclInehAv38dpCgnaecgpDeEf+3GJjIVJhCFx8eJm6cEwoIUJXoOq0M4wzfk1CxT+E6+NH6GBIAglTQ==} + engines: {node: '>=14.0.0'} + oxc-parser@0.76.0: resolution: {integrity: sha512-l98B2e9evuhES7zN99rb1QGhbzx25829TJFaKi2j0ib3/K/G5z1FdGYz6HZkrU3U8jdH7v2FC8mX1j2l9JrOUg==} engines: {node: '>=20.0.0'} @@ -4184,6 +4280,53 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.17.1 + '@oxc-minify/binding-android-arm64@0.76.0': + optional: true + + '@oxc-minify/binding-darwin-arm64@0.76.0': + optional: true + + '@oxc-minify/binding-darwin-x64@0.76.0': + optional: true + + '@oxc-minify/binding-freebsd-x64@0.76.0': + optional: true + + '@oxc-minify/binding-linux-arm-gnueabihf@0.76.0': + optional: true + + '@oxc-minify/binding-linux-arm-musleabihf@0.76.0': + optional: true + + '@oxc-minify/binding-linux-arm64-gnu@0.76.0': + optional: true + + '@oxc-minify/binding-linux-arm64-musl@0.76.0': + optional: true + + '@oxc-minify/binding-linux-riscv64-gnu@0.76.0': + optional: true + + '@oxc-minify/binding-linux-s390x-gnu@0.76.0': + optional: true + + '@oxc-minify/binding-linux-x64-gnu@0.76.0': + optional: true + + '@oxc-minify/binding-linux-x64-musl@0.76.0': + optional: true + + '@oxc-minify/binding-wasm32-wasi@0.76.0': + dependencies: + '@napi-rs/wasm-runtime': 0.2.11 + optional: true + + '@oxc-minify/binding-win32-arm64-msvc@0.76.0': + optional: true + + '@oxc-minify/binding-win32-x64-msvc@0.76.0': + optional: true + '@oxc-parser/binding-android-arm64@0.76.0': optional: true @@ -4508,55 +4651,55 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.25.0': optional: true - '@swc/core-darwin-arm64@1.9.1': + '@swc/core-darwin-arm64@1.12.11': optional: true - '@swc/core-darwin-x64@1.9.1': + '@swc/core-darwin-x64@1.12.11': optional: true - '@swc/core-linux-arm-gnueabihf@1.9.1': + '@swc/core-linux-arm-gnueabihf@1.12.11': optional: true - '@swc/core-linux-arm64-gnu@1.9.1': + '@swc/core-linux-arm64-gnu@1.12.11': optional: true - '@swc/core-linux-arm64-musl@1.9.1': + '@swc/core-linux-arm64-musl@1.12.11': optional: true - '@swc/core-linux-x64-gnu@1.9.1': + '@swc/core-linux-x64-gnu@1.12.11': optional: true - '@swc/core-linux-x64-musl@1.9.1': + '@swc/core-linux-x64-musl@1.12.11': optional: true - '@swc/core-win32-arm64-msvc@1.9.1': + '@swc/core-win32-arm64-msvc@1.12.11': optional: true - '@swc/core-win32-ia32-msvc@1.9.1': + '@swc/core-win32-ia32-msvc@1.12.11': optional: true - '@swc/core-win32-x64-msvc@1.9.1': + '@swc/core-win32-x64-msvc@1.12.11': optional: true - '@swc/core@1.9.1': + '@swc/core@1.12.11': dependencies: '@swc/counter': 0.1.3 - '@swc/types': 0.1.14 + '@swc/types': 0.1.23 optionalDependencies: - '@swc/core-darwin-arm64': 1.9.1 - '@swc/core-darwin-x64': 1.9.1 - '@swc/core-linux-arm-gnueabihf': 1.9.1 - '@swc/core-linux-arm64-gnu': 1.9.1 - '@swc/core-linux-arm64-musl': 1.9.1 - '@swc/core-linux-x64-gnu': 1.9.1 - '@swc/core-linux-x64-musl': 1.9.1 - '@swc/core-win32-arm64-msvc': 1.9.1 - '@swc/core-win32-ia32-msvc': 1.9.1 - '@swc/core-win32-x64-msvc': 1.9.1 + '@swc/core-darwin-arm64': 1.12.11 + '@swc/core-darwin-x64': 1.12.11 + '@swc/core-linux-arm-gnueabihf': 1.12.11 + '@swc/core-linux-arm64-gnu': 1.12.11 + '@swc/core-linux-arm64-musl': 1.12.11 + '@swc/core-linux-x64-gnu': 1.12.11 + '@swc/core-linux-x64-musl': 1.12.11 + '@swc/core-win32-arm64-msvc': 1.12.11 + '@swc/core-win32-ia32-msvc': 1.12.11 + '@swc/core-win32-x64-msvc': 1.12.11 '@swc/counter@0.1.3': {} - '@swc/types@0.1.14': + '@swc/types@0.1.23': dependencies: '@swc/counter': 0.1.3 @@ -6149,6 +6292,24 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 + oxc-minify@0.76.0: + optionalDependencies: + '@oxc-minify/binding-android-arm64': 0.76.0 + '@oxc-minify/binding-darwin-arm64': 0.76.0 + '@oxc-minify/binding-darwin-x64': 0.76.0 + '@oxc-minify/binding-freebsd-x64': 0.76.0 + '@oxc-minify/binding-linux-arm-gnueabihf': 0.76.0 + '@oxc-minify/binding-linux-arm-musleabihf': 0.76.0 + '@oxc-minify/binding-linux-arm64-gnu': 0.76.0 + '@oxc-minify/binding-linux-arm64-musl': 0.76.0 + '@oxc-minify/binding-linux-riscv64-gnu': 0.76.0 + '@oxc-minify/binding-linux-s390x-gnu': 0.76.0 + '@oxc-minify/binding-linux-x64-gnu': 0.76.0 + '@oxc-minify/binding-linux-x64-musl': 0.76.0 + '@oxc-minify/binding-wasm32-wasi': 0.76.0 + '@oxc-minify/binding-win32-arm64-msvc': 0.76.0 + '@oxc-minify/binding-win32-x64-msvc': 0.76.0 + oxc-parser@0.76.0: dependencies: '@oxc-project/types': 0.76.0 diff --git a/scripts/create-rolldown-config.js b/scripts/create-rolldown-config.js index c090af523cf..443ec87d405 100644 --- a/scripts/create-rolldown-config.js +++ b/scripts/create-rolldown-config.js @@ -8,7 +8,7 @@ import pico from 'picocolors' import polyfillNode from '@rolldown/plugin-node-polyfills' import { entries } from './aliases.js' import { inlineEnums } from './inline-enums.js' -import { minify as minifySwc } from '@swc/core' +import { minify as minifyOxc } from 'oxc-minify' const require = createRequire(import.meta.url) const __dirname = fileURLToPath(new URL('.', import.meta.url)) @@ -351,21 +351,15 @@ export function createConfigsForPackage({ }, [ { - name: 'swc-minify', - async renderChunk(contents, _, { format }) { - const { code } = await minifySwc(contents, { - module: format === 'es', - format: { - comments: false, - }, + name: 'oxc-minify', + async renderChunk(contents, _, { file }) { + // @ts-expect-error + const { code } = await minifyOxc(file, contents, { + mangle: true, compress: { - ecma: 2016, - pure_getters: true, + target: 'es2016', }, - safari10: true, - mangle: true, }) - // swc removes banner return { code: banner + code, map: null } }, }, diff --git a/scripts/usage-size.js b/scripts/usage-size.js index c68e3703b91..0bb2a727f31 100644 --- a/scripts/usage-size.js +++ b/scripts/usage-size.js @@ -1,9 +1,9 @@ // @ts-check import { mkdir, writeFile } from 'node:fs/promises' import path from 'node:path' -import { rollup } from 'rollup' +import { rolldown } from 'rolldown' import nodeResolve from '@rollup/plugin-node-resolve' -import { minify } from '@swc/core' +import { minify } from 'oxc-minify' import replace from '@rollup/plugin-replace' import { brotliCompressSync, gzipSync } from 'node:zlib' import { parseArgs } from 'node:util' @@ -95,7 +95,7 @@ async function generateBundle(preset) { const id = 'virtual:entry' const content = `export { ${preset.imports.join(', ')} } from '${entry}'` - const result = await rollup({ + const result = await rolldown({ input: id, plugins: [ { @@ -122,10 +122,12 @@ async function generateBundle(preset) { const generated = await result.generate({}) const bundled = generated.output[0].code + const file = preset.name + '.js' const minified = ( - await minify(bundled, { - module: true, - toplevel: true, + await minify(file, bundled, { + mangle: { + toplevel: true, + }, }) ).code @@ -134,7 +136,7 @@ async function generateBundle(preset) { const brotli = brotliCompressSync(minified).length if (write) { - await writeFile(path.resolve(sizeDir, preset.name + '.js'), bundled) + await writeFile(path.resolve(sizeDir, file), bundled) } return {