On June 27, Dart Team released the Dart 2.4 SDK, which includes improvements to the core library, the Dart for Web compiler, and tools.

Core library

dart:isolate

  1. TransferableTypedData: This class was added to make the quarantineUint8ListData communicates faster.
  2. Isolate.resolvePackageUri: in the use ofdart2jsorDDC(Dart Dev Compile)Always thrown at compile timeUnsupportedError.

dart:developer

  1. ServiceExtensionResponse: allows better debuggingVMService extensionRPCThe results.

dart:io

  1. Repair theCookieClass interoperability with certain sites is allowedcookieValue is an empty string;
  2. HttpClientResponseA new interface has been addedcompressionState getterHas been extended to thegetterSpecifies whether the body of the response is compressed when received, and whether it has passedHttpClient.autoUncompressAutomatic decompression. As part of this change, thedart:ioThe corresponding new enumeration has been added to:HttpClientResponseCompressionState;

dart:async

  1. Due to theStreamIteratorClass error, allowedwait forthenulL is the flow. thisbugIt has now been fixed.

dart:core

  1. The RegExp interface has been extended to provide constructors for two newly named parameters:

    • Unicode: (bool, default: false), used in Unicode mode;
    • DotAll: (bool, default: false), change the matching behavior of ‘.’;

Dart for the Web

Dart Dev Compiler (DDC)

Improved the type of NoSuchMethod errors thrown for dynamic call failures. Now, they contain specific information about the nature of the error, such as:

  1. Attempted to call a null value.
  2. usenull callMethod calls an object instance.
  3. Too few or too many parameters are passed.
  4. Incorrect named parameter passed.
  5. Type parameters are passed to non-generic methods.

Tools

1.Linter: updated to 0.1.91 with numerous bug fixes;

2.Pub: Pub publish will no longer warn about missing dependencies in the example/ import statement. OAuth2 authentication will explicitly require the OpenID range.