ProbablyAlive.probably_alive_range:
If there is an existing death event without a recognizable date,
assume the death date to be "before today" for the calc purposes.
Tested with the repro database in the bug and the extra debugging.
svn: r23006
Preparing to fix the bug:
refactor cut-n-paste traces in probably_alive, proper proxy access
minor bug with return_range handling
add testing ground
svn: r23005
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
* implement new Utils get_source_and_citation_referents
* Update sourceview.py and citationtreeview.py to use it
* Fix editsource.py, where deletion of a source object was not properly dealing with all possible citations
* Update mediaobj.py which still had a remnant of a source_list
* fix _HasTextMatchingSubstringOf filter to deal with text in both sources and citations
svn: r18394
* Remove inheritance of Citation from RefBase, using source_handle filed instead (similar to the way Family objects store mother and father handles) (also use the set_ and get_reference_handle functions more consistently)
* Use get_citation_list instead of get_citation_references (more consistent with the way notes are handled)
svn: r18100
* updates to citationviews to support all the functionality (add source etc.) provided by sourceview (including different tooltips for tree view and list view)
* moved registration of citationtreeview into view.grp.py
* removed citationtreeview.grp.py module
* fixed update to citation when note is deleted
* fixed update to citation when media object is deleted
* re-enabled edit button in sourcebackreflist
* improved date display in mergecitation
* changed default note type for citation notes
* changed backref in citation editor to CitationBackRefList
* fixed removal of citation handles from the list in primary objects when a citation is deleted
* fixes for pylint
svn: r18095
* Changed database to introduce Citations
* Introduced new Citation Primary object and CitationBase (equivalent to CitationRef) child object
* Implemented CitationTreeModel and CitationListModel
* Implemented CitationTreeView and CitationListView for new citation views in the navigator
* Implemented EditCitation which is used both for the citation views in the navigator and for the citations of an object
* Implemented the CitationEmbedList to display the citations of an object
* Modified the bottom bar gramplets to support citations
* Implemented the citation selector.
* Modified Media object to include references to Citations
* Initial work on deleting citations
svn: r17960
This turns out to be a codeset-setting issue, where unicode() returns different (perfectly valid) encodings of the words depending upon which codeset it's given.
There's also a problem with using locale.getpreferredencoding() on OSX: It returns "mac roman", pretty much regardless of the environment locale settings. This isn't correct for recent versions of OSX under any circumstances, so this change also disables calling it on macs.
svn: r17859
CR: Benny
* Created two strings with l10n context instead of the old one,
'Role|Primary' and 'Name|Primary'.
* While testing, GUI started showing the context when not localized, fixed
that with appropriate sgettext instead of gettext in surnametab.py.
* While at it, changed also changed 'Family' in the Role context to 'Role|Family'.
* ru.po: major translations in the area of name and name formats.
The new Primary[...] and Patronymic[...] concept along with Notpatronymic
still don't fit well when translated :-(
svn: r16986