Motif v0.2.0 Release Notes

  • ๐Ÿ”‹ Features

    • โž• Adds support for YAML in addition to JSON as a much more human-friendly way of writing your theme files. See the README for some examples (#38)
      • Of course, while YAML is now the recommended way of writing theme files, JSON will still work
    • โž• Adds a class method to NSValueTransformer to enable easy registration of Motif value transformer subclasses without having to declare a new interface & implementation (#28)
    • โœ‚ Removes the need specify value transformer names as part of applier registration (#43)
    • โž• Adds default value transformers for the following: (#42)
      • Creating UIEdgeInsets from an array, dictionary, or number in a theme file
      • Creating CGSize from an array, dictionary, or number in a theme file
      • Creating CGPoint from an array, dictionary, or number in a theme file
      • Creating UIOffset from an array, dictionary, or number in a theme file
    • โœ‚ Removes old string value transformers in favor of the above
    • โž• Adds a keyword applier registration method for easily specifying enums as strings in themes (#31)

    ๐Ÿ›  Fixes

    • ๐Ÿ›  Fixes a YAML number parsing bug (thanks @jlawton!) (#44)
    • โœ‚ Removes backwards-compatible nullability annotations as Xcode 6.3+ is standard now. (#40)
    • ๐Ÿ‘‰ Uses modular imports in headers (#32)
    • Re-throws non-NSUndefinedKeyException exceptions when applying classes (#30)
    • ๐Ÿ– Handles duplicate appliers with different classes (#29)
    • โ†ช Inlines applier blocks to work around rdar://20723086 (#37)
    • ๐Ÿ— Prevents Carthage from building the tests as part of build 3cc0695
    • Overrides missing designated initializer (#46)