iFamily for Mac V2.12.0 - 23 Nov 2020

Catalogue of Changes and Features in iFamily For Leopard
Post Reply
User avatar
Warwick Wilson
Site Admin
Posts: 469
Joined: Sat Nov 15, 2008 12:36 am
Contact:

iFamily for Mac V2.12.0 - 23 Nov 2020

Post by Warwick Wilson » Wed Nov 10, 2021 11:04 pm

Change Log:-

Overview
===============
- Refactoring and retirement of old code has reduced the maintenance footprint of the app from 95k lines of code to 89k lines of code, with no loss of functionality. (replaced about 800 enumerators.).
- Toolbar rescoped, search field moved to base of diagram..
- All Reports reworked to use a single file handling routine and be thread safe while updating UI elements, (buttons and text fields.).

Images and Pictures
===============
- Fixed thumbnail image generation routines to fix the quarter size images in the reports and the cropping errors when working with images.

Context Diagram
===============
- Changed colour of Parent Child relation notations (S, A, F, etc) to black instead of red.
- Added the search bar to the base of the diagram (used to be in toolbar.). This is included in screenshots so can be used for notational purposes.
- simplified box colour decision tree.
- dozens of enumerators replaced.

Toolbar
===============
- Overall, reduced the clutter so all buttons fit into the available on screen space, removing the error when people clicked the continuation menu that appeared at the right hand side of the toolbar when the main windows width was reduced.
- migrated functionality of the search box to the bottom of the context diagram
- migrated functionality of the "previous Focal People" to a drop down menu next to the "People Index" button.
- Added containers for the tex size and levels groups
- Combined the Ancestors and Descendants diagrams to a new "Hierachies" Group
- By right clicking on the toolbar and selecting customise, you can put back the Previous Focal Persons drop down box if you prefer.
- TODO: There is more functionality that belong in the drop downs for Index, Views and Sources. This will be added in future versions.

General
===============
- Replaced hundreds of code fragments relating to iterations over data with more modern style Fast Enumerators.
- Fixed date inputs to receive short month again (eg: Jan, Mar, Dec)
- Backgrounded the standard message dialog. This may cause problems as it can now appear behind other windows.
- Introduced a Forgrounded Message Dialog. Will apply it liberally as reports come in.

- RegistrationDialog
revisited the asynchronous invokation of the iFamily API. Got it right this time.

- AppController
Generic reports initiator.
registration invokation encapsulated.

- Utilities
expanded file utilities for all reporting.
added #define encoding to be inherited by all classes importing utils.
replacement of enumerators.

EventTypeIndexCreatorXib - for old version. Unlikely this is used anywhere.

Import Gedcom
===============
- thread safed the UI interactions.
- Migrated postLoad Pictures Import instantiation to the open file routine due to it openeing on the old document.
- replaced 29 enumerators


Reports and Dialogs
===============
- PersonalCommentsReport
repaired data connection so records will show in table
replaced progress meter
thread safed data crunching
migrated file functionality, (csv).
- PersonalNotesReport
replaced nib file with xib file
repaired data connection so records will show in table
replaced progress meter
thread safed data crunching
migrated file functionality, (csv).
- DuplicatePeople
replaced progress meter
thread safed data crunching
migrated file functionality, (csv).
- InfoArea_Relatives
migrated file functionality, (csv).
- IndexOfPeople
thread safed data crunching
replaced Progress meter
migrated file functionality, (csv).
- EventPlacesEditor
replaced progress meter
thread safed data crunching
migrated file functionality, (csv, rtf).
- StatisticsReport
rebuilt stats objects
repaired display of numbers in report (broken during 64 bit conversion in 2017)
removed progress meter
thread safed report export
migrated file functionality, (rtf).
- CalculateBirthDates / CalculateDeathDates
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- ProjectView-AddModDel
converted from nib to xib (changed entity type to ensure data connection)
migrated file functionality, (rtf)
repaired text on BDM query dialog
- DatabaseIntegrityChecks (admin)
migrated file functionality, (txt)
minor interface tweaks
- FilteredPeopleReport
converted from nib to xib (changed entity type to ensure data connection)
thread safed data crunching
migrated file functionality, (rtf)
- DatabaseChangesReport
thread safed data crunching
replaced Progress meter
migrated file functionality, (txt)
- CompareAndMerge
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- CopyPersonFromOtherModel
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- DynastiesReport / ExportPersonPlusAllRels
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf)
- EventsReport (by Subtype)
replaced progress meter
thread safed data crunching
migrated file functionality, (csv)
- ExportPictures
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- RelativesReport (path finder)
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- EventPlaces-FindAndReplace
replaced progress meter
aborted thread safing of data crunching due to UI interactions.
- ExportBDMToICal
migrated file functionality, (ics)
added Calendar grouping and usage note on Dialog
added a repeat for 10 years checkbox.
- FamilyNamesEditor
replaced progress meter
thread safed data crunching
removed "Refresh" button. (functionality automated)
- ImportPictureFiles
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- PeopleWithoutAncestors
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf)
- PicturesReport
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf)
- PruneMinorDynasties (admin)
replaced progress meter
thread safed data crunching
- SourcesReport
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf, csv)
aligned intermediary common dictionary
corrected report formatting
- ToDoReview
thread safed data crunching
migrated file functionality, (rtf)
- PublishAsHtml
reversed removal of SetFlipped on images which was leading to rendering misalignments
released images as the document set is built - this was causing a significant memory leak during export.
NB: Unable to thread safe generation yet, program will still hang while rendering the pages.
replaced progress meter, (but until resolution of the above it will still not update on the UI until whole process has finished.)
- DataValidationReport
replaced progress meter
thread safed data crunching
migrated file functionality, (rtf)
- CheckDatabaseIntegrity
replaced progress meter
thread safed data crunching
migrated file functionality, (txt)
- AncestorsReport/DescendantsReport/IndividualsReport/AncestorsByGenerationReport
thread safed data crunching
migrated file functionality, (rtf, rtfd)
deduplicated personal Details generation
defaults encapsulation test.
simpified file type validation logic

:D
ww.

ctrunfree
Posts: 20
Joined: Tue Dec 01, 2009 2:47 am
Location: Melbourne, Australia

Re: iFamily for Mac V2.12.0 - 23 Nov 2020

Post by ctrunfree » Fri Dec 03, 2021 1:19 am

Hi Warwick

I'm currently running v 2.9.8 on a Mac running High Sierra (10.13.6).

Will everything work if I just download the update. Thought I'd ask as I wouldn't like to see many years of work disappear!

User avatar
Warwick Wilson
Site Admin
Posts: 469
Joined: Sat Nov 15, 2008 12:36 am
Contact:

Re: iFamily for Mac V2.12.0 - 23 Nov 2020

Post by Warwick Wilson » Fri Dec 03, 2021 11:13 am

ctrunfree wrote:
Fri Dec 03, 2021 1:19 am
Hi Warwick

I'm currently running v 2.9.8 on a Mac running High Sierra (10.13.6).

Will everything work if I just download the update. Thought I'd ask as I wouldn't like to see many years of work disappear!
I hear the toolbar appears on the left instead of the right on High Sierra, but there are no problems otherwise. Lots of bug fixes.

ctrunfree
Posts: 20
Joined: Tue Dec 01, 2009 2:47 am
Location: Melbourne, Australia

Re: iFamily for Mac V2.12.0 - 23 Nov 2020

Post by ctrunfree » Fri Dec 03, 2021 9:24 pm

Thanks Warwick

For the last few years when I open iFamily I get the following error message: The File NEAL.FtkSql couldn't be opened because it isn't in the correct format. The file might be corrupted, truncated, or in an unexpected format."

However, when I click on the "OK" button on the error message the file opens normally. Is the upgrade likely to interfere with the file opening?

User avatar
Warwick Wilson
Site Admin
Posts: 469
Joined: Sat Nov 15, 2008 12:36 am
Contact:

Re: iFamily for Mac V2.12.0 - 23 Nov 2020

Post by Warwick Wilson » Sun Dec 05, 2021 12:18 am

ctrunfree wrote:
Fri Dec 03, 2021 9:24 pm
Thanks Warwick

For the last few years when I open iFamily I get the following error message: The File NEAL.FtkSql couldn't be opened because it isn't in the correct format. The file might be corrupted, truncated, or in an unexpected format."

However, when I click on the "OK" button on the error message the file opens normally. Is the upgrade likely to interfere with the file opening?
The behaviour has not changed. Looks like we had this discussion in 2012 and I never managed to resolve it at the time.

The error I am getting the file is
"The operation couldn’t be completed. (NSSQLiteErrorDomain error 11.)"

Here is the err page, it just says it is corrupted. I will have a deeper QA of it now, an extra 9 years experience goes a long way.

User avatar
Warwick Wilson
Site Admin
Posts: 469
Joined: Sat Nov 15, 2008 12:36 am
Contact:

Re: iFamily for Mac V2.12.0 - 23 Nov 2020

Post by Warwick Wilson » Sun Dec 05, 2021 1:28 am

Warwick Wilson wrote:
Sun Dec 05, 2021 12:18 am
I will have a deeper QA of it now, an extra 9 years experience goes a long way.
OK, I didn't find the cause of the corruption, but I did find an 8 step fix. (First: Copy your database somewhere safe, duplicated to your documents folder or similar.).

0. Close iFamily
1. Open Terminal
2. Change to the iFamilyData folder
cd ~/iFamilyData
3. Rename your current file as a backup
mv NEAL.FtkSql NEAK-bak.FtkSql
4. Open the backup with database tool
sqlite3 NEAL-bak.FtkSql
5. Recreate the database under the original filename
.clone NEAL.FtkSql
6. Close the database tool
.q
7. Reopen iFamily.

If you are uncomfortable with the technical nature of the above fix, email me the current file and I can send back a fixed version.

You''ll have to dig a little deeper though general usage to see if anything is amiss, but the gross stats look ok and it opens without the error.....

BEFORE: Statistics Report for NEAL Created on Sunday 05-Dec-21 at 12:25
People 909
Parent Child Relationships 1367
Spouse Relationships 240
Events (total) 1251
Event Types 51
Births 686
Deaths 273
Marriages 125
Other Marriage Events 1
Other Personal Events 166
Project Views 1
Pictures 56
Picture Thumbnails 56


AFTER: Statistics Report for NEAL Created on Sunday 05-Dec-21 at 12:23
People 909
Parent Child Relationships 1367
Spouse Relationships 240
Events (total) 1251
Event Types 51
Births 686
Deaths 273
Marriages 125
Other Marriage Events 1
Other Personal Events 166
Project Views 1
Pictures 56
Picture Thumbnails 56


Let me know if it goes belly up.

EDIT: File received/resolved. Current stats:
Statistics Report for NEAL Created on Sunday 05-Dec-21 at 12:59
People 1504
Parent Child Relationships 2305
Spouse Relationships 384
Events (total) 2158
Event Types 51
Births 1162
Deaths 497
Marriages 237
Other Marriage Events 1
Other Personal Events 261
Project Views 6
Pictures 325
Picture Thumbnails 325

Post Reply