New data field for invoice object

John Ralls jralls at
Mon Oct 10 10:36:10 EDT 2011

On Oct 9, 2011, at 6:09 PM, Derek Atkins wrote:

> John Ralls <jralls at> writes:
>> Nope, sticking it in KVP is bad, too, because without the type field,
>> an older version of Gnucash will see the credit note data and think
>> that it's a regular invoice and really screw things up.
> Yes, I agree with this.  We can't just use a KVP.  We would also have to
> add something that says that the feature has been used in the database.
>> I think that we must accept that we can't add the feature in a way
>> that's safe for older versions, add the field to the Invoice table,
>> and increase the version level on the database (and the XML file)
>> which will prevent older versions of 2.4 from loading it.
> However, I don't agree with that.  I think that there should be ways to
> do it successfully.  c.f. my previous email about ext2 v ext3.

Is that a comment from February of last year about running check and repair periodically?

The problem is that any new scrub code won't be in any older releases, and there obviously isn't already scrub code for Geert's new feature. Unless you can figure out how to do retroactive releases, we can't go forward if we insist that old code has to be able to handle changed data structures.

We could require only new data structures (which old code wouldn't be able to see), but ISTM that would only make worse an already bad data model.

John Ralls

More information about the gnucash-devel mailing list