diff --git a/packages/angular_devkit/build_angular/BUILD.bazel b/packages/angular_devkit/build_angular/BUILD.bazel index f7e0530a4105..92c70e4fc5a0 100644 --- a/packages/angular_devkit/build_angular/BUILD.bazel +++ b/packages/angular_devkit/build_angular/BUILD.bazel @@ -174,6 +174,7 @@ ts_project( ":node_modules/source-map-loader", ":node_modules/source-map-support", ":node_modules/terser", + ":node_modules/tinyglobby", ":node_modules/tree-kill", ":node_modules/webpack", ":node_modules/webpack-dev-middleware", @@ -198,7 +199,6 @@ ts_project( "//:node_modules/@types/watchpack", "//:node_modules/esbuild", "//:node_modules/esbuild-wasm", - "//:node_modules/fast-glob", "//:node_modules/karma", "//:node_modules/karma-source-map-support", "//:node_modules/semver", @@ -224,9 +224,9 @@ ts_project( deps = [ ":build_angular", ":build_angular_test_utils", + ":node_modules/tinyglobby", ":node_modules/webpack", "//:node_modules/@types/node", - "//:node_modules/fast-glob", "//:node_modules/prettier", "//:node_modules/typescript", "//packages/angular_devkit/architect/testing", diff --git a/packages/angular_devkit/build_angular/package.json b/packages/angular_devkit/build_angular/package.json index fa9bdf3b9977..928240d4ed17 100644 --- a/packages/angular_devkit/build_angular/package.json +++ b/packages/angular_devkit/build_angular/package.json @@ -29,7 +29,6 @@ "copy-webpack-plugin": "13.0.1", "css-loader": "7.1.2", "esbuild-wasm": "0.25.9", - "fast-glob": "3.3.3", "http-proxy-middleware": "3.0.5", "istanbul-lib-instrument": "6.0.3", "jsonc-parser": "3.3.1", @@ -53,6 +52,7 @@ "source-map-loader": "5.0.0", "source-map-support": "0.5.21", "terser": "5.44.0", + "tinyglobby": "0.2.15", "tree-kill": "1.2.2", "tslib": "2.8.1", "webpack": "5.101.3", diff --git a/packages/angular_devkit/build_angular/src/tools/webpack/utils/helpers.ts b/packages/angular_devkit/build_angular/src/tools/webpack/utils/helpers.ts index f57708663e03..91579103adab 100644 --- a/packages/angular_devkit/build_angular/src/tools/webpack/utils/helpers.ts +++ b/packages/angular_devkit/build_angular/src/tools/webpack/utils/helpers.ts @@ -7,9 +7,9 @@ */ import type { ObjectPattern } from 'copy-webpack-plugin'; -import glob from 'fast-glob'; import { createHash } from 'node:crypto'; import * as path from 'node:path'; +import { globSync } from 'tinyglobby'; import type { Configuration, WebpackOptionsNormalized } from 'webpack'; import { AssetPatternClass, @@ -126,7 +126,7 @@ export function getInstrumentationExcludedPaths( for (const excludeGlob of excludedPaths) { const excludePath = excludeGlob[0] === '/' ? excludeGlob.slice(1) : excludeGlob; - glob.sync(excludePath, { cwd: root }).forEach((p) => excluded.add(path.join(root, p))); + globSync(excludePath, { cwd: root }).forEach((p) => excluded.add(path.join(root, p))); } return excluded; diff --git a/packages/angular_devkit/build_angular/src/utils/copy-assets.ts b/packages/angular_devkit/build_angular/src/utils/copy-assets.ts index ac9d81013394..ed739970cd09 100644 --- a/packages/angular_devkit/build_angular/src/utils/copy-assets.ts +++ b/packages/angular_devkit/build_angular/src/utils/copy-assets.ts @@ -6,9 +6,9 @@ * found in the LICENSE file at https://angular.dev/license */ -import glob from 'fast-glob'; import fs from 'node:fs'; import path from 'node:path'; +import { glob } from 'tinyglobby'; export async function copyAssets( entries: { diff --git a/packages/angular_devkit/build_angular/src/utils/test-files.ts b/packages/angular_devkit/build_angular/src/utils/test-files.ts index 9b5cff6d0a42..1276f0347f4b 100644 --- a/packages/angular_devkit/build_angular/src/utils/test-files.ts +++ b/packages/angular_devkit/build_angular/src/utils/test-files.ts @@ -6,7 +6,7 @@ * found in the LICENSE file at https://angular.dev/license */ -import fastGlob, { Options as GlobOptions } from 'fast-glob'; +import { GlobOptions, glob as globFn } from 'tinyglobby'; /** * Finds all test files in the project. @@ -21,7 +21,7 @@ export async function findTestFiles( include: string[], exclude: string[], workspaceRoot: string, - glob: typeof fastGlob = fastGlob, + glob: typeof globFn = globFn, ): Promise> { const globOptions: GlobOptions = { cwd: workspaceRoot, diff --git a/packages/angular_devkit/build_angular/src/utils/test-files_spec.ts b/packages/angular_devkit/build_angular/src/utils/test-files_spec.ts index f74053ffcaab..9902aa47142a 100644 --- a/packages/angular_devkit/build_angular/src/utils/test-files_spec.ts +++ b/packages/angular_devkit/build_angular/src/utils/test-files_spec.ts @@ -7,9 +7,9 @@ */ // eslint-disable-next-line import/no-extraneous-dependencies -import realGlob from 'fast-glob'; import { promises as fs } from 'node:fs'; import * as path from 'node:path'; +import { glob as realGlob } from 'tinyglobby'; import { findTestFiles } from './test-files'; describe('test-files', () => { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 30941acff769..2c9f0e02113d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -656,9 +656,6 @@ importers: esbuild-wasm: specifier: 0.25.9 version: 0.25.9 - fast-glob: - specifier: 3.3.3 - version: 3.3.3 http-proxy-middleware: specifier: 3.0.5 version: 3.0.5 @@ -728,6 +725,9 @@ importers: terser: specifier: 5.44.0 version: 5.44.0 + tinyglobby: + specifier: 0.2.15 + version: 0.2.15 tree-kill: specifier: 1.2.2 version: 1.2.2 @@ -8200,6 +8200,10 @@ packages: resolution: {integrity: sha512-tX5e7OM1HnYr2+a2C/4V0htOcSQcoSTH9KgJnVvNm5zm/cyEWKJ7j7YutsH9CxMdtOkkLFy2AHrMci9IM8IPZQ==} engines: {node: '>=12.0.0'} + tinyglobby@0.2.15: + resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} + engines: {node: '>=12.0.0'} + tinypool@1.1.1: resolution: {integrity: sha512-Zba82s87IFq9A9XmjiX5uZA/ARWDrB03OHlq+Vw1fSdt0I+4/Kutwy8BP4Y/y/aORMo61FQ0vIb5j44vSo5Pkg==} engines: {node: ^18.0.0 || >=20.0.0} @@ -9117,7 +9121,7 @@ snapshots: '@angular/compiler-cli': 21.0.0-next.2(@angular/compiler@21.0.0-next.2)(typescript@5.9.2) '@babel/core': 7.28.3 '@types/babel__core': 7.20.5 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 yargs: 18.0.0 transitivePeerDependencies: - supports-color @@ -13214,7 +13218,7 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.3.2 serialize-javascript: 6.0.2 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 webpack: 5.101.3(esbuild@0.25.9) core-js-compat@3.45.1: @@ -15878,7 +15882,7 @@ snapshots: proc-log: 5.0.0 semver: 7.7.2 tar: 7.4.3 - tinyglobby: 0.2.14 + tinyglobby: 0.2.15 which: 5.0.0 transitivePeerDependencies: - supports-color @@ -17531,6 +17535,11 @@ snapshots: fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 + tinyglobby@0.2.15: + dependencies: + fdir: 6.5.0(picomatch@4.0.3) + picomatch: 4.0.3 + tinypool@1.1.1: {} tinyrainbow@2.0.0: {}