It’s been a busy couple of weeks! We had a lot of interest since being mentioned in iosdevweekly last week, with new contributors starting to feel their way in the project!
Today we’re releasing the second tagged early-access build 1.0.2 so that people using Flint today can build to a known target. The FlintDemo-iOS project has already been updated to use this release.
This release has some great improvements:
ConditionalFeaturecan also now be a
FeatureGroupthat has sub-features (#144)
FeatureGroupcan now also define actions and URL mappings (#144)
- New FlintLoggable type for
InputTypeon actions, for more useful logging (#153)
- Weak linking of Contacts & EventKit to prevent App Store processing rejections for missing usage description keys (#145). A slightly hacky solution for now and some frameworks are still linked even if your app doesn’t use them but this will be addressed in a future release. For full details of the horrible story, including an unexpected transitive dependency from
Intentsframework see this blog post
- Improved the argument signatures of various
performfunctions to use
perform(input:, presenter:)rather than the previous
perform(with:, using:)which was ambiguous (#159). You’ll need to rename your functions to match — the compiler will tell you! This is a slightly painful change but it’s better to do it now
Flint.linkCreatoris now automatically created even if only one of app URL scheme or associated domain specified (#157).
(note: Some readers my wonder why the version does not follow semver norms. This is because these early access releases are not intended to be used as versioned dependencies in Carthage, and Carthage will not see these as valid versions, so you must add the dependency using the tag string. We’ll go to “1.0.21” or similar for the first public release and all will be well again”)