Skip to content

v4.0.0

Compare
Choose a tag to compare
@andrii-bodnar andrii-bodnar released this 26 Apr 09:30
· 196 commits to main since this release
9989963

v4.0.0 (2023-04-26)

Changelog

Features

  • Hash-based message ID + Context (#1440)
  • Custom Formatters
  • Custom Extractors
  • Message Extraction guide, experimental dependency tree crawling
  • Vue.js Extractor
  • macro: support JSX macro inside conditional expressions (#1436)
  • macro: support renamed identifiers in macro (#1463)
  • extractor: (Experimental): Deps extractor (#1469)
  • core (Experimental): add new core API for Node/JS usage without macros (#1564)
  • core: support extracting from all forms of i18n._ / i18n.t calls (#1586)
  • extractor: support TS experimental decorators (#1517)
  • webpack-loader: support JSON catalogs (#1525)
  • formats: extract formats into separate packages (#1536)
  • macro: support tagged templates in defineMessage + short alias (#1495)
  • conf: clarify the order by messageId and support order by message (#1515)
  • extractor: allow i18._(foo.bar) without warning (#1492)
  • core: add i18n.setCatalogAndActivate for easier nextjs integration (#1541)
  • macro: allow passing any expression as custom i18n instance (#1475)
  • extractor: respect sourcemaps (#1459)
  • examples: update examples (nextjs-babel, nextjs-swc, js, create-react-app) (#1550)
  • examples: add vite-react-babel example (#1558)

Fixes and refactoring

  • always honor process.env.LINGUI_CONFIG (#1447)
  • core: use Intl.PluralRules instead of i18n.loadLocaleData (#1486)
  • core: do not ignore empty plural values (#1504)
  • macro: expression only choices / select options (#1523)
  • macro: mark other as required for ChoiceOptions (#1527)
  • react: remove deprecated defaultProps from Trans component (#1494)
  • cli: exclude pseudo locale during sync (#1455)
  • react: do not remount children of I18nProvider (#1501)
  • react: support array of react components in values (#1593)
  • build: migrate to unbuild (#1545)

Breaking Changes

  • extractor/babel: non-fragile babel extractor options (#1367)
  • extractor: don't use intermediate catalogs (#1358)
  • macro: Trans inside Plural has leading whitespace (#1437)
  • react: remove withI18n (#1503)
  • macro: remove arg macro (#1581)
  • delete Snowpack plugin (#1532)

Links

Credits

@thekip @taozhou-glean @vonovak @j4hr3n @bravo-kernel @andrii-bodnar @Martin005 @janicduplessis