GRDB.swift v5.0.0-beta.5 Release Notes
-
๐ Released June 15, 2020 • diff
- ๐ฅ Breaking Change #795: Enhanced support for WAL Checkpoints
- ๐ New:
Database.maximumStatementArgumentCount
returns the maximum number of arguments accepted by an SQLite statement. - ๐ New: Optimize DatabasePool handling of ValueObservation when SQLite is compiled with the SQLITE_ENABLE_SNAPSHOT option. We are now able to avoid fetching the observed value when we can prove that the database wasn't changed between the initial fetch and the beginning of transaction tracking. This optimization avoids duplicate notifications.
- ๐ New: The query interface now exposes the primary key through
TableRecord.primaryKey
, as well as theselectPrimaryKey(as:)
method.
๐ Documentation Diff
๐ The [Demo Application](Documentation/DemoApps/GRDBDemoiOS) was updated for better conformance with the [Good Practices for Designing Record Types](Documentation/GoodPracticesForDesigningRecordTypes.md) Guide.
๐ A new [FAQ: Associations](README.md#faq-associations) addresses three frequent questions:
- [How do I filter records and only keep those that are associated to another record?](README.md#how-do-i-filter-records-and-only-keep-those-that-are-associated-to-another-record)
- [How do I filter records and only keep those that are NOT associated to another record?](README.md#how-do-i-filter-records-and-only-keep-those-that-are-not-associated-to-another-record)
- [How do I select only one column of an associated record?](README.md#how-do-i-select-only-one-column-of-an-associated-record)
The guide for [Custom SQLite builds](Documentation/CustomSQLiteBuilds.md) now recommends enabling the
SQLITE_ENABLE_SNAPSHOT
option.