With the release of Dart 3.0, null safety is now enforced in Dart code. By porting the codebase to null safety, all packages can be upgraded to the latest available version. Consider this a task of housekeeping - it's not a visible change to the user (apart from a few bugs that have been discovered and fixed on the way), but it's an upgrade to the overall code. Null safety leads to fewer bugs and overall more stability while developing programs. This PR aims to reduce human error and improve compatibility with dependencies and future SDK changes.
With the release of Dart 3.0, null safety is now enforced in Dart code. By porting the codebase to null safety, all packages can be upgraded to the latest available version. Consider this a task of housekeeping - it's not a visible change to the user (apart from a few bugs that have been discovered and fixed on the way), but it's an upgrade to the overall code. Null safety leads to fewer bugs and overall more stability while developing programs. This PR aims to reduce human error and improve compatibility with dependencies and future SDK changes.