Fix some style glitches with naming. The only publicly visible one is DateFormat.parseUtc, but the parseUTC variant is still retained for backward-compatibility.
Provide a better error message when generating translated versions and the name of a variable substitution in the message doesn't match the name in the translation.
Fix bug with per-mille parsing (only divided by 100, not 1000)
Support percent and per-mille formats with both positive and negative variations. Previously would throw an exception for too many modifiers.
Moved petitparser into a regular dependency so pub run works.
Improved code layout of the package.
Added a DateFormat.parseStrict method that rejects DateTimes with invalid values and requires it to be the whole string.
Missed canonicalization of locales in one place in message library generation.
Added a simple debug script for message_extraction_test.
Make message catalogs use deferred loading.
Update CLDR Data to version 25 for dates and numbers.
Update analyzer dependency to allow later versions.
Adds workaround for flakiness in DateTime creation, removes debugging code associated with that.
Allow NumberFormat constructor to take an optional currency name/symbol, so you can format for a particular locale without it dictating the currency, and also supply the currency symbols which we don't have yet.
Canonicalize locales more consistently, avoiding a number of problems if you use a non-canonical form.
For locales whose length is longer than 6 change “-” to “_” in position 3 when canonicalizing. Previously anything of length > 6 was left completely alone.
Add a “meaning” optional parameter for Intl.message to distinguish between two messages with identical text.
Handle two different messages with the same text.
Allow complex string literals in arguments (e.g. multi-line)