def getContentChanges(self, other, calculateOverallChanges=True):
    comparison = {}
    oldFonts = []
    newFonts = []
    newVersions = 0
    for foundry in self.foundries:
        for family in foundry.families:
            for font in family.fonts:
                oldFonts.append(font.uniqueID)
    for foundry in other.foundries:
        for family in foundry.families:
            for font in family.fonts:
                newFonts.append(font.uniqueID)
                oldFont = self.getFontByUniqueID(font.uniqueID)
                if (oldFont and (len(font.getVersions()) > len(oldFont.getVersions()))):
                    newVersions += 1
    addedFonts = (set(newFonts) - set(oldFonts))
    if addedFonts:
        comparison['addedFonts'] = len(addedFonts)
        comparison['overallChanges'] = True
    removedFonts = (set(oldFonts) - set(newFonts))
    if removedFonts:
        comparison['removedFonts'] = len(removedFonts)
        comparison['overallChanges'] = True
    if newVersions:
        comparison['fontsWithAddedVersions'] = newVersions
        comparison['overallChanges'] = True
    if calculateOverallChanges:
        identical = self.sameContent(other)
        if (not identical):
            comparison['overallChanges'] = True
    return comparison
def getContentChanges(self, other, calculateOverallChanges=True):
    comparison = {}
    oldFonts = []
    newFonts = []
    newVersions = 0
    for foundry in self.foundries:
        for family in foundry.families:
            for font in family.fonts:
                oldFonts.append(font.uniqueID)
    for foundry in other.foundries:
        for family in foundry.families:
            for font in family.fonts:
                newFonts.append(font.uniqueID)
                oldFont = self.getFontByUniqueID(font.uniqueID)
                if (oldFont and (len(font.getVersions()) > len(oldFont.getVersions()))):
                    newVersions += 1
    addedFonts = (set(newFonts) - set(oldFonts))
    if addedFonts:
        comparison['addedFonts'] = len(addedFonts)
        comparison['overallChanges'] = True
    removedFonts = (set(oldFonts) - set(newFonts))
    if removedFonts:
        comparison['removedFonts'] = len(removedFonts)
        comparison['overallChanges'] = True
    if newVersions:
        comparison['fontsWithAddedVersions'] = newVersions
        comparison['overallChanges'] = True
    if calculateOverallChanges:
        identical = self.sameContent(other)
        if (not identical):
            comparison['overallChanges'] = True
    return comparison