Skip to content
Snippets Groups Projects
Unverified Commit 830cca7b authored by Florian Maurer's avatar Florian Maurer
Browse files

bump: 1.4.1 -> 1.5.0

parent abe16968
No related branches found
No related tags found
No related merge requests found
eralchemy 1.5.0 (2024-09-17)
=============================
This is release 1.5.0 back on eralchemy.
Instead of `pip install eralchemy2` one should use `pip install eralchemy[graphviz]`.
Other than that, no breaking changes are to be expected.
Features
--------
- Unite codebase of eralchemy2 and eralchemy back to eralchemy
- Includes features from eralchemy2
- Allow having either graphviz or pygraphviz installed by @maurerle in https://github.com/eralchemy/eralchemy/pull/126
- Draw column relations by @JosePVB in https://github.com/eralchemy/eralchemy/pull/72
- CI now uses nox
- proper regex to include/exclude tables/columns
- allow setting title of diagram
- mermaid rendering support
Bugfixes
--------
- Improve tests by using fixtures by @maurerle in https://github.com/eralchemy/eralchemy/pull/120
- build: create a release workflow by @12rambau in https://github.com/eralchemy/eralchemy/pull/128
- Remove references to newsmeme by @kasium in https://github.com/eralchemy/eralchemy/pull/129
- give more readable error output when non sqlalchemy input is given by @maurerle in https://github.com/eralchemy/eralchemy/pull/118
eralchemy2 1.4.1 (2024-05-20) eralchemy2 1.4.1 (2024-05-20)
============================= =============================
......
...@@ -4,26 +4,26 @@ ...@@ -4,26 +4,26 @@
<!-- Generated by graphviz version 2.43.0 (0) <!-- Generated by graphviz version 2.43.0 (0)
--> -->
<!-- Title: %3 Pages: 1 --> <!-- Title: %3 Pages: 1 -->
<svg width="883pt" height="638pt" <svg width="883pt" height="774pt"
viewBox="0.00 0.00 883.00 638.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"> viewBox="0.00 0.00 883.00 774.00" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 634)"> <g id="graph0" class="graph" transform="scale(1 1) rotate(0) translate(4 770)">
<title>%3</title> <title>%3</title>
<polygon fill="white" stroke="transparent" points="-4,4 -4,-634 879,-634 879,4 -4,4"/> <polygon fill="white" stroke="transparent" points="-4,4 -4,-770 879,-770 879,4 -4,4"/>
<!-- post_tags --> <!-- post_tags -->
<g id="node1" class="node"> <g id="node1" class="node">
<title>post_tags</title> <title>post_tags</title>
<polygon fill="none" stroke="black" points="658,-523.5 658,-551.5 861,-551.5 861,-523.5 658,-523.5"/> <polygon fill="none" stroke="black" points="658,-554.5 658,-582.5 861,-582.5 861,-554.5 658,-554.5"/>
<text text-anchor="start" x="721.5" y="-534.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="16.00">post_tags</text> <text text-anchor="start" x="721.5" y="-565.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="16.00">post_tags</text>
<polygon fill="none" stroke="black" points="658,-498.5 658,-523.5 861,-523.5 861,-498.5 658,-498.5"/> <polygon fill="none" stroke="black" points="658,-529.5 658,-554.5 861,-554.5 861,-529.5 658,-529.5"/>
<text text-anchor="start" x="663" y="-508.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">post_id</text> <text text-anchor="start" x="663" y="-539.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">post_id</text>
<text text-anchor="start" x="707" y="-508.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="707" y="-539.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="711" y="-508.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="711" y="-539.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<text text-anchor="start" x="784" y="-508.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text> <text text-anchor="start" x="784" y="-539.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text>
<polygon fill="none" stroke="black" points="658,-473.5 658,-498.5 861,-498.5 861,-473.5 658,-473.5"/> <polygon fill="none" stroke="black" points="658,-504.5 658,-529.5 861,-529.5 861,-504.5 658,-504.5"/>
<text text-anchor="start" x="663" y="-483.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">tag_id</text> <text text-anchor="start" x="663" y="-514.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">tag_id</text>
<text text-anchor="start" x="700" y="-483.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="700" y="-514.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="704" y="-483.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="704" y="-514.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<text text-anchor="start" x="777" y="-483.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text> <text text-anchor="start" x="777" y="-514.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text>
</g> </g>
<!-- users --> <!-- users -->
<g id="node2" class="node"> <g id="node2" class="node">
...@@ -89,156 +89,156 @@ ...@@ -89,156 +89,156 @@
<!-- posts --> <!-- posts -->
<g id="node3" class="node"> <g id="node3" class="node">
<title>posts</title> <title>posts</title>
<polygon fill="none" stroke="black" points="346,-468.5 346,-496.5 562,-496.5 562,-468.5 346,-468.5"/> <polygon fill="none" stroke="black" points="346,-733.5 346,-761.5 562,-761.5 562,-733.5 346,-733.5"/>
<text text-anchor="start" x="432.5" y="-479.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="16.00">posts</text> <text text-anchor="start" x="432.5" y="-744.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="16.00">posts</text>
<polygon fill="none" stroke="black" points="346,-443.5 346,-468.5 562,-468.5 562,-443.5 346,-443.5"/> <polygon fill="none" stroke="black" points="346,-708.5 346,-733.5 562,-733.5 562,-708.5 346,-708.5"/>
<text text-anchor="start" x="351" y="-453.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">id</text> <text text-anchor="start" x="351" y="-718.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">id</text>
<text text-anchor="start" x="362" y="-453.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="362" y="-718.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="366" y="-453.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="366" y="-718.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<text text-anchor="start" x="439" y="-453.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text> <text text-anchor="start" x="439" y="-718.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text>
<polygon fill="none" stroke="black" points="346,-418.5 346,-443.5 562,-443.5 562,-418.5 346,-418.5"/> <polygon fill="none" stroke="black" points="346,-683.5 346,-708.5 562,-708.5 562,-683.5 346,-683.5"/>
<text text-anchor="start" x="351" y="-428.3" font-family="Helvetica,sans-Serif" font-size="14.00">access</text> <text text-anchor="start" x="351" y="-693.3" font-family="Helvetica,sans-Serif" font-size="14.00">access</text>
<text text-anchor="start" x="394" y="-428.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="394" y="-693.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="398" y="-428.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="398" y="-693.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<polygon fill="none" stroke="black" points="346,-393.5 346,-418.5 562,-418.5 562,-393.5 346,-393.5"/> <polygon fill="none" stroke="black" points="346,-658.5 346,-683.5 562,-683.5 562,-658.5 346,-658.5"/>
<text text-anchor="start" x="351" y="-403.3" font-family="Helvetica,sans-Serif" font-size="14.00">author_id</text> <text text-anchor="start" x="351" y="-668.3" font-family="Helvetica,sans-Serif" font-size="14.00">author_id</text>
<text text-anchor="start" x="408" y="-403.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="408" y="-668.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="412" y="-403.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="412" y="-668.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<text text-anchor="start" x="485" y="-403.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text> <text text-anchor="start" x="485" y="-668.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text>
<polygon fill="none" stroke="black" points="346,-368.5 346,-393.5 562,-393.5 562,-368.5 346,-368.5"/> <polygon fill="none" stroke="black" points="346,-633.5 346,-658.5 562,-658.5 562,-633.5 346,-633.5"/>
<text text-anchor="start" x="351" y="-378.3" font-family="Helvetica,sans-Serif" font-size="14.00">date_created</text> <text text-anchor="start" x="351" y="-643.3" font-family="Helvetica,sans-Serif" font-size="14.00">date_created</text>
<text text-anchor="start" x="430" y="-378.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="430" y="-643.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="434" y="-378.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [DATETIME]</text> <text text-anchor="start" x="434" y="-643.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [DATETIME]</text>
<polygon fill="none" stroke="black" points="346,-343.5 346,-368.5 562,-368.5 562,-343.5 346,-343.5"/> <polygon fill="none" stroke="black" points="346,-608.5 346,-633.5 562,-633.5 562,-608.5 346,-608.5"/>
<text text-anchor="start" x="351" y="-353.3" font-family="Helvetica,sans-Serif" font-size="14.00">description</text> <text text-anchor="start" x="351" y="-618.3" font-family="Helvetica,sans-Serif" font-size="14.00">description</text>
<text text-anchor="start" x="417" y="-353.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="417" y="-618.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="421" y="-353.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text> <text text-anchor="start" x="421" y="-618.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text>
<polygon fill="none" stroke="black" points="346,-318.5 346,-343.5 562,-343.5 562,-318.5 346,-318.5"/> <polygon fill="none" stroke="black" points="346,-583.5 346,-608.5 562,-608.5 562,-583.5 346,-583.5"/>
<text text-anchor="start" x="351" y="-328.3" font-family="Helvetica,sans-Serif" font-size="14.00">link</text> <text text-anchor="start" x="351" y="-593.3" font-family="Helvetica,sans-Serif" font-size="14.00">link</text>
<text text-anchor="start" x="372" y="-328.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="372" y="-593.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="376" y="-328.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [VARCHAR(250)]</text> <text text-anchor="start" x="376" y="-593.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [VARCHAR(250)]</text>
<polygon fill="none" stroke="black" points="346,-293.5 346,-318.5 562,-318.5 562,-293.5 346,-293.5"/> <polygon fill="none" stroke="black" points="346,-558.5 346,-583.5 562,-583.5 562,-558.5 346,-558.5"/>
<text text-anchor="start" x="351" y="-303.3" font-family="Helvetica,sans-Serif" font-size="14.00">num_comments</text> <text text-anchor="start" x="351" y="-568.3" font-family="Helvetica,sans-Serif" font-size="14.00">num_comments</text>
<text text-anchor="start" x="450" y="-303.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="450" y="-568.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="454" y="-303.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="454" y="-568.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<polygon fill="none" stroke="black" points="346,-268.5 346,-293.5 562,-293.5 562,-268.5 346,-268.5"/> <polygon fill="none" stroke="black" points="346,-533.5 346,-558.5 562,-558.5 562,-533.5 346,-533.5"/>
<text text-anchor="start" x="351" y="-278.3" font-family="Helvetica,sans-Serif" font-size="14.00">score</text> <text text-anchor="start" x="351" y="-543.3" font-family="Helvetica,sans-Serif" font-size="14.00">score</text>
<text text-anchor="start" x="385" y="-278.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="385" y="-543.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="389" y="-278.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="389" y="-543.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<polygon fill="none" stroke="black" points="346,-243.5 346,-268.5 562,-268.5 562,-243.5 346,-243.5"/> <polygon fill="none" stroke="black" points="346,-508.5 346,-533.5 562,-533.5 562,-508.5 346,-508.5"/>
<text text-anchor="start" x="351" y="-253.3" font-family="Helvetica,sans-Serif" font-size="14.00">tags</text> <text text-anchor="start" x="351" y="-518.3" font-family="Helvetica,sans-Serif" font-size="14.00">tags</text>
<text text-anchor="start" x="377" y="-253.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="377" y="-518.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="381" y="-253.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text> <text text-anchor="start" x="381" y="-518.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text>
<polygon fill="none" stroke="black" points="346,-218.5 346,-243.5 562,-243.5 562,-218.5 346,-218.5"/> <polygon fill="none" stroke="black" points="346,-483.5 346,-508.5 562,-508.5 562,-483.5 346,-483.5"/>
<text text-anchor="start" x="351" y="-228.3" font-family="Helvetica,sans-Serif" font-size="14.00">title</text> <text text-anchor="start" x="351" y="-493.3" font-family="Helvetica,sans-Serif" font-size="14.00">title</text>
<text text-anchor="start" x="373" y="-228.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="373" y="-493.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="377" y="-228.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [VARCHAR(200)]</text> <text text-anchor="start" x="377" y="-493.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [VARCHAR(200)]</text>
<polygon fill="none" stroke="black" points="346,-193.5 346,-218.5 562,-218.5 562,-193.5 346,-193.5"/> <polygon fill="none" stroke="black" points="346,-458.5 346,-483.5 562,-483.5 562,-458.5 346,-458.5"/>
<text text-anchor="start" x="351" y="-203.3" font-family="Helvetica,sans-Serif" font-size="14.00">votes</text> <text text-anchor="start" x="351" y="-468.3" font-family="Helvetica,sans-Serif" font-size="14.00">votes</text>
<text text-anchor="start" x="384" y="-203.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="384" y="-468.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="388" y="-203.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text> <text text-anchor="start" x="388" y="-468.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text>
</g> </g>
<!-- users&#45;&#45;posts --> <!-- users&#45;&#45;posts -->
<g id="edge1" class="edge"> <g id="edge1" class="edge">
<title>users&#45;&#45;posts</title> <title>users:id&#45;&#45;posts:author_id</title>
<path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M265.3,-248.56C289.36,-260.99 314.3,-273.87 337.84,-286.03"/> <path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M258.5,-316.5C420.89,-316.5 182.61,-671.5 345,-671.5"/>
<text text-anchor="start" x="312.84" y="-274.83" font-family="Times,serif" font-size="14.00">0..N</text> <text text-anchor="start" x="320" y="-660.3" font-family="Times,serif" font-size="14.00">0..N</text>
<text text-anchor="start" x="265.3" y="-237.36" font-family="Times,serif" font-size="14.00">1</text> <text text-anchor="start" x="258.5" y="-305.3" font-family="Times,serif" font-size="14.00">1</text>
</g> </g>
<!-- comments --> <!-- comments -->
<g id="node4" class="node"> <g id="node4" class="node">
<title>comments</title> <title>comments</title>
<polygon fill="none" stroke="black" points="651,-339.5 651,-367.5 867,-367.5 867,-339.5 651,-339.5"/> <polygon fill="none" stroke="black" points="651,-392.5 651,-420.5 867,-420.5 867,-392.5 651,-392.5"/>
<text text-anchor="start" x="718.5" y="-350.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="16.00">comments</text> <text text-anchor="start" x="718.5" y="-403.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="16.00">comments</text>
<polygon fill="none" stroke="black" points="651,-314.5 651,-339.5 867,-339.5 867,-314.5 651,-314.5"/> <polygon fill="none" stroke="black" points="651,-367.5 651,-392.5 867,-392.5 867,-367.5 651,-367.5"/>
<text text-anchor="start" x="656" y="-324.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">id</text> <text text-anchor="start" x="656" y="-377.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">id</text>
<text text-anchor="start" x="667" y="-324.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="667" y="-377.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="671" y="-324.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="671" y="-377.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<text text-anchor="start" x="744" y="-324.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text> <text text-anchor="start" x="744" y="-377.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text>
<polygon fill="none" stroke="black" points="651,-289.5 651,-314.5 867,-314.5 867,-289.5 651,-289.5"/> <polygon fill="none" stroke="black" points="651,-342.5 651,-367.5 867,-367.5 867,-342.5 651,-342.5"/>
<text text-anchor="start" x="656" y="-299.3" font-family="Helvetica,sans-Serif" font-size="14.00">author_id</text> <text text-anchor="start" x="656" y="-352.3" font-family="Helvetica,sans-Serif" font-size="14.00">author_id</text>
<text text-anchor="start" x="713" y="-299.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="713" y="-352.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="717" y="-299.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="717" y="-352.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<text text-anchor="start" x="790" y="-299.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text> <text text-anchor="start" x="790" y="-352.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text>
<polygon fill="none" stroke="black" points="651,-264.5 651,-289.5 867,-289.5 867,-264.5 651,-264.5"/> <polygon fill="none" stroke="black" points="651,-317.5 651,-342.5 867,-342.5 867,-317.5 651,-317.5"/>
<text text-anchor="start" x="656" y="-274.3" font-family="Helvetica,sans-Serif" font-size="14.00">comment</text> <text text-anchor="start" x="656" y="-327.3" font-family="Helvetica,sans-Serif" font-size="14.00">comment</text>
<text text-anchor="start" x="714" y="-274.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="714" y="-327.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="718" y="-274.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text> <text text-anchor="start" x="718" y="-327.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text>
<polygon fill="none" stroke="black" points="651,-239.5 651,-264.5 867,-264.5 867,-239.5 651,-239.5"/> <polygon fill="none" stroke="black" points="651,-292.5 651,-317.5 867,-317.5 867,-292.5 651,-292.5"/>
<text text-anchor="start" x="656" y="-249.3" font-family="Helvetica,sans-Serif" font-size="14.00">date_created</text> <text text-anchor="start" x="656" y="-302.3" font-family="Helvetica,sans-Serif" font-size="14.00">date_created</text>
<text text-anchor="start" x="735" y="-249.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="735" y="-302.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="739" y="-249.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [DATETIME]</text> <text text-anchor="start" x="739" y="-302.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [DATETIME]</text>
<polygon fill="none" stroke="black" points="651,-214.5 651,-239.5 867,-239.5 867,-214.5 651,-214.5"/> <polygon fill="none" stroke="black" points="651,-267.5 651,-292.5 867,-292.5 867,-267.5 651,-267.5"/>
<text text-anchor="start" x="656" y="-224.3" font-family="Helvetica,sans-Serif" font-size="14.00">parent_id</text> <text text-anchor="start" x="656" y="-277.3" font-family="Helvetica,sans-Serif" font-size="14.00">parent_id</text>
<text text-anchor="start" x="713" y="-224.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="713" y="-277.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="717" y="-224.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="717" y="-277.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<polygon fill="none" stroke="black" points="651,-189.5 651,-214.5 867,-214.5 867,-189.5 651,-189.5"/> <polygon fill="none" stroke="black" points="651,-242.5 651,-267.5 867,-267.5 867,-242.5 651,-242.5"/>
<text text-anchor="start" x="656" y="-199.3" font-family="Helvetica,sans-Serif" font-size="14.00">post_id</text> <text text-anchor="start" x="656" y="-252.3" font-family="Helvetica,sans-Serif" font-size="14.00">post_id</text>
<text text-anchor="start" x="700" y="-199.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="700" y="-252.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="704" y="-199.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="704" y="-252.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<text text-anchor="start" x="777" y="-199.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text> <text text-anchor="start" x="777" y="-252.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text>
<polygon fill="none" stroke="black" points="651,-164.5 651,-189.5 867,-189.5 867,-164.5 651,-164.5"/> <polygon fill="none" stroke="black" points="651,-217.5 651,-242.5 867,-242.5 867,-217.5 651,-217.5"/>
<text text-anchor="start" x="656" y="-174.3" font-family="Helvetica,sans-Serif" font-size="14.00">score</text> <text text-anchor="start" x="656" y="-227.3" font-family="Helvetica,sans-Serif" font-size="14.00">score</text>
<text text-anchor="start" x="690" y="-174.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="690" y="-227.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="694" y="-174.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="694" y="-227.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<polygon fill="none" stroke="black" points="651,-139.5 651,-164.5 867,-164.5 867,-139.5 651,-139.5"/> <polygon fill="none" stroke="black" points="651,-192.5 651,-217.5 867,-217.5 867,-192.5 651,-192.5"/>
<text text-anchor="start" x="656" y="-149.3" font-family="Helvetica,sans-Serif" font-size="14.00">votes</text> <text text-anchor="start" x="656" y="-202.3" font-family="Helvetica,sans-Serif" font-size="14.00">votes</text>
<text text-anchor="start" x="689" y="-149.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="689" y="-202.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="693" y="-149.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text> <text text-anchor="start" x="693" y="-202.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [TEXT]</text>
</g> </g>
<!-- users&#45;&#45;comments --> <!-- users&#45;&#45;comments -->
<g id="edge2" class="edge"> <g id="edge2" class="edge">
<title>users&#45;&#45;comments</title> <title>users:id&#45;&#45;comments:author_id</title>
<path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M265.02,-167.96C352.27,-162.7 468.89,-161.56 570,-180.5 594.18,-185.03 619.24,-192.57 642.89,-201.13"/> <path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M258.5,-316.5C396.94,-316.5 435.1,-285.37 570,-316.5 608.54,-325.39 610.44,-355.5 650,-355.5"/>
<text text-anchor="start" x="617.89" y="-189.93" font-family="Times,serif" font-size="14.00">0..N</text> <text text-anchor="start" x="625" y="-344.3" font-family="Times,serif" font-size="14.00">0..N</text>
<text text-anchor="start" x="265.02" y="-156.76" font-family="Times,serif" font-size="14.00">1</text> <text text-anchor="start" x="258.5" y="-320.3" font-family="Times,serif" font-size="14.00">1</text>
</g> </g>
<!-- posts&#45;&#45;post_tags --> <!-- posts&#45;&#45;post_tags -->
<g id="edge3" class="edge"> <g id="edge3" class="edge">
<title>posts&#45;&#45;post_tags</title> <title>posts:id&#45;&#45;post_tags:post_id</title>
<path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M570.42,-409.11C606.87,-429.21 646.29,-450.93 679.54,-469.26"/> <path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M563,-721.5C653.25,-721.5 566.75,-541.5 657,-541.5"/>
<text text-anchor="start" x="654.54" y="-458.06" font-family="Times,serif" font-size="14.00">0..N</text> <text text-anchor="start" x="632" y="-530.3" font-family="Times,serif" font-size="14.00">0..N</text>
<text text-anchor="start" x="570.42" y="-397.91" font-family="Times,serif" font-size="14.00">1</text> <text text-anchor="start" x="556" y="-710.3" font-family="Times,serif" font-size="14.00">1</text>
</g> </g>
<!-- posts&#45;&#45;comments --> <!-- posts&#45;&#45;comments -->
<g id="edge4" class="edge"> <g id="edge4" class="edge">
<title>posts&#45;&#45;comments</title> <title>posts:id&#45;&#45;comments:post_id</title>
<path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M570.42,-310.46C594.16,-303.25 619.17,-295.65 642.91,-288.45"/> <path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M563,-721.5C668.56,-721.5 544.44,-254.5 650,-254.5"/>
<text text-anchor="start" x="617.91" y="-277.25" font-family="Times,serif" font-size="14.00">0..N</text> <text text-anchor="start" x="625" y="-243.3" font-family="Times,serif" font-size="14.00">0..N</text>
<text text-anchor="start" x="570.42" y="-299.26" font-family="Times,serif" font-size="14.00">1</text> <text text-anchor="start" x="563" y="-710.3" font-family="Times,serif" font-size="14.00">1</text>
</g> </g>
<!-- comments&#45;&#45;comments --> <!-- comments&#45;&#45;comments -->
<g id="edge5" class="edge"> <g id="edge5" class="edge">
<title>comments&#45;&#45;comments</title> <title>comments:id&#45;&#45;comments:parent_id</title>
<path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M736.35,-371.94C741.06,-382.72 748.61,-389.5 759,-389.5 769.39,-389.5 776.94,-382.72 781.65,-371.94"/> <path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M650.93,-382.55C605.56,-377.39 567,-362.66 567,-330 567,-297.34 605.56,-282.61 650.93,-277.45"/>
<text text-anchor="start" x="756.65" y="-375.74" font-family="Times,serif" font-size="14.00">0..N</text> <text text-anchor="start" x="625.93" y="-266.25" font-family="Times,serif" font-size="14.00">0..N</text>
<text text-anchor="start" x="705.35" y="-375.74" font-family="Times,serif" font-size="14.00">{0,1}</text> <text text-anchor="start" x="619.93" y="-386.35" font-family="Times,serif" font-size="14.00">{0,1}</text>
</g> </g>
<!-- tags --> <!-- tags -->
<g id="node5" class="node"> <g id="node5" class="node">
<title>tags</title> <title>tags</title>
<polygon fill="none" stroke="black" points="369,-597.5 369,-625.5 539,-625.5 539,-597.5 369,-597.5"/> <polygon fill="none" stroke="black" points="369,-404.5 369,-432.5 539,-432.5 539,-404.5 369,-404.5"/>
<text text-anchor="start" x="437" y="-608.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="16.00">tags</text> <text text-anchor="start" x="437" y="-415.7" font-family="Helvetica,sans-Serif" font-weight="bold" font-size="16.00">tags</text>
<polygon fill="none" stroke="black" points="369,-572.5 369,-597.5 539,-597.5 539,-572.5 369,-572.5"/> <polygon fill="none" stroke="black" points="369,-379.5 369,-404.5 539,-404.5 539,-379.5 369,-379.5"/>
<text text-anchor="start" x="374" y="-582.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">id</text> <text text-anchor="start" x="374" y="-389.3" font-family="Helvetica,sans-Serif" text-decoration="underline" font-size="14.00">id</text>
<text text-anchor="start" x="385" y="-582.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="385" y="-389.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="389" y="-582.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text> <text text-anchor="start" x="389" y="-389.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [INTEGER]</text>
<text text-anchor="start" x="462" y="-582.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text> <text text-anchor="start" x="462" y="-389.3" font-family="Helvetica,sans-Serif" font-size="14.00"> NOT NULL</text>
<polygon fill="none" stroke="black" points="369,-547.5 369,-572.5 539,-572.5 539,-547.5 369,-547.5"/> <polygon fill="none" stroke="black" points="369,-354.5 369,-379.5 539,-379.5 539,-354.5 369,-354.5"/>
<text text-anchor="start" x="374" y="-557.3" font-family="Helvetica,sans-Serif" font-size="14.00">name</text> <text text-anchor="start" x="374" y="-364.3" font-family="Helvetica,sans-Serif" font-size="14.00">name</text>
<text text-anchor="start" x="409" y="-557.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="409" y="-364.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="413" y="-557.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [VARCHAR(80)]</text> <text text-anchor="start" x="413" y="-364.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [VARCHAR(80)]</text>
<polygon fill="none" stroke="black" points="369,-522.5 369,-547.5 539,-547.5 539,-522.5 369,-522.5"/> <polygon fill="none" stroke="black" points="369,-329.5 369,-354.5 539,-354.5 539,-329.5 369,-329.5"/>
<text text-anchor="start" x="374" y="-532.3" font-family="Helvetica,sans-Serif" font-size="14.00">slug</text> <text text-anchor="start" x="374" y="-339.3" font-family="Helvetica,sans-Serif" font-size="14.00">slug</text>
<text text-anchor="start" x="399" y="-532.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text> <text text-anchor="start" x="399" y="-339.3" font-family="Helvetica,sans-Serif" font-size="14.00"> </text>
<text text-anchor="start" x="403" y="-532.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [VARCHAR(80)]</text> <text text-anchor="start" x="403" y="-339.3" font-family="Helvetica,sans-Serif" font-size="14.00"> [VARCHAR(80)]</text>
</g> </g>
<!-- tags&#45;&#45;post_tags --> <!-- tags&#45;&#45;post_tags -->
<g id="edge6" class="edge"> <g id="edge6" class="edge">
<title>tags&#45;&#45;post_tags</title> <title>tags:id&#45;&#45;post_tags:tag_id</title>
<path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M547.14,-555.65C579.35,-549.05 615.82,-541.59 649.25,-534.75"/> <path fill="none" stroke="#7f7f7f" stroke-dasharray="5,2" d="M540,-392.5C615.77,-392.5 581.23,-516.5 657,-516.5"/>
<text text-anchor="start" x="624.25" y="-523.55" font-family="Times,serif" font-size="14.00">0..N</text> <text text-anchor="start" x="632" y="-505.3" font-family="Times,serif" font-size="14.00">0..N</text>
<text text-anchor="start" x="547.14" y="-544.45" font-family="Times,serif" font-size="14.00">1</text> <text text-anchor="start" x="540" y="-392.55" font-family="Times,serif" font-size="14.00">1</text>
</g> </g>
</g> </g>
</svg> </svg>
[tags] [post_tags]
*post_id {label:"INTEGER"}
*tag_id {label:"INTEGER"}
[users]
*id {label:"INTEGER"} *id {label:"INTEGER"}
slug {label:"VARCHAR(80)"} activation_key {label:"VARCHAR(80)"}
name {label:"VARCHAR(80)"} date_joined {label:"DATETIME"}
email {label:"VARCHAR(150)"}
email_alerts {label:"BOOLEAN"}
followers {label:"TEXT"}
following {label:"TEXT"}
karma {label:"INTEGER"}
openid {label:"VARCHAR(80)"}
password {label:"VARCHAR(80)"}
receive_email {label:"BOOLEAN"}
role {label:"INTEGER"}
username {label:"VARCHAR(60)"}
[posts] [posts]
*id {label:"INTEGER"} *id {label:"INTEGER"}
access {label:"INTEGER"}
author_id {label:"INTEGER"} author_id {label:"INTEGER"}
title {label:"VARCHAR(200)"} date_created {label:"DATETIME"}
description {label:"TEXT"} description {label:"TEXT"}
link {label:"VARCHAR(250)"} link {label:"VARCHAR(250)"}
date_created {label:"DATETIME"}
score {label:"INTEGER"}
num_comments {label:"INTEGER"} num_comments {label:"INTEGER"}
votes {label:"TEXT"} score {label:"INTEGER"}
access {label:"INTEGER"}
tags {label:"TEXT"} tags {label:"TEXT"}
[users] title {label:"VARCHAR(200)"}
*id {label:"INTEGER"} votes {label:"TEXT"}
username {label:"VARCHAR(60)"}
email {label:"VARCHAR(150)"}
karma {label:"INTEGER"}
date_joined {label:"DATETIME"}
activation_key {label:"VARCHAR(80)"}
role {label:"INTEGER"}
receive_email {label:"BOOLEAN"}
email_alerts {label:"BOOLEAN"}
followers {label:"TEXT"}
following {label:"TEXT"}
password {label:"VARCHAR(80)"}
openid {label:"VARCHAR(80)"}
[comments] [comments]
*id {label:"INTEGER"} *id {label:"INTEGER"}
author_id {label:"INTEGER"} author_id {label:"INTEGER"}
post_id {label:"INTEGER"}
parent_id {label:"INTEGER"}
comment {label:"TEXT"} comment {label:"TEXT"}
date_created {label:"DATETIME"} date_created {label:"DATETIME"}
parent_id {label:"INTEGER"}
post_id {label:"INTEGER"}
score {label:"INTEGER"} score {label:"INTEGER"}
votes {label:"TEXT"} votes {label:"TEXT"}
[post_tags] [tags]
*post_id {label:"INTEGER"} *id {label:"INTEGER"}
*tag_id {label:"INTEGER"} name {label:"VARCHAR(80)"}
users ?--* posts slug {label:"VARCHAR(80)"}
posts ?--* comments tags."id" 1--* post_tags."tag_id"
users ?--* comments posts."id" 1--* post_tags."post_id"
comments ?--* comments users."id" 1--* posts."author_id"
tags ?--* post_tags comments."id" ?--* comments."parent_id"
posts ?--* post_tags posts."id" 1--* comments."post_id"
users."id" 1--* comments."author_id"
...@@ -128,5 +128,5 @@ class Tag(Base): ...@@ -128,5 +128,5 @@ class Tag(Base):
if __name__ == "__main__": if __name__ == "__main__":
from eralchemy import render_er from eralchemy import render_er
render_er(Base, "../forum.svg") render_er(Base, "forum.svg")
render_er(Base, "../forum.er") render_er(Base, "forum.er")
...@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta" ...@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
[project] [project]
name = "eralchemy" name = "eralchemy"
version = "1.4.1" version = "1.5.0"
description = "Simple entity relation (ER) diagrams generation" description = "Simple entity relation (ER) diagrams generation"
authors = [ authors = [
{ name = "Alexis Benoist", email = "Alexis-benoist@users.noreply.github.com"}, { name = "Alexis Benoist", email = "Alexis-benoist@users.noreply.github.com"},
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment