Skip to content

Null safety migration status

Filip Hracek edited this page Jan 5, 2021 · 19 revisions

Null safety migration

This page contains stats for the migration of packages on pub.dev to Dart's sound null safety feature.

The data below is based on the following criteria:

  • Package supports null safety: The Dart SDK lower constraint is >= 2.12.0-0
  • Package is unblocked for starting migrating to null safety: All direct dep of the package support null safety
  • Blocking score: The number of packages (incl. transitive deps) only blocked from null-safety migration by this package. If a package is blocked by N dependencies, then it only contributes with a blocking score of 1/N.

Note: Pub.dev also has a list of packages with null safety. This may show a slightly lower count than the "raw" counts below, as some categories of packages (e.g. those marked discontinued) are not shown in the pub.dev search UI.

Summary:

Package counts (each package counts only once)

packages with null safety:                   398

packages without null safety total:          14983
packages without null safety blocked:        5650
packages without null safety unblocked:      9333

packages in total (w. Dart 2.12 support):    15381

Top blocking packages

Top 50 by blocking score (unblocked for migr.):

  http                                      813.7   Yes
  shared_aws_api                            216.5   No
  dio                                       201.9   Yes
  analyzer                                  174.6   No
  shared_preferences                        151.2   No
  uuid                                      128.7   Yes
  path_provider                             110.0   No
  build                                      76.5   No
  source_gen                                 57.6   No
  archive                                    50.6   Yes
  pointycastle                               50.0   Yes
  path_provider_platform_interface           49.0   Yes
  html                                       46.8   No
  permission_handler                         41.1   No
  webview_flutter                            38.4   Yes
  package_info                               34.4   Yes
  web_socket_channel                         33.1   Yes
  _fe_analyzer_shared                        32.9   Yes
  dart_style                                 31.6   No
  image                                      30.8   No
  cloud_firestore                            30.7   No
  hex                                        30.5   Yes
  redux                                      29.2   Yes
  freezed_annotation                         28.3   Yes
  image_picker                               27.9   No
  firebase_core                              27.9   No
  google_maps_flutter                        27.2   No
  csslib                                     24.9   Yes
  shelf                                      23.5   Yes
  angel_framework                            23.5   No
  angular                                    22.5   No
  cached_network_image                       22.2   No
  firebase_auth                              21.7   No
  hive                                       21.1   Yes
  code_builder                               20.9   Yes
  io                                         20.5   Yes
  http_server                                20.4   Yes
  build_config                               19.4   No
  flutter_webview_plugin                     19.4   Yes
  flutter_cache_manager                      18.6   No
  surf_lint_rules                            18.5   Yes
  grpc                                       18.5   No
  foundation_fluttify                        16.8   Yes
  firebase_core_platform_interface           16.7   Yes
  quiver_hashcode                            16.3   Yes
  encrypt                                    15.9   No
  stream_transform                           15.6   Yes
  build_runner                               15.4   No
  mango_ui                                   14.5   Yes
  flutter_hooks                              13.8   Yes

New packages with null safety support last 7 days

packages published last 7 days where latest version is null-safe (24):
  crypto                                   2020-12-30      3.0.0-nullsafety.0
  args                                     2020-12-30      2.0.0-nullsafety.0
  modal_bottom_sheet                       2021-01-02      2.0.0-nullsafety.1
  flutter_colorpicker                      2020-12-31      0.4.0-nullsafety.0
  cryptography                             2020-12-31      2.0.0-nullsafety.2
  circular_reveal_animation                2020-12-30      2.0.0-nullsafety.0
  latlng                                   2020-12-30      0.1.0-nullsafety.0
  cupertino_stepper                        2021-01-01      0.2.0-nullsafety.0
  flutter_spinbox                          2021-01-01      0.4.0-nullsafety.0
  map                                      2020-12-30      0.3.0-nullsafety.0
  storybook_flutter                        2020-12-27      0.2.0-nullsafety.0
  persian                                  2020-12-27      1.0.0-nullsafety.0
  cryptography_flutter                     2020-12-31      2.0.0-nullsafety.1
  pattern_lock                             2020-12-30      2.0.0-nullsafety.0
  dart_serial_port                         2021-01-01      0.1.0-nullsafety.0
  persian_flutter                          2020-12-27      0.2.0-nullsafety.0
  remove_emoji                             2021-01-01      0.0.5
  babylon_dart                             2020-12-30      1.0.0-nullsafety.0
  voyager                                  2021-01-02      3.0.0-nullsafety.2
  dolumns                                  2020-12-30      2.0.0-nullsafety.0
  layout                                   2021-01-01      0.5.1
  flutter_mediator                         2020-12-27      2.0.0-nullsafety.0
  flutter_fast_forms                       2020-12-31      0.8.0-nullsafety.1
  rx_notifier                              2020-12-27      0.0.5
Clone this wiki locally