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