Note: the null safety migration tooling and workflow is in an early state; this doc will be updated as the steps and workflow are simplified.
In order to run the tool currently you have to be able to build your own copy of the Dart SDK.
To do this, run:
./tools/build.py -mrelease --nnbd create_sdk
The NNBD sdk now lives under the ReleaseX64NNBD sub-directory of your build directory, e.g.
xcodebuild/ReleaseX64NNBD/dart-sdk/
analysis_options.yaml
to enable the NNBD experiment from the POV of the analyzer:analyzer: enable-experiment: - non-nullable
pub get
for the package (and, verify that the .dart_tool/package_config.json
file was created)Then, run the migration tool from the top-level of the package directory:
<sdk-repo>/xcodebuild/ReleaseX64NNBD/dart migrate .
The migration tool will run, print the proposed changes to the console, and display a url for the preview tool. Open that url from a browser to see a rich preview of the proposed null safety changes.
TODO: