@@ -22,20 +22,22 @@ late final List<String> dynamicRoutesToLookup;
2222void  setupBenchmarkData (final  int  routeCount) {
2323  logger.info ('Setting up benchmark data with $routeCount  routes...' );
2424  indexes =  List .generate (routeCount, (final  i) =>  i);
25-   final  permutedIndexes =  indexes.toList ()
26-     ..shuffle (Random (123 )); // Use fixed seed for reproducibility 
25+   final  permutedIndexes = 
26+       indexes.toList ()
27+         ..shuffle (Random (123 )); // Use fixed seed for reproducibility 
2728
2829  // Pre-generate lookup paths 
2930  staticRoutesToLookup =  permutedIndexes.map ((final  i) =>  '/path$i ' ).toList ();
30-   dynamicRoutesToLookup =  permutedIndexes
31-       .map (
32-         (final  i) => 
33-             // Fixed seed for reproducibility 
34-             '/users/user_${Random (i ).nextInt (1000 )}' 
35-             '/items/item_${Random (i  + 1 ).nextInt (5000 )}' 
36-             '/profile$i ' ,
37-       )
38-       .toList ();
31+   dynamicRoutesToLookup = 
32+       permutedIndexes
33+           .map (
34+             (final  i) => 
35+                 // Fixed seed for reproducibility 
36+                 '/users/user_${Random (i ).nextInt (1000 )}' 
37+                 '/items/item_${Random (i  + 1 ).nextInt (5000 )}' 
38+                 '/profile$i ' ,
39+           )
40+           .toList ();
3941  logger.info ('Setup complete.' );
4042}
4143
@@ -65,7 +67,7 @@ class Emitter extends ScoreEmitterV2 {
6567
6668abstract  class  RouterBenchmark  extends  PerfBenchmarkBase  {
6769  RouterBenchmark (final  Iterable <String > grouping, final  Emitter  emitter)
68-        :  super (grouping.join (';' ), emitter:  emitter);
70+     :  super (grouping.join (';' ), emitter:  emitter);
6971
7072  @override 
7173  void  exercise () =>  run ();
@@ -74,7 +76,7 @@ abstract class RouterBenchmark extends PerfBenchmarkBase {
7476// Benchmark for adding static routes 
7577class  StaticAddBenchmark  extends  RouterBenchmark  {
7678  StaticAddBenchmark (final  Emitter  emitter)
77-        :  super (['Add' , 'Static' , 'x$routeCount ' , 'Router' ], emitter);
79+     :  super (['Add' , 'Static' , 'x$routeCount ' , 'Router' ], emitter);
7880
7981  @override 
8082  void  run () {
@@ -88,7 +90,7 @@ class StaticAddBenchmark extends RouterBenchmark {
8890// Benchmark for looking up static routes 
8991class  StaticLookupBenchmark  extends  RouterBenchmark  {
9092  StaticLookupBenchmark (final  Emitter  emitter)
91-        :  super (['Lookup' , 'Static' , 'x$routeCount ' , 'Router' ], emitter);
93+     :  super (['Lookup' , 'Static' , 'x$routeCount ' , 'Router' ], emitter);
9294
9395  late  final  Router <int > router;
9496
@@ -112,7 +114,7 @@ class StaticLookupBenchmark extends RouterBenchmark {
112114// Benchmark for adding dynamic routes 
113115class  DynamicAddBenchmark  extends  RouterBenchmark  {
114116  DynamicAddBenchmark (final  Emitter  emitter)
115-        :  super (['Add' , 'Dynamic' , 'x$routeCount ' , 'Router' ], emitter);
117+     :  super (['Add' , 'Dynamic' , 'x$routeCount ' , 'Router' ], emitter);
116118
117119  @override 
118120  void  run () {
@@ -126,7 +128,7 @@ class DynamicAddBenchmark extends RouterBenchmark {
126128// Benchmark for looking up dynamic routes 
127129class  DynamicLookupBenchmark  extends  RouterBenchmark  {
128130  DynamicLookupBenchmark (final  Emitter  emitter)
129-        :  super (['Lookup' , 'Dynamic' , 'x$routeCount ' , 'Router' ], emitter);
131+     :  super (['Lookup' , 'Dynamic' , 'x$routeCount ' , 'Router' ], emitter);
130132
131133  late  final  Router <int > router;
132134
@@ -150,7 +152,7 @@ class DynamicLookupBenchmark extends RouterBenchmark {
150152
151153class  StaticAddRoutingkitBenchmark  extends  RouterBenchmark  {
152154  StaticAddRoutingkitBenchmark (final  Emitter  emitter)
153-        :  super (['Add' , 'Static' , 'x$routeCount ' , 'Routingkit' ], emitter);
155+     :  super (['Add' , 'Static' , 'x$routeCount ' , 'Routingkit' ], emitter);
154156
155157  @override 
156158  void  run () {
@@ -163,7 +165,7 @@ class StaticAddRoutingkitBenchmark extends RouterBenchmark {
163165
164166class  StaticLookupRoutingkitBenchmark  extends  RouterBenchmark  {
165167  StaticLookupRoutingkitBenchmark (final  Emitter  emitter)
166-        :  super (['Lookup' , 'Static' , 'x$routeCount ' , 'Routingkit' ], emitter);
168+     :  super (['Lookup' , 'Static' , 'x$routeCount ' , 'Routingkit' ], emitter);
167169
168170  late  final  routingkit.Router <int > router;
169171
@@ -186,7 +188,7 @@ class StaticLookupRoutingkitBenchmark extends RouterBenchmark {
186188
187189class  DynamicAddRoutingkitBenchmark  extends  RouterBenchmark  {
188190  DynamicAddRoutingkitBenchmark (final  Emitter  emitter)
189-        :  super (['Add' , 'Dynamic' , 'x$routeCount ' , 'Routingkit' ], emitter);
191+     :  super (['Add' , 'Dynamic' , 'x$routeCount ' , 'Routingkit' ], emitter);
190192
191193  @override 
192194  void  run () {
@@ -199,7 +201,7 @@ class DynamicAddRoutingkitBenchmark extends RouterBenchmark {
199201
200202class  DynamicLookupRoutingkitBenchmark  extends  RouterBenchmark  {
201203  DynamicLookupRoutingkitBenchmark (final  Emitter  emitter)
202-        :  super (['Lookup' , 'Dynamic' , 'x$routeCount ' , 'Routingkit' ], emitter);
204+     :  super (['Lookup' , 'Dynamic' , 'x$routeCount ' , 'Routingkit' ], emitter);
203205
204206  late  final  routingkit.Router <int > router;
205207
@@ -223,7 +225,7 @@ class DynamicLookupRoutingkitBenchmark extends RouterBenchmark {
223225
224226class  StaticAddSpannerBenchmark  extends  RouterBenchmark  {
225227  StaticAddSpannerBenchmark (final  Emitter  emitter)
226-        :  super (['Add' , 'Static' , 'x$routeCount ' , 'Spanner' ], emitter);
228+     :  super (['Add' , 'Static' , 'x$routeCount ' , 'Spanner' ], emitter);
227229
228230  @override 
229231  void  run () {
@@ -236,7 +238,7 @@ class StaticAddSpannerBenchmark extends RouterBenchmark {
236238
237239class  StaticLookupSpannerBenchmark  extends  RouterBenchmark  {
238240  StaticLookupSpannerBenchmark (final  Emitter  emitter)
239-        :  super (['Lookup' , 'Static' , 'x$routeCount ' , 'Spanner' ], emitter);
241+     :  super (['Lookup' , 'Static' , 'x$routeCount ' , 'Spanner' ], emitter);
240242
241243  late  final  spanner.Spanner  router;
242244
@@ -259,21 +261,24 @@ class StaticLookupSpannerBenchmark extends RouterBenchmark {
259261
260262class  DynamicAddSpannerBenchmark  extends  RouterBenchmark  {
261263  DynamicAddSpannerBenchmark (final  Emitter  emitter)
262-        :  super (['Add' , 'Dynamic' , 'x$routeCount ' , 'Spanner' ], emitter);
264+     :  super (['Add' , 'Dynamic' , 'x$routeCount ' , 'Spanner' ], emitter);
263265
264266  @override 
265267  void  run () {
266268    final  router =  spanner.Spanner ();
267269    for  (final  i in  indexes) {
268270      router.addRoute (
269-           spanner.HTTPMethod .GET , '/users/<id>/items/<itemId>/profile$i ' , i);
271+         spanner.HTTPMethod .GET ,
272+         '/users/<id>/items/<itemId>/profile$i ' ,
273+         i,
274+       );
270275    }
271276  }
272277}
273278
274279class  DynamicLookupSpannerBenchmark  extends  RouterBenchmark  {
275280  DynamicLookupSpannerBenchmark (final  Emitter  emitter)
276-        :  super (['Lookup' , 'Dynamic' , 'x$routeCount ' , 'Spanner' ], emitter);
281+     :  super (['Lookup' , 'Dynamic' , 'x$routeCount ' , 'Spanner' ], emitter);
277282
278283  late  final  spanner.Spanner  router;
279284
@@ -283,7 +288,10 @@ class DynamicLookupSpannerBenchmark extends RouterBenchmark {
283288    router =  spanner.Spanner ();
284289    for  (final  i in  indexes) {
285290      router.addRoute (
286-           spanner.HTTPMethod .GET , '/users/<id>/items/<itemId>/profile$i ' , i);
291+         spanner.HTTPMethod .GET ,
292+         '/users/<id>/items/<itemId>/profile$i ' ,
293+         i,
294+       );
287295    }
288296  }
289297
@@ -297,36 +305,44 @@ class DynamicLookupSpannerBenchmark extends RouterBenchmark {
297305}
298306
299307enum  RunOption <V > implements  OptionDefinition <V > {
300-   file (FileOption (
301-     argName:  'output' ,
302-     argAbbrev:  'o' ,
303-     helpText:  'The file to write benchmark results to' ,
304-     fromDefault:  _defaultFile,
305-     mode:  PathExistMode .mustNotExist,
306-   )),
307- 
308-   iterations (IntOption (
309-     argName:  'iterations' ,
310-     argAbbrev:  'i' ,
311-     helpText:  'Something to do with scale' ,
312-     defaultsTo:  1000 ,
313-     min:  1 ,
314-   )),
315- 
316-   storeInNotes (FlagOption (
317-     argName:  'store-in-git-notes' ,
318-     argAbbrev:  's' ,
319-     helpText:  'Store benchmark result with git notes' ,
320-     defaultsTo:  false ,
321-   )),
322- 
323-   pause (FlagOption (
324-     argName:  'pause-on-startup' ,
325-     argAbbrev:  'p' ,
326-     helpText:  'Pause on startup to allow devtools to attach' ,
327-     defaultsTo:  false ,
328-     hideNegatedUsage:  true ,
329-   ));
308+   file (
309+     FileOption (
310+       argName:  'output' ,
311+       argAbbrev:  'o' ,
312+       helpText:  'The file to write benchmark results to' ,
313+       fromDefault:  _defaultFile,
314+       mode:  PathExistMode .mustNotExist,
315+     ),
316+   ),
317+ 
318+   iterations (
319+     IntOption (
320+       argName:  'iterations' ,
321+       argAbbrev:  'i' ,
322+       helpText:  'Something to do with scale' ,
323+       defaultsTo:  1000 ,
324+       min:  1 ,
325+     ),
326+   ),
327+ 
328+   storeInNotes (
329+     FlagOption (
330+       argName:  'store-in-git-notes' ,
331+       argAbbrev:  's' ,
332+       helpText:  'Store benchmark result with git notes' ,
333+       defaultsTo:  false ,
334+     ),
335+   ),
336+ 
337+   pause (
338+     FlagOption (
339+       argName:  'pause-on-startup' ,
340+       argAbbrev:  'p' ,
341+       helpText:  'Pause on startup to allow devtools to attach' ,
342+       defaultsTo:  false ,
343+       hideNegatedUsage:  true ,
344+     ),
345+   );
330346
331347  const  RunOption (this .option);
332348
@@ -384,10 +400,14 @@ class RunCommand extends BetterCommand<RunOption<dynamic>, void> {
384400    if  (storeInNotes) {
385401      final  head =  await  git.commitFromRevision ('HEAD' );
386402      logger.info ('Appending benchmark results to: ${head .treeSha } (tree)' );
387-       await  git.runCommand (
388-         ['notes' , '--ref=benchmarks' , 'append' , '-F' , file.path, head.treeSha],
389-         echoOutput:  logger.shouldLog (LogLevel .debug),
390-       );
403+       await  git.runCommand ([
404+         'notes' ,
405+         '--ref=benchmarks' ,
406+         'append' ,
407+         '-F' ,
408+         file.path,
409+         head.treeSha,
410+       ], echoOutput:  logger.shouldLog (LogLevel .debug));
391411    }
392412  }
393413}
@@ -419,9 +439,11 @@ class ExtractCommand extends BetterCommand<ExtractOption<dynamic>, void> {
419439    final  to =  commandConfig.value (ExtractOption .to);
420440
421441    final  git =  await  GitDir .fromExisting (p.current, allowSubdirectory:  true );
422-     final  result =  await  git.runCommand (
423-       ['log' , '--format=%aI %H %T' , '$from ..$to ' ],
424-     );
442+     final  result =  await  git.runCommand ([
443+       'log' ,
444+       '--format=%aI %H %T' ,
445+       '$from ..$to ' ,
446+     ]);
425447
426448    final  sb =  StringBuffer ();
427449    for  (final  line in  (result.stdout as  String ).split ('\n ' )) {
@@ -433,10 +455,12 @@ class ExtractCommand extends BetterCommand<ExtractOption<dynamic>, void> {
433455      final  treeSha =  hashes[2 ];
434456      logger.debug ('$commitSha  $treeSha  $authorTime ' );
435457
436-       final  result =  await  git.runCommand (
437-         ['notes' , '--ref=benchmarks' , 'show' , treeSha],
438-         throwOnError:  false ,
439-       );
458+       final  result =  await  git.runCommand ([
459+         'notes' ,
460+         '--ref=benchmarks' ,
461+         'show' ,
462+         treeSha,
463+       ], throwOnError:  false );
440464      if  (result.exitCode ==  0 ) sb.writeln (result.stdout);
441465    }
442466    logger.info (sb.toString ());
@@ -463,13 +487,8 @@ Future<int> main(final List<String> args) async {
463487    'Relic Benchmark Tool' ,
464488    setLogLevel:  setLogLevel,
465489    enableCompletionCommand:  true ,
466-     embeddedCompletions:  [
467-       completionScriptCarapace,
468-     ],
469-   )..addCommands ([
470-       RunCommand (),
471-       ExtractCommand (),
472-     ]);
490+     embeddedCompletions:  [completionScriptCarapace],
491+   )..addCommands ([RunCommand (), ExtractCommand ()]);
473492  try  {
474493    await  runner.run (args);
475494  } on  UsageException  catch  (ex) {
0 commit comments