Created attachment 177224 [details] test file SUMMARY A generated kmymoney-xml file contains a <FILEINFO> and a <KEYVALUEPAIRS> tag, as shown below: <KMYMONEY-FILE> <FILEINFO> <CREATION_DATE date=“”/> <LAST_MODIFIED_DATE date=„2024-09-09T22:58:54+02:00“/> <VERSION id=“1”/> <FIXVERSION date=“”/> <APPVERSION id=„5.1.80-a82f24b57“/> </FILEINFO> ... <KEYVALUEPAIRS> <PAIR key=„LastModificationDate“ value=„2024-09-09T22:58:54+02:00“/> <PAIR key=“kmm-baseCurrency” value=“USD”/> <PAIR key=„kmm-id“ value=„{1bc5425b-d897-4dea-a489-2db5abd97368}“/> </KEYVALUEPAIRS> </KMYMONEY-FILE> This file contains duplicate xml tags as described below. STEPS TO REPRODUCE 1. open the attached kmymoney file 2. check the contained xml tag <FILEINFO> OBSERVED RESULT The xml tag <LAST_MODIFIED_DATE> is duplicated in the <KEYVALUEPAIRS> tag and with a correction for the bug 498416 also the <FIXVERSION>. EXPECTED RESULT No xml tags from the <FILEINFO> tag should be duplicated in the <KEYVALUEPAIRS> tag. SOFTWARE/OS VERSIONS Operating System: openSUSE Leap 15.6 KDE Plasma Version: 5.27.11 KDE Frameworks Version: 5.115.0 Qt Version: 5.15.12 ADDITIONAL INFORMATION
> Created attachment 177224 [details] > The xml tag <LAST_MODIFIED_DATE> is duplicated in the <KEYVALUEPAIRS> tag In fact the key is different, but the value is the same > and with a correction for the bug 498416 also the <FIXVERSION>. here the key is really duplicated.
The reason for this is usually some form of backward compatibility. And since it does not hurt, I don't want to touch it right now.
Git commit bf9eceb8baef59f704632c34064105532aa1b792 by Ralf Habacker. Committed on 18/01/2025 at 17:17. Pushed by habacker into branch 'master'. Add workaround for writing key value container into xml file Without this workaround, a tag that is located in the FILEINFO tag is duplicated in the KEYVALUEPAIRS tag. M +4 -1 kmymoney/plugins/xml/mymoneyxmlwriter.cpp https://invent.kde.org/office/kmymoney/-/commit/bf9eceb8baef59f704632c34064105532aa1b792
Git commit 4bc12e2aee51167a817db3f9b3d45275cabbbb93 by Ralf Habacker. Committed on 21/01/2025 at 19:01. Pushed by habacker into branch 'master'. Add member fileInfoModel to class MyMoneyFile The newly introduced member contains information about the imported file or database in contrast to the 'kmm-*' key/values pairs contained in member parametersModel. M +2 -2 kmymoney/dialogs/kmymoneyfileinfodlg.cpp M +11 -3 kmymoney/mymoney/mymoneyfile.cpp M +5 -0 kmymoney/mymoney/mymoneyfile.h M +2 -2 kmymoney/mymoney/storage/mymoneystoragedump.cpp M +1 -1 kmymoney/plugins/sql/mymoneydbdef.cpp M +1 -3 kmymoney/plugins/xml/mymoneyxmlreader.cpp M +5 -5 kmymoney/plugins/xml/mymoneyxmlwriter.cpp M +9 -8 kmymoney/plugins/xml/tests/mymoneyxmlreader-test.cpp https://invent.kde.org/office/kmymoney/-/commit/4bc12e2aee51167a817db3f9b3d45275cabbbb93