summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorsyuilo <4439005+syuilo@users.noreply.github.com>2025-12-11 23:08:26 +0900
committerGitHub <noreply@github.com>2025-12-11 23:08:26 +0900
commit8e6fffee68cfa36f66c0e10f84f159d1ade72e70 (patch)
tree1ec8cbb51dd86ae344b7dffc564a5cf1cd259032
parentfix(sw): オフライン時のfetch timeout処理を実装 (#16952) (diff)
downloadmisskey-8e6fffee68cfa36f66c0e10f84f159d1ade72e70.tar.gz
misskey-8e6fffee68cfa36f66c0e10f84f159d1ade72e70.tar.bz2
misskey-8e6fffee68cfa36f66c0e10f84f159d1ade72e70.zip
enhance: use native glob (#16965)
* enhance: use native glob * remove tiny-glob * remove fast-glob * refactor * fix: use async glob if possible --------- Co-authored-by: kakkokari-gtyih <67428053+kakkokari-gtyih@users.noreply.github.com>
-rw-r--r--package.json2
-rw-r--r--packages/frontend-embed/package.json1
-rw-r--r--packages/frontend-shared/build.js3
-rw-r--r--packages/frontend/.storybook/generate.tsx66
-rw-r--r--packages/frontend/lib/vite-plugin-create-search-index.ts3
-rw-r--r--packages/frontend/package.json1
-rw-r--r--packages/i18n/build.ts3
-rw-r--r--packages/i18n/package.json1
-rw-r--r--packages/icons-subsetter/package.json1
-rw-r--r--packages/icons-subsetter/src/generator.ts9
-rw-r--r--packages/misskey-bubble-game/build.js3
-rw-r--r--packages/misskey-bubble-game/package.json1
-rw-r--r--packages/misskey-js/build.js3
-rw-r--r--packages/misskey-js/package.json1
-rw-r--r--packages/misskey-reversi/build.js3
-rw-r--r--packages/misskey-reversi/package.json1
-rw-r--r--pnpm-lock.yaml55
-rw-r--r--scripts/tarball.mjs5
18 files changed, 44 insertions, 118 deletions
diff --git a/package.json b/package.json
index 40542046eb..d7067f705e 100644
--- a/package.json
+++ b/package.json
@@ -60,8 +60,6 @@
"cssnano": "7.1.2",
"esbuild": "0.27.0",
"execa": "9.6.0",
- "fast-glob": "3.3.3",
- "glob": "13.0.0",
"ignore-walk": "8.0.0",
"js-yaml": "4.1.1",
"postcss": "8.5.6",
diff --git a/packages/frontend-embed/package.json b/packages/frontend-embed/package.json
index 6122f2cab6..cdf13120c0 100644
--- a/packages/frontend-embed/package.json
+++ b/packages/frontend-embed/package.json
@@ -56,7 +56,6 @@
"cross-env": "10.1.0",
"eslint-plugin-import": "2.32.0",
"eslint-plugin-vue": "10.6.2",
- "fast-glob": "3.3.3",
"happy-dom": "20.0.11",
"intersection-observer": "0.12.2",
"micromatch": "4.0.8",
diff --git a/packages/frontend-shared/build.js b/packages/frontend-shared/build.js
index 9941114757..07e98ad182 100644
--- a/packages/frontend-shared/build.js
+++ b/packages/frontend-shared/build.js
@@ -3,14 +3,13 @@ import { fileURLToPath } from 'node:url';
import { dirname } from 'node:path';
import * as esbuild from 'esbuild';
import { build } from 'esbuild';
-import { globSync } from 'glob';
import { execa } from 'execa';
const _filename = fileURLToPath(import.meta.url);
const _dirname = dirname(_filename);
const _package = JSON.parse(fs.readFileSync(_dirname + '/package.json', 'utf-8'));
-const entryPoints = globSync('./js/**/**.{ts,tsx}');
+const entryPoints = fs.globSync('./js/**/**.{ts,tsx}');
/** @type {import('esbuild').BuildOptions} */
const options = {
diff --git a/packages/frontend/.storybook/generate.tsx b/packages/frontend/.storybook/generate.tsx
index 89d4214141..6005049dde 100644
--- a/packages/frontend/.storybook/generate.tsx
+++ b/packages/frontend/.storybook/generate.tsx
@@ -3,12 +3,11 @@
* SPDX-License-Identifier: AGPL-3.0-only
*/
-import { existsSync, readFileSync } from 'node:fs';
+import { existsSync, readFileSync, globSync } from 'node:fs';
import { writeFile } from 'node:fs/promises';
import { basename, dirname } from 'node:path/posix';
import { GENERATOR, type State, generate } from 'astring';
import type * as estree from 'estree';
-import glob from 'fast-glob';
import { format } from 'prettier';
interface SatisfiesExpression extends estree.BaseExpression {
@@ -439,38 +438,37 @@ function toStories(component: string): Promise<string> {
// glob('src/{components,pages,ui,widgets}/**/*.vue')
(async () => {
- const globs = await Promise.all([
- glob('src/components/global/Mk*.vue'),
- glob('src/components/global/RouterView.vue'),
- glob('src/components/MkAbuseReportWindow.vue'),
- glob('src/components/MkAccountMoved.vue'),
- glob('src/components/MkAchievements.vue'),
- glob('src/components/MkAnalogClock.vue'),
- glob('src/components/MkAnimBg.vue'),
- glob('src/components/MkAnnouncementDialog.vue'),
- glob('src/components/MkAntennaEditor.vue'),
- glob('src/components/MkAntennaEditorDialog.vue'),
- glob('src/components/MkAsUi.vue'),
- glob('src/components/MkAutocomplete.vue'),
- glob('src/components/MkAvatars.vue'),
- glob('src/components/Mk[B-E]*.vue'),
- glob('src/components/MkFlashPreview.vue'),
- glob('src/components/MkGalleryPostPreview.vue'),
- glob('src/components/MkSignupServerRules.vue'),
- glob('src/components/MkUserSetupDialog.vue'),
- glob('src/components/MkUserSetupDialog.*.vue'),
- glob('src/components/MkImgPreviewDialog.vue'),
- glob('src/components/MkInstanceCardMini.vue'),
- glob('src/components/MkInviteCode.vue'),
- glob('src/components/MkTagItem.vue'),
- glob('src/components/MkRoleSelectDialog.vue'),
- glob('src/components/grid/MkGrid.vue'),
- glob('src/pages/admin/custom-emojis-manager2.vue'),
- glob('src/pages/admin/overview.ap-requests.vue'),
- glob('src/pages/user/home.vue'),
- glob('src/pages/search.vue'),
- ]);
- const components = globs.flat();
+ const components = [
+ globSync('src/components/global/Mk*.vue'),
+ globSync('src/components/global/RouterView.vue'),
+ globSync('src/components/MkAbuseReportWindow.vue'),
+ globSync('src/components/MkAccountMoved.vue'),
+ globSync('src/components/MkAchievements.vue'),
+ globSync('src/components/MkAnalogClock.vue'),
+ globSync('src/components/MkAnimBg.vue'),
+ globSync('src/components/MkAnnouncementDialog.vue'),
+ globSync('src/components/MkAntennaEditor.vue'),
+ globSync('src/components/MkAntennaEditorDialog.vue'),
+ globSync('src/components/MkAsUi.vue'),
+ globSync('src/components/MkAutocomplete.vue'),
+ globSync('src/components/MkAvatars.vue'),
+ globSync('src/components/Mk[B-E]*.vue'),
+ globSync('src/components/MkFlashPreview.vue'),
+ globSync('src/components/MkGalleryPostPreview.vue'),
+ globSync('src/components/MkSignupServerRules.vue'),
+ globSync('src/components/MkUserSetupDialog.vue'),
+ globSync('src/components/MkUserSetupDialog.*.vue'),
+ globSync('src/components/MkImgPreviewDialog.vue'),
+ globSync('src/components/MkInstanceCardMini.vue'),
+ globSync('src/components/MkInviteCode.vue'),
+ globSync('src/components/MkTagItem.vue'),
+ globSync('src/components/MkRoleSelectDialog.vue'),
+ globSync('src/components/grid/MkGrid.vue'),
+ globSync('src/pages/admin/custom-emojis-manager2.vue'),
+ globSync('src/pages/admin/overview.ap-requests.vue'),
+ globSync('src/pages/user/home.vue'),
+ globSync('src/pages/search.vue'),
+ ].flat();
await Promise.all(components.map(async (component) => {
const stories = component.replace(/\.vue$/, '.stories.ts');
await writeFile(stories, await toStories(component));
diff --git a/packages/frontend/lib/vite-plugin-create-search-index.ts b/packages/frontend/lib/vite-plugin-create-search-index.ts
index f17b43b0e3..cfbba0823c 100644
--- a/packages/frontend/lib/vite-plugin-create-search-index.ts
+++ b/packages/frontend/lib/vite-plugin-create-search-index.ts
@@ -16,7 +16,6 @@ import {
type PluginOption
} from 'vite';
import fs from 'node:fs';
-import { glob } from 'glob';
import JSON5 from 'json5';
import MagicString, { SourceMap } from 'magic-string';
import path from 'node:path'
@@ -724,7 +723,7 @@ export function pluginCreateSearchIndexVirtualModule(options: Options, asigner:
async load(id) {
if (id == '\0' + allSearchIndexFile) {
- const files = await Promise.all(options.targetFilePaths.map(async (filePathPattern) => await glob(filePathPattern))).then(paths => paths.flat());
+ const files = options.targetFilePaths.map((filePathPattern) => fs.globSync(filePathPattern)).flat();
let generatedFile = '';
let arrayElements = '';
for (let file of files) {
diff --git a/packages/frontend/package.json b/packages/frontend/package.json
index c9d49201c4..785dbbcfab 100644
--- a/packages/frontend/package.json
+++ b/packages/frontend/package.json
@@ -128,7 +128,6 @@
"cypress": "15.7.0",
"eslint-plugin-import": "2.32.0",
"eslint-plugin-vue": "10.6.2",
- "fast-glob": "3.3.3",
"happy-dom": "20.0.11",
"intersection-observer": "0.12.2",
"micromatch": "4.0.8",
diff --git a/packages/i18n/build.ts b/packages/i18n/build.ts
index a6bbf7dc63..21bf2996b4 100644
--- a/packages/i18n/build.ts
+++ b/packages/i18n/build.ts
@@ -10,7 +10,6 @@ import { watch as chokidarWatch } from 'chokidar';
import * as esbuild from 'esbuild';
import { build } from 'esbuild';
import { execa } from 'execa';
-import { globSync } from 'glob';
import { generateLocaleInterface } from './scripts/generateLocaleInterface.js';
import type { BuildOptions, BuildResult, Plugin, PluginBuild } from 'esbuild';
@@ -22,7 +21,7 @@ const _rootPackage = JSON.parse(fs.readFileSync(resolve(_rootPackageDir, 'packag
const _frontendLocalesDir = resolve(_dirname, '../../built/_frontend_dist_/locales');
const _localesDir = resolve(_rootPackageDir, 'locales');
-const entryPoints = globSync('./src/**/**.{ts,tsx}');
+const entryPoints = fs.globSync('./src/**/**.{ts,tsx}');
const options: BuildOptions = {
entryPoints,
diff --git a/packages/i18n/package.json b/packages/i18n/package.json
index 6ba41632e8..0354c26d15 100644
--- a/packages/i18n/package.json
+++ b/packages/i18n/package.json
@@ -35,7 +35,6 @@
"chokidar": "4.0.3",
"esbuild": "0.27.0",
"execa": "9.6.0",
- "glob": "11.1.0",
"nodemon": "3.1.11",
"tsx": "4.20.6",
"typescript": "5.9.3"
diff --git a/packages/icons-subsetter/package.json b/packages/icons-subsetter/package.json
index 2c6eac150b..597520ff36 100644
--- a/packages/icons-subsetter/package.json
+++ b/packages/icons-subsetter/package.json
@@ -19,7 +19,6 @@
"dependencies": {
"@tabler/icons-webfont": "3.35.0",
"harfbuzzjs": "0.4.13",
- "tiny-glob": "0.2.9",
"tsx": "4.20.6",
"typescript": "5.9.3",
"wawoff2": "2.0.1"
diff --git a/packages/icons-subsetter/src/generator.ts b/packages/icons-subsetter/src/generator.ts
index 1a9e3d8fd2..811972baae 100644
--- a/packages/icons-subsetter/src/generator.ts
+++ b/packages/icons-subsetter/src/generator.ts
@@ -3,9 +3,8 @@
* SPDX-License-Identifier: AGPL-3.0-only
*/
-import { promises as fsp, existsSync } from 'fs';
-import path from 'path';
-import glob from 'tiny-glob';
+import { promises as fsp, existsSync } from 'node:fs';
+import path from 'node:path';
import { generateSubsettedFont } from './subsetter.js';
const filesToScan = {
@@ -47,8 +46,8 @@ async function main() {
const iconsToPack = new Set<string>();
const cwd = path.resolve(process.cwd(), '../../');
- const files = await glob(dir, { cwd });
- for (const file of files) {
+ const files = fsp.glob(dir, { cwd });
+ for await (const file of files) {
//console.log(`Scanning ${file}`);
const content = await fsp.readFile(path.resolve(cwd, file), 'utf-8');
const classRegex = /ti-[a-z0-9-]+/g;
diff --git a/packages/misskey-bubble-game/build.js b/packages/misskey-bubble-game/build.js
index 5d534cc6fd..1a6f87a8e8 100644
--- a/packages/misskey-bubble-game/build.js
+++ b/packages/misskey-bubble-game/build.js
@@ -3,14 +3,13 @@ import { fileURLToPath } from 'node:url';
import { dirname } from 'node:path';
import * as esbuild from 'esbuild';
import { build } from 'esbuild';
-import { globSync } from 'glob';
import { execa } from 'execa';
const _filename = fileURLToPath(import.meta.url);
const _dirname = dirname(_filename);
const _package = JSON.parse(fs.readFileSync(_dirname + '/package.json', 'utf-8'));
-const entryPoints = globSync('./src/**/**.{ts,tsx}');
+const entryPoints = fs.globSync('./src/**/**.{ts,tsx}');
/** @type {import('esbuild').BuildOptions} */
const options = {
diff --git a/packages/misskey-bubble-game/package.json b/packages/misskey-bubble-game/package.json
index 8dd68aec44..978d77e0e4 100644
--- a/packages/misskey-bubble-game/package.json
+++ b/packages/misskey-bubble-game/package.json
@@ -31,7 +31,6 @@
"@typescript-eslint/parser": "8.48.0",
"esbuild": "0.27.0",
"execa": "9.6.0",
- "glob": "11.1.0",
"nodemon": "3.1.11",
"typescript": "5.9.3"
},
diff --git a/packages/misskey-js/build.js b/packages/misskey-js/build.js
index b794592815..68535556d3 100644
--- a/packages/misskey-js/build.js
+++ b/packages/misskey-js/build.js
@@ -3,14 +3,13 @@ import { fileURLToPath } from 'node:url';
import { dirname } from 'node:path';
import * as esbuild from 'esbuild';
import { build } from 'esbuild';
-import { globSync } from 'glob';
import { execa } from 'execa';
const _filename = fileURLToPath(import.meta.url);
const _dirname = dirname(_filename);
const _package = JSON.parse(fs.readFileSync(_dirname + '/package.json', 'utf-8'));
-const entryPoints = globSync('./src/**/**.{ts,tsx}');
+const entryPoints = fs.globSync('./src/**/**.{ts,tsx}');
/** @type {import('esbuild').BuildOptions} */
const options = {
diff --git a/packages/misskey-js/package.json b/packages/misskey-js/package.json
index 1c0e6ceee6..c549eaf0e4 100644
--- a/packages/misskey-js/package.json
+++ b/packages/misskey-js/package.json
@@ -44,7 +44,6 @@
"@vitest/coverage-v8": "4.0.13",
"esbuild": "0.27.0",
"execa": "9.6.0",
- "glob": "13.0.0",
"ncp": "2.0.0",
"nodemon": "3.1.11",
"tsd": "0.33.0",
diff --git a/packages/misskey-reversi/build.js b/packages/misskey-reversi/build.js
index 5d534cc6fd..1a6f87a8e8 100644
--- a/packages/misskey-reversi/build.js
+++ b/packages/misskey-reversi/build.js
@@ -3,14 +3,13 @@ import { fileURLToPath } from 'node:url';
import { dirname } from 'node:path';
import * as esbuild from 'esbuild';
import { build } from 'esbuild';
-import { globSync } from 'glob';
import { execa } from 'execa';
const _filename = fileURLToPath(import.meta.url);
const _dirname = dirname(_filename);
const _package = JSON.parse(fs.readFileSync(_dirname + '/package.json', 'utf-8'));
-const entryPoints = globSync('./src/**/**.{ts,tsx}');
+const entryPoints = fs.globSync('./src/**/**.{ts,tsx}');
/** @type {import('esbuild').BuildOptions} */
const options = {
diff --git a/packages/misskey-reversi/package.json b/packages/misskey-reversi/package.json
index 30eace87fe..85c829204e 100644
--- a/packages/misskey-reversi/package.json
+++ b/packages/misskey-reversi/package.json
@@ -29,7 +29,6 @@
"@typescript-eslint/parser": "8.48.0",
"esbuild": "0.27.0",
"execa": "9.6.0",
- "glob": "11.1.0",
"nodemon": "3.1.11",
"typescript": "5.9.3"
},
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index c9fa1c4a01..56a73fb5fa 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -22,12 +22,6 @@ importers:
execa:
specifier: 9.6.0
version: 9.6.0
- fast-glob:
- specifier: 3.3.3
- version: 3.3.3
- glob:
- specifier: 13.0.0
- version: 13.0.0
ignore-walk:
specifier: 8.0.0
version: 8.0.0
@@ -1011,9 +1005,6 @@ importers:
eslint-plugin-vue:
specifier: 10.6.2
version: 10.6.2(@stylistic/eslint-plugin@5.5.0(eslint@9.39.1))(@typescript-eslint/parser@8.48.0(eslint@9.39.1)(typescript@5.9.3))(eslint@9.39.1)(vue-eslint-parser@10.2.0(eslint@9.39.1))
- fast-glob:
- specifier: 3.3.3
- version: 3.3.3
happy-dom:
specifier: 20.0.11
version: 20.0.11
@@ -1250,9 +1241,6 @@ importers:
eslint-plugin-vue:
specifier: 10.6.2
version: 10.6.2(@stylistic/eslint-plugin@5.5.0(eslint@9.39.1))(@typescript-eslint/parser@8.48.0(eslint@9.39.1)(typescript@5.9.3))(eslint@9.39.1)(vue-eslint-parser@10.2.0(eslint@9.39.1))
- fast-glob:
- specifier: 3.3.3
- version: 3.3.3
happy-dom:
specifier: 20.0.11
version: 20.0.11
@@ -1354,9 +1342,6 @@ importers:
execa:
specifier: 9.6.0
version: 9.6.0
- glob:
- specifier: 11.1.0
- version: 11.1.0
nodemon:
specifier: 3.1.11
version: 3.1.11
@@ -1375,9 +1360,6 @@ importers:
harfbuzzjs:
specifier: 0.4.13
version: 0.4.13
- tiny-glob:
- specifier: 0.2.9
- version: 0.2.9
tsx:
specifier: 4.20.6
version: 4.20.6
@@ -1434,9 +1416,6 @@ importers:
execa:
specifier: 9.6.0
version: 9.6.0
- glob:
- specifier: 11.1.0
- version: 11.1.0
nodemon:
specifier: 3.1.11
version: 3.1.11
@@ -1477,9 +1456,6 @@ importers:
execa:
specifier: 9.6.0
version: 9.6.0
- glob:
- specifier: 13.0.0
- version: 13.0.0
ncp:
specifier: 2.0.0
version: 2.0.0
@@ -1553,9 +1529,6 @@ importers:
execa:
specifier: 9.6.0
version: 9.6.0
- glob:
- specifier: 11.1.0
- version: 11.1.0
nodemon:
specifier: 3.1.11
version: 3.1.11
@@ -7283,10 +7256,6 @@ packages:
engines: {node: 20 || >=22}
hasBin: true
- glob@13.0.0:
- resolution: {integrity: sha512-tvZgpqk6fz4BaNZ66ZsRaZnbHvP/jG3uKJvAZOwEVUL4RTA5nJeeLYfyN9/VA8NX/V3IBG+hkeuGpKjvELkVhA==}
- engines: {node: 20 || >=22}
-
glob@7.2.3:
resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
deprecated: Glob versions prior to v9 are no longer supported
@@ -7307,16 +7276,10 @@ packages:
resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
engines: {node: '>= 0.4'}
- globalyzer@0.1.0:
- resolution: {integrity: sha512-40oNTM9UfG6aBmuKxk/giHn5nQ8RVz/SS4Ir6zgzOv9/qC3kKZ9v4etGTcJbEl/NyVQH7FGU7d+X1egr57Md2Q==}
-
globby@11.1.0:
resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==}
engines: {node: '>=10'}
- globrex@0.1.2:
- resolution: {integrity: sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg==}
-
google-protobuf@3.21.4:
resolution: {integrity: sha512-MnG7N936zcKTco4Jd2PX2U96Kf9PxygAPKBug+74LHzmHXmceN16MmRcdgZv+DGef/S9YvQAfRsNCn4cjf9yyQ==}
@@ -10509,9 +10472,6 @@ packages:
through@2.3.8:
resolution: {integrity: sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==}
- tiny-glob@0.2.9:
- resolution: {integrity: sha512-g/55ssRPUjShh+xkfx9UPDXqhckHEsHr4Vd9zX55oSdGZc/MD0m3sferOkwWtp98bv+kcVfEHtRJgBVJzelrzg==}
-
tiny-invariant@1.3.3:
resolution: {integrity: sha512-+FbBPE1o9QAYvviau/qC5SE3caw21q3xkvWKBtja5vgqOWIHHJ3ioaq1VPfn/Szqctz2bU/oYeKd9/z5BL+PVg==}
@@ -18789,12 +18749,6 @@ snapshots:
package-json-from-dist: 1.0.1
path-scurry: 2.0.1
- glob@13.0.0:
- dependencies:
- minimatch: 10.1.1
- minipass: 7.1.2
- path-scurry: 2.0.1
-
glob@7.2.3:
dependencies:
fs.realpath: 1.0.0
@@ -18817,8 +18771,6 @@ snapshots:
define-properties: 1.2.1
gopd: 1.2.0
- globalyzer@0.1.0: {}
-
globby@11.1.0:
dependencies:
array-union: 2.1.0
@@ -18828,8 +18780,6 @@ snapshots:
merge2: 1.4.1
slash: 3.0.0
- globrex@0.1.2: {}
-
google-protobuf@3.21.4:
optional: true
@@ -22588,11 +22538,6 @@ snapshots:
through@2.3.8: {}
- tiny-glob@0.2.9:
- dependencies:
- globalyzer: 0.1.0
- globrex: 0.1.2
-
tiny-invariant@1.3.3: {}
tinybench@2.9.0: {}
diff --git a/scripts/tarball.mjs b/scripts/tarball.mjs
index fddbe3b04a..d1fe4de4f5 100644
--- a/scripts/tarball.mjs
+++ b/scripts/tarball.mjs
@@ -3,11 +3,10 @@
* SPDX-License-Identifier: AGPL-3.0-only
*/
-import { createWriteStream } from 'node:fs';
+import { createWriteStream, promises as fsp } from 'node:fs';
import { mkdir } from 'node:fs/promises';
import { resolve } from 'node:path';
import { fileURLToPath } from 'node:url';
-import glob from 'fast-glob';
import walk from 'ignore-walk';
import { Pack } from 'tar/pack';
import meta from '../package.json' with { type: "json" };
@@ -25,7 +24,7 @@ export default async function build() {
const pack = new Pack({ cwd, gzip: true });
const patterns = await walk({ path: cwd, ignoreFiles: ['.gitignore'] });
- for await (const entry of glob.stream(patterns, { cwd, ignore, dot: true })) {
+ for await (const entry of fsp.glob(patterns, { cwd, ignore, dot: true })) {
pack.add(entry);
}