feat: Flutter SDK update for version 24.1.0#310
Conversation
Greptile SummaryThis PR delivers the Flutter SDK 24.1.0 update, adding
Confidence Score: 4/5Safe to merge after fixing the InsightCTA params deserialization; every other changed path looks correct. In lib/src/models/insight_cta.dart — the params field deserialization needs Important Files Changed
Reviews (2): Last reviewed commit: "Commit from GitHub Actions (Format and p..." | Re-trigger Greptile |
| } catch (e) { | ||
| debugPrint('Error getting device info: $e'); | ||
| device = Platform.operatingSystem; | ||
| addHeader('user-agent', device); | ||
| } |
There was a problem hiding this comment.
The
debugPrint call was removed from the catch block, so any failure to retrieve device info is now completely silent. The fallback code still runs, but engineers lose all visibility into when and why this path is taken.
| } catch (e) { | |
| debugPrint('Error getting device info: $e'); | |
| device = Platform.operatingSystem; | |
| addHeader('user-agent', device); | |
| } | |
| } catch (e) { | |
| debugPrint('Error getting device info: $e'); | |
| device = Platform.operatingSystem; | |
| addHeader('user-agent', device); | |
| } |
| label: map['label'].toString(), | ||
| service: map['service'].toString(), | ||
| method: map['method'].toString(), | ||
| params: map['params'], |
There was a problem hiding this comment.
params is assigned directly from the raw map as dynamic with no type cast or null guard. Because jsonDecode produces Map<dynamic, dynamic> (not Map<String, dynamic>), the runtime assignment to the non-nullable Map<String, dynamic> params field will throw a TypeError. Every other Map-typed field in the new models (e.g. Presence.metadata) uses Map<String, dynamic>.from(... ?? {}) for exactly this reason.
| params: map['params'], | |
| params: Map<String, dynamic>.from(map['params'] ?? {}), |
This PR contains updates to the Flutter SDK for version 24.1.0.
What's Changed
presenceschannel andRealtimePresencetypes for presence subscriptionsAdvisorandPresencesservicesInsight,Presence, andReportmodels with list variantsfusionauth,keycloak, andkickproviders toOAuthProviderenumX-Appwrite-Response-Formatheader to1.9.5