Skip to content

Commit 47a7ddf

Browse files
committed
Merge branch 'development'
2 parents 2cf6c75 + ecd4658 commit 47a7ddf

File tree

464 files changed

+9329
-11855
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

464 files changed

+9329
-11855
lines changed

.editorconfig

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
[*.swift]
2+
indent_style = space
3+
indent_size = 4
4+
tab_width = 4
5+
end_of_line = lf
6+
insert_final_newline = true
7+
max_line_length = 76
8+
trim_trailing_whitespace = true

.github/workflows/CI.yml

Lines changed: 24 additions & 69 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# https://github.com/actions/runner-images/blob/main/images/macos/macos-12-Readme.md
1+
# https://github.com/actions/runner-images/blob/main/images/macos/macos-14-Readme.md
22

33
name: "GRDB CI"
44

@@ -40,42 +40,18 @@ jobs:
4040
fail-fast: false
4141
matrix:
4242
include:
43-
- xcode: "Xcode_14.3.1.app"
44-
runsOn: macOS-13
43+
- xcode: "Xcode_16.1.app"
44+
runsOn: macOS-14
4545
destination: "platform=macOS"
4646
name: "macOS"
47-
- xcode: "Xcode_14.3.1.app"
48-
runsOn: macOS-13
49-
destination: "OS=16.4,name=iPhone 14 Pro"
47+
- xcode: "Xcode_16.1.app"
48+
runsOn: macOS-14
49+
destination: "OS=18.1,name=iPhone 15 Pro"
5050
name: "iOS"
51-
- xcode: "Xcode_14.3.1.app"
52-
runsOn: macOS-13
53-
destination: "OS=16.4,name=Apple TV"
51+
- xcode: "Xcode_16.1.app"
52+
runsOn: macOS-14
53+
destination: "OS=18.0,name=Apple TV"
5454
name: "tvOS"
55-
- xcode: "Xcode_14.2.app"
56-
runsOn: macOS-13
57-
destination: "platform=macOS"
58-
name: "macOS"
59-
- xcode: "Xcode_14.2.app"
60-
runsOn: macOS-13
61-
destination: "OS=16.2,name=iPhone 14"
62-
name: "iOS"
63-
- xcode: "Xcode_14.1.app"
64-
runsOn: macOS-13
65-
destination: "platform=macOS"
66-
name: "macOS"
67-
- xcode: "Xcode_14.1.app"
68-
runsOn: macOS-13
69-
destination: "OS=16.1,name=iPhone 14"
70-
name: "iOS"
71-
- xcode: "Xcode_14.0.1.app"
72-
runsOn: macOS-12
73-
destination: "platform=macOS"
74-
name: "macOS"
75-
- xcode: "Xcode_14.0.1.app"
76-
runsOn: macOS-12
77-
destination: "OS=16.0,name=iPhone 14"
78-
name: "iOS"
7955
steps:
8056
- uses: actions/checkout@v4
8157
- name: ${{ matrix.name }}
@@ -90,18 +66,9 @@ jobs:
9066
fail-fast: false
9167
matrix:
9268
include:
93-
- xcode: "Xcode_14.3.1.app"
94-
runsOn: macOS-13
95-
name: "Xcode 14.3.1"
96-
- xcode: "Xcode_14.2.app"
97-
runsOn: macOS-13
98-
name: "Xcode 14.2"
99-
- xcode: "Xcode_14.1.app"
100-
runsOn: macOS-13
101-
name: "Xcode 14.1"
102-
- xcode: "Xcode_14.0.1.app"
103-
runsOn: macOS-12
104-
name: "Xcode 14.0.1"
69+
- xcode: "Xcode_16.1.app"
70+
runsOn: macOS-14
71+
name: "Xcode 16.1"
10572
steps:
10673
- uses: actions/checkout@v4
10774
- name: ${{ matrix.name }}
@@ -116,12 +83,9 @@ jobs:
11683
fail-fast: false
11784
matrix:
11885
include:
119-
- xcode: "Xcode_14.3.1.app"
120-
runsOn: macOS-13
121-
name: "Xcode 14.3.1"
122-
- xcode: "Xcode_14.0.1.app"
123-
runsOn: macOS-12
124-
name: "Xcode 14.0.1"
86+
- xcode: "Xcode_16.1.app"
87+
runsOn: macOS-14
88+
name: "Xcode 16.1"
12589
steps:
12690
- uses: actions/checkout@v4
12791
- name: ${{ matrix.name }}
@@ -136,12 +100,9 @@ jobs:
136100
fail-fast: false
137101
matrix:
138102
include:
139-
- xcode: "Xcode_14.3.1.app"
140-
runsOn: macOS-13
141-
name: "Xcode 14.3.1"
142-
- xcode: "Xcode_14.0.1.app"
143-
runsOn: macOS-12
144-
name: "Xcode 14.0.1"
103+
- xcode: "Xcode_16.1.app"
104+
runsOn: macOS-14
105+
name: "Xcode 16.1"
145106
steps:
146107
- uses: actions/checkout@v4
147108
- name: ${{ matrix.name }}
@@ -156,12 +117,9 @@ jobs:
156117
fail-fast: false
157118
matrix:
158119
include:
159-
- xcode: "Xcode_14.3.1.app"
160-
runsOn: macOS-13
161-
name: "Xcode 14.3.1"
162-
- xcode: "Xcode_14.0.1.app"
163-
runsOn: macOS-12
164-
name: "Xcode 14.0.1"
120+
- xcode: "Xcode_16.1.app"
121+
runsOn: macOS-14
122+
name: "Xcode 16.1"
165123
steps:
166124
- uses: actions/checkout@v4
167125
- name: ${{ matrix.name }}
@@ -176,12 +134,9 @@ jobs:
176134
fail-fast: false
177135
matrix:
178136
include:
179-
- xcode: "Xcode_14.3.1.app"
180-
runsOn: macOS-13
181-
name: "Xcode 14.3.1"
182-
- xcode: "Xcode_14.0.1.app"
183-
runsOn: macOS-12
184-
name: "Xcode 14.0.1"
137+
- xcode: "Xcode_16.1.app"
138+
runsOn: macOS-14
139+
name: "Xcode 16.1"
185140
steps:
186141
- uses: actions/checkout@v4
187142
- name: ${{ matrix.name }}

.swiftpm/xcode/xcshareddata/xcschemes/GRDB-Package.xcscheme

Lines changed: 0 additions & 134 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,10 @@ All notable changes to this project will be documented in this file.
55

66
GRDB adheres to [Semantic Versioning](https://semver.org/), with one exception: APIs flagged [**:fire: EXPERIMENTAL**](README.md#what-are-experimental-features). Those are unstable, and may break between any two minor releases of the library.
77

8+
#### 7.x Releases
9+
10+
- `7.0.0` Betas - [7.0.0-beta](#700-beta)
11+
812
#### 6.x Releases
913

1014
- `6.29.x` Releases - [6.29.0](#6290) - [6.29.1](#6291) - [6.29.2](#6292) - [6.29.3](#6293)
@@ -127,6 +131,32 @@ GRDB adheres to [Semantic Versioning](https://semver.org/), with one exception:
127131

128132
---
129133

134+
## 7.0.0-beta
135+
136+
Released September 29, 2024
137+
138+
**GRDB 7 brings full support for Swift 6.**
139+
140+
[Migrating From GRDB 6 to GRDB 7](Documentation/GRDB7MigrationGuide.md) describes in detail how to bump the GRDB version in your application.
141+
142+
The new [Swift Concurrency and GRDB](https://swiftpackageindex.com/groue/grdb.swift/documentation/grdb/swiftconcurrency) guide explains how to best integrate GRDB and Swift Concurrency.
143+
144+
The [demo app](Documentation/DemoApps/) was rewritten from scratch in a brand new Xcode 16 project.
145+
146+
- **Breaking Change**: Bump requirements by [@groue](https://github.com/groue) in [#1598](https://github.com/groue/GRDB.swift/pull/1598) and [#1634](https://github.com/groue/GRDB.swift/pull/1634)
147+
- **Breaking Change**: Enhance ergonomics of record methods that insert/save/upsert and fetch by [@groue](https://github.com/groue) in [#1599](https://github.com/groue/GRDB.swift/pull/1599)
148+
- **Breaking Change**: Rename the CSQLite module to GRDBSQLite, and stop exporting the C SQLite functions by [@groue](https://github.com/groue) in [#1600](https://github.com/groue/GRDB.swift/pull/1600)
149+
- **Breaking Change**: Perform all writes with immediate transactions by default by [@groue](https://github.com/groue) in [#1602](https://github.com/groue/GRDB.swift/pull/1602)
150+
- **Breaking Change**: Remove DatabasePool.concurrentRead by [@groue](https://github.com/groue) in [#1603](https://github.com/groue/GRDB.swift/pull/1603)
151+
- **Breaking Change**: Coding strategies depend on the column by [@groue](https://github.com/groue) in [#1606](https://github.com/groue/GRDB.swift/pull/1606)
152+
- **Breaking Change**: Add missing Sendable conformances by [@groue](https://github.com/groue) in [#1607](https://github.com/groue/GRDB.swift/pull/1607) and [#1639](https://github.com/groue/GRDB.swift/pull/1639)
153+
- **Breaking Change**: Async database accesses honor Task cancellation by [@groue](https://github.com/groue) in [#1610](https://github.com/groue/GRDB.swift/pull/1610)
154+
- **Breaking Change**: Prefer Collection over Sequence for filter(keys:) and related APIs by [@groue](https://github.com/groue) in [#1617](https://github.com/groue/GRDB.swift/pull/1617)
155+
- **Breaking Change**: MainActor ValueObservation scheduling by [@groue](https://github.com/groue) in [#1633](https://github.com/groue/GRDB.swift/pull/1633)
156+
- **Breaking Change**: Prefer any DatabaseReader and DatabaseWriter by [@groue](https://github.com/groue) in [#1635](https://github.com/groue/GRDB.swift/pull/1635)
157+
- **New**: Sendable database accesses by [@groue](https://github.com/groue) in [#1618](https://github.com/groue/GRDB.swift/pull/1618)
158+
- **New**: DatabaseCursor has a primary associated type by [@groue](https://github.com/groue) in [#1605](https://github.com/groue/GRDB.swift/pull/1605)
159+
130160
## 6.29.3
131161

132162
Released September 7, 2024

Documentation/AssociationsBasics.md

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,7 @@ Before we dive in, please remember that associations can not generate all possib
137137

138138
**Associations are available on types that adopt the necessary supporting protocols.**
139139

140-
When your record type is a subclass of the [Record class], all necessary protocols are already setup and ready: you can skip this chapter.
141-
142-
Generally speaking, associations use the [TableRecord], [FetchableRecord], and [EncodableRecord] protocols:
140+
Associations are based on the [TableRecord], [FetchableRecord], and [EncodableRecord] protocols:
143141

144142
- **[TableRecord]** is the protocol that lets you declare associations between record types:
145143

@@ -3005,7 +3003,6 @@ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
30053003
[TableRecord]: ../README.md#tablerecord-protocol
30063004
[Recommended Practices for Designing Record Types]: https://swiftpackageindex.com/groue/grdb.swift/documentation/grdb/recordrecommendedpractices
30073005
[regular aggregating methods]: ../README.md#fetching-aggregated-values
3008-
[Record class]: ../README.md#record-class
30093006
[EncodableRecord]: ../README.md#persistablerecord-protocol
30103007
[PersistableRecord]: ../README.md#persistablerecord-protocol
30113008
[Codable Records]: ../README.md#codable-records

0 commit comments

Comments
 (0)