> On Jan 14, 2011, at 6:32 AM, Peter Clifton wrote: > > Ideally (to be forward compatible with format changes), > > that plugin would use libgeda. If someone starts on this, > > please let us know via the lists + bug tracker ( > > https://launchpad.net/geda/+bugs ) if you find any API > > which is lacking. > On Friday 14 January 2011, John Doty wrote: > The trouble with this reasoning is that the .sch file format > is reasonably simple, well documented, expressive, > extensible, and stable. The libgeda API is complex, poorly > documented, and badly in need of revision. Only a few tools > use the libgeda API, but there are many useful scripts out > in the gEDA universe that deal with .sch and .sym files > directly, so file format changes would be big trouble in any > case.
You have a point ... Without getting into the quality of the format or libgeda, lets assume that both are likely to change in the future in some way. The Gnucap plugin system allows many plugins for many different formats. It is reasonable to expect that when the format changes there could be plugins for both the new and old versions, providing a migration path between them. If libgeda changes, which it will need to if it will support the new format or new features that may be needed, any code using it also needs to change, causing maintenance issues. If something is written, it is not known whether whoever writes it will want to make the changes as libgeda changes. Besides, it may be necessary to keep the old one around for backward compatibility. It is better to eliminate such a burden. Reading a file is easy. The hard part about the geda format, where use of libgeda may be advantageous, is establishing connectivity. I don't know where that is done, or if it is done in a form that would be useful here, or whether there exists the code to go the other way (generate a schematic given a netlist and rendering info) which is equally needed. _______________________________________________ geda-user mailing list geda-user@moria.seul.org http://www.seul.org/cgi-bin/mailman/listinfo/geda-user