Lazarus
Announcements => Third party => Topic started by: zamtmn on September 14, 2016, 03:23:05 am
-
Good day All!
A small program to build a dependency tree.
http://svn.shamangrad.net/zcad/trunk/other/pudgb/ https://github.com/zamtmn/pudgb
Uses fcl-passrc to parse sources.
Import lpi, scan, and save. Result like this
DiGraph Classes {
pudgb -> mainform
mainform -> uoptions
mainform -> uscaner
mainform -> uscanresult
mainform -> uwriter
mainform -> ulpiimporter
uscaner -> uoptions
uscaner -> uscanresult
uscaner -> ufileutils
uwriter -> uoptions
uwriter -> uscanresult
ulpiimporter -> uoptions
ulpiimporter -> ufileutils
}
can be visualized in GraphViz (or converted to yEd)
Мore pictures:
(http://i83.fastpic.ru/thumb/2016/0913/14/3663f49f884e966f37173218b4645b14.jpeg) (http://fastpic.ru/view/83/2016/0913/3663f49f884e966f37173218b4645b14.png.html)
(http://i85.fastpic.ru/thumb/2016/0913/d1/075ae3680268bd80c6b1ff12897004d1.jpeg) (http://fastpic.ru/view/85/2016/0913/075ae3680268bd80c6b1ff12897004d1.png.html)
(http://i78.fastpic.ru/thumb/2016/0913/53/92c0330153fb6e6ff7f41c65cc87bf53.jpeg) (http://fastpic.ru/view/78/2016/0913/92c0330153fb6e6ff7f41c65cc87bf53.png.html)
(http://i84.fastpic.ru/thumb/2016/0913/ad/8e7879e48cca82948dcd0b3eefbbeaad.jpeg) (http://fastpic.ru/view/84/2016/0913/8e7879e48cca82948dcd0b3eefbbeaad.png.html)
(http://i84.fastpic.ru/thumb/2016/0913/4c/52a49a89f51968f465c2f774694a484c.jpeg) (http://fastpic.ru/view/84/2016/0913/52a49a89f51968f465c2f774694a484c.png.html)
(http://i84.fastpic.ru/thumb/2016/0913/0b/8552429f9c353318883983438755c80b.jpeg) (http://fastpic.ru/view/84/2016/0913/8552429f9c353318883983438755c80b.png.html)
(http://i84.fastpic.ru/thumb/2016/0913/99/_fb340d6c60d83397667bedf9bd8b1f99.jpeg) (http://fastpic.ru/view/84/2016/0913/_fb340d6c60d83397667bedf9bd8b1f99.png.html)
-
Looks similar: https://github.com/GalapagosAdmin/PasViz :P
-
Yes it is the same. But I use the parser from the fpc structure. Also maybe try the data types graph
-
I've played a bit with it and have a few problems.
The first (not supporting /* in -Fu directories like FPC does) is easily worked around, but the second sees to be that the -Fi for includes only seems to work for the first module not for later ones?
For it to really be useful it should model both interface and implementation dependencies (dashes and dotted lines?) though.
It is an interesting start though, and it is great that one can play with it themselves.
-
>> but the second sees to be that the -Fi for includes only seems to work for the first module not for later ones?
Should work for all. But there is no support for Lazarus macros.
In my opinion while the big problem is errors on the right code in fcl-passrc
I will add settings. I think something like:
-Include to graph mask
-Exclude from graph mask
-Include not fonded units to graph
-Line type for interface uses edges
-Line type for implementation uses edges
-Colorizing nodes from unit folder
-Your wishes))
Also will be useful to find all loops in graph
-
Not found units and other data to a log file?
-
yes.
-Informative log
-
Added simple settings. There may be difficulties with the building, the program now depends on non-standard components ( http://svn.shamangrad.net/zcad/trunk/cad_source/components/ ). But the interface is very simple
-
Added finding loops in the program uses structure.
An example of analyzing a program consisting of more than 200 units (https://sourceforge.net/projects/zcad). Found 4 bottlenecks forming loops:
DiGraph Classes {
edge [style=solid]
uzcfcommandline_34_4 -> uzcdrawings_43_7
edge [style=solid]
uzcfcommandline_34_4 -> uzccommandsmanager_25_4
edge [style=solid]
uzcfcommandline_34_4 -> uzctreenode_26_4
edge [style=dotted]
uzcfcommandline_34_4 -> uzcshared_14_0
edge [style=dotted]
uzeentity_23_5 -> uzglviewareageneral_34_0
edge [style=dotted]
uzeentity_23_5 -> uzeentityfactory_9_0
edge [style=dotted]
uzeentity_23_5 -> uzeentgenericsubentry_18_0
edge [style=dotted]
uzeentity_23_5 -> UGDBSelectedObjArray_14_2
edge [style=dotted]
uzgprimitives_12_1 -> uzglvectorobject_12_0
edge [style=solid]
uzglvectorobject_12_0 -> uzgprimitives_12_1
edge [style=solid]
uzglviewareageneral_34_0 -> UGDBSelectedObjArray_14_2
edge [style=solid]
uzglviewareageneral_34_0 -> uzeentity_23_5
edge [style=solid]
uzglviewareageneral_34_0 -> uzedrawingabstract_15_0
edge [style=solid]
uzglviewareageneral_34_0 -> uzeentitiestree_10_0
edge [style=solid]
uzglviewareageneral_34_0 -> UGDBOpenArrayOfPV_12_1
edge [style=solid]
uzglviewareageneral_34_0 -> uzeentgenericsubentry_18_0
edge [style=solid]
uzglviewareageneral_34_0 -> UGDBVisibleOpenArray_9_0
edge [style=solid]
uzglviewareageneral_34_0 -> uzglviewareaabstract_19_0
edge [style=solid]
UGDBSelectedObjArray_14_2 -> uzeentwithmatrix_10_0
edge [style=solid]
UGDBSelectedObjArray_14_2 -> uzeentity_23_5
edge [style=dotted]
UGDBSelectedObjArray_14_2 -> uzedrawingabstract_15_0
edge [style=dotted]
UGDBSelectedObjArray_14_2 -> uzeentgenericsubentry_18_0
edge [style=solid]
uzeentwithmatrix_10_0 -> uzeentity_23_5
edge [style=solid]
uzeentwithmatrix_10_0 -> uzeentitiestree_10_0
edge [style=solid]
uzeentitiestree_10_0 -> gzctnrtree_8_0
edge [style=solid]
uzeentitiestree_10_0 -> UGDBVisibleOpenArray_9_0
edge [style=solid]
uzeentitiestree_10_0 -> uzeentity_23_5
edge [style=solid]
gzctnrtree_8_0 -> UGDBVisibleOpenArray_9_0
edge [style=solid]
gzctnrtree_8_0 -> uzeentity_23_5
edge [style=solid]
UGDBVisibleOpenArray_9_0 -> uzeentity_23_5
edge [style=solid]
UGDBVisibleOpenArray_9_0 -> UGDBOpenArrayOfPV_12_1
edge [style=solid]
UGDBOpenArrayOfPV_12_1 -> uzeentity_23_5
edge [style=dotted]
UGDBOpenArrayOfPV_12_1 -> uzeentityfactory_9_0
edge [style=solid]
uzeentityfactory_9_0 -> uzeentgenericsubentry_18_0
edge [style=solid]
uzeentityfactory_9_0 -> uzeentity_23_5
edge [style=solid]
uzeentgenericsubentry_18_0 -> UGDBVisibleTreeArray_8_0
edge [style=solid]
uzeentgenericsubentry_18_0 -> UGDBOpenArrayOfPV_12_1
edge [style=solid]
uzeentgenericsubentry_18_0 -> uzeentwithmatrix_10_0
edge [style=solid]
uzeentgenericsubentry_18_0 -> uzeentity_23_5
edge [style=solid]
uzeentgenericsubentry_18_0 -> uzeentitiestree_10_0
edge [style=solid]
UGDBVisibleTreeArray_8_0 -> uzeentitiestree_10_0
edge [style=solid]
UGDBVisibleTreeArray_8_0 -> UGDBVisibleOpenArray_9_0
edge [style=solid]
UGDBVisibleTreeArray_8_0 -> uzeentity_23_5
edge [style=solid]
uzedrawingabstract_15_0 -> uzeentity_23_5
edge [style=solid]
uzedrawingabstract_15_0 -> uzeentgenericsubentry_18_0
edge [style=solid]
uzedrawingabstract_15_0 -> uzeroot_13_0
edge [style=solid]
uzedrawingabstract_15_0 -> UGDBSelectedObjArray_14_2
edge [style=solid]
uzedrawingabstract_15_0 -> UGDBOpenArrayOfPV_12_1
edge [style=solid]
uzeroot_13_0 -> uzeentitiestree_10_0
edge [style=solid]
uzeroot_13_0 -> uzeentity_23_5
edge [style=solid]
uzeroot_13_0 -> uzeentgenericsubentry_18_0
edge [style=solid]
uzeroot_13_0 -> uzeentconnected_4_0
edge [style=solid]
uzeentconnected_4_0 -> uzeentity_23_5
edge [style=solid]
uzeentconnected_4_0 -> uzeentgenericsubentry_18_0
edge [style=solid]
uzeentconnected_4_0 -> UGDBOpenArrayOfPV_12_1
edge [style=solid]
uzglviewareaabstract_19_0 -> UGDBOpenArrayOfPV_12_1
edge [style=solid]
uzglviewareaabstract_19_0 -> uzeentgenericsubentry_18_0
edge [style=solid]
uzglviewareaabstract_19_0 -> uzeentitiestree_10_0
edge [style=solid]
uzglviewareaabstract_19_0 -> uzedrawingabstract_15_0
edge [style=solid]
uzglviewareaabstract_19_0 -> uzeentity_23_5
edge [style=solid]
uzcdrawings_43_7 -> uzedimblocksregister_15_1
edge [style=solid]
uzcdrawings_43_7 -> uzcdrawing_30_7
edge [style=dotted]
uzcdrawings_43_7 -> uzcenitiesvariablesextender_21_0
edge [style=dotted]
uzcdrawings_43_7 -> uzcshared_14_0
edge [style=dotted]
uzcdrawings_43_7 -> uzccommandsmanager_25_4
edge [style=dotted]
uzedimblocksregister_15_1 -> uzcutils_23_0
edge [style=solid]
uzcutils_23_0 -> zcmultiobjectcreateundocommand_8_0
edge [style=solid]
uzcutils_23_0 -> uzcdrawing_30_7
edge [style=solid]
uzcutils_23_0 -> uzcdrawings_43_7
edge [style=solid]
zcmultiobjectcreateundocommand_8_0 -> uzcdrawings_43_7
edge [style=solid]
uzcdrawing_30_7 -> zcchangeundocommand_9_2
edge [style=solid]
uzcdrawing_30_7 -> zcobjectchangeundocommand_5_1
edge [style=dotted]
uzcdrawing_30_7 -> uzcdrawings_43_7
edge [style=dotted]
uzcdrawing_30_7 -> uzcshared_14_0
edge [style=dotted]
uzcdrawing_30_7 -> uzccommandsmanager_25_4
edge [style=dotted]
zcchangeundocommand_9_2 -> uzcdrawings_43_7
edge [style=dotted]
zcobjectchangeundocommand_5_1 -> uzcdrawings_43_7
edge [style=solid]
uzcshared_14_0 -> uzcfcommandline_34_4
edge [style=solid]
uzccommandsmanager_25_4 -> uzcctrldynamiccommandmenu_7_1
edge [style=solid]
uzccommandsmanager_25_4 -> uzcinfoform_24_2
edge [style=dotted]
uzccommandsmanager_25_4 -> uzcshared_14_0
edge [style=solid]
uzcctrldynamiccommandmenu_7_1 -> uzcinfoform_24_2
edge [style=dotted]
uzcinfoform_24_2 -> uzcshared_14_0
edge [style=solid]
uzcenitiesvariablesextender_21_0 -> uzcshared_14_0
edge [style=solid]
uzctreenode_26_4 -> uzcutils_23_0
edge [style=dotted]
uzctreenode_26_4 -> uzcshared_14_0
edge [style=dotted]
uzctreenode_26_4 -> uzccommandsmanager_25_4
edge [style=dotted]
uzctreenode_26_4 -> uzcdrawings_43_7
edge [style=solid]
uzccombase_60_5 -> uzcoimultiobjects_19_3
edge [style=dotted]
uzcoimultiobjects_19_3 -> uzcmainwindow_95_3
edge [style=dotted]
uzcoimultiobjects_19_3 -> uzcoidecorations_38_3
edge [style=solid]
uzcmainwindow_95_3 -> uzcgui2color_15_1
edge [style=solid]
uzcmainwindow_95_3 -> uzcgui2linewidth_10_1
edge [style=solid]
uzcmainwindow_95_3 -> uzcgui2linetypes_18_1
edge [style=solid]
uzcmainwindow_95_3 -> uzcoidecorations_38_3
edge [style=solid]
uzcmainwindow_95_3 -> uzcgui2textstyles_12_1
edge [style=solid]
uzcmainwindow_95_3 -> uzcgui2dimstyles_11_1
edge [style=dotted]
uzcgui2color_15_1 -> uzcmainwindow_95_3
edge [style=dotted]
uzcgui2linewidth_10_1 -> uzcmainwindow_95_3
edge [style=dotted]
uzcgui2linetypes_18_1 -> uzcmainwindow_95_3
edge [style=solid]
uzcoidecorations_38_3 -> uzccominterface_64_2
edge [style=dotted]
uzcoidecorations_38_3 -> uzcgui2color_15_1
edge [style=dotted]
uzcoidecorations_38_3 -> uzcgui2linewidth_10_1
edge [style=dotted]
uzcoidecorations_38_3 -> uzcgui2linetypes_18_1
edge [style=solid]
uzccominterface_64_2 -> uzcflinetypes_29_1
edge [style=solid]
uzccominterface_64_2 -> uzccombase_60_5
edge [style=solid]
uzccominterface_64_2 -> uzcflayers_45_1
edge [style=dotted]
uzccominterface_64_2 -> uzcmainwindow_95_3
edge [style=dotted]
uzcflinetypes_29_1 -> uzcgui2linetypes_18_1
edge [style=dotted]
uzcflayers_45_1 -> uzcgui2linetypes_18_1
edge [style=dotted]
uzcgui2textstyles_12_1 -> uzcmainwindow_95_3
edge [style=dotted]
uzcgui2dimstyles_11_1 -> uzcmainwindow_95_3
}
(http://i78.fastpic.ru/thumb/2016/0922/3e/f7db9d627c68c1ad654fc544ca4ac53e.jpeg) (http://fastpic.ru/view/78/2016/0922/f7db9d627c68c1ad654fc544ca4ac53e.png.html)
Obtained statistics:
Total units: 349
Total founded units: 244
Total units with Implimentation uses: 63
Total units in loops: 43
Total dependencies: 3697
Total dependencies in loops: 112
Implimentation uses can be move to interface in uzclog, uzcsysinfo, uzcguimanager, UGDBPoint3DArray, uzgloglstatemanager, uzeentdevice, uzeentdimension, uzcregother, uzeffttf, uzegluinterface, uzeentdimensiongeneric, uzeentdimaligned, uzcentnet, UGDBGraf, uzeentlwpolyline, uzcdevicebaseabstract, uzcdevicebase, uzcfprojecttree, uzcctrlcontextmenu, uzccommandsimpl, uzctextenteditor, zcobjectchangeundocommand2, uzcfabout, uzcfhelp, uzcctrllayercombobox, uzccomdb, uzccomdraw, uzccomdrawdase, uzeenttable, uzcprinterspecfunc, uzcentcable, uzccomelectrical, uzcentelleader, uzccablemanager, uzccomops, uzctextpreprocessorimpl, uzclibraryblocksregister;
The program began depend on several packages, so I give a link to the win32 binary https://sourceforge.net/projects/zcad/files/pugdb.7z/download
The program also uses a patched version fcl-passrc from here http://bugs.freepascal.org/view.php?id=30615
-
Thanks.
A suggestion: add the version number or the date to the name of the package file. This will help users (like me ;)) to know what version has been downloaded.
-
Thanks.
A suggestion: add the version number or the date to the name of the package file. This will help users (like me ;)) to know what version has been downloaded.
Oh, well,
Do that yourself, like I do.
REVSTR=<svnversion> REVINC=force
You are not a nobody, you know how to do that. This can even be done on file level. Actually, it is used at file level with the standard makefile.
-
Hi All! Small improvements:
Added: analysis of all files in a directory by mask. (example: file=Z:\hdd\src\fpc\fpcsrc\ide\*.pas;*.pp path=Z:\hdd\src\fpc\fpcsrc\ide\)
Added: on loop graph each edges signed his "weight" (how much loops will be left if this dependence eliminated)
On test program from here http://forum.lazarus.freepascal.org/index.php/topic,35136.msg232043.html#msg232043 , it looks like attached screen
Also in report appeared recommendation to remove the dependence
The worst addiction from "uViewIntegrator" to "uRtfdDiagram" with 20
-
I forgot to add - result of the program can be converted to *.graphml file format. With this format you can work in a yEd vector editor, and allow the images to more visual view.
Python scripts for translation can be found here:
https://bitbucket.org/dirkbaechle/dottoxml or https://github.com/vivin/dottoxml
-
Hi All!
Small improvements:
Add Lasarus macros support to lpi importer: Ext, Path, Name, NameOnly, MakeDir, MakeFile, TargetCPU, TargetOS, ProjOutDir, PkgDir
-
Hi All!
PUDGB became cross-platform!
The old Delphi package AGraph now works in Win|Lin 32|64. This is a powerful package for working with graphs.
Maybe it's useful to someone else - http://svn.shamangrad.net/zcad/trunk/cad_source/other/AGraphLaz/
-
Hi All! New rev.2255
Restructured settings. Added options SourceUnit and DestUnit.
Putting SourceUnit - see dependecies when they generated.
Putting DestUnit - see dependecies on it ending.
Putting both - will see how interrelated SourceUnit and DestUnit units - as on attached screenshot
http://imgur.com/a/Nyxn1
-
Hi All!
Added the possibility of "clustering" graph. Units located in the same folder are inside the cluster, the cluster name is the path to these units (slashes are replaced on the lower dash because of the features of the language graphviz)
http://imgur.com/a/Ijz08
-
Just say you're doing a great job. This tool is useful for documentation, debugging and optimization. Keep up the good work! :)
-
Hi, my compiler stops at generics.collections, does the trunk compiler support namespaces ?
[edit] and is there a workaround for 3.0.2 ?
-
Ñuño_Martínez
Thanks!
jc99
Of course it is better to use trunk, but you can compile pudgb in 3.0.2. Place https://svn.freepascal.org/svn/fpc/trunk/packages/rtl-generics/src/ (it is missing in 3.0.2) and https://svn.freepascal.org/svn/fpc/trunk/packages/fcl-passrc/src/ (there were a few important fixes) to project folder and compile.
You will also need to install the packages:
http://svn.shamangrad.net/zcad/trunk/cad_source/other/AGraphLaz/lazarus/
http://svn.shamangrad.net/zcad/trunk/cad_source/components/
-
Hi i made a package for both (one for each) and ... it works (Y)!
... The Yeah! - smily doesn't show ...
A small issue: the program say's Save (F2) but it only generates text, how about a SaveDialog and actual save the Data somewhere ?
[edit]
... and how about *.lpk & *.dpk files ?
-
The attached packages are missing sources files. Also I don't think it is necessary to do the package fcl-passrc, it is in 3.0.2, though it contains more errors than the one in the trunk
>>A small issue: the program say's Save (F2) but it only generates text, how about a SaveDialog and actual save the Data somewhere ?
I prefer the web version graphwiz, so I'd better copy and paste)) But even if you want save data - save dialog easy to add. Much more interesting to make on your own display graph
>>... and how about *.lpk & *.dpk files ?
Maybe, but I won't be able to do it soon
In addition: patches and commits are very welcome))
-
Hi All!
Add 'Include to graph' and 'Exclude from graph' parameters (can be masks), for filtering units names in result graph.
In DestUnit and SourceUnit parameters also now allowed masks.
This is all basic features who I wanted to implement. Сhange the version number from 0.1 to 0.99
-
The attached packages are missing sources files. Also I don't think it is necessary to do the package fcl-passrc, it is in 3.0.2, though it contains more errors than the one in the trunk
of cause they do or don't, the source files are in the fpc-trunk-folder. That's why I made those files, that way i can explicitly use the trunc version.
If you don't call it "save" instead call it "generate" and "generate gml" then I'm happy too. And maybe some newbies are less confused.
Greetings (and a BIG Thumb-Up from my side)
_
| )
| |_
| _)
| _)
| _)
\__)
WTG, well done.
PS: Here's a Patch, naming some components, and redirect the output to a separate folder. -> less cleanup-work to do, and more-easy to secure. I drive a stict security-System (WanaCry-Save) only the compiler is allowed to write into the bin-(&sub)-folder, and only executables in the bin-(&sub) folders are allowed to run.
see restric'tor or SRP
-
Applied with a few changes: remove your packages rtl-generics and fcl-passrc - in the trunk they're not needed, fix binary path from ../../bin/ to bin/
Thanks!
-
Hi zamtmn,
the "../../bin" was to show the concept for me it's actual "../../../../bin" so that binaries from all projects go to that path and the user-rights and SRP-rules have only to be set once.
BTW: Did your code compile ?
The name of the buttons don't go together: in the .pas it's btnXXX and in the .lfm it's ToolbuttonX.
BTW2: Are the translations correct, since I don't speak russian, I used bing-translate.
-
I don't think we need to go above the folder PUDGB, who knows what will be there the person download the source code. You can move the binary anywhere you want, but it is not necessary to contribute inrepository.
Yes, button names were different, very strange that it compiled without problems. Fixed, thanks!
Comments in russian can be erased, initially the project was supposed to be another one, these comments I did for him. The manger need some moments I can comment in detail now. In the future I will comment on all
-
Hi All!
Started doing the vector graph renderer. As graph layout I plan to use graphviz (dll or exe), get svg data from it, and draw them. Will use ZCAD engine, so now even more dependencies((
-
Hi All!
First working vizualizer prototype: http://imgur.com/a/yQ0tl yet without dashes and without beziers
But unfortunately lazarus doesn't have a good svg reader. I tried to make my own implementation, SVG is bad format((
-
Hi All!
New version - rev2386.
Build with last fcl-passrc (include many fixes). Reorganize options, add new options - "Collapse clusters mask" and "Expand clusters mask"
-
Project move to https://github.com/zamtmn/pudgb
-
Project move to https://github.com/zamtmn/pudgb
You forgot the dependencies.
-
Project move to https://github.com/zamtmn/pudgb (https://github.com/zamtmn/pudgb)
You forgot the dependencies.
the zxxxx packages can be found on the cad repo (https://github.com/zamtmn/zcad/tree/master/cad_source/components) the ag_xxxx packages I have no idea.
-
the ag_xxxx packages I have no idea.
They are in cad_source/other/AGraphLaz/lazarus. And you need fpc trunk to compile.
-
the ag_xxxx packages I have no idea.
They are in cad_source/other/AGraphLaz/lazarus.
Nice! thank you.
And you need fpc trunk to compile.
which part? From the readme seems that the library has a long history (delphi 1..7, fpc 1 etc) and can that part be disabled?
I'm not using trunk and I have found no reason to change my policy so far.
-
And you need fpc trunk to compile.
which part? From the readme seems that the library has a long history (delphi 1..7, fpc 1 etc) and can that part be disabled?
I'm not using trunk and I have found no reason to change my policy so far.
ztoolbars need generics. fpc 3.0.4 got stuck here. With fpc-trunk it did compile.
-
And you need fpc trunk to compile.
which part? From the readme seems that the library has a long history (delphi 1..7, fpc 1 etc) and can that part be disabled?
I'm not using trunk and I have found no reason to change my policy so far.
ztoolbars need generics. fpc 3.0.4 got stuck here. With fpc-trunk it did compile.
oh ok, are they used in the Dependency Graph Builder? as far as I can say from the lpi (did not download it my self) there is no direct link to the ztoolbars.
-
Ah probably you are right. I just compiled all packages without looking.
[EDIT] No, uwriter of the dependency project needs generics, too.
-
Ah probably you are right. I just compiled all packages without looking.
[EDIT] No, uwriter of the dependency project needs generics, too.
thanks for the heads up.
-
Sorry, I haven't cleaned up packages yet. As already said, everything you need is in a nearby repository:
https://github.com/zamtmn/zcad/tree/master/cad_source/components (my packages)
https://github.com/zamtmn/zcad/tree/master/cad_source/other (third party packages)
I added a binary for Win32 https://github.com/zamtmn/pudgb/releases/download/0.99/pudgb_0_99_win32.7z
Later i can add for Linux x86, if you're interested
-
[ztoolbars need generics. fpc 3.0.4 got stuck here. With fpc-trunk it did compile.
well, rtl-generics for 3.0.4 IS in OPM...
Maybe OPM needs a dependency feature.
Well actually it does anyway, because it has platform problems. You can actually try to install a package that is not suited for the platform.
-
Minor improvements and prerelease 0.99.2
- HiDPI support
- Set default path to Lazarus configs
- I didn't understand how to pass the po_IgnoreUnknownResource flag to the scanner, so I built a binary with a modified latest fcl-passrc, resource inclusions are ignored
- Attach dottoxml archive (useful for exporting to Yed)
https://github.com/zamtmn/pudgb/releases/tag/0.99.2
-
- I didn't understand how to pass the po_IgnoreUnknownResource flag to the scanner, so I built a binary with a modified latest fcl-passrc, resource inclusions are ignored
You should create a bug report then.
-
Version 0.99.3
-slightly reorganized options
-added "Directly uses" - only units with "Dest unit" in their uses get into the graph
-saving/loading program/project options
https://github.com/zamtmn/pudgb/releases/tag/0.99.3