diff --git a/packages/share/CHANGELOG.md b/packages/share/CHANGELOG.md index 86906bbd56be..8a3806209c1c 100644 --- a/packages/share/CHANGELOG.md +++ b/packages/share/CHANGELOG.md @@ -1,7 +1,3 @@ -## 2.0.0-nullsafety - -* Migrate to null safety. - ## 0.6.5+5 * Update Flutter SDK constraint. diff --git a/packages/share/lib/share.dart b/packages/share/lib/share.dart index f15566714857..4a3ff6f1de09 100644 --- a/packages/share/lib/share.dart +++ b/packages/share/lib/share.dart @@ -33,8 +33,8 @@ class Share { /// from [MethodChannel]. static Future share( String text, { - String? subject, - Rect? sharePositionOrigin, + String subject, + Rect sharePositionOrigin, }) { assert(text != null); assert(text.isNotEmpty); @@ -67,10 +67,10 @@ class Share { /// from [MethodChannel]. static Future shareFiles( List paths, { - List? mimeTypes, - String? subject, - String? text, - Rect? sharePositionOrigin, + List mimeTypes, + String subject, + String text, + Rect sharePositionOrigin, }) { assert(paths != null); assert(paths.isNotEmpty); diff --git a/packages/share/pubspec.yaml b/packages/share/pubspec.yaml index 69d0fdbd5eb8..23644d290473 100644 --- a/packages/share/pubspec.yaml +++ b/packages/share/pubspec.yaml @@ -2,7 +2,10 @@ name: share description: Flutter plugin for sharing content via the platform share UI, using the ACTION_SEND intent on Android and UIActivityViewController on iOS. homepage: https://github.com/flutter/plugins/tree/master/packages/share -version: 2.0.0-nullsafety +# 0.6.y+z is compatible with 1.0.0, if you land a breaking change bump +# the version to 2.0.0. +# See more details: https://github.com/flutter/flutter/wiki/Package-migration-to-1.0.0 +version: 0.6.5+5 flutter: plugin: @@ -14,20 +17,20 @@ flutter: pluginClass: FLTSharePlugin dependencies: - meta: ^1.3.0-nullsafety.6 - mime: ^1.0.0-nullsafety.0 + meta: ^1.0.5 + mime: ^0.9.7 flutter: sdk: flutter dev_dependencies: - test: ^1.16.0-nullsafety.13 - mockito: ^4.1.3 + test: ^1.3.0 + mockito: ^3.0.0 flutter_test: sdk: flutter integration_test: path: ../integration_test - pedantic: ^1.10.0-nullsafety.3 + pedantic: ^1.8.0 environment: + sdk: ">=2.1.0 <3.0.0" flutter: ">=1.12.13+hotfix.5" - sdk: ">=2.12.0-0 <3.0.0" diff --git a/packages/share/test/share_test.dart b/packages/share/test/share_test.dart index fa9f980beae3..e862d1baf579 100644 --- a/packages/share/test/share_test.dart +++ b/packages/share/test/share_test.dart @@ -15,7 +15,7 @@ import 'package:flutter/services.dart'; void main() { TestWidgetsFlutterBinding.ensureInitialized(); - late MockMethodChannel mockChannel; + MockMethodChannel mockChannel; setUp(() { mockChannel = MockMethodChannel(); @@ -26,6 +26,14 @@ void main() { }); }); + test('sharing null fails', () { + expect( + () => Share.share(null), + throwsA(const TypeMatcher()), + ); + verifyZeroInteractions(mockChannel); + }); + test('sharing empty fails', () { expect( () => Share.share(''), @@ -50,6 +58,14 @@ void main() { })); }); + test('sharing null file fails', () { + expect( + () => Share.shareFiles([null]), + throwsA(const TypeMatcher()), + ); + verifyZeroInteractions(mockChannel); + }); + test('sharing empty file fails', () { expect( () => Share.shareFiles(['']), diff --git a/script/nnbd_plugins.sh b/script/nnbd_plugins.sh index 0cab28abe2ab..97354a36a038 100644 --- a/script/nnbd_plugins.sh +++ b/script/nnbd_plugins.sh @@ -14,7 +14,6 @@ readonly NNBD_PLUGINS_LIST=( "local_auth" "path_provider" "plugin_platform_interface" - "share" "url_launcher" "video_player" "webview_flutter"