NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2181 most downloaded on npm
Formats ICU Message strings with number, date, plural, and select placeholders to create localized messages.
Last release 2 days ago
05 Oct 2026
Ships on a steady schedule
a new release about every 3 weeks
Most releases are documented
notes for 49 of the last 60 stable releases
3 versions withdrawn
withdrawn after publishing
13 years old
318 releases · first in 2014
Note: Version bump only for package intl-messageformat
Nothing published for this version
One column per quarter.
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
intl-messageformat: fix chrome v77 issue where NumberFormat.supportedLocalesOf(cy) broke
intl-messageformat: handle closing tag nested inside regular tag
Nothing published for this version
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
intl-messageformat-parser: throw when there are duplicates in select/plural, fix #168
Nothing published for this version
Nothing published for this version
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
intl-messageformat: filter out XML a bit more aggressively (36af40e), closes #148
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
intl-messageformat: fix empty value in formatting (9f820ea), closes #156
intl-messageformat: handle formatXMLMessage better
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
### Bug Fixes * generate lib instead of mjs
The following workspace dependencies were updated
Note: Version bump only for package intl-messageformat
Note: Version bump only for package @formatjs/cli
@formatjs/intl: support opt-in branded message text
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
### Bug Fixes * generate .mjs instead of lib
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
default message helpers to empty ICU contracts
\ we now use apostrophe which is more aligned with ICU4J & ICU4CNote: Version bump only for package @formatjs/cli
Note: Version bump only for package @formatjs/cli
Nothing published for this version
intl-messageformat: fix regex, fix #130
intl-messageformat: Include Date in PrimitiveType (1feca57), closes #127
intl-messageformat: fix formatXMLMessage w/o tag
Nothing published for this version
Nothing published for this version
Nothing published for this version
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Nothing published for this version
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Before:
complex_msg AST length 12567
normal_msg AST length 2638
simple_msg AST length 567
string_msg AST length 288
complex_msg x 3,405 ops/sec ±5.44% (81 runs sampled)
normal_msg x 27,513 ops/sec ±2.14% (87 runs sampled)
simple_msg x 113,043 ops/sec ±1.20% (89 runs sampled)
string_msg x 147,838 ops/sec ±0.78% (90 runs sampled)
After:
complex_msg AST length 2053
normal_msg AST length 410
simple_msg AST length 79
string_msg AST length 36
complex_msg x 3,926 ops/sec ±2.37% (90 runs sampled)
normal_msg x 27,641 ops/sec ±3.93% (86 runs sampled)
simple_msg x 100,764 ops/sec ±5.35% (79 runs sampled)
string_msg x 120,362 ops/sec ±7.11% (74 runs sampled)
feat: normalize hashtag token in plural
feat(intl-messageformat): adapt to new AST
feat(babel-plugin-react-intl): adapt to new AST
peerDependencies so if u use vue u should pull this in manuallywip on packaging cli.Nothing published for this version
Nothing published for this version
Nothing published for this version
Note: Version bump only for package intl-messageformat
Note: Version bump only for package @formatjs/cli
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
Nothing published for this version
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
getAst method (3d6c289)getAst method (3d6c289)Nothing published for this version
Nothing published for this version
Note: Version bump only for package intl-messageformat
Note: Version bump only for package intl-messageformat
intl-messageformat: fix #36 and config merging
intl-messageformat: fix #36 and config merging
Note: Version bump only for package @formatjs/cli
Nothing published for this version
Nothing published for this version
Nothing published for this version
@formatjs/intl: support opt-in branded message text
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →