From 7c696ee6e0c85741b2f448da23662dd734d3d987 Mon Sep 17 00:00:00 2001 From: Levi Date: Fri, 23 Jan 2026 21:28:13 +0800 Subject: [PATCH] feat: upgrade Flutter version to 3.38 (#1256) --- .github/workflows/build.yml | 2 +- .github/workflows/test.yml | 2 +- README.md | 2 +- README_ja-JP.md | 2 +- README_vi-VN.md | 2 +- README_zh-CN.md | 2 +- README_zh-TW.md | 2 +- ui/flutter/android/app/build.gradle | 39 +++++----- .../android/app/src/debug/AndroidManifest.xml | 7 +- .../android/app/src/main/AndroidManifest.xml | 3 +- .../app/src/profile/AndroidManifest.xml | 7 +- ui/flutter/android/build.gradle | 33 +++++---- ui/flutter/android/gradle.properties | 5 +- .../gradle/wrapper/gradle-wrapper.properties | 2 +- ui/flutter/android/settings.gradle | 34 ++++++--- .../lib/api/model/downloader_config.dart | 5 +- .../lib/api/model/downloader_config.g.dart | 5 +- ui/flutter/macos/Podfile | 2 +- ui/flutter/macos/Podfile.lock | 4 +- .../macos/Runner.xcodeproj/project.pbxproj | 6 +- .../xcshareddata/xcschemes/Runner.xcscheme | 1 + ui/flutter/macos/Runner/AppDelegate.swift | 4 + ui/flutter/pubspec.lock | 74 +++++++++---------- ui/flutter/pubspec.yaml | 8 +- 24 files changed, 137 insertions(+), 116 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 78e78746..f8271ff6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -14,7 +14,7 @@ on: env: GO_VERSION: "1.24" - FLUTTER_VERSION: "3.24.5" + FLUTTER_VERSION: "3.38.7" permissions: contents: write diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index f77bd374..0708d526 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -29,7 +29,7 @@ on: env: GO_VERSION: "1.24" - FLUTTER_VERSION: "3.24.5" + FLUTTER_VERSION: "3.38.7" jobs: # lint: diff --git a/README.md b/README.md index 2778bfdc..0c589f65 100644 --- a/README.md +++ b/README.md @@ -202,7 +202,7 @@ This project is divided into two parts, the front end uses `flutter`, the back e ### 🌍 Environment 1. Golang 1.24+ -2. Flutter 3.24+ +2. Flutter 3.38+ ### 📋 Clone diff --git a/README_ja-JP.md b/README_ja-JP.md index 87378c0c..204fe4c3 100644 --- a/README_ja-JP.md +++ b/README_ja-JP.md @@ -183,7 +183,7 @@ Gopeed (正式名 Go Speed) は `Golang` + `Flutter` によって開発された ### 🌍 環境 1. Go 言語 1.24+ -2. Flutter 3.24+ +2. Flutter 3.38+ ### 📋 クローン diff --git a/README_vi-VN.md b/README_vi-VN.md index 6101c82f..26beb0c9 100644 --- a/README_vi-VN.md +++ b/README_vi-VN.md @@ -189,7 +189,7 @@ Dự án này được chia thành hai phần, phần giao diện sử dụng `f ### 🌍 Environment 1. Golang 1.24+ -2. Flutter 3.24+ +2. Flutter 3.38+ ### 📋 Clone diff --git a/README_zh-CN.md b/README_zh-CN.md index f79eb709..2595ecf5 100644 --- a/README_zh-CN.md +++ b/README_zh-CN.md @@ -193,7 +193,7 @@ Gopeed 还提供了浏览器扩展用于接管浏览器下载,支持 Chrome、 ### 🌍 环境要求 1. Golang 1.24+ -2. Flutter 3.24+ +2. Flutter 3.38+ ### 📋 克隆项目 diff --git a/README_zh-TW.md b/README_zh-TW.md index 04170558..9eea45f7 100644 --- a/README_zh-TW.md +++ b/README_zh-TW.md @@ -190,7 +190,7 @@ go install github.com/GopeedLab/gopeed/cmd/gopeed@latest ### 🌍 開發環境 1. Golang 1.24+ -2. Flutter 3.24+ +2. Flutter 3.38+ ### 📋 克隆項目 diff --git a/ui/flutter/android/app/build.gradle b/ui/flutter/android/app/build.gradle index c7e9732d..23ebd8d2 100644 --- a/ui/flutter/android/app/build.gradle +++ b/ui/flutter/android/app/build.gradle @@ -1,3 +1,9 @@ +plugins { + id 'com.android.application' + id 'kotlin-android' + id 'dev.flutter.flutter-gradle-plugin' +} + def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { @@ -6,11 +12,6 @@ if (localPropertiesFile.exists()) { } } -def flutterRoot = localProperties.getProperty('flutter.sdk') -if (flutterRoot == null) { - throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") -} - def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '1' @@ -21,21 +22,18 @@ if (flutterVersionName == null) { flutterVersionName = '1.0' } -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' -apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" - android { - compileSdkVersion 34 + namespace 'com.gopeed.gopeed' + compileSdk 35 ndkVersion flutter.ndkVersion compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 + sourceCompatibility JavaVersion.VERSION_17 + targetCompatibility JavaVersion.VERSION_17 } kotlinOptions { - jvmTarget = '1.8' + jvmTarget = '17' } sourceSets { @@ -44,21 +42,21 @@ android { defaultConfig { // TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html). - applicationId "com.gopeed.gopeed" + applicationId 'com.gopeed.gopeed' // You can update the following values to match your application needs. // For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-build-configuration. - minSdkVersion 21 - targetSdkVersion 34 + minSdk flutter.minSdkVersion + targetSdk 35 versionCode flutterVersionCode.toInteger() versionName flutterVersionName } signingConfigs { release { - keyAlias "upload" - keyPassword System.getenv("APK_KEY_PASSWORD") - storeFile file("upload-keystore.jks") - storePassword System.getenv("APK_STORE_PASSWORD") + keyAlias 'upload' + keyPassword System.getenv('APK_KEY_PASSWORD') + storeFile file('upload-keystore.jks') + storePassword System.getenv('APK_STORE_PASSWORD') } } @@ -84,6 +82,5 @@ flutter { } dependencies { - implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" implementation(name: 'libgopeed', ext: 'aar') } diff --git a/ui/flutter/android/app/src/debug/AndroidManifest.xml b/ui/flutter/android/app/src/debug/AndroidManifest.xml index f18c9b7b..c4a4b76b 100644 --- a/ui/flutter/android/app/src/debug/AndroidManifest.xml +++ b/ui/flutter/android/app/src/debug/AndroidManifest.xml @@ -1,8 +1,7 @@ - + - - + + \ No newline at end of file diff --git a/ui/flutter/android/app/src/main/AndroidManifest.xml b/ui/flutter/android/app/src/main/AndroidManifest.xml index b307cd06..e349bd1f 100644 --- a/ui/flutter/android/app/src/main/AndroidManifest.xml +++ b/ui/flutter/android/app/src/main/AndroidManifest.xml @@ -1,5 +1,4 @@ - + diff --git a/ui/flutter/android/app/src/profile/AndroidManifest.xml b/ui/flutter/android/app/src/profile/AndroidManifest.xml index f18c9b7b..c4a4b76b 100644 --- a/ui/flutter/android/app/src/profile/AndroidManifest.xml +++ b/ui/flutter/android/app/src/profile/AndroidManifest.xml @@ -1,8 +1,7 @@ - + - - + + \ No newline at end of file diff --git a/ui/flutter/android/build.gradle b/ui/flutter/android/build.gradle index e394c2eb..fbde3cb6 100644 --- a/ui/flutter/android/build.gradle +++ b/ui/flutter/android/build.gradle @@ -1,16 +1,3 @@ -buildscript { - ext.kotlin_version = '1.8.22' - repositories { - google() - mavenCentral() - } - - dependencies { - classpath 'com.android.tools.build:gradle:7.1.2' - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" - } -} - allprojects { repositories { google() @@ -26,6 +13,24 @@ subprojects { project.evaluationDependsOn(':app') } -tasks.register("clean", Delete) { +subprojects { subproject -> + subproject.plugins.withId('com.android.library') { + subproject.android { + if (namespace == null || namespace.isEmpty()) { + def manifest = file("${subproject.projectDir}/src/main/AndroidManifest.xml") + if (manifest.exists()) { + def manifestContent = manifest.getText() + def packagePattern = /package\s*=\s*["']([^"']+)["']/ + def matcher = (manifestContent =~ packagePattern) + if (matcher.find()) { + namespace = matcher.group(1) + } + } + } + } + } +} + +tasks.register('clean', Delete) { delete rootProject.buildDir } diff --git a/ui/flutter/android/gradle.properties b/ui/flutter/android/gradle.properties index 94adc3a3..5b3d6e64 100644 --- a/ui/flutter/android/gradle.properties +++ b/ui/flutter/android/gradle.properties @@ -1,3 +1,6 @@ -org.gradle.jvmargs=-Xmx1536M +org.gradle.jvmargs=-Xmx4G -XX:+HeapDumpOnOutOfMemoryError android.useAndroidX=true android.enableJetifier=true +android.nonTransitiveRClass=true +android.nonFinalResIds=true +android.defaults.buildfeatures.buildconfig=true diff --git a/ui/flutter/android/gradle/wrapper/gradle-wrapper.properties b/ui/flutter/android/gradle/wrapper/gradle-wrapper.properties index cc5527d7..9162f100 100644 --- a/ui/flutter/android/gradle/wrapper/gradle-wrapper.properties +++ b/ui/flutter/android/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.11.1-all.zip diff --git a/ui/flutter/android/settings.gradle b/ui/flutter/android/settings.gradle index 44e62bcf..55262216 100644 --- a/ui/flutter/android/settings.gradle +++ b/ui/flutter/android/settings.gradle @@ -1,11 +1,25 @@ +pluginManagement { + def flutterSdkPath = { + def properties = new Properties() + file('local.properties').withInputStream { properties.load(it) } + def flutterSdkPath = properties.getProperty('flutter.sdk') + assert flutterSdkPath != null, 'flutter.sdk not set in local.properties' + return flutterSdkPath + }() + + includeBuild("$flutterSdkPath/packages/flutter_tools/gradle") + + repositories { + google() + mavenCentral() + gradlePluginPortal() + } +} + +plugins { + id 'dev.flutter.flutter-plugin-loader' version '1.0.0' + id 'com.android.application' version '8.7.3' apply false + id 'org.jetbrains.kotlin.android' version '2.1.0' apply false +} + include ':app' - -def localPropertiesFile = new File(rootProject.projectDir, "local.properties") -def properties = new Properties() - -assert localPropertiesFile.exists() -localPropertiesFile.withReader("UTF-8") { reader -> properties.load(reader) } - -def flutterSdkPath = properties.getProperty("flutter.sdk") -assert flutterSdkPath != null, "flutter.sdk not set in local.properties" -apply from: "$flutterSdkPath/packages/flutter_tools/gradle/app_plugin_loader.gradle" diff --git a/ui/flutter/lib/api/model/downloader_config.dart b/ui/flutter/lib/api/model/downloader_config.dart index ae1d45d5..f85d5aab 100644 --- a/ui/flutter/lib/api/model/downloader_config.dart +++ b/ui/flutter/lib/api/model/downloader_config.dart @@ -12,13 +12,12 @@ class DownloaderConfig { WebhookConfig webhook = WebhookConfig(); AutoTorrentConfig autoTorrent = AutoTorrentConfig(); ArchiveConfig archive = ArchiveConfig(); - - // New fields for auto-management - bool autoDeleteMissingFileTasks = false; + bool autoDeleteMissingFileTasks; DownloaderConfig({ this.downloadDir = '', this.maxRunning = 0, + this.autoDeleteMissingFileTasks = false, }); factory DownloaderConfig.fromJson(Map json) => diff --git a/ui/flutter/lib/api/model/downloader_config.g.dart b/ui/flutter/lib/api/model/downloader_config.g.dart index 3849b31f..397da091 100644 --- a/ui/flutter/lib/api/model/downloader_config.g.dart +++ b/ui/flutter/lib/api/model/downloader_config.g.dart @@ -10,6 +10,8 @@ DownloaderConfig _$DownloaderConfigFromJson(Map json) => DownloaderConfig( downloadDir: json['downloadDir'] as String? ?? '', maxRunning: (json['maxRunning'] as num?)?.toInt() ?? 0, + autoDeleteMissingFileTasks: + json['autoDeleteMissingFileTasks'] as bool? ?? false, ) ..protocolConfig = ProtocolConfig.fromJson( json['protocolConfig'] as Map?) @@ -20,8 +22,7 @@ DownloaderConfig _$DownloaderConfigFromJson(Map json) => ..autoTorrent = AutoTorrentConfig.fromJson( json['autoTorrent'] as Map?) ..archive = - ArchiveConfig.fromJson(json['archive'] as Map?) - ..autoDeleteMissingFileTasks = json['autoDeleteMissingFileTasks'] as bool; + ArchiveConfig.fromJson(json['archive'] as Map?); Map _$DownloaderConfigToJson(DownloaderConfig instance) => { diff --git a/ui/flutter/macos/Podfile b/ui/flutter/macos/Podfile index 049abe29..9ec46f8c 100644 --- a/ui/flutter/macos/Podfile +++ b/ui/flutter/macos/Podfile @@ -1,4 +1,4 @@ -platform :osx, '10.14' +platform :osx, '10.15' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' diff --git a/ui/flutter/macos/Podfile.lock b/ui/flutter/macos/Podfile.lock index 9481da62..37615f88 100644 --- a/ui/flutter/macos/Podfile.lock +++ b/ui/flutter/macos/Podfile.lock @@ -85,7 +85,7 @@ SPEC CHECKSUMS: app_links: 9028728e32c83a0831d9db8cf91c526d16cc5468 desktop_drop: e0b672a7d84c0a6cbc378595e82cdb15f2970a43 device_info_plus: 724ebb83a99d517430554a1810445ff28fe71fa3 - FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 + FlutterMacOS: d0db08ddef1a9af05a5ec4b724367152bb0500b1 HotKey: 400beb7caa29054ea8d864c96f5ba7e5b4852277 hotkey_manager_macos: a4317849af96d2430fa89944d3c58977ca089fbe open_dir_macos: 79810d7921d777f8732bf6358b3a0839a8fad9b5 @@ -98,6 +98,6 @@ SPEC CHECKSUMS: url_launcher_macos: 0fba8ddabfc33ce0a9afe7c5fef5aab3d8d2d673 window_manager: 1d01fa7ac65a6e6f83b965471b1a7fdd3f06166c -PODFILE CHECKSUM: 353c8bcc5d5b0994e508d035b5431cfe18c1dea7 +PODFILE CHECKSUM: 0d3963a09fc94f580682bd88480486da345dc3f0 COCOAPODS: 1.16.2 diff --git a/ui/flutter/macos/Runner.xcodeproj/project.pbxproj b/ui/flutter/macos/Runner.xcodeproj/project.pbxproj index 814517f2..6fbaeeed 100644 --- a/ui/flutter/macos/Runner.xcodeproj/project.pbxproj +++ b/ui/flutter/macos/Runner.xcodeproj/project.pbxproj @@ -408,7 +408,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.14; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; @@ -491,7 +491,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.14; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = YES; ONLY_ACTIVE_ARCH = YES; SDKROOT = macosx; @@ -538,7 +538,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - MACOSX_DEPLOYMENT_TARGET = 10.14; + MACOSX_DEPLOYMENT_TARGET = 10.15; MTL_ENABLE_DEBUG_INFO = NO; SDKROOT = macosx; SWIFT_COMPILATION_MODE = wholemodule; diff --git a/ui/flutter/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ui/flutter/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index 6e74e48d..550b2dbb 100644 --- a/ui/flutter/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/ui/flutter/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -48,6 +48,7 @@ ignoresPersistentStateOnLaunch = "NO" debugDocumentVersioning = "YES" debugServiceExtension = "internal" + enableGPUValidationMode = "1" allowLocationSimulation = "YES"> diff --git a/ui/flutter/macos/Runner/AppDelegate.swift b/ui/flutter/macos/Runner/AppDelegate.swift index 6fde117b..79ad3f1f 100644 --- a/ui/flutter/macos/Runner/AppDelegate.swift +++ b/ui/flutter/macos/Runner/AppDelegate.swift @@ -21,6 +21,10 @@ class AppDelegate: FlutterAppDelegate { return false } + override func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool { + return true + } + override func applicationShouldHandleReopen(_ sender: NSApplication, hasVisibleWindows flag: Bool) -> Bool { if !flag { for window in NSApp.windows { diff --git a/ui/flutter/pubspec.lock b/ui/flutter/pubspec.lock index 38dd6c36..bb676701 100644 --- a/ui/flutter/pubspec.lock +++ b/ui/flutter/pubspec.lock @@ -173,10 +173,10 @@ packages: dependency: transitive description: name: characters - sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + sha256: f71061c654a3380576a52b451dd5532377954cf9dbd272a78fc8479606670803 url: "https://pub.dev" source: hosted - version: "1.3.0" + version: "1.4.0" checkable_treeview: dependency: "direct main" description: @@ -205,10 +205,10 @@ packages: dependency: transitive description: name: clock - sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + sha256: fddb70d9b5277016c77a80201021d40a2247104d9f4aa7bab7157b7e3f05b84b url: "https://pub.dev" source: hosted - version: "1.1.1" + version: "1.1.2" code_builder: dependency: transitive description: @@ -221,10 +221,10 @@ packages: dependency: transitive description: name: collection - sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + sha256: "2f5709ae4d3d59dd8f7cd309b4e023046b57d8a6c82130785d2b0e5868084e76" url: "https://pub.dev" source: hosted - version: "1.18.0" + version: "1.19.1" contentsize_tabbarview: dependency: "direct main" description: @@ -349,10 +349,10 @@ packages: dependency: transitive description: name: fake_async - sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44" url: "https://pub.dev" source: hosted - version: "1.3.1" + version: "1.3.3" ffi: dependency: transitive description: @@ -418,10 +418,10 @@ packages: dependency: "direct main" description: name: flutter_form_builder - sha256: c278ef69b08957d484f83413f0e77b656a39b7a7bb4eb8a295da3a820ecc6545 + sha256: ec74389c4af2361a5e9fe9a36fcfe722698be3f681d713cb3ebe099ae15ed863 url: "https://pub.dev" source: hosted - version: "9.5.0" + version: "10.2.0" flutter_launcher_icons: dependency: "direct dev" description: @@ -473,10 +473,10 @@ packages: dependency: "direct main" description: name: form_builder_validators - sha256: c61ed7b1deecf0e1ebe49e2fa79e3283937c5a21c7e48e3ed9856a4a14e1191a + sha256: "1b03c74d1db740890e6af803b43e5ebe56f8fa1ff5609cbf744e8d980dc5f8c6" url: "https://pub.dev" source: hosted - version: "11.0.0" + version: "11.2.0" frontend_server_client: dependency: transitive description: @@ -610,10 +610,10 @@ packages: dependency: transitive description: name: intl - sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf + sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5" url: "https://pub.dev" source: hosted - version: "0.19.0" + version: "0.20.2" io: dependency: transitive description: @@ -658,26 +658,26 @@ packages: dependency: transitive description: name: leak_tracker - sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de" url: "https://pub.dev" source: hosted - version: "10.0.5" + version: "11.0.2" leak_tracker_flutter_testing: dependency: transitive description: name: leak_tracker_flutter_testing - sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1" url: "https://pub.dev" source: hosted - version: "3.0.5" + 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" lecle_downloads_path_provider: dependency: "direct main" description: @@ -722,10 +722,10 @@ packages: dependency: transitive description: name: matcher - sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + sha256: dc58c723c3c24bf8d3e2d3ad3f2f9d7bd9cf43ec6feaa64181775e60190153f2 url: "https://pub.dev" source: hosted - version: "0.12.16+1" + version: "0.12.17" material_color_utilities: dependency: transitive description: @@ -754,10 +754,10 @@ packages: dependency: transitive description: name: meta - sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + sha256: "23f08335362185a5ea2ad3a4e597f1375e78bce8a040df5c600c8d3552ef2394" url: "https://pub.dev" source: hosted - version: "1.15.0" + version: "1.17.0" mime: dependency: transitive description: @@ -842,10 +842,10 @@ packages: dependency: "direct main" description: name: path - sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + sha256: "75cca69d1490965be98c73ceaea117e8a04dd21217b37b292c9ddbec0d955bc5" url: "https://pub.dev" source: hosted - version: "1.9.0" + version: "1.9.1" path_parsing: dependency: transitive description: @@ -1179,7 +1179,7 @@ packages: dependency: transitive description: flutter source: sdk - version: "0.0.99" + version: "0.0.0" source_gen: dependency: transitive description: @@ -1216,18 +1216,18 @@ packages: dependency: transitive description: name: stack_trace - sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + sha256: "8b27215b45d22309b5cddda1aa2b19bdfec9df0e765f2de506401c071d38d1b1" url: "https://pub.dev" source: hosted - version: "1.11.1" + version: "1.12.1" stream_channel: dependency: transitive description: name: stream_channel - sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + sha256: "969e04c80b8bcdf826f8f16579c7b14d780458bd97f56d107d3950fdbeef059d" url: "https://pub.dev" source: hosted - version: "2.1.2" + version: "2.1.4" stream_transform: dependency: transitive description: @@ -1264,10 +1264,10 @@ packages: dependency: transitive description: name: test_api - sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + sha256: ab2726c1a94d3176a45960b6234466ec367179b87dd74f1611adb1f3b5fb9d55 url: "https://pub.dev" source: hosted - version: "0.7.2" + version: "0.7.7" timing: dependency: transitive description: @@ -1417,10 +1417,10 @@ packages: dependency: transitive description: name: vector_math - sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b url: "https://pub.dev" source: hosted - version: "2.1.4" + version: "2.2.0" vm_service: dependency: transitive description: @@ -1518,5 +1518,5 @@ packages: source: hosted version: "2.2.1" sdks: - dart: ">=3.5.0 <4.0.0" - flutter: ">=3.24.0" + dart: ">=3.9.0 <4.0.0" + flutter: ">=3.35.0" diff --git a/ui/flutter/pubspec.yaml b/ui/flutter/pubspec.yaml index b2a8b270..6fb8378f 100644 --- a/ui/flutter/pubspec.yaml +++ b/ui/flutter/pubspec.yaml @@ -55,7 +55,7 @@ dependencies: window_manager: ^0.4.2 hotkey_manager: ^0.2.3 share_plus: ^10.1.0 - flutter_form_builder: ^9.5.0 + flutter_form_builder: ^10.2.0 form_builder_validators: ^11.0.0 flutter_foreground_task: ^8.2.0 open_filex: ^4.7.0 @@ -101,7 +101,7 @@ dev_dependencies: # rules and activating additional ones. flutter_lints: ^2.0.0 ffigen: ^8.0.2 - # build json model: dart run build_runner build --delete-conflicting-outputs + # build json model: flutter pub run build_runner build --delete-conflicting-outputs build_runner: ^2.2.1 json_serializable: ^6.3.2 flutter_launcher_icons: ^0.13.1 @@ -148,7 +148,7 @@ flutter: # For details regarding fonts from package dependencies, # see https://flutter.dev/custom-fonts/#from-packages -# dart run flutter_launcher_icons:main +# flutter pub run flutter_launcher_icons:main flutter_icons: image_path: "assets/icon/icon_1024.png" android: true # can specify file name here e.g. "ic_launcher" @@ -164,7 +164,7 @@ flutter_icons: generate: true image_path: "assets/icon/icon_macos_1024.png" -# dart run ffigen +# flutter pub run ffigen ffigen: name: LibgopeedBind description: Bindings to gopeed library.