Dart 2.10 unifies command-line tooling


Dart 2.10, the latest version of the Google-developed, client-optimized programming language, has added a unified developer tool for creating projects and packages. Google is also moving forward with plans to add null safety to the language.

The dart developer tool, similar to the flutter tool, analyzes and formats code, runs tests, and compiles apps. The new dart tool is now included in the Flutter SDK, beginning with Flutter 1.22. Plans call for adding more capabilities to the tool and gradually deprecating smaller tools, including dartdoc, dartfmt, and dartanalyzer.

By next year, Google expects the Dart SDK to have only the dart tool. The Dart team advises developers to switch over to the tool when running Dart commands now, whether manually in the terminal or in continuous integration scripts. Developers can offer feedback on the tool.

Dart 2.10 was unveiled October 1. Instructions for downloading the Dart SDK have been posted on dart.dev. Dart serves as the foundation of the Flutter SDK, providing the language and runtimes that power Flutter apps and supporting tasks such as formatting and testing. Once positioned as a potential rival to JavaScript, Dart was reimagined as a tool for mobile app development. The language can be used for desktop, server, and web apps.

The Dart development team is proceeding with null safety, launched as a technical preview in June in an effort to help developers find hard-to-spot bugs and improve performance. Null safety is a fundamental change to the Dart typing system, requiring new syntax in variable declarations because the Dart team decided to make variables non-nullable by default.

A second technical preview is expected to feature the complete migration of the Flutter framework in the next month. A beta version also is planned, with performance tuning completed, sufficient test coverage, and solid backward compatibility. After feedback on the beta, the null safety capability will be published as stable. This is estimated to happen in early-2021.