Skip to content

chore(deps): bump mermaid from 11.17.2 to 12.0.0 - #2177

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/mermaid-12.0.0
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/mermaid-12.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Sep 21, 2026

Copy link
Copy Markdown
Contributor

Bumps mermaid from 11.17.2 to 12.0.0.

Release notes

Sourced from mermaid's releases.

mermaid@12.0.0

Mermaid 12.0.0 ships ELK as the bundled default layout engine, a new redux-color / neo default appearance, and two new diagram types: UML use case diagrams.

This is a breaking release (ES2024, Safari 17.4+, Node 22.12+). Existing flowcharts, state and class diagrams will re-lay out and recolour; add layout: dagre, theme: default and look: classic to your config to keep the old look. Full changelog below.

Major Changes

  • #8213 33442fd Thanks @​aloisklink! - chore!: require ES2024, Safari 17.4+, Node.JS v22.12+

    Mermaid is now built to target Safari 17.4+ and ES2024. If you need to support older browsers, you may need to polyfill or transpile mermaid.

    Safari 17.4+ has been chosen as the floor, as unlike Firefox/Chrome, older iOS devices don't get major Safari updates.

    Node.JS v22.12+ is also declared as requirement in our package.json files, but as mermaid requires a browser, this is mainly so we can use dependencies that also declare a Node.JS v22.12+ requirement, without causing issues for users when running npm install.

  • #8155 810893c Thanks @​ashishjain0512! - feat!: ELK is now bundled with mermaid and is the default layout algorithm.

    ELK previously shipped as a separate @mermaid-js/layout-elk package that sites had to install and register. It is now part of mermaid itself and registered automatically, so layout: elk — and the elk.stress, elk.force, elk.mrtree, elk.sporeOverlap, elk.box and elk.rectpacking variants — work with no setup.

    This changes how existing diagrams look. Flowchart, state, class, entity-relationship, requirement, use-case diagrams that do not specify a layout are now laid out by ELK instead of dagre. To keep the previous layout, set dagre explicitly:

    ---
    config:
      layout: dagre
    ---

    or globally, mermaid.initialize({ layout: 'dagre' }).

    Mindmap is unchanged: it keeps laying out with cose-bilkent unless a layout is explicitly requested (in the tiny build, which ships neither ELK nor cose-bilkent, it falls back to dagre).

    Other notes:

    • ELK is loaded as a separate chunk in the ESM builds, so it is only fetched when a diagram actually uses it. The single-file IIFE build (mermaid.min.js) inlines it and grows by roughly 500 kB gzipped.
    • The tiny build deliberately omits ELK to stay small, and falls back to dagre for diagrams that ask for an ELK layout. Its size is unchanged.
    • @mermaid-js/layout-elk is no longer needed on normal builds — existing mermaid.registerLayoutLoaders(elkLayouts) calls keep working and can be removed. It is still published, and remains the way to add ELK to the tiny build.
    • dist/mermaid.esm.min.mjs now contains syntax that es-module-lexer (used by Vite) rejects with content contains invalid JS syntax. Bundler users are unaffected as long as they import the mermaid package specifier, which resolves to the core build; only builds that point Vite directly at that dist file need to switch to the package specifier or the core build.
    • State diagrams now resolve their layout through the same registration check as every other diagram, so an unavailable layout falls back instead of failing to render.

    An unrecognised theme name now resolves to the default theme in name as well as in variables; previously the invalid name stayed in place while the default's variables were loaded, and every palette-aware stylesheet gates on the name. theme: 'null', the documented way to disable the pre-defined themes, is unaffected. Note that neo paints node strokes with a gradient when the theme sets useGradient, which base does; setting a custom nodeBorder on base turns the gradient off.

  • #8211 a19bd08 Thanks @​ashishjain0512! - Removed: the defaultRenderer option of the flowchart, class and state config sections.

    Use the top-level layout option instead:

... (truncated)

Commits
  • 98a0945 Merge pull request #8237 from mermaid-js/changeset-release/master
  • 96be564 Version Packages
  • dd65cfd Merge pull request #8239 from mermaid-js/bug/appearance-docs-release-version-...
  • e1cc7c2 fix(tests): accept a released version in the appearance docs marker
  • 8382837 Merge pull request #8211 from mermaid-js/release/12.0.0
  • 8a90389 ci: trigger a preview publish
  • 01b8590 ci: attempt every preview package before failing the publish step
  • 1997a23 ci: record why the preview publish of layout-elk and tiny is refused
  • 0304007 ci: drop --access public from the preview publish of layout-elk and tiny
  • 223be92 docs: capitalize Markdown in README tagline
  • Additional commits viewable in compare view

Dependabot compatibility score

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 this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Sep 21, 2026
@dependabot
dependabot Bot requested a review from justinhelmer as a code owner September 21, 2026 23:09
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Sep 21, 2026

@coreplane-switchboard coreplane-switchboard Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes requested: Mermaid 12 raises the docs runtime floor beyond the workspace's declared Node support.

Warning

Changes requested · head f2244c9 · 1 finding: 1 minor

Severity Finding Where
minor F1 Align the docs Node engine with Mermaid 12 docs/package.json:20
Full review

F1 (minor, high confidence): Mermaid 12 and its parser require Node >=22.12.0, but this workspace still advertises support for all Node 22 releases via "node": ">=22". Installs using Node 22.0–22.11 can fail engine enforcement or run an unsupported dependency. Raise the docs engine floor to >=22.12.0, or keep Mermaid 11.

@coreplane-switchboard
coreplane-switchboard Bot force-pushed the dependabot/npm_and_yarn/mermaid-12.0.0 branch from f2244c9 to fbe10aa Compare September 22, 2026 16:59
Bumps [mermaid](https://github.com/mermaid-js/mermaid) from 11.17.2 to 12.0.0.
- [Release notes](https://github.com/mermaid-js/mermaid/releases)
- [Commits](https://github.com/mermaid-js/mermaid/compare/mermaid@11.17.2...mermaid@12.0.0)

Co-Authored-By: coreplane-switchboard[bot] <318072483+coreplane-switchboard[bot]@users.noreply.github.com>

---
updated-dependencies:
- dependency-name: mermaid
  dependency-version: 12.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@coreplane-switchboard
coreplane-switchboard Bot force-pushed the dependabot/npm_and_yarn/mermaid-12.0.0 branch from fbe10aa to f546945 Compare September 22, 2026 17:08

@coreplane-switchboard coreplane-switchboard Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Changes requested: Mermaid 12 changes the site's diagram layout and appearance because the renderer does not preserve the prior defaults.

Warning

Changes requested · head f546945 · 1 finding: 1 minor

Severity Finding Where
minor F1 Spec contradiction — docs-site.md item 19: Mermaid 12 replaces the promised diagram presentation docs/package.json:20
Full review

F1 — Mermaid 12 defaults flowcharts to the neo appearance and ELK layout, while MermaidDiagram.vue leaves look and layout unset. Existing diagrams will gain new styling and layouts, contradicting docs-site item 19’s visual-system contract. Preserve the current presentation by initializing Mermaid with look: "classic" and layout: "dagre", or update the visual contract if the change is intentional.

@justinhelmer

Copy link
Copy Markdown
Contributor

Closing: mermaid 12 is a breaking upgrade for us on two counts. It raises the required Node floor to 22.12.0, which this branch had already fixed, and its review then found that it changes the docs site's diagram layout and appearance because the new renderer does not preserve the previous defaults. Restoring those defaults is design work on the docs site, and we are draining to a clean slate with nothing new added. Dependabot will raise mermaid 12 again, and we take it then together with the default restoration and fresh screenshots.

@dependabot @github

dependabot Bot commented on behalf of github Sep 22, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/mermaid-12.0.0 branch September 22, 2026 17:24
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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant