Skip to content
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

Create DAG plots with mermaid #80

Open
adamjstewart opened this issue Mar 31, 2023 · 4 comments
Open

Create DAG plots with mermaid #80

adamjstewart opened this issue Mar 31, 2023 · 4 comments
Labels
enhancement New feature or request

Comments

@adamjstewart
Copy link
Member

spack/spack#36549 (comment) is super cool. We should teach spackbot to automatically draw these for the packages in a PR.

@adamjstewart adamjstewart added the enhancement New feature or request label Mar 31, 2023
@wdconinc
Copy link

wdconinc commented May 4, 2024

It's not that hard to modify spack graph to produce mermaid graphs, and it almost only requires changes to the template.

flowchart TD

  vtyk7kzcmn7kavbl3n3cf7hnje23bdb5["[email protected]%gcc@=13.2.0/vtyk7kz"]
  5hm7tsxe26o26rgi5bg5fdaywsdnsyzh["[email protected]%gcc@=13.2.0/5hm7tsx"]
  hb7gauo7xcjd6bgssllgujqzh3qpe3dj["[email protected]%gcc@=13.2.0/hb7gauo"]
  zb5cfn3eqkobk6m3ct3fy6kst6sntv3y["[email protected]%gcc@=13.2.0/zb5cfn3"]
  jms3baeyhbin25jfzb6zxuav5inthmsp["[email protected]%gcc@=13.2.0/jms3bae"]
  dwc7cptv7fbk7ldjexzd52n2skadzj6u["[email protected]%gcc@=13.2.0/dwc7cpt"]
  kdl7oibr2vy5xv3hrff5vp466qxjsdwq["[email protected]%gcc@=13.2.0/kdl7oib"]
  tacwgqen45cyu2vzmwpq5hfvrov4wojs["[email protected]%gcc@=13.2.0/tacwgqe"]
  hpdzcnnotmuswqubing7bthexz7o4hlr["[email protected]%gcc@=13.2.0/hpdzcnn"]
  lb4v6rvc7sqtnmkmkz5gcp4jqube6akn["[email protected]%gcc@=13.2.0/lb4v6rv"]
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4["[email protected]%gcc@=13.2.0/iqcoap6"]
  opizhcsf3qtxhood23egjfhuus22mdtb["[email protected]%gcc@=13.2.0/opizhcs"]
  wt53adlhnvnsgktnl3veobxbx4qykugd["[email protected]%gcc@=13.2.0/wt53adl"]
  budlz5wxrosl46lvtiq4v754jzyxqs4x["[email protected]%gcc@=13.2.0/budlz5w"]
  zal44oqo4cjnuudhoyjob2ai7rkmymjw["[email protected]%gcc@=13.2.0/zal44oq"]
  faoaqffawrqpaiko4wszldrvnvfrec54["[email protected]%gcc@=13.2.0/faoaqff"]
  r4mwcdygj53ah4wz7svpzkis6e7g3nzt["[email protected]%gcc@=13.2.0/r4mwcdy"]
  o54qwl5ag2lwfgywakfosm5u6zwzxapo["[email protected]%gcc@=13.2.0/o54qwl5"]
  bm2wycp45irfw4thaejgehuu3n43zlgr["[email protected]%gcc@=13.2.0/bm2wycp"]
  uplcruyd6rjxmljmxqdkddpcbimab3sz["[email protected]%gcc@=13.2.0/uplcruy"]
  auth2g65porkdjvnqeqmjl2zyddeebkn["[email protected]%gcc@=13.2.0/auth2g6"]
  f36ohywqt6sqlylpgca2t7cvgr47ar2j["[email protected]%gcc@=13.2.0/f36ohyw"]
  rqkg6gkgqnjeyotbiuh5g2jfslshnwtd["[email protected]%gcc@=13.2.0/rqkg6gk"]
  n5vnqlocfabw5mckga2yympf5dhdmq5m["ca-certificates-mozilla@2023-05-30%gcc@=13.2.0/n5vnqlo"]
  jtti27ubdg3v52qbpsj3n53xksqvkhyr["[email protected]%gcc@=13.2.0/jtti27u"]
  yiicx6ce6klmh4xw7uknxnxktorvxcx2["[email protected]%gcc@=13.2.0/yiicx6c"]
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> wt53adlhnvnsgktnl3veobxbx4qykugd
  kdl7oibr2vy5xv3hrff5vp466qxjsdwq --> dwc7cptv7fbk7ldjexzd52n2skadzj6u
  zb5cfn3eqkobk6m3ct3fy6kst6sntv3y --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  o54qwl5ag2lwfgywakfosm5u6zwzxapo --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  lb4v6rvc7sqtnmkmkz5gcp4jqube6akn --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  o54qwl5ag2lwfgywakfosm5u6zwzxapo --> tacwgqen45cyu2vzmwpq5hfvrov4wojs
  faoaqffawrqpaiko4wszldrvnvfrec54 --> hpdzcnnotmuswqubing7bthexz7o4hlr
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> jms3baeyhbin25jfzb6zxuav5inthmsp
  budlz5wxrosl46lvtiq4v754jzyxqs4x --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  5hm7tsxe26o26rgi5bg5fdaywsdnsyzh --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  kdl7oibr2vy5xv3hrff5vp466qxjsdwq --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> yiicx6ce6klmh4xw7uknxnxktorvxcx2
  faoaqffawrqpaiko4wszldrvnvfrec54 --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  o54qwl5ag2lwfgywakfosm5u6zwzxapo --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  5hm7tsxe26o26rgi5bg5fdaywsdnsyzh --> o54qwl5ag2lwfgywakfosm5u6zwzxapo
  hpdzcnnotmuswqubing7bthexz7o4hlr --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  zb5cfn3eqkobk6m3ct3fy6kst6sntv3y --> r4mwcdygj53ah4wz7svpzkis6e7g3nzt
  5hm7tsxe26o26rgi5bg5fdaywsdnsyzh --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  faoaqffawrqpaiko4wszldrvnvfrec54 --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  o54qwl5ag2lwfgywakfosm5u6zwzxapo --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> dwc7cptv7fbk7ldjexzd52n2skadzj6u
  faoaqffawrqpaiko4wszldrvnvfrec54 --> hb7gauo7xcjd6bgssllgujqzh3qpe3dj
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> uplcruyd6rjxmljmxqdkddpcbimab3sz
  5hm7tsxe26o26rgi5bg5fdaywsdnsyzh --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  zal44oqo4cjnuudhoyjob2ai7rkmymjw --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  faoaqffawrqpaiko4wszldrvnvfrec54 --> kdl7oibr2vy5xv3hrff5vp466qxjsdwq
  bm2wycp45irfw4thaejgehuu3n43zlgr --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  budlz5wxrosl46lvtiq4v754jzyxqs4x --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  uplcruyd6rjxmljmxqdkddpcbimab3sz --> r4mwcdygj53ah4wz7svpzkis6e7g3nzt
  vtyk7kzcmn7kavbl3n3cf7hnje23bdb5 --> lb4v6rvc7sqtnmkmkz5gcp4jqube6akn
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> kdl7oibr2vy5xv3hrff5vp466qxjsdwq
  kdl7oibr2vy5xv3hrff5vp466qxjsdwq --> n5vnqlocfabw5mckga2yympf5dhdmq5m
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  r4mwcdygj53ah4wz7svpzkis6e7g3nzt --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  iqcoap6pz4udho6pamy6xlrqqsn7i5x4 --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  tacwgqen45cyu2vzmwpq5hfvrov4wojs --> faoaqffawrqpaiko4wszldrvnvfrec54
  wt53adlhnvnsgktnl3veobxbx4qykugd --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  r4mwcdygj53ah4wz7svpzkis6e7g3nzt --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  zal44oqo4cjnuudhoyjob2ai7rkmymjw --> rqkg6gkgqnjeyotbiuh5g2jfslshnwtd
  jms3baeyhbin25jfzb6zxuav5inthmsp --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  auth2g65porkdjvnqeqmjl2zyddeebkn --> tacwgqen45cyu2vzmwpq5hfvrov4wojs
  bm2wycp45irfw4thaejgehuu3n43zlgr --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  dwc7cptv7fbk7ldjexzd52n2skadzj6u --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  vtyk7kzcmn7kavbl3n3cf7hnje23bdb5 --> dwc7cptv7fbk7ldjexzd52n2skadzj6u
  r4mwcdygj53ah4wz7svpzkis6e7g3nzt --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  wt53adlhnvnsgktnl3veobxbx4qykugd --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  n5vnqlocfabw5mckga2yympf5dhdmq5m --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  wt53adlhnvnsgktnl3veobxbx4qykugd --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  yiicx6ce6klmh4xw7uknxnxktorvxcx2 --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  jms3baeyhbin25jfzb6zxuav5inthmsp --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  hb7gauo7xcjd6bgssllgujqzh3qpe3dj --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  jms3baeyhbin25jfzb6zxuav5inthmsp --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  bm2wycp45irfw4thaejgehuu3n43zlgr --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  opizhcsf3qtxhood23egjfhuus22mdtb --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  auth2g65porkdjvnqeqmjl2zyddeebkn --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  tacwgqen45cyu2vzmwpq5hfvrov4wojs --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  vtyk7kzcmn7kavbl3n3cf7hnje23bdb5 --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  dwc7cptv7fbk7ldjexzd52n2skadzj6u --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  jtti27ubdg3v52qbpsj3n53xksqvkhyr --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  tacwgqen45cyu2vzmwpq5hfvrov4wojs --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  hpdzcnnotmuswqubing7bthexz7o4hlr --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  yiicx6ce6klmh4xw7uknxnxktorvxcx2 --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  rqkg6gkgqnjeyotbiuh5g2jfslshnwtd --> opizhcsf3qtxhood23egjfhuus22mdtb
  vtyk7kzcmn7kavbl3n3cf7hnje23bdb5 --> bm2wycp45irfw4thaejgehuu3n43zlgr
  hb7gauo7xcjd6bgssllgujqzh3qpe3dj --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  uplcruyd6rjxmljmxqdkddpcbimab3sz --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  opizhcsf3qtxhood23egjfhuus22mdtb --> hpdzcnnotmuswqubing7bthexz7o4hlr
  vtyk7kzcmn7kavbl3n3cf7hnje23bdb5 --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  faoaqffawrqpaiko4wszldrvnvfrec54 --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  hb7gauo7xcjd6bgssllgujqzh3qpe3dj --> hpdzcnnotmuswqubing7bthexz7o4hlr
  rqkg6gkgqnjeyotbiuh5g2jfslshnwtd --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  5hm7tsxe26o26rgi5bg5fdaywsdnsyzh --> iqcoap6pz4udho6pamy6xlrqqsn7i5x4
  opizhcsf3qtxhood23egjfhuus22mdtb --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  tacwgqen45cyu2vzmwpq5hfvrov4wojs --> dwc7cptv7fbk7ldjexzd52n2skadzj6u
  vtyk7kzcmn7kavbl3n3cf7hnje23bdb5 --> zal44oqo4cjnuudhoyjob2ai7rkmymjw
  auth2g65porkdjvnqeqmjl2zyddeebkn --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  yiicx6ce6klmh4xw7uknxnxktorvxcx2 --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  lb4v6rvc7sqtnmkmkz5gcp4jqube6akn --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  opizhcsf3qtxhood23egjfhuus22mdtb --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  hb7gauo7xcjd6bgssllgujqzh3qpe3dj --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  vtyk7kzcmn7kavbl3n3cf7hnje23bdb5 --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  zb5cfn3eqkobk6m3ct3fy6kst6sntv3y --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  auth2g65porkdjvnqeqmjl2zyddeebkn --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  lb4v6rvc7sqtnmkmkz5gcp4jqube6akn --> zb5cfn3eqkobk6m3ct3fy6kst6sntv3y
  tacwgqen45cyu2vzmwpq5hfvrov4wojs --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  zal44oqo4cjnuudhoyjob2ai7rkmymjw --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  rqkg6gkgqnjeyotbiuh5g2jfslshnwtd --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  dwc7cptv7fbk7ldjexzd52n2skadzj6u --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  n5vnqlocfabw5mckga2yympf5dhdmq5m --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  lb4v6rvc7sqtnmkmkz5gcp4jqube6akn --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  faoaqffawrqpaiko4wszldrvnvfrec54 --> dwc7cptv7fbk7ldjexzd52n2skadzj6u
  kdl7oibr2vy5xv3hrff5vp466qxjsdwq --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  tacwgqen45cyu2vzmwpq5hfvrov4wojs --> opizhcsf3qtxhood23egjfhuus22mdtb
  5hm7tsxe26o26rgi5bg5fdaywsdnsyzh --> auth2g65porkdjvnqeqmjl2zyddeebkn
  uplcruyd6rjxmljmxqdkddpcbimab3sz --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  kdl7oibr2vy5xv3hrff5vp466qxjsdwq --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  zal44oqo4cjnuudhoyjob2ai7rkmymjw --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  uplcruyd6rjxmljmxqdkddpcbimab3sz --> jtti27ubdg3v52qbpsj3n53xksqvkhyr
  rqkg6gkgqnjeyotbiuh5g2jfslshnwtd --> budlz5wxrosl46lvtiq4v754jzyxqs4x
  hpdzcnnotmuswqubing7bthexz7o4hlr --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
  kdl7oibr2vy5xv3hrff5vp466qxjsdwq --> vtyk7kzcmn7kavbl3n3cf7hnje23bdb5
  zb5cfn3eqkobk6m3ct3fy6kst6sntv3y --> f36ohywqt6sqlylpgca2t7cvgr47ar2j
Loading

@wdconinc
Copy link

wdconinc commented May 4, 2024

FYI, spack/spack#44009.

@vsoch
Copy link
Member

vsoch commented May 5, 2024

Can you make it longer than wider so it's easier to read / zoom around?

@wdconinc
Copy link

wdconinc commented May 6, 2024

Can you make it longer than wider so it's easier to read / zoom around?

See e.g. spack/spack#44009 (comment) for some styling options. I think this is going to be fragile, though. A small graph may show up fine, but larger graphs are always going to be a mess, I'm afraid.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

3 participants