A new release of the Swift toolkit for SQLite databases.
GRDB 7 is Xcode 16 and Swift 6 ready!
To upgrade, please follow the migration guide.
Raising the Swift concurrency checkings of Swift 6 can create compiler warnings. The new Swift Concurrency and GRDB guide is there to help you use GRDB from your Swift 6 code.
If you are looking for inspiration, the demo app was rewritten from scratch in a brand new Xcode 16 project.
What's Changed
- 7.0.0-beta
- Breaking Change: Bump requirements by @groue in #1598 and #1634
- Breaking Change: enhance ergonomics of record methods that insert/save/upsert and fetch by @groue in #1599
- Breaking Change: Rename the CSQLite module to GRDBSQLite, and stop exporting the C SQLite functions. by @groue in #1600
- Breaking Change: Perform all writes with immediate transactions by default by @groue in #1602
- Breaking Change: Remove DatabasePool.concurrentRead by @groue in #1603
- Breaking Change: Coding strategies depend on the column by @groue in #1606
- Breaking Change: Add missing Sendable conformances by @groue in #1607 and #1639
- Breaking Change: Async database accesses honor Task cancellation by @groue in #1610
- Breaking Change: Prefer Collection over Sequence for
filter(keys:)
and related APIs by @groue in #1617 - Breaking Change: MainActor ValueObservation scheduling by @groue in #1633
- Breaking Change: prefer any DatabaseReader and DatabaseWriter by @groue in #1635
- DatabaseCursor has a primary associated type by @groue in #1605
- Sendable database accesses by @groue in #1618
- New demo app by @groue in #1636
- Migration Guide by @groue in #1638
- Stop mentioning the Record base class in the documentation by @groue in #1640
- Enable the Swift 6 language mode by @groue in #1641
- 7.0.0-beta.2
- Update .spi.yml by @finestructure in #1643
- 7.0.0-beta.3
- use #if directives to conditionally
@preconcurrency import
theDispatch
module to enable building the package on linux by @tayloraswift in #1644 - Add coalesce free function and Row method by @philmitchell in #1645
- Add
DatabaseValueConvertible
tip for JSON columns by @bok- in #1649
- use #if directives to conditionally
- 7.0.0-beta.4
- 7.0.0-beta.5
- 7.0.0-beta.6
- 7.0.0-beta.7
- docs: fixes typos "FST"->"FTS" by @nylki in #1660
- Foundation: elide extensions on Windows to match Linux by @compnerd in #1661
- Core: import
ucrt
on Windows forstrcmp
by @compnerd in #1662 - Update LICENSE, fix copyright license year by @JasonnnW3000 in #1695
- Bump custom SQLite to 3.47.2 by @groue in #1696
- Fix typo in Readme.md by @kevinlg in #1697
- Select all columns but a few ones by @groue in #1700
- 7.0.0
New Contributors
- @finestructure made their first contribution in #1643
- @tayloraswift made their first contribution in #1644
- @philmitchell made their first contribution in #1645
- @bok- made their first contribution in #1649
- @Jnosh made their first contribution in #1653
- @nylki made their first contribution in #1660
- @compnerd made their first contribution in #1661
- @JasonnnW3000 made their first contribution in #1695
- @kevinlg made their first contribution in #1697
Full Changelog: v6.29.3...v7.0.0