diff --git a/.github/workflows/continuous-delivery.yaml b/.github/workflows/continuous-delivery.yaml index efa5006..aaffcda 100644 --- a/.github/workflows/continuous-delivery.yaml +++ b/.github/workflows/continuous-delivery.yaml @@ -164,7 +164,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.7.12' + flutter-version: '3.13.7' channel: 'stable' cache: true cache-key: 'flutter-:os:-:channel:-:version:-:arch:-:hash:' @@ -207,7 +207,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.7.12' + flutter-version: '3.13.7' channel: 'stable' cache: true cache-key: 'flutter-:os:-:channel:-:version:-:arch:-:hash:' @@ -266,7 +266,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.7.12' + flutter-version: '3.13.7' channel: 'stable' cache: true cache-key: 'flutter-:os:-:channel:-:version:-:arch:-:hash:' @@ -324,7 +324,7 @@ jobs: - name: Setup Flutter uses: subosito/flutter-action@v2 with: - flutter-version: '3.7.12' + flutter-version: '3.13.7' channel: 'stable' cache: true cache-key: 'flutter-:os:-:channel:-:version:-:arch:-:hash:' diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e8f300f..1d3a789 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -57,10 +57,10 @@ check your installed version: ```sh $ flutter --version -Flutter 3.7.12 • channel stable • https://github.com/flutter/flutter.git -Framework • revision 4d9e56e694 (8 weeks ago) • 2023-04-17 21:47:46 -0400 -Engine • revision 1a65d409c7 -Tools • Dart 2.19.6 • DevTools 2.20.1 +Flutter 3.13.7 • channel stable • https://github.com/flutter/flutter.git +Framework • revision 2f708eb839 (4 days ago) • 2023-10-09 09:58:08 -0500 +Engine • revision a794cf2681 +Tools • Dart 3.1.3 • DevTools 2.25.0 $ deno --version diff --git a/app/android/build.gradle b/app/android/build.gradle index 58a8c74..713d7f6 100644 --- a/app/android/build.gradle +++ b/app/android/build.gradle @@ -26,6 +26,6 @@ subprojects { project.evaluationDependsOn(':app') } -task clean(type: Delete) { +tasks.register("clean", Delete) { delete rootProject.buildDir } diff --git a/app/ios/Podfile b/app/ios/Podfile index 3eb1916..f63b51e 100644 --- a/app/ios/Podfile +++ b/app/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -# platform :ios, '11.0' +platform :ios, '11.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/app/ios/Podfile.lock b/app/ios/Podfile.lock index 2bfb63f..8096665 100644 --- a/app/ios/Podfile.lock +++ b/app/ios/Podfile.lock @@ -18,18 +18,18 @@ PODS: - path_provider_foundation (0.0.1): - Flutter - FlutterMacOS - - purchases_flutter (5.7.0): + - purchases_flutter (6.0.0): - Flutter - - PurchasesHybridCommon (= 6.2.0) - - PurchasesHybridCommon (6.2.0): - - RevenueCat (= 4.26.0) - - RevenueCat (4.26.0) + - PurchasesHybridCommon (= 7.0.0) + - PurchasesHybridCommon (7.0.0): + - RevenueCat (= 4.27.0) + - RevenueCat (4.27.0) - shared_preferences_foundation (0.0.1): - Flutter - FlutterMacOS - sign_in_with_apple (0.0.1): - Flutter - - sqflite (0.0.2): + - sqflite (0.0.3): - Flutter - FMDB (>= 2.7.5) - url_launcher_ios (0.0.1): @@ -45,9 +45,9 @@ DEPENDENCIES: - flutter_native_splash (from `.symlinks/plugins/flutter_native_splash/ios`) - just_audio (from `.symlinks/plugins/just_audio/ios`) - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) - - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/ios`) + - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) - purchases_flutter (from `.symlinks/plugins/purchases_flutter/ios`) - - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/ios`) + - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`) - sign_in_with_apple (from `.symlinks/plugins/sign_in_with_apple/ios`) - sqflite (from `.symlinks/plugins/sqflite/ios`) - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) @@ -75,11 +75,11 @@ EXTERNAL SOURCES: package_info_plus: :path: ".symlinks/plugins/package_info_plus/ios" path_provider_foundation: - :path: ".symlinks/plugins/path_provider_foundation/ios" + :path: ".symlinks/plugins/path_provider_foundation/darwin" purchases_flutter: :path: ".symlinks/plugins/purchases_flutter/ios" shared_preferences_foundation: - :path: ".symlinks/plugins/shared_preferences_foundation/ios" + :path: ".symlinks/plugins/shared_preferences_foundation/darwin" sign_in_with_apple: :path: ".symlinks/plugins/sign_in_with_apple/ios" sqflite: @@ -98,16 +98,16 @@ SPEC CHECKSUMS: FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa package_info_plus: fd030dabf36271f146f1f3beacd48f564b0f17f7 - path_provider_foundation: c68054786f1b4f3343858c1e1d0caaded73f0be9 - purchases_flutter: 9b875ca9540663d7cdaad9e574a65bd98a1e014c - PurchasesHybridCommon: 8ac2a833eb1a27c4d0d8a352418f1eaa5f4fe68d - RevenueCat: 1f3a5a1c3899cb27ef9279d77a01a807d489a240 - shared_preferences_foundation: 986fc17f3d3251412d18b0265f9c64113a8c2472 + path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 + purchases_flutter: 549ccfbbaf5e7cd195043c714b69a35e278c00f1 + PurchasesHybridCommon: af3b2413f9cb999bc1fdca44770bdaf39dfb89fa + RevenueCat: 84fbe2eb9bbf63e1abf346ccd3ff9ee45d633e3b + shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126 sign_in_with_apple: f3bf75217ea4c2c8b91823f225d70230119b8440 - sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 + sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4 webview_flutter_wkwebview: 2e2d318f21a5e036e2c3f26171342e95908bd60a -PODFILE CHECKSUM: 92152382e3e2d8bbf76cfce953216c7c829d94ce +PODFILE CHECKSUM: ec83c31511fbc978a9918c6fda235238118483f5 COCOAPODS: 1.13.0 diff --git a/app/ios/Runner.xcodeproj/project.pbxproj b/app/ios/Runner.xcodeproj/project.pbxproj index 83cd33d..5a0f966 100644 --- a/app/ios/Runner.xcodeproj/project.pbxproj +++ b/app/ios/Runner.xcodeproj/project.pbxproj @@ -161,7 +161,7 @@ 97C146E61CF9000F007C117D /* Project object */ = { isa = PBXProject; attributes = { - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1430; ORGANIZATIONNAME = ""; TargetAttributes = { 97C146ED1CF9000F007C117D = { @@ -232,6 +232,7 @@ files = ( ); inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", ); name = "Thin Binary"; outputPaths = ( diff --git a/app/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/app/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index c87d15a..a6b826d 100644 --- a/app/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/app/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ (context, listen: false) .deleteColumn(widget.column.id); } catch (_) { + if (!mounted) return; ScaffoldMessenger.of(context).showSnackBar( const SnackBar( duration: Duration(seconds: 10), diff --git a/app/lib/widgets/item/details/item_details_mastodon.dart b/app/lib/widgets/item/details/item_details_mastodon.dart index 4005756..5b1a4bc 100644 --- a/app/lib/widgets/item/details/item_details_mastodon.dart +++ b/app/lib/widgets/item/details/item_details_mastodon.dart @@ -41,7 +41,7 @@ class ItemDetailsMastodon extends StatelessWidget { .map((item) => item as String) .toList() : null, - ) + ), ], ); } diff --git a/app/lib/widgets/item/details/utils/item_media_gallery.dart b/app/lib/widgets/item/details/utils/item_media_gallery.dart index f90ea50..4e67432 100644 --- a/app/lib/widgets/item/details/utils/item_media_gallery.dart +++ b/app/lib/widgets/item/details/utils/item_media_gallery.dart @@ -81,7 +81,7 @@ class ItemMediaGallery extends StatelessWidget { ), Expanded( child: _buildSingleMedia(context, 1), - ) + ), ], ), ), @@ -114,7 +114,7 @@ class ItemMediaGallery extends StatelessWidget { ), Expanded( child: _buildSingleMedia(context, 2), - ) + ), ], ), ), diff --git a/app/lib/widgets/item/preview/utils/item_media_gallery.dart b/app/lib/widgets/item/preview/utils/item_media_gallery.dart index 5d21b1b..cc43177 100644 --- a/app/lib/widgets/item/preview/utils/item_media_gallery.dart +++ b/app/lib/widgets/item/preview/utils/item_media_gallery.dart @@ -63,7 +63,7 @@ class ItemMediaGallery extends StatelessWidget { ), Expanded( child: _buildSingleMedia(context, itemMedias![1]), - ) + ), ], ), ), @@ -96,7 +96,7 @@ class ItemMediaGallery extends StatelessWidget { ), Expanded( child: _buildSingleMedia(context, itemMedias![2]), - ) + ), ], ), ), diff --git a/app/lib/widgets/settings/premium/settings_premium.dart b/app/lib/widgets/settings/premium/settings_premium.dart index a67a0f1..1c41edf 100644 --- a/app/lib/widgets/settings/premium/settings_premium.dart +++ b/app/lib/widgets/settings/premium/settings_premium.dart @@ -167,15 +167,15 @@ class SettingsPremium extends StatelessWidget { shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular(12), ), - child: Column( + child: const Column( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ Padding( - padding: const EdgeInsets.all( + padding: EdgeInsets.all( Constants.spacingMiddle, ), child: Column( - children: const [ + children: [ Logo(size: 64), SizedBox( height: Constants.spacingSmall, diff --git a/app/lib/widgets/settings/profile/settings_profile.dart b/app/lib/widgets/settings/profile/settings_profile.dart index 791abd2..d54304d 100644 --- a/app/lib/widgets/settings/profile/settings_profile.dart +++ b/app/lib/widgets/settings/profile/settings_profile.dart @@ -25,9 +25,9 @@ class _SettingsProfileState extends State { Widget build(BuildContext context) { Provider.of(context, listen: true); - return Column( + return const Column( crossAxisAlignment: CrossAxisAlignment.start, - children: const [ + children: [ Text( 'Profile', style: TextStyle( diff --git a/app/lib/widgets/settings/profile/settings_profile_open_web_app.dart b/app/lib/widgets/settings/profile/settings_profile_open_web_app.dart index 9bcf69e..47aed90 100644 --- a/app/lib/widgets/settings/profile/settings_profile_open_web_app.dart +++ b/app/lib/widgets/settings/profile/settings_profile_open_web_app.dart @@ -48,6 +48,7 @@ class _SettingsProfileOpenWebAppState extends State { setState(() { _isLoading = false; }); + if (!mounted) return; ScaffoldMessenger.of(context).showSnackBar( const SnackBar( duration: Duration(seconds: 10), diff --git a/app/lib/widgets/settings/settings.dart b/app/lib/widgets/settings/settings.dart index 9ebee56..d3b7768 100644 --- a/app/lib/widgets/settings/settings.dart +++ b/app/lib/widgets/settings/settings.dart @@ -54,10 +54,10 @@ class _SettingsState extends State { padding: const EdgeInsets.all( Constants.spacingMiddle, ), - child: Column( + child: const Column( mainAxisAlignment: MainAxisAlignment.start, crossAxisAlignment: CrossAxisAlignment.start, - children: const [ + children: [ SettingsPremium(), /// Display all decks. Here the user can switch the active diff --git a/app/lib/widgets/source/source_list_item.dart b/app/lib/widgets/source/source_list_item.dart index cfdf569..d3fdb1b 100644 --- a/app/lib/widgets/source/source_list_item.dart +++ b/app/lib/widgets/source/source_list_item.dart @@ -87,6 +87,7 @@ class _SourceListItemState extends State { AppRepository app = Provider.of(context, listen: false); await app.deleteSource(widget.columnId, widget.source.id); } catch (_) { + if (!mounted) return; ScaffoldMessenger.of(context).showSnackBar( const SnackBar( duration: Duration(seconds: 10), diff --git a/app/macos/Podfile b/app/macos/Podfile index 4e4cc6f..f9ebb8d 100644 --- a/app/macos/Podfile +++ b/app/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '11.00' +platform :osx, '11.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/app/macos/Podfile.lock b/app/macos/Podfile.lock index dc6149b..8f8299b 100644 --- a/app/macos/Podfile.lock +++ b/app/macos/Podfile.lock @@ -16,12 +16,12 @@ PODS: - path_provider_foundation (0.0.1): - Flutter - FlutterMacOS - - purchases_flutter (5.7.0): + - purchases_flutter (6.0.0): - FlutterMacOS - - PurchasesHybridCommon (= 6.2.0) - - PurchasesHybridCommon (6.2.0): - - RevenueCat (= 4.26.0) - - RevenueCat (4.26.0) + - PurchasesHybridCommon (= 7.0.0) + - PurchasesHybridCommon (7.0.0): + - RevenueCat (= 4.27.0) + - RevenueCat (4.27.0) - screen_retriever (0.0.1): - FlutterMacOS - shared_preferences_foundation (0.0.1): @@ -44,10 +44,10 @@ DEPENDENCIES: - FlutterMacOS (from `Flutter/ephemeral`) - just_audio (from `Flutter/ephemeral/.symlinks/plugins/just_audio/macos`) - package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`) - - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/macos`) + - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`) - purchases_flutter (from `Flutter/ephemeral/.symlinks/plugins/purchases_flutter/macos`) - screen_retriever (from `Flutter/ephemeral/.symlinks/plugins/screen_retriever/macos`) - - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/macos`) + - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`) - sign_in_with_apple (from `Flutter/ephemeral/.symlinks/plugins/sign_in_with_apple/macos`) - sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/macos`) - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) @@ -73,13 +73,13 @@ EXTERNAL SOURCES: package_info_plus: :path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos path_provider_foundation: - :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/macos + :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin purchases_flutter: :path: Flutter/ephemeral/.symlinks/plugins/purchases_flutter/macos screen_retriever: :path: Flutter/ephemeral/.symlinks/plugins/screen_retriever/macos shared_preferences_foundation: - :path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/macos + :path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin sign_in_with_apple: :path: Flutter/ephemeral/.symlinks/plugins/sign_in_with_apple/macos sqflite: @@ -97,17 +97,17 @@ SPEC CHECKSUMS: FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a just_audio: 9b67ca7b97c61cfc9784ea23cd8cc55eb226d489 package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce - path_provider_foundation: c68054786f1b4f3343858c1e1d0caaded73f0be9 - purchases_flutter: a3e23d64646625d452ef542c3b6207f97a055c21 - PurchasesHybridCommon: 8ac2a833eb1a27c4d0d8a352418f1eaa5f4fe68d - RevenueCat: 1f3a5a1c3899cb27ef9279d77a01a807d489a240 + path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943 + purchases_flutter: 9aad80bf27960c38fdeafc27ab066cb55615aed5 + PurchasesHybridCommon: af3b2413f9cb999bc1fdca44770bdaf39dfb89fa + RevenueCat: 84fbe2eb9bbf63e1abf346ccd3ff9ee45d633e3b screen_retriever: 59634572a57080243dd1bf715e55b6c54f241a38 - shared_preferences_foundation: 986fc17f3d3251412d18b0265f9c64113a8c2472 + shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126 sign_in_with_apple: a9e97e744e8edc36aefc2723111f652102a7a727 sqflite: a5789cceda41d54d23f31d6de539d65bb14100ea - url_launcher_macos: 5335912b679c073563f29d89d33d10d459f95451 + url_launcher_macos: d2691c7dd33ed713bf3544850a623080ec693d95 window_manager: 3a1844359a6295ab1e47659b1a777e36773cd6e8 -PODFILE CHECKSUM: 086a133fa7149895148dfc1f080138c34e40ddbf +PODFILE CHECKSUM: 8d40c19d3cbdb380d870685c3a564c989f1efa52 COCOAPODS: 1.13.0 diff --git a/app/macos/Runner.xcodeproj/project.pbxproj b/app/macos/Runner.xcodeproj/project.pbxproj index 180ca55..7c47e50 100644 --- a/app/macos/Runner.xcodeproj/project.pbxproj +++ b/app/macos/Runner.xcodeproj/project.pbxproj @@ -208,7 +208,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0920; - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1430; ORGANIZATIONNAME = ""; TargetAttributes = { 33CC10EC2044A3C60003C045 = { diff --git a/app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index a48ca96..af5d43b 100644 --- a/app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/app/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ =2.19.6 <3.0.0" - flutter: ">=3.3.0" + dart: ">=3.1.3 <4.0.0" + flutter: ">=3.13.0" diff --git a/app/pubspec.yaml b/app/pubspec.yaml index 6b45376..f45df41 100644 --- a/app/pubspec.yaml +++ b/app/pubspec.yaml @@ -19,7 +19,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev version: 1.0.0+4 environment: - sdk: '>=2.19.6 <3.0.0' + sdk: '>=3.1.3 <4.0.0' # Dependencies specify other packages that your package needs in order to work. # To automatically upgrade your package dependencies to the latest versions @@ -51,7 +51,7 @@ dependencies: just_audio_mpv: ^0.1.6 package_info_plus: ^4.1.0 provider: ^6.0.4 - purchases_flutter: ^5.7.0 + purchases_flutter: ^6.0.0 rxdart: ^0.27.7 scroll_to_index: ^3.0.1 shared_preferences: ^2.1.0