diff --git a/.changeset/README.md b/.changeset/README.md new file mode 100644 index 000000000..e5b6d8d6a --- /dev/null +++ b/.changeset/README.md @@ -0,0 +1,8 @@ +# Changesets + +Hello and welcome! This folder has been automatically generated by `@changesets/cli`, a build tool that works +with multi-package repos, or single-package repos to help you version and publish your code. You can +find the full documentation for it [in our repository](https://github.com/changesets/changesets) + +We have a quick list of common questions to get you started engaging with this project in +[our documentation](https://github.com/changesets/changesets/blob/main/docs/common-questions.md) diff --git a/.changeset/config.json b/.changeset/config.json new file mode 100644 index 000000000..0cfb8e18f --- /dev/null +++ b/.changeset/config.json @@ -0,0 +1,18 @@ +{ + "$schema": "https://unpkg.com/@changesets/config@3.0.5/schema.json", + "changelog": ["@changesets/changelog-github", { "repo": "lingui/js-lingui" }], + "commit": false, + "fixed": [["@lingui/*"]], + "linked": [], + "ignore": [ + "*", + "@lingui/remote-loader" + ], + "access": "public", + "baseBranch": "main", + "updateInternalDependencies": "patch", + "___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH": { + "onlyUpdatePeerDependentsWhenOutOfRange": true, + "updateInternalDependents": "always" + } +} diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml deleted file mode 100644 index a464566c7..000000000 --- a/.github/workflows/release.yml +++ /dev/null @@ -1,66 +0,0 @@ -name: release - -on: - workflow_dispatch: - inputs: - npmTag: - type: choice - description: 'NPM tag to release' - options: - - latest - - next - required: true - default: "latest" - -jobs: - release: - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - - name: Setup node - uses: actions/setup-node@v4 - with: - always-auth: true - node-version: 20 - cache: 'yarn' - scope: '@lingui' - - - name: Install dependencies if needed - run: yarn install - - - name: Build packages - run: yarn release:build - - - name: Unit Testing - run: yarn test:ci - - - name: Linting & Types - run: yarn lint:all - - - name: Creates local .npmrc - run: echo "//registry.npmjs.org/:_authToken=${{ secrets.NPM_TOKEN }}" > ~/.npmrc - - - name: Prepare Lingui-Bot git account - uses: oleksiyrudenko/gha-git-credentials@v2-latest - with: - name: 'Lingui Bot' - email: 'linguibot@gmail.com' - actor: 'lingui-bot' - token: '${{ secrets.GH_TOKEN }}' - - - name: Versioning packages - env: - GH_TOKEN: ${{ secrets.GH_TOKEN }} - run: yarn version:${{github.event.inputs.npmTag}} - - - name: Packaging packages with newer version - run: yarn release:build - - - name: Publishing packages - env: - GH_TOKEN: ${{ secrets.GH_TOKEN }} - run: yarn release:${{github.event.inputs.npmTag}} diff --git a/.github/workflows/version-next.yml b/.github/workflows/version-next.yml new file mode 100644 index 000000000..77c459eed --- /dev/null +++ b/.github/workflows/version-next.yml @@ -0,0 +1,40 @@ +name: Version (next) + +on: + push: + branches: + - next + +concurrency: ${{ github.workflow }}-${{ github.ref }} + +jobs: + release: + name: Version + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: 'yarn' + scope: '@lingui' + + - name: Install dependencies + run: yarn + + - name: Create Release Pull Request + uses: changesets/action@v1 + with: + version: yarn version:next + publish: yarn release:build && yarn release:next + createGithubReleases: false + branch: next + commit: "chore(release): bump next version [skip ci]" + title: "chore(release): bump next version" + env: + GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/.github/workflows/version.yml b/.github/workflows/version.yml new file mode 100644 index 000000000..8d2e7d5ff --- /dev/null +++ b/.github/workflows/version.yml @@ -0,0 +1,39 @@ +name: Version (latest) + +on: + push: + branches: + - main + +concurrency: ${{ github.workflow }}-${{ github.ref }} + +jobs: + release: + name: Version + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + + - name: Setup node + uses: actions/setup-node@v4 + with: + node-version: 20 + cache: 'yarn' + scope: '@lingui' + + - name: Install dependencies + run: yarn + + - name: Create Release Pull Request + uses: changesets/action@v1 + with: + version: yarn version:latest + publish: yarn release:build && yarn release:latest + createGithubReleases: true + commit: "chore(release): bump version [skip ci]" + title: "chore(release): bump version" + env: + GITHUB_TOKEN: ${{ secrets.GH_TOKEN }} + NPM_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index f55bc86de..000000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,1083 +0,0 @@ -# Change Log - -All notable changes to this project will be documented in this file. -See [Conventional Commits](https://conventionalcommits.org) for commit guidelines. - -# [5.2.0](https://github.com/lingui/js-lingui/compare/v5.1.2...v5.2.0) (2025-01-31) - -### Bug Fixes - -* Allow empty translations for pseudo locale in compile --strict ([#2129](https://github.com/lingui/js-lingui/issues/2129)) ([8cae5e0](https://github.com/lingui/js-lingui/commit/8cae5e0e5a4ab0ab9406aa1683b60a4796c2d9f2)) -* **core:** remove runtime whitespace trimming aligned with v5 ([#2169](https://github.com/lingui/js-lingui/issues/2169)) ([47a1ad7](https://github.com/lingui/js-lingui/commit/47a1ad71ced726b076d65c98537815b60ae8e9c7)) -* don't use anything from "@babel/types" in runtime ([#2132](https://github.com/lingui/js-lingui/issues/2132)) ([7ebb88d](https://github.com/lingui/js-lingui/commit/7ebb88dc79846839e0826d073cc0d830c09dda27)) -* **react:** remove children property from runtime Trans ([#2151](https://github.com/lingui/js-lingui/issues/2151)) ([7540adb](https://github.com/lingui/js-lingui/commit/7540adb0128f9acbff745251540e2d91f3cd683c)) - -### Features - -* add meaningful error when locale is not set ([#2131](https://github.com/lingui/js-lingui/issues/2131)) ([5ae8363](https://github.com/lingui/js-lingui/commit/5ae83630c5afe866b23c5739286eb09fdfe39b95)) -* add ph() and explicit labels for placeholders ([#2092](https://github.com/lingui/js-lingui/issues/2092)) ([2026c83](https://github.com/lingui/js-lingui/commit/2026c83dfa3b969cde30305d52821e561df996cf)) -* **react:** preserve newlines during string formatting ([#2158](https://github.com/lingui/js-lingui/issues/2158)) ([f0566fb](https://github.com/lingui/js-lingui/commit/f0566fbe56a1e66ebad23c2f205464972902e683)) -* support short/default/long/full date time formats ([#2117](https://github.com/lingui/js-lingui/issues/2117)) ([8020427](https://github.com/lingui/js-lingui/commit/802042743c60e28d62571a4b08437a7b275c8237)) - -## [5.1.2](https://github.com/lingui/js-lingui/compare/v5.1.1...v5.1.2) (2024-12-16) - -**Note:** Version bump only for package js-lingui-workspaces - -## [5.1.1](https://github.com/lingui/js-lingui/compare/v5.1.0...v5.1.1) (2024-12-16) - -**Note:** Version bump only for package js-lingui-workspaces - -# [5.1.0](https://github.com/lingui/js-lingui/compare/v5.0.0...v5.1.0) (2024-12-06) - -### Features - -- **react:** add support for React 19 ([#2111](https://github.com/lingui/js-lingui/issues/2111)) ([e93b73d](https://github.com/lingui/js-lingui/commit/e93b73d075165d91fa598fa0c579a8ceb5c86845)) -- **vite-plugin:** add support for vite@6 ([#2108](https://github.com/lingui/js-lingui/issues/2108)) ([38a0c6f](https://github.com/lingui/js-lingui/commit/38a0c6f8b7f4d961f1580228310f4ebe959eb5a5)) - -## [5.0.0](https://github.com/lingui/js-lingui/compare/v4.14.1...v5.0.0) (2024-11-28) - -We are pleased to announce the release of Lingui 5.0! This release is a **major milestone** for the project and includes a number of new features, improvements and bug fixes. - -Check out the links below for more details: - -- [Blog Post: Announcing Lingui 5.0](https://lingui.dev/blog/2024/11/28/announcing-lingui-5.0) -- [Migration Guide from 4.x to 5.x](https://lingui.dev/releases/migration-5) -- [Full Changelog](https://github.com/lingui/js-lingui/compare/v4.14.1...v5.0.0) - -## [4.14.1](https://github.com/lingui/js-lingui/compare/v4.14.0...v4.14.1) (2024-11-28) - -### Bug Fixes - -- don't report statistics for pseudo locale ([#2094](https://github.com/lingui/js-lingui/issues/2094)) ([113c05d](https://github.com/lingui/js-lingui/commit/113c05d91dba210b73444f4824c47d2709f8f5cf)) - -# [4.14.0](https://github.com/lingui/js-lingui/compare/v4.13.0...v4.14.0) (2024-11-07) - -### Bug Fixes - -- **extract:** when files are used, don't overwrite obsolete ([#1964](https://github.com/lingui/js-lingui/issues/1964)) ([e726b16](https://github.com/lingui/js-lingui/commit/e726b16a2a9299913d386489d92e0daa9c42e40d)) - -### Features - -- **format-po-gettext:** respect Plural-Forms header ([#2070](https://github.com/lingui/js-lingui/issues/2070)) ([5d0516e](https://github.com/lingui/js-lingui/commit/5d0516e5ee8de5bd4369e8760b4a5c77259853db)) - -# [4.13.0](https://github.com/lingui/js-lingui/compare/v4.12.0...v4.13.0) (2024-10-15) - -### Features - -- adds custom prefix support for gettext po ([#2004](https://github.com/lingui/js-lingui/issues/2004)) ([25b3bc6](https://github.com/lingui/js-lingui/commit/25b3bc60b6b793cd0ef15c25f760de9fef7a6750)) - -# [4.12.0](https://github.com/lingui/js-lingui/compare/v4.11.4...v4.12.0) (2024-10-11) - -### Bug Fixes - -- unicode parsing ([#2030](https://github.com/lingui/js-lingui/issues/2030)) ([0ac26cc](https://github.com/lingui/js-lingui/commit/0ac26ccf6c0fce7a25950f5643e2d9937dd0b031)) - -### Features - -- add metro transformer ([#1999](https://github.com/lingui/js-lingui/issues/1999)) ([cc7fe27](https://github.com/lingui/js-lingui/commit/cc7fe2744495e69984bf6839e217cb4216f004ce)) -- enable importAttributes and explicitResourceManagement for extractor ([#2009](https://github.com/lingui/js-lingui/issues/2009)) ([c20ce12](https://github.com/lingui/js-lingui/commit/c20ce12dbc3edaf476fd745df7e8f8b1390afe95)) - -## [4.11.4](https://github.com/lingui/js-lingui/compare/v4.11.3...v4.11.4) (2024-09-02) - -### Bug Fixes - -- **cli:** use caret range for `micromatch` dependency ([#2020](https://github.com/lingui/js-lingui/issues/2020)) ([be441e3](https://github.com/lingui/js-lingui/commit/be441e31ea1c5a0325f77402602f61c20a4aff4e)) -- escape nested brackets ([#2001](https://github.com/lingui/js-lingui/issues/2001)) ([6d00301](https://github.com/lingui/js-lingui/commit/6d0030146cc73f457e4cdcd1837f3d8f060d16fc)) -- return a single node when applicable ([#2016](https://github.com/lingui/js-lingui/issues/2016)) ([68d8358](https://github.com/lingui/js-lingui/commit/68d8358ff7bbb09de8953db9c7faf0a9a4e99d80)) -- run type tests in test:all ([#2017](https://github.com/lingui/js-lingui/issues/2017)) ([b9e89c1](https://github.com/lingui/js-lingui/commit/b9e89c17de2bdaaf64d3d40bd308777285ed2b1a)) - -## [4.11.3](https://github.com/lingui/js-lingui/compare/v4.11.2...v4.11.3) (2024-08-09) - -### Bug Fixes - -- **cli:** add pnpm detection to command suggestions ([#1989](https://github.com/lingui/js-lingui/issues/1989)) ([287a688](https://github.com/lingui/js-lingui/commit/287a68848d84134db10fbd373138ec8bbbf2889e)) -- **extract:** escape special regex characters used in file-based routing systems when files are passed in options ([#1984](https://github.com/lingui/js-lingui/issues/1984)) ([fd92d20](https://github.com/lingui/js-lingui/commit/fd92d203ba299816150556aee46620d2e3f7794a)) - -## [4.11.2](https://github.com/lingui/js-lingui/compare/v4.11.1...v4.11.2) (2024-07-03) - -### Bug Fixes - -- **cli:** update translationIO service in CLI package (to handle context) ([#1949](https://github.com/lingui/js-lingui/issues/1949)) ([ea7b9e7](https://github.com/lingui/js-lingui/commit/ea7b9e7154858960af29fc427ee2f64e2a96d425)) -- include type cast on ts compilation ([#1962](https://github.com/lingui/js-lingui/issues/1962)) ([0f66617](https://github.com/lingui/js-lingui/commit/0f6661799acfb62c4d169cacc8f6867278263f0e)) - -## [4.11.1](https://github.com/lingui/js-lingui/compare/v4.11.0...v4.11.1) (2024-05-30) - -### Bug Fixes - -- (lingui/core) i18n error if id is undefined ([#1938](https://github.com/lingui/js-lingui/issues/1938)) ([36c637a](https://github.com/lingui/js-lingui/commit/36c637a23a27d0933de0fd8978d72291792a3041)) - -# [4.11.0](https://github.com/lingui/js-lingui/compare/v4.10.1...v4.11.0) (2024-05-17) - -### Bug Fixes - -- default message extraction ([#1936](https://github.com/lingui/js-lingui/issues/1936)) ([8f1ddd7](https://github.com/lingui/js-lingui/commit/8f1ddd787b79510b112b87c21d4a23b875722edc)) -- exclude .scss files from extract-experimental build ([#1935](https://github.com/lingui/js-lingui/issues/1935)) ([d01fa96](https://github.com/lingui/js-lingui/commit/d01fa969622605e40f417a85b98bce1f88771445)) -- **message-utils:** correctly handle multi-digit complex argument cases ([#1937](https://github.com/lingui/js-lingui/issues/1937)) ([47a0dde](https://github.com/lingui/js-lingui/commit/47a0dded190fa990ea21239a464073348209b8f0)) - -### Features - -- **format-po:** configure header attributes in PO file formatter ([#1934](https://github.com/lingui/js-lingui/issues/1934)) ([d90f778](https://github.com/lingui/js-lingui/commit/d90f77813381e8a74dc9e16662a3ce384c683493)) - -## [4.10.1](https://github.com/lingui/js-lingui/compare/v4.10.0...v4.10.1) (2024-05-03) - -### Bug Fixes - -- **core:** pound symbol being replaced outside plural and selectordinal ([#1928](https://github.com/lingui/js-lingui/issues/1928)) ([e94c6fd](https://github.com/lingui/js-lingui/commit/e94c6fd9d1d8827f535a8ae8faa2d230e961ae9d)) - -# [4.10.0](https://github.com/lingui/js-lingui/compare/v4.8.0...v4.10.0) (2024-04-12) - -### Features - -- **react:** native support react RSC ([#1914](https://github.com/lingui/js-lingui/issues/1914)) ([0e94f2a](https://github.com/lingui/js-lingui/commit/0e94f2a5b7402b5197447932c6690502023b3c55)) - -# [4.9.0](https://github.com/lingui/js-lingui/compare/v4.8.0...v4.9.0) (2024-04-12) - -### Features - -- **react:** native support react RSC ([#1914](https://github.com/lingui/js-lingui/issues/1914)) ([0e94f2a](https://github.com/lingui/js-lingui/commit/0e94f2a5b7402b5197447932c6690502023b3c55)) - -# [4.8.0](https://github.com/lingui/js-lingui/compare/v4.7.2...v4.8.0) (2024-04-03) - -### Features - -- **react:** add "use client" for react bundle ([#1902](https://github.com/lingui/js-lingui/issues/1902)) ([5cf50ff](https://github.com/lingui/js-lingui/commit/5cf50ff22aa7424933bf0b875f0f483ce13d2967)) - -## [4.7.2](https://github.com/lingui/js-lingui/compare/v4.7.1...v4.7.2) (2024-03-26) - -### Bug Fixes - -- allow parentheses in catalog pathnames ([#1890](https://github.com/lingui/js-lingui/issues/1890)) ([d6b9698](https://github.com/lingui/js-lingui/commit/d6b969846d3ae8e676732a4485d5c0592b1e4108)) -- **typo:** Correct typo in build script of nextjs-swc example ([#1885](https://github.com/lingui/js-lingui/issues/1885)) ([7473bc4](https://github.com/lingui/js-lingui/commit/7473bc49f62e8990e8cf6310bbec91c76a2c09a7)) - -## [4.7.1](https://github.com/lingui/js-lingui/compare/v4.7.0...v4.7.1) (2024-02-20) - -### Bug Fixes - -- compile should generate a TS file ([#1851](https://github.com/lingui/js-lingui/issues/1851)) ([e4fbd59](https://github.com/lingui/js-lingui/commit/e4fbd59011064731473c3b476d9ae1c2ea7799ab)) -- **core:** use named instead of default export for unraw lib ([#1837](https://github.com/lingui/js-lingui/issues/1837)) ([85f0944](https://github.com/lingui/js-lingui/commit/85f094449ea1b8aa46339b2975b7e02fff4df234)) -- don't replace octothorpe coming from variable ([#1850](https://github.com/lingui/js-lingui/issues/1850)) ([e321729](https://github.com/lingui/js-lingui/commit/e321729702b117c8cfea5ae861cf3767030cc9c4)) - -# [4.7.0](https://github.com/lingui/js-lingui/compare/v4.6.0...v4.7.0) (2024-01-05) - -### Bug Fixes - -- allow parentheses in catalog pathnames ([#1820](https://github.com/lingui/js-lingui/issues/1820)) ([f5fae0e](https://github.com/lingui/js-lingui/commit/f5fae0ed69ccb91bdd80343686dec2a231aa7657)) -- double render due to wrong assertion ([#1817](https://github.com/lingui/js-lingui/issues/1817)) ([8830f2e](https://github.com/lingui/js-lingui/commit/8830f2eb69a39eb22131e8b554913b5fe2fc1165)) -- double render due to wrong assertion ([#1824](https://github.com/lingui/js-lingui/issues/1824)) ([bd8ad11](https://github.com/lingui/js-lingui/commit/bd8ad11b34b7784d767bce1256d1e845b0e6bdb3)) -- warnings about invalid dependencies on Windows ([#1828](https://github.com/lingui/js-lingui/issues/1828)) ([5f07937](https://github.com/lingui/js-lingui/commit/5f0793746af292a994ba24ead45af9cda40792d3)) - -### Features - -- **vite-plugin:** add support for vite@5 ([#1827](https://github.com/lingui/js-lingui/issues/1827)) ([5548d26](https://github.com/lingui/js-lingui/commit/5548d26194296fdc0c02c1b4f2c5bbda5c94db0b)) - -# [4.6.0](https://github.com/lingui/js-lingui/compare/v4.5.0...v4.6.0) (2023-12-01) - -### Bug Fixes - -- **cli:** import type as type ([#1802](https://github.com/lingui/js-lingui/issues/1802)) ([960aadb](https://github.com/lingui/js-lingui/commit/960aadb65f355e79af528d76549a480b0a2de4aa)) -- **cli:** sorting issue when different locales are used on host machines ([#1808](https://github.com/lingui/js-lingui/issues/1808)) ([4b8b2a7](https://github.com/lingui/js-lingui/commit/4b8b2a79e667a2959fea230b4bb897d2ed13bd08)) -- **experimental-extractor:** fix ERR_IMPORT_ASSERTION_TYPE_MISSING issue ([#1775](https://github.com/lingui/js-lingui/issues/1775)) ([efcd405](https://github.com/lingui/js-lingui/commit/efcd4051fbada719d69088107d8a6da0ad61daeb)) - -### Features - -- **format-json:** ability to set indentation ([#1807](https://github.com/lingui/js-lingui/issues/1807)) ([6ee7e63](https://github.com/lingui/js-lingui/commit/6ee7e63631387b634f0b3e753dae4417c27b7744)) -- **message-utils:** make generateMessageId to be working in browser ([#1776](https://github.com/lingui/js-lingui/issues/1776)) ([f879ddb](https://github.com/lingui/js-lingui/commit/f879ddbbc4627f94c579e0156958b4ec4026e371)) - -### Reverts - -- Revert "docs: add the ESLint plugin announcement (#1759)" (#1774) ([e7a36d1](https://github.com/lingui/js-lingui/commit/e7a36d1e562992dcea3e632c35303b9bb70dcea8)), closes [#1759](https://github.com/lingui/js-lingui/issues/1759) [#1774](https://github.com/lingui/js-lingui/issues/1774) - -# [4.5.0](https://github.com/lingui/js-lingui/compare/v4.4.2...v4.5.0) (2023-09-14) - -### Features - -- **react:** export react server sub-entry ([#1762](https://github.com/lingui/js-lingui/issues/1762)) ([fa77d82](https://github.com/lingui/js-lingui/commit/fa77d82fb6595b7785aacb492558a7c69fad0d1b)) - -## [4.4.2](https://github.com/lingui/js-lingui/compare/v4.4.1...v4.4.2) (2023-08-31) - -### Reverts - -- Revert "refactor: use useSyncExternalStore to subscribe for context updates (#1746)" (#1755) ([4164893](https://github.com/lingui/js-lingui/commit/416489351bc7e9ce6d0712064528e44dbd512d06)), closes [#1746](https://github.com/lingui/js-lingui/issues/1746) [#1755](https://github.com/lingui/js-lingui/issues/1755) - -## [4.4.1](https://github.com/lingui/js-lingui/compare/v4.4.0...v4.4.1) (2023-08-30) - -### Bug Fixes - -- export ts types from detect-locale ([#1742](https://github.com/lingui/js-lingui/issues/1742)) ([4af4448](https://github.com/lingui/js-lingui/commit/4af4448b001cee17240ec1c4e27d86d515c4db1e)) - -### Features - -- RSpack + Lingui Example ([#1752](https://github.com/lingui/js-lingui/issues/1752)) ([87ffe72](https://github.com/lingui/js-lingui/commit/87ffe726f32601a82a268f6cd9c14170b370901d)) - -# [4.4.0](https://github.com/lingui/js-lingui/compare/v4.3.0...v4.4.0) (2023-08-08) - -### Bug Fixes - -- **webpack-loader:** fix invalid dependencies have been reported by p… ([#1735](https://github.com/lingui/js-lingui/issues/1735)) ([1521ae7](https://github.com/lingui/js-lingui/commit/1521ae719dad110ffeb6b2f9c8fae6e522b27bfd)) - -### Features - -- memoizable react translations ([#1721](https://github.com/lingui/js-lingui/issues/1721)) ([96e7def](https://github.com/lingui/js-lingui/commit/96e7defbb408998593936de473b146cb3886ec38)) - -# [4.3.0](https://github.com/lingui/js-lingui/compare/v4.2.1...v4.3.0) (2023-06-29) - -### Bug Fixes - -- **format-po-gettext:** bad return during mapping with `serializePlurals` ([#1707](https://github.com/lingui/js-lingui/issues/1707)) ([993bd2a](https://github.com/lingui/js-lingui/commit/993bd2ad5c864fc2fde89986feb7fe55ef55af92)) - -### Features - -- allow comment prop on react Trans component ([#1718](https://github.com/lingui/js-lingui/issues/1718)) ([3477c32](https://github.com/lingui/js-lingui/commit/3477c321b05d164f86e00bbd5dfafe8cc48e0c6c)) -- **extractor:** expose extractFromFileWithBabel function for better flexibility ([#1719](https://github.com/lingui/js-lingui/issues/1719)) ([43486dc](https://github.com/lingui/js-lingui/commit/43486dc2bfa834bbe4d197f9e8cc3145c50d9d97)) -- **vite-plugin:** report user-friendly error when macro used without transformation ([#1720](https://github.com/lingui/js-lingui/issues/1720)) ([53f6a7c](https://github.com/lingui/js-lingui/commit/53f6a7c8adccb78536c3283bad2d9c7752d58ca9)) - -## [4.2.1](https://github.com/lingui/js-lingui/compare/v4.2.0...v4.2.1) (2023-06-07) - -### Bug Fixes - -- **core:** don't crash on escaped unicode symbols in messages ([#1692](https://github.com/lingui/js-lingui/issues/1692)) ([461c2fc](https://github.com/lingui/js-lingui/commit/461c2fc533647a877ea3a9b14e81544049e4e2b2)) -- **extractor:** support jsx in js files ([#1678](https://github.com/lingui/js-lingui/issues/1678)) ([e335458](https://github.com/lingui/js-lingui/commit/e335458c2c321a500c5b3ff8e82c338b0d507795)) - -# [4.2.0](https://github.com/lingui/js-lingui/compare/v4.1.2...v4.2.0) (2023-05-26) - -### Bug Fixes - -- fallback to `other` only when undefined ([#1665](https://github.com/lingui/js-lingui/issues/1665)) ([a79de75](https://github.com/lingui/js-lingui/commit/a79de757df14249f76945da9fd9ce529129f2269)) -- **webpack + vite:** fix dependency watching in loader ([#1671](https://github.com/lingui/js-lingui/issues/1671)) ([f06cdf5](https://github.com/lingui/js-lingui/commit/f06cdf51cee400903b7f8c84dbbaac0499c3e5c7)) - -### Features - -- **po-format:** add `explicitIdAsDefault` for po-format for easier migration ([#1672](https://github.com/lingui/js-lingui/issues/1672)) ([3303228](https://github.com/lingui/js-lingui/commit/3303228c16b490e55801bf182ca5898b84f651fd)) - -## [4.1.2](https://github.com/lingui/js-lingui/compare/v4.1.1...v4.1.2) (2023-05-17) - -### Bug Fixes - -- **webpack + vite:** fix dependency watching in loader ([#1662](https://github.com/lingui/js-lingui/issues/1662)) ([ce660d7](https://github.com/lingui/js-lingui/commit/ce660d7a3e37defda5f5708be5f14f1cd1bcb816)) - -## [4.1.1](https://github.com/lingui/js-lingui/compare/v4.1.0...v4.1.1) (2023-05-17) - -### Bug Fixes - -- **message-utils:** workaround package.json exports field for older runtimes ([#1657](https://github.com/lingui/js-lingui/issues/1657)) ([e3ff138](https://github.com/lingui/js-lingui/commit/e3ff1382e169f20d453d0ef35c0204e01e2dc752)) - -# [4.1.0](https://github.com/lingui/js-lingui/compare/v4.0.0...v4.1.0) (2023-05-15) - -### Bug Fixes - -- format should follow locale order ([#1619](https://github.com/lingui/js-lingui/issues/1619)) ([4d53b7b](https://github.com/lingui/js-lingui/commit/4d53b7b64f11968dca8332655a03237d70c6eb6e)) -- just use require to import services ([#1647](https://github.com/lingui/js-lingui/issues/1647)) ([388c77b](https://github.com/lingui/js-lingui/commit/388c77b30e3cd17253dec0490ab2231180511dd6)) -- **message-utils:** workaround package.json exports field ([#1650](https://github.com/lingui/js-lingui/issues/1650)) ([3bee00c](https://github.com/lingui/js-lingui/commit/3bee00ccf4ca722173079601c663891708f5eb25)) -- react macro types ([#1620](https://github.com/lingui/js-lingui/issues/1620)) ([8a48b9f](https://github.com/lingui/js-lingui/commit/8a48b9fb688ecbd161310a0a4ab7b3c5f94b1154)) -- **vue-extractor:** don't crash when there is no