Unstable UFO output for Family Alignment Zones

When editing an UFO file, Glyphs.app v2.4.4 (build 1075) writes the values for key “com.schriftgestaltung.font.Family Alignment Zones” with numeric pointer values into the UFO lib.plist file. Because these pointer values are not stable, it is quite painful to edit version-controlled UFOs with Glyphs — when the output changes with each edit even though the values didn’t actually change, it becomes harder to track what’s actually changed. Could Glyphs.app be modified so that the UFO’s lib.plist only contain the actual values, not the pointer?

To reproduce, open the UFO in https://github.com/brawer/font-playground, change some glyph (but not the family alignment zones), save the font, and then do a git diff:

$ git diff FiraMonoOsage-Regular.ufo/lib.plist
diff --git a/FiraMonoOsage-Regular.ufo/lib.plist b/FiraMonoOsage-Regular.ufo/lib.plist
index 34f9909…2769d4b 100644
— a/FiraMonoOsage-Regular.ufo/lib.plist
+++ b/FiraMonoOsage-Regular.ufo/lib.plist
@@ -6,11 +6,11 @@
‹false/›
‹key›com.schriftgestaltung.font.Family Alignment Zones‹/key›
‹array›

  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x600000276280›: (null) p:739 s:14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x608000c62580›: (null) p:689 s:14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x608000c624c0›: (null) p:527 s:14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x608000c62400›: (null) p:0 s:-14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x608000c62380›: (null) p:-202 s:-14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x60000087a180›: (null) p:739 s:14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x60000087a040›: (null) p:689 s:14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x600000879dc0›: (null) p:527 s:14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x600000879cc0›: (null) p:0 s:-14]]›‹/string›
    
  •           ‹string›‹![CDATA[GSAlignmentZone ‹0x600000879b80›: (null) p:-202 s:-14]]›‹/string›
      ‹/array›

Ah, Glyphs.app version 2.5b (build 1097) does not have this problem anymore. Thank you!