angular/package.json

217 lines
9.4 KiB
JSON
Raw Normal View History

2014-09-18 21:56:38 +00:00
{
"name": "angular-srcs",
"version": "17.1.0-next.2",
"private": true,
"description": "Angular - a web framework for modern web apps",
"homepage": "https://github.com/angular/angular",
"bugs": "https://github.com/angular/angular/issues",
"license": "MIT",
"//engines-comment": "Keep this in sync with /aio/package.json and /aio/tools/examples/shared/package.json",
"engines": {
"node": "^18.13.0 || ^20.9.0",
build: rely on engines to prevent using npm for dependency install (#41477) Rather than relying on a preinstall script, set `engine-strict` to `true` in a project `.npmrc` file, relying on the `engines` having `npm` set to note that yarn should be used instead. --- Output from `npm install` changes from: ``` $ npm install > angular-srcs@12.0.0-next.7 preinstall /usr/local/account/js/angular > node tools/yarn/check-yarn.js /usr/local/account/js/angular/tools/yarn/check-yarn.js:12 throw new Error( ^ Error: Please use Yarn instead of NPM to install dependencies. See: https://yarnpkg.com/lang/en/docs/install/ at Object.<anonymous> (/usr/local/account/js/angular/tools/yarn/check-yarn.js:12:9) at Module._compile (internal/modules/cjs/loader.js:778:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:789:10) at Module.load (internal/modules/cjs/loader.js:653:32) at tryModuleLoad (internal/modules/cjs/loader.js:593:12) at Function.Module._load (internal/modules/cjs/loader.js:585:3) at Function.Module.runMain (internal/modules/cjs/loader.js:831:12) at startup (internal/bootstrap/node.js:283:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:623:3) npm ERR! code ELIFECYCLE npm ERR! errno 1 npm ERR! angular-srcs@12.0.0-next.7 preinstall: `node tools/yarn/check-yarn.js` npm ERR! Exit status 1 npm ERR! npm ERR! Failed at the angular-srcs@12.0.0-next.7 preinstall script. npm ERR! This is probably not a problem with npm. There is likely additional logging output above. npm ERR! A complete log of this run can be found in: npm ERR! /usr/local/account/.npm/_logs/2021-04-06T22_54_02_292Z-debug.log ``` to ``` $ npm install npm ERR! code ENOTSUP npm ERR! notsup Unsupported engine for angular-srcs@12.0.0-next.7: wanted: {"node":">=10.19.0 <13.0.0","yarn":">=1.22.4 <2","npm":"Plesae use yarn instead of NPM to install dependencies"} (current: {"node":"10.20.1","npm":"6.14.4"}) npm ERR! notsup Not compatible with your version of node/npm: angular-srcs@12.0.0-next.7 npm ERR! notsup Not compatible with your version of node/npm: angular-srcs@12.0.0-next.7 npm ERR! notsup Required: {"node":">=10.19.0 <13.0.0","yarn":">=1.22.4 <2","npm":"Plesae use yarn instead of NPM to install dependencies"} npm ERR! notsup Actual: {"npm":"6.14.4","node":"10.20.1"} npm ERR! A complete log of this run can be found in: npm ERR! /usr/local/account/.npm/_logs/2021-04-06T22_53_23_912Z-debug.log ``` PR Close #41477
2021-04-06 22:51:45 +00:00
"yarn": ">=1.22.4 <2",
"npm": "Please use yarn instead of NPM to install dependencies"
},
"repository": {
"type": "git",
"url": "https://github.com/angular/angular.git"
},
2014-09-18 21:56:38 +00:00
"scripts": {
"/": "",
"// 1": "Many of our checks/scripts/tools have moved to our ng-dev tool",
"// 2": "Find the usage you are looking for with:",
"// 3": "yarn ng-dev --help",
"/ ": "",
"postinstall": "node --preserve-symlinks --preserve-symlinks-main ./tools/postinstall-patches.js && patch-package --patch-dir tools/esm-interop/patches/npm && patch-package --patch-dir tools/npm-patches",
"prepare": "husky install",
"ng-dev": "ts-node --esm --project .ng-dev/tsconfig.json --transpile-only node_modules/@angular/ng-dev/bundles/cli.mjs",
"build": "ts-node --esm --project scripts/tsconfig.json scripts/build/build-packages-dist.mts",
"test": "bazelisk test",
"test:ci": "bazelisk test -- //... -//devtools/... -//aio/... && bazelisk test --//packages/compiler:use_template_pipeline //packages/compiler-cli/test/compliance/full",
"test-tsec": "bazelisk test //... --build_tag_filters=tsec --test_tag_filters=tsec",
"lint": "yarn -s tslint && yarn -s ng-dev format changed --check",
"tslint": "tslint -c tslint.json --project tsconfig-tslint.json",
"public-api:check": "node goldens/public-api/manage.js test",
"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": "yarn -s ng-dev ts-circular-deps check --config ./packages/circular-deps-test.conf.js",
"ts-circular-deps:approve": "yarn -s ng-dev ts-circular-deps approve --config ./packages/circular-deps-test.conf.js",
"check-tooling-setup": "yarn tsc --project .ng-dev/tsconfig.json && yarn tsc --project scripts/tsconfig.json",
"devtools:devserver": "ibazel run //devtools/src:devserver",
"devtools:devserver:demo-standalone": "ibazel run //devtools/projects/demo-standalone/src:devserver",
"devtools:build:chrome": "bazelisk build --config snapshot-build --//devtools/projects/shell-browser/src:flag_browser=chrome -- devtools/projects/shell-browser/src:prodapp",
"devtools:build:firefox": "bazelisk build --config snapshot-build --//devtools/projects/shell-browser/src:flag_browser=firefox -- devtools/projects/shell-browser/src:prodapp",
"devtools:test": "bazelisk test --config snapshot-build --//devtools/projects/shell-browser/src:flag_browser=chrome -- //devtools/...",
"benchmarks": "ts-node --esm scripts/benchmarks/index.mts"
2014-09-18 21:56:38 +00:00
},
"// 1": "dependencies are used locally and by bazel",
2014-09-18 21:56:38 +00:00
"dependencies": {
"@angular-devkit/build-angular": "17.0.0-rc.2",
"@angular-devkit/core": "17.0.0-rc.2",
"@angular-devkit/schematics": "17.0.0-rc.2",
"@angular/cdk": "17.0.0-rc.1",
"@angular/cli": "17.0.0-rc.2",
"@angular/material": "17.0.0-rc.1",
"@babel/cli": "7.23.0",
"@babel/core": "7.23.2",
"@babel/generator": "7.23.0",
"@babel/helper-replace-supers": "7.22.20",
"@babel/parser": "7.23.0",
"@babel/preset-env": "7.23.2",
"@babel/template": "7.22.15",
"@babel/traverse": "7.23.2",
"@babel/types": "7.23.0",
"@bazel/concatjs": "5.8.1",
"@bazel/esbuild": "5.8.1",
"@bazel/jasmine": "5.8.1",
"@bazel/protractor": "5.8.1",
"@bazel/rollup": "5.8.1",
"@bazel/runfiles": "5.8.1",
"@bazel/terser": "5.8.1",
"@bazel/worker": "5.8.1",
"@jridgewell/sourcemap-codec": "^1.4.14",
"@microsoft/api-extractor": "^7.24.2",
"@rollup/plugin-babel": "^6.0.0",
"@rollup/plugin-commonjs": "^25.0.0",
"@rollup/plugin-node-resolve": "^13.0.4",
"@schematics/angular": "17.0.0-rc.2",
"@types/angular": "^1.6.47",
"@types/babel__core": "7.20.2",
"@types/babel__generator": "7.6.5",
"@types/babel__template": "7.4.2",
"@types/babel__traverse": "7.20.2",
"@types/bluebird": "^3.5.27",
"@types/chrome": "^0.0.248",
"@types/convert-source-map": "^2.0.0",
"@types/diff": "^5.0.0",
"@types/dom-navigation": "^1.0.2",
"@types/dom-view-transitions": "^1.0.1",
"@types/hammerjs": "2.0.43",
"@types/jasmine": "^5.0.0",
"@types/jasmine-ajax": "^3.3.1",
"@types/jasminewd2": "^2.0.8",
"@types/node": "^16.11.7",
"@types/selenium-webdriver": "3.0.7",
"@types/selenium-webdriver4": "npm:@types/selenium-webdriver@4.1.18",
"@types/semver": "^7.3.4",
"@types/shelljs": "^0.8.6",
"@types/systemjs": "6.13.3",
"@types/uuid": "^9.0.0",
"@types/yargs": "^17.0.3",
"angular-1.5": "npm:angular@1.5",
"angular-1.6": "npm:angular@1.6",
"angular-1.7": "npm:angular@1.7",
"angular-1.8": "npm:angular@1.8",
"angular-mocks-1.5": "npm:angular-mocks@1.5",
"angular-mocks-1.6": "npm:angular-mocks@1.6",
"angular-mocks-1.7": "npm:angular-mocks@1.7",
"angular-mocks-1.8": "npm:angular-mocks@1.8",
"base64-js": "1.5.1",
"bluebird": "^3.7.2",
"canonical-path": "1.0.0",
"chalk": "^4.1.0",
"chokidar": "^3.5.1",
"convert-source-map": "^1.5.1",
"d3": "^7.0.0",
"diff": "^5.0.0",
"domino": "https://github.com/angular/domino.git#9e7881d2ac1e5977cefbc557f935931ec23f6658",
"graceful-fs": "4.2.11",
"hammerjs": "~2.0.8",
"http-server": "^14.0.0",
"incremental-dom": "0.7.0",
"jasmine": "~5.1.0",
"jasmine-ajax": "^4.0.0",
"jasmine-core": "^5.0.0",
"karma": "~6.4.0",
"karma-chrome-launcher": "^3.1.0",
"karma-firefox-launcher": "^2.1.0",
"karma-jasmine": "^5.0.0",
"karma-requirejs": "^1.1.0",
"karma-sourcemap-loader": "^0.4.0",
"magic-string": "0.30.5",
"memo-decorator": "^2.0.1",
"ngx-flamegraph": "0.0.12",
"nodejs-websocket": "^1.7.2",
"protractor": "^7.0.0",
"reflect-metadata": "^0.1.3",
"requirejs": "^2.3.6",
"rollup": "~2.79.0",
"rollup-plugin-preserve-shebang": "^1.0.1",
"rollup-plugin-sourcemaps": "^0.6.3",
"rxjs": "^6.6.7",
"selenium-webdriver": "3.5.0",
"selenium-webdriver4": "npm:selenium-webdriver@4.14.0",
"semver-dsl": "^1.0.1",
"shelljs": "^0.8.5",
"source-map": "0.7.4",
"source-map-support": "0.5.21",
"systemjs": "0.18.10",
"terser": "^5.8.0",
"todomvc-app-css": "^2.3.0",
"todomvc-common": "^1.0.5",
"tslib": "^2.3.0",
"tslint": "6.1.3",
"typescript": "5.3.2",
"webtreemap": "^2.0.1",
"xhr2": "0.2.1",
"yargs": "^17.2.1"
},
"// 2": "devDependencies are not used under Bazel. Many can be removed after test.sh is deleted.",
"devDependencies": {
"@actions/core": "^1.10.0",
"@angular/build-tooling": "https://github.com/angular/dev-infra-private-build-tooling-builds.git#07089954e88d473e89c8b2e5206e7e038d431df1",
"@angular/ng-dev": "https://github.com/angular/dev-infra-private-ng-dev-builds.git#c773500c56bada879d4a5a4169a04bdb039262d1",
"@babel/helper-remap-async-to-generator": "^7.18.9",
"@babel/plugin-proposal-async-generator-functions": "^7.20.7",
"@bazel/bazelisk": "^1.7.5",
"@bazel/buildifier": "^6.0.0",
"@bazel/ibazel": "^0.16.0",
"@octokit/graphql": "^5.0.0",
"@types/adm-zip": "^0.5.0",
build: convert CLDR locale extraction from Gulp to Bazel tool (#42230) Converts the CLDR locale extraction script to a Bazel tool. This allows us to generate locale files within Bazel, so that locales don't need to live as sources within the repo. Also it allows us to get rid of the legacy Gulp tooling. The migration of the Gulp script to a Bazel tool involved the following things: 1. Basic conversion of the `extract.js` script to TypeScript. This mostly was about adding explicit types. e.g. adding `locale: string` or `localeData: CldrStatic`. 2. Split-up into separate files. Instead of keeping the large `extract.js` file, the tool has been split into separate files. The logic remains the same, just that code is more readable and maintainable. 3. Introduction of a new `index.ts` file that is the entry-point for the Bazel tool. Previously the Gulp tool just generated all locale files, the default locale and base currency files at once. The new entry-point accepts a mode to be passed as first process argument. based on that argument, either locales are generated into a specified directory, or the default locale, base currencies or closure file is generated. This allows us to generate files with a Bazel genrule where we simply run the tool and specify the outputs. Note: It's necessary to have multiple modes because files live in separate locations. e.g. the default locale in `@angular/core`, but the rest in `@angular/common`. 4. Removal of the `cldr-data-downloader` and custom CLDR resolution logic. Within Bazel we cannot run a downloader using network. We switch this to something more Bazel idiomatic with better caching. For this a new repository rule is introduced that downloads the CLDR JSON repository and extracts it. Within that rule we determine the supported locales so that they can be used to pre-declare outputs (for the locales) within Bazel analysis phase. This allows us to add the generated locale files to a `ts_library` (which we want to have for better testing, and consistent JS transpilation). Note that the removal of `cldr-data-downloader` also requires us to add logic for detecting locales without data. The CLDR data downloader overwrote the `availableLocales.json` file with a file that only lists locales that CLDR provides data for. We use the official `availableLocales` file CLDR provides, but filter out locales for which no data is available. This is needed until we update to CLDR 39 where data is available for all such locales listed in `availableLocales.json`. PR Close #42230
2021-05-21 20:57:42 +00:00
"@types/cldrjs": "^0.4.22",
"@types/cli-progress": "^3.4.2",
"@types/d3": "^7.4.3",
"@types/inquirer": "^9.0.3",
"@types/jsdom": "^21.1.5",
"@yarnpkg/lockfile": "^1.1.0",
"adm-zip": "^0.5.10",
"check-side-effects": "0.0.23",
"cldr": "7.4.1",
"cldrjs": "0.5.5",
"conventional-changelog": "^5.0.0",
"fast-glob": "3.3.1",
"firebase-tools": "^12.0.0",
"glob": "8.1.0",
"gulp": "^4.0.2",
"gulp-conventional-changelog": "^4.0.0",
"husky": "8.0.3",
"inquirer": "^9.2.7",
"jsdom": "^22.1.0",
"karma-sauce-launcher": "^4.3.6",
"madge": "^6.0.0",
"marked": "^10.0.0",
"multimatch": "^7.0.0",
"patch-package": "^7.0.0",
"prettier": "^3.0.0",
"sauce-connect": "https://saucelabs.com/downloads/sc-4.9.1-linux.tar.gz",
"seek-bzip": "^2.0.0",
"semver": "^7.3.5",
"ts-node": "^10.9.1",
"tsec": "0.2.8",
"tslint-eslint-rules": "5.4.0",
"tslint-no-toplevel-property-access": "0.0.2",
"typed-graphqlify": "^3.1.1",
"vrsource-tslint-rules": "6.0.0",
"xregexp": "^5.1.1"
build: Fix gulp format for Node >= 10.14 (#28213) With Node.js v10.14 and greater, running `yarn gulp format` produces the following error: ``` $ nvm current v10.15.0 $ yarn gulp format:changed yarn run v1.12.3 $ /usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/.bin/gulp format:changed internal/util/inspect.js:31 const types = internalBinding('types'); ^ ReferenceError: internalBinding is not defined at internal/util/inspect.js:31:15 at req_ (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:137:5) at require (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:110:12) at util.js:25:21 at req_ (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:137:5) at require (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:110:12) at fs.js:42:21 at req_ (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:137:5) at Object.req [as require] (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:54:10) at Object.<anonymous> (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/vinyl-fs/node_modules/graceful-fs/fs.js:1:99) ``` A search on GitHub reveals this issue is due to natives@1.1.4: gulpjs/gulp#2246 ``` $ yarn why natives yarn why v1.12.3 [1/4] Why do we have the module "natives"...? [2/4] Initialising dependency graph... [3/4] Finding dependency... [4/4] Calculating file sizes... => Found "natives@1.1.6" info Reasons this module exists - "gulp#vinyl-fs#graceful-fs" depends on it - Hoisted from "gulp#vinyl-fs#graceful-fs#natives" - Hoisted from "browserstacktunnel-wrapper#unzip#fstream#graceful-fs#natives" ``` The solution is to add a manual resolution for natives@1.1.6 PR Close #28213
2019-01-18 18:43:04 +00:00
},
"// 4": "Overwrite graceful-fs to a version that does not rely on the 'natives' package. This fixes gulp for >= 10.13, more information: #28213",
"// 5": "Ensure that transitive dependencies on `https-proxy-agent` are at minimum v5 as older versions patch NodeJS directly, breaking tools like webdriver which is used by the karma-sauce-launcher as an example.",
"// 6": "Ensure that a single instance of the `saucelabs` package is used. Protractor and the Karma sauce launcher pull this package as dependency. A single instance allows for e.g. easier patching in the Karma config.",
build: Fix gulp format for Node >= 10.14 (#28213) With Node.js v10.14 and greater, running `yarn gulp format` produces the following error: ``` $ nvm current v10.15.0 $ yarn gulp format:changed yarn run v1.12.3 $ /usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/.bin/gulp format:changed internal/util/inspect.js:31 const types = internalBinding('types'); ^ ReferenceError: internalBinding is not defined at internal/util/inspect.js:31:15 at req_ (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:137:5) at require (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:110:12) at util.js:25:21 at req_ (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:137:5) at require (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:110:12) at fs.js:42:21 at req_ (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:137:5) at Object.req [as require] (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/natives/index.js:54:10) at Object.<anonymous> (/usr/local/google/home/kyliau/Documents/GitHub/angular/node_modules/vinyl-fs/node_modules/graceful-fs/fs.js:1:99) ``` A search on GitHub reveals this issue is due to natives@1.1.4: gulpjs/gulp#2246 ``` $ yarn why natives yarn why v1.12.3 [1/4] Why do we have the module "natives"...? [2/4] Initialising dependency graph... [3/4] Finding dependency... [4/4] Calculating file sizes... => Found "natives@1.1.6" info Reasons this module exists - "gulp#vinyl-fs#graceful-fs" depends on it - Hoisted from "gulp#vinyl-fs#graceful-fs#natives" - Hoisted from "browserstacktunnel-wrapper#unzip#fstream#graceful-fs#natives" ``` The solution is to add a manual resolution for natives@1.1.6 PR Close #28213
2019-01-18 18:43:04 +00:00
"resolutions": {
"**/graceful-fs": "4.2.11",
"**/https-proxy-agent": "7.0.2",
"**/saucelabs": "7.4.0"
build: convert CLDR locale extraction from Gulp to Bazel tool (#42230) Converts the CLDR locale extraction script to a Bazel tool. This allows us to generate locale files within Bazel, so that locales don't need to live as sources within the repo. Also it allows us to get rid of the legacy Gulp tooling. The migration of the Gulp script to a Bazel tool involved the following things: 1. Basic conversion of the `extract.js` script to TypeScript. This mostly was about adding explicit types. e.g. adding `locale: string` or `localeData: CldrStatic`. 2. Split-up into separate files. Instead of keeping the large `extract.js` file, the tool has been split into separate files. The logic remains the same, just that code is more readable and maintainable. 3. Introduction of a new `index.ts` file that is the entry-point for the Bazel tool. Previously the Gulp tool just generated all locale files, the default locale and base currency files at once. The new entry-point accepts a mode to be passed as first process argument. based on that argument, either locales are generated into a specified directory, or the default locale, base currencies or closure file is generated. This allows us to generate files with a Bazel genrule where we simply run the tool and specify the outputs. Note: It's necessary to have multiple modes because files live in separate locations. e.g. the default locale in `@angular/core`, but the rest in `@angular/common`. 4. Removal of the `cldr-data-downloader` and custom CLDR resolution logic. Within Bazel we cannot run a downloader using network. We switch this to something more Bazel idiomatic with better caching. For this a new repository rule is introduced that downloads the CLDR JSON repository and extracts it. Within that rule we determine the supported locales so that they can be used to pre-declare outputs (for the locales) within Bazel analysis phase. This allows us to add the generated locale files to a `ts_library` (which we want to have for better testing, and consistent JS transpilation). Note that the removal of `cldr-data-downloader` also requires us to add logic for detecting locales without data. The CLDR data downloader overwrote the `availableLocales.json` file with a file that only lists locales that CLDR provides data for. We use the official `availableLocales` file CLDR provides, but filter out locales for which no data is available. This is needed until we update to CLDR 39 where data is available for all such locales listed in `availableLocales.json`. PR Close #42230
2021-05-21 20:57:42 +00:00
}
}