Skip to content

chore(deps): bump the fumadocs group across 1 directory with 3 updates - #319

Open
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/fumadocs-3ad4320879
Open

chore(deps): bump the fumadocs group across 1 directory with 3 updates#319
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/fumadocs-3ad4320879

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 18, 2026

Copy link
Copy Markdown

Bumps the fumadocs group with 3 updates in the / directory: fumadocs-core, fumadocs-mdx and fumadocs-ui.

Updates fumadocs-core from 16.14.0 to 16.15.0

Release notes

Sourced from fumadocs-core's releases.

fumadocs@16.15.0

  • @​fumadocs/base-ui@​16.15.0
  • fumadocs-core@16.15.0
  • fumadocs-ui@16.15.0

Redesign source API

Content sources can hook into the static loader they are attached to, and dynamic sources can opt out of the loader's in-memory file cache.

configureStatic runs when a source is attached to loader(), and again whenever dynamicLoader() builds a new static loader:

export function createMySource(): DynamicSource {
  return {
    cache: 'custom',
    async files() {
      return loadFiles();
    },
    configureStatic({ loader, source }) {
      // `loader` is the created static loader
      // `source` is the record key when using named sources
    },
    configure(loader, { source }) {
      loader.invalidate();
    },
  };
}
  • cache: 'memory' (default): files() is called once until invalidate().
  • cache: 'custom': the source caches itself. dynamicLoader() re-runs files() on get() and rebuilds only when the file list is shallowly different (by identity).

Integrations

GraphQL cross-links are generated from the attached loader instead of a baseUrl option on staticSource(). Local, OpenAPI, and AsyncAPI dynamicSource() use cache: 'custom' and reuse generated files by identity until invalidate().

Sanity now uses cache: 'custom' when given a sanityFetch from next-sanity/live, calling invalidate() in draft mode is no longer needed.

Return heading and text results from the Algolia client

algoliaClient grouped hits into page, heading and text results, then dropped everything except pages. All three are now returned with highlighting, matching the other search clients.

Fix locale-only pages leaking into other locales

i18n storages no longer share folder arrays with the fallback locale. Locale-only pages previously appeared in every locale's page tree as duplicate nodes.

Index pages by URL

getPageByHref resolves absolute URLs through an index instead of scanning all pages on every call.

... (truncated)

Commits
  • f548dab Version Packages (#3491)
  • 992beee fix(mdx): encode import query
  • 01b920c feat(sanity): adopt to Next.js cache API
  • 967cb9b perf(mdx): add queue to index-file generation
  • 21ac4f8 perf(notion): cache asset request
  • 771d556 fix(core): heading & text results from algolia client
  • e15eaf4 fix(api-docs): ignore self-recursive $ref
  • 442d24c perf(core): shiki checks
  • 36c53f3 perf(mdx): scope lastModified git log to the content directory
  • 030bc4e perf(asyncapi): cache the document proxy in toStaticData
  • Additional commits viewable in compare view

Updates fumadocs-mdx from 15.2.2 to 15.3.1

Release notes

Sourced from fumadocs-mdx's releases.

fumadocs-mdx@15.3.1

Scope lastModified git log to the content directory

git log is scoped to the collection's content directory instead of buffering the repository's entire history in every worker.

Fix Vite dev server crash on declaration-only dependencies

The injected Vite config no longer pre-bundles packages without runtime JavaScript, such as @types/mdx. Pre-bundling them made esbuild parse .d.ts files and fail on imports that only exist in type space, crashing the dev server.

Encode import.meta.glob query values

The Vite codegen passed the query to import.meta.glob as an object, letting the bundler serialize it. Rolldown inlines the values as-is, so a macro id such as src/lib/source.ts#docs left an unescaped / in the content file's module id and relative imports from that module (e.g. images from ![Banner](https://github.com/fuma-nama/fumadocs/blob/HEAD/logo.png)) failed to resolve, since the importer's directory is derived from the raw id.

The query is now serialized (and percent-encoded) by Fumadocs itself, matching what the Node.js codegen already did.

fumadocs-mdx@15.3.0

Sätteri 0.10

@fumadocs/satteri now requires satteri ^0.10.3, and the plugins were rewritten on its new capabilities:

  • Exports (frontmatter, toc, structuredData, …) are emitted by an after document hook instead of an anchor marker appended to the source, so plugins no longer see (or need to skip) the anchor node.
  • remark-steps, remark-admonition and remark-code-tab still detect their targets through node visitors (so documents without the construct cost nothing), but process each parent exactly once in an after hook, replacing the per-visit dedup workarounds.
  • remark-llms stringifies the document root from a before hook instead of subscribing to 19 node types to find it.
  • Markdown documents compile through Sätteri's own markdownToJs; the hand-assembled pipeline is gone. Raw HTML in .md files is still dropped, matching the previous behavior.
  • rehype-katex parses KaTeX output with Sätteri's htmlToHast, dropping the hast-util-from-html dependency.
  • No plugin reads node.position, so Sätteri now skips source-position tracking entirely (~15% faster parse).

Breaking: ExtraPluginHooks.beforeToJs was removed. Seed ctx.data from a Sätteri before hook on the plugin definition instead — it also receives the document root:

import { defineMdastPlugin } from 'satteri';
defineMdastPlugin({
name: 'my-plugin',
before(root, ctx) {
ctx.data.myValue ??= [];
},
});

fumadocs-mdx@15.2.3

Fix Base UI's use-sync-external-store breaking Vite dev servers

The Vite config is now derived from your project's own dependencies at startup, instead of being generated ahead of time against ours.

Builds keep the alias that replaces the shim with React, which is now applied only there. Pre-bundling is a dev server feature, and on builds a bundler that leaves the shim's require('react') in place gives it a second React instance whose hook dispatcher is null, breaking every component with a Base UI store.

Commits
  • f548dab Version Packages (#3491)
  • 992beee fix(mdx): encode import query
  • 01b920c feat(sanity): adopt to Next.js cache API
  • 967cb9b perf(mdx): add queue to index-file generation
  • 21ac4f8 perf(notion): cache asset request
  • 771d556 fix(core): heading & text results from algolia client
  • e15eaf4 fix(api-docs): ignore self-recursive $ref
  • 442d24c perf(core): shiki checks
  • 36c53f3 perf(mdx): scope lastModified git log to the content directory
  • 030bc4e perf(asyncapi): cache the document proxy in toStaticData
  • Additional commits viewable in compare view

Updates fumadocs-ui from 16.14.0 to 16.15.0

Release notes

Sourced from fumadocs-ui's releases.

fumadocs@16.15.0

  • @​fumadocs/base-ui@​16.15.0
  • fumadocs-core@16.15.0
  • fumadocs-ui@16.15.0

Redesign source API

Content sources can hook into the static loader they are attached to, and dynamic sources can opt out of the loader's in-memory file cache.

configureStatic runs when a source is attached to loader(), and again whenever dynamicLoader() builds a new static loader:

export function createMySource(): DynamicSource {
  return {
    cache: 'custom',
    async files() {
      return loadFiles();
    },
    configureStatic({ loader, source }) {
      // `loader` is the created static loader
      // `source` is the record key when using named sources
    },
    configure(loader, { source }) {
      loader.invalidate();
    },
  };
}
  • cache: 'memory' (default): files() is called once until invalidate().
  • cache: 'custom': the source caches itself. dynamicLoader() re-runs files() on get() and rebuilds only when the file list is shallowly different (by identity).

Integrations

GraphQL cross-links are generated from the attached loader instead of a baseUrl option on staticSource(). Local, OpenAPI, and AsyncAPI dynamicSource() use cache: 'custom' and reuse generated files by identity until invalidate().

Sanity now uses cache: 'custom' when given a sanityFetch from next-sanity/live, calling invalidate() in draft mode is no longer needed.

Return heading and text results from the Algolia client

algoliaClient grouped hits into page, heading and text results, then dropped everything except pages. All three are now returned with highlighting, matching the other search clients.

Fix locale-only pages leaking into other locales

i18n storages no longer share folder arrays with the fallback locale. Locale-only pages previously appeared in every locale's page tree as duplicate nodes.

Index pages by URL

getPageByHref resolves absolute URLs through an index instead of scanning all pages on every call.

... (truncated)

Commits
  • f548dab Version Packages (#3491)
  • 992beee fix(mdx): encode import query
  • 01b920c feat(sanity): adopt to Next.js cache API
  • 967cb9b perf(mdx): add queue to index-file generation
  • 21ac4f8 perf(notion): cache asset request
  • 771d556 fix(core): heading & text results from algolia client
  • e15eaf4 fix(api-docs): ignore self-recursive $ref
  • 442d24c perf(core): shiki checks
  • 36c53f3 perf(mdx): scope lastModified git log to the content directory
  • 030bc4e perf(asyncapi): cache the document proxy in toStaticData
  • Additional commits viewable in compare view

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Aug 18, 2026
@pull-request-size pull-request-size Bot added the size/XS Denotes a PR that changes 0-9 lines, ignoring generated files. label Aug 18, 2026
@netlify

netlify Bot commented Aug 18, 2026

Copy link
Copy Markdown

Deploy Preview for openimdocs ready!

Name Link
🔨 Latest commit 69a6c4d
🔍 Latest deploy log https://app.netlify.com/projects/openimdocs/deploys/6a8d82fd9b3d1400082704a7
😎 Deploy Preview https://deploy-preview-319--openimdocs.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.
🤖 Make changes Run an agent on this branch

To edit notification comments on pull requests, go to your Netlify project configuration.

Bumps the fumadocs group with 3 updates in the / directory: [fumadocs-core](https://github.com/fuma-nama/fumadocs), [fumadocs-mdx](https://github.com/fuma-nama/fumadocs) and [fumadocs-ui](https://github.com/fuma-nama/fumadocs).


Updates `fumadocs-core` from 16.14.0 to 16.15.0
- [Release notes](https://github.com/fuma-nama/fumadocs/releases)
- [Commits](https://github.com/fuma-nama/fumadocs/compare/fumadocs@16.14.0...fumadocs@16.15.0)

Updates `fumadocs-mdx` from 15.2.2 to 15.3.1
- [Release notes](https://github.com/fuma-nama/fumadocs/releases)
- [Commits](https://github.com/fuma-nama/fumadocs/compare/fumadocs-mdx@15.2.2...fumadocs-mdx@15.3.1)

Updates `fumadocs-ui` from 16.14.0 to 16.15.0
- [Release notes](https://github.com/fuma-nama/fumadocs/releases)
- [Commits](https://github.com/fuma-nama/fumadocs/compare/fumadocs@16.14.0...fumadocs@16.15.0)

---
updated-dependencies:
- dependency-name: fumadocs-core
  dependency-version: 16.14.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fumadocs
- dependency-name: fumadocs-mdx
  dependency-version: 15.2.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fumadocs
- dependency-name: fumadocs-ui
  dependency-version: 16.14.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: fumadocs
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/fumadocs-3ad4320879 branch from 8cb2c66 to 69a6c4d Compare August 25, 2026 11:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code size/XS Denotes a PR that changes 0-9 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants