-
-
Notifications
You must be signed in to change notification settings - Fork 6.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(git): cherry-pick keyword supports tag attribute #3479
feat(git): cherry-pick keyword supports tag attribute #3479
Conversation
Currently, cherry-pick in gitGraphs only has e2e tests, no parsing unit tests.
I forgot to escape the `-` character in a regex statement. Fixes: 1527956
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great! Thanks for adding docs and a test case.
Two issues:
- Currently there's a bug in cherry-pick, however, that's not related to your PR, I've got a fix in Fix broken cherry-pick parsing in gitgraph #3480
- The
.jison
code has the wrong arguments. See my comment on how to fix.
After applying #3480 and my suggestion, the e2e tests render correctly:
Co-authored-by: Alois Klink <alois@aloisklink.com>
Thanks @aloisklink! I'll admit I was scratching my head a bit at the relationship between jison and the renderer, now it makes more sense. I did also make an additional commit which I'm open to feedback on... it would be nice if explicitly writing |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Commit 4e4b5cc throws an error, since you're using sourceCommit
at the beginning of the function, but it's only declared later on in the function.
My gut feeling is to use the JavaScript standard way of doing things for default parameters (feel free to disagree if you or another reviewer feels otherwise). If tag === null || tag === undefined
, then we can use the default variable. There's a newish feature in JavaScript called the nullish coalescing operator (??
) that makes this easy to implement (see my comment for more details).
Edit:
Thanks @aloisklink! I'll admit I was scratching my head a bit at the relationship between jison and the renderer, now it makes more sense.
Hahaha, yeah, I also barely understand how the jison stuff works :) It's old legacy code we'd love to replace.
By the way, it might help to add parsing tests to your code in src/diagrams/git/gitGraphParserV2.spec.js
. It'll be a bit difficult since the cherry-pick command is currently broken (my fault), but if you run git pull https://github.com/aloisklink/mermaid.git fix/broken-cherry-pick-parsing
you should be able to pull my changes from PR #3480 into your branch.
Makes sense! I wasn't sure if jison params had to be strings, if not then undefined makes perfect sense. I'll make the tweaks you suggested later today. |
…ng' into enelson/git-cherry-pick-tag
Well, I think I've got it working, but can't successfully run e2e still... I've tried with: start-server-and-test dev http://localhost:9000/ 'cypress run --spec "**/git*"' But the resulting git graph diagrams in |
I see the issue, it looks like the current jison rules don't actually allow an mermaid/src/diagrams/git/parser/gitGraph.jison Lines 60 to 62 in e8eb2ab
I've got no idea how to fix this (or if it's even possible to fix this) since I'm not familiar with jison. Maybe another @mermaid-js reviewer will know? Maybe instead of using If it's too much work, you're welcome to also move the |
Aha, I didn't realize quite how these screenshots got saved (looks like successes go in snapshots/ and failures go in screenshots/). To help troubleshoot I took your earlier advice and added a couple tests to the git parser spec, and I think my suggested fix to the JISON will work. I could not figure out a generic way for |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
dedicated
EMPTYSTR
token
Perfect! That works great, since using cherry-pick ... tag:""
is probably the best syntax to use for disabling a tag. That's a smart way to use jison.
It all looks good for me (thanks for adding parsing tests too!). Now we just need to wait for other maintainers to review!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for your contribution. This will be a definite add-on!
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [mermaid](https://togithub.com/mermaid-js/mermaid) | [`9.1.7` -> `9.2.2`](https://renovatebot.com/diffs/npm/mermaid/9.1.7/9.2.2) | [![age](https://badges.renovateapi.com/packages/npm/mermaid/9.2.2/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/npm/mermaid/9.2.2/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/npm/mermaid/9.2.2/compatibility-slim/9.1.7)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/npm/mermaid/9.2.2/confidence-slim/9.1.7)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>mermaid-js/mermaid</summary> ### [`v9.2.2`](https://togithub.com/mermaid-js/mermaid/releases/tag/v9.2.2): 9.2.2 [Compare Source](https://togithub.com/mermaid-js/mermaid/compare/v9.2.1...v9.2.2) #### What's Changed - \[9.2] fix(mermaid): fix `mermaid.render` types by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3768](https://togithub.com/mermaid-js/mermaid/pull/3768) - \[9.2] fix(mermaid): default mermaid back to CommonJS by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3767](https://togithub.com/mermaid-js/mermaid/pull/3767) - Fix lazy loading in webpack by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3774](https://togithub.com/mermaid-js/mermaid/pull/3774) **Full Changelog**: mermaid-js/mermaid@v9.2.1...v9.2.2 ### [`v9.2.1`](https://togithub.com/mermaid-js/mermaid/releases/tag/v9.2.1): 9.2.1 [Compare Source](https://togithub.com/mermaid-js/mermaid/compare/v9.2.0...v9.2.1) #### What's Changed - \~~fix [#​3757](https://togithub.com/mermaid-js/mermaid/issues/3757) : Remove dynamic imports for lazy load causing issues for webpack~~ - chore: Update bug report template by [@​gibson042](https://togithub.com/gibson042) in [https://github.com/mermaid-js/mermaid/pull/3727](https://togithub.com/mermaid-js/mermaid/pull/3727) - Use issue templates and add diagram, theme and syntax proposal issue forms by [@​Andre601](https://togithub.com/Andre601) in [https://github.com/mermaid-js/mermaid/pull/2739](https://togithub.com/mermaid-js/mermaid/pull/2739) #### New Contributors - [@​Andre601](https://togithub.com/Andre601) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/2739](https://togithub.com/mermaid-js/mermaid/pull/2739) **Full Changelog**: mermaid-js/mermaid@v9.2.0...v9.2.1 ### [`v9.2.0`](https://togithub.com/mermaid-js/mermaid/releases/tag/v9.2.0): 9.2.0 [Compare Source](https://togithub.com/mermaid-js/mermaid/compare/v9.1.7...v9.2.0) #### What's Changed ##### Features - Mindmaps by [@​knsv](https://togithub.com/knsv) in [https://github.com/mermaid-js/mermaid/pull/3410](https://togithub.com/mermaid-js/mermaid/pull/3410) - Introducing TypeScript by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3336](https://togithub.com/mermaid-js/mermaid/pull/3336) - Auto transform `mermaid-example` in docs. by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3401](https://togithub.com/mermaid-js/mermaid/pull/3401) - Creating detectors and moving out diagram specific code from the diag… by [@​knsv](https://togithub.com/knsv) in [https://github.com/mermaid-js/mermaid/pull/3436](https://togithub.com/mermaid-js/mermaid/pull/3436) - feat(git): cherry-pick keyword supports tag attribute by [@​elliot-nelson](https://togithub.com/elliot-nelson) in [https://github.com/mermaid-js/mermaid/pull/3479](https://togithub.com/mermaid-js/mermaid/pull/3479) - Mindmaps replacing rendering algoritm with cose-bilkent by [@​knsv](https://togithub.com/knsv) in [https://github.com/mermaid-js/mermaid/pull/3559](https://togithub.com/mermaid-js/mermaid/pull/3559) - 3561 theme color scales by [@​knsv](https://togithub.com/knsv) in [https://github.com/mermaid-js/mermaid/pull/3562](https://togithub.com/mermaid-js/mermaid/pull/3562) - ESBuild by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3386](https://togithub.com/mermaid-js/mermaid/pull/3386) - (Beta) Lazy load import by [@​knsv](https://togithub.com/knsv) in [https://github.com/mermaid-js/mermaid/pull/3592](https://togithub.com/mermaid-js/mermaid/pull/3592), [https://github.com/mermaid-js/mermaid/pull/3598](https://togithub.com/mermaid-js/mermaid/pull/3598) - 3061 making a monorepo by [@​knsv](https://togithub.com/knsv) in [https://github.com/mermaid-js/mermaid/pull/3531](https://togithub.com/mermaid-js/mermaid/pull/3531) ##### Fixes - Feature decimal duration in second for gantt diagram by [@​vallsv](https://togithub.com/vallsv) in [https://github.com/mermaid-js/mermaid/pull/3360](https://togithub.com/mermaid-js/mermaid/pull/3360) - fix: fix passing a single Node to mermaid.init() by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3396](https://togithub.com/mermaid-js/mermaid/pull/3396) - fix [#​3407](https://togithub.com/mermaid-js/mermaid/issues/3407) Replace `div` with `pre` and format by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3408](https://togithub.com/mermaid-js/mermaid/pull/3408) - fix(git): support numeric branch names by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3392](https://togithub.com/mermaid-js/mermaid/pull/3392) - Add tests for C4 system context macros by [@​dbartholomae](https://togithub.com/dbartholomae) in [https://github.com/mermaid-js/mermaid/pull/3367](https://togithub.com/mermaid-js/mermaid/pull/3367) - Add nested test for parseGenericTypes by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3354](https://togithub.com/mermaid-js/mermaid/pull/3354) - Fix memoize by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3434](https://togithub.com/mermaid-js/mermaid/pull/3434) - fix(git): support single character branch names by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3464](https://togithub.com/mermaid-js/mermaid/pull/3464) - Replace GoogleAnalytics with Plausible by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3466](https://togithub.com/mermaid-js/mermaid/pull/3466) - Fix for issues in errorhandling and class diagrams after refactoring by [@​knsv](https://togithub.com/knsv) in [https://github.com/mermaid-js/mermaid/pull/3470](https://togithub.com/mermaid-js/mermaid/pull/3470) - 3409 Fix for truncated tags in GitGraph by [@​ashishjain0512](https://togithub.com/ashishjain0512) in [https://github.com/mermaid-js/mermaid/pull/3454](https://togithub.com/mermaid-js/mermaid/pull/3454) - Fix broken cherry-pick parsing in gitgraph by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3480](https://togithub.com/mermaid-js/mermaid/pull/3480) - Fix CI `docs:lint` by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3493](https://togithub.com/mermaid-js/mermaid/pull/3493) - Fix user-journey leaking css by [@​lishid](https://togithub.com/lishid) in [https://github.com/mermaid-js/mermaid/pull/3510](https://togithub.com/mermaid-js/mermaid/pull/3510) - \[sequenceDiagrams] Support dashes in participant names by [@​ashleybartlett](https://togithub.com/ashleybartlett) in [https://github.com/mermaid-js/mermaid/pull/3524](https://togithub.com/mermaid-js/mermaid/pull/3524) - fix: ER dark theme attribute colors by [@​weedySeaDragon](https://togithub.com/weedySeaDragon) in [https://github.com/mermaid-js/mermaid/pull/3512](https://togithub.com/mermaid-js/mermaid/pull/3512) - feat: ER diagram: allow other chars in a quoted entity name by [@​weedySeaDragon](https://togithub.com/weedySeaDragon) in [https://github.com/mermaid-js/mermaid/pull/3516](https://togithub.com/mermaid-js/mermaid/pull/3516) - Arrow tip aligned to edge of box by [@​pbrolin47](https://togithub.com/pbrolin47) in [https://github.com/mermaid-js/mermaid/pull/3533](https://togithub.com/mermaid-js/mermaid/pull/3533) - Fixed labelText undefined behavior by [@​AndrewL-64](https://togithub.com/AndrewL-64) in [https://github.com/mermaid-js/mermaid/pull/3544](https://togithub.com/mermaid-js/mermaid/pull/3544) - Fix failing vitest unit tests by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3587](https://togithub.com/mermaid-js/mermaid/pull/3587) - fix: Import diagram by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3589](https://togithub.com/mermaid-js/mermaid/pull/3589) - Fix file name during "pnpm run dev" script by [@​vallsv](https://togithub.com/vallsv) in [https://github.com/mermaid-js/mermaid/pull/3608](https://togithub.com/mermaid-js/mermaid/pull/3608) - fix Detect diagram fallback by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3591](https://togithub.com/mermaid-js/mermaid/pull/3591) - fix: Dirty fix for sync render. by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3633](https://togithub.com/mermaid-js/mermaid/pull/3633) - fix: Converts mindmapDB to TS by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3683](https://togithub.com/mermaid-js/mermaid/pull/3683) - Support `lazyLoadedDiagrams` when calling `initThrowsErrors` by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3702](https://togithub.com/mermaid-js/mermaid/pull/3702) - \[9.2.0] Support `lazyLoadedDiagrams` when calling `initThrowsErrorsAsync` by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3731](https://togithub.com/mermaid-js/mermaid/pull/3731) ##### Chores - build: run `build:prod` on `yarn prepare` by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3404](https://togithub.com/mermaid-js/mermaid/pull/3404) - chore(deps-dev): bump [@​types/dompurify](https://togithub.com/types/dompurify) from 2.3.3 to 2.3.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3414](https://togithub.com/mermaid-js/mermaid/pull/3414) - chore(deps-dev): bump jest-environment-jsdom from 29.0.1 to 29.0.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3413](https://togithub.com/mermaid-js/mermaid/pull/3413) - chore(deps-dev): bump typescript from 4.7.4 to 4.8.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3411](https://togithub.com/mermaid-js/mermaid/pull/3411) - chore(deps-dev): bump babel-jest from 29.0.1 to 29.0.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3412](https://togithub.com/mermaid-js/mermaid/pull/3412) - chore: fix JSDOC [@​param](https://togithub.com/param), [@​returns](https://togithub.com/returns) lint errors by [@​weedySeaDragon](https://togithub.com/weedySeaDragon) in [https://github.com/mermaid-js/mermaid/pull/3422](https://togithub.com/mermaid-js/mermaid/pull/3422) - style: forbid using `console` in mermaid src code by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3405](https://togithub.com/mermaid-js/mermaid/pull/3405) - Introduce stricter typescript linting by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3393](https://togithub.com/mermaid-js/mermaid/pull/3393) - Esbuild: backwards-compatible `mermaid.core.mjs` by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3437](https://togithub.com/mermaid-js/mermaid/pull/3437) - fix(git): support unusual prefixes in branch name by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3438](https://togithub.com/mermaid-js/mermaid/pull/3438) - Re-enable coverage upload to coveralls by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3431](https://togithub.com/mermaid-js/mermaid/pull/3431) - chore(deps): bump actions/checkout from 2 to 3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3449](https://togithub.com/mermaid-js/mermaid/pull/3449) - chore(deps-dev): bump typescript from 4.8.2 to 4.8.3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3446](https://togithub.com/mermaid-js/mermaid/pull/3446) - chore(deps-dev): bump eslint from 8.23.0 to 8.23.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3440](https://togithub.com/mermaid-js/mermaid/pull/3440) - chore(deps-dev): bump babel-jest from 29.0.2 to 29.0.3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3448](https://togithub.com/mermaid-js/mermaid/pull/3448) - chore(deps-dev): bump jest-environment-jsdom from 29.0.2 to 29.0.3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3441](https://togithub.com/mermaid-js/mermaid/pull/3441) - chore(deps-dev): bump [@​babel/core](https://togithub.com/babel/core) from 7.18.13 to 7.19.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3447](https://togithub.com/mermaid-js/mermaid/pull/3447) - chore(deps-dev): bump [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) from 5.36.1 to 5.37.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3451](https://togithub.com/mermaid-js/mermaid/pull/3451) - chore(deps-dev): bump [@​babel/preset-env](https://togithub.com/babel/preset-env) from 7.18.10 to 7.19.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3442](https://togithub.com/mermaid-js/mermaid/pull/3442) - chore(deps-dev): bump concurrently from 7.3.0 to 7.4.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3445](https://togithub.com/mermaid-js/mermaid/pull/3445) - chore(deps-dev): bump [@​typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin) from 5.36.1 to 5.37.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3457](https://togithub.com/mermaid-js/mermaid/pull/3457) - chore(deps-dev): bump eslint-plugin-jest from 27.0.1 to 27.0.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3458](https://togithub.com/mermaid-js/mermaid/pull/3458) - Cleanup & fix eslint warnings by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3453](https://togithub.com/mermaid-js/mermaid/pull/3453) - chore(deps-dev): bump webpack-dev-server from 4.10.1 to 4.11.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3450](https://togithub.com/mermaid-js/mermaid/pull/3450) - chore(deps): bump stylis from 4.1.1 to 4.1.2 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3439](https://togithub.com/mermaid-js/mermaid/pull/3439) - chore(deps): bump dompurify from 2.3.10 to 2.4.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3444](https://togithub.com/mermaid-js/mermaid/pull/3444) - chore(deps-dev): bump [@​types/lodash](https://togithub.com/types/lodash) from 4.14.184 to 4.14.185 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3489](https://togithub.com/mermaid-js/mermaid/pull/3489) - chore(deps-dev): bump esbuild from 0.15.6 to 0.15.8 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3490](https://togithub.com/mermaid-js/mermaid/pull/3490) - chore(deps-dev): bump eslint from 8.23.1 to 8.24.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3521](https://togithub.com/mermaid-js/mermaid/pull/3521) - chore(deps-dev): bump [@​types/prettier](https://togithub.com/types/prettier) from 2.7.0 to 2.7.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3520](https://togithub.com/mermaid-js/mermaid/pull/3520) - chore: fix demo chart pages by [@​weedySeaDragon](https://togithub.com/weedySeaDragon) in [https://github.com/mermaid-js/mermaid/pull/3523](https://togithub.com/mermaid-js/mermaid/pull/3523) - Vitest by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3427](https://togithub.com/mermaid-js/mermaid/pull/3427) - Build mermaid using Vite by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3503](https://togithub.com/mermaid-js/mermaid/pull/3503) - Add "Debug Current Test File" configuration for VSCode by [@​pje](https://togithub.com/pje) in [https://github.com/mermaid-js/mermaid/pull/3509](https://togithub.com/mermaid-js/mermaid/pull/3509) - \[DevOps] Parallel E2E by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3498](https://togithub.com/mermaid-js/mermaid/pull/3498) - chore(deps-dev): update lint-staged requirement from ^13.0.0 to ^13.0.3 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3551](https://togithub.com/mermaid-js/mermaid/pull/3551) - chore(deps-dev): update start-server-and-test requirement from ^1.12.6 to ^1.14.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3553](https://togithub.com/mermaid-js/mermaid/pull/3553) - chore(deps-dev): update jsdom requirement from ^20.0.0 to ^20.0.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3552](https://togithub.com/mermaid-js/mermaid/pull/3552) - chore(deps-dev): update [@​types/express](https://togithub.com/types/express) requirement from ^4.17.13 to ^4.17.14 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3555](https://togithub.com/mermaid-js/mermaid/pull/3555) - chore(deps-dev): update [@​types/lodash](https://togithub.com/types/lodash) requirement from ^4.14.185 to ^4.14.186 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3556](https://togithub.com/mermaid-js/mermaid/pull/3556) - chore(deps-dev): update vitest requirement from ^0.23.1 to ^0.23.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3557](https://togithub.com/mermaid-js/mermaid/pull/3557) - chore(deps-dev): update husky requirement from ^8.0.0 to ^8.0.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3558](https://togithub.com/mermaid-js/mermaid/pull/3558) - chore(deps-dev): update [@​typescript-eslint/parser](https://togithub.com/typescript-eslint/parser) requirement from ^5.37.0 to ^5.39.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3564](https://togithub.com/mermaid-js/mermaid/pull/3564) - chore(deps-dev): update [@​typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/eslint-plugin) requirement from ^5.37.0 to ^5.39.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3565](https://togithub.com/mermaid-js/mermaid/pull/3565) - chore(deps): update [@​types/node](https://togithub.com/types/node) requirement from ^18.7.21 to ^18.8.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3566](https://togithub.com/mermaid-js/mermaid/pull/3566) - chore(deps-dev): update [@​vitest/coverage-c8](https://togithub.com/vitest/coverage-c8) requirement from ^0.23.2 to ^0.23.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3567](https://togithub.com/mermaid-js/mermaid/pull/3567) - chore(deps-dev): update esbuild requirement from ^0.15.8 to ^0.15.10 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3569](https://togithub.com/mermaid-js/mermaid/pull/3569) - chore(deps-dev): update typescript requirement from ^4.8.3 to ^4.8.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3573](https://togithub.com/mermaid-js/mermaid/pull/3573) - chore(deps-dev): update [@​applitools/eyes-cypress](https://togithub.com/applitools/eyes-cypress) requirement from ^3.25.7 to ^3.27.1 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3568](https://togithub.com/mermaid-js/mermaid/pull/3568) - chore(deps-dev): update vite requirement from ^3.0.9 to ^3.1.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3570](https://togithub.com/mermaid-js/mermaid/pull/3570) - chore(deps-dev): update eslint-plugin-jest requirement from ^27.0.4 to ^27.1.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3571](https://togithub.com/mermaid-js/mermaid/pull/3571) - chore(deps-dev): update [@​commitlint/config-conventional](https://togithub.com/commitlint/config-conventional) requirement from ^17.0.0 to ^17.1.0 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3572](https://togithub.com/mermaid-js/mermaid/pull/3572) - Fix `docs:build` and `docs:verify` scripts by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3534](https://togithub.com/mermaid-js/mermaid/pull/3534) - Fix husky `pre-commit` rules by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3536](https://togithub.com/mermaid-js/mermaid/pull/3536) - Fix typos in README.md by [@​elv-nate](https://togithub.com/elv-nate) in [https://github.com/mermaid-js/mermaid/pull/3538](https://togithub.com/mermaid-js/mermaid/pull/3538) - fix(tests): E2E by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3574](https://togithub.com/mermaid-js/mermaid/pull/3574) - fix: pnpm clean in windows by [@​arpansaha13](https://togithub.com/arpansaha13) in [https://github.com/mermaid-js/mermaid/pull/3595](https://togithub.com/mermaid-js/mermaid/pull/3595) - Update Cypress to v10 and fix E2E errors by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3459](https://togithub.com/mermaid-js/mermaid/pull/3459) - ci(e2e-applitols): add applitools CI action by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3483](https://togithub.com/mermaid-js/mermaid/pull/3483) - Remove webpack & babel by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3452](https://togithub.com/mermaid-js/mermaid/pull/3452) - Add vitepress plugin by [@​emersonbottero](https://togithub.com/emersonbottero) in [https://github.com/mermaid-js/mermaid/pull/3476](https://togithub.com/mermaid-js/mermaid/pull/3476) - ci(e2e): fix e2e action when running from fork by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3519](https://togithub.com/mermaid-js/mermaid/pull/3519) - chore(deps-dev): update [@​vitest/ui](https://togithub.com/vitest/ui) requirement from ^0.23.2 to ^0.23.4 by [@​dependabot](https://togithub.com/dependabot) in [https://github.com/mermaid-js/mermaid/pull/3549](https://togithub.com/mermaid-js/mermaid/pull/3549) - chore: Update demo diagrams for monorepo by [@​weedySeaDragon](https://togithub.com/weedySeaDragon) in [https://github.com/mermaid-js/mermaid/pull/3545](https://togithub.com/mermaid-js/mermaid/pull/3545) - Sync `docs/` with `packages/mermaid/src/docs` by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3586](https://togithub.com/mermaid-js/mermaid/pull/3586) - chore: Add volta by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3628](https://togithub.com/mermaid-js/mermaid/pull/3628) - chore: Node 18 by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3630](https://togithub.com/mermaid-js/mermaid/pull/3630) - Configure Renovate by [@​renovate](https://togithub.com/renovate) in [https://github.com/mermaid-js/mermaid/pull/3627](https://togithub.com/mermaid-js/mermaid/pull/3627) ##### Docs - Added mermerd to integrations documentation by [@​KarnerTh](https://togithub.com/KarnerTh) in [https://github.com/mermaid-js/mermaid/pull/3399](https://togithub.com/mermaid-js/mermaid/pull/3399) - Fix typo in documentation by [@​dbartholomae](https://togithub.com/dbartholomae) in [https://github.com/mermaid-js/mermaid/pull/3403](https://togithub.com/mermaid-js/mermaid/pull/3403) - Update duplicate copy pasted directive description by [@​mrmanc](https://togithub.com/mrmanc) in [https://github.com/mermaid-js/mermaid/pull/3415](https://togithub.com/mermaid-js/mermaid/pull/3415) - Docs/bug 3417 by [@​weedySeaDragon](https://togithub.com/weedySeaDragon) in [https://github.com/mermaid-js/mermaid/pull/3419](https://togithub.com/mermaid-js/mermaid/pull/3419) - Docs: add '..auto generated..' to .html documentation files by [@​weedySeaDragon](https://togithub.com/weedySeaDragon) in [https://github.com/mermaid-js/mermaid/pull/3420](https://togithub.com/mermaid-js/mermaid/pull/3420) - Mention obsidian has native support for mermaid by [@​IanLee1521](https://togithub.com/IanLee1521) in [https://github.com/mermaid-js/mermaid/pull/3513](https://togithub.com/mermaid-js/mermaid/pull/3513) - docs: replace `yarn` with `pnpm` in dev guide by [@​aloisklink](https://togithub.com/aloisklink) in [https://github.com/mermaid-js/mermaid/pull/3535](https://togithub.com/mermaid-js/mermaid/pull/3535) - Corrected theme variables reference table layout by [@​marcastel](https://togithub.com/marcastel) in [https://github.com/mermaid-js/mermaid/pull/3541](https://togithub.com/mermaid-js/mermaid/pull/3541) - Working New Documentation Vitepress by [@​emersonbottero](https://togithub.com/emersonbottero) in [https://github.com/mermaid-js/mermaid/pull/3515](https://togithub.com/mermaid-js/mermaid/pull/3515) - CODE_OF_CONDUCT Uploaded by [@​swoyam2609](https://togithub.com/swoyam2609) in [https://github.com/mermaid-js/mermaid/pull/3578](https://togithub.com/mermaid-js/mermaid/pull/3578) - Automated docs spell-checking via GitHub Actions (and address all reported issues) by [@​SeanKilleen](https://togithub.com/SeanKilleen) in [https://github.com/mermaid-js/mermaid/pull/3600](https://togithub.com/mermaid-js/mermaid/pull/3600) - docs:Improved keywords in index.html by [@​aryandeelwal](https://togithub.com/aryandeelwal) in [https://github.com/mermaid-js/mermaid/pull/3579](https://togithub.com/mermaid-js/mermaid/pull/3579) - Contribution.md updates by [@​Aniket1026](https://togithub.com/Aniket1026) in [https://github.com/mermaid-js/mermaid/pull/3614](https://togithub.com/mermaid-js/mermaid/pull/3614) - docs: Add mermaid version to script URL by [@​sidharthv96](https://togithub.com/sidharthv96) in [https://github.com/mermaid-js/mermaid/pull/3596](https://togithub.com/mermaid-js/mermaid/pull/3596) #### New Contributors - [@​KarnerTh](https://togithub.com/KarnerTh) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3399](https://togithub.com/mermaid-js/mermaid/pull/3399) - [@​mrmanc](https://togithub.com/mrmanc) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3415](https://togithub.com/mermaid-js/mermaid/pull/3415) - [@​elliot-nelson](https://togithub.com/elliot-nelson) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3479](https://togithub.com/mermaid-js/mermaid/pull/3479) - [@​emersonbottero](https://togithub.com/emersonbottero) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3476](https://togithub.com/mermaid-js/mermaid/pull/3476) - [@​pje](https://togithub.com/pje) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3509](https://togithub.com/mermaid-js/mermaid/pull/3509) - [@​IanLee1521](https://togithub.com/IanLee1521) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3513](https://togithub.com/mermaid-js/mermaid/pull/3513) - [@​ashleybartlett](https://togithub.com/ashleybartlett) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3524](https://togithub.com/mermaid-js/mermaid/pull/3524) - [@​pbrolin47](https://togithub.com/pbrolin47) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3533](https://togithub.com/mermaid-js/mermaid/pull/3533) - [@​elv-nate](https://togithub.com/elv-nate) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3538](https://togithub.com/mermaid-js/mermaid/pull/3538) - [@​marcastel](https://togithub.com/marcastel) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3541](https://togithub.com/mermaid-js/mermaid/pull/3541) - [@​AndrewL-64](https://togithub.com/AndrewL-64) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3544](https://togithub.com/mermaid-js/mermaid/pull/3544) - [@​swoyam2609](https://togithub.com/swoyam2609) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3578](https://togithub.com/mermaid-js/mermaid/pull/3578) - [@​SeanKilleen](https://togithub.com/SeanKilleen) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3600](https://togithub.com/mermaid-js/mermaid/pull/3600) - [@​aryandeelwal](https://togithub.com/aryandeelwal) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3579](https://togithub.com/mermaid-js/mermaid/pull/3579) - [@​Aniket1026](https://togithub.com/Aniket1026) made their first contribution in [https://github.com/mermaid-js/mermaid/pull/3614](https://togithub.com/mermaid-js/mermaid/pull/3614) **Full Changelog**: mermaid-js/mermaid@v9.1.7...v9.2.0 </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [x] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://app.renovatebot.com/dashboard#github/BirthdayResearch/contented). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4xMi4wIiwidXBkYXRlZEluVmVyIjoiMzQuMTkuMCJ9--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
📑 Summary
Cherry-picked commits are commits as well, and might be tagged (especially if you are cherry-picking commits into a release branch from a trunk branch). So it makes sense to support the
tag
attribute in thecherry-pick
keyword.Resolves #
📏 Design Decisions
For syntax, the most straightforward implementation is to copy from the
commit
keyword.For display, we are currently already rendering the tag
cherry-pick:<ID>
for a cherry-pick. Here, I think the most flexible change is to allow thetag
attribute to override this default tag and completely replace it, which allows the user to choose to extend it (e.g.cherry-pick:A snapshot
) or to use alternate text (e.g.bug fixed
).📋 Tasks
Make sure you
develop
branch