Sébastien de Menten <sdemen...@gmail.com> writes: > Where could I find detailed documentation on the GnuCash engine (and the > constrains/invariants GnuCash enforces) ? Or would there be some > code/program to check a GnuCash file is "sane/consistent" ?
Only in the implementation. There is no documentation per se on this, because we do not support modification of the database from outside the GnuCash APIs. This also allows us to change the underlying storage mechanisms without breaking things, because it's all abstracted. By re-implementing it you're basically binding yourself to a particular version of the database schema, which can (and will) change over time, requiring you to duplicate the effort already happening in the gnucash code. Moreover, you're also tied to a particular backend, which isn't very nice. If you want to modify the gnucash database, you really should use the exported GnuCash APIs. If the current python bindings aren't pythonic enough for you, then I urge you to spend the time to fix that instead of reimplementing something that will absolutely break some time in the future. When it will break I cannot tell you, but I can assure you it WILL break at some point. > Regards > > Sebastien -derek -- Derek Atkins, SB '93 MIT EE, SM '95 MIT Media Laboratory Member, MIT Student Information Processing Board (SIPB) URL: http://web.mit.edu/warlord/ PP-ASEL-IA N1NWH warl...@mit.edu PGP key available _______________________________________________ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel