pagespeed-quest 0.11.0 → 0.13.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -1
- package/README.ja.md +9 -4
- package/README.md +10 -4
- package/build/cli.js +1 -3
- package/build/formatting.d.ts +1 -1
- package/build/lighthouse-summary.d.ts +3 -1
- package/build/lighthouse-summary.js +31 -46
- package/build/lighthouse.d.ts +0 -1
- package/build/lighthouse.js +6 -2
- package/build/recording.js +2 -2
- package/llmdocs/00-guide.md +42 -20
- package/llmdocs/10-inventory.md +48 -24
- package/llmdocs/20-experiments.md +70 -171
- package/llmdocs/30-measuring.md +60 -19
- package/llmdocs/90-commands.md +14 -7
- package/package.json +30 -47
- package/scripts/build-llm-docs.js +9 -0
- package/scripts/postinstall.js +2 -3
package/package.json
CHANGED
|
@@ -1,12 +1,15 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pagespeed-quest",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.13.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "A framework for efficient web front-end speed improvement",
|
|
6
6
|
"main": "build/index.js",
|
|
7
7
|
"typings": "build/index.d.ts",
|
|
8
8
|
"module": "build/index.js",
|
|
9
|
-
"repository":
|
|
9
|
+
"repository": {
|
|
10
|
+
"type": "git",
|
|
11
|
+
"url": "git+https://github.com/ideamans/pagespeed-quest.git"
|
|
12
|
+
},
|
|
10
13
|
"license": "GPL-3.0-or-later",
|
|
11
14
|
"keywords": [
|
|
12
15
|
"HTTP Proxy",
|
|
@@ -23,9 +26,9 @@
|
|
|
23
26
|
"validate-plugin-skills": "node scripts/validate-plugin-skills.js",
|
|
24
27
|
"fix": "run-s fix:*",
|
|
25
28
|
"fix:prettier": "prettier \"src/**/*.ts\" --write",
|
|
26
|
-
"fix:lint": "eslint src --
|
|
29
|
+
"fix:lint": "eslint src --fix",
|
|
27
30
|
"test": "run-s build:module test:*",
|
|
28
|
-
"test:lint": "eslint src
|
|
31
|
+
"test:lint": "eslint src",
|
|
29
32
|
"test:prettier": "prettier \"src/**/*.ts\" --list-different",
|
|
30
33
|
"test:spelling": "cspell \"{README.md,.github/*.md,src/**/*.ts}\"",
|
|
31
34
|
"test:unit": "nyc --silent ava",
|
|
@@ -39,15 +42,8 @@
|
|
|
39
42
|
"cov": "run-s build test:unit cov:html cov:lcov && open-cli coverage/index.html",
|
|
40
43
|
"cov:html": "nyc report --reporter=html",
|
|
41
44
|
"cov:lcov": "nyc report --reporter=lcov",
|
|
42
|
-
"cov:send": "run-s cov:lcov && codecov",
|
|
43
45
|
"cov:check": "nyc report && nyc check-coverage --lines 100 --functions 100 --branches 100",
|
|
44
|
-
"doc": "run-s doc:html && open-cli build/docs/index.html",
|
|
45
|
-
"doc:html": "typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --out build/docs",
|
|
46
|
-
"doc:json": "typedoc src/ --exclude **/*.spec.ts --target ES6 --mode file --json build/docs/typedoc.json",
|
|
47
|
-
"doc:publish": "gh-pages -m \"[ci skip] Updates\" -d build/docs",
|
|
48
|
-
"version": "standard-version",
|
|
49
46
|
"reset-hard": "git clean -dfx && git reset --hard && yarn",
|
|
50
|
-
"prepare-release": "run-s reset-hard test cov:check doc:html version doc:publish",
|
|
51
47
|
"adhoc": "yarn build && node build/adhoc.js",
|
|
52
48
|
"command": "yarn build && node build/command.js",
|
|
53
49
|
"prepublishOnly": "yarn build",
|
|
@@ -58,43 +54,35 @@
|
|
|
58
54
|
"node": ">=22.19"
|
|
59
55
|
},
|
|
60
56
|
"dependencies": {
|
|
61
|
-
"commander": "^
|
|
62
|
-
"execa": "^
|
|
63
|
-
"iconv-lite": "^0.
|
|
64
|
-
"jschardet": "^
|
|
65
|
-
"lighthouse": "^13.
|
|
66
|
-
"node-html-to-image": "^5.0.0",
|
|
57
|
+
"commander": "^15",
|
|
58
|
+
"execa": "^10",
|
|
59
|
+
"iconv-lite": "^0.7",
|
|
60
|
+
"jschardet": "^4",
|
|
61
|
+
"lighthouse": "^13.6",
|
|
67
62
|
"node-watch": "^0.7.4",
|
|
68
|
-
"pino": "^
|
|
69
|
-
"pino-pretty": "^
|
|
70
|
-
"prettier": "^
|
|
71
|
-
"puppeteer": "^
|
|
72
|
-
"rust-http-playback-proxy": "0.
|
|
63
|
+
"pino": "^10",
|
|
64
|
+
"pino-pretty": "^13",
|
|
65
|
+
"prettier": "^3",
|
|
66
|
+
"puppeteer": "^25",
|
|
67
|
+
"rust-http-playback-proxy": "0.11.1",
|
|
73
68
|
"tmp-promise": "^3.0.3"
|
|
74
69
|
},
|
|
75
70
|
"devDependencies": {
|
|
76
71
|
"@ava/typescript": "^7.0.0",
|
|
72
|
+
"@eslint-community/eslint-plugin-eslint-comments": "^4.8.1",
|
|
73
|
+
"@eslint/js": "^10.0.1",
|
|
77
74
|
"@istanbuljs/nyc-config-typescript": "^1.0.1",
|
|
78
|
-
"@types/node": "^
|
|
79
|
-
"
|
|
80
|
-
"
|
|
81
|
-
"
|
|
82
|
-
"
|
|
83
|
-
"
|
|
84
|
-
"
|
|
85
|
-
"
|
|
86
|
-
"
|
|
87
|
-
"
|
|
88
|
-
"
|
|
89
|
-
"eslint-plugin-import": "^2.22.0",
|
|
90
|
-
"gh-pages": "^3.1.0",
|
|
91
|
-
"npm-run-all": "^4.1.5",
|
|
92
|
-
"nyc": "^15.1.0",
|
|
93
|
-
"open-cli": "^6.0.1",
|
|
94
|
-
"standard-version": "^9.0.0",
|
|
95
|
-
"ts-node": "^10.9.1",
|
|
96
|
-
"typedoc": "^0.19.0",
|
|
97
|
-
"typescript": "^5.2.0"
|
|
75
|
+
"@types/node": "^22",
|
|
76
|
+
"ava": "^8",
|
|
77
|
+
"axios": "^1.21.0",
|
|
78
|
+
"cspell": "^10",
|
|
79
|
+
"eslint": "^10",
|
|
80
|
+
"eslint-config-prettier": "^10.1.8",
|
|
81
|
+
"eslint-plugin-import-x": "^4.17.1",
|
|
82
|
+
"npm-run-all2": "^9.0.4",
|
|
83
|
+
"nyc": "^18",
|
|
84
|
+
"typescript": "6.0.3",
|
|
85
|
+
"typescript-eslint": "^8.72.1"
|
|
98
86
|
},
|
|
99
87
|
"files": [
|
|
100
88
|
"build",
|
|
@@ -122,11 +110,6 @@
|
|
|
122
110
|
"!build/**"
|
|
123
111
|
]
|
|
124
112
|
},
|
|
125
|
-
"config": {
|
|
126
|
-
"commitizen": {
|
|
127
|
-
"path": "cz-conventional-changelog"
|
|
128
|
-
}
|
|
129
|
-
},
|
|
130
113
|
"prettier": {
|
|
131
114
|
"singleQuote": true,
|
|
132
115
|
"semi": false,
|
|
@@ -18,7 +18,16 @@ const outputPath = join(projectRoot, 'llmdocs', '90-commands.md')
|
|
|
18
18
|
|
|
19
19
|
const { createProgram } = await import(join(projectRoot, 'build', 'cli.js'))
|
|
20
20
|
|
|
21
|
+
/**
|
|
22
|
+
* Commander wraps help text to the terminal width, which would make the
|
|
23
|
+
* generated catalog depend on whoever ran the generator. Pin it so the output
|
|
24
|
+
* is reproducible and `--check` means something.
|
|
25
|
+
*/
|
|
26
|
+
const HELP_WIDTH = 80
|
|
27
|
+
|
|
21
28
|
function walk(command, path, depth, lines) {
|
|
29
|
+
command.configureHelp({ helpWidth: HELP_WIDTH })
|
|
30
|
+
|
|
22
31
|
const heading = '#'.repeat(Math.min(depth + 1, 6))
|
|
23
32
|
const title = [...path, command.name()].join(' ')
|
|
24
33
|
|
package/scripts/postinstall.js
CHANGED
|
@@ -22,9 +22,6 @@ function getPlatformInfo() {
|
|
|
22
22
|
|
|
23
23
|
if (platform === 'darwin' && arch === 'arm64') {
|
|
24
24
|
return { os: 'darwin', arch: 'arm64', ext: 'tar.gz' }
|
|
25
|
-
} else if (platform === 'darwin' && arch === 'x64') {
|
|
26
|
-
// macOS x64 is not available, fall back to arm64 (Rosetta 2)
|
|
27
|
-
return { os: 'darwin', arch: 'arm64', ext: 'tar.gz' }
|
|
28
25
|
} else if (platform === 'linux' && arch === 'x64') {
|
|
29
26
|
return { os: 'linux', arch: 'amd64', ext: 'tar.gz' }
|
|
30
27
|
} else if (platform === 'linux' && arch === 'arm64') {
|
|
@@ -32,6 +29,8 @@ function getPlatformInfo() {
|
|
|
32
29
|
} else if (platform === 'win32' && arch === 'x64') {
|
|
33
30
|
return { os: 'windows', arch: 'amd64', ext: 'zip' }
|
|
34
31
|
} else {
|
|
32
|
+
// Intel Macs are not supported: none of loadshow, static-webshot or the
|
|
33
|
+
// playback proxy ship a darwin-x64 build
|
|
35
34
|
throw new Error(`Unsupported platform: ${platform} ${arch}`)
|
|
36
35
|
}
|
|
37
36
|
}
|