Skip to content

Commit

Permalink
chore: migrate code to flutter 3.10 (#955)
Browse files Browse the repository at this point in the history
* chore: migrate code to flutter 3.10

* chore: use flutter defined values

* chore: upgrade tests to use flutter 3.10.x

* chore: upgrade stacked package

* chore: upgrade chewie deps

* fix: analyze errors

* chore: update IOS config

* feat: update flutter_launcher_icon config

* chore: update bunch of packages

* feat: upgrade flutter local notifications and others

* chore: upgrade flutter_launcher_icons

* chore: upgrade device_info_plus and share_plus

* chore: upgrade upgrader

* chore: upgrade youtube_player_iframe

* chore: update podfile lock file

* chore: update android config

* fix: bookmarked tutorials not viewable

* fix: overflowing text in hint panel

* fix: analyze errors and warnings

* chore: update dependencies

* chore: update lockfile

* chore: upgrade packages

---------

Co-authored-by: sembauke <[email protected]>
  • Loading branch information
Nirajn2311 and Sembauke authored Aug 3, 2023
1 parent 9fa1697 commit afd9e6d
Show file tree
Hide file tree
Showing 47 changed files with 403 additions and 339 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/flutter-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -51,13 +51,13 @@ jobs:
disable-animations: false
script: echo "Generated AVD snapshot for caching."

- name: Setup Flutter 3.7.x
- name: Setup Flutter 3.10.x
uses: subosito/flutter-action@48cafc24713cca54bbe03cdc3a423187d413aafa # v2
with:
flutter-version: "3.7.x"
flutter-version: "3.10.x"
channel: "stable"
cache: true
cache-key: flutter-3.7.x
cache-key: flutter-3.10.x
cache-path: ${{ runner.tool_cache }}/flutter

- name: Create .env file
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/flutter-deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,13 +47,13 @@ jobs:
disable-animations: false
script: echo "Generated AVD snapshot for caching."

- name: Setup Flutter 3.7.x
- name: Setup Flutter 3.10.x
uses: subosito/flutter-action@48cafc24713cca54bbe03cdc3a423187d413aafa # v2
with:
flutter-version: "3.7.x"
flutter-version: "3.10.x"
channel: "stable"
cache: true
cache-key: flutter-3.7.x
cache-key: flutter-3.10.x
cache-path: ${{ runner.tool_cache }}/flutter

- name: Create .env file
Expand Down
10 changes: 5 additions & 5 deletions .github/workflows/mobile-curriculum-e2e.yml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ on:
branches:
- main
paths:
- 'mobile-app/**'
- "mobile-app/**"
push:
branches:
- main
Expand Down Expand Up @@ -39,13 +39,13 @@ jobs:
with:
node-version: 18.x

- name: Setup Flutter 3.7.x
- name: Setup Flutter 3.10.x
uses: subosito/flutter-action@48cafc24713cca54bbe03cdc3a423187d413aafa # v2
with:
flutter-version: '3.7.x'
channel: 'stable'
flutter-version: "3.10.x"
channel: "stable"
cache: true
cache-key: flutter-3.7.x
cache-key: flutter-3.10.x
cache-path: ${{ runner.tool_cache }}/flutter

- name: Set freeCodeCamp Environment Variables
Expand Down
5 changes: 3 additions & 2 deletions mobile-app/android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,8 @@ if (keystorePropertiesFile.exists()) {
}

android {
compileSdkVersion 33
compileSdkVersion flutter.compileSdkVersion
ndkVersion flutter.ndkVersion

sourceSets {
main.java.srcDirs += 'src/main/kotlin'
Expand All @@ -45,7 +46,7 @@ android {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "org.freecodecamp"
minSdkVersion 21
targetSdkVersion 31
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
multiDexEnabled true
Expand Down
Binary file modified mobile-app/android/app/src/main/res/mipmap-hdpi/launcher_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified mobile-app/android/app/src/main/res/mipmap-mdpi/launcher_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified mobile-app/android/app/src/main/res/mipmap-xhdpi/launcher_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
2 changes: 1 addition & 1 deletion mobile-app/android/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,6 @@ subprojects {
project.evaluationDependsOn(':app')
}

task clean(type: Delete) {
tasks.register("clean", Delete) {
delete rootProject.buildDir
}
9 changes: 9 additions & 0 deletions mobile-app/flutter_launcher_icons.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# flutter pub run flutter_launcher_icons
flutter_launcher_icons:
image_path: "assets/images/app-logo.png"

android: "launcher_icon"
min_sdk_android: 21 # android min sdk min:16, default 21

ios: true
remove_alpha_channel_ios: true
138 changes: 72 additions & 66 deletions mobile-app/ios/Podfile.lock
Original file line number Diff line number Diff line change
Expand Up @@ -6,72 +6,72 @@ PODS:
- Auth0 (2.3.2):
- JWTDecode (~> 3.0)
- SimpleKeychain (~> 1.0)
- auth0_flutter (1.2.0):
- auth0_flutter (1.2.1):
- Auth0 (~> 2.3)
- Flutter
- device_info_plus (0.0.1):
- Flutter
- Firebase/Analytics (10.9.0):
- Firebase/Analytics (10.12.0):
- Firebase/Core
- Firebase/Core (10.9.0):
- Firebase/Core (10.12.0):
- Firebase/CoreOnly
- FirebaseAnalytics (~> 10.9.0)
- Firebase/CoreOnly (10.9.0):
- FirebaseCore (= 10.9.0)
- Firebase/Crashlytics (10.9.0):
- FirebaseAnalytics (~> 10.12.0)
- Firebase/CoreOnly (10.12.0):
- FirebaseCore (= 10.12.0)
- Firebase/Crashlytics (10.12.0):
- Firebase/CoreOnly
- FirebaseCrashlytics (~> 10.9.0)
- firebase_analytics (10.4.2):
- Firebase/Analytics (= 10.9.0)
- FirebaseCrashlytics (~> 10.12.0)
- firebase_analytics (10.4.4):
- Firebase/Analytics (= 10.12.0)
- firebase_core
- Flutter
- firebase_core (2.13.1):
- Firebase/CoreOnly (= 10.9.0)
- firebase_core (2.15.0):
- Firebase/CoreOnly (= 10.12.0)
- Flutter
- firebase_crashlytics (3.3.2):
- Firebase/Crashlytics (= 10.9.0)
- firebase_crashlytics (3.3.4):
- Firebase/Crashlytics (= 10.12.0)
- firebase_core
- Flutter
- FirebaseAnalytics (10.9.0):
- FirebaseAnalytics/AdIdSupport (= 10.9.0)
- FirebaseAnalytics (10.12.0):
- FirebaseAnalytics/AdIdSupport (= 10.12.0)
- FirebaseCore (~> 10.0)
- FirebaseInstallations (~> 10.0)
- GoogleUtilities/AppDelegateSwizzler (~> 7.11)
- GoogleUtilities/MethodSwizzler (~> 7.11)
- GoogleUtilities/Network (~> 7.11)
- "GoogleUtilities/NSData+zlib (~> 7.11)"
- nanopb (< 2.30910.0, >= 2.30908.0)
- FirebaseAnalytics/AdIdSupport (10.9.0):
- FirebaseAnalytics/AdIdSupport (10.12.0):
- FirebaseCore (~> 10.0)
- FirebaseInstallations (~> 10.0)
- GoogleAppMeasurement (= 10.9.0)
- GoogleAppMeasurement (= 10.12.0)
- GoogleUtilities/AppDelegateSwizzler (~> 7.11)
- GoogleUtilities/MethodSwizzler (~> 7.11)
- GoogleUtilities/Network (~> 7.11)
- "GoogleUtilities/NSData+zlib (~> 7.11)"
- nanopb (< 2.30910.0, >= 2.30908.0)
- FirebaseCore (10.9.0):
- FirebaseCore (10.12.0):
- FirebaseCoreInternal (~> 10.0)
- GoogleUtilities/Environment (~> 7.8)
- GoogleUtilities/Logger (~> 7.8)
- FirebaseCoreExtension (10.10.0):
- FirebaseCoreExtension (10.12.0):
- FirebaseCore (~> 10.0)
- FirebaseCoreInternal (10.10.0):
- FirebaseCoreInternal (10.12.0):
- "GoogleUtilities/NSData+zlib (~> 7.8)"
- FirebaseCrashlytics (10.9.0):
- FirebaseCrashlytics (10.12.0):
- FirebaseCore (~> 10.5)
- FirebaseInstallations (~> 10.0)
- FirebaseSessions (~> 10.5)
- GoogleDataTransport (~> 9.2)
- GoogleUtilities/Environment (~> 7.8)
- nanopb (< 2.30910.0, >= 2.30908.0)
- PromisesObjC (~> 2.1)
- FirebaseInstallations (10.10.0):
- FirebaseInstallations (10.12.0):
- FirebaseCore (~> 10.0)
- GoogleUtilities/Environment (~> 7.8)
- GoogleUtilities/UserDefaults (~> 7.8)
- PromisesObjC (~> 2.1)
- FirebaseSessions (10.10.0):
- FirebaseSessions (10.12.0):
- FirebaseCore (~> 10.5)
- FirebaseCoreExtension (~> 10.0)
- FirebaseInstallations (~> 10.0)
Expand All @@ -98,21 +98,21 @@ PODS:
- FMDB (2.7.5):
- FMDB/standard (= 2.7.5)
- FMDB/standard (2.7.5)
- GoogleAppMeasurement (10.9.0):
- GoogleAppMeasurement/AdIdSupport (= 10.9.0)
- GoogleAppMeasurement (10.12.0):
- GoogleAppMeasurement/AdIdSupport (= 10.12.0)
- GoogleUtilities/AppDelegateSwizzler (~> 7.11)
- GoogleUtilities/MethodSwizzler (~> 7.11)
- GoogleUtilities/Network (~> 7.11)
- "GoogleUtilities/NSData+zlib (~> 7.11)"
- nanopb (< 2.30910.0, >= 2.30908.0)
- GoogleAppMeasurement/AdIdSupport (10.9.0):
- GoogleAppMeasurement/WithoutAdIdSupport (= 10.9.0)
- GoogleAppMeasurement/AdIdSupport (10.12.0):
- GoogleAppMeasurement/WithoutAdIdSupport (= 10.12.0)
- GoogleUtilities/AppDelegateSwizzler (~> 7.11)
- GoogleUtilities/MethodSwizzler (~> 7.11)
- GoogleUtilities/Network (~> 7.11)
- "GoogleUtilities/NSData+zlib (~> 7.11)"
- nanopb (< 2.30910.0, >= 2.30908.0)
- GoogleAppMeasurement/WithoutAdIdSupport (10.9.0):
- GoogleAppMeasurement/WithoutAdIdSupport (10.12.0):
- GoogleUtilities/AppDelegateSwizzler (~> 7.11)
- GoogleUtilities/MethodSwizzler (~> 7.11)
- GoogleUtilities/Network (~> 7.11)
Expand All @@ -122,24 +122,24 @@ PODS:
- GoogleUtilities/Environment (~> 7.7)
- nanopb (< 2.30910.0, >= 2.30908.0)
- PromisesObjC (< 3.0, >= 1.2)
- GoogleUtilities/AppDelegateSwizzler (7.11.1):
- GoogleUtilities/AppDelegateSwizzler (7.11.4):
- GoogleUtilities/Environment
- GoogleUtilities/Logger
- GoogleUtilities/Network
- GoogleUtilities/Environment (7.11.1):
- GoogleUtilities/Environment (7.11.4):
- PromisesObjC (< 3.0, >= 1.2)
- GoogleUtilities/Logger (7.11.1):
- GoogleUtilities/Logger (7.11.4):
- GoogleUtilities/Environment
- GoogleUtilities/MethodSwizzler (7.11.1):
- GoogleUtilities/MethodSwizzler (7.11.4):
- GoogleUtilities/Logger
- GoogleUtilities/Network (7.11.1):
- GoogleUtilities/Network (7.11.4):
- GoogleUtilities/Logger
- "GoogleUtilities/NSData+zlib"
- GoogleUtilities/Reachability
- "GoogleUtilities/NSData+zlib (7.11.1)"
- GoogleUtilities/Reachability (7.11.1):
- "GoogleUtilities/NSData+zlib (7.11.4)"
- GoogleUtilities/Reachability (7.11.4):
- GoogleUtilities/Logger
- GoogleUtilities/UserDefaults (7.11.1):
- GoogleUtilities/UserDefaults (7.11.4):
- GoogleUtilities/Logger
- integration_test (0.0.1):
- Flutter
Expand All @@ -157,9 +157,9 @@ PODS:
- path_provider_foundation (0.0.1):
- Flutter
- FlutterMacOS
- PromisesObjC (2.2.0)
- PromisesSwift (2.2.0):
- PromisesObjC (= 2.2.0)
- PromisesObjC (2.3.1)
- PromisesSwift (2.3.1):
- PromisesObjC (= 2.3.1)
- quick_actions_ios (0.0.1):
- Flutter
- share_plus (0.0.1):
Expand All @@ -173,6 +173,8 @@ PODS:
- FMDB (>= 2.7.5)
- url_launcher_ios (0.0.1):
- Flutter
- webview_flutter_wkwebview (0.0.1):
- Flutter

DEPENDENCIES:
- audio_service (from `.symlinks/plugins/audio_service/ios`)
Expand All @@ -191,12 +193,13 @@ DEPENDENCIES:
- integration_test (from `.symlinks/plugins/integration_test/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`)
- quick_actions_ios (from `.symlinks/plugins/quick_actions_ios/ios`)
- share_plus (from `.symlinks/plugins/share_plus/ios`)
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/ios`)
- shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`)
- sqflite (from `.symlinks/plugins/sqflite/ios`)
- url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`)
- webview_flutter_wkwebview (from `.symlinks/plugins/webview_flutter_wkwebview/ios`)

SPEC REPOS:
trunk:
Expand Down Expand Up @@ -254,60 +257,63 @@ 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"
quick_actions_ios:
:path: ".symlinks/plugins/quick_actions_ios/ios"
share_plus:
:path: ".symlinks/plugins/share_plus/ios"
shared_preferences_foundation:
:path: ".symlinks/plugins/shared_preferences_foundation/ios"
:path: ".symlinks/plugins/shared_preferences_foundation/darwin"
sqflite:
:path: ".symlinks/plugins/sqflite/ios"
url_launcher_ios:
:path: ".symlinks/plugins/url_launcher_ios/ios"
webview_flutter_wkwebview:
:path: ".symlinks/plugins/webview_flutter_wkwebview/ios"

SPEC CHECKSUMS:
audio_service: f509d65da41b9521a61f1c404dd58651f265a567
audio_session: 4f3e461722055d21515cf3261b64c973c062f345
Auth0: 64da28fdc5cd499aa516dc4bfd0ace8efae2c1da
auth0_flutter: f1b79eed744164f08015d960c49534225f0bdf82
device_info_plus: e5c5da33f982a436e103237c0c85f9031142abed
Firebase: bd152f0f3d278c4060c5c71359db08ebcfd5a3e2
firebase_analytics: 48ed4a230abf9f585f7e7b477791effe96f5a791
firebase_core: ce64b0941c6d87c6ef5022ae9116a158236c8c94
firebase_crashlytics: 9b80d1944507cc07fa1c4455797f7d2eb7c8873f
FirebaseAnalytics: 5ea0db4893825e7b0149d575352cd838236313dc
FirebaseCore: b68d3616526ec02e4d155166bbafb8eca64af557
FirebaseCoreExtension: 8d93ebbf6838a874b4ed82a564c9d6705f8365dd
FirebaseCoreInternal: 971029061d326000d65bfdc21f5502c75c8b0893
FirebaseCrashlytics: b60329455285aff853e54139d8ddbfe1e5f2b9f9
FirebaseInstallations: 52153982b057d3afcb4e1fbb3eb0b6d00611e681
FirebaseSessions: 5f9e62cd4096e24d2011cbd845b0efceffaee1ec
auth0_flutter: ce053409c0a080736e341c3b94084c96cc8d4136
device_info_plus: 7545d84d8d1b896cb16a4ff98c19f07ec4b298ea
Firebase: 07150e75d142fb9399f6777fa56a187b17f833a0
firebase_analytics: 3ff822ee2e90f95b61f0da300df20b378d380fbb
firebase_core: e477125798fc37cd4ab43ca6a8536bf7e0929c00
firebase_crashlytics: 6043ce85800f96e53f15ee5051f9cfad10cce73d
FirebaseAnalytics: 0270389efbe3022b54ec4588862dabec3477ee98
FirebaseCore: f86a1394906b97ac445ae49c92552a9425831bed
FirebaseCoreExtension: 0ce5ac36042001cfa233ce7bfa28e5c313cf80f4
FirebaseCoreInternal: 950500ad8a08963657f6d8c67b579740c06d6aa1
FirebaseCrashlytics: c4d111b7430c49744c74bcc6346ea00868661ac8
FirebaseInstallations: 7b99ef103f013624444c614397038219c45f8e63
FirebaseSessions: a4ee211eeb31a2224cd8d9d4e30a0fccde9aa00c
fk_user_agent: 1f47ec39291e8372b1d692b50084b0d54103c545
Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
flutter_custom_tabs: 7a10a08686955cb748e5d26e0ae586d30689bf89
flutter_inappwebview: bfd58618f49dc62f2676de690fc6dcda1d6c3721
flutter_local_notifications: 0c0b1ae97e741e1521e4c1629a459d04b9aec743
flutter_secure_storage: 23fc622d89d073675f2eaa109381aefbcf5a49be
FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a
GoogleAppMeasurement: 373bcbead1bb6a85be7a64d5d8f96284b762ea9c
GoogleAppMeasurement: 2d800fab85e7848b1e66a6f8ce5bca06c5aad892
GoogleDataTransport: f0308f5905a745f94fb91fea9c6cbaf3831cb1bd
GoogleUtilities: 9aa0ad5a7bc171f8bae016300bfcfa3fb8425749
integration_test: a1e7d09bd98eca2fc37aefd79d4f41ad37bdbbe5
GoogleUtilities: c63691989bf362ba0505507da00eeb326192e83e
integration_test: 13825b8a9334a850581300559b8839134b124670
just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa
JWTDecode: 2eed97c2fa46ccaf3049a787004eedf0be474a87
nanopb: b552cce312b6c8484180ef47159bc0f65a1f0431
OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c
package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e
path_provider_foundation: eaf5b3e458fc0e5fbb9940fb09980e853fe058b8
PromisesObjC: 09985d6d70fbe7878040aa746d78236e6946d2ef
PromisesSwift: cf9eb58666a43bbe007302226e510b16c1e10959
package_info_plus: fd030dabf36271f146f1f3beacd48f564b0f17f7
path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
PromisesObjC: c50d2056b5253dadbd6c2bea79b0674bd5a52fa4
PromisesSwift: 28dca69a9c40779916ac2d6985a0192a5cb4a265
quick_actions_ios: 9e80dcfadfbc5d47d9cf8f47bcf428b11cf383d4
share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
shared_preferences_foundation: e2dae3258e06f44cc55f49d42024fd8dd03c590c
share_plus: 599aa54e4ea31d4b4c0e9c911bcc26c55e791028
shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
SimpleKeychain: 130211269f88f038d7dc5254cf0b1b9ce978c398
sqflite: 31f7eba61e3074736dff8807a9b41581e4f7f15a
url_launcher_ios: 08a3dfac5fb39e8759aeb0abbd5d9480f30fc8b4
webview_flutter_wkwebview: 2e2d318f21a5e036e2c3f26171342e95908bd60a

PODFILE CHECKSUM: a74b8704f768957a23e2d804b55390ecc9fffc9d

Expand Down
1 change: 1 addition & 0 deletions mobile-app/ios/Runner.xcodeproj/project.pbxproj
Original file line number Diff line number Diff line change
Expand Up @@ -250,6 +250,7 @@
files = (
);
inputPaths = (
"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
);
name = "Thin Binary";
outputPaths = (
Expand Down
Loading

0 comments on commit afd9e6d

Please sign in to comment.