-
-
Notifications
You must be signed in to change notification settings - Fork 155
Open
Description
Current:
extension Foo: Defaults.Serializable, Defaults.PreferRawRepresentable {}I think this may be better:
extension Foo: Defaults.Serializable.RawRepresentable {}This is shorter, but more importantly, it makes the choice explicit. Users should prefer this over Defaults.Serializable. Defaults.Serializable has a big flaw. For example, you have a struct X: Codable, Defaults.Serializable. You save data with it, but later on, you add a RawRepresentable conformance. The previous persisted version of the struct can no longer be loaded as it's saved using the Codable bridge, but now tries to load using the RawRepresentable bridge.
// @hank121314 Thoughts? Any better way to prevent this problem?
Metadata
Metadata
Assignees
Labels
No labels