From 56cf0ba8e5ad26972e86154c0d97e0b0b27d1965 Mon Sep 17 00:00:00 2001 From: utamori Date: Tue, 2 Apr 2024 17:56:32 +0900 Subject: [PATCH 1/4] add line-length option for format command --- packages/melos/lib/src/command_runner/format.dart | 7 +++++++ packages/melos/lib/src/commands/format.dart | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/packages/melos/lib/src/command_runner/format.dart b/packages/melos/lib/src/command_runner/format.dart index 12c8064af..7d8ca499b 100644 --- a/packages/melos/lib/src/command_runner/format.dart +++ b/packages/melos/lib/src/command_runner/format.dart @@ -19,6 +19,11 @@ class FormatCommand extends MelosCommand { '[write] Overwrite formatted files on disk.\n', abbr: 'o', ); + argParser.addOption( + 'line-length', + defaultsTo: '80', + help: 'The line length to format the code to.', + ); } @override @@ -32,6 +37,7 @@ class FormatCommand extends MelosCommand { final setExitIfChanged = argResults?['set-exit-if-changed'] as bool; final output = argResults?['output'] as String?; final concurrency = int.parse(argResults!['concurrency'] as String); + final lineLength = int.parse(argResults!['line-length'] as String); final melos = Melos(logger: logger, config: config); @@ -41,6 +47,7 @@ class FormatCommand extends MelosCommand { concurrency: concurrency, setExitIfChanged: setExitIfChanged, output: output, + lineLength: lineLength, ); } } diff --git a/packages/melos/lib/src/commands/format.dart b/packages/melos/lib/src/commands/format.dart index 33cd88437..d4278ef91 100644 --- a/packages/melos/lib/src/commands/format.dart +++ b/packages/melos/lib/src/commands/format.dart @@ -7,6 +7,7 @@ mixin _FormatMixin on _Melos { int concurrency = 1, bool setExitIfChanged = false, String? output, + int lineLength = 80, }) async { final workspace = await createWorkspace(global: global, packageFilters: packageFilters); @@ -18,6 +19,7 @@ mixin _FormatMixin on _Melos { concurrency: concurrency, setExitIfChanged: setExitIfChanged, output: output, + lineLength: lineLength, ); } @@ -27,6 +29,7 @@ mixin _FormatMixin on _Melos { required int concurrency, required bool setExitIfChanged, String? output, + required int lineLength, }) async { final failures = {}; final pool = Pool(concurrency); @@ -35,6 +38,7 @@ mixin _FormatMixin on _Melos { 'format', if (setExitIfChanged) '--set-exit-if-changed', if (output != null) '--output $output', + '--line-length $lineLength', '.', ]; final formatArgsString = formatArgs.join(' '); From 9e0dc027c0353edf1d8711be7cda695f1c37bf7f Mon Sep 17 00:00:00 2001 From: utamori Date: Tue, 2 Apr 2024 19:15:46 +0900 Subject: [PATCH 2/4] Make lineLength parameter nullable --- packages/melos/lib/src/command_runner/format.dart | 1 - packages/melos/lib/src/commands/format.dart | 6 +++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/melos/lib/src/command_runner/format.dart b/packages/melos/lib/src/command_runner/format.dart index 7d8ca499b..ee242e355 100644 --- a/packages/melos/lib/src/command_runner/format.dart +++ b/packages/melos/lib/src/command_runner/format.dart @@ -21,7 +21,6 @@ class FormatCommand extends MelosCommand { ); argParser.addOption( 'line-length', - defaultsTo: '80', help: 'The line length to format the code to.', ); } diff --git a/packages/melos/lib/src/commands/format.dart b/packages/melos/lib/src/commands/format.dart index d4278ef91..c7513b8e8 100644 --- a/packages/melos/lib/src/commands/format.dart +++ b/packages/melos/lib/src/commands/format.dart @@ -7,7 +7,7 @@ mixin _FormatMixin on _Melos { int concurrency = 1, bool setExitIfChanged = false, String? output, - int lineLength = 80, + int? lineLength, }) async { final workspace = await createWorkspace(global: global, packageFilters: packageFilters); @@ -29,7 +29,7 @@ mixin _FormatMixin on _Melos { required int concurrency, required bool setExitIfChanged, String? output, - required int lineLength, + int? lineLength, }) async { final failures = {}; final pool = Pool(concurrency); @@ -38,7 +38,7 @@ mixin _FormatMixin on _Melos { 'format', if (setExitIfChanged) '--set-exit-if-changed', if (output != null) '--output $output', - '--line-length $lineLength', + if (lineLength != null) '--line-length $lineLength', '.', ]; final formatArgsString = formatArgs.join(' '); From 7b7709b2a1f434d78c5f1c53f2e1ce92f055b21e Mon Sep 17 00:00:00 2001 From: utamori Date: Tue, 2 Apr 2024 19:46:13 +0900 Subject: [PATCH 3/4] make line-length nullable --- packages/melos/lib/src/command_runner/format.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/melos/lib/src/command_runner/format.dart b/packages/melos/lib/src/command_runner/format.dart index ee242e355..d3462e6a7 100644 --- a/packages/melos/lib/src/command_runner/format.dart +++ b/packages/melos/lib/src/command_runner/format.dart @@ -36,7 +36,7 @@ class FormatCommand extends MelosCommand { final setExitIfChanged = argResults?['set-exit-if-changed'] as bool; final output = argResults?['output'] as String?; final concurrency = int.parse(argResults!['concurrency'] as String); - final lineLength = int.parse(argResults!['line-length'] as String); + final lineLength = int.tryParse(argResults?['line-length'] as String); final melos = Melos(logger: logger, config: config); From 1d3602b0190cfff1ba9a1a4c8d74fd5f4da78c8d Mon Sep 17 00:00:00 2001 From: utamori Date: Tue, 2 Apr 2024 19:50:14 +0900 Subject: [PATCH 4/4] fix cast error --- packages/melos/lib/src/command_runner/format.dart | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/packages/melos/lib/src/command_runner/format.dart b/packages/melos/lib/src/command_runner/format.dart index d3462e6a7..796c3ec2f 100644 --- a/packages/melos/lib/src/command_runner/format.dart +++ b/packages/melos/lib/src/command_runner/format.dart @@ -36,7 +36,10 @@ class FormatCommand extends MelosCommand { final setExitIfChanged = argResults?['set-exit-if-changed'] as bool; final output = argResults?['output'] as String?; final concurrency = int.parse(argResults!['concurrency'] as String); - final lineLength = int.tryParse(argResults?['line-length'] as String); + final lineLength = switch (argResults?['line-length']) { + final int length => length, + _ => null, + }; final melos = Melos(logger: logger, config: config);