Check and Repair tool
- new check source and citation reference function, with extensive changes from previous (temporary) check citation references function,
- low level in-table duplicate handle check removed as this is superfluous because the main database tables do not use the DB_DUP flag,
- Progress meter added for cross table duplicate checking and fixed for all checks,
- diagnostic prints added for all checks to indicate success, and for many to indicate details of failures detected. These prints could be simply changed to Log messages if necessary. Comments added to show how checks relate to Test Case Generator test data,
- order of checks revised so empty objects are removed first,
- fix_encoding of media paths and descriptions modified to remove invalid characters (see change to Utils),
- check and remove empty citations added.
repo.py remove_citation_references added to fix removal of citations on addresses in Repository records.
Utils.py fix_encoding modified to add an option to ignore characters that can't be unicode encoded.
TestCaseGenerator
- generate families extended to generate family events,
- options dialogue updated to reflect available features and to make it clearer,
- block transactions options removed as they were by-passed in the code.
- progress meter updated to use current function, and to properly update for all options,
- signal testing code (that wasn't functional anyway) removed,
- tag generating code called when it needed to be,
- data error generating code broken up into functions to reflect the functions in the Check and Repair tool that they are designed to test,
- various test data functions added for testing cross table duplicates, media encoding errors, missing photos, control characters in notes, empty objects, source and citation references and a few missing broken family links tests,
- some fixes for some test cases (check events, person events were marked as birth events)
- fix random text so tags don't contain invalid characters and add a styled text option,
- ensure that some citations are shared,
- remove old redundant commit_transaction function,
- media linked to pictures that exist in the Gramps code so that they don't appear as missing images.
svn: r18713
1) add SVN svn:keywords "Id" property if it didn't have it
2) add SVN svn:mime-type "text/plain" property if it didn't have it
3) add SVN "Id" line to the file if it had none
svn: r18554
* In Person, add event_ref_list to get_citation_child_list (therefore it is no longer needed in get_handle_referents)
* Similarly in Family, add event_ref_list to get_citation_child_list
* Enhance upgrade to add upgrade of event_ref_list for person and family
* Add has_citation_reference, replace_citation_references and remove_citation_references to EventRef
* Change name of remove_citation_refs to remove_citation_references to be consistent with has_citation_reference (singular) and replace_citation_references
Fix editcitation because it was displaying the wrong privacy button for sources.
Also remove FIXME for editcitation for db signal connect, because comment explains why it is not needed.
svn: r18469
Rename remove_citation to remove_citation_refs and make it apply to a citation_handle_list.
Updated tool/Check.py to change check_source_references into check_citation_references
svn: r18433
Add note to upgrade information dialogue box to suggest running the tool.
Fixes to Person and Family for get citation child list for merging citations.
svn: r18228
This patch improves on the context changes:
* avoid use of transaction_xx methods
* force an abort in case of unclean transaction
Backward compatibility is broken to achieve this.
svn: r16680
This is a major patch by Michael Nauta. It means all writes happen immediately to bsddb, and the bsddb
rollback is used on a crash. Transaction is no longer used to store changes and do them on commit.
Undo database is set on end.
At the same time with statement is used throughout for transactions
At the same time, the original bug in merge code should be fixed
Still some issues, that will be ironed out
svn: r16523