fatbobman / SwiftDataKit

SwiftDataKit allows SwiftData developers to access Core Data objects corresponding to SwiftData elements.
https://fatbobman.medium.com/swiftdatakit-unleashing-advanced-core-data-features-in-swiftdata-3fcd5f443c99
MIT License
91 stars 6 forks source link

Support for multiple configurations #1

Open marwey opened 6 months ago

marwey commented 6 months ago

Hi, will this extension library also work for the case that the SwiftData ModelContainer is created with multiple configurations? I saw test cases implemented using only one configuration?

fatbobman commented 6 months ago

@marwey Theoretically, it is feasible, but currently, SwiftData has a bug where only the first configuration works, making it impossible to implement multiple stores within one container, similar to Core Data.

marwey commented 6 months ago

@fatbobman Thanks for the heads up! Yes, looks like this part is buggy. The funny thing is, when I peek into my modelContext with the debugger I can see the data of both of my configurations?

fatbobman commented 6 months ago

@marwey Yes, This is a very interesting bug. SwiftData creates a corresponding SQLite file for each configuration, but it only loads the first configuration (corresponding to NSPersistentStoreDescription in Core Data).

I mentioned it in my twitter https://twitter.com/fatbobman/status/1741820272964251751

marwey commented 6 months ago

@fatbobman Yes, that is inline with what I see in my code. And it's actually independent from your library.

Will file a bug report with them and see if I can work around this in my app.

marwey commented 5 months ago

@fatbobman It seems Apple has fixed the above bug. At least the sample I attached to my bug report works in macOS 14.4.

fatbobman commented 5 months ago

@marwey Thanks, I just test it , Yes, It works finally!