Repository navigation
Releases
0.9.0
0.9.0
CloudKit Sync Support + Enhanced Configuration Options
This release adds CloudKit synchronization capabilities and additional configuration flexibility to NnSwiftDataKit.
What's New
- CloudKit Sync Support: Enable iCloud syncing for your SwiftData stores with the new
cloudKitDatabaseIdparameter - Named Stores: Use the
nameparameter to manage multiple stores within the same App Group container - Read-Only Mode: Set
readOnly: trueto disable saves and treat stores as read-only - Private CloudKit Databases: Full support for syncing to private CloudKit databases
API Enhancements
Both makeAppGroupConfiguration and makeAppGroupModelContainer now accept:
name: String?- Optional store identifierreadOnly: Bool- Read-only mode toggle (default:false)cloudKitDatabaseId: String?- CloudKit container ID for sync
Example Usage
// Enable CloudKit sync
let (container, defaults) = try makeAppGroupModelContainer(
schema: Schema([MyModel.self]),
appGroupId: "group.com.example.app",
cloudKitDatabaseId: "iCloud.com.example.app"
)
// Create a named, read-only store
let (config, defaults) = try makeAppGroupConfiguration(
name: "ReadOnlyStore",
appGroupId: "group.com.example.app",
readOnly: true
)Backward Compatibility
All new parameters have default values, so existing code continues to work without any modifications.
Full Changelog: https://github.com/nikolainobadi/NnSwiftDataKit/blob/main/CHANGELOG.md
0.8.0
NnSwiftDataKit v0.8.0 Release Notes
What's New
App Group Migration Support
This release adds the ability to migrate SwiftData stores when changing App Group identifiers. The new migrateAppGroupSwiftDataStoreIfNeeded function handles copying your database from an old App Group container to a new one, with optional automatic cleanup of the old container.
Use case: When you need to change your app's App Group identifier, this function ensures your existing SwiftData store is preserved and moved to the new location.
Key Features
- Seamless migration between App Group containers
- Optional automatic deletion of old container after successful migration
- Safe migration logic that only runs when needed
Bug Fixes
- Fixed parameter syntax issue with
migrationPlantrailing comma
0.7.0
NnSwiftDataKit v0.7.0
Release Date: November 29, 2025
What's New
New APIs for App Group Support
makeAppGroupConfiguration()- Create SwiftData configuration and UserDefaults for app groupsmakeAppGroupModelContainer()- Get a complete ModelContainer configured for app group sharingModelContainer.printStoreFilePath()- Debug extension to print database location
Documentation Improvements
- Enhanced README with clearer usage examples
- Comprehensive inline documentation for all public APIs
Breaking Changes
configureSwiftDataContainer function has been removed and replaced with more flexible alternatives:
Migration:
// Old (v0.6.0)
let (config, defaults) = try configureSwiftDataContainer(appGroupId: "group.com.example.app")
// New (v0.7.0) - Configuration only
let (config, defaults) = try makeAppGroupConfiguration(appGroupId: "group.com.example.app")
// New (v0.7.0) - Complete container
let (container, defaults) = try makeAppGroupModelContainer(
schema: schema,
appGroupId: "group.com.example.app"
)Requirements
- Swift 6.0+
- macOS 14+ / iOS 17+
v0.6.0
v0.6.0 Release Notes
Swift 6.0 Support
This release updates the package to Swift 6.0, ensuring compatibility with the latest Swift toolchain and language features.
Improvements
- Enhanced README documentation with usage examples and clearer API behavior
- Fixed access modifiers to properly expose the public API
v0.5.0
Release Notes for NnSwiftDataKit v0.5.0
- Initial release with support for configuring SwiftData containers with App Groups.
- Provides
configureSwiftDataContainerfor easy setup of containers andUserDefaults. - Automatic directory creation and error handling for App Group access.
- Usage examples included in the README.