Plugin API?
Christian Stimming
stimming at tuhh.de
Sun Feb 6 05:04:31 EST 2011
Am Samstag, 5. Februar 2011 schrieb John Ralls:
> On Feb 5, 2011, at 1:16 PM, Ryan M. Ward wrote:
> > Hello all,
> > I originally included this in my last email but felt it was worth its own
> > thread. Have there been discussions developing support for custom
> > GNUCash plugins(or does this support exist and I have just simply missed
> > it)? As far as plug in support, I have some fairly sophisticated ideas
> > in mind ranging from custom reports (which is pretty much already built
> > in) to the ability to plug in custom fields in the ledger, plugins for
> > interest estimation, bill reminder plugin and/or bill reminder system
> > daemon, plugins for adding payments to a google account calendar, etc...
> > I think there is a huge amount of potential here.
>
> Well... Gnucash already does use plugins. We've been slowly changing them
> into regular dylibs to make testing and debugging easier and to speed up
> starting the program (since most of the plugins get loaded at startup
> anyway). But the capability to connect is there.
Exactly. @Ryan: If you're looking for an example part of gnucash that already
is a plugin, look at src/import-export/aqbanking, which is a loadable module
that is looked up and loaded at run-time if existing, or not if not existing.
Those "optional" modules are still known by name to the core gnucash (in
src/bin/gnucash-bin.c:561) so we don't have a fully open plugin system that
loads everything from some directory, but still we have a plugin system that
can load things if they are there, or live without it if they are not there.
Historically, in my opinion the architecture of gnucash has leaned way too
much towards plugins even though there never was any real use for it (with the
exception of the aqbanking module which requires additional external
dependencies). In particular, even though one could think there might have
been third-party plugin developers such as you propose, in reality there never
were any of those third-party plugins.
Regards,
Christian
More information about the gnucash-devel
mailing list