github formatjs/formatjs formatjs_cli_v1.6.2
formatjs_cli: 1.6.2

4 hours ago

1.6.2 (2026-09-10)

What's Changed

  • fix(formatjs_cli): extract messages from tagged template literals by @vpontis in #7182
  • docs: track ECMA-402 draft polyfill audit by @longlho in #7185
  • docs: link ECMA-402 audit fixes and validation by @longlho in #7200
  • codex/ecma402 coercion by @longlho in #7186
  • fix(@formatjs/intl-supportedvaluesof): coerce keys before lookup by @longlho in #7187
  • fix(@formatjs/intl-listformat): follow the string iterator protocol by @longlho in #7189
  • fix(deps): negotiate well-formed numbering system options by @longlho in #7190
  • fix(@formatjs/intl-collator): validate collation and comparison inputs by @longlho in #7191
  • fix(@formatjs/intl-datetimeformat): reject offsets containing seconds by @longlho in #7192
  • fix(@formatjs/intl-displaynames): validate and canonicalize display codes by @longlho in #7193
  • fix(@formatjs/intl-durationformat): validate duration records exactly by @longlho in #7194
  • fix(@formatjs/intl-locale): canonicalize weekday and numeric options by @longlho in #7195
  • fix(@formatjs/intl-locale): align week info with ECMA-402 by @longlho in #7196
  • fix(@formatjs/intl-pluralrules): align draft options and ranges by @longlho in #7197
  • fix(@formatjs/intl-segmenter): preserve iterator progress and locale by @longlho in #7198
  • fix(@formatjs/intl-getcanonicallocales): follow locale-list coercion by @longlho in #7199
  • fix(@formatjs/intl-numberformat): accept callable option objects by @longlho in #7201
  • fix(@formatjs/intl-segmenter): reject coerced BigInt indices by @longlho in #7202
  • test(@formatjs/intl-numberformat): enforce Test262 result accounting by @longlho in #7209
  • test(@formatjs/intl-numberformat): cover complete current Test262 suites by @longlho in #7210
  • fix(@formatjs/intl-numberformat): omit NaN sign with exceptZero by @longlho in #7212
  • test: use generated Test262 harness rules by @longlho in #7216
  • fix(@formatjs/intl-numberformat): reject undefined range endpoints by @longlho in #7226
  • fix(@formatjs/intl-numberformat): preserve Symbol coercion errors by @longlho in #7227
  • codex/test262 numberformat option validation by @longlho in #7228
  • fix(@formatjs/intl-listformat): preserve language data when loading root locale by @longlho in #7229
  • fix(@formatjs/intl-locale): enforce internal receiver branding by @longlho in #7231
  • fix(@formatjs/intl-collator): match built-in function descriptors by @longlho in #7232
  • fix(@formatjs/intl-numberformat): make built-in methods non-constructible by @longlho in #7233
  • fix(@formatjs/intl-numberformat): account for significant precision in rounding magnitude by @longlho in #7234
  • fix(@formatjs/intl-numberformat): validate internal receiver branding by @longlho in #7235
  • fix(@formatjs/intl-datetimeformat): truncate fractional timestamps toward zero by @longlho in #7236
  • fix(@formatjs/intl-datetimeformat): match built-in method metadata by @longlho in #7238
  • test(deps): run Test262 with stable Temporal support by @longlho in #7240
  • fix(@formatjs/intl-durationformat): match built-in metadata and option order by @longlho in #7241
  • fix(@formatjs/intl-durationformat): display the duration sign once by @longlho in #7242
  • fix(@formatjs/intl-durationformat): preserve exact numeric duration formatting by @longlho in #7243
  • fix(@formatjs/intl-durationformat): propagate numeric unit styles by @longlho in #7244
  • fix(@formatjs/intl-durationformat): retain zero minutes between numeric fields by @longlho in #7245
  • fix(@formatjs/intl-localematcher): preserve supported requested locale tags by @longlho in #7247
  • fix(@formatjs/intl-supportedvaluesof): make the built-in non-constructible by @longlho in #7248
  • fix(@formatjs/intl-numberformat): preserve resolved option property order by @longlho in #7249
  • fix(@formatjs/intl-relativetimeformat): isolate internal formatter options by @longlho in #7250
  • fix(@formatjs/intl-localematcher): isolate locale resolution records by @longlho in #7251
  • fix(@formatjs/intl-locale): use standard locale tag coercion by @longlho in #7252
  • fix(@formatjs/intl-locale): support the variants constructor option by @longlho in #7253
  • fix(@formatjs/intl-locale): canonicalize before applying locale overrides by @longlho in #7254
  • fix(@formatjs/intl-locale): minimize maximized locale components by @longlho in #7255
  • feat(@formatjs/editor): add headless React 19 editor with StyleX UI by @longlho in #7223
  • fix(@formatjs/intl-locale): honor region preference priority by @longlho in #7257
  • fix(@formatjs/intl-locale): expose canonical option values by @longlho in #7258
  • fix(@formatjs/intl-locale): follow likely-subtag lookup order by @longlho in #7259
  • fix(@formatjs/intl-durationformat): resolve supported numbering systems by @longlho in #7260
  • fix(@formatjs/intl-durationformat): accept Temporal duration inputs by @longlho in #7261
  • fix(@formatjs/intl-displaynames): accept extended language subtags by @longlho in #7262
  • fix(@formatjs/intl-supportedvaluesof): include fixed-offset time zones by @longlho in #7263
  • fix(@formatjs/intl-collator): preserve locale punctuation defaults by @longlho in #7264
  • fix(@formatjs/intl-collator): exclude root from locale negotiation by @longlho in #7265
  • fix(@formatjs/intl-localematcher): respect Unicode extension boundaries by @longlho in #7266
  • fix(@formatjs/intl-collator): resolve canonical collation types by @longlho in #7267
  • fix(@formatjs/intl-collator): select search collation tailoring by @longlho in #7268
  • feat(@formatjs/editor): add headless translation workflow by @pgonsolin in #7157
  • fix(@formatjs/intl-supportedvaluesof): probe locale-specific collations by @longlho in #7269
  • fix(@formatjs/intl-datetimeformat): handle exact date range boundaries by @longlho in #7270
  • fix(@formatjs/intl-datetimeformat): validate receiver internal slots by @longlho in #7271
  • fix(@formatjs/intl-datetimeformat): align option property metadata by @longlho in #7272
  • fix(@formatjs/intl-datetimeformat): format year zero in the BC era by @longlho in #7273
  • fix(@formatjs/intl-datetimeformat): normalize timezone inputs by @longlho in #7274
  • fix(@formatjs/intl-datetimeformat): isolate option records by @longlho in #7275
  • fix(@formatjs/intl-datetimeformat): support all hour-cycle options by @longlho in #7276
  • fix(@formatjs/intl-datetimeformat): select independent hour12 preferences by @longlho in #7277
  • fix(@formatjs/intl-getcanonicallocales): canonicalize locale extensions by @longlho in #7278
  • fix(@formatjs/intl-getcanonicallocales): resolve subdivision aliases by @longlho in #7279
  • fix(@formatjs/intl-getcanonicallocales): apply compound language aliases by @longlho in #7280
  • fix(@formatjs/intl-getcanonicallocales): append list elements directly by @longlho in #7281
  • codex/editor es2016 compatibility by @longlho in #7286
  • test(deps): cover combined polyfill installation by @longlho in #7282
  • test(deps): load required Test262 locale fixtures by @longlho in #7284
  • fix(@formatjs/intl-getcanonicallocales): preserve RegExp statics by @longlho in #7287
  • fix(@formatjs/intl-displaynames): use canonical calendar data keys by @longlho in #7288
  • fix(@formatjs/intl-numberformat): isolate internal plural options by @longlho in #7290
  • fix(@formatjs/intl-numberformat): honor locale grouping minimums by @longlho in #7291
  • fix(@formatjs/intl-datetimeformat): reuse parsed pattern fields by @longlho in #7292
  • fix(@formatjs/intl-datetimeformat): match hourless time requests by @longlho in #7293
  • fix(@formatjs/intl-datetimeformat): support ISO calendar negotiation by @longlho in #7294
  • fix(@formatjs/intl-pluralrules): generate compact exponent data by @longlho in #7295
  • fix(formatjs_cli): preserve IDs for empty descriptions by @longlho in #7296
  • fix(@formatjs/intl-datetimeformat): compare ranges at displayed precision by @longlho in #7297
  • fix(@formatjs/intl-datetimeformat): format flexible day periods by @longlho in #7298
  • fix(deps): preserve polyfill locale data during registration by @longlho in #7299
  • fix(@formatjs/intl-segmenter): register CLDR locale coverage by @longlho in #7300
  • fix(@formatjs/intl-numberformat): preserve range separators and affixes by @longlho in #7301
  • fix(@formatjs/intl-numberformat): place approximate signs in locale patterns by @longlho in #7302
  • fix(@formatjs/intl-numberformat): share signs with range unit suffixes by @longlho in #7303
  • fix(@formatjs/intl-numberformat): repair benchmark entrypoints by @longlho in #7304
  • fix(@formatjs/intl-numberformat): preserve supplementary digits when grouping by @longlho in #7305
  • fix(@formatjs/intl-numberformat): generate complete CLDR digit mappings by @longlho in #7306
  • feat(@formatjs/editor): publish headless editor package by @longlho in #7285
  • fix(deps): consolidate polyfill conformance and performance fixes by @longlho in #7320
  • fix(@formatjs/editor): bootstrap the headless editor release by @longlho in #7321

New Contributors

Full Changelog: formatjs_cli_v1.6.1...formatjs_cli_v1.6.2

Binaries

  • macOS Apple Silicon: formatjs_cli-darwin-arm64
  • Linux ARM64: formatjs_cli-linux-arm64
  • Linux x86_64: formatjs_cli-linux-x64
  • Windows x64: formatjs_cli-win32-x64.exe

Installation

# macOS (Apple Silicon)
curl -LO https://github.com/formatjs/formatjs/releases/download/formatjs_cli_v1.6.2/formatjs_cli-darwin-arm64
chmod +x formatjs_cli-darwin-arm64
sudo mv formatjs_cli-darwin-arm64 /usr/local/bin/formatjs

# Linux
curl -LO https://github.com/formatjs/formatjs/releases/download/formatjs_cli_v1.6.2/formatjs_cli-linux-x64
chmod +x formatjs_cli-linux-x64
sudo mv formatjs_cli-linux-x64 /usr/local/bin/formatjs

# Linux ARM64
curl -LO https://github.com/formatjs/formatjs/releases/download/formatjs_cli_v1.6.2/formatjs_cli-linux-arm64
chmod +x formatjs_cli-linux-arm64
sudo mv formatjs_cli-linux-arm64 /usr/local/bin/formatjs
# Windows x64 (PowerShell)
curl.exe -LO https://github.com/formatjs/formatjs/releases/download/formatjs_cli_v1.6.2/formatjs_cli-win32-x64.exe

Verification

Verify the checksums:

curl -LO https://github.com/formatjs/formatjs/releases/download/formatjs_cli_v1.6.2/checksums.txt
shasum -a 256 -c checksums.txt

Don't miss a new formatjs release

NewReleases is sending notifications on new releases.