Contents

What’s new

This page describes what’s new on the Dart website and blog. To see what’s new in Flutter, visit the Flutter what’s new page.

For a list of Dart language changes in each Dart SDK, see the language evolution page. To stay on top of announcements, including breaking changes, join the Dart announcements Google group and follow the Dart blog.

August 30, 2022: 2.18 release

This section lists notable changes made from May 12, 2022, through August 30, 2022. For details about the 2.18 release, see Dart 2.18: Objective-C & Swift interop, and the SDK changelog.

In addition to bug fixes and incremental improvements, we made the following changes to this site:

  • Introduced the Objective-C and Swift interop page, which explains how to use Dart packages to call APIs from those languages.
  • Added a workaround to Fixing common type problems, for the rare case where type inference might incorrectly infer an argument type is null.
  • Removed all mention of discontinued .packages files from What not to commit. If you still need to generate a .packages file due to third-party legacy dependencies, see dart pub get Options.
  • Removed dedicated pages and any other mention of discontinued dart2js and dartdevc command line tools.
    • Added command line options and known issues previously associated with dart2js to the dart compile page.
    • Added information on debugging production code to Debugging Dart web apps.
  • Added support for downloading experimental Windows ARM builds to the Dart SDK archive.
  • Updated the Library tour to include information on weak references and finalizers.
  • Added a section on customizing dart fix.

May 11, 2022: 2.17 release

This section lists notable changes made from February 4, 2022, through May 11, 2022. For details about the 2.17 release, see Dart 2.17: Productivity and integration.

Docs updated or added to dart.dev

In addition to bug fixes and incremental improvements, we made the following changes to this site:

  • Introduced the Learning Dart as a JavaScript developer guide, which aims to leverage your JavaScript programming knowledge when learning Dart.
  • Documented the features and changes introduced in Dart 2.17:
  • Accounted for changes to the pub.dev site and the pub tool.
    • Listed vendors offering Dart package repositories as a service.
    • Removed documentation for the now discontinued dart pub uploader command.
    • Expanded the documentation for managing pub project uploaders.
    • Removed most mentions to the deprecated .packages file, pointing instead to its .dart_tool/package_config.json replacement.
  • Updated the documentation for updating and installing Dart:
  • Continued work to improve and update documentation of the unified dart tool:
    • Expanded documentation about the functionality of the dart fix tool.
    • Adjusted the guidelines and documentation for the dart doc tool to match its functionality and underlying behavior.
    • Added further documentation and samples of dart compile js.
    • Removed mentions of removed standalone tools.
  • Updated the documentation and usage of the analyzer and linter:
  • Began an overhaul of the documentation for web compilation:
    • Documented for the deprecation and planned removal of the dart2js and dartdevc standalone tools.
    • Consolidated and clarified the documentation of dart2js and dartdevc as the underlying compilers of tools like dart compile js and webdev.
  • Increased documentation coverage of null safety:
    • Documented the null assertion operator (!) as part of the Other operators section of the language tour.
    • Migrated the Low-level HTML tutorials to support null safety and discuss how to interact with web APIs while using it.
  • Made miscellaneous other updates:

Articles added to the Dart blog

We published the following articles on the Dart blog:

February 3, 2022: 2.16 release

This section lists notable changes made from December 8, 2021, through February 3, 2022. For details about the 2.16 release, see Dart 2.16: Improved tooling and platform handling.

Docs updated or added to dart.dev

We updated the website infrastructure to a Docker-based setup to enable easier contributions and more closely align with the setup for docs.flutter.dev.

In addition to other bug fixes and incremental improvements, we made the following changes to this site:

December 8, 2021: 2.15 release

This section lists notable changes made from September 9, 2021, through December 8, 2021. For details about the 2.15 release, see Announcing Dart 2.15.

Docs updated or added to dart.dev

In addition to bug fixes and incremental improvements, we made the following changes to this site:

September 8, 2021: 2.14 release

This section lists notable changes made from May 20, 2021, through September 8, 2021. For details about the 2.14 release, see Announcing Dart 2.14.

Docs updated or added to dart.dev

In addition to bug fixes and incremental improvements, we made the following changes to this site:

Articles added to the Dart blog

We published the following articles on the Dart blog:

May 19, 2021: 2.13 release

This section lists notable changes made from March 4, 2021, through May 19, 2021. For details about the 2.13 release, see Announcing Dart 2.13.

Docs updated or added to dart.dev

In addition to bug fixes and incremental improvements, we made the following changes to this site:

  • Updated the typedef section of the language tour to reflect non-function type aliases, which were introduced in Dart 2.13.
  • Published or updated documentation related to the command line and servers:
    • Using Google Cloud describes Google Cloud products that Dart servers can use, often with the help of pre-packaged Docker images.
    • The HTTP server tutorial, which featured the discontinued http_server package, has been temporarily replaced by an “under construction” page that links to helpful documentation and samples.
    • The command-line tutorial has been completely updated.
  • Published some other new pages:
    • Null safety codelab teaches you about Dart’s null-safe type system, which was introduced in Dart 2.12.
    • Numbers in Dart has details about differences between native and web number implementations.
    • Using Google APIs points to resources to help you use Firebase and Google client APIs from a Dart app.
    • Writing package pages gives tips for writing a package README that works well on pub.dev.
    • Fixing type promotion failures has information to help you understand why type promotion failures occur, and gives tips on how to fix them.
    • The new dart run page describes how to run a Dart program from the command line.
  • Continued work on migrating code to null safety, in particular the streams tutorial.
  • Made miscellaneous other updates:
    • Removed references to Stagehand, in favor of dart create.
    • Changed analytics options for dart.dev example code from using pedantic to using the recommended rules in lints.
    • Added Docker as a way to get Dart.
    • Updated the language evolution page to reflect Dart 2.13.

Articles added to the Dart blog

We published the following articles on the Dart blog:

March 3, 2021: 2.12 release

This section lists notable changes made from October 2, 2020, through March 3, 2021. For details about the 2.12 release, see Announcing Dart 2.12.

Docs updated or added to dart.dev

In addition to bug fixes and incremental improvements, we made the following changes to this site:

We also switched from Travis CI to GitHub Actions, and we made multiple CSS changes to improve site legibility.

Articles added to the Dart blog

We published the following articles on the Dart blog:

October 1, 2020: 2.10 release

This section lists notable changes made from July 1 through October 1, 2020. For details about the 2.10 release, see Announcing Dart 2.10.

Docs updated or added to dart.dev

In addition to bug fixes and small improvements, we made the following changes to this site:

Articles added to the Dart blog

We published the following articles on the Dart blog:

We also improved the blog navigation, adding announcement and archive tabs, plus a link to dart.dev.