I have added // @dart=2.9
to all my files but the build_runner
won't do its thing without throwing this error:
Warning: Operand of null-aware operation '?.' has type 'SendPort' which excludes null. - 'SendPort' is from 'dart:isolate'. sendPort?.send(result); ^Error: Cannot run with sound null safety, because the following dependencies don't support null safety:
- package:build_runner_core
- package:json_serializable
- package:moor_generator
- package:objectbox_generator
- package:retrofit_generator
- package:source_gen
- package:build_config
- package:build_runner
- package:build
- package:json_annotation
- package:glob
- package:pool
- package:crypto
- package:logging
- package:watcher
- package:build_resolvers
- package:timing
- package:graphs
- package:package_config
- package:yaml
- package:analyzer
- package:sqlparser
- package:objectbox
- package:dart_style
- package:built_collection
- package:code_builder
- package:dio
- package:tuple
- package:retrofit
- package:pedantic
- package:checked_yaml
- package:pubspec_parse
- package:build_daemon
- package:args
- package:io
- package:convert
- package:pub_semver
- package:ffi
- package:quiver
- package:moor
- package:recase
- package:_fe_analyzer_shared
- package:built_value
- package:http_parser
- package:http_multi_server
- package:shelf
- package:stream_transform
- package:mime
- package:shelf_web_socket
- package:web_socket_channel
- package:cli_util
- package:fixnum
- package:synchronizedFor solutions, see https://dart.dev/go/unsound-null-safety.dart_tool/build/entrypoint/build.dart:44:44: Error: The parameter 'sendPort' can't have a value of 'null' because of its type 'SendPort', but the implicit default value is 'null'. - 'SendPort' is from 'dart:isolate'.Try adding either an explicit non-'null' default value or the 'required' modifier.void main(List<String> args, [_i8.SendPort sendPort]) async {
What is null safety in Flutter? Flutter null safety is the feature that became available after the release of version 2 where the minimum version of Dart programming language is set to 2.12. This feature helps to improve developers' productivity by eliminating a whole class of bugs caused by null dereferencing errors.
Enabling null safety Sound null safety is available in Dart 2.12 and Flutter 2.
Please make sure all of your packages are updated to their respective null-safety version. For build runner use ^1.12.2
and then run below commands in your terminal while sitting in the present working directory.
flutter clean
flutter pub cache repair
flutter pub run build_runner clean
flutter pub get
After then run the build runner command.
This worked for me and I've successfully generated the files using the build runner.
Delete the .pub-cache
folder inside your flutter folder and then run pub upgrade
, after that you should be able to run:
flutter packages pub run build_runner build --delete-conflicting-outputs
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With