Master - saving to xml broken
Geert Janssens
geert.gnucash at kobaltwit.be
Fri Dec 2 08:03:29 EST 2016
Op vrijdag 2 december 2016 13:50:12 CET schreef Geert Janssens:
> Hi,
>
> The last couple of days I find that the master branch breaks xml files
> during save. I didn't report earlier because I had to check first whether
> it wasn't due to my own branch.
>
> Built a clean current master today, and it still saves broken xml data
> files.
>
> The error message is - as usual with the backend - pretty vague:
> * 13:27:04 WARN <gnc.backend> [GncXmlBackend::load()] Syntax error in Xml
> File /home/janssege/Development/gnucash/testdata/KobaltTest.xac
>
> To reproduce: open a working file and save it as xml. For my test I simply
> added and remove one character of one single transaction description and
> then saved the file again.
>
> Analyzing the broken file I find:
> 1. there are several duplicate xml namespaces in the xmlns list: billterm,
> bt- days, bt-prox, cust, employee, entry, invoice, job, order, taxtable,
> tte, vendor and addr. They were in the original file as well, but only
> once.
>
> 2. gnc:count-data equally has a number of duplicate entries, also for
> business objects only.
>
> 3. The original book only had gnc:commodity entries for currencies that are
> really in use. The new book has an entry for each commodity we support.
>
> 4. all objects that didn't have slots before, now have an empty slots xml
> entity. The commodities now have for example <cmdty:slots/>. Similarly there
> are now also plenty of empty entities for accounts, transactions, splits,
> ...
>
> This issue must have been introduced before commit dd4b8a104d0f7 on master.
> That's the commit my cpp branch branches off from and I'm seeing it there as
> well (albeit with a slightly different error message:* 10:54:04 WARN
> <gnc.backend> [gnc_xml_be_load_from_file()] Syntax error in Xml File /home/
> janssege/Development/gnucash/testdata/KobaltTest.xac)
>
Digging a bit further it looks like all business data is duplicated, which
would explain the errors - all those guid's appear twice.
Geert
More information about the gnucash-devel
mailing list