* feat(core): promote `future.experimental_faster` to `future.faster` + add `future.v4.fasterByDefault` flag
Stabilize the Docusaurus Faster config by removing the `experimental_` prefix.
Add a `fasterByDefault` v4 future flag that enables all faster features by default
when `v4: true` is used, allowing granular overrides. Init templates now include
`@docusaurus/faster` as a dependency since they use `v4: true`.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* refactor: apply lint autofix
* fix(docs): remove broken #faster anchor link in fasterByDefault docs
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(ci): add Yarn PnP packageExtension for @docusaurus/bundler → @docusaurus/faster
Yarn PnP strict mode doesn't resolve optional dependencies automatically.
Add a packageExtension so @docusaurus/bundler can resolve @docusaurus/faster
in the e2e Yarn Berry tests.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(core): declare @docusaurus/faster as optional peer dep instead of CI packageExtension
Revert the packageExtensions workaround in the e2e CI workflow and instead
declare @docusaurus/faster as an optional peer dependency of @docusaurus/core,
matching the existing pattern in @docusaurus/bundler.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* chore: retrigger CI
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* empty
* add randomness to e2e test script version, to avoid using cached versions when trying to run this locally
* Rspack + PnP doesn't work, so add a warning in this case + fallback to Webpack
This should fix the e2e pnp workflows
* refactor: apply lint autofix
* typo
* typo
* revert wrong change
* also use slower minimizers
* comment
* restore snapshots
* ensure faster key resolution is always exhaustive, no hardcoding of keys
---------
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: slorber <749374+slorber@users.noreply.github.com>
* fix(content-docs): use category key for generated-index translation lookup
When a sidebar category has a custom `key` attribute, the translation
system generates keys using `category.key ?? category.label`. However,
the read phase (`transformSidebarCategoryLink`) was using
`category.label` directly for generated-index title and description
lookups, causing a key mismatch and silent translation failure.
This aligns the generated-index lookup with the existing pattern
already used for category labels, link labels, and doc labels.
Fixes#11738
* chore: trigger CLA bot
* simplify test
* simplify test
* increase test timeout on windows
---------
Co-authored-by: sebastien <lorber.sebastien@gmail.com>
* refactor, extract loadVersion() without changing behavior
* Add minimal test case for loadVersion()
* Add minimal test case for loadVersion()
* more refactor, rename index.ts to version.ts
* fix tests
* empty