Problem with UVS exported in UFO file

In UFO lib.plist, the UVS sequences are separated for each VS codepoint. Eg:

<key>public.unicodeVariationSequences</key>
<dict>
    <key>FE00</key>
    <dict>
        <key>3001</key>
        <string>uni3001</string>
    </dict>
    <key>FE01</key>
    <dict>
        <key>3001</key>
        <string>uni3001.cpct</string>
    </dict>
    <key>FE00</key>
    <dict>
        <key>3002</key>
        <string>uni3002</string>
    </dict>
    <key>FE01</key>
    <dict>
        <key>3002</key>
        <string>uni3002.cpct</string>
    </dict>
</dict>

This is inefficient and could not be resolved correctly by other major UFO editors/compilers. The UFO standard specified:

This key is a dictionary for Unicode Variation Sequences. Keys are Variation Selector code points as a hexadecimal numbers and values are dictionaries. These dictionaries contain > code points as hexidecimal numbers as keys and glyph names as values> .

The dictonaries for each VS codepoint should in theory contain all the Unicodes (since it mention “code points” and “glyph names” as plural). The suggested format should be as:

<key>public.unicodeVariationSequences</key>
<dict>
    <key>FE00</key>
    <dict>
        <key>3001</key>
        <string>uni3001</string>
        <key>3002</key>
        <string>uni3002</string>
    </dict>
    <key>FE01</key>
    <dict>
        <key>3001</key>
        <string>uni3001.cpct</string>
        <key>3002</key>
        <string>uni3002.cpct</string>
    </dict>
</dict>

See implementation of this format https://github.com/lxgw/LxgwWenkaiTC/blob/af1621dc5a9bd08c50746861a3ad3bfdad9d8a56/sources/LXGWWenKaiTC-Light.ufo/lib.plist#L1826-L1850.

Thank you for making us aware of this. The next upcoming release will export Unicode Variation Sequences per the suggested format.