From 44b32f42d828e3b3a3c72ed8d15b7a2bd960f6db Mon Sep 17 00:00:00 2001 From: Kevin Moore Date: Thu, 14 Nov 2024 17:44:37 -0800 Subject: [PATCH 1/3] [google_maps_flutter] Fix detection of WebAssembly compatibility --- .../google_maps_flutter/google_maps_flutter/CHANGELOG.md | 2 ++ .../google_maps_flutter/lib/google_maps_flutter.dart | 3 ++- .../google_maps_flutter/lib/src/google_map.dart | 2 +- .../google_maps_flutter/lib/src/platform.dart | 8 ++++++++ .../google_maps_flutter/lib/src/platform_io.dart | 8 ++++++++ .../google_maps_flutter/lib/src/platform_web.dart | 6 ++++++ 6 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 packages/google_maps_flutter/google_maps_flutter/lib/src/platform.dart create mode 100644 packages/google_maps_flutter/google_maps_flutter/lib/src/platform_io.dart create mode 100644 packages/google_maps_flutter/google_maps_flutter/lib/src/platform_web.dart diff --git a/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md b/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md index c809dfb10f86..36c3f8d8e599 100644 --- a/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md +++ b/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md @@ -1,6 +1,8 @@ ## NEXT * Updates minimum supported SDK version to Flutter 3.19/Dart 3.3. +* Fix platform detection so this package correctly reports compatibility with + WebAssembly. ## 2.9.0 diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/google_maps_flutter.dart b/packages/google_maps_flutter/google_maps_flutter/lib/google_maps_flutter.dart index 5c3bb49133c8..82ca8973678f 100644 --- a/packages/google_maps_flutter/google_maps_flutter/lib/google_maps_flutter.dart +++ b/packages/google_maps_flutter/google_maps_flutter/lib/google_maps_flutter.dart @@ -5,7 +5,6 @@ library google_maps_flutter; import 'dart:async'; -import 'dart:io'; import 'package:flutter/foundation.dart'; import 'package:flutter/gestures.dart'; @@ -13,6 +12,8 @@ import 'package:flutter/material.dart'; import 'package:google_maps_flutter_android/google_maps_flutter_android.dart'; import 'package:google_maps_flutter_platform_interface/google_maps_flutter_platform_interface.dart'; +import 'src/platform.dart'; + export 'package:google_maps_flutter_platform_interface/google_maps_flutter_platform_interface.dart' show ArgumentCallback, diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/src/google_map.dart b/packages/google_maps_flutter/google_maps_flutter/lib/src/google_map.dart index d93a9c9cc1af..fa759274c4b5 100644 --- a/packages/google_maps_flutter/google_maps_flutter/lib/src/google_map.dart +++ b/packages/google_maps_flutter/google_maps_flutter/lib/src/google_map.dart @@ -594,7 +594,7 @@ class _GoogleMapState extends State { /// Builds a [MapConfiguration] from the given [map]. MapConfiguration _configurationFromMapWidget(GoogleMap map) { - assert(!map.liteModeEnabled || Platform.isAndroid); + assert(!map.liteModeEnabled || isAndroid); return MapConfiguration( webGestureHandling: map.webGestureHandling, compassEnabled: map.compassEnabled, diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform.dart b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform.dart new file mode 100644 index 000000000000..3d81b9f5965d --- /dev/null +++ b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform.dart @@ -0,0 +1,8 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +/// Correctly exposes `Platform.isAndroid` without causing web detection issues. +library; + +export 'platform_web.dart' if (dart.library.io) 'platform_io.dart'; diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_io.dart b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_io.dart new file mode 100644 index 000000000000..8e066103737b --- /dev/null +++ b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_io.dart @@ -0,0 +1,8 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +import 'dart:io'; + +/// Returns [Platform.isAndroid]. +bool get isAndroid => Platform.isAndroid; diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_web.dart b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_web.dart new file mode 100644 index 000000000000..76dbd2b3ed6e --- /dev/null +++ b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_web.dart @@ -0,0 +1,6 @@ +// Copyright 2013 The Flutter Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +/// Always returns `false`. +bool get isAndroid => false; From 953e3046415e470893620ca4cf5fa7c8cde155d4 Mon Sep 17 00:00:00 2001 From: Kevin Moore Date: Thu, 14 Nov 2024 18:19:47 -0800 Subject: [PATCH 2/3] fix changelog and version --- packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md | 4 ++-- packages/google_maps_flutter/google_maps_flutter/pubspec.yaml | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md b/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md index 36c3f8d8e599..1c8742037af8 100644 --- a/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md +++ b/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md @@ -1,6 +1,6 @@ -## NEXT +## 2.10.0 -* Updates minimum supported SDK version to Flutter 3.19/Dart 3.3. +* Updates minimum supported SDK version to Flutter 3.22/Dart 3.4. * Fix platform detection so this package correctly reports compatibility with WebAssembly. diff --git a/packages/google_maps_flutter/google_maps_flutter/pubspec.yaml b/packages/google_maps_flutter/google_maps_flutter/pubspec.yaml index 00a533874875..661ed9b8d3c1 100644 --- a/packages/google_maps_flutter/google_maps_flutter/pubspec.yaml +++ b/packages/google_maps_flutter/google_maps_flutter/pubspec.yaml @@ -2,7 +2,7 @@ name: google_maps_flutter description: A Flutter plugin for integrating Google Maps in iOS and Android applications. repository: https://github.com/flutter/packages/tree/main/packages/google_maps_flutter/google_maps_flutter issue_tracker: https://github.com/flutter/flutter/issues?q=is%3Aissue+is%3Aopen+label%3A%22p%3A+maps%22 -version: 2.9.0 +version: 2.10.0 environment: sdk: ^3.4.0 From 5f49d93ab2dedfc745a25424ac1404d6b091d8ba Mon Sep 17 00:00:00 2001 From: Kevin Moore Date: Thu, 14 Nov 2024 19:47:02 -0800 Subject: [PATCH 3/3] review nits --- .../google_maps_flutter/google_maps_flutter/CHANGELOG.md | 3 +-- .../google_maps_flutter/lib/google_maps_flutter.dart | 2 -- .../google_maps_flutter/lib/src/google_map.dart | 1 - .../google_maps_flutter/lib/src/platform.dart | 8 -------- .../google_maps_flutter/lib/src/platform_io.dart | 8 -------- .../google_maps_flutter/lib/src/platform_web.dart | 6 ------ 6 files changed, 1 insertion(+), 27 deletions(-) delete mode 100644 packages/google_maps_flutter/google_maps_flutter/lib/src/platform.dart delete mode 100644 packages/google_maps_flutter/google_maps_flutter/lib/src/platform_io.dart delete mode 100644 packages/google_maps_flutter/google_maps_flutter/lib/src/platform_web.dart diff --git a/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md b/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md index 1c8742037af8..75614efbf0db 100644 --- a/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md +++ b/packages/google_maps_flutter/google_maps_flutter/CHANGELOG.md @@ -1,8 +1,7 @@ ## 2.10.0 * Updates minimum supported SDK version to Flutter 3.22/Dart 3.4. -* Fix platform detection so this package correctly reports compatibility with - WebAssembly. +* Fixes detection of WebAssembly support on package site. ## 2.9.0 diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/google_maps_flutter.dart b/packages/google_maps_flutter/google_maps_flutter/lib/google_maps_flutter.dart index 82ca8973678f..66952bbe062d 100644 --- a/packages/google_maps_flutter/google_maps_flutter/lib/google_maps_flutter.dart +++ b/packages/google_maps_flutter/google_maps_flutter/lib/google_maps_flutter.dart @@ -12,8 +12,6 @@ import 'package:flutter/material.dart'; import 'package:google_maps_flutter_android/google_maps_flutter_android.dart'; import 'package:google_maps_flutter_platform_interface/google_maps_flutter_platform_interface.dart'; -import 'src/platform.dart'; - export 'package:google_maps_flutter_platform_interface/google_maps_flutter_platform_interface.dart' show ArgumentCallback, diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/src/google_map.dart b/packages/google_maps_flutter/google_maps_flutter/lib/src/google_map.dart index fa759274c4b5..888195ca36d2 100644 --- a/packages/google_maps_flutter/google_maps_flutter/lib/src/google_map.dart +++ b/packages/google_maps_flutter/google_maps_flutter/lib/src/google_map.dart @@ -594,7 +594,6 @@ class _GoogleMapState extends State { /// Builds a [MapConfiguration] from the given [map]. MapConfiguration _configurationFromMapWidget(GoogleMap map) { - assert(!map.liteModeEnabled || isAndroid); return MapConfiguration( webGestureHandling: map.webGestureHandling, compassEnabled: map.compassEnabled, diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform.dart b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform.dart deleted file mode 100644 index 3d81b9f5965d..000000000000 --- a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform.dart +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2013 The Flutter Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -/// Correctly exposes `Platform.isAndroid` without causing web detection issues. -library; - -export 'platform_web.dart' if (dart.library.io) 'platform_io.dart'; diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_io.dart b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_io.dart deleted file mode 100644 index 8e066103737b..000000000000 --- a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_io.dart +++ /dev/null @@ -1,8 +0,0 @@ -// Copyright 2013 The Flutter Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -import 'dart:io'; - -/// Returns [Platform.isAndroid]. -bool get isAndroid => Platform.isAndroid; diff --git a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_web.dart b/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_web.dart deleted file mode 100644 index 76dbd2b3ed6e..000000000000 --- a/packages/google_maps_flutter/google_maps_flutter/lib/src/platform_web.dart +++ /dev/null @@ -1,6 +0,0 @@ -// Copyright 2013 The Flutter Authors. All rights reserved. -// Use of this source code is governed by a BSD-style license that can be -// found in the LICENSE file. - -/// Always returns `false`. -bool get isAndroid => false;