mirror of
https://github.com/puppeteer/puppeteer
synced 2024-06-14 14:02:48 +00:00
e1e751dd1a
* feat: use CDP's auto-attach mechanism In this PR, we refactor Puppeteer to make use of the CDP's auto-attach mechanism. This allows the backend to pause new targets and give Puppeteer a chance to configure them properly. This fixes the flakiness related to dealing with OOPIFs and should fix some other issues related to the network interception and navigations. If those are not fixed completely by this PR, the PR serves a solid base for fixing them. Closes https://github.com/puppeteer/puppeteer/issues/8507, https://github.com/puppeteer/puppeteer/issues/7990 Unlocks https://github.com/puppeteer/puppeteer/issues/3667 BREAKING CHANGE: With Chromium, Puppeteer will now attach to page/iframe targets immediately. Browser.connect requires an explicit product name when connecting to Firefox since Firefox does not support CDP's auto-attach.
140 lines
4.7 KiB
JSON
140 lines
4.7 KiB
JSON
{
|
|
"name": "puppeteer",
|
|
"version": "15.5.0",
|
|
"description": "A high-level API to control headless Chrome over the DevTools Protocol",
|
|
"keywords": [
|
|
"puppeteer",
|
|
"chrome",
|
|
"headless",
|
|
"automation"
|
|
],
|
|
"type": "commonjs",
|
|
"main": "./lib/cjs/puppeteer/puppeteer.js",
|
|
"exports": {
|
|
".": {
|
|
"types": "./lib/types.d.ts",
|
|
"import": "./lib/esm/puppeteer/puppeteer.js",
|
|
"require": "./lib/cjs/puppeteer/puppeteer.js"
|
|
},
|
|
"./*": {
|
|
"import": "./*",
|
|
"require": "./*"
|
|
}
|
|
},
|
|
"types": "lib/types.d.ts",
|
|
"repository": "github:puppeteer/puppeteer",
|
|
"engines": {
|
|
"node": ">=14.1.0"
|
|
},
|
|
"scripts": {
|
|
"test": "c8 --check-coverage --lines 93 run-s test:chrome test:chrome:* test:firefox",
|
|
"test:types": "tsd",
|
|
"test:install": "scripts/test-install.sh",
|
|
"test:firefox": "cross-env PUPPETEER_PRODUCT=firefox MOZ_WEBRENDER=0 mocha",
|
|
"test:chrome": "mocha",
|
|
"test:chrome:headless": "cross-env HEADLESS=chrome mocha",
|
|
"test:chrome:headful": "cross-env HEADLESS=false mocha",
|
|
"prepublishOnly": "npm run build",
|
|
"prepare": "node typescript-if-required.js && husky install",
|
|
"lint": "run-s lint:prettier lint:eslint",
|
|
"lint:prettier": "prettier --check .",
|
|
"lint:eslint": "([ \"$CI\" = true ] && eslint --ext js --ext ts --quiet -f codeframe . || eslint --ext js --ext ts .)",
|
|
"install": "node install.js",
|
|
"generate:types": "node utils/export_all.js && api-extractor run --local --verbose && eslint --ext ts --no-ignore --no-eslintrc -c .eslintrc.types.cjs --fix lib/types.d.ts",
|
|
"generate:markdown": "ts-node -O '{\"module\":\"commonjs\"}' utils/generate_docs.ts && prettier --ignore-path none --write docs",
|
|
"generate:esm-package-json": "echo '{\"type\": \"module\"}' > lib/esm/package.json",
|
|
"format": "run-s format:*",
|
|
"format:prettier": "prettier --write .",
|
|
"format:eslint": "eslint --ext js --ext ts --fix .",
|
|
"docs": "run-s build generate:markdown",
|
|
"debug": "npm run build && mocha --inspect-brk",
|
|
"commitlint": "commitlint --from=HEAD~1",
|
|
"clean": "rimraf lib && rimraf test/build",
|
|
"check": "run-p check:*",
|
|
"check:protocol-revision": "ts-node -s scripts/ensure-correct-devtools-protocol-package",
|
|
"check:pinned-deps": "ts-node -s scripts/ensure-pinned-deps",
|
|
"build": "run-s build:tsc generate:types generate:esm-package-json",
|
|
"build:tsc": "tsc --version && run-p build:tsc:*",
|
|
"build:tsc:esm": "tsc -b src/tsconfig.esm.json",
|
|
"build:tsc:cjs": "tsc -b src/tsconfig.cjs.json",
|
|
"build:tsc:test": "tsc -b test"
|
|
},
|
|
"files": [
|
|
"lib",
|
|
"install.js",
|
|
"typescript-if-required.js",
|
|
"!**/*.tsbuildinfo"
|
|
],
|
|
"author": "The Chromium Authors",
|
|
"license": "Apache-2.0",
|
|
"dependencies": {
|
|
"cross-fetch": "3.1.5",
|
|
"debug": "4.3.4",
|
|
"devtools-protocol": "0.0.1019158",
|
|
"extract-zip": "2.0.1",
|
|
"https-proxy-agent": "5.0.1",
|
|
"pkg-dir": "4.2.0",
|
|
"progress": "2.0.3",
|
|
"proxy-from-env": "1.1.0",
|
|
"rimraf": "3.0.2",
|
|
"tar-fs": "2.1.1",
|
|
"unbzip2-stream": "1.4.3",
|
|
"ws": "8.8.0"
|
|
},
|
|
"devDependencies": {
|
|
"@commitlint/cli": "17.0.1",
|
|
"@commitlint/config-conventional": "17.0.2",
|
|
"@microsoft/api-documenter": "7.18.0",
|
|
"@microsoft/api-extractor": "7.24.2",
|
|
"@microsoft/api-extractor-model": "7.21.0",
|
|
"@types/debug": "4.1.7",
|
|
"@types/diff": "5.0.2",
|
|
"@types/mime": "2.0.3",
|
|
"@types/mocha": "9.1.1",
|
|
"@types/node": "17.0.38",
|
|
"@types/pixelmatch": "5.2.4",
|
|
"@types/pngjs": "6.0.1",
|
|
"@types/progress": "2.0.5",
|
|
"@types/proxy-from-env": "1.0.1",
|
|
"@types/rimraf": "3.0.2",
|
|
"@types/semver": "7.3.10",
|
|
"@types/sinon": "10.0.11",
|
|
"@types/tar-fs": "2.0.1",
|
|
"@types/unbzip2-stream": "1.4.0",
|
|
"@types/ws": "8.5.3",
|
|
"@typescript-eslint/eslint-plugin": "5.27.0",
|
|
"@typescript-eslint/parser": "5.27.0",
|
|
"c8": "7.11.3",
|
|
"commonmark": "0.30.0",
|
|
"cross-env": "7.0.3",
|
|
"diff": "5.1.0",
|
|
"eslint": "8.16.0",
|
|
"eslint-config-prettier": "8.5.0",
|
|
"eslint-formatter-codeframe": "7.32.1",
|
|
"eslint-plugin-import": "2.26.0",
|
|
"eslint-plugin-mocha": "10.0.5",
|
|
"eslint-plugin-prettier": "4.0.0",
|
|
"eslint-plugin-tsdoc": "0.2.16",
|
|
"eslint-plugin-unused-imports": "2.0.0",
|
|
"esprima": "4.0.1",
|
|
"expect": "25.2.7",
|
|
"gts": "3.1.0",
|
|
"husky": "8.0.1",
|
|
"jpeg-js": "0.4.4",
|
|
"mime": "3.0.0",
|
|
"minimist": "1.2.6",
|
|
"mocha": "10.0.0",
|
|
"ncp": "2.0.0",
|
|
"npm-run-all": "4.1.5",
|
|
"pixelmatch": "5.3.0",
|
|
"pngjs": "6.0.0",
|
|
"prettier": "2.6.2",
|
|
"semver": "7.3.7",
|
|
"sinon": "14.0.0",
|
|
"source-map-support": "0.5.21",
|
|
"text-diff": "1.0.1",
|
|
"tsd": "0.21.0",
|
|
"typescript": "4.7.2"
|
|
}
|
|
}
|