Skip to content

build(deps): bump the lingui group with 6 updates - #1912

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/lingui-7aaeaea73e
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/lingui-7aaeaea73e

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 24, 2026 •

Copy link
Copy Markdown
Contributor

Bumps the lingui group with 6 updates:

Package From To
@lingui/babel-plugin-lingui-macro 6.4.0 6.6.0
@lingui/cli 6.4.0 6.6.0
@lingui/core 6.4.0 6.6.0
@lingui/format-po 6.4.0 6.6.0
@lingui/react 6.4.0 6.6.0
@lingui/vite-plugin 6.4.0 6.6.0

Updates @lingui/babel-plugin-lingui-macro from 6.4.0 to 6.6.0

Release notes

Sourced from @​lingui/babel-plugin-lingui-macro's releases.

v6.6.0

6.6.0 (2026-07-24)

Features

  • babel-plugin-lingui-macro: add nested msg and t support (#2625) (eb1fbec)
  • babel-plugin: support Babel 8 via peer dependencies (#2623) (c979f86)

Bug Fixes

  • babel-plugin-lingui-macro: unwrap non-null assertion (x!) and satisfies in placeholders (#2622) (d0479ad)
  • cli: preserve bracketed names in catalog globs (#2621) (3c2f987)
  • improved error message for "useLingui hook was used without I18nProvider" (#2624) (bcee1df)
  • react: use sync external store for i18n provider (#2612) (b4be90d)

v6.5.0

6.5.0 (2026-07-06)

Features

Bug Fixes

  • don't warn about missing id when a spread is present (#2581) (b1b9480)
Changelog

Sourced from @​lingui/babel-plugin-lingui-macro's changelog.

6.6.0 (2026-07-24)

Bug Fixes

  • babel-plugin-lingui-macro: unwrap non-null assertion (x!) and satisfies in placeholders (#2622) (d0479ad)

Features

  • babel-plugin-lingui-macro: add nested msg and t support (#2625) (eb1fbec)
  • babel-plugin: support Babel 8 via peer dependencies (#2623) (c979f86)

6.5.0 (2026-07-06)

Note: Version bump only for package @​lingui/babel-plugin-lingui-macro

Commits
  • 665a198 chore(release): published v6.6.0 [skip ci] (#2626)
  • eb1fbec feat(babel-plugin-lingui-macro): add nested msg and t support (#2625)
  • c979f86 feat(babel-plugin): support Babel 8 via peer dependencies (#2623)
  • d0479ad fix(babel-plugin-lingui-macro): unwrap non-null assertion (x!) and `satisfi...
  • b5da8cf docs: add deprecation and add vite rolldown docs (#2611)
  • 9687149 chore(release): published v6.5.0 [skip ci] (#2608)
  • 0e48243 chore: bump the root-and-package-dev-dependencies group across 4 directories ...
  • See full diff in compare view

Updates @lingui/cli from 6.4.0 to 6.6.0

Release notes

Sourced from @​lingui/cli's releases.

v6.6.0

6.6.0 (2026-07-24)

Features

  • babel-plugin-lingui-macro: add nested msg and t support (#2625) (eb1fbec)
  • babel-plugin: support Babel 8 via peer dependencies (#2623) (c979f86)

Bug Fixes

  • babel-plugin-lingui-macro: unwrap non-null assertion (x!) and satisfies in placeholders (#2622) (d0479ad)
  • cli: preserve bracketed names in catalog globs (#2621) (3c2f987)
  • improved error message for "useLingui hook was used without I18nProvider" (#2624) (bcee1df)
  • react: use sync external store for i18n provider (#2612) (b4be90d)

v6.5.0

6.5.0 (2026-07-06)

Features

Bug Fixes

  • don't warn about missing id when a spread is present (#2581) (b1b9480)
Changelog

Sourced from @​lingui/cli's changelog.

6.6.0 (2026-07-24)

Bug Fixes

  • cli: preserve bracketed names in catalog globs (#2621) (3c2f987)

6.5.0 (2026-07-06)

Features

  • add pseudolocalize options (#2583) (3547688)
  • experimental-extractor: pluggable bundler interface + rolldown support (#2572) (06940ed)
Commits
  • 665a198 chore(release): published v6.6.0 [skip ci] (#2626)
  • 3c2f987 fix(cli): preserve bracketed names in catalog globs (#2621)
  • 9687149 chore(release): published v6.5.0 [skip ci] (#2608)
  • 0e48243 chore: bump the root-and-package-dev-dependencies group across 4 directories ...
  • 3547688 feat: add pseudolocalize options (#2583)
  • 8aa816a chore(cli): raise esbuild dependency floor (#2604)
  • 06940ed feat(experimental-extractor): pluggable bundler interface + rolldown support ...
  • See full diff in compare view

Updates @lingui/core from 6.4.0 to 6.6.0

Release notes

Sourced from @​lingui/core's releases.

v6.6.0

6.6.0 (2026-07-24)

Features

  • babel-plugin-lingui-macro: add nested msg and t support (#2625) (eb1fbec)
  • babel-plugin: support Babel 8 via peer dependencies (#2623) (c979f86)

Bug Fixes

  • babel-plugin-lingui-macro: unwrap non-null assertion (x!) and satisfies in placeholders (#2622) (d0479ad)
  • cli: preserve bracketed names in catalog globs (#2621) (3c2f987)
  • improved error message for "useLingui hook was used without I18nProvider" (#2624) (bcee1df)
  • react: use sync external store for i18n provider (#2612) (b4be90d)

v6.5.0

6.5.0 (2026-07-06)

Features

Bug Fixes

  • don't warn about missing id when a spread is present (#2581) (b1b9480)
Changelog

Sourced from @​lingui/core's changelog.

6.6.0 (2026-07-24)

Note: Version bump only for package @​lingui/core

6.5.0 (2026-07-06)

Note: Version bump only for package @​lingui/core

Commits

Updates @lingui/format-po from 6.4.0 to 6.6.0

Release notes

Sourced from @​lingui/format-po's releases.

v6.6.0

6.6.0 (2026-07-24)

Features

  • babel-plugin-lingui-macro: add nested msg and t support (#2625) (eb1fbec)
  • babel-plugin: support Babel 8 via peer dependencies (#2623) (c979f86)

Bug Fixes

  • babel-plugin-lingui-macro: unwrap non-null assertion (x!) and satisfies in placeholders (#2622) (d0479ad)
  • cli: preserve bracketed names in catalog globs (#2621) (3c2f987)
  • improved error message for "useLingui hook was used without I18nProvider" (#2624) (bcee1df)
  • react: use sync external store for i18n provider (#2612) (b4be90d)

v6.5.0

6.5.0 (2026-07-06)

Features

Bug Fixes

  • don't warn about missing id when a spread is present (#2581) (b1b9480)
Changelog

Sourced from @​lingui/format-po's changelog.

6.6.0 (2026-07-24)

Note: Version bump only for package @​lingui/format-po

6.5.0 (2026-07-06)

Note: Version bump only for package @​lingui/format-po

Commits

Updates @lingui/react from 6.4.0 to 6.6.0

Release notes

Sourced from @​lingui/react's releases.

v6.6.0

6.6.0 (2026-07-24)

Features

  • babel-plugin-lingui-macro: add nested msg and t support (#2625) (eb1fbec)
  • babel-plugin: support Babel 8 via peer dependencies (#2623) (c979f86)

Bug Fixes

  • babel-plugin-lingui-macro: unwrap non-null assertion (x!) and satisfies in placeholders (#2622) (d0479ad)
  • cli: preserve bracketed names in catalog globs (#2621) (3c2f987)
  • improved error message for "useLingui hook was used without I18nProvider" (#2624) (bcee1df)
  • react: use sync external store for i18n provider (#2612) (b4be90d)

v6.5.0

6.5.0 (2026-07-06)

Features

Bug Fixes

  • don't warn about missing id when a spread is present (#2581) (b1b9480)
Changelog

Sourced from @​lingui/react's changelog.

6.6.0 (2026-07-24)

Bug Fixes

  • improved error message for "useLingui hook was used without I18nProvider" (#2624) (bcee1df)
  • react: use sync external store for i18n provider (#2612) (b4be90d)

6.5.0 (2026-07-06)

Note: Version bump only for package @​lingui/react

Commits
  • 665a198 chore(release): published v6.6.0 [skip ci] (#2626)
  • bcee1df fix: improved error message for "useLingui hook was used without I18nProvider...
  • b4be90d fix(react): use sync external store for i18n provider (#2612)
  • 9687149 chore(release): published v6.5.0 [skip ci] (#2608)
  • 0e48243 chore: bump the root-and-package-dev-dependencies group across 4 directories ...
  • See full diff in compare view

Updates @lingui/vite-plugin from 6.4.0 to 6.6.0

Release notes

Sourced from @​lingui/vite-plugin's releases.

v6.6.0

6.6.0 (2026-07-24)

Features

  • babel-plugin-lingui-macro: add nested msg and t support (#2625) (eb1fbec)
  • babel-plugin: support Babel 8 via peer dependencies (#2623) (c979f86)

Bug Fixes

  • babel-plugin-lingui-macro: unwrap non-null assertion (x!) and satisfies in placeholders (#2622) (d0479ad)
  • cli: preserve bracketed names in catalog globs (#2621) (3c2f987)
  • improved error message for "useLingui hook was used without I18nProvider" (#2624) (bcee1df)
  • react: use sync external store for i18n provider (#2612) (b4be90d)

v6.5.0

6.5.0 (2026-07-06)

Features

Bug Fixes

  • don't warn about missing id when a spread is present (#2581) (b1b9480)
Changelog

Sourced from @​lingui/vite-plugin's changelog.

6.6.0 (2026-07-24)

Features

  • babel-plugin: support Babel 8 via peer dependencies (#2623) (c979f86)

6.5.0 (2026-07-06)

Features

Commits
  • 665a198 chore(release): published v6.6.0 [skip ci] (#2626)
  • c979f86 feat(babel-plugin): support Babel 8 via peer dependencies (#2623)
  • 9687149 chore(release): published v6.5.0 [skip ci] (#2608)
  • 0e48243 chore: bump the root-and-package-dev-dependencies group across 4 directories ...
  • 3547688 feat: add pseudolocalize options (#2583)
  • See full diff in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore <dependency name> major version will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
  • @dependabot ignore <dependency name> minor version will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
  • @dependabot ignore <dependency name> will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
  • @dependabot unignore <dependency name> will remove all of the ignore conditions of the specified dependency
  • @dependabot unignore <dependency name> <ignore condition> will remove the ignore condition of the specified dependency and ignore conditions

Bumps the lingui group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [@lingui/babel-plugin-lingui-macro](https://github.com/lingui/js-lingui/tree/HEAD/packages/babel-plugin-lingui-macro) | `6.4.0` | `6.6.0` |
| [@lingui/cli](https://github.com/lingui/js-lingui/tree/HEAD/packages/cli) | `6.4.0` | `6.6.0` |
| [@lingui/core](https://github.com/lingui/js-lingui/tree/HEAD/packages/core) | `6.4.0` | `6.6.0` |
| [@lingui/format-po](https://github.com/lingui/js-lingui/tree/HEAD/packages/format-po) | `6.4.0` | `6.6.0` |
| [@lingui/react](https://github.com/lingui/js-lingui/tree/HEAD/packages/react) | `6.4.0` | `6.6.0` |
| [@lingui/vite-plugin](https://github.com/lingui/js-lingui/tree/HEAD/packages/vite-plugin) | `6.4.0` | `6.6.0` |


Updates `@lingui/babel-plugin-lingui-macro` from 6.4.0 to 6.6.0
- [Release notes](https://github.com/lingui/js-lingui/releases)
- [Changelog](https://github.com/lingui/js-lingui/blob/main/packages/babel-plugin-lingui-macro/CHANGELOG.md)
- [Commits](https://github.com/lingui/js-lingui/commits/v6.6.0/packages/babel-plugin-lingui-macro)

Updates `@lingui/cli` from 6.4.0 to 6.6.0
- [Release notes](https://github.com/lingui/js-lingui/releases)
- [Changelog](https://github.com/lingui/js-lingui/blob/main/packages/cli/CHANGELOG.md)
- [Commits](https://github.com/lingui/js-lingui/commits/v6.6.0/packages/cli)

Updates `@lingui/core` from 6.4.0 to 6.6.0
- [Release notes](https://github.com/lingui/js-lingui/releases)
- [Changelog](https://github.com/lingui/js-lingui/blob/main/packages/core/CHANGELOG.md)
- [Commits](https://github.com/lingui/js-lingui/commits/v6.6.0/packages/core)

Updates `@lingui/format-po` from 6.4.0 to 6.6.0
- [Release notes](https://github.com/lingui/js-lingui/releases)
- [Changelog](https://github.com/lingui/js-lingui/blob/main/packages/format-po/CHANGELOG.md)
- [Commits](https://github.com/lingui/js-lingui/commits/v6.6.0/packages/format-po)

Updates `@lingui/react` from 6.4.0 to 6.6.0
- [Release notes](https://github.com/lingui/js-lingui/releases)
- [Changelog](https://github.com/lingui/js-lingui/blob/main/packages/react/CHANGELOG.md)
- [Commits](https://github.com/lingui/js-lingui/commits/v6.6.0/packages/react)

Updates `@lingui/vite-plugin` from 6.4.0 to 6.6.0
- [Release notes](https://github.com/lingui/js-lingui/releases)
- [Changelog](https://github.com/lingui/js-lingui/blob/main/packages/vite-plugin/CHANGELOG.md)
- [Commits](https://github.com/lingui/js-lingui/commits/v6.6.0/packages/vite-plugin)

---
updated-dependencies:
- dependency-name: "@lingui/babel-plugin-lingui-macro"
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lingui
- dependency-name: "@lingui/cli"
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lingui
- dependency-name: "@lingui/core"
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lingui
- dependency-name: "@lingui/format-po"
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lingui
- dependency-name: "@lingui/react"
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lingui
- dependency-name: "@lingui/vite-plugin"
  dependency-version: 6.6.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: lingui
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Dependency updates javascript Pull requests that update javascript code labels Aug 24, 2026
@dependabot
dependabot Bot requested a review from nasyrov as a code owner August 24, 2026 14:54
@dependabot dependabot Bot added dependencies Dependency updates javascript Pull requests that update javascript code labels Aug 24, 2026
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Aug 24, 2026 •

Copy link
Copy Markdown

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
plumix-marketing 8673598 Commit Preview URL

Branch Preview URL
Aug 24 2026, 02:57 PM

@nasyrov

nasyrov commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Superseded by #1915, which consolidates all twelve open Dependabot PRs into a single lockfile resolution. This PR will be closed once #1915 merges.

nasyrov added a commit that referenced this pull request Aug 24, 2026
The in-range lingui refresh to 6.6.0 broke the editor at runtime: opening an entry
rendered "Couldn't open the editor" because the route loader threw
`Cannot destructure property 'i18n' of ... as it is null` — useLingui() reading a
context that was never populated.

6.6 made `@babel/core`/`@babel/types` optional peers of
`@lingui/babel-plugin-lingui-macro`, accepting `^7.20 || ^8`. This workspace resolves
both Babel majors, so pnpm built two peer-keyed `@lingui/react` instances and the
code-split editor chunk got the one whose provider never mounted. main resolves a
single `@lingui/react@6.4.0(react@19.2.8)`; this branch had 6.6.0 twice.

Capped rather than fixed here: collapsing the workspace onto one Babel major is its
own change with its own blast radius. A caret range would drift straight back onto
6.6, so the catalog pins `>=6.4.0 <6.5.0` — the same shape as the starlight and astro
caps. Dependabot #1912 stays open.

Found by e2e, which no local gate I had run covers. All nine suites now pass
individually; running them concurrently contends for ports locally and is not a
signal.
@nasyrov

nasyrov commented Aug 24, 2026

Copy link
Copy Markdown
Contributor

Correction to my earlier comment: this PR is not superseded by #1915 and should stay open.

lingui 6.6.0 breaks the admin editor at runtime. Opening an entry renders "Couldn't open the editor" because the route loader throws Cannot destructure property 'i18n' of ... as it is null — useLingui() reading a context that was never populated.

Cause: 6.6 made @babel/core/@babel/types optional peers of @lingui/babel-plugin-lingui-macro, accepting ^7.20 || ^8. This workspace resolves both Babel majors, so pnpm builds two peer-keyed @lingui/react instances — two React contexts — and the code-split editor chunk gets the one whose provider never mounted. main resolves a single @lingui/react@6.4.0(react@19.2.8); with 6.6 there are two.

Caught by the plugin e2e suites, not by typecheck/lint/unit tests.

#1915 caps the lingui catalog at >=6.4.0 <6.5.0. Taking 6.6 needs the workspace collapsed onto one Babel major first — its own change.

nasyrov added a commit that referenced this pull request Aug 24, 2026
The in-range lingui refresh to 6.6.0 broke the editor at runtime: opening an entry
rendered "Couldn't open the editor" because the route loader threw
`Cannot destructure property 'i18n' of ... as it is null` — useLingui() reading a
context that was never populated.

6.6 made `@babel/core`/`@babel/types` optional peers of
`@lingui/babel-plugin-lingui-macro`, accepting `^7.20 || ^8`. This workspace resolves
both Babel majors, so pnpm built two peer-keyed `@lingui/react` instances and the
code-split editor chunk got the one whose provider never mounted. main resolves a
single `@lingui/react@6.4.0(react@19.2.8)`; this branch had 6.6.0 twice.

Capped rather than fixed here: collapsing the workspace onto one Babel major is its
own change with its own blast radius. A caret range would drift straight back onto
6.6, so the catalog pins `>=6.4.0 <6.5.0` — the same shape as the starlight and astro
caps. Dependabot #1912 stays open.

Found by e2e, which no local gate I had run covers. All nine suites now pass
individually; running them concurrently contends for ports locally and is not a
signal.
nasyrov added a commit that referenced this pull request Aug 24, 2026
## Supersedes the open Dependabot PRs

This PR **supersedes and replaces all twelve open Dependabot PRs**. They
all
touch `pnpm-lock.yaml`, so merging them one at a time means eleven
rebases and
eleven lockfile re-resolutions. This resolves the lockfile once.

Close once this merges:

| PR | Update | Landed here as |
| --- | --- | --- |
| #1900 | taiki-e/install-action 2.85.11 → 2.86.2 | pin + comment
updated |
| #1901 | changesets/action 1.9.0 → 2.1.0 | **excluded — see below** |
| #1902 | turbo group (2) | `turbo`, `eslint-plugin-turbo` → ^2.10.11 |
| #1903 | commitlint group (3) | ^21.2.2 |
| #1905 | vite group | lockfile refresh (catalog was already `^8.2.1`) |
| #1906 | tiptap group (10) | catalog → ^3.30.1 |
| #1907 | tanstack group (3) | catalog; **react-table v8 → v9** |
| #1910 | cloudflare group (3) | catalog |
| #1911 | prettier group | lockfile refresh (identical diff to #1905) |
| #1912 | lingui group (6) | **excluded — see below** |
| #1913 | markdown-it 14 → 15 | + `@types/markdown-it` dropped |
| #1914 | knip 6.26.0 → 6.32.2 | ^6.32.2 |

Everything else was also refreshed within its declared range, so the
tree is
current rather than just un-blocked.

## Migrations the bumps required

Three bumps needed code changes, not a version edit.

### TanStack Table v8 → v9 (#1907)

v9 replaces `useReactTable` + `getCoreRowModel()` with `useTable` plus
an
explicit `tableFeatures` registry, and every public type grew a leading
`TFeatures` generic (`ColumnDef<TData>` → `ColumnDef<TFeatures, TData,
TValue>`).

`DataTable` now owns that registry and exports
`DataTableColumnDef<TData>`, so
the three call sites keep naming a single generic and the feature set
stays an
implementation detail of the component. Row selection is the only
feature
registered; with column visibility off, cells come from `getAllCells()`
— the
exact counterpart of the header's `getHeaderGroups()`.

Column meta moved off the global `declare module
"@tanstack/react-table"`
augmentation onto v9's per-table `columnMeta` slot, which scopes it to
this
table instead of every table in the process.

Two suppressions became dead and were removed: v9's store-backed
instance is
React Compiler-compatible, so the `react-hooks/incompatible-library`
disable no
longer applies, and `data` no longer needs a `readonly` cast.

### markdown-it 14 → 15 (#1913)

v15 bundles its own declarations, so `@types/markdown-it` is removed —
leaving
it would shadow them. The instance type is now a named export separate
from the
callable default, so the annotation imports `MarkdownIt as
MarkdownItInstance`.

The comment-rendering security posture is unchanged: `linkify: false`
means
none of the linkify-it v6 behavior changes apply, and the existing
`javascript:`-scheme and `rel="nofollow ugc noopener"` tests still pass.

### react-query 5.102 `query()` (in-range, via #1907's group)

5.102 deprecates `ensureQueryData` and `fetchQuery` in favour of
`query()`. The
twelve call sites are migrated; route loaders pass `staleTime: "static"`
to keep
`ensureQueryData`'s dedupe semantics. `staleTime` joins the existing
TanStack
entries in the lingui `ignoreNames` list, since `"static"` is a sentinel
and not
user copy.

### changesets/action v1 → v2 (#1901) — deliberately NOT taken

This is the one Dependabot PR not folded in, and the reason is worth
stating.

v2 is only compatible with **Changesets v3** — its README says so
directly. The
mechanism: v2 stopped scraping `New tag:` out of the publish script's
stdout and
instead reads published packages from a file named by a
`CHANGESETS_OUTPUT` env
var it injects. `@changesets/cli` 2.31 contains zero references to that
variable,
so the file is never written.

The failure mode is the dangerous kind. `pnpm release` would publish to
npm
normally, then the action would find no output file, log a **warning**
(not an
error), and report `published: false` — so **no git tags and no GitHub
releases**.
Worse, the `Detect release work` step keys off `git rev-parse
refs/tags/$name@$version`,
so with tags never pushed it would return `run=true` on every subsequent
merge,
doing a full cold build and no-op publish each time. Entirely green,
silently broken.

Moving to `@changesets/cli` v3 is the supported pairing, but v3 changes
how
peer-dependent packages are bumped — precisely what
`onlyUpdatePeerDependentsWhenOutOfRange` in `.changeset/config.json` is
tuned
around — plus it drops the `prettier` config option and changes
private-package
versioning. That is a release-pipeline design decision, not a dependency
bump, so
it belongs in its own PR. **#1901 should stay open.**

The action stays at v1.9.0, with the constraint written into
`release.yml` so the
next person doesn't rediscover it the hard way.

### lingui 6.4 → 6.6 (#1912) — deliberately NOT taken

Also excluded, and this one was a live runtime break rather than a
latent one.

6.6.0 makes the editor unopenable: the route loader throws
`Cannot destructure property 'i18n' of ... as it is null` and the screen
renders
"Couldn't open the editor". `useLingui()` is reading a context that was
never
populated.

6.6 made `@babel/core`/`@babel/types` **optional peers** of
`@lingui/babel-plugin-lingui-macro`, accepting `^7.20 || ^8`. This
workspace
resolves both Babel majors, so pnpm builds two peer-keyed
`@lingui/react`
instances — two React contexts — and the code-split editor chunk gets
the one
whose provider never mounted. `main` resolves a single
`@lingui/react@6.4.0(react@19.2.8)`; with 6.6 there are two.

Taking 6.6 means collapsing the workspace onto one Babel major, which
has its own
blast radius. The catalog pins `>=6.4.0 <6.5.0` — a caret would drift
straight
back onto 6.6. **#1912 should stay open.**

## astro is capped, in two places

`apps/docs` cannot take **astro 7.2.4+**, which pins
`@astrojs/markdown-satteri`
at exactly `0.3.7` → `satteri ^0.10`, while `@astrojs/starlight`
(including
0.41.7, the newest) still pins `satteri ^0.9`. Two `satteri` copies in
the tree
make `astro check` fail with unrelated-identical-type errors inside
starlight's
own `markdown-plugins.ts`.

Both constraints are required, and I verified each in isolation:

- **Override alone** (`"@astrojs/markdown-satteri": ">=0.3.1 <0.3.7"`)
dedupes
satteri to one copy, but does **not** pin astro — pnpm overrides rewrite
the
dependent's range rather than constraining resolution, so astro floats
to 7.2.5
  with an older markdown-satteri grafted underneath it.
- **astro cap alone** still resolves two satteri copies: astro 7.2.3
takes
  markdown-satteri as a *range*, so pnpm picks 0.3.8 → satteri 0.10.

Together they land astro on **7.2.3**, whose declared
`@astrojs/markdown-satteri`
is exactly the `0.3.6` the override yields — a supported pairing rather
than a
graft, and newer than the 7.1.6 the branch had been sitting on.

Lift both once starlight ships `satteri ^0.10` support.

Related: `pnpm update` **silently widens these caps**. It rewrote the
pre-existing
`starlight >=0.41.5 <0.41.7` cap to `^0.41.7` while this branch was
being prepared,
and later rewrote the new astro cap to `^7.2.3`. Both were caught and
restored.

## Verification

Every `ci.yml` gate run locally: commitlint, lint, format, typecheck,
knip,
i18n check + ratchet, publint, attw, test:unit, test:build, and a
cold-cache full
build.

All nine e2e suites pass individually. Running them concurrently
contends for
ports locally and is not a signal.

Three of the four problems in this PR were invisible to the gates I had
been
running: the changesets and astro defects came from review (neither
`release.yml`
nor lockfile re-resolution is exercised by PR checks), and the lingui
break was
caught only by e2e — typecheck, lint, and unit tests were all green
while the
editor was unopenable.
@dependabot @github

dependabot Bot commented on behalf of github Aug 24, 2026

Copy link
Copy Markdown
Contributor Author

Looks like these dependencies are no longer updatable, so this is no longer needed.

@dependabot dependabot Bot closed this Aug 24, 2026
@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/lingui-7aaeaea73e branch August 24, 2026 16:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Dependency updates javascript Pull requests that update javascript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant