From 7a8e8f37c0923bb4d33d635ccfa21ae0d2aafc8a Mon Sep 17 00:00:00 2001 From: Trevor Florence Date: Wed, 19 Feb 2025 14:26:59 -0700 Subject: [PATCH] fix(benchpress): Ensure future-proof correct initialization order (#60025) Future changes to initialization order can cause this previously OK code to start having compiler erroring like: `TS2729: Property 'foo' is used before its initialization.` PR Close #60025 --- packages/benchpress/src/reporter/json_file_reporter.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/benchpress/src/reporter/json_file_reporter.ts b/packages/benchpress/src/reporter/json_file_reporter.ts index 01a24e4c7f9..20e9b2a66b6 100644 --- a/packages/benchpress/src/reporter/json_file_reporter.ts +++ b/packages/benchpress/src/reporter/json_file_reporter.ts @@ -46,9 +46,11 @@ export class JsonFileReporter extends Reporter { @Inject(Options.NOW) private _now: Function, ) { super(); + + this.textReporter = new TextReporterBase(this._columnWidth, this._description); } - private textReporter = new TextReporterBase(this._columnWidth, this._description); + private textReporter: TextReporterBase; override reportMeasureValues(measureValues: MeasureValues): Promise { return Promise.resolve(null);