Open guilhermearaujo opened 5 years ago
Can confirm, I have the same problem. Took me a day to figure out what happened with the project. And now I'm stuck with broken project, because new Xcode doesn't compile the 5.8.0 version
When using Xcode 10.2 you should use EVReflection version 5.10.1 or later. If cocoapods installs an earlier version, then you should upgrade cocoapods to version 1.7.0.
@megavirus74 and @guilhermearaujo could you confirm that you are using EVReflection version 5.10 or later and still have this problem?
@evermeer a while ago I decided not to use Realm anymore and switched to the regular EVReflection.
If someone still has this issue, then just reopen this.
I also encountered the same issue. Finally, I find source cause of this issue.
The source is swiftClassTypeFromString(_:)
.
It cannot be convert some Realm class, like List<FooRealmObject>
.
I modified setPropertiesfromDictionary(_:anyObject:conversionOptions:forKeyPath:)
back to:
if let c = original as? EVCustomReflectable {
if let v = c.constructWith(value: value) {
value = v
}
}
Then solved this issue of Realm crash. (But, this is a temporary solution)
I think we need rethink how to "construct" better.
@bennettyuan18 I will have a look at this later. Reopening this issue so that I won't forget.
For anyone with the same issue for now you can use my fork in your podfile:
pod 'EVReflection/Realm', :git => 'https://github.com/tobybonhof/EVReflection'
I am using EVReflection 5.7.0 and it works fine. After upgrading to 5.8.0 (or 5.90), my Realm Object models no longer work.
Nothing wrong happens during the deserialisation, but when I try to access one of their properties, I get a SIGABRT.
I tested each commit and found changes on https://github.com/evermeer/EVReflection/commit/ea870885cd21b484fd4ada0f1b66e1eb126ebfb3 to be causing this. This is my model declaration:
And this is some lldb data from the deserialised object:
Using 5.7.0, however: