Releases: pointfreeco/sqlite-data
Releases · pointfreeco/sqlite-data
1.6.0
What's Changed
Important
Changes in Swift 6.3 have required breaking some APIs in StructuredQueries. See the migration guide for details.
Full Changelog: 1.5.2...1.6.0
1.5.2
What's Changed
- Fixed: Allow metadatabase to be attached in tests (#393)
- Fixed: Avoid potential database locks by using a read connection (thanks @davidrothera, #396).
- Fixed: Update mock `CKAsset temp path in previews (thanks @Rspoon3, #392).
New Contributors
- @davidrothera made their first contribution in #396
- @Rspoon3 made their first contribution in #392
Full Changelog: 1.5.1...1.5.2
1.5.1
What's Changed
- Fixed: Migrations with
NULL DEFAULTcolumns should now correctly insert the default when synchronizing from CloudKit (#380). - Fixed: Avoid caching incorrect modification timestamp when batching records to CloudKit (#386).
- Fixed: Avoid date drift during encode/decode/synchronization (#387).
- Fixed: Tests no longer start the sync engine immediately, which can lead to database locking issues. Tests that hit the sync engine must
await syncEngine.start()(#375). - Fixed: Detect
SyncEngine.isSynchronizingmisuse in triggers (#381). - Infrastructure: Add a test for what happens with outside records (#384).
Full Changelog: 1.5.0...1.5.1
1.5.0
What's Changed
- Added: Preview support for CloudKit-enabled apps (#366; #367).
- Added:
SyncEngine.isSynchronizingandSyncEngine.$isSynchronizing(#372). - Fixed: Address issue where newly created child records may not be shareable due to stale iCloud data (#363).
- Fixed: Address issue where metadata may not be observed in some cases (#369).
- Fixed: Propagate dependencies in
FetchKey(#368) - Fixed: Address CloudKit issue affecting schema migrations and
NOT NULLcolumns (#365). - Infrastructure: Increase test coverage on CloudKit schema changes (#361).
Full Changelog: 1.4.3...1.5.0
1.4.3
What's Changed
- Fixed: Avoid executing
@Fetch{All,One}queries for non-table selection types (#350). - Fixed: Avoid
limitExceedederrors when synchronizing large amounts of data from iCloud (#359).
Full Changelog: 1.4.2...1.4.3
1.4.2
1.4.1
What's Changed
- Fixed: Handle 'batchRequestFailed' errors. #328
- Infrastructure: Fix id column type in documentation example schema to prevent error by @RobbieClarken in #322
- Infrastructure: Make SyncEngine more testable. #300
- Infrastructure: Improvements to the mock cloud database. #312
- Infrastructure: Fix malformed link to GRDB in docs by @lukaskubanek in #323
- Infrastructure: Fix attachMetadatabase docs by @DominikGrodl in #327
New Contributors
- @RobbieClarken made their first contribution in #322
- @lukaskubanek made their first contribution in #323
Full Changelog: 1.4.0...1.4.1
1.4.0
What's Changed
- Added: Add static
fetchhelpers,findhelpers. #296 - Added: Introduce
FetchTaskto tie database observation to view lifetime. #295 - Fixed: Fix logic that determines sharing private tables. #306
- Fixed: Private tables should always be saved in private db. #310
- Fixed: Do not delete records when sharee deletes share. #316
- Infrastructure: Update foreign keys tip formatting in CloudKit.md by @andgordio in #292
- Infrastructure: Add missing ON DELETE action to code snippet for assets primary key by @johankool in #307
- Infrastructure: Update permission check for CloudKit sharing by @johankool in #314
- Infrastructure: Add indexes on foreign keys in Reminders and SyncUp examples by @jcmourey in #317
New Contributors
- @andgordio made their first contribution in #292
- @johankool made their first contribution in #307
- @jcmourey made their first contribution in #317
Full Changelog: 1.3.0...1.4.0
1.3.0
What's Changed
- Added:
SyncMetadata.IDand new interfaces for querying sync metadata (#271):// Fetch sync metadata for a given record: SyncMetadata.find(record.syncMetadataID) // Join sync metadata for a given query: Record.leftJoin(SyncMetadata.all) { $0.syncMetadataID.eq($1.id) }
- Added:
SyncEngine.fetchChanges,sendChanges, andsyncChanges(#286). - Fixed: Support
attachMetadatabasein previews (#267). - Fixed: Use metadatabase to query sync metadata to prevent error when sync engine has not explicitly attached the metadata base (#270).
- Fixed: Restrict mutation to sync metadata fields (#276).
- Fixed: Resolve a bug that could reset the timestamp of record when sharing it (#278).
- Fixed: Address a compiler error when introducing
CK{Record,Share}representations to selections and database functions (#283, #284).
Full Changelog: 1.2.0...1.3.0
1.2.0
What's Changed
- Added: New sync engine properties for observing sync state (#249).
- Added: User-defined aggregate functions (#262).
- Added: The ability to customize logout behavior (#261).
- Added: A new option to drop unique constraints from
SyncEngine.migratePrimaryKeys(thanks @diatoming, #253). - Fixed: Ensure recently shared record metadata is up-to-date with CloudKit records (#259).
- Infrastructure: Update examples to use default main actor (#248).
- Infrastructure: Docs fixes (thanks @ScottPlease, #264; #255).
New Contributors
- @diatoming made their first contribution in #253
Full Changelog: 1.1.1...1.2.0