This package is a polyfill for the core library constant names that are changing from Dart 1 to Dart 2.
In Dart 1, all core library constants were in
SCREAMING_CAPS. In Dart 2,
they're being changed to
camelCase. This package makes it possible for
packages to support both Dart 1 and Dart 2 by providing
that work on all versions of Dart.
This package has a library for each library
dart: library that contained
constants in Dart 1. These libraries contain only constants, using the Dart 2
names. They should be imported using a prefix so as to avoid colliding with core
import 'package:dart2_constant/convert.dart' as convert; String decodeUtf8(List<int> bytes) => convert.utf8.decode(bytes);
Note that this even supports constants that haven't yet migrated in the core
libraries, such as those in
dart:html. These are provided for
compatibility with future SDK changes.
How It Works
Each version of
dart2_constant has two releases, one tagged
only compatible SDKs that have old-style constants and one tagged
that's only compatible with SDKs that have new-style constants. As long as you
dart2_constant, pub's version solver will make sure your users get
a version of it that works for them.