From 165c557d8b6126a2fd14cda76444a62af1336e51 Mon Sep 17 00:00:00 2001 From: Nikolas Rimikis Date: Sat, 28 Mar 2026 16:03:12 +0100 Subject: [PATCH 1/5] chore(deps): update dependency flutter to v3.35.7 Signed-off-by: Nikolas Rimikis --- .fvmrc | 2 +- packages/neon_framework/example/pubspec.yaml | 2 +- packages/neon_framework/lib/src/router.dart | 1 - .../widgets/option_settings_tile.dart | 78 ++++---- .../lib/src/storage/sqlite_persistence.dart | 1 - .../lib/src/utils/push_utils.dart | 1 - .../lib/src/utils/request_manager.dart | 1 - .../lib/src/widgets/dialog.dart | 33 ++-- .../packages/dashboard_app/pubspec.yaml | 2 +- .../packages/files_app/pubspec.yaml | 2 +- .../packages/neon_rich_text/pubspec.yaml | 2 +- .../lib/src/widgets/folder_select.dart | 2 +- .../packages/news_app/pubspec.yaml | 2 +- .../packages/notes_app/pubspec.yaml | 2 +- .../packages/notifications_app/pubspec.yaml | 2 +- .../talk_app/lib/src/dialogs/create_room.dart | 84 ++++---- .../packages/talk_app/pubspec.yaml | 2 +- packages/neon_framework/pubspec.yaml | 2 +- packages/neon_lints/example/pubspec.yaml | 2 +- packages/neon_lints/pubspec.yaml | 2 +- pubspec.lock | 180 +++++++++--------- pubspec.yaml | 4 +- 22 files changed, 206 insertions(+), 203 deletions(-) diff --git a/.fvmrc b/.fvmrc index a01bde2187b..34cd984e1f9 100644 --- a/.fvmrc +++ b/.fvmrc @@ -1,4 +1,4 @@ { - "flutter": "3.32.8", + "flutter": "3.35.7", "updateVscodeSettings": false } \ No newline at end of file diff --git a/packages/neon_framework/example/pubspec.yaml b/packages/neon_framework/example/pubspec.yaml index 0612d35bb2d..1759e835358 100644 --- a/packages/neon_framework/example/pubspec.yaml +++ b/packages/neon_framework/example/pubspec.yaml @@ -28,7 +28,7 @@ dependencies: vector_graphics: any dev_dependencies: - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 neon_lints: path: ../../neon_lints vector_graphics_compiler: any diff --git a/packages/neon_framework/lib/src/router.dart b/packages/neon_framework/lib/src/router.dart index 2cb8506f5d7..86ace44835a 100644 --- a/packages/neon_framework/lib/src/router.dart +++ b/packages/neon_framework/lib/src/router.dart @@ -8,7 +8,6 @@ import 'package:flutter/foundation.dart'; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:go_router/go_router.dart'; -import 'package:meta/meta.dart'; import 'package:neon_framework/models.dart'; import 'package:neon_framework/src/login/login.dart'; import 'package:neon_framework/src/pages/account_settings.dart'; diff --git a/packages/neon_framework/lib/src/settings/widgets/option_settings_tile.dart b/packages/neon_framework/lib/src/settings/widgets/option_settings_tile.dart index 6c474636620..0cd4fc3115b 100644 --- a/packages/neon_framework/lib/src/settings/widgets/option_settings_tile.dart +++ b/packages/neon_framework/lib/src/settings/widgets/option_settings_tile.dart @@ -137,28 +137,30 @@ class _SelectSettingsTileDialogState extends State RadioListTile( - title: Text( - widget.option.values[k]!(context), - overflow: TextOverflow.ellipsis, + child: RadioGroup( + groupValue: value, + onChanged: (value) { + setState(() { + this.value = value as T; + }); + + if (widget.immediateSelection) { + submit(); + } + }, + child: Column( + children: [ + ...widget.option.values.keys.map( + (k) => RadioListTile( + title: Text( + widget.option.values[k]!(context), + overflow: TextOverflow.ellipsis, + ), + value: k, ), - value: k, - groupValue: value, - onChanged: (value) { - setState(() { - this.value = value as T; - }); - - if (widget.immediateSelection) { - submit(); - } - }, ), - ), - ], + ], + ), ), ); @@ -204,25 +206,27 @@ class SelectSettingsTileScreen extends StatelessWidget { final selector = ValueListenableBuilder( valueListenable: option, - builder: (context, value, child) => CupertinoListSection.insetGrouped( - hasLeading: false, - header: child, - children: [ - ...option.values.keys.map( - (k) => RadioListTile.adaptive( - controlAffinity: ListTileControlAffinity.trailing, - title: Text( - option.values[k]!(context), - overflow: TextOverflow.ellipsis, + builder: (context, value, child) => RadioGroup( + groupValue: value, + onChanged: (value) { + option.value = value as T; + }, + child: CupertinoListSection.insetGrouped( + hasLeading: false, + header: child, + children: [ + ...option.values.keys.map( + (k) => RadioListTile.adaptive( + controlAffinity: ListTileControlAffinity.trailing, + title: Text( + option.values[k]!(context), + overflow: TextOverflow.ellipsis, + ), + value: k, ), - value: k, - groupValue: value, - onChanged: (value) { - option.value = value as T; - }, ), - ), - ], + ], + ), ), child: Text( option.label(context), diff --git a/packages/neon_framework/lib/src/storage/sqlite_persistence.dart b/packages/neon_framework/lib/src/storage/sqlite_persistence.dart index 636a91bb4cb..c9883ecd4f6 100644 --- a/packages/neon_framework/lib/src/storage/sqlite_persistence.dart +++ b/packages/neon_framework/lib/src/storage/sqlite_persistence.dart @@ -4,7 +4,6 @@ import 'dart:convert'; import 'package:built_collection/built_collection.dart'; import 'package:flutter/foundation.dart'; import 'package:logging/logging.dart'; -import 'package:meta/meta.dart' show internal; import 'package:neon_framework/platform.dart'; import 'package:neon_framework/src/storage/persistence.dart'; import 'package:path/path.dart' as p; diff --git a/packages/neon_framework/lib/src/utils/push_utils.dart b/packages/neon_framework/lib/src/utils/push_utils.dart index da538007f1b..19c05bde80c 100644 --- a/packages/neon_framework/lib/src/utils/push_utils.dart +++ b/packages/neon_framework/lib/src/utils/push_utils.dart @@ -12,7 +12,6 @@ import 'package:flutter_svg/flutter_svg.dart' show SvgBytesLoader, vg; import 'package:http/http.dart' as http; import 'package:image/image.dart' as img; import 'package:logging/logging.dart'; -import 'package:meta/meta.dart'; import 'package:neon_framework/l10n/localizations.dart'; import 'package:neon_framework/src/bloc/result.dart'; import 'package:neon_framework/src/storage/keys.dart'; diff --git a/packages/neon_framework/lib/src/utils/request_manager.dart b/packages/neon_framework/lib/src/utils/request_manager.dart index df72b9c0a18..1ef8b07e074 100644 --- a/packages/neon_framework/lib/src/utils/request_manager.dart +++ b/packages/neon_framework/lib/src/utils/request_manager.dart @@ -5,7 +5,6 @@ import 'package:dynamite_runtime/http_client.dart'; import 'package:flutter/foundation.dart'; import 'package:http/http.dart' as http; import 'package:logging/logging.dart'; -import 'package:meta/meta.dart'; import 'package:neon_framework/models.dart'; import 'package:neon_framework/src/bloc/result.dart'; import 'package:neon_framework/storage.dart'; diff --git a/packages/neon_framework/lib/src/widgets/dialog.dart b/packages/neon_framework/lib/src/widgets/dialog.dart index 97ca288b74b..56a50e82272 100644 --- a/packages/neon_framework/lib/src/widgets/dialog.dart +++ b/packages/neon_framework/lib/src/widgets/dialog.dart @@ -646,22 +646,23 @@ class _NeonAccountDeletionDialogState extends State { icon: icon, title: Text(title), content: SingleChildScrollView( - child: Column( - children: [ - RadioListTile( - value: AccountDeletion.local, - groupValue: value, - onChanged: (value) => update(value!), - title: Text(localizations.accountOptionsRemoveLocal), - ), - RadioListTile( - value: AccountDeletion.remote, - groupValue: value, - onChanged: capabilities.enabled ? (value) => update(value!) : null, - title: Text(localizations.accountOptionsRemoveRemote), - subtitle: subtitle, - ), - ], + child: RadioGroup( + groupValue: value, + onChanged: (value) => update(value!), + child: Column( + children: [ + RadioListTile( + value: AccountDeletion.local, + title: Text(localizations.accountOptionsRemoveLocal), + ), + RadioListTile( + value: AccountDeletion.remote, + enabled: capabilities.enabled, + title: Text(localizations.accountOptionsRemoveRemote), + subtitle: subtitle, + ), + ], + ), ), ), actions: [ diff --git a/packages/neon_framework/packages/dashboard_app/pubspec.yaml b/packages/neon_framework/packages/dashboard_app/pubspec.yaml index e0524d64838..e90cc401dd6 100644 --- a/packages/neon_framework/packages/dashboard_app/pubspec.yaml +++ b/packages/neon_framework/packages/dashboard_app/pubspec.yaml @@ -23,7 +23,7 @@ dependencies: dev_dependencies: build_runner: ^2.5.4 - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 flutter_test: sdk: flutter go_router_builder: ^3.0.0 diff --git a/packages/neon_framework/packages/files_app/pubspec.yaml b/packages/neon_framework/packages/files_app/pubspec.yaml index 91f5e4627a4..418699fc4ae 100644 --- a/packages/neon_framework/packages/files_app/pubspec.yaml +++ b/packages/neon_framework/packages/files_app/pubspec.yaml @@ -37,7 +37,7 @@ dependencies: dev_dependencies: build_runner: ^2.5.4 - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 go_router_builder: ^3.0.0 neon_lints: path: ../../../neon_lints diff --git a/packages/neon_framework/packages/neon_rich_text/pubspec.yaml b/packages/neon_framework/packages/neon_rich_text/pubspec.yaml index df2a134fec3..6e0283167e7 100644 --- a/packages/neon_framework/packages/neon_rich_text/pubspec.yaml +++ b/packages/neon_framework/packages/neon_rich_text/pubspec.yaml @@ -22,7 +22,7 @@ dependencies: nextcloud: ^9.0.0 dev_dependencies: - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 flutter_test: sdk: flutter mocktail: ^1.0.4 diff --git a/packages/neon_framework/packages/news_app/lib/src/widgets/folder_select.dart b/packages/neon_framework/packages/news_app/lib/src/widgets/folder_select.dart index bb320321637..e3fa9c30b8f 100644 --- a/packages/neon_framework/packages/news_app/lib/src/widgets/folder_select.dart +++ b/packages/neon_framework/packages/news_app/lib/src/widgets/folder_select.dart @@ -23,7 +23,7 @@ class NewsFolderSelect extends StatelessWidget { decoration: InputDecoration( hintText: NewsLocalizations.of(context).folder, ), - value: value, + initialValue: value, items: [ DropdownMenuItem( child: Text(NewsLocalizations.of(context).folderRoot), diff --git a/packages/neon_framework/packages/news_app/pubspec.yaml b/packages/neon_framework/packages/news_app/pubspec.yaml index 198acedf3a0..b2039aa6d0e 100644 --- a/packages/neon_framework/packages/news_app/pubspec.yaml +++ b/packages/neon_framework/packages/news_app/pubspec.yaml @@ -31,7 +31,7 @@ dependencies: dev_dependencies: build_runner: ^2.5.4 - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 go_router_builder: ^3.0.0 neon_lints: path: ../../../neon_lints diff --git a/packages/neon_framework/packages/notes_app/pubspec.yaml b/packages/neon_framework/packages/notes_app/pubspec.yaml index 85596a3c678..28b10ff2360 100644 --- a/packages/neon_framework/packages/notes_app/pubspec.yaml +++ b/packages/neon_framework/packages/notes_app/pubspec.yaml @@ -30,7 +30,7 @@ dependencies: dev_dependencies: build_runner: ^2.5.4 - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 go_router_builder: ^3.0.0 neon_lints: path: ../../../neon_lints diff --git a/packages/neon_framework/packages/notifications_app/pubspec.yaml b/packages/neon_framework/packages/notifications_app/pubspec.yaml index 19d379f8277..5ef458c1744 100644 --- a/packages/neon_framework/packages/notifications_app/pubspec.yaml +++ b/packages/neon_framework/packages/notifications_app/pubspec.yaml @@ -30,7 +30,7 @@ dependencies: dev_dependencies: build_runner: ^2.5.4 built_value: ^8.10.1 - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 flutter_test: sdk: flutter go_router_builder: ^3.0.0 diff --git a/packages/neon_framework/packages/talk_app/lib/src/dialogs/create_room.dart b/packages/neon_framework/packages/talk_app/lib/src/dialogs/create_room.dart index 3e584a0cad5..35af5527aa4 100644 --- a/packages/neon_framework/packages/talk_app/lib/src/dialogs/create_room.dart +++ b/packages/neon_framework/packages/talk_app/lib/src/dialogs/create_room.dart @@ -69,49 +69,51 @@ class _TalkCreateRoomDialogState extends State { @override Widget build(BuildContext context) { - final body = Column( - crossAxisAlignment: CrossAxisAlignment.end, - mainAxisSize: MainAxisSize.min, - children: [ - for (final type in [ - spreed.RoomType.oneToOne, - spreed.RoomType.group, - spreed.RoomType.public, - ]) - RadioListTile.adaptive( - title: Text(TalkLocalizations.of(context).roomType(type.name)), - secondary: Icon( - // coverage:ignore-start - switch (type) { - // coverage:ignore-end - spreed.RoomType.oneToOne => AdaptiveIcons.person, - spreed.RoomType.group => AdaptiveIcons.group, - spreed.RoomType.public => AdaptiveIcons.link, - _ => throw UnimplementedError('$type is not a valid type'), // coverage:ignore-line - }, - ), - value: type, - groupValue: selectedType, - onChanged: changeType, - ), - const Divider(), - switch (selectedType) { - spreed.RoomType.oneToOne || spreed.RoomType.group => buildAutocomplete(), - spreed.RoomType.public => TextFormField( - controller: controller, - focusNode: focusNode, - validator: (input) => validateNotEmpty(context, input), - decoration: InputDecoration( - hintText: TalkLocalizations.of(context).roomCreateRoomName, + final body = RadioGroup( + groupValue: selectedType, + onChanged: changeType, + child: Column( + crossAxisAlignment: CrossAxisAlignment.end, + mainAxisSize: MainAxisSize.min, + children: [ + for (final type in [ + spreed.RoomType.oneToOne, + spreed.RoomType.group, + spreed.RoomType.public, + ]) + RadioListTile.adaptive( + title: Text(TalkLocalizations.of(context).roomType(type.name)), + secondary: Icon( + // coverage:ignore-start + switch (type) { + // coverage:ignore-end + spreed.RoomType.oneToOne => AdaptiveIcons.person, + spreed.RoomType.group => AdaptiveIcons.group, + spreed.RoomType.public => AdaptiveIcons.link, + _ => throw UnimplementedError('$type is not a valid type'), // coverage:ignore-line + }, ), - onFieldSubmitted: (_) { - submit(); - }, + value: type, ), - null => const SizedBox(), - _ => throw StateError('$selectedType is not a valid type'), // coverage:ignore-line - }, - ], + const Divider(), + switch (selectedType) { + spreed.RoomType.oneToOne || spreed.RoomType.group => buildAutocomplete(), + spreed.RoomType.public => TextFormField( + controller: controller, + focusNode: focusNode, + validator: (input) => validateNotEmpty(context, input), + decoration: InputDecoration( + hintText: TalkLocalizations.of(context).roomCreateRoomName, + ), + onFieldSubmitted: (_) { + submit(); + }, + ), + null => const SizedBox(), + _ => throw StateError('$selectedType is not a valid type'), // coverage:ignore-line + }, + ], + ), ); return NeonDialog( diff --git a/packages/neon_framework/packages/talk_app/pubspec.yaml b/packages/neon_framework/packages/talk_app/pubspec.yaml index a1b69faef5a..6eb9d895c25 100644 --- a/packages/neon_framework/packages/talk_app/pubspec.yaml +++ b/packages/neon_framework/packages/talk_app/pubspec.yaml @@ -32,7 +32,7 @@ dependencies: dev_dependencies: build_runner: ^2.5.4 built_value: ^8.10.1 - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 flutter_keyboard_visibility: ^6.0.0 flutter_test: sdk: flutter diff --git a/packages/neon_framework/pubspec.yaml b/packages/neon_framework/pubspec.yaml index d07867e1238..38416c676f2 100644 --- a/packages/neon_framework/pubspec.yaml +++ b/packages/neon_framework/pubspec.yaml @@ -81,7 +81,7 @@ dev_dependencies: cookie_store_conformance_tests: path: ../cookie_store/packages/cookie_store_conformance_tests crypton: ^2.2.1 - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 dart_style: ^3.1.0 flutter_test: sdk: flutter diff --git a/packages/neon_lints/example/pubspec.yaml b/packages/neon_lints/example/pubspec.yaml index cf991889c80..c09d64477f8 100644 --- a/packages/neon_lints/example/pubspec.yaml +++ b/packages/neon_lints/example/pubspec.yaml @@ -12,7 +12,7 @@ dependencies: nextcloud: ^9.0.0 dev_dependencies: - custom_lint: ^0.7.6 + custom_lint: ^0.8.0 flutter_test: sdk: flutter meta: ^1.11.0 diff --git a/packages/neon_lints/pubspec.yaml b/packages/neon_lints/pubspec.yaml index 536c4786aaf..d309095c0b1 100644 --- a/packages/neon_lints/pubspec.yaml +++ b/packages/neon_lints/pubspec.yaml @@ -10,7 +10,7 @@ environment: dependencies: analyzer: ^7.3.0 analyzer_plugin: ^0.13.0 - custom_lint_builder: ^0.7.0 + custom_lint_builder: ^0.8.0 dev_dependencies: lint_maker: ^0.3.2 diff --git a/pubspec.lock b/pubspec.lock index 369e5f03725..440e843bf2c 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -69,10 +69,10 @@ packages: dependency: transitive description: name: async - sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb" + sha256: e2eb0491ba5ddb6177742d2da23904574082139b07c1e33b8503b9f46f3e1a37 url: "https://pub.dev" source: hosted - version: "2.13.0" + version: "2.13.1" bloc: dependency: transitive description: @@ -189,26 +189,26 @@ packages: dependency: transitive description: name: camera - sha256: "87a27e0553e3432119c1c2f6e4b9a1bbf7d2c660552b910bfa59185a9facd632" + sha256: "4142a19a38e388d3bab444227636610ba88982e36dff4552d5191a86f65dc437" url: "https://pub.dev" source: hosted - version: "0.11.2+1" + version: "0.11.4" camera_android_camerax: dependency: transitive description: name: camera_android_camerax - sha256: "2c0746d55f513bed55f52e0b5d9bda18c1533bb16bb89ea93d8033f3815e6cd8" + sha256: "8516fe308bc341a5067fb1a48edff0ddfa57c0d3cdcc9dbe7ceca3ba119e2577" url: "https://pub.dev" source: hosted - version: "0.6.23+1" + version: "0.6.30" camera_avfoundation: dependency: transitive description: name: camera_avfoundation - sha256: "951ef122d01ebba68b7a54bfe294e8b25585635a90465c311b2f875ae72c412f" + sha256: "11b4aee2f5e5e038982e152b4a342c749b414aa27857899d20f4323e94cb5f0b" url: "https://pub.dev" source: hosted - version: "0.9.21+2" + version: "0.9.23+2" camera_platform_interface: dependency: transitive description: @@ -365,34 +365,34 @@ packages: dependency: transitive description: name: cupertino_icons - sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + sha256: "41e005c33bd814be4d3096aff55b1908d419fde52ca656c8c47719ec745873cd" url: "https://pub.dev" source: hosted - version: "1.0.8" + version: "1.0.9" custom_lint: dependency: transitive description: name: custom_lint - sha256: "9656925637516c5cf0f5da018b33df94025af2088fe09c8ae2ca54c53f2d9a84" + sha256: "78085fbe842de7c5bef92de811ca81536968dbcbbcdac5c316711add2d15e796" url: "https://pub.dev" source: hosted - version: "0.7.6" + version: "0.8.0" custom_lint_builder: dependency: transitive description: name: custom_lint_builder - sha256: "6cdc8e87e51baaaba9c43e283ed8d28e59a0c4732279df62f66f7b5984655414" + sha256: cc5532d5733d4eccfccaaec6070a1926e9f21e613d93ad0927fad020b95c9e52 url: "https://pub.dev" source: hosted - version: "0.7.6" + version: "0.8.0" custom_lint_core: dependency: transitive description: name: custom_lint_core - sha256: "31110af3dde9d29fb10828ca33f1dce24d2798477b167675543ce3d208dee8be" + sha256: cc4684d22ca05bf0a4a51127e19a8aea576b42079ed2bc9e956f11aaebe35dd1 url: "https://pub.dev" source: hosted - version: "0.7.5" + version: "0.8.0" custom_lint_visitor: dependency: transitive description: @@ -421,10 +421,10 @@ packages: dependency: transitive description: name: dev_build - sha256: fda8a54458b2a873a84e0cd1513f4323a1fb0599ed5455245359bc0398bad9ee + sha256: "1d9aa167c05cbe4be9fbaf863c76dcee9bec302fb861270672beb6d6be0bc8f4" url: "https://pub.dev" source: hosted - version: "1.1.2+11" + version: "1.1.3+1" diff_match_patch: dependency: transitive description: @@ -494,10 +494,10 @@ packages: dependency: transitive description: name: file_selector_macos - sha256: "19124ff4a3d8864fdc62072b6a2ef6c222d55a3404fe14893a3c02744907b60c" + sha256: "5e0bbe9c312416f1787a68259ea1505b52f258c587f12920422671807c4d618a" url: "https://pub.dev" source: hosted - version: "0.9.4+4" + version: "0.9.5" file_selector_platform_interface: dependency: transitive description: @@ -672,18 +672,18 @@ packages: dependency: transitive description: name: flutter_plugin_android_lifecycle - sha256: c2fe1001710127dfa7da89977a08d591398370d099aacdaa6d44da7eb14b8476 + sha256: "38d1c268de9097ff59cf0e844ac38759fc78f76836d37edad06fa21e182055a0" url: "https://pub.dev" source: hosted - version: "2.0.31" + version: "2.0.34" flutter_svg: dependency: transitive description: name: flutter_svg - sha256: "87fbd7c534435b6c5d9d98b01e1fd527812b82e68ddd8bd35fc45ed0fa8f0a95" + sha256: "1ded017b39c8e15c8948ea855070a5ff8ff8b3d5e83f3446e02d6bb12add7ad9" url: "https://pub.dev" source: hosted - version: "2.2.3" + version: "2.2.4" flutter_test: dependency: transitive description: flutter @@ -827,10 +827,10 @@ packages: dependency: transitive description: name: image_picker_android - sha256: "28f3987ca0ec702d346eae1d90eda59603a2101b52f1e234ded62cff1d5cfa6e" + sha256: "9eae0cbd672549dacc18df855c2a23782afe4854ada5190b7d63b30ee0b0d3fd" url: "https://pub.dev" source: hosted - version: "0.8.13+1" + version: "0.8.13+15" image_picker_for_web: dependency: transitive description: @@ -843,10 +843,10 @@ packages: dependency: transitive description: name: image_picker_ios - sha256: eb06fe30bab4c4497bad449b66448f50edcc695f1c59408e78aa3a8059eb8f0e + sha256: "956c16a42c0c708f914021666ffcd8265dde36e673c9fa68c81f7d085d9774ad" url: "https://pub.dev" source: hosted - version: "0.8.13" + version: "0.8.13+3" image_picker_linux: dependency: transitive description: @@ -859,10 +859,10 @@ packages: dependency: transitive description: name: image_picker_macos - sha256: d58cd9d67793d52beefd6585b12050af0a7663c0c2a6ece0fb110a35d6955e04 + sha256: "86f0f15a309de7e1a552c12df9ce5b59fe927e71385329355aec4776c6a8ec91" url: "https://pub.dev" source: hosted - version: "0.2.2" + version: "0.2.2+1" image_picker_platform_interface: dependency: transitive description: @@ -923,34 +923,34 @@ packages: dependency: transitive description: name: json_annotation - sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" + sha256: cb09e7dac6210041fad964ed7fbee004f14258b4eca4040f72d1234062ace4c8 url: "https://pub.dev" source: hosted - version: "4.9.0" + version: "4.11.0" leak_tracker: dependency: transitive description: name: leak_tracker - sha256: "6bb818ecbdffe216e81182c2f0714a2e62b593f4a4f13098713ff1685dfb6ab0" + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" url: "https://pub.dev" source: hosted - version: "10.0.9" + version: "11.0.2" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: f8b613e7e6a13ec79cfdc0e97638fddb3ab848452eff057653abd3edba760573 + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" url: "https://pub.dev" source: hosted - version: "3.0.9" + version: "3.0.10" leak_tracker_testing: dependency: transitive description: name: leak_tracker_testing - sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1" url: "https://pub.dev" source: hosted - version: "3.0.1" + version: "3.0.2" lint_maker: dependency: transitive description: @@ -979,10 +979,10 @@ packages: dependency: transitive description: name: markdown - sha256: "935e23e1ff3bc02d390bad4d4be001208ee92cc217cb5b5a6c19bc14aaa318c1" + sha256: ee85086ad7698b42522c6ad42fe195f1b9898e4d974a1af4576c1a3a176cada9 url: "https://pub.dev" source: hosted - version: "7.3.0" + version: "7.3.1" matcher: dependency: transitive description: @@ -1035,10 +1035,10 @@ packages: dependency: transitive description: name: mustache_template - sha256: daa42be75f2ccfb287c24a75e7ac594f2ea0b32bf9ebe7c15154aa45b2dfb2de + sha256: "544ff0b837836f5ad6b351e7a676ff7c2cad4fa412c465908aeb9358caddb6fc" url: "https://pub.dev" source: hosted - version: "2.0.2" + version: "2.0.4" nested: dependency: transitive description: @@ -1115,18 +1115,18 @@ packages: dependency: transitive description: name: path_provider_android - sha256: "3b4c1fc3aa55ddc9cd4aa6759984330d5c8e66aa7702a6223c61540dc6380c37" + sha256: "149441ca6e4f38193b2e004c0ca6376a3d11f51fa5a77552d8bd4d2b0c0912ba" url: "https://pub.dev" source: hosted - version: "2.2.19" + version: "2.2.23" path_provider_foundation: dependency: transitive description: name: path_provider_foundation - sha256: "16eef174aacb07e09c351502740fa6254c165757638eba1e9116b0a781201bbd" + sha256: "6d13aece7b3f5c5a9731eaf553ff9dcbc2eff41087fd2df587fd0fed9a3eb0c4" url: "https://pub.dev" source: hosted - version: "2.4.2" + version: "2.5.1" path_provider_linux: dependency: transitive description: @@ -1235,10 +1235,10 @@ packages: dependency: transitive description: name: pointer_interceptor_ios - sha256: a6906772b3205b42c44614fcea28f818b1e5fdad73a4ca742a7bd49818d9c917 + sha256: "03c5fa5896080963ab4917eeffda8d28c90f22863a496fb5ba13bc10943e40e4" url: "https://pub.dev" source: hosted - version: "0.10.1" + version: "0.10.1+1" pointer_interceptor_platform_interface: dependency: transitive description: @@ -1363,18 +1363,18 @@ packages: dependency: transitive description: name: quick_actions_android - sha256: "612c9d53364c641ddcdeafed83c68fc14efb1bf4f686979d755024fc976fc888" + sha256: "8acaeb18ef926ae1ca6214e51b717ebb592b899f3f97674262d21e010061e5fb" url: "https://pub.dev" source: hosted - version: "1.0.23" + version: "1.0.28" quick_actions_ios: dependency: transitive description: name: quick_actions_ios - sha256: ee2cd54e3bd674eb031ca195b3b9974583638d141493aec1066dee3b2599ed08 + sha256: a2e08ceb01f9d26e1b1826b1c4f5da6b7b6bbf61bcbaacd8e93dfff58b91f996 url: "https://pub.dev" source: hosted - version: "1.2.1" + version: "1.2.3" quick_actions_platform_interface: dependency: transitive description: @@ -1483,10 +1483,10 @@ packages: dependency: transitive description: name: shared_preferences_platform_interface - sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" + sha256: "649dc798a33931919ea356c4305c2d1f81619ea6e92244070b520187b5140ef9" url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2" shelf: dependency: transitive description: @@ -1560,10 +1560,10 @@ packages: dependency: transitive description: name: source_span - sha256: "254ee5351d6cb365c859e20ee823c3bb479bf4a293c22d17a9f1bf144ce86f7c" + sha256: "56a02f1f4cd1a2d96303c0144c93bd6d909eea6bee6bf5a0e0b685edbd4c47ab" url: "https://pub.dev" source: hosted - version: "1.10.1" + version: "1.10.2" sqflite: dependency: transitive description: @@ -1576,10 +1576,10 @@ packages: dependency: transitive description: name: sqflite_android - sha256: "2b3070c5fa881839f8b402ee4a39c1b4d561704d4ebbbcfb808a119bc2a1701b" + sha256: ecd684501ebc2ae9a83536e8b15731642b9570dc8623e0073d227d0ee2bfea88 url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2+2" sqflite_common: dependency: transitive description: @@ -1592,18 +1592,18 @@ packages: dependency: transitive description: name: sqflite_common_ffi - sha256: "9faa2fedc5385ef238ce772589f7718c24cdddd27419b609bb9c6f703ea27988" + sha256: "8d7b8749a516cbf6e9057f9b480b716ad14fc4f3d3873ca6938919cc626d9025" url: "https://pub.dev" source: hosted - version: "2.3.6" + version: "2.3.7+1" sqflite_common_ffi_web: dependency: transitive description: name: sqflite_common_ffi_web - sha256: "33495e9172c958d907c48fd43fbea0b9c0a2ec2e36a548ebd07672fde61b6497" + sha256: "45aeed3b367c06f3daf9ba6cdb4bfda1732673263fc9491e40166d2cb5353731" url: "https://pub.dev" source: hosted - version: "1.0.1+1" + version: "1.0.2" sqflite_darwin: dependency: transitive description: @@ -1688,26 +1688,26 @@ packages: dependency: transitive description: name: test - sha256: "301b213cd241ca982e9ba50266bd3f5bd1ea33f1455554c5abb85d1be0e2d87e" + sha256: "65e29d831719be0591f7b3b1a32a3cda258ec98c58c7b25f7b84241bc31215bb" url: "https://pub.dev" source: hosted - version: "1.25.15" + version: "1.26.2" test_api: dependency: transitive description: name: test_api - sha256: fb31f383e2ee25fbbfe06b40fe21e1e458d14080e3c67e7ba0acfde4df4e0bbd + sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00" url: "https://pub.dev" source: hosted - version: "0.7.4" + version: "0.7.6" test_core: dependency: transitive description: name: test_core - sha256: "84d17c3486c8dfdbe5e12a50c8ae176d15e2a771b96909a9442b40173649ccaa" + sha256: "80bf5a02b60af04b09e14f6fe68b921aad119493e26e490deaca5993fef1b05a" url: "https://pub.dev" source: hosted - version: "0.6.8" + version: "0.6.11" timezone: dependency: transitive description: @@ -1784,18 +1784,18 @@ packages: dependency: transitive description: name: url_launcher_android - sha256: "81777b08c498a292d93ff2feead633174c386291e35612f8da438d6e92c4447e" + sha256: "3bb000251e55d4a209aa0e2e563309dc9bb2befea2295fd0cec1f51760aac572" url: "https://pub.dev" source: hosted - version: "6.3.20" + version: "6.3.29" url_launcher_ios: dependency: transitive description: name: url_launcher_ios - sha256: d80b3f567a617cb923546034cc94bfe44eb15f989fe670b37f26abdb9d939cb7 + sha256: cfde38aa257dae62ffe79c87fab20165dfdf6988c1d31b58ebf59b9106062aad url: "https://pub.dev" source: hosted - version: "6.3.4" + version: "6.3.6" url_launcher_linux: dependency: transitive description: @@ -1808,10 +1808,10 @@ packages: dependency: transitive description: name: url_launcher_macos - sha256: c043a77d6600ac9c38300567f33ef12b0ef4f4783a2c1f00231d2b1941fea13f + sha256: "368adf46f71ad3c21b8f06614adb38346f193f3a59ba8fe9a2fd74133070ba18" url: "https://pub.dev" source: hosted - version: "3.2.3" + version: "3.2.5" url_launcher_platform_interface: dependency: transitive description: @@ -1848,10 +1848,10 @@ packages: dependency: transitive description: name: vector_graphics - sha256: a4f059dc26fc8295b5921376600a194c4ec7d55e72f2fe4c7d2831e103d461e6 + sha256: "7076216a10d5c390315fbe536a30f1254c341e7543e6c4c8a815e591307772b1" url: "https://pub.dev" source: hosted - version: "1.1.19" + version: "1.1.20" vector_graphics_codec: dependency: transitive description: @@ -1864,18 +1864,18 @@ packages: dependency: transitive description: name: vector_graphics_compiler - sha256: d354a7ec6931e6047785f4db12a1f61ec3d43b207fc0790f863818543f8ff0dc + sha256: "5a88dd14c0954a5398af544651c7fb51b457a2a556949bfb25369b210ef73a74" url: "https://pub.dev" source: hosted - version: "1.1.19" + version: "1.2.0" vector_math: dependency: transitive description: name: vector_math - sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.2.0" version: dependency: transitive description: @@ -1888,10 +1888,10 @@ packages: dependency: transitive description: name: vm_service - sha256: ddfa8d30d89985b96407efce8acbdd124701f96741f2d981ca860662f1c0dc02 + sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60" url: "https://pub.dev" source: hosted - version: "15.0.0" + version: "15.0.2" wakelock_plus: dependency: transitive description: @@ -1960,26 +1960,26 @@ packages: dependency: transitive description: name: webview_flutter_android - sha256: "9a25f6b4313978ba1c2cda03a242eea17848174912cfb4d2d8ee84a556f248e3" + sha256: "0f7fcd2c86bf36bdcf94881f7941ce0cbc4f8d104b9fdcd5fcbef90e2199db76" url: "https://pub.dev" source: hosted - version: "4.10.1" + version: "4.10.15" webview_flutter_platform_interface: dependency: transitive description: name: webview_flutter_platform_interface - sha256: "63d26ee3aca7256a83ccb576a50272edd7cfc80573a4305caa98985feb493ee0" + sha256: "1221c1b12f5278791042f2ec2841743784cf25c5a644e23d6680e5d718824f04" url: "https://pub.dev" source: hosted - version: "2.14.0" + version: "2.15.1" webview_flutter_wkwebview: dependency: transitive description: name: webview_flutter_wkwebview - sha256: fb46db8216131a3e55bcf44040ca808423539bc6732e7ed34fb6d8044e3d512f + sha256: d7219cfabc6f5fc2032e0fa980ec36d71f308a35a823395af1abc34d9a2ede83 url: "https://pub.dev" source: hosted - version: "3.23.0" + version: "3.24.2" win32: dependency: transitive description: @@ -2045,5 +2045,5 @@ packages: source: hosted version: "2.2.4" sdks: - dart: ">=3.8.1 <4.0.0" - flutter: ">=3.32.8" + dart: ">=3.9.0 <4.0.0" + flutter: ">=3.35.0 <4.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index 13fece3518c..0ca0755351b 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -2,8 +2,8 @@ name: neon_workspace publish_to: none environment: - sdk: ^3.5.0 - flutter: ^3.27.0 + sdk: ^3.9.0 + flutter: ^3.35.0 workspace: - packages/cookie_store From efd17aef78efa709a2c700db73e79601fb754c44 Mon Sep 17 00:00:00 2001 From: Nikolas Rimikis Date: Sat, 28 Mar 2026 16:08:48 +0100 Subject: [PATCH 2/5] chore(deps): update dependency flutter to v3.38.10 Signed-off-by: Nikolas Rimikis --- .fvmrc | 2 +- pubspec.lock | 100 +++++++++++++++++++++++++++++++++------------------ pubspec.yaml | 4 +-- 3 files changed, 69 insertions(+), 37 deletions(-) diff --git a/.fvmrc b/.fvmrc index 34cd984e1f9..09d80a7b04e 100644 --- a/.fvmrc +++ b/.fvmrc @@ -1,4 +1,4 @@ { - "flutter": "3.35.7", + "flutter": "3.38.10", "updateVscodeSettings": false } \ No newline at end of file diff --git a/pubspec.lock b/pubspec.lock index 440e843bf2c..09a8e5afe57 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -289,6 +289,14 @@ packages: url: "https://pub.dev" source: hosted version: "1.1.2" + code_assets: + dependency: transitive + description: + name: code_assets + sha256: "83ccdaa064c980b5596c35dd64a8d3ecc68620174ab9b90b6343b753aa721687" + url: "https://pub.dev" + source: hosted + version: "1.0.0" code_builder: dependency: transitive description: @@ -421,10 +429,10 @@ packages: dependency: transitive description: name: dev_build - sha256: "1d9aa167c05cbe4be9fbaf863c76dcee9bec302fb861270672beb6d6be0bc8f4" + sha256: "1a8151608658f63b3930f9a9d04a5da741af2ec689ae9520d4fe1dfed3e5f210" url: "https://pub.dev" source: hosted - version: "1.1.3+1" + version: "1.1.5" diff_match_patch: dependency: transitive description: @@ -758,6 +766,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.3.2" + hooks: + dependency: transitive + description: + name: hooks + sha256: e79ed1e8e1929bc6ecb6ec85f0cb519c887aa5b423705ded0d0f2d9226def388 + url: "https://pub.dev" + source: hosted + version: "1.0.2" hotreloader: dependency: transitive description: @@ -843,10 +859,10 @@ packages: dependency: transitive description: name: image_picker_ios - sha256: "956c16a42c0c708f914021666ffcd8265dde36e673c9fa68c81f7d085d9774ad" + sha256: b9c4a438a9ff4f60808c9cf0039b93a42bb6c2211ef6ebb647394b2b3fa84588 url: "https://pub.dev" source: hosted - version: "0.8.13+3" + version: "0.8.13+6" image_picker_linux: dependency: transitive description: @@ -1011,10 +1027,10 @@ packages: dependency: transitive description: name: meta - sha256: e3641ec5d63ebf0d9b41bd43201a66e3fc79a65db5f61fc181f04cd27aab950c + sha256: "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394" url: "https://pub.dev" source: hosted - version: "1.16.0" + version: "1.17.0" mime: dependency: transitive description: @@ -1039,6 +1055,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.4" + native_toolchain_c: + dependency: transitive + description: + name: native_toolchain_c + sha256: "6ba77bb18063eebe9de401f5e6437e95e1438af0a87a3a39084fbd37c90df572" + url: "https://pub.dev" + source: hosted + version: "0.17.6" nested: dependency: transitive description: @@ -1055,6 +1079,14 @@ packages: url: "https://pub.dev" source: hosted version: "2.0.2" + objective_c: + dependency: transitive + description: + name: objective_c + sha256: "100a1c87616ab6ed41ec263b083c0ef3261ee6cd1dc3b0f35f8ddfa4f996fe52" + url: "https://pub.dev" + source: hosted + version: "9.3.0" open_filex: dependency: transitive description: @@ -1123,10 +1155,10 @@ packages: dependency: transitive description: name: path_provider_foundation - sha256: "6d13aece7b3f5c5a9731eaf553ff9dcbc2eff41087fd2df587fd0fed9a3eb0c4" + sha256: "2a376b7d6392d80cd3705782d2caa734ca4727776db0b6ec36ef3f1855197699" url: "https://pub.dev" source: hosted - version: "2.5.1" + version: "2.6.0" path_provider_linux: dependency: transitive description: @@ -1291,10 +1323,10 @@ packages: dependency: transitive description: name: process_run - sha256: "6ec839cdd3e6de4685318e7686cd4abb523c3d3a55af0e8d32a12ae19bc66622" + sha256: "78b1ed8828fb6a98b3a28452ae6d77546b87065c61297f4f79b31064a18afcc3" url: "https://pub.dev" source: hosted - version: "1.2.4" + version: "1.3.1+1" prompts: dependency: transitive description: @@ -1371,10 +1403,10 @@ packages: dependency: transitive description: name: quick_actions_ios - sha256: a2e08ceb01f9d26e1b1826b1c4f5da6b7b6bbf61bcbaacd8e93dfff58b91f996 + sha256: be1496e7ca1debc86d9ea08e56325649fbc5abb2b6930690c97ba0dae59992b1 url: "https://pub.dev" source: hosted - version: "1.2.3" + version: "1.2.4" quick_actions_platform_interface: dependency: transitive description: @@ -1576,10 +1608,10 @@ packages: dependency: transitive description: name: sqflite_android - sha256: ecd684501ebc2ae9a83536e8b15731642b9570dc8623e0073d227d0ee2bfea88 + sha256: "881e28efdcc9950fd8e9bb42713dcf1103e62a2e7168f23c9338d82db13dec40" url: "https://pub.dev" source: hosted - version: "2.4.2+2" + version: "2.4.2+3" sqflite_common: dependency: transitive description: @@ -1592,18 +1624,18 @@ packages: dependency: transitive description: name: sqflite_common_ffi - sha256: "8d7b8749a516cbf6e9057f9b480b716ad14fc4f3d3873ca6938919cc626d9025" + sha256: c59fcdc143839a77581f7a7c4de018e53682408903a0a0800b95ef2dc4033eff url: "https://pub.dev" source: hosted - version: "2.3.7+1" + version: "2.4.0+2" sqflite_common_ffi_web: dependency: transitive description: name: sqflite_common_ffi_web - sha256: "45aeed3b367c06f3daf9ba6cdb4bfda1732673263fc9491e40166d2cb5353731" + sha256: "79338d0b69521d70cea10f841209ac87ce617921aaf7d33e7380682c83da1f06" url: "https://pub.dev" source: hosted - version: "1.0.2" + version: "1.1.1" sqflite_darwin: dependency: transitive description: @@ -1624,10 +1656,10 @@ packages: dependency: transitive description: name: sqlite3 - sha256: "3145bd74dcdb4fd6f5c6dda4d4e4490a8087d7f286a14dee5d37087290f0f8a2" + sha256: caa693ad15a587a2b4fde093b728131a1827903872171089dedb16f7665d3a91 url: "https://pub.dev" source: hosted - version: "2.9.4" + version: "3.2.0" stack_trace: dependency: transitive description: @@ -1688,26 +1720,26 @@ packages: dependency: transitive description: name: test - sha256: "65e29d831719be0591f7b3b1a32a3cda258ec98c58c7b25f7b84241bc31215bb" + sha256: "75906bf273541b676716d1ca7627a17e4c4070a3a16272b7a3dc7da3b9f3f6b7" url: "https://pub.dev" source: hosted - version: "1.26.2" + version: "1.26.3" test_api: dependency: transitive description: name: test_api - sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00" + sha256: ab2726c1a94d3176a45960b6234466ec367179b87dd74f1611adb1f3b5fb9d55 url: "https://pub.dev" source: hosted - version: "0.7.6" + version: "0.7.7" test_core: dependency: transitive description: name: test_core - sha256: "80bf5a02b60af04b09e14f6fe68b921aad119493e26e490deaca5993fef1b05a" + sha256: "0cc24b5ff94b38d2ae73e1eb43cc302b77964fbf67abad1e296025b78deb53d0" url: "https://pub.dev" source: hosted - version: "0.6.11" + version: "0.6.12" timezone: dependency: transitive description: @@ -1792,10 +1824,10 @@ packages: dependency: transitive description: name: url_launcher_ios - sha256: cfde38aa257dae62ffe79c87fab20165dfdf6988c1d31b58ebf59b9106062aad + sha256: "580fe5dfb51671ae38191d316e027f6b76272b026370708c2d898799750a02b0" url: "https://pub.dev" source: hosted - version: "6.3.6" + version: "6.4.1" url_launcher_linux: dependency: transitive description: @@ -1824,10 +1856,10 @@ packages: dependency: transitive description: name: url_launcher_web - sha256: "4bd2b7b4dc4d4d0b94e5babfffbca8eac1a126c7f3d6ecbc1a11013faa3abba2" + sha256: d0412fcf4c6b31ecfdb7762359b7206ffba3bbffd396c6d9f9c4616ece476c1f url: "https://pub.dev" source: hosted - version: "2.4.1" + version: "2.4.2" url_launcher_windows: dependency: transitive description: @@ -1904,10 +1936,10 @@ packages: dependency: transitive description: name: wakelock_plus_platform_interface - sha256: "036deb14cd62f558ca3b73006d52ce049fabcdcb2eddfe0bf0fe4e8a943b5cf2" + sha256: "24b84143787220a403491c2e5de0877fbbb87baf3f0b18a2a988973863db4b03" url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" watcher: dependency: transitive description: @@ -2045,5 +2077,5 @@ packages: source: hosted version: "2.2.4" sdks: - dart: ">=3.9.0 <4.0.0" - flutter: ">=3.35.0 <4.0.0" + dart: ">=3.10.3 <4.0.0" + flutter: ">=3.38.4 <4.0.0" diff --git a/pubspec.yaml b/pubspec.yaml index 0ca0755351b..cf01734a967 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -2,8 +2,8 @@ name: neon_workspace publish_to: none environment: - sdk: ^3.9.0 - flutter: ^3.35.0 + sdk: ^3.10.0 + flutter: ^3.38.0 workspace: - packages/cookie_store From 71139e169f21489d1b77ae1736a17413c03f6f60 Mon Sep 17 00:00:00 2001 From: provokateurin Date: Sat, 6 Sep 2025 09:54:54 +0200 Subject: [PATCH 3/5] ci: use fvm in ci Signed-off-by: Nikolas Rimikis --- .github/workflows/dart.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/dart.yml b/.github/workflows/dart.yml index 34142fc6df2..2b8048ed392 100644 --- a/.github/workflows/dart.yml +++ b/.github/workflows/dart.yml @@ -50,12 +50,12 @@ jobs: git apply .github/workflows/dependency_overrides.patch fvm dart pub downgrade - name: Check formatting - run: melos run format:check + run: fvm exec melos run format:check - name: Lint code - run: melos run analyze + run: fvm exec melos run analyze - name: Run tests run: | - mapfile -t packages < <(melos list --parsable --diff=${{ github.event.pull_request.head.sha }}~${{ github.event.pull_request.commits }}..${{ github.event.pull_request.head.sha }} --include-dependents | xargs -r -n1 basename) + mapfile -t packages < <(fvm exec melos list --parsable --diff=${{ github.event.pull_request.head.sha }}~${{ github.event.pull_request.commits }}..${{ github.event.pull_request.head.sha }} --include-dependents | xargs -r -n1 basename) packages_glob="$(printf ",%s" "${packages[@]}")" packages_glob="${packages_glob:1}" if [ -n "$packages_glob" ]; then @@ -65,10 +65,10 @@ jobs: fi ./tool/build-dev-container.sh fi - MELOS_PACKAGES="$packages_glob" melos test + MELOS_PACKAGES="$packages_glob" fvm exec melos test else ./tool/build-dev-container.sh - melos test + fvm exec melos test fi - name: Setup Codecov @@ -89,6 +89,6 @@ jobs: if: ${{ matrix.dependencies == 'current' }} run: | export PATH="$PATH:/tmp/bin" - melos exec --file-exists="coverage/lcov.info" --concurrency=1 -- " + fvm exec melos exec --file-exists="coverage/lcov.info" --concurrency=1 -- " codecov --verbose upload-process --fail-on-error -F MELOS_PACKAGE_NAME -f MELOS_PACKAGE_PATH/coverage/lcov.info -t ${{ secrets.CODECOV_TOKEN }} " From c035147450204605c3b71601709a1c456aca1505 Mon Sep 17 00:00:00 2001 From: Nikolas Rimikis Date: Sat, 28 Mar 2026 16:50:51 +0100 Subject: [PATCH 4/5] chore: upgrade to melos 7.0 Signed-off-by: Nikolas Rimikis --- melos.yaml | 39 -------------------------------- packages/neon_lints/pubspec.yaml | 2 +- pubspec.lock | 16 ++++--------- pubspec.yaml | 38 ++++++++++++++++++++++++++++++- 4 files changed, 42 insertions(+), 53 deletions(-) delete mode 100644 melos.yaml diff --git a/melos.yaml b/melos.yaml deleted file mode 100644 index dcbdb27148c..00000000000 --- a/melos.yaml +++ /dev/null @@ -1,39 +0,0 @@ -name: neon -repository: https://github.com/nextcloud/neon - -sdkPath: .fvm/flutter_sdk - -packages: - - packages/* - - packages/*/packages/* - - packages/**/example - -ide: - intellij: - enabled: false - -command: - version: - hooks: - # Needed until https://github.com/invertase/melos/issues/591 is supported - post: | - git commit --amend --signoff --no-edit - -scripts: - format: dart format --line-length 120 . - format:check: dart format --output=none --set-exit-if-changed --line-length 120 . - analyze: > - dart analyze --fatal-infos . && - rm -rf packages/neon_framework/example/linux/flutter/ephemeral/ && - dart run custom_lint --fatal-infos . - test: > - melos run test:dart && - melos run test:flutter - test:dart: > - melos exec --no-flutter --concurrency=1 --fail-fast --dir-exists=test -- " - dart test --concurrency=$(nproc --all) --coverage=coverage && - dart pub global run coverage:format_coverage --packages=MELOS_ROOT_PATH/.dart_tool/package_config.json --report-on=lib --lcov -o ./coverage/lcov.info -i ./coverage - " - test:flutter: melos exec --flutter --concurrency=1 --fail-fast --dir-exists=test -- flutter test --concurrency=$(nproc --all) --coverage - generate:neon:build_runner: melos exec --scope="neon*" --file-exists="build.yaml" -- dart run build_runner build --delete-conflicting-outputs && melos run format - generate:neon:l10n: melos exec --flutter --dir-exists="lib/l10n" flutter gen-l10n && melos run format diff --git a/packages/neon_lints/pubspec.yaml b/packages/neon_lints/pubspec.yaml index d309095c0b1..405364910e6 100644 --- a/packages/neon_lints/pubspec.yaml +++ b/packages/neon_lints/pubspec.yaml @@ -8,7 +8,7 @@ environment: sdk: ^3.5.0 dependencies: - analyzer: ^7.3.0 + analyzer: ^7.6.0 analyzer_plugin: ^0.13.0 custom_lint_builder: ^0.8.0 diff --git a/pubspec.lock b/pubspec.lock index 09a8e5afe57..2a40a28c937 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -1019,10 +1019,10 @@ packages: dependency: "direct dev" description: name: melos - sha256: f9a6fc4f4842b7edfca2e00ab3b5b06928584f24bdc3d776ab0b30be7d599450 + sha256: cc4e1b4313e96579ab5031a66f2ac46d2e96709e4714496bbc3a2305789d7ecc url: "https://pub.dev" source: hosted - version: "6.0.0" + version: "7.0.0" meta: dependency: transitive description: @@ -1355,18 +1355,10 @@ packages: dependency: transitive description: name: pub_updater - sha256: "54e8dc865349059ebe7f163d6acce7c89eb958b8047e6d6e80ce93b13d7c9e60" + sha256: "739a0161d73a6974c0675b864fb0cf5147305f7b077b7f03a58fa7a9ab3e7e7d" url: "https://pub.dev" source: hosted - version: "0.4.0" - pubspec: - dependency: transitive - description: - name: pubspec - sha256: f534a50a2b4d48dc3bc0ec147c8bd7c304280fff23b153f3f11803c4d49d927e - url: "https://pub.dev" - source: hosted - version: "2.3.0" + version: "0.5.0" pubspec_parse: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index cf01734a967..78be0f054e3 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -38,4 +38,40 @@ dependencies: sdk: flutter dev_dependencies: - melos: 6.0.0 + melos: 7.0.0 + +melos: + name: neon + repository: https://github.com/nextcloud/neon + + sdkPath: .fvm/flutter_sdk + + ide: + intellij: + enabled: false + + command: + version: + hooks: + # Needed until https://github.com/invertase/melos/issues/591 is supported + post: | + git commit --amend --signoff --no-edit + + scripts: + format: dart format --line-length 120 . + format:check: dart format --output=none --set-exit-if-changed --line-length 120 . + analyze: > + dart analyze --fatal-infos . && + rm -rf packages/neon_framework/example/linux/flutter/ephemeral/ && + dart run custom_lint --fatal-infos . + test: > + melos run test:dart && + melos run test:flutter + test:dart: > + melos exec --no-flutter --concurrency=1 --fail-fast --dir-exists=test -- " + dart test --concurrency=$(nproc --all) --coverage=coverage && + dart pub global run coverage:format_coverage --packages=MELOS_ROOT_PATH/.dart_tool/package_config.json --report-on=lib --lcov -o ./coverage/lcov.info -i ./coverage + " + test:flutter: melos exec --flutter --concurrency=1 --fail-fast --dir-exists=test -- flutter test --concurrency=$(nproc --all) --coverage + generate:neon:build_runner: melos exec --scope="neon*" --file-exists="build.yaml" -- dart run build_runner build --delete-conflicting-outputs && melos run format + generate:neon:l10n: melos exec --flutter --dir-exists="lib/l10n" flutter gen-l10n && melos run format From 47bba2d9ca5dc115f2a9dac60c8d185da64ce48b Mon Sep 17 00:00:00 2001 From: Nikolas Rimikis Date: Sat, 28 Mar 2026 17:20:28 +0100 Subject: [PATCH 5/5] wip: fix lints Signed-off-by: Nikolas Rimikis --- packages/neon_framework/lib/src/utils/user_status_clear_at.dart | 1 + .../packages/neon_rich_text/lib/src/rich_text.dart | 1 + .../neon_framework/packages/talk_app/lib/src/blocs/room.dart | 1 + packages/neon_lints/lib/src/base.yaml | 1 + 4 files changed, 4 insertions(+) diff --git a/packages/neon_framework/lib/src/utils/user_status_clear_at.dart b/packages/neon_framework/lib/src/utils/user_status_clear_at.dart index 17315bd654f..4c0da8c2aec 100644 --- a/packages/neon_framework/lib/src/utils/user_status_clear_at.dart +++ b/packages/neon_framework/lib/src/utils/user_status_clear_at.dart @@ -27,6 +27,7 @@ extension ClearAt on user_status.ClearAt { } tz.TZDateTime? toDateTime([tz.TZDateTime? base]) { + // ignore: parameter_assignments base = base?.toUtc() ?? tz.TZDateTime.now(tz.UTC); switch (type) { diff --git a/packages/neon_framework/packages/neon_rich_text/lib/src/rich_text.dart b/packages/neon_framework/packages/neon_rich_text/lib/src/rich_text.dart index 0877a619be7..d80bf5bcbff 100644 --- a/packages/neon_framework/packages/neon_rich_text/lib/src/rich_text.dart +++ b/packages/neon_framework/packages/neon_rich_text/lib/src/rich_text.dart @@ -26,6 +26,7 @@ TextSpan buildRichTextSpan({ ); if (isPreview) { + // ignore: parameter_assignments text = text.replaceAll('\n', ' '); } diff --git a/packages/neon_framework/packages/talk_app/lib/src/blocs/room.dart b/packages/neon_framework/packages/talk_app/lib/src/blocs/room.dart index 7f6883a209c..9c7dcfe0c12 100644 --- a/packages/neon_framework/packages/talk_app/lib/src/blocs/room.dart +++ b/packages/neon_framework/packages/talk_app/lib/src/blocs/room.dart @@ -510,6 +510,7 @@ class _TalkRoomBloc extends InteractiveBloc implements TalkRoomBloc { data: data.rebuild((b) { b.map((m) { if (m.id == messageId) { + // ignore: parameter_assignments m = m.rebuild(updates); } diff --git a/packages/neon_lints/lib/src/base.yaml b/packages/neon_lints/lib/src/base.yaml index 721f7707c11..782eb1bcea4 100644 --- a/packages/neon_lints/lib/src/base.yaml +++ b/packages/neon_lints/lib/src/base.yaml @@ -4,6 +4,7 @@ analyzer: strict-inference: true strict-raw-types: true errors: + experimental_member_use: ignore flutter_style_todos: ignore todo: ignore linter: