build: use Node.js built-in TypeScript support for dev-infra scripts

This change removes the use of `tsx` to execute both `ng-dev` and the repo level development scripts.
This commit is contained in:
Charles Lyding 2025-12-18 15:28:08 -05:00 committed by Kristiyan Kostadinov
parent c69b67147a
commit 6758f9326e
11 changed files with 26 additions and 20 deletions

View file

@ -27,7 +27,7 @@ export const release = {
buildPackages: async () => {
// The buildTargetPackages function is loaded at runtime as the loading the script
// causes an invocation of Bazel.
const {performNpmReleaseBuild} = await import('../scripts/build/package-builder.mjs');
const {performNpmReleaseBuild} = await import('../scripts/build/package-builder.mts');
return performNpmReleaseBuild();
},
releaseNotes: {

View file

@ -18,8 +18,8 @@
},
"scripts": {
"prepare": "husky",
"ng-dev": "tsx --tsconfig .ng-dev/tsconfig.json node_modules/@angular/ng-dev/bundles/cli.mjs",
"build": "tsx --tsconfig scripts/tsconfig.json scripts/build/build-packages-dist.mts",
"ng-dev": "ng-dev",
"build": "node scripts/build/build-packages-dist.mts",
"test": "bazelisk test",
"test:ci": "bazelisk test -- //... -//integration/... -//adev/... -//vscode-ng-language-service/... -//devtools/... -//modules/ssr-benchmarks/...",
"integration-tests:ci": "bazelisk test -- //integration/...",
@ -30,7 +30,7 @@
"public-api:update": "node goldens/public-api/manage.js accept",
"symbol-extractor:check": "node tools/symbol-extractor/run_all_symbols_extractor_tests.js test",
"symbol-extractor:update": "node tools/symbol-extractor/run_all_symbols_extractor_tests.js accept",
"ts-circular-deps:check": "pnpm -s ng-dev ts-circular-deps check --config ./packages/circular-deps-test.conf.js",
"ts-circular-deps:check": "pnpm -s ng-dev ts-circular-deps check --config ./packages/circular-deps-test.conf.cjs",
"check-tooling-setup": "tsc --project scripts/tsconfig.json",
"devtools:devserver": "ibazel run //devtools/src:devserver",
"devtools:test:e2e": "cypress run --project ./devtools/cypress",
@ -41,14 +41,14 @@
"devtools:build:firefox:release": "pnpm run -s devtools:build:firefox --jobs 4",
"devtools:test": "bazelisk test --//devtools/projects/shell-browser/src:flag_browser=chrome -- //devtools/...",
"devtools:test:unit": "bazelisk test -- //devtools/...",
"devtools:release": "tsx --tsconfig=devtools/tsconfig.json devtools/tools/release.mts",
"devtools:release": "node devtools/tools/release.mts",
"adev": "[[ -n $CI ]] && echo 'Cannot run this pnpm script on CI' && exit 1 || ibazel run //adev:build.serve",
"adev:build": "[[ -n $CI ]] && echo 'Cannot run this pnpm script on CI' && exit 1 || bazel build //adev:build",
"dev": "pnpm --filter=dev-app dev",
"dev:prod": "pnpm --filter=dev-app dev:prod",
"dev:build": "pnpm --filter=dev-app dev:build",
"benchmarks": "tsx --tsconfig=scripts/tsconfig.json scripts/benchmarks/index.mts",
"diff-release-package": "tsx --tsconfig=scripts/tsconfig.json scripts/diff-release-package.mts"
"benchmarks": "node scripts/benchmarks/index.mts",
"diff-release-package": "node scripts/diff-release-package.mts"
},
"// 1": "dependencies are used locally and by bazel",
"dependencies": {

View file

@ -10,9 +10,14 @@ import {setOutput} from '@actions/core';
import {GitClient, Log, bold, green, yellow} from '@angular/ng-dev';
import {select} from '@inquirer/prompts';
import yargs from 'yargs';
import {collectBenchmarkResults} from './results.mjs';
import {ResolvedTarget, findBenchmarkTargets, getTestlogPath, resolveTarget} from './targets.mjs';
import {exec} from './utils.mjs';
import {collectBenchmarkResults} from './results.mts';
import {
type ResolvedTarget,
findBenchmarkTargets,
getTestlogPath,
resolveTarget,
} from './targets.mts';
import {exec} from './utils.mts';
const benchmarkTestFlags = [
'--cache_test_results=no',

View file

@ -7,7 +7,7 @@
*/
import path from 'path';
import {exec} from './utils.mjs';
import {exec} from './utils.mts';
/** Branded string representing a resolved Bazel benchmark target. */
export type ResolvedTarget = string & {

View file

@ -8,7 +8,7 @@
import {join} from 'path';
import {bazelCmd, exec} from './package-builder.mjs';
import {bazelCmd, exec} from './package-builder.mts';
/**
* Build the `angular-in-memory-web-api` npm package and copies it into the release

View file

@ -8,9 +8,9 @@
* found in the LICENSE file at https://angular.dev/license
*/
import {buildAngularInMemoryWebApiPackage} from './angular-in-memory-web-api.mjs';
import {performDefaultSnapshotBuild} from './package-builder.mjs';
import {buildZoneJsPackage} from './zone-js-builder.mjs';
import {buildAngularInMemoryWebApiPackage} from './angular-in-memory-web-api.mts';
import {performDefaultSnapshotBuild} from './package-builder.mts';
import {buildZoneJsPackage} from './zone-js-builder.mts';
// Build the legacy (view engine) npm packages into `dist/packages-dist/`.
performDefaultSnapshotBuild();

View file

@ -8,7 +8,7 @@
import {execSync} from 'child_process';
import {join, dirname} from 'path';
import {BuiltPackage} from '@angular/ng-dev';
import type {BuiltPackage} from '@angular/ng-dev';
import {fileURLToPath} from 'url';
import {existsSync, lstatSync} from 'fs';

View file

@ -8,7 +8,7 @@
import {join} from 'path';
import {bazelCmd, exec} from './package-builder.mjs';
import {bazelCmd, exec} from './package-builder.mts';
/**
* Build the `zone.js` npm package into `dist/bin/packages/zone.js/npm_package/` and copy it to

View file

@ -9,6 +9,7 @@
"noEmit": true,
"skipLibCheck": true,
"downlevelIteration": true,
"esModuleInterop": true
"esModuleInterop": true,
"rewriteRelativeImportExtensions": true
}
}

View file

@ -257,7 +257,7 @@
"test:inspect-common": "bazel run --config=debug //vscode-ng-language-service/common/tests:test",
"test:inspect-server": "bazel run --config=debug //vscode-ng-language-service/server/src/tests:test",
"test:inspect-syntaxes": "bazel run --config=debug //vscode-ng-language-service/syntaxes/test:test",
"release": "tsx --tsconfig=tools/tsconfig.json tools/release.mts"
"release": "node tools/release.mts"
},
"dependencies": {
"@angular/language-service": "workspace:*",
@ -288,4 +288,4 @@
"url": "https://github.com/angular/angular.git",
"directory": "vscode-ng-language-service"
}
}
}