chore: adopt Dart 3.9 toolchain — honest floor + tall-style reformat (T-353)

Raise the declared minimums in pubspec.yaml to what our deps already
require: Flutter >=3.35.0 / Dart >=3.9.0 (was 3.19.0 / 3.5.0). alchemist
0.12 needs Flutter 3.32; Dart 3.9 first ships in Flutter 3.35, so 3.35 is
the binding floor. Pin the exact build toolchain in .fvmrc (Flutter
3.44.1).

Moving to the Dart 3.9 language level switches `dart format` to the new
"tall" style and enables two new lints. This commit is the resulting
mechanical churn, isolated from any behaviour change:
  - whole-tree `dart format` reformat (tall style)
  - `dart fix` for unnecessary_underscores + use_null_aware_elements

No runtime behaviour change; `make test` green.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-06-11 12:11:53 +02:00
co-authored by Claude Opus 4.8
parent bcea5f15b7
commit 6d0ebab721
444 changed files with 7587 additions and 12849 deletions
+15 -26
View File
@@ -35,17 +35,14 @@ void main() {
testWidgets('writePlain + readPlain go through the platform clipboard channel', (tester) async {
String? last;
tester.binding.defaultBinaryMessenger.setMockMethodCallHandler(
SystemChannels.platform,
(call) async {
if (call.method == 'Clipboard.setData') {
last = (call.arguments as Map)['text'] as String?;
} else if (call.method == 'Clipboard.getData') {
return <String, dynamic>{'text': last};
}
return null;
},
);
tester.binding.defaultBinaryMessenger.setMockMethodCallHandler(SystemChannels.platform, (call) async {
if (call.method == 'Clipboard.setData') {
last = (call.arguments as Map)['text'] as String?;
} else if (call.method == 'Clipboard.getData') {
return <String, dynamic>{'text': last};
}
return null;
});
final c = ClideClipboard();
await c.writePlain('hello');
expect(last, 'hello');
@@ -56,15 +53,12 @@ void main() {
testWidgets('write with toPlain syncs to the OS clipboard', (tester) async {
String? last;
tester.binding.defaultBinaryMessenger.setMockMethodCallHandler(
SystemChannels.platform,
(call) async {
if (call.method == 'Clipboard.setData') {
last = (call.arguments as Map)['text'] as String?;
}
return null;
},
);
tester.binding.defaultBinaryMessenger.setMockMethodCallHandler(SystemChannels.platform, (call) async {
if (call.method == 'Clipboard.setData') {
last = (call.arguments as Map)['text'] as String?;
}
return null;
});
final c = ClideClipboard();
await c.write<int>(7, toPlain: (n) => 'n=$n');
expect(last, 'n=7');
@@ -260,12 +254,7 @@ void main() {
n.error('e');
n.success('s', duration: const Duration(seconds: 1));
expect(n.active, hasLength(4));
expect(n.active.map((x) => x.level), [
NotificationLevel.info,
NotificationLevel.warning,
NotificationLevel.error,
NotificationLevel.success,
]);
expect(n.active.map((x) => x.level), [NotificationLevel.info, NotificationLevel.warning, NotificationLevel.error, NotificationLevel.success]);
n.dispose();
});