dart2_constant 1.0.1+dart2

  • README.md
  • Installing
  • Versions
  • new46

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 camelCase constants 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 library names:

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:io and dart:html. These are provided for compatibility with future SDK changes.

How It Works

Each version of dart2_constant has two releases, one tagged +dart1 that's only compatible SDKs that have old-style constants and one tagged +dart2 that's only compatible with SDKs that have new-style constants. As long as you depend on dart2_constant, pub's version solver will make sure your users get a version of it that works for them.

See Also

The dart2_fix package can be used to automatically migrate constant references from Dart 1 style to Dart 2 style. It doesn't currently support migrating to dart2_constant references, though.


  • Fix the homepage URL.


  • Initial version.

1. Depend on it

Add this to your package's pubspec.yaml file:

  dart2_constant: "^1.0.1+dart2"

2. Install it

You can install packages from the command line:

with pub:

$ pub get

Alternatively, your editor might support pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:

import 'package:dart2_constant/async.dart';

import 'package:dart2_constant/convert.dart';

import 'package:dart2_constant/core.dart';

import 'package:dart2_constant/developer.dart';

import 'package:dart2_constant/html.dart';

import 'package:dart2_constant/io.dart';

import 'package:dart2_constant/isolate.dart';

import 'package:dart2_constant/math.dart';

import 'package:dart2_constant/svg.dart';

import 'package:dart2_constant/typed_data.dart';

import 'package:dart2_constant/web_gl.dart';

import 'package:dart2_constant/web_sql.dart';
Version Uploaded Documentation Archive
1.0.1+dart2 Apr 3, 2018 Go to the documentation of dart2_constant 1.0.1+dart2 Download dart2_constant 1.0.1+dart2 archive
1.0.1+dart1 Apr 3, 2018 Go to the documentation of dart2_constant 1.0.1+dart1 Download dart2_constant 1.0.1+dart1 archive
1.0.0+dart2 Apr 2, 2018 Go to the documentation of dart2_constant 1.0.0+dart2 Download dart2_constant 1.0.0+dart2 archive
1.0.0+dart1 Apr 2, 2018 Go to the documentation of dart2_constant 1.0.0+dart1 Download dart2_constant 1.0.0+dart1 archive


We analyzed this package on Apr 23, 2018, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.0.0-dev.49.0
  • pana: 0.10.6


Describes how popular the package is relative to other packages. [more]
0 / 100
Code health derived from static analysis. [more]
100 / 100
Reflects how tidy and up-to-date the package is. [more]
80 / 100
Overall score:
Weighted score of the above. [more]
Learn more about scoring.


Detected platforms: unsure

Platform components identified in package: html, io, isolate.


  • Fix platform conflicts.

    Platform components identified in package: html, io, isolate.

  • The description is too short.

    Add more detail about the package, what it does and what is its target use case. Try to write at least 60 characters.

  • Fix analysis and formatting issues.

    Analysis or formatting checks reported 13 hints.

    Strong-mode analysis of lib/core.dart gave the following hint:

    line: 31 col: 16
    Name types using UpperCamelCase.

    Strong-mode analysis of lib/html.dart gave the following hint:

    line: 215 col: 31
    'XPathResult' is deprecated and shouldn't be used.

    Similar analysis of the following files failed:

    • lib/typed_data.dart (hint)
  • Maintain an example.

    Create a short demo in the example/ directory to show how to use this package. Common file name patterns include: main.dart, example.dart or you could also use dart2_constant.dart.


Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.0.0-dev.34.0 <2.0.0
Dev dependencies
analyzer >=0.30.0 <0.32.0
args ^1.0.0
dart_style ^1.0.0
path ^1.0.0