angular/package.json
Paul Gschwendtner 116877b4ed build: update karma-sauce-launcher to latest version with heartbeat to prevent idle timeout (#43659)
Updates the `karma-sauce-launcher` to the latest version that comes with
the heartbeat implemented. Whenever we create an instance of a browser
in Saucelabs, we need to send a Selenium command every X seconds as otherwise
Saucelabs will terminate the session due to it thinking the session is already
unused. This is especially a problem for Karma unit tests as there is no
selenium command at all, except for the initial one loading the Karma site.

The latest version of the launcher has implemented an interval that
dispatches a noop selenium command every X seconds to notify Saucelabs
that the instance is still active.

The current version of the launcher does not do that. This is likely
the source of some disconnects because after 10-13min, the SL browser
is terminated but Karma still waits some minute after realizing the
browser is actually disconnected.

We (the Angular team), contributed to that version in the past since
the heartbeat was very flaky.. and we removed it. With the new version
a lot has changed, the underlying Selenium client has changed so it's
worth trying again with the heartbeat re-implemented; it worked pretty
well so far in the COMP repo).

PR Close #43659
2021-10-11 16:41:28 +00:00

214 lines
8.9 KiB
JSON

{
"name": "angular-srcs",
"version": "13.1.0-next.0",
"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": "^12.20.0 || ^14.15.0 || >=16.10.0",
"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"
},
"scripts": {
"/": "",
"// 1": "Many developer 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 scripts/webdriver-manager-update.js && node --preserve-symlinks --preserve-symlinks-main ./tools/postinstall-patches.js",
"prepare": "husky install",
"test-ivy-aot": "bazelisk test --config=ivy --build_tag_filters=-no-ivy-aot,-fixme-ivy-aot --test_tag_filters=-no-ivy-aot,-fixme-ivy-aot",
"test-non-ivy": "bazelisk test --build_tag_filters=-ivy-only --test_tag_filters=-ivy-only",
"test-tsec": "bazelisk test //... --build_tag_filters=tsec --test_tag_filters=tsec",
"test-fixme-ivy-aot": "bazelisk test --config=ivy --build_tag_filters=-no-ivy-aot --test_tag_filters=-no-ivy-aot",
"list-fixme-ivy-targets": "bazelisk query --output=label 'attr(\"tags\", \"\\[.*fixme-ivy.*\\]\", //...) except kind(\"sh_binary\", //...) except kind(\"devmode_js_sources\", //...)' | sort",
"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"
},
"// 1": "dependencies are used locally and by bazel",
"dependencies": {
"@angular-devkit/build-angular": "13.0.0-next.7",
"@angular-devkit/build-optimizer": "0.1300.0-next.7",
"@angular-devkit/core": "13.0.0-next.7",
"@angular-devkit/schematics": "13.0.0-next.7",
"@angular/animations-12": "npm:@angular/animations@12.2.2",
"@angular/cli": "13.0.0-next.7",
"@angular/common-12": "npm:@angular/common@12.2.2",
"@angular/core-12": "npm:@angular/core@12.2.2",
"@angular/forms-12": "npm:@angular/forms@12.2.2",
"@angular/platform-browser-12": "npm:@angular/platform-browser@12.2.2",
"@angular/platform-browser-dynamic-12": "npm:@angular/platform-browser-dynamic@12.2.2",
"@angular/platform-server-12": "npm:@angular/platform-server@12.2.2",
"@angular/router-12": "npm:@angular/router@12.2.2",
"@babel/cli": "7.15.7",
"@babel/core": "7.8.6",
"@babel/generator": "7.8.6",
"@babel/parser": "7.9.4",
"@babel/preset-env": "7.10.2",
"@babel/template": "7.8.6",
"@babel/traverse": "7.8.6",
"@bazel/concatjs": "4.3.0",
"@bazel/esbuild": "4.3.0",
"@bazel/jasmine": "4.3.0",
"@bazel/protractor": "4.3.0",
"@bazel/rollup": "4.3.0",
"@bazel/runfiles": "4.3.0",
"@bazel/terser": "4.3.0",
"@bazel/typescript": "4.3.0",
"@microsoft/api-extractor": "7.18.15",
"@rollup/plugin-babel": "^5.3.0",
"@rollup/plugin-commonjs": "^20.0.0",
"@rollup/plugin-node-resolve": "^13.0.4",
"@schematics/angular": "13.0.0-next.7",
"@types/angular": "^1.6.47",
"@types/babel__core": "7.1.6",
"@types/babel__generator": "7.6.1",
"@types/babel__template": "7.0.2",
"@types/babel__traverse": "7.0.9",
"@types/base64-js": "1.3.0",
"@types/bluebird": "^3.5.27",
"@types/convert-source-map": "^1.5.1",
"@types/diff": "^5.0.0",
"@types/events": "3.0.0",
"@types/hammerjs": "2.0.40",
"@types/inquirer": "^8.0.0",
"@types/jasmine": "3.9.1",
"@types/jasmine-ajax": "^3.3.1",
"@types/jasminewd2": "^2.0.8",
"@types/multimatch": "^4.0.0",
"@types/node": "^12.11.1",
"@types/selenium-webdriver": "3.0.7",
"@types/semver": "^7.3.4",
"@types/shelljs": "^0.8.6",
"@types/systemjs": "0.19.32",
"@types/uuid": "^8.3.1",
"@types/yargs": "^17.0.3",
"@webcomponents/custom-elements": "^1.1.0",
"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",
"brotli": "^1.3.2",
"canonical-path": "1.0.0",
"chalk": "^4.1.0",
"chokidar": "^3.5.1",
"convert-source-map": "^1.5.1",
"core-js-bundle": "^3.10.2",
"dependency-graph": "^0.11.0",
"diff": "^5.0.0",
"domino": "~2.1.6",
"google-closure-compiler": "20211006.0.0",
"graceful-fs": "4.2.8",
"hammerjs": "~2.0.8",
"http-server": "^13.0.0",
"incremental-dom": "0.7.0",
"jasmine": "^3.5.0",
"jasmine-ajax": "^4.0.0",
"jasmine-core": "^3.5.0",
"jquery": "3.6.0",
"js-levenshtein": "^1.1.6",
"karma": "~6.3.0",
"karma-chrome-launcher": "^3.1.0",
"karma-firefox-launcher": "^2.1.0",
"karma-jasmine": "^4.0.1",
"karma-requirejs": "^1.1.0",
"karma-sourcemap-loader": "^0.3.7",
"magic-string": "0.25.7",
"materialize-css": "1.0.0",
"nodejs-websocket": "^1.7.2",
"protractor": "^7.0.0",
"puppeteer": "5.4.1",
"reflect-metadata": "^0.1.3",
"requirejs": "^2.3.6",
"rollup": "2.56.3",
"rollup-plugin-commonjs": "^10.1.0",
"rollup-plugin-node-resolve": "^5.2.0",
"rollup-plugin-preserve-shebang": "^1.0.1",
"rollup-plugin-sourcemaps": "^0.6.3",
"rxjs": "^6.5.3",
"selenium-webdriver": "3.5.0",
"shelljs": "^0.8.4",
"source-map": "^0.6.1",
"source-map-support": "0.5.20",
"sourcemap-codec": "^1.4.8",
"systemjs": "0.18.10",
"terser": "^5.8.0",
"tmp": "0.2.1",
"tsickle": "0.38.1",
"tslib": "^2.3.0",
"tslint": "6.1.3",
"typescript": "~4.4.2",
"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": {
"@angular/dev-infra-private": "https://github.com/angular/dev-infra-private-builds.git#a9c20b73ffe183e4be891660b0a6b4f551296d41",
"@bazel/bazelisk": "^1.7.5",
"@bazel/buildifier": "^4.0.1",
"@bazel/ibazel": "^0.15.8",
"@octokit/graphql": "^4.6.1",
"@types/cldrjs": "^0.4.22",
"@types/cli-progress": "^3.4.2",
"@yarnpkg/lockfile": "^1.1.0",
"browserstacktunnel-wrapper": "^2.0.4",
"check-side-effects": "0.0.23",
"cldr": "5.7.0",
"cldrjs": "0.5.5",
"conventional-changelog": "^3.1.24",
"firebase-tools": "^9.0.0",
"glob": "7.2.0",
"gulp": "^4.0.2",
"gulp-conventional-changelog": "^2.0.35",
"husky": "7.0.2",
"inquirer": "^8.0.0",
"karma-browserstack-launcher": "^1.3.0",
"karma-sauce-launcher": "^4.3.6",
"madge": "^5.0.0",
"sauce-connect": "https://saucelabs.com/downloads/sc-4.6.2-linux.tar.gz",
"semver": "^7.3.5",
"ts-node": "^10.0.0",
"tsec": "0.1.9",
"tslint-eslint-rules": "5.4.0",
"tslint-no-toplevel-property-access": "0.0.2",
"typed-graphqlify": "^3.1.1",
"vlq": "1.0.1",
"vrsource-tslint-rules": "6.0.0"
},
"// 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 a single version of webdriver-manager so it is hoisted as the integration tests depend on it being found at ../../node_modules/webdriver-manager",
"// 6": "Ensure that `@babel/*` packages match the below versions to avoid conflicts with `types/babel__*`",
"// 7": "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.",
"resolutions": {
"**/graceful-fs": "4.2.8",
"**/webdriver-manager": "12.1.8",
"@babel/core": "7.8.6",
"@babel/generator": "7.8.6",
"@babel/parser": "7.9.4",
"@babel/preset-env": "7.10.2",
"@babel/template": "7.8.6",
"@babel/traverse": "7.8.6",
"@babel/types": "7.8.6",
"**/https-proxy-agent": "5.0.0"
}
}