Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: mermaid-js/mermaid
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: mermaid@11.4.1
Choose a base ref
...
head repository: mermaid-js/mermaid
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: mermaid@11.5.0
Choose a head ref
Loading
Showing with 17,471 additions and 10,559 deletions.
  1. +1 −0 .cspell/libraries.txt
  2. +1 −1 .github/ISSUE_TEMPLATE/config.yml
  3. +4 −1 .github/lychee.toml
  4. +4 −4 .github/workflows/autofix.yml
  5. +3 −3 .github/workflows/build-docs.yml
  6. +1 −1 .github/workflows/check-readme-in-sync.yml
  7. +4 −4 .github/workflows/codeql.yml
  8. +2 −2 .github/workflows/dependency-review.yml
  9. +4 −4 .github/workflows/e2e-applitools.yml
  10. +10 −5 .github/workflows/e2e-timings.yml
  11. +21 −21 .github/workflows/e2e.yml
  12. +3 −3 .github/workflows/link-checker.yml
  13. +4 −4 .github/workflows/lint.yml
  14. +1 −1 .github/workflows/pr-labeler.yml
  15. +4 −4 .github/workflows/publish-docs.yml
  16. +3 −3 .github/workflows/release-preview-publish.yml
  17. +3 −3 .github/workflows/release-preview.yml
  18. +4 −4 .github/workflows/release.yml
  19. +4 −4 .github/workflows/scorecard.yml
  20. +4 −4 .github/workflows/test.yml
  21. +3 −3 .github/workflows/update-browserlist.yml
  22. +1 −1 .node-version
  23. +1 −1 Dockerfile
  24. +35 −3 README.md
  25. +3 −3 README.zh-CN.md
  26. +2 −4 cypress.config.ts
  27. +7 −0 cypress/helpers/util.ts
  28. +52 −0 cypress/integration/rendering/architecture.spec.ts
  29. +652 −0 cypress/integration/rendering/erDiagram-unified.spec.js
  30. +4 −4 cypress/integration/rendering/erDiagram.spec.js
  31. +153 −6 cypress/integration/rendering/flowchart-elk.spec.js
  32. +37 −0 cypress/integration/rendering/flowchart-v2.spec.js
  33. +18 −1 cypress/integration/rendering/flowchart.spec.js
  34. +703 −0 cypress/integration/rendering/requirementDiagram-unified.spec.js
  35. +3 −3 cypress/platform/ashish2.html
  36. +1 −1 cypress/platform/class.html
  37. +1 −1 cypress/platform/current.html
  38. +1 −1 cypress/platform/current2.html
  39. +1 −1 cypress/platform/flowchart-refactor.html
  40. +1 −1 cypress/platform/flowchart-sate.html
  41. +1 −1 cypress/platform/ghsa3.html
  42. +1 −1 cypress/platform/git-graph.html
  43. +1 −1 cypress/platform/gitgraph.html
  44. +1 −1 cypress/platform/gitgraph2.html
  45. +3 −3 cypress/platform/knsv-4442.html
  46. +1 −1 cypress/platform/knsv.html
  47. +114 −27 cypress/platform/knsv2.html
  48. +1 −1 cypress/platform/per.html
  49. +16 −49 cypress/platform/saurabh.html
  50. +1 −1 cypress/platform/showcase_base.html
  51. +1 −1 cypress/platform/showcase_base_dark.html
  52. +1 −1 cypress/platform/showcase_dark.html
  53. +1 −1 cypress/platform/showcase_default.html
  54. +1 −1 cypress/platform/showcase_forest.html
  55. +1 −1 cypress/platform/showcase_neutral.html
  56. +1 −1 cypress/platform/state-refactor.html
  57. +1 −1 cypress/platform/xss10.html
  58. +1 −1 cypress/platform/xss11.html
  59. +1 −1 cypress/platform/xss12.html
  60. +1 −1 cypress/platform/xss13.html
  61. +1 −1 cypress/platform/xss14.html
  62. +1 −1 cypress/platform/xss15.html
  63. +1 −1 cypress/platform/xss16.html
  64. +1 −1 cypress/platform/xss17.html
  65. +1 −1 cypress/platform/xss18.html
  66. +1 −1 cypress/platform/xss19.html
  67. +1 −1 cypress/platform/xss20.html
  68. +1 −1 cypress/platform/xss21.html
  69. +1 −1 cypress/platform/xss23-css.html
  70. +1 −1 cypress/platform/xss24.html
  71. +1 −1 cypress/platform/xss25.html
  72. +1 −1 cypress/platform/xss4.html
  73. +1 −1 cypress/platform/xss5.html
  74. +1 −1 cypress/platform/xss6.html
  75. +1 −1 cypress/platform/xss7.html
  76. +1 −1 cypress/platform/xss8.html
  77. +1 −1 cypress/platform/xss9.html
  78. +337 −0 cypress/platform/yari2.html
  79. +2 −2 demos/dev/example.html
  80. +1 −1 docker-compose.yml
  81. +2 −2 docs/community/intro.md
  82. +7 −7 docs/config/faq.md
  83. +7 −3 docs/config/setup/README.md
  84. +0 −171 docs/config/setup/classes/mermaid.UnknownDiagramError.md
  85. +28 −0 docs/config/setup/config/README.md
  86. +29 −0 docs/config/setup/config/functions/addDirective.md
  87. +29 −0 docs/config/setup/config/functions/getConfig.md
  88. +29 −0 docs/config/setup/config/functions/getSiteConfig.md
  89. +42 −0 docs/config/setup/config/functions/reset.md
  90. +36 −0 docs/config/setup/config/functions/sanitize.md
  91. +25 −0 docs/config/setup/config/functions/saveConfigFromInitialize.md
  92. +39 −0 docs/config/setup/config/functions/setConfig.md
  93. +40 −0 docs/config/setup/config/functions/setSiteConfig.md
  94. +29 −0 docs/config/setup/config/functions/updateCurrentConfig.md
  95. +25 −0 docs/config/setup/config/functions/updateSiteConfig.md
  96. +15 −0 docs/config/setup/config/variables/defaultConfig.md
  97. +16 −0 docs/config/setup/defaultConfig/README.md
  98. +15 −0 docs/config/setup/defaultConfig/variables/configKeys.md
  99. +21 −0 docs/config/setup/defaultConfig/variables/default.md
  100. +0 −49 docs/config/setup/interfaces/mermaid.DetailedError.md
  101. +0 −39 docs/config/setup/interfaces/mermaid.ExternalDiagramDefinition.md
  102. +0 −43 docs/config/setup/interfaces/mermaid.LayoutData.md
  103. +0 −39 docs/config/setup/interfaces/mermaid.LayoutLoaderDefinition.md
  104. +0 −388 docs/config/setup/interfaces/mermaid.Mermaid.md
  105. +0 −541 docs/config/setup/interfaces/mermaid.MermaidConfig.md
  106. +0 −22 docs/config/setup/interfaces/mermaid.ParseOptions.md
  107. +0 −33 docs/config/setup/interfaces/mermaid.ParseResult.md
  108. +0 −19 docs/config/setup/interfaces/mermaid.RenderOptions.md
  109. +0 −66 docs/config/setup/interfaces/mermaid.RenderResult.md
  110. +0 −71 docs/config/setup/interfaces/mermaid.RunOptions.md
  111. +40 −0 docs/config/setup/mermaid/README.md
  112. +159 −0 docs/config/setup/mermaid/classes/UnknownDiagramError.md
  113. +45 −0 docs/config/setup/mermaid/interfaces/DetailedError.md
  114. +37 −0 docs/config/setup/mermaid/interfaces/ExternalDiagramDefinition.md
  115. +41 −0 docs/config/setup/mermaid/interfaces/LayoutData.md
  116. +37 −0 docs/config/setup/mermaid/interfaces/LayoutLoaderDefinition.md
  117. +427 −0 docs/config/setup/mermaid/interfaces/Mermaid.md
  118. +461 −0 docs/config/setup/mermaid/interfaces/MermaidConfig.md
  119. +24 −0 docs/config/setup/mermaid/interfaces/ParseOptions.md
  120. +33 −0 docs/config/setup/mermaid/interfaces/ParseResult.md
  121. +21 −0 docs/config/setup/mermaid/interfaces/RenderOptions.md
  122. +60 −0 docs/config/setup/mermaid/interfaces/RenderResult.md
  123. +63 −0 docs/config/setup/mermaid/interfaces/RunOptions.md
  124. +15 −0 docs/config/setup/mermaid/type-aliases/InternalHelpers.md
  125. +29 −0 docs/config/setup/mermaid/type-aliases/ParseErrorFunction.md
  126. +15 −0 docs/config/setup/mermaid/type-aliases/SVG.md
  127. +15 −0 docs/config/setup/mermaid/type-aliases/SVGGroup.md
  128. +15 −0 docs/config/setup/mermaid/variables/default.md
  129. +0 −276 docs/config/setup/modules/config.md
  130. +0 −33 docs/config/setup/modules/defaultConfig.md
  131. +0 −90 docs/config/setup/modules/mermaid.md
  132. BIN docs/ecosystem/img/python-mermaid-integration-updated.png
  133. +3 −2 docs/ecosystem/integrations-community.md
  134. +1 −1 docs/ecosystem/integrations-create.md
  135. +2 −2 docs/ecosystem/mermaid-chart.md
  136. +14 −9 docs/ecosystem/tutorials.md
  137. +3 −3 docs/intro/index.md
  138. +22 −4 docs/news/blog.md
  139. +356 −28 docs/syntax/entityRelationshipDiagram.md
  140. +86 −2 docs/syntax/flowchart.md
  141. +1 −1 docs/syntax/gantt.md
  142. +1 −1 docs/syntax/kanban.md
  143. +242 −0 docs/syntax/requirementDiagram.md
  144. +20 −20 docs/syntax/timeline.md
  145. +0 −1 eslint.config.js
  146. +59 −54 package.json
  147. +3 −3 packages/mermaid-example-diagram/package.json
  148. +6 −0 packages/mermaid-layout-elk/CHANGELOG.md
  149. +2 −2 packages/mermaid-layout-elk/package.json
  150. +12 −22 packages/mermaid-layout-elk/src/render.ts
  151. +1 −1 packages/mermaid-zenuml/package.json
  152. +44 −0 packages/mermaid/CHANGELOG.md
  153. +36 −37 packages/mermaid/package.json
  154. +1 −1 packages/mermaid/src/config.ts
  155. +2 −0 packages/mermaid/src/config.type.ts
  156. +24 −1 packages/mermaid/src/diagrams/architecture/architectureDb.ts
  157. +85 −17 packages/mermaid/src/diagrams/architecture/architectureRenderer.ts
  158. +33 −3 packages/mermaid/src/diagrams/architecture/architectureTypes.ts
  159. +657 −654 packages/mermaid/src/diagrams/class/classDb.ts
  160. +3 −1 packages/mermaid/src/diagrams/class/classDiagram-styles.spec.js
  161. +4 −3 packages/mermaid/src/diagrams/class/classDiagram-v2.ts
  162. +59 −10 packages/mermaid/src/diagrams/class/classDiagram.spec.ts
  163. +4 −3 packages/mermaid/src/diagrams/class/classDiagram.ts
  164. +3 −1 packages/mermaid/src/diagrams/class/parser/class.spec.js
  165. +0 −103 packages/mermaid/src/diagrams/er/erDb.js
  166. +251 −0 packages/mermaid/src/diagrams/er/erDb.ts
  167. +6 −4 packages/mermaid/src/diagrams/er/erDiagram.ts
  168. +66 −0 packages/mermaid/src/diagrams/er/erRenderer-unified.ts
  169. +37 −0 packages/mermaid/src/diagrams/er/erTypes.ts
  170. +125 −14 packages/mermaid/src/diagrams/er/parser/erDiagram.jison
  171. +219 −21 packages/mermaid/src/diagrams/er/parser/erDiagram.spec.js
  172. +0 −49 packages/mermaid/src/diagrams/er/styles.js
  173. +73 −0 packages/mermaid/src/diagrams/er/styles.ts
  174. +35 −2 packages/mermaid/src/diagrams/flowchart/flowDb.spec.ts
  175. +992 −911 packages/mermaid/src/diagrams/flowchart/flowDb.ts
  176. +6 −5 packages/mermaid/src/diagrams/flowchart/flowDiagram.ts
  177. +1 −2 packages/mermaid/src/diagrams/flowchart/flowRenderer-v3-unified.ts
  178. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-arrows.spec.js
  179. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-comments.spec.js
  180. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-direction.spec.js
  181. +92 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-edges.spec.js
  182. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-huge.spec.js
  183. +4 −2 packages/mermaid/src/diagrams/flowchart/parser/flow-interactions.spec.js
  184. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-lines.spec.js
  185. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-md-string.spec.js
  186. +128 −6 packages/mermaid/src/diagrams/flowchart/parser/flow-node-data.spec.js
  187. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-singlenode.spec.js
  188. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-style.spec.js
  189. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-text.spec.js
  190. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow-vertice-chaining.spec.js
  191. +12 −5 packages/mermaid/src/diagrams/flowchart/parser/flow.jison
  192. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/flow.spec.js
  193. +12 −0 packages/mermaid/src/diagrams/flowchart/parser/flowParser.ts
  194. +3 −3 packages/mermaid/src/diagrams/flowchart/parser/subgraph.spec.js
  195. +5 −0 packages/mermaid/src/diagrams/flowchart/types.ts
  196. +5 −5 packages/mermaid/src/diagrams/gantt/styles.js
  197. +17 −17 packages/mermaid/src/diagrams/git/gitGraph.spec.ts
  198. +2 −2 packages/mermaid/src/diagrams/info/infoDb.ts
  199. +1 −1 packages/mermaid/src/diagrams/quadrant-chart/parser/quadrant.jison.spec.ts
  200. +80 −6 packages/mermaid/src/diagrams/requirement/parser/requirementDiagram.jison
  201. +250 −2 packages/mermaid/src/diagrams/requirement/parser/requirementDiagram.spec.js
  202. +0 −168 packages/mermaid/src/diagrams/requirement/requirementDb.js
  203. +96 −0 packages/mermaid/src/diagrams/requirement/requirementDb.spec.ts
  204. +349 −0 packages/mermaid/src/diagrams/requirement/requirementDb.ts
  205. +5 −3 packages/mermaid/src/diagrams/requirement/requirementDiagram.ts
  206. +0 −69 packages/mermaid/src/diagrams/requirement/requirementMarkers.js
  207. +0 −377 packages/mermaid/src/diagrams/requirement/requirementRenderer.js
  208. +36 −0 packages/mermaid/src/diagrams/requirement/requirementRenderer.ts
  209. +15 −0 packages/mermaid/src/diagrams/requirement/styles.js
  210. +51 −0 packages/mermaid/src/diagrams/requirement/types.ts
  211. +2 −0 packages/mermaid/src/diagrams/sankey/sankeyDiagram.ts
  212. +0 −1 packages/mermaid/src/diagrams/sankey/sankeyRenderer.ts
  213. +6 −0 packages/mermaid/src/diagrams/sankey/styles.js
  214. +567 −577 packages/mermaid/src/diagrams/sequence/sequenceDb.ts
  215. +209 −256 packages/mermaid/src/diagrams/sequence/sequenceDiagram.spec.js
  216. +14 −4 packages/mermaid/src/diagrams/sequence/sequenceDiagram.ts
  217. +0 −1 packages/mermaid/src/diagrams/sequence/sequenceRenderer.ts
  218. +1 −0 packages/mermaid/src/diagrams/sequence/types.ts
  219. +3 −9 packages/mermaid/src/diagrams/state/parser/state-parser.spec.js
  220. +4 −17 packages/mermaid/src/diagrams/state/parser/state-style.spec.js
  221. +6 −6 packages/mermaid/src/diagrams/state/shapes.js
  222. +4 −1 packages/mermaid/src/diagrams/state/stateCommon.ts
  223. +595 −515 packages/mermaid/src/diagrams/state/stateDb.js
  224. +27 −3 packages/mermaid/src/diagrams/state/stateDb.spec.js
  225. +34 −5 packages/mermaid/src/diagrams/state/stateDiagram-v2.spec.js
  226. +4 −3 packages/mermaid/src/diagrams/state/stateDiagram-v2.ts
  227. +3 −1 packages/mermaid/src/diagrams/state/stateDiagram.spec.js
  228. +4 −3 packages/mermaid/src/diagrams/state/stateDiagram.ts
  229. +0 −1 packages/mermaid/src/diagrams/state/stateRenderer-v3-unified.ts
  230. +0 −1 packages/mermaid/src/diagrams/state/stateRenderer.js
  231. +3 −4 packages/mermaid/src/diagrams/user-journey/styles.js
  232. +1 −1 packages/mermaid/src/diagrams/xychart/parser/xychart.jison.spec.ts
  233. +1 −1 packages/mermaid/src/docs/.vitepress/components/HomePage.vue
  234. +105 −21 packages/mermaid/src/docs/.vitepress/components/TopBar.vue
  235. +3 −3 packages/mermaid/src/docs/.vitepress/config.ts
  236. +2 −2 packages/mermaid/src/docs/community/intro.md
  237. +7 −7 packages/mermaid/src/docs/config/faq.md
  238. BIN packages/mermaid/src/docs/ecosystem/img/python-mermaid-integration-updated.png
  239. +3 −2 packages/mermaid/src/docs/ecosystem/integrations-community.md
  240. +1 −1 packages/mermaid/src/docs/ecosystem/integrations-create.md
  241. +2 −2 packages/mermaid/src/docs/ecosystem/mermaid-chart.md
  242. +14 −9 packages/mermaid/src/docs/ecosystem/tutorials.md
  243. +3 −3 packages/mermaid/src/docs/intro/index.md
  244. +22 −4 packages/mermaid/src/docs/news/blog.md
  245. +16 −16 packages/mermaid/src/docs/package.json
  246. +233 −28 packages/mermaid/src/docs/syntax/entityRelationshipDiagram.md
  247. +62 −2 packages/mermaid/src/docs/syntax/flowchart.md
  248. +1 −1 packages/mermaid/src/docs/syntax/gantt.md
  249. +1 −1 packages/mermaid/src/docs/syntax/kanban.md
  250. +156 −0 packages/mermaid/src/docs/syntax/requirementDiagram.md
  251. +10 −10 packages/mermaid/src/docs/syntax/timeline.md
  252. +108 −1 packages/mermaid/src/mermaidAPI.spec.ts
  253. +3 −3 packages/mermaid/src/mermaidAPI.ts
  254. +2 −0 packages/mermaid/src/rendering-util/layout-algorithms/dagre/index.js
  255. +63 −16 packages/mermaid/src/rendering-util/rendering-elements/edgeMarker.ts
  256. +43 −6 packages/mermaid/src/rendering-util/rendering-elements/edges.js
  257. +166 −0 packages/mermaid/src/rendering-util/rendering-elements/markers.js
  258. +8 −0 packages/mermaid/src/rendering-util/rendering-elements/shapes.ts
  259. +359 −0 packages/mermaid/src/rendering-util/rendering-elements/shapes/erBox.ts
  260. +23 −21 packages/mermaid/src/rendering-util/rendering-elements/shapes/handDrawnShapeStyles.ts
  261. +222 −0 packages/mermaid/src/rendering-util/rendering-elements/shapes/requirementBox.ts
  262. +4 −0 packages/mermaid/src/rendering-util/types.ts
  263. +8 −0 packages/mermaid/src/schemas/config.schema.yaml
  264. +22 −1 packages/mermaid/src/styles.ts
  265. +10 −0 packages/mermaid/src/themes/theme-base.js
  266. +4 −0 packages/mermaid/src/themes/theme-dark.js
  267. +14 −0 packages/mermaid/src/themes/theme-default.js
  268. +4 −0 packages/mermaid/src/themes/theme-forest.js
  269. +4 −0 packages/mermaid/src/themes/theme-neutral.js
  270. +5 −0 packages/mermaid/src/types.ts
  271. +8 −1 packages/mermaid/src/utils.ts
  272. +2 −2 packages/mermaid/typedoc.json
  273. +1 −1 packages/parser/package.json
  274. +5,215 −4,164 pnpm-lock.yaml
  275. +3 −1 renovate.json
  276. +2 −2 tsconfig.json
  277. +1 −0 vite.config.ts
1 change: 1 addition & 0 deletions .cspell/libraries.txt
Original file line number Diff line number Diff line change
@@ -26,6 +26,7 @@ dompurify
elkjs
fcose
fontawesome
Forgejo
Foswiki
Gitea
graphlib
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -4,7 +4,7 @@ contact_links:
url: https://github.com/mermaid-js/mermaid/discussions
about: Ask the Community questions or share your own graphs in our discussions.
- name: Discord
url: https://discord.gg/AgrbSrBer3
url: https://discord.gg/sKeNQX4Wtj
about: Join our Community on Discord for Help and a casual chat.
- name: Documentation
url: https://mermaid.js.org
5 changes: 4 additions & 1 deletion .github/lychee.toml
Original file line number Diff line number Diff line change
@@ -47,7 +47,10 @@ exclude = [
"https://(www.)?drupal.org",

# Swimm returns 404, eventhough the link is valid
"https://docs.swimm.io"
"https://docs.swimm.io",

# Timeout
"https://huehive.co"
]

# Exclude all private IPs from checking.
8 changes: 4 additions & 4 deletions .github/workflows/autofix.yml
Original file line number Diff line number Diff line change
@@ -13,13 +13,13 @@ jobs:
autofix:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
# uses version from "packageManager" field in package.json

- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
cache: pnpm
node-version-file: '.node-version'
@@ -42,4 +42,4 @@ jobs:
working-directory: ./packages/mermaid
run: pnpm run docs:build

- uses: autofix-ci/action@ff86a557419858bb967097bfc916833f5647fa8c # main
- uses: autofix-ci/action@551dded8c6cc8a1054039c8bc0b8b48c51dfc6ef # main
6 changes: 3 additions & 3 deletions .github/workflows/build-docs.yml
Original file line number Diff line number Diff line change
@@ -18,12 +18,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0

- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
cache: pnpm
node-version-file: '.node-version'
2 changes: 1 addition & 1 deletion .github/workflows/check-readme-in-sync.yml
Original file line number Diff line number Diff line change
@@ -18,7 +18,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Check for difference in README.md and docs/README.md
run: |
8 changes: 4 additions & 4 deletions .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -32,11 +32,11 @@ jobs:

steps:
- name: Checkout repository
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@c36620d31ac7c881962c3d9dd939c40ec9434f2b # v3.26.12
uses: github/codeql-action/init@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
with:
config-file: ./.github/codeql/codeql-config.yml
languages: ${{ matrix.language }}
@@ -48,7 +48,7 @@ jobs:
# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@c36620d31ac7c881962c3d9dd939c40ec9434f2b # v3.26.12
uses: github/codeql-action/autobuild@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10

# ℹ️ Command-line programs to run using the OS shell.
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -62,4 +62,4 @@ jobs:
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@c36620d31ac7c881962c3d9dd939c40ec9434f2b # v3.26.12
uses: github/codeql-action/analyze@b56ba49b26e50535fa1e7f7db0f4f7b4bf65d80d # v3.28.10
4 changes: 2 additions & 2 deletions .github/workflows/dependency-review.yml
Original file line number Diff line number Diff line change
@@ -15,6 +15,6 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: 'Checkout Repository'
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- name: 'Dependency Review'
uses: actions/dependency-review-action@5a2ce3f5b92ee19cbb1541a4984c76d921601d7c # v4.3.4
uses: actions/dependency-review-action@3b139cfc5fae8b618d3eae3675e383bb1769c019 # v4.5.0
8 changes: 4 additions & 4 deletions .github/workflows/e2e-applitools.yml
Original file line number Diff line number Diff line change
@@ -32,13 +32,13 @@ jobs:
run: |
echo "::error,title=Not using Applitools::APPLITOOLS_API_KEY is empty, disabling Applitools for this run."
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
# uses version from "packageManager" field in package.json

- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version-file: '.node-version'

@@ -54,7 +54,7 @@ jobs:
APPLITOOLS_SERVER_URL: 'https://eyesapi.applitools.com'

- name: Cypress run
uses: cypress-io/github-action@d79d2d530a66e641eb4a5f227e13bc985c60b964 # v4.2.2
uses: cypress-io/github-action@18a6541367f4580a515371905f499a27a44e8dbe # v6.7.12
id: cypress
with:
start: pnpm run dev
15 changes: 10 additions & 5 deletions .github/workflows/e2e-timings.yml
Original file line number Diff line number Diff line change
@@ -19,18 +19,18 @@ jobs:
image: cypress/browsers:node-20.11.0-chrome-121.0.6167.85-1-ff-120.0-edge-121.0.2277.83-1
options: --user 1001
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version-file: '.node-version'
- name: Install dependencies
uses: cypress-io/github-action@0da3c06ed8217b912deea9d8ee69630baed1737e # v6.7.6
uses: cypress-io/github-action@18a6541367f4580a515371905f499a27a44e8dbe # v6.7.12
with:
runTests: false
- name: Cypress run
uses: cypress-io/github-action@0da3c06ed8217b912deea9d8ee69630baed1737e # v6.7.6
uses: cypress-io/github-action@18a6541367f4580a515371905f499a27a44e8dbe # v6.7.12
id: cypress
with:
install: false
@@ -51,3 +51,8 @@ jobs:
author_name: 'github-actions[bot]'
author_email: '41898282+github-actions[bot]@users.noreply.github.com'
message: 'chore: update E2E timings'
- name: Create Pull Request
uses: peter-evans/create-pull-request@v5
with:
branch: release-promotion
title: Update E2E Timings
42 changes: 21 additions & 21 deletions .github/workflows/e2e.yml
Original file line number Diff line number Diff line change
@@ -28,37 +28,38 @@ env:
) ||
github.event.before
}}
RUN_VISUAL_TEST: >-
${{ github.repository == 'mermaid-js/mermaid' && (github.event_name != 'pull_request' || !startsWith(github.head_ref, 'renovate/')) }}
jobs:
cache:
runs-on: ubuntu-latest
container:
image: cypress/browsers:node-20.11.0-chrome-121.0.6167.85-1-ff-120.0-edge-121.0.2277.83-1
options: --user 1001
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version-file: '.node-version'
- name: Cache snapshots
id: cache-snapshot
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
save-always: true
path: ./cypress/snapshots
key: ${{ runner.os }}-snapshots-${{ env.targetHash }}

# If a snapshot for a given Hash is not found, we checkout that commit, run the tests and cache the snapshots.
- name: Switch to base branch
if: ${{ steps.cache-snapshot.outputs.cache-hit != 'true' }}
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
ref: ${{ env.targetHash }}

- name: Install dependencies
if: ${{ steps.cache-snapshot.outputs.cache-hit != 'true' }}
uses: cypress-io/github-action@0da3c06ed8217b912deea9d8ee69630baed1737e # v6.7.6
uses: cypress-io/github-action@18a6541367f4580a515371905f499a27a44e8dbe # v6.7.12
with:
# just perform install
runTests: false
@@ -81,26 +82,26 @@ jobs:
matrix:
containers: [1, 2, 3, 4, 5]
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
# uses version from "packageManager" field in package.json

- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
node-version-file: '.node-version'

# These cached snapshots are downloaded, providing the reference snapshots.
- name: Cache snapshots
id: cache-snapshot
uses: actions/cache/restore@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache/restore@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
path: ./cypress/snapshots
key: ${{ runner.os }}-snapshots-${{ env.targetHash }}

- name: Install dependencies
uses: cypress-io/github-action@0da3c06ed8217b912deea9d8ee69630baed1737e # v6.7.6
uses: cypress-io/github-action@18a6541367f4580a515371905f499a27a44e8dbe # v6.7.12
with:
runTests: false

@@ -116,7 +117,7 @@ jobs:
# Install NPM dependencies, cache them correctly
# and run all Cypress tests
- name: Cypress run
uses: cypress-io/github-action@0da3c06ed8217b912deea9d8ee69630baed1737e # v6.7.6
uses: cypress-io/github-action@18a6541367f4580a515371905f499a27a44e8dbe # v6.7.12
id: cypress
with:
install: false
@@ -125,21 +126,20 @@ jobs:
browser: chrome
# Disable recording if we don't have an API key
# e.g. if this action was run from a fork
record: ${{ secrets.CYPRESS_RECORD_KEY != '' }}
record: ${{ env.RUN_VISUAL_TEST == 'true' && secrets.CYPRESS_RECORD_KEY != '' }}
env:
CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }}
VITEST_COVERAGE: true
ARGOS_PARALLEL: ${{ env.RUN_VISUAL_TEST == 'true' }}
ARGOS_PARALLEL_TOTAL: ${{ env.RUN_VISUAL_TEST == 'true' && strategy.job-total || 1 }}
ARGOS_PARALLEL_INDEX: ${{ env.RUN_VISUAL_TEST == 'true' && matrix.containers || 1 }}
CYPRESS_COMMIT: ${{ github.sha }}
ARGOS_TOKEN: ${{ secrets.ARGOS_TOKEN }}
ARGOS_PARALLEL: true
ARGOS_PARALLEL_TOTAL: ${{ strategy.job-total }}
ARGOS_PARALLEL_INDEX: ${{ matrix.containers }}
CYPRESS_RECORD_KEY: ${{ env.RUN_VISUAL_TEST == 'true' && secrets.CYPRESS_RECORD_KEY || ''}}
SPLIT: ${{ strategy.job-total }}
SPLIT_INDEX: ${{ strategy.job-index }}
SPLIT_FILE: 'cypress/timings.json'
VITEST_COVERAGE: true

- name: Upload Coverage to Codecov
uses: codecov/codecov-action@e28ff129e5465c2c0dcc6f003fc735cb6ae0c673 # v4.5.0
uses: codecov/codecov-action@13ce06bfc6bbe3ecf90edbbf1bc32fe5978ca1d3 # v5.3.1
# Run step only pushes to develop and pull_requests
if: ${{ steps.cypress.conclusion == 'success' && (github.event_name == 'pull_request' || github.ref == 'refs/heads/develop')}}
with:
6 changes: 3 additions & 3 deletions .github/workflows/link-checker.yml
Original file line number Diff line number Diff line change
@@ -29,17 +29,17 @@ jobs:
# lychee only uses the GITHUB_TOKEN to avoid rate-limiting
contents: read
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- name: Restore lychee cache
uses: actions/cache@0c45773b623bea8c8e75f6c82b208c3cf94ea4f9 # v4.0.2
uses: actions/cache@0c907a75c2c80ebcb7f088228285e798b750cf8f # v4.2.1
with:
path: .lycheecache
key: cache-lychee-${{ github.sha }}
restore-keys: cache-lychee-

- name: Link Checker
uses: lycheeverse/lychee-action@c053181aa0c3d17606addfe97a9075a32723548a # v1.9.3
uses: lycheeverse/lychee-action@f613c4a64e50d792e0b31ec34bbcbba12263c6a6 # v2.3.0
with:
args: >-
--config .github/lychee.toml
8 changes: 4 additions & 4 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -15,21 +15,21 @@ jobs:
docker-lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- uses: hadolint/hadolint-action@54c9adbab1582c2ef04b2016b760714a4bfde3cf # v3.1.0
with:
verbose: true
lint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0
# uses version from "packageManager" field in package.json

- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
cache: pnpm
node-version-file: '.node-version'
2 changes: 1 addition & 1 deletion .github/workflows/pr-labeler.yml
Original file line number Diff line number Diff line change
@@ -22,7 +22,7 @@ jobs:
pull-requests: write # write permission is required to label PRs
steps:
- name: Label PR
uses: release-drafter/release-drafter@3f0f87098bd6b5c5b9a36d49c41d998ea58f9348 # v6.0.0
uses: release-drafter/release-drafter@b1476f6e6eb133afa41ed8589daba6dc69b4d3f5 # v6.1.0
with:
config-name: pr-labeler.yml
disable-autolabeler: false
8 changes: 4 additions & 4 deletions .github/workflows/publish-docs.yml
Original file line number Diff line number Diff line change
@@ -23,12 +23,12 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2

- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0

- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
cache: pnpm
node-version-file: '.node-version'
@@ -37,7 +37,7 @@ jobs:
run: pnpm install --frozen-lockfile

- name: Setup Pages
uses: actions/configure-pages@1f0c5cde4bc74cd7e1254d0cb4de8d49e9068c7d # v4.0.0
uses: actions/configure-pages@983d7736d9b0ae728b81ab479565c72886d7745b # v5.0.0

- name: Run Build
run: pnpm --filter mermaid run docs:build:vitepress
6 changes: 3 additions & 3 deletions .github/workflows/release-preview-publish.yml
Original file line number Diff line number Diff line change
@@ -9,14 +9,14 @@ jobs:
publish-preview:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@692973e3d937129bcbf40652eb9f2f61becf3332 # v4.1.7
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
with:
fetch-depth: 0

- uses: pnpm/action-setup@fe02b34f77f8bc703788d5817da081398fad5dd2 # v4.0.0
- uses: pnpm/action-setup@a7487c7e89a18df4991f7f222e4898a00d66ddda # v4.1.0

- name: Setup Node.js
uses: actions/setup-node@0a44ba7841725637a19e28fa30b79a866c81b0a6 # v4.0.4
uses: actions/setup-node@1d0ff469b7ec7b3cb9d8673fde0c81c44821de2a # v4.2.0
with:
cache: pnpm
node-version-file: '.node-version'
Loading