diff --git a/packages/share/CHANGELOG.md b/packages/share/CHANGELOG.md index 8a3806209c1c..86906bbd56be 100644 --- a/packages/share/CHANGELOG.md +++ b/packages/share/CHANGELOG.md @@ -1,3 +1,7 @@ +## 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 4a3ff6f1de09..f15566714857 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 23644d290473..69d0fdbd5eb8 100644 --- a/packages/share/pubspec.yaml +++ b/packages/share/pubspec.yaml @@ -2,10 +2,7 @@ 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 -# 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 +version: 2.0.0-nullsafety flutter: plugin: @@ -17,20 +14,20 @@ flutter: pluginClass: FLTSharePlugin dependencies: - meta: ^1.0.5 - mime: ^0.9.7 + meta: ^1.3.0-nullsafety.6 + mime: ^1.0.0-nullsafety.0 flutter: sdk: flutter dev_dependencies: - test: ^1.3.0 - mockito: ^3.0.0 + test: ^1.16.0-nullsafety.13 + mockito: ^4.1.3 flutter_test: sdk: flutter integration_test: path: ../integration_test - pedantic: ^1.8.0 + pedantic: ^1.10.0-nullsafety.3 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 e862d1baf579..fa9f980beae3 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(); - MockMethodChannel mockChannel; + late MockMethodChannel mockChannel; setUp(() { mockChannel = MockMethodChannel(); @@ -26,14 +26,6 @@ void main() { }); }); - test('sharing null fails', () { - expect( - () => Share.share(null), - throwsA(const TypeMatcher()), - ); - verifyZeroInteractions(mockChannel); - }); - test('sharing empty fails', () { expect( () => Share.share(''), @@ -58,14 +50,6 @@ 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 8b73ecc24e99..56eb85f7b758 100644 --- a/script/nnbd_plugins.sh +++ b/script/nnbd_plugins.sh @@ -13,6 +13,7 @@ readonly NNBD_PLUGINS_LIST=( "local_auth" "path_provider" "plugin_platform_interface" + "share" "url_launcher" "video_player" )