SvenTiigi / WhatsNewKit

Showcase your awesome new app features 📱
https://sventiigi.github.io/WhatsNewKit/
MIT License
3.92k stars 193 forks source link

Problems with KeyValueWhatsNewVersionStore #2

Closed max-horvath closed 6 years ago

max-horvath commented 6 years ago

Hi Sven,

I tried the KeyValueWhatsNewVersionStore implementation as described in README.md and it crashed when using UserDefaults.standard, or fails when using NSUbiquitousKeyValueStore.default. The crash happens when you press the completion button.

For NSUSerdefaults it crashes with Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Attempt to insert non-property list object 1.0.0 for key de.tiigi.whatsnewkit.1.0.0'

For iCloud it fails with [NSUbiquitousKeyValueStore setObject:forKey:]: Attempt to insert non-property value '1.0.0' of class '_SwiftValue'.

What would I need to do to fix this?

Max

SvenTiigi commented 6 years ago

Hey Max,

thanks for your detailed bug report 🙌

I've identified the issue and fixed it with a new release 1.1.1

The bug was triggered as WhatsNew.Version was directly stored to UserDefaults or NSUbiquitousKeyValueStore and since it doesn't support NSCoding cause WhatsNew.Version is designed as a struct, the app crashed.

The new release simply stores the String representation of a WhatsNew.Version 👌 (https://github.com/SvenTiigi/WhatsNewKit/commit/a25d80733f683ae7be91b9b4cac130e0b0440dcf)

Please let me know if this fix your issue

max-horvath commented 6 years ago

Hi Sven,

Thanks for the quick reply! The issue has been fixed.

Max