@typespec/compiler 1.1.0-dev.1 → 1.1.0-dev.10

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 (56) hide show
  1. package/dist/manifest.js +2 -2
  2. package/dist/src/core/checker.d.ts +6 -0
  3. package/dist/src/core/checker.d.ts.map +1 -1
  4. package/dist/src/core/checker.js +28 -8
  5. package/dist/src/core/checker.js.map +1 -1
  6. package/dist/src/core/cli/actions/compile/args.d.ts +2 -0
  7. package/dist/src/core/cli/actions/compile/args.d.ts.map +1 -1
  8. package/dist/src/core/cli/actions/compile/args.js.map +1 -1
  9. package/dist/src/core/cli/actions/compile/compile.d.ts.map +1 -1
  10. package/dist/src/core/cli/actions/compile/compile.js +54 -0
  11. package/dist/src/core/cli/actions/compile/compile.js.map +1 -1
  12. package/dist/src/core/cli/cli.js +5 -0
  13. package/dist/src/core/cli/cli.js.map +1 -1
  14. package/dist/src/core/linter.d.ts +11 -1
  15. package/dist/src/core/linter.d.ts.map +1 -1
  16. package/dist/src/core/linter.js +17 -2
  17. package/dist/src/core/linter.js.map +1 -1
  18. package/dist/src/core/name-resolver.js +1 -1
  19. package/dist/src/core/name-resolver.js.map +1 -1
  20. package/dist/src/core/program.d.ts.map +1 -1
  21. package/dist/src/core/program.js +40 -8
  22. package/dist/src/core/program.js.map +1 -1
  23. package/dist/src/core/stats.d.ts +39 -0
  24. package/dist/src/core/stats.d.ts.map +1 -0
  25. package/dist/src/core/stats.js +19 -0
  26. package/dist/src/core/stats.js.map +1 -0
  27. package/dist/src/core/types.d.ts.map +1 -1
  28. package/dist/src/core/types.js.map +1 -1
  29. package/dist/src/core/visibility/core.d.ts +7 -0
  30. package/dist/src/core/visibility/core.d.ts.map +1 -1
  31. package/dist/src/core/visibility/core.js +60 -0
  32. package/dist/src/core/visibility/core.js.map +1 -1
  33. package/dist/src/internals/index.d.ts +1 -0
  34. package/dist/src/internals/index.d.ts.map +1 -1
  35. package/dist/src/lib/visibility.d.ts.map +1 -1
  36. package/dist/src/lib/visibility.js +18 -79
  37. package/dist/src/lib/visibility.js.map +1 -1
  38. package/dist/src/server/compile-service.d.ts +5 -1
  39. package/dist/src/server/compile-service.d.ts.map +1 -1
  40. package/dist/src/server/compile-service.js +16 -3
  41. package/dist/src/server/compile-service.js.map +1 -1
  42. package/dist/src/server/index.d.ts +1 -1
  43. package/dist/src/server/index.d.ts.map +1 -1
  44. package/dist/src/server/server-track-action-task.d.ts +18 -0
  45. package/dist/src/server/server-track-action-task.d.ts.map +1 -0
  46. package/dist/src/server/server-track-action-task.js +70 -0
  47. package/dist/src/server/server-track-action-task.js.map +1 -0
  48. package/dist/src/server/server.js +2 -0
  49. package/dist/src/server/server.js.map +1 -1
  50. package/dist/src/server/serverlib.d.ts.map +1 -1
  51. package/dist/src/server/serverlib.js +52 -0
  52. package/dist/src/server/serverlib.js.map +1 -1
  53. package/dist/src/server/types.d.ts +21 -2
  54. package/dist/src/server/types.d.ts.map +1 -1
  55. package/dist/src/server/types.js.map +1 -1
  56. package/package.json +2 -2
@@ -3,6 +3,8 @@ import { CompilerHost, Diagnostic } from "../../../types.js";
3
3
  export interface CompileCliArgs {
4
4
  path?: string;
5
5
  pretty?: boolean;
6
+ /** Print statistics about the compilation(Task duration, types created, etc.) */
7
+ stats?: boolean;
6
8
  "output-dir"?: string;
7
9
  "output-path"?: string;
8
10
  nostdlib?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../../../../src/core/cli/actions/compile/args.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAY,MAAM,mBAAmB,CAAC;AAEvE,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,YAAY,EAClB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,OAAO,CAAC,CAAC,eAAe,GAAG,SAAS,EAAE,SAAS,UAAU,EAAE,CAAC,CAAC,CA0C/D"}
1
+ {"version":3,"file":"args.d.ts","sourceRoot":"","sources":["../../../../../../src/core/cli/actions/compile/args.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,UAAU,EAAY,MAAM,mBAAmB,CAAC;AAEvE,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,iFAAiF;IACjF,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,YAAY,EAClB,UAAU,EAAE,MAAM,EAClB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,cAAc,EACpB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GACtC,OAAO,CAAC,CAAC,eAAe,GAAG,SAAS,EAAE,SAAS,UAAU,EAAE,CAAC,CAAC,CA0C/D"}
@@ -1 +1 @@
1
- {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../../../../src/core/cli/actions/compile/args.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"args.js","sourceRoot":"","sources":["../../../../../../src/core/cli/actions/compile/args.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../../../../src/core/cli/actions/compile/compile.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAMjD,OAAO,EAAE,cAAc,EAAsB,MAAM,WAAW,CAAC;AAG/D,wBAAsB,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,iBAoB9E"}
1
+ {"version":3,"file":"compile.d.ts","sourceRoot":"","sources":["../../../../../../src/core/cli/actions/compile/compile.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAMjD,OAAO,EAAE,cAAc,EAAsB,MAAM,WAAW,CAAC;AAG/D,wBAAsB,aAAa,CAAC,IAAI,EAAE,eAAe,EAAE,IAAI,EAAE,cAAc,iBAoB9E"}
@@ -1,3 +1,4 @@
1
+ import pc from "picocolors";
1
2
  import { typespecVersion } from "../../../../manifest.js";
2
3
  import { logDiagnostics } from "../../../diagnostics.js";
3
4
  import { resolveTypeSpecEntrypoint } from "../../../entrypoint-resolution.js";
@@ -38,6 +39,9 @@ async function compileOnce(host, entrypoint, args) {
38
39
  try {
39
40
  const program = await compileProgram(host, entrypoint, cliOptions);
40
41
  logProgramResult(host, program);
42
+ if (args.stats) {
43
+ printStats(program.stats);
44
+ }
41
45
  if (program.hasError()) {
42
46
  process.exit(1);
43
47
  }
@@ -129,4 +133,54 @@ function logProgramResult(host, program, { showTimestamp } = {}) {
129
133
  log("No emitter was configured, no output was generated. Use `--emit <emitterName>` to pick emitter or specify it in the TypeSpec config.");
130
134
  }
131
135
  }
136
+ function printStats(stats) {
137
+ print("Compiler statistics:");
138
+ print(" Complexity:");
139
+ printKV("Created types", stats.complexity.createdTypes.toString(), 4);
140
+ printKV("Finished types", stats.complexity.finishedTypes.toString(), 4);
141
+ print(" Performance:");
142
+ printRuntimeStats(stats.runtime);
143
+ function printRuntimeStats(stats) {
144
+ printRuntime(stats, "loader", Performance.stage, 4);
145
+ printRuntime(stats, "resolver", Performance.stage, 4);
146
+ printRuntime(stats, "checker", Performance.stage, 4);
147
+ printGroup(stats, "validation", "validators", Performance.validator, 4);
148
+ printGroup(stats, "linter", "rules", Performance.lintingRule, 4);
149
+ printGroup(stats, "emit", "emitters", Performance.stage, 4);
150
+ }
151
+ function printGroup(base, groupName, itemsKey, perf, indent = 0) {
152
+ const group = base[groupName];
153
+ printKV(groupName, runtimeStr(group["total"] ?? 0), indent);
154
+ for (const [key, value] of Object.entries(group[itemsKey]).sort((a, b) => a[0].localeCompare(b[0]))) {
155
+ if (typeof value === "number") {
156
+ printRuntime(group[itemsKey], key, perf, indent + 2);
157
+ }
158
+ }
159
+ }
160
+ function printRuntime(base, key, perf, indent = 0) {
161
+ printKV(key, runtimeStr(base[key], perf), indent);
162
+ }
163
+ function runtimeStr(runtime, perf = Performance.stage) {
164
+ const str = `${Math.round(runtime)}ms`;
165
+ if (runtime > perf[1]) {
166
+ return pc.red(str);
167
+ }
168
+ else if (runtime > perf[0]) {
169
+ return pc.yellow(str);
170
+ }
171
+ return pc.green(str);
172
+ }
173
+ function printKV(key, value, indent = 0) {
174
+ print(`${" ".repeat(indent)}${pc.gray(key)}: ${value}`);
175
+ }
176
+ }
177
+ const Performance = {
178
+ stage: [200, 400],
179
+ lintingRule: [10, 20],
180
+ validator: [10, 20],
181
+ };
182
+ function print(message) {
183
+ // eslint-disable-next-line no-console
184
+ console.log(message);
185
+ }
132
186
  //# sourceMappingURL=compile.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../../../../../src/core/cli/actions/compile/compile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compile.js","sourceRoot":"","sources":["../../../../../../src/core/cli/actions/compile/compile.ts"],"names":[],"mappings":"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"}
@@ -72,6 +72,11 @@ async function main() {
72
72
  type: "boolean",
73
73
  default: false,
74
74
  describe: "Watch project files for changes and recompile.",
75
+ })
76
+ .option("stats", {
77
+ type: "boolean",
78
+ default: false,
79
+ describe: "Print statistics about the compilation.",
75
80
  })
76
81
  .option("emit", {
77
82
  type: "array",
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../src/core/cli/cli.ts"],"names":[],"mappings":"AAAA,IAAI,CAAC;IACH,6DAA6D;IAC7D,aAAa;IACb,MAAM,MAAM,CAAC,gCAAgC,CAAC,CAAC;AACjD,CAAC;AAAC,MAAM,CAAC;IACP,+BAA+B;AACjC,CAAC;AAED,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAGL,sBAAsB,EACtB,wBAAwB,GACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAEL,2BAA2B,EAC3B,WAAW,EACX,yBAAyB,GAC1B,MAAM,YAAY,CAAC;AAEpB,KAAK,UAAU,IAAI;IACjB,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC/B,UAAU,CAAC,KAAK,CAAC;SACjB,IAAI,EAAE;SACN,MAAM,EAAE;SACR,mBAAmB,CAAC;QACnB,eAAe,EAAE,KAAK;QACtB,kBAAkB,EAAE,KAAK;KAC1B,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,IAAI,EAAE,OAAO;QACb,MAAM,EAAE,IAAI;QACZ,QAAQ,EAAE,4EAA4E;KACvF,CAAC;SACD,MAAM,CAAC,OAAO,EAAE;QACf,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,yCAAyC;QACtD,OAAO,EAAE,KAAK;KACf,CAAC;SACD,MAAM,CAAC,QAAQ,EAAE;QAChB,IAAI,EAAE,SAAS;QACf,WAAW,EACT,0FAA0F;QAC5F,OAAO,EAAE,IAAI;KACd,CAAC;SACD,OAAO,CACN,gBAAgB,EAChB,0BAA0B,EAC1B,CAAC,GAAG,EAAE,EAAE;QACN,OAAO,GAAG;aACP,UAAU,CAAC,MAAM,EAAE;YAClB,WAAW,EAAE,iEAAiE;YAC9E,IAAI,EAAE,QAAQ;YACd,YAAY,EAAE,IAAI;SACnB,CAAC;aACD,MAAM,CAAC,YAAY,EAAE;YACpB,IAAI,EAAE,QAAQ;YACd,QAAQ,EACN,qFAAqF;SACxF,CAAC;aACD,MAAM,CAAC,SAAS,EAAE;YACjB,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,IAAI;YACZ,QAAQ,EACN,sKAAsK;SACzK,CAAC;aACD,MAAM,CAAC,UAAU,EAAE;YAClB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,2CAA2C;SACtD,CAAC;aACD,MAAM,CAAC,QAAQ,EAAE;YAChB,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,IAAI;YACZ,QAAQ,EACN,gGAAgG;SACnG,CAAC;aACD,MAAM,CAAC,OAAO,EAAE;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,gDAAgD;SAC3D,CAAC;aACD,MAAM,CAAC,OAAO,EAAE;YACf,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,yCAAyC;SACpD,CAAC;aACD,MAAM,CAAC,MAAM,EAAE;YACd,IAAI,EAAE,OAAO;YACb,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,sBAAsB;SACjC,CAAC;aACD,MAAM,CAAC,YAAY,EAAE;YACpB,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,8BAA8B;SACzC,CAAC;aAED,MAAM,CAAC,QAAQ,EAAE;YAChB,IAAI,EAAE,QAAQ;YACd,QAAQ,EACN,4FAA4F;SAC/F,CAAC;aACD,MAAM,CAAC,eAAe,EAAE;YACvB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,0EAA0E;SACrF,CAAC;aACD,MAAM,CAAC,SAAS,EAAE;YACjB,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,0BAA0B;SACrC,CAAC;aACD,MAAM,CAAC,SAAS,EAAE;YACjB,IAAI,EAAE,SAAS;YACf,QAAQ,EACN,sFAAsF;SACzF,CAAC;aACD,MAAM,CAAC,mBAAmB,EAAE;YAC3B,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,0CAA0C;SACrD,CAAC;aACD,MAAM,CAAC,KAAK,EAAE;YACb,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,MAAM;YACb,MAAM,EAAE,IAAI;YACZ,QAAQ,EAAE,4DAA4D;SACvE,CAAC,CAAC;IACP,CAAC,EACD,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CACvD;SACA,OAAO,CAAC,MAAM,EAAE,2BAA2B,EAAE,CAAC,GAAG,EAAE,EAAE;QACpD,OAAO,GAAG;aACP,aAAa,CAAC,CAAC,EAAE,uBAAuB,CAAC;aACzC,MAAM,CAAC,UAAU,EAAE;YAClB,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,sBAAsB;YACnC,OAAO,EAAE,KAAK;SACf,CAAC;aACD,OAAO,CACN,SAAS,EACT,2BAA2B,EAC3B,GAAG,EAAE,GAAE,CAAC,EACR,yBAAyB,CAA8C,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CACpF,sBAAsB,CAAC,IAAI,EAAE,IAAI,CAAC,CACnC,CACF;aACA,OAAO,CACN,WAAW,EACX,6BAA6B,EAC7B,GAAG,EAAE,GAAE,CAAC,EACR,yBAAyB,CAAgD,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CACtF,wBAAwB,CAAC,IAAI,EAAE,IAAI,CAAC,CACrC,CACF,CAAC;IACN,CAAC,CAAC;SACD,OAAO,CAAC,IAAI,EAAE,iCAAiC,EAAE,CAAC,GAAG,EAAE,EAAE;QACxD,OAAO,GAAG;aACP,aAAa,CAAC,CAAC,EAAE,sBAAsB,CAAC;aACxC,OAAO,CACN,SAAS,EACT,kCAAkC,EAClC,GAAG,EAAE,GAAE,CAAC,EACR,yBAAyB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAC9D;aACA,OAAO,CACN,WAAW,EACX,wBAAwB,EACxB,GAAG,EAAE,GAAE,CAAC,EACR,yBAAyB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAChE,CAAC;IACN,CAAC,CAAC;SACD,OAAO,CACN,qBAAqB,EACrB,sCAAsC,EACtC,CAAC,GAAG,EAAE,EAAE;QACN,OAAO,GAAG;aACP,UAAU,CAAC,SAAS,EAAE;YACrB,WAAW,EAAE,wCAAwC;YACrD,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,IAAI;YACX,YAAY,EAAE,IAAI;SACnB,CAAC;aACD,MAAM,CAAC,SAAS,EAAE;YACjB,KAAK,EAAE,GAAG;YACV,IAAI,EAAE,QAAQ;YACd,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,oBAAoB;SAC/B,CAAC;aACD,MAAM,CAAC,OAAO,EAAE;YACf,KAAK,EAAE,GAAG;YACV,IAAI,EAAE,SAAS;YACf,QAAQ,EAAE,iCAAiC;SAC5C,CAAC,CAAC;IACP,CAAC,EACD,WAAW,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CACtD;SACA,OAAO,CACN,qBAAqB,EACrB,gCAAgC,EAChC,CAAC,GAAG,EAAE,EAAE,CACN,GAAG;SACA,UAAU,CAAC,cAAc,EAAE;QAC1B,WAAW,EAAE,oCAAoC;QACjD,IAAI,EAAE,QAAQ;KACf,CAAC;SACD,MAAM,CAAC,UAAU,EAAE;QAClB,IAAI,EAAE,QAAQ;QACd,WAAW,EAAE,6BAA6B;KAC3C,CAAC,EACN,yBAAyB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAClE;SACA,OAAO,CACN,SAAS,EACT,+BAA+B,EAC/B,CAAC,GAAG,EAAE,EAAE,CACN,GAAG,CAAC,MAAM,CAAC,sBAAsB,EAAE;QACjC,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,0EAA0E;KACxF,CAAC,EACJ,yBAAyB,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,CACvC,2BAA2B,CAAC,IAAI,EAAE;QAChC,SAAS,EAAE,OAAO,CAAC,GAAG,EAAE;QACxB,kBAAkB,EAAE,IAAI,CAAC,sBAAsB,CAAC;KACjD,CAAC,CACH,CACF;SACA,OAAO,CACN,MAAM,EACN,uDAAuD,EACvD,GAAG,EAAE,GAAE,CAAC,EACR,yBAAyB,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAC3D;SACA,OAAO,CAAC,iBAAiB,EAAE,KAAK,KAAK,CAAC,CAAC,CAAC,GAAG,eAAe,aAAa,CAAC,CAAC,CAAC,eAAe,CAAC;SAC1F,aAAa,CAAC,CAAC,EAAE,6CAA6C,CAAC,CAAC,IAAI,CAAC;AAC1E,CAAC;AAED,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,KAAc,EAAE,EAAE;IAClD,sCAAsC;IACtC,OAAO,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;IAC9C,2BAA2B,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC,CAAC,CAAC;AAEH,IAAI,EAAE,CAAC,KAAK,CAAC,2BAA2B,CAAC,CAAC"}
@@ -8,7 +8,17 @@ type LinterLibraryInstance = {
8
8
  export interface Linter {
9
9
  extendRuleSet(ruleSet: LinterRuleSet): Promise<readonly Diagnostic[]>;
10
10
  registerLinterLibrary(name: string, lib?: LinterLibraryInstance): void;
11
- lint(): readonly Diagnostic[];
11
+ lint(): LinterResult;
12
+ }
13
+ export interface LinterStats {
14
+ runtime: {
15
+ total: number;
16
+ rules: Record<string, number>;
17
+ };
18
+ }
19
+ export interface LinterResult {
20
+ readonly diagnostics: readonly Diagnostic[];
21
+ readonly stats: LinterStats;
12
22
  }
13
23
  /**
14
24
  * Resolve the linter definition
@@ -1 +1 @@
1
- {"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../../../src/core/linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA6C,MAAM,kBAAkB,CAAC;AAMlG,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,UAAU,EACV,iBAAiB,EAEjB,aAAa,EAId,MAAM,YAAY,CAAC;AAEpB,KAAK,qBAAqB,GAAG;IAAE,MAAM,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAElE,MAAM,WAAW,MAAM;IACrB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,CAAC;IACtE,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACvE,IAAI,IAAI,SAAS,UAAU,EAAE,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,gBAAgB,GACvB,wBAAwB,CAoB1B;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,GACxE,MAAM,CAyJR;AAED,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,SAAS,kBAAkB,EACrF,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,EACvB,mBAAmB,EAAE,mBAAmB,GACvC,iBAAiB,CAAC,EAAE,CAAC,CA2CvB;AAED,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,YAAY,GAAG,qBAAqB,CAM5F"}
1
+ {"version":3,"file":"linter.d.ts","sourceRoot":"","sources":["../../../src/core/linter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAA6C,MAAM,kBAAkB,CAAC;AAMlG,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAG5C,OAAO,EACL,UAAU,EACV,kBAAkB,EAClB,gBAAgB,EAChB,wBAAwB,EACxB,UAAU,EACV,iBAAiB,EAEjB,aAAa,EAId,MAAM,YAAY,CAAC;AAEpB,KAAK,qBAAqB,GAAG;IAAE,MAAM,EAAE,wBAAwB,CAAA;CAAE,CAAC;AAElE,MAAM,WAAW,MAAM;IACrB,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,SAAS,UAAU,EAAE,CAAC,CAAC;IACtE,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACvE,IAAI,IAAI,YAAY,CAAC;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC/B,CAAC;CACH;AACD,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAC5C,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,gBAAgB,GACvB,wBAAwB,CAoB1B;AAED,wBAAgB,YAAY,CAC1B,OAAO,EAAE,OAAO,EAChB,WAAW,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,qBAAqB,GAAG,SAAS,CAAC,GACxE,MAAM,CAuKR;AAED,wBAAgB,uBAAuB,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,SAAS,kBAAkB,EACrF,OAAO,EAAE,OAAO,EAChB,IAAI,EAAE,UAAU,CAAC,CAAC,EAAE,EAAE,CAAC,EACvB,mBAAmB,EAAE,mBAAmB,GACvC,iBAAiB,CAAC,EAAE,CAAC,CA2CvB;AAED,eAAO,MAAM,wBAAwB,uBAAuB,CAAC;AAC7D,wBAAgB,0BAA0B,CAAC,YAAY,EAAE,YAAY,GAAG,qBAAqB,CAM5F"}
@@ -5,6 +5,7 @@ import { createUnusedTemplateParameterLinterRule } from "./linter-rules/unused-t
5
5
  import { createUnusedUsingLinterRule } from "./linter-rules/unused-using.rule.js";
6
6
  import { createDiagnostic } from "./messages.js";
7
7
  import { EventEmitter, mapEventEmitterToNodeListener, navigateProgram } from "./semantic-walker.js";
8
+ import { startTimer, time } from "./stats.js";
8
9
  import { NoTarget, } from "./types.js";
9
10
  /**
10
11
  * Resolve the linter definition
@@ -106,16 +107,30 @@ export function createLinter(program, loadLibrary) {
106
107
  function lint() {
107
108
  const diagnostics = createDiagnosticCollector();
108
109
  const eventEmitter = new EventEmitter();
110
+ const stats = {
111
+ runtime: {
112
+ total: 0,
113
+ rules: {},
114
+ },
115
+ };
109
116
  tracer.trace("lint", `Running linter with following rules:\n` +
110
117
  [...enabledRules.keys()].map((x) => ` - ${x}`).join("\n"));
118
+ const timer = startTimer();
111
119
  for (const rule of enabledRules.values()) {
120
+ const createTiming = startTimer();
112
121
  const listener = rule.create(createLinterRuleContext(program, rule, diagnostics));
122
+ stats.runtime.rules[rule.id] = createTiming.end();
113
123
  for (const [name, cb] of Object.entries(listener)) {
114
- eventEmitter.on(name, cb);
124
+ const timedCb = (...args) => {
125
+ const duration = time(() => cb(...args));
126
+ stats.runtime.rules[rule.id] += duration;
127
+ };
128
+ eventEmitter.on(name, timedCb);
115
129
  }
116
130
  }
117
131
  navigateProgram(program, mapEventEmitterToNodeListener(eventEmitter));
118
- return diagnostics.diagnostics;
132
+ stats.runtime.total = timer.end();
133
+ return { diagnostics: diagnostics.diagnostics, stats };
119
134
  }
120
135
  async function resolveLibrary(name) {
121
136
  const loadedLibrary = linterLibraries.get(name);
@@ -1 +1 @@
1
- {"version":3,"file":"linter.js","sourceRoot":"","sources":["../../../src/core/linter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"linter.js","sourceRoot":"","sources":["../../../src/core/linter.ts"],"names":[],"mappings":"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"}
@@ -991,7 +991,7 @@ export function createResolver(program) {
991
991
  while (node.signature.kind === SyntaxKind.OperationSignatureReference) {
992
992
  const baseResult = resolveTypeReference(node.signature.baseOperation);
993
993
  if (baseResult.resolutionResult & ResolutionResultFlags.Resolved) {
994
- node = baseSym.declarations[0];
994
+ node = baseResult.resolvedSymbol.declarations[0];
995
995
  }
996
996
  else {
997
997
  return baseResult;
@@ -1 +1 @@
1
- {"version":3,"file":"name-resolver.js","sourceRoot":"","sources":["../../../src/core/name-resolver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"name-resolver.js","sourceRoot":"","sources":["../../../src/core/name-resolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../../src/core/program.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,OAAO,EAAiB,MAAM,cAAc,CAAC;AAiBtD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAW/C,OAAO,EACL,YAAY,EACZ,UAAU,EAIV,WAAW,EAEX,gBAAgB,EAChB,eAAe,EACf,eAAe,EAEf,eAAe,EAGf,SAAS,EAGT,UAAU,EAMV,MAAM,EACN,IAAI,EAEJ,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,OAAO;IACtB,eAAe,EAAE,eAAe,CAAC;IAGjC,iEAAiE;IACjE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC7C,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAI7C,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAU5C,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IAGjC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAGtC,QAAQ,IAAI,OAAO,CAAC;IACpB,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/C,iBAAiB,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,CAAC;IAK5D,sBAAsB,IAAI,SAAS,CAAC;IAEpC,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC,IAAI,GAAG,SAAS,EAAE,SAAS,UAAU,EAAE,CAAC,CAAC;IAKnF,wDAAwD;IACxD,4BAA4B,CAAC,UAAU,EAAE,UAAU,GAAG,eAAe,CAAC;IAEtE;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,UAAU,UAAU;IAClB,YAAY,EAAE,WAAW,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,eAAe,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;CACnC;AAYD,wBAAsB,OAAO,CAC3B,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,eAAoB,EAC7B,UAAU,CAAC,EAAE,OAAO,oBAkCrB"}
1
+ {"version":3,"file":"program.d.ts","sourceRoot":"","sources":["../../../src/core/program.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,OAAO,EAAiB,MAAM,cAAc,CAAC;AAiBtD,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAY/C,OAAO,EACL,YAAY,EACZ,UAAU,EAIV,WAAW,EAEX,gBAAgB,EAChB,eAAe,EACf,eAAe,EAEf,eAAe,EAGf,SAAS,EAGT,UAAU,EAMV,MAAM,EACN,IAAI,EAEJ,kBAAkB,EACnB,MAAM,YAAY,CAAC;AAEpB,MAAM,WAAW,OAAO;IACtB,eAAe,EAAE,eAAe,CAAC;IAGjC,iEAAiE;IACjE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IAC7C,aAAa,EAAE,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAI7C,IAAI,EAAE,YAAY,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3C;;;OAGG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,QAAQ,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,CAAC;IAU5C,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC;IAGjC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAKtC,QAAQ,IAAI,OAAO,CAAC;IACpB,gBAAgB,CAAC,UAAU,EAAE,UAAU,GAAG,IAAI,CAAC;IAC/C,iBAAiB,CAAC,WAAW,EAAE,SAAS,UAAU,EAAE,GAAG,IAAI,CAAC;IAK5D,sBAAsB,IAAI,SAAS,CAAC;IAEpC,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG,CAAC,IAAI,GAAG,SAAS,EAAE,SAAS,UAAU,EAAE,CAAC,CAAC;IAKnF,wDAAwD;IACxD,4BAA4B,CAAC,UAAU,EAAE,UAAU,GAAG,eAAe,CAAC;IAEtE;;OAEG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;CAC9B;AAED,UAAU,UAAU;IAClB,YAAY,EAAE,WAAW,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,eAAe,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,QAAQ,CAAC,OAAO,EAAE,eAAe,CAAC;CACnC;AAYD,wBAAsB,OAAO,CAC3B,IAAI,EAAE,YAAY,EAClB,QAAQ,EAAE,MAAM,EAChB,OAAO,GAAE,eAAoB,EAC7B,UAAU,CAAC,EAAE,OAAO,oBAyCrB"}
@@ -22,6 +22,7 @@ import { parse, parseStandaloneTypeReference } from "./parser.js";
22
22
  import { getDirectoryPath, joinPaths, resolvePath } from "./path-utils.js";
23
23
  import { createSourceLoader, loadJsFile, moduleResolutionErrorToDiagnostic, } from "./source-loader.js";
24
24
  import { createStateAccessors } from "./state-accessors.js";
25
+ import { startTimer, time, timeAsync } from "./stats.js";
25
26
  import { NoTarget, SyntaxKind, } from "./types.js";
26
27
  export async function compile(host, mainFile, options = {}, oldProgram) {
27
28
  const logger = createLogger({ sink: host.logSink });
@@ -38,20 +39,29 @@ export async function compile(host, mainFile, options = {}, oldProgram) {
38
39
  if (shouldAbort) {
39
40
  return program;
40
41
  }
42
+ const emitStats = {
43
+ total: 0,
44
+ emitters: {},
45
+ };
46
+ const timer = startTimer();
41
47
  // Emitter stage
42
48
  for (const emitter of program.emitters) {
43
49
  // If in dry mode run and an emitter doesn't support it we have to skip it.
44
50
  if (program.compilerOptions.dryRun && !emitter.library.definition?.capabilities?.dryRun) {
45
51
  continue;
46
52
  }
47
- await emit(emitter, program);
53
+ const { duration } = await emit(emitter, program);
54
+ emitStats.emitters[emitter.metadata.name ?? "<unnamed>"] = duration;
48
55
  if (options.listFiles) {
49
56
  logEmittedFilesPath(host.logSink);
50
57
  }
51
58
  }
59
+ emitStats.total = timer.end();
60
+ program.stats.runtime.emit = emitStats;
52
61
  return program;
53
62
  }
54
63
  async function createProgram(host, mainFile, options = {}, oldProgram) {
64
+ const runtimeStats = {};
55
65
  const validateCbs = [];
56
66
  const stateMaps = new Map();
57
67
  const stateSets = new Map();
@@ -59,6 +69,7 @@ async function createProgram(host, mainFile, options = {}, oldProgram) {
59
69
  const duplicateSymbols = new Set();
60
70
  const emitters = [];
61
71
  const requireImports = new Map();
72
+ const complexityStats = {};
62
73
  let sourceResolution;
63
74
  let error = false;
64
75
  let continueToNextStage = true;
@@ -78,6 +89,10 @@ async function createProgram(host, mainFile, options = {}, oldProgram) {
78
89
  getOption,
79
90
  stateMaps,
80
91
  stateSets,
92
+ stats: {
93
+ complexity: complexityStats,
94
+ runtime: runtimeStats,
95
+ },
81
96
  tracer,
82
97
  trace,
83
98
  ...createStateAccessors(stateMaps, stateSets),
@@ -107,7 +122,7 @@ async function createProgram(host, mainFile, options = {}, oldProgram) {
107
122
  }
108
123
  const basedir = getDirectoryPath(resolvedMain) || "/";
109
124
  await checkForCompilerVersionMismatch(basedir);
110
- await loadSources(resolvedMain);
125
+ runtimeStats.loader = await timeAsync(() => loadSources(resolvedMain));
111
126
  const emit = options.noEmit ? [] : (options.emit ?? []);
112
127
  const emitterOptions = options.options;
113
128
  await loadEmitters(basedir, emit, emitterOptions ?? {});
@@ -119,14 +134,16 @@ async function createProgram(host, mainFile, options = {}, oldProgram) {
119
134
  // let GC reclaim old program, we do not reuse it beyond this point.
120
135
  oldProgram = undefined;
121
136
  const resolver = createResolver(program);
122
- resolver.resolveProgram();
137
+ runtimeStats.resolver = time(() => resolver.resolveProgram());
123
138
  const linter = createLinter(program, (name) => loadLibrary(basedir, name));
124
139
  linter.registerLinterLibrary(builtInLinterLibraryName, createBuiltInLinterLibrary(resolver));
125
140
  if (options.linterRuleSet) {
126
141
  program.reportDiagnostics(await linter.extendRuleSet(options.linterRuleSet));
127
142
  }
128
143
  program.checker = createChecker(program, resolver);
129
- program.checker.checkProgram();
144
+ runtimeStats.checker = time(() => program.checker.checkProgram());
145
+ complexityStats.createdTypes = program.checker.stats.createdTypes;
146
+ complexityStats.finishedTypes = program.checker.stats.finishedTypes;
130
147
  if (!continueToNextStage) {
131
148
  return { program, shouldAbort: true };
132
149
  }
@@ -138,7 +155,9 @@ async function createProgram(host, mainFile, options = {}, oldProgram) {
138
155
  return { program, shouldAbort: true };
139
156
  }
140
157
  // Linter stage
141
- program.reportDiagnostics(linter.lint());
158
+ const lintResult = linter.lint();
159
+ runtimeStats.linter = lintResult.stats.runtime;
160
+ program.reportDiagnostics(lintResult.diagnostics);
142
161
  return { program, shouldAbort: false };
143
162
  /**
144
163
  * Validate the libraries loaded during the compilation process are compatible.
@@ -369,10 +388,16 @@ async function createProgram(host, mainFile, options = {}, oldProgram) {
369
388
  return metadata;
370
389
  }
371
390
  async function runValidators() {
391
+ const start = startTimer();
392
+ runtimeStats.validation = { total: 0, validators: {} };
372
393
  runCompilerValidators();
394
+ runtimeStats.validation.validators.compiler = start.end();
373
395
  for (const validator of validateCbs) {
396
+ const start = startTimer();
374
397
  await runValidator(validator);
398
+ runtimeStats.validation.validators[validator.metadata.name ?? "<unnamed>"] = start.end();
375
399
  }
400
+ runtimeStats.validation.total = start.end();
376
401
  }
377
402
  async function runValidator(validator) {
378
403
  try {
@@ -654,16 +679,23 @@ async function emit(emitter, program) {
654
679
  const errorCount = program.diagnostics.filter((x) => x.severity === "error").length;
655
680
  const warnCount = program.diagnostics.filter((x) => x.severity === "warning").length;
656
681
  const logger = createLogger({ sink: program.host.logSink });
657
- await logger.trackAction(`Running ${emitterName}...`, `${emitterName} ${pc.dim(relativePathForEmittedFiles)}`, async (task) => {
682
+ return await logger.trackAction(`Running ${emitterName}...`, "", async (task) => {
683
+ const start = startTimer();
658
684
  await runEmitter(emitter, program);
685
+ const duration = start.end();
686
+ const message = `${emitterName} ${pc.green(`${Math.round(duration)}ms`)} ${pc.dim(relativePathForEmittedFiles)}`;
659
687
  const newErrorCount = program.diagnostics.filter((x) => x.severity === "error").length;
660
688
  const newWarnCount = program.diagnostics.filter((x) => x.severity === "warning").length;
661
689
  if (newErrorCount > errorCount) {
662
- task.fail();
690
+ task.fail(message);
663
691
  }
664
692
  else if (newWarnCount > warnCount) {
665
- task.warn();
693
+ task.warn(message);
694
+ }
695
+ else {
696
+ task.succeed(message);
666
697
  }
698
+ return { duration };
667
699
  });
668
700
  }
669
701
  /**