lighthouse 9.4.0 → 9.5.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.
Files changed (42) hide show
  1. package/changelog.md +5902 -0
  2. package/dist/report/bundle.esm.js +3 -2
  3. package/dist/report/flow.js +2 -2
  4. package/dist/report/standalone.js +2 -2
  5. package/lighthouse-cli/run.js +5 -1
  6. package/lighthouse-cli/test/smokehouse/core-tests.js +4 -0
  7. package/lighthouse-cli/test/smokehouse/frontends/lib.js +3 -1
  8. package/lighthouse-cli/test/smokehouse/frontends/smokehouse-bin.js +4 -1
  9. package/lighthouse-cli/test/smokehouse/lighthouse-runners/devtools.js +4 -1
  10. package/lighthouse-cli/test/smokehouse/readme.md +14 -0
  11. package/lighthouse-cli/test/smokehouse/report-assert.js +64 -28
  12. package/lighthouse-cli/test/smokehouse/smokehouse.js +5 -2
  13. package/lighthouse-core/audits/dobetterweb/inspector-issues.js +6 -6
  14. package/lighthouse-core/audits/script-treemap-data.js +1 -1
  15. package/lighthouse-core/config/config-helpers.js +1 -1
  16. package/lighthouse-core/fraggle-rock/api.js +56 -5
  17. package/lighthouse-core/fraggle-rock/config/config.js +1 -1
  18. package/lighthouse-core/fraggle-rock/gather/base-artifacts.js +1 -1
  19. package/lighthouse-core/fraggle-rock/gather/navigation-runner.js +8 -4
  20. package/lighthouse-core/fraggle-rock/gather/runner-helpers.js +3 -1
  21. package/lighthouse-core/fraggle-rock/gather/snapshot-runner.js +12 -5
  22. package/lighthouse-core/fraggle-rock/gather/timespan-runner.js +13 -7
  23. package/lighthouse-core/fraggle-rock/user-flow.js +114 -55
  24. package/lighthouse-core/gather/gatherers/full-page-screenshot.js +33 -25
  25. package/lighthouse-core/gather/gatherers/inspector-issues.js +1 -1
  26. package/lighthouse-core/lib/arbitrary-equality-map.js +1 -1
  27. package/lighthouse-core/lib/asset-saver.js +15 -0
  28. package/lighthouse-core/runner.js +1 -1
  29. package/lighthouse-core/scripts/package.json +4 -0
  30. package/package.json +7 -12
  31. package/report/assets/templates.html +2 -1
  32. package/report/renderer/components.js +1 -1
  33. package/report/renderer/topbar-features.js +2 -1
  34. package/shared/localization/swap-locale.js +1 -2
  35. package/third-party/chromium-synchronization/inspector-issueAdded-types-test.js +1 -1
  36. package/third-party/snyk/snapshot.json +4 -3
  37. package/types/artifacts.d.ts +1 -1
  38. package/types/config.d.ts +1 -1
  39. package/types/gatherer.d.ts +8 -0
  40. package/types/global-lh.d.ts +3 -0
  41. package/types/smokehouse.d.ts +1 -1
  42. package/types/user-flow.d.ts +19 -0
@@ -45,7 +45,7 @@
45
45
  {"id":"npm:bootstrap:20120510","severity":"medium","semver":{"vulnerable":["<2.1.0"]}}
46
46
  ],
47
47
  "dojo":[
48
- {"id":"SNYK-JS-DOJO-1535223","severity":"high","semver":{"vulnerable":["<=1.16.4"]}},
48
+ {"id":"SNYK-JS-DOJO-1535223","severity":"high","semver":{"vulnerable":["<1.17.0"]}},
49
49
  {"id":"SNYK-JS-DOJO-559224","severity":"medium","semver":{"vulnerable":["<1.11.10",">=1.12.1 <1.12.8",">=1.13.0 <1.13.7",">=1.14.0 <1.14.6",">=1.15.0 <1.15.3",">=1.16.0 <1.16.2"]}},
50
50
  {"id":"SNYK-JS-DOJO-174934","severity":"medium","semver":{"vulnerable":[">=1.0.0 <1.0.3",">=1.1.0 <1.1.2",">=1.2.0 <1.2.4",">=1.3.0 <1.3.3",">=1.4.0 <1.4.2"]}},
51
51
  {"id":"SNYK-JS-DOJO-174933","severity":"medium","semver":{"vulnerable":["<1.2.0"]}},
@@ -70,7 +70,7 @@
70
70
  {"id":"SNYK-JS-HANDLEBARS-1279029","severity":"medium","semver":{"vulnerable":["<4.7.7"]}},
71
71
  {"id":"SNYK-JS-HANDLEBARS-1056767","severity":"high","semver":{"vulnerable":["<4.7.7"]}},
72
72
  {"id":"SNYK-JS-HANDLEBARS-567742","severity":"medium","semver":{"vulnerable":["<4.6.0"]}},
73
- {"id":"SNYK-JS-HANDLEBARS-534988","severity":"high","semver":{"vulnerable":[">=4.0.0 <4.5.3","<3.0.8"]}},
73
+ {"id":"SNYK-JS-HANDLEBARS-534988","severity":"critical","semver":{"vulnerable":[">=4.0.0 <4.5.3","<3.0.8"]}},
74
74
  {"id":"SNYK-JS-HANDLEBARS-534478","severity":"high","semver":{"vulnerable":[">=4.0.0 <4.5.3","<3.0.8"]}},
75
75
  {"id":"SNYK-JS-HANDLEBARS-480388","severity":"high","semver":{"vulnerable":[">=4.0.0 <4.4.5"]}},
76
76
  {"id":"SNYK-JS-HANDLEBARS-469063","severity":"high","semver":{"vulnerable":[">=4.0.0 <4.3.0","<3.8.0"]}},
@@ -116,7 +116,7 @@
116
116
  {"id":"SNYK-JS-LODASH-1040724","severity":"high","semver":{"vulnerable":["<4.17.21"]}},
117
117
  {"id":"SNYK-JS-LODASH-1018905","severity":"medium","semver":{"vulnerable":["<4.17.21"]}},
118
118
  {"id":"SNYK-JS-LODASH-608086","severity":"high","semver":{"vulnerable":["<4.17.17"]}},
119
- {"id":"SNYK-JS-LODASH-590103","severity":"high","semver":{"vulnerable":["<4.17.20"]}},
119
+ {"id":"SNYK-JS-LODASH-590103","severity":"critical","semver":{"vulnerable":["<4.17.20"]}},
120
120
  {"id":"SNYK-JS-LODASH-567746","severity":"medium","semver":{"vulnerable":["<4.17.16"]}},
121
121
  {"id":"SNYK-JS-LODASH-450202","severity":"high","semver":{"vulnerable":["<4.17.12"]}},
122
122
  {"id":"SNYK-JS-LODASH-73639","severity":"medium","semver":{"vulnerable":["<4.17.11"]}},
@@ -133,6 +133,7 @@
133
133
  {"id":"npm:mustache:20110814","severity":"medium","semver":{"vulnerable":["< 0.3.1"]}}
134
134
  ],
135
135
  "next":[
136
+ {"id":"SNYK-JS-NEXT-2405694","severity":"medium","semver":{"vulnerable":[">=10.0.0 <12.1.0"]}},
136
137
  {"id":"SNYK-JS-NEXT-2388583","severity":"medium","semver":{"vulnerable":[">=12.0.0 <12.0.9"]}},
137
138
  {"id":"SNYK-JS-NEXT-2312745","severity":"high","semver":{"vulnerable":[">=12.0.0 <12.0.5",">=11.1.0 <11.1.3"]}},
138
139
  {"id":"SNYK-JS-NEXT-1577139","severity":"medium","semver":{"vulnerable":[">=10.0.0 <11.1.1"]}},
@@ -566,7 +566,7 @@ declare module Artifacts {
566
566
  mixedContentIssue: LH.Crdp.Audits.MixedContentIssueDetails[];
567
567
  navigatorUserAgentIssue: LH.Crdp.Audits.NavigatorUserAgentIssueDetails[];
568
568
  quirksModeIssue: LH.Crdp.Audits.QuirksModeIssueDetails[];
569
- sameSiteCookieIssue: LH.Crdp.Audits.SameSiteCookieIssueDetails[];
569
+ cookieIssue: LH.Crdp.Audits.CookieIssueDetails[];
570
570
  sharedArrayBufferIssue: LH.Crdp.Audits.SharedArrayBufferIssueDetails[];
571
571
  twaQualityEnforcement: LH.Crdp.Audits.TrustedWebActivityIssueDetails[];
572
572
  }
package/types/config.d.ts CHANGED
@@ -62,10 +62,10 @@ declare module Config {
62
62
  * This information is typically set by the CLI or other channel integrations.
63
63
  */
64
64
  interface FRContext {
65
- gatherMode?: Gatherer.GatherMode;
66
65
  configPath?: string;
67
66
  settingsOverrides?: SharedFlagsSettings & Pick<LH.Flags, 'plugins'>;
68
67
  skipAboutBlank?: boolean;
68
+ logLevel?: string;
69
69
  }
70
70
 
71
71
  interface SharedPassNavigationJson {
@@ -62,6 +62,14 @@ declare module Gatherer {
62
62
  settings: Config.Settings;
63
63
  }
64
64
 
65
+ interface FRGatherResult {
66
+ artifacts: Artifacts;
67
+ runnerOptions: {
68
+ config: Config.FRConfig;
69
+ computedCache: Map<string, ArbitraryEqualityMap>
70
+ }
71
+ }
72
+
65
73
  interface PassContext {
66
74
  gatherMode: 'navigation';
67
75
  /** The url of the currently loaded page. If the main document redirects, this will be updated to keep track. */
@@ -21,6 +21,7 @@ import Protocol_ from './protocol';
21
21
  import * as Settings from './lhr/settings';
22
22
  import StructuredData_ from './structured-data';
23
23
  import Treemap_ from './lhr/treemap';
24
+ import UserFlow_ from './user-flow';
24
25
 
25
26
  // Construct hierarchy of global types under the LH namespace.
26
27
  declare global {
@@ -46,6 +47,8 @@ declare global {
46
47
  export import CrdpEvents = _CrdpMappings.Events;
47
48
  export import CrdpCommands = _CrdpMappings.Commands;
48
49
 
50
+ export import UserFlow = UserFlow_;
51
+
49
52
  // externs.d.ts
50
53
  export import Flags = Externs.Flags;
51
54
  export import CliFlags = Externs.CliFlags;
@@ -52,7 +52,7 @@ declare global {
52
52
  {expectations: Smokehouse.ExpectedRunnerResult | Array<Smokehouse.ExpectedRunnerResult>}
53
53
 
54
54
  export type LighthouseRunner =
55
- (url: string, configJson?: Config.Json, runnerOptions?: {isDebug?: boolean; useFraggleRock?: boolean}) => Promise<{lhr: LHResult, artifacts: Artifacts, log: string}>;
55
+ {runnerName?: string} & ((url: string, configJson?: Config.Json, runnerOptions?: {isDebug?: boolean; useFraggleRock?: boolean}) => Promise<{lhr: LHResult, artifacts: Artifacts, log: string}>);
56
56
 
57
57
  export interface SmokehouseOptions {
58
58
  /** If true, performs extra logging from the test runs. */
@@ -0,0 +1,19 @@
1
+ import {UserFlow as UserFlow_} from '../lighthouse-core/fraggle-rock/user-flow';
2
+
3
+ declare module UserFlow {
4
+ export interface FlowArtifacts {
5
+ gatherSteps: GatherStep[];
6
+ name?: string;
7
+ }
8
+
9
+ export interface GatherStep {
10
+ artifacts: LH.Artifacts;
11
+ name: string;
12
+ config?: LH.Config.Json;
13
+ configContext?: LH.Config.FRContext;
14
+ }
15
+ }
16
+
17
+ type UserFlow = typeof UserFlow_;
18
+
19
+ export default UserFlow;