Skip to content

Commit 373f95a

Browse files
committed
v6.0.0-beta.4
1 parent f2859ff commit 373f95a

File tree

7 files changed

+38
-33
lines changed

7 files changed

+38
-33
lines changed

CHANGELOG.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ GRDB adheres to [Semantic Versioning](https://semver.org/), with one exception:
77

88
#### 6.x Releases
99

10-
- `6.0.0` Betas - [6.0.0-beta](#600-beta) | [6.0.0-beta.2](#600-beta2) | [6.0.0-beta.3](#600-beta2)
10+
- `6.0.0` Betas - [6.0.0-beta](#600-beta) | [6.0.0-beta.2](#600-beta2) | [6.0.0-beta.3](#600-beta3) | [6.0.0-beta.4](#600-beta4)
1111

1212
#### 5.x Releases
1313

@@ -97,7 +97,9 @@ GRDB adheres to [Semantic Versioning](https://semver.org/), with one exception:
9797

9898
---
9999

100-
## Next Release
100+
## 6.0.0-beta.4
101+
102+
Released August 28, 2022 • [diff](https://github.com/groue/GRDB.swift/compare/v6.0.0-beta.3...v6.0.0-beta.4)
101103

102104
- **New**: [#1271](https://github.com/groue/GRDB.swift/pull/1271) by [@groue](https://github.com/groue): Bump custom SQLite builds v3.39.2
103105
- **Breaking Change**: The`GRDB.xcodeproj` or `GRDBCustom.xcodeproj` projects now define cross-platforms targets.
@@ -106,7 +108,7 @@ GRDB adheres to [Semantic Versioning](https://semver.org/), with one exception:
106108

107109
## 6.0.0-beta.3
108110

109-
Released August 25, 2022 • [diff](https://github.com/groue/GRDB.swift/compare/v6.0.0-beta...v6.0.0-beta.2)
111+
Released August 25, 2022 • [diff](https://github.com/groue/GRDB.swift/compare/v6.0.0-beta.2...v6.0.0-beta.3)
110112

111113
- **Fix**: [#1268](https://github.com/groue/GRDB.swift/pull/1268) by [@groue](https://github.com/groue): Fix SQL generation of CHECK constraints
112114
- **Breaking Change**: The `Column` type is no longer `Equatable`

Documentation/FullTextSearch.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -304,7 +304,7 @@ let pattern = FTS3Pattern(matchingAnyTokenIn: "") // nil
304304
let pattern = FTS3Pattern(matchingAnyTokenIn: "*") // nil
305305
```
306306

307-
FTS3Pattern are regular [values](../README.md#values). You can use them as query [arguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/StatementArguments.html):
307+
FTS3Pattern are regular [values](../README.md#values). You can use them as query [arguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/StatementArguments.html):
308308

309309
```swift
310310
let documents = try Document.fetchAll(db,
@@ -587,7 +587,7 @@ let pattern = FTS5Pattern(matchingAnyTokenIn: "") // nil
587587
let pattern = FTS5Pattern(matchingAnyTokenIn: "*") // nil
588588
```
589589

590-
FTS5Pattern are regular [values](../README.md#values). You can use them as query [arguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/StatementArguments.html):
590+
FTS5Pattern are regular [values](../README.md#values). You can use them as query [arguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/StatementArguments.html):
591591

592592
```swift
593593
let documents = try Document.fetchAll(db,

Documentation/Migrations.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ try dbQueue.read { db in
7777
}
7878
```
7979

80-
See the [DatabaseMigrator reference](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/DatabaseMigrator.html) for more migrator methods.
80+
See the [DatabaseMigrator reference](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/DatabaseMigrator.html) for more migrator methods.
8181

8282

8383
## The `eraseDatabaseOnSchemaChange` Option

GRDB.swift.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = 'GRDB.swift'
3-
s.version = '6.0.0-beta.3'
3+
s.version = '6.0.0-beta.4'
44

55
s.license = { :type => 'MIT', :file => 'LICENSE' }
66
s.summary = 'A toolkit for SQLite databases, with a focus on application development.'

Makefile

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -495,12 +495,15 @@ ifdef JAZZY
495495
--clean \
496496
--author 'Gwendal Roué' \
497497
--author_url https://github.com/groue \
498-
--github_url https://github.com/groue/GRDB.swift \
499-
--github-file-prefix https://github.com/groue/GRDB.swift/tree/v6.0.0-beta.3 \
500-
--module-version 6.0.0-beta.3 \
498+
--source-host github \
499+
--source-host-url https://github.com/groue/GRDB.swift \
500+
--source-host-files-url https://github.com/groue/GRDB.swift/tree/v6.0.0-beta.4 \
501+
--module-version 6.0.0-beta.4 \
501502
--module GRDB \
502-
--root-url http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/ \
503+
--root-url http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/ \
503504
--output Documentation/Reference \
505+
--swift-build-tool xcodebuild \
506+
--undocumented-text '' \
504507
--xcodebuild-arguments -project,GRDB.xcodeproj,-scheme,GRDB
505508
else
506509
@echo Jazzy must be installed for doc

README.md

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -11,13 +11,13 @@
1111

1212
---
1313

14-
**Latest release**: August 25, 2022 • [version 6.0.0-beta.3](https://github.com/groue/GRDB.swift/tree/v6.0.0-beta.3)[CHANGELOG](CHANGELOG.md)[Migrating From GRDB 5 to GRDB 6](Documentation/GRDB6MigrationGuide.md)
14+
**Latest release**: August 28, 2022 • [version 6.0.0-beta.4](https://github.com/groue/GRDB.swift/tree/v6.0.0-beta.4)[CHANGELOG](CHANGELOG.md)[Migrating From GRDB 5 to GRDB 6](Documentation/GRDB6MigrationGuide.md)
1515

1616
**Requirements**: iOS 11.0+ / macOS 10.13+ / tvOS 11.0+ / watchOS 4.0+ • SQLite 3.19.3+ • Swift 5.7+ / Xcode 14+
1717

1818
| Swift version | GRDB version |
1919
| -------------- | ----------------------------------------------------------- |
20-
| **Swift 5.7+** | **v6.0.0-beta.3** |
20+
| **Swift 5.7+** | **v6.0.0-beta.4** |
2121
| Swift 5.3 | [v5.26.0](https://github.com/groue/GRDB.swift/tree/v5.26.0) |
2222
| Swift 5.2 | [v5.12.0](https://github.com/groue/GRDB.swift/tree/v5.12.0) |
2323
| Swift 5.1 | [v4.14.0](https://github.com/groue/GRDB.swift/tree/v4.14.0) |
@@ -322,7 +322,7 @@ Documentation
322322

323323
#### Reference
324324

325-
- [GRDB Reference](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/index.html) (generated by [Jazzy](https://github.com/realm/jazzy))
325+
- [GRDB Reference](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/index.html) (generated by [Jazzy](https://github.com/realm/jazzy))
326326

327327
#### Getting Started
328328

@@ -616,7 +616,7 @@ do {
616616

617617
> **Warning**: It is your responsibility to prevent sensitive information from leaking in unexpected locations, so you should not set the `publicStatementArguments` flag in release builds (think about GDPR and other privacy-related rules).
618618
619-
See [Configuration](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/Configuration.html) for more details and configuration options.
619+
See [Configuration](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/Configuration.html) for more details and configuration options.
620620

621621

622622
SQLite API
@@ -673,7 +673,7 @@ try dbQueue.write { db in
673673
}
674674
```
675675

676-
The `?` and colon-prefixed keys like `:score` in the SQL query are the **statements arguments**. You pass arguments with arrays or dictionaries, as in the example above. See [Values](#values) for more information on supported arguments types (Bool, Int, String, Date, Swift enums, etc.), and [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/StatementArguments.html) for a detailed documentation of SQLite arguments.
676+
The `?` and colon-prefixed keys like `:score` in the SQL query are the **statements arguments**. You pass arguments with arrays or dictionaries, as in the example above. See [Values](#values) for more information on supported arguments types (Bool, Int, String, Date, Swift enums, etc.), and [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/StatementArguments.html) for a detailed documentation of SQLite arguments.
677677

678678
You can also embed query arguments right into your SQL queries, with the `literal` argument label, as in the example below. See [SQL Interpolation] for more details.
679679

@@ -931,7 +931,7 @@ try dbQueue.read { db in
931931
let dictionary = try Dictionary(uniqueKeysWithValues: cursor)
932932
```
933933

934-
- **Cursors adopt the [Cursor](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Protocols/Cursor.html) protocol, which looks a lot like standard [lazy sequences](https://developer.apple.com/reference/swift/lazysequenceprotocol) of Swift.** As such, cursors come with many convenience methods: `compactMap`, `contains`, `dropFirst`, `dropLast`, `drop(while:)`, `enumerated`, `filter`, `first`, `flatMap`, `forEach`, `joined`, `joined(separator:)`, `max`, `max(by:)`, `min`, `min(by:)`, `map`, `prefix`, `prefix(while:)`, `reduce`, `reduce(into:)`, `suffix`:
934+
- **Cursors adopt the [Cursor](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Protocols/Cursor.html) protocol, which looks a lot like standard [lazy sequences](https://developer.apple.com/reference/swift/lazysequenceprotocol) of Swift.** As such, cursors come with many convenience methods: `compactMap`, `contains`, `dropFirst`, `dropLast`, `drop(while:)`, `enumerated`, `filter`, `first`, `flatMap`, `forEach`, `joined`, `joined(separator:)`, `max`, `max(by:)`, `min`, `min(by:)`, `map`, `prefix`, `prefix(while:)`, `reduce`, `reduce(into:)`, `suffix`:
935935

936936
```swift
937937
// Prints all Github links
@@ -1010,7 +1010,7 @@ let rows = try Row.fetchAll(db,
10101010
arguments: ["name": "Arthur"])
10111011
```
10121012

1013-
See [Values](#values) for more information on supported arguments types (Bool, Int, String, Date, Swift enums, etc.), and [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/StatementArguments.html) for a detailed documentation of SQLite arguments.
1013+
See [Values](#values) for more information on supported arguments types (Bool, Int, String, Date, Swift enums, etc.), and [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/StatementArguments.html) for a detailed documentation of SQLite arguments.
10141014

10151015
Unlike row arrays that contain copies of the database rows, row cursors are close to the SQLite metal, and require a little care:
10161016

@@ -1318,7 +1318,7 @@ GRDB ships with built-in support for the following value types:
13181318

13191319
- Generally speaking, all types that adopt the [DatabaseValueConvertible](#custom-value-types) protocol.
13201320

1321-
Values can be used as [statement arguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/StatementArguments.html):
1321+
Values can be used as [statement arguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/StatementArguments.html):
13221322

13231323
```swift
13241324
let url: URL = ...
@@ -1789,7 +1789,7 @@ try dbQueue.inDatabase { db in // or dbPool.writeWithoutTransaction
17891789
}
17901790
```
17911791

1792-
Transactions can't be left opened unless you set the [allowsUnsafeTransactions](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/Configuration.html) configuration flag:
1792+
Transactions can't be left opened unless you set the [allowsUnsafeTransactions](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/Configuration.html) configuration flag:
17931793

17941794
```swift
17951795
// fatal error: A transaction has been left opened at the end of a database access
@@ -1901,7 +1901,7 @@ try dbQueue.write { db in
19011901
}
19021902
```
19031903

1904-
The `?` and colon-prefixed keys like `:name` in the SQL query are the statement arguments. You set them with arrays or dictionaries (arguments are actually of type [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/StatementArguments.html), which happens to adopt the ExpressibleByArrayLiteral and ExpressibleByDictionaryLiteral protocols).
1904+
The `?` and colon-prefixed keys like `:name` in the SQL query are the statement arguments. You set them with arrays or dictionaries (arguments are actually of type [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/StatementArguments.html), which happens to adopt the ExpressibleByArrayLiteral and ExpressibleByDictionaryLiteral protocols).
19051905

19061906
```swift
19071907
insertStatement.arguments = ["name": "Arthur", "score": 1000]
@@ -1984,7 +1984,7 @@ See also `Database.execute(sql:)` in the [Executing Updates](#executing-updates)
19841984

19851985
> **Note**: it is a programmer error to reuse a prepared statement that has failed: GRDB may crash if you do so.
19861986

1987-
For more information about prepared statements, see the [Statement reference](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Classes/Statement.html).
1987+
For more information about prepared statements, see the [Statement reference](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Classes/Statement.html).
19881988

19891989

19901990
### Prepared Statements Cache
@@ -2728,7 +2728,7 @@ try Place.fetchSet(db, sql: "SELECT ...", arguments:...) // Set<Place>
27282728
try Place.fetchOne(db, sql: "SELECT ...", arguments:...) // Place?
27292729
```
27302730

2731-
See [fetching methods](#fetching-methods) for information about the `fetchCursor`, `fetchAll`, `fetchSet` and `fetchOne` methods. See [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/StatementArguments.html) for more information about the query arguments.
2731+
See [fetching methods](#fetching-methods) for information about the `fetchCursor`, `fetchAll`, `fetchSet` and `fetchOne` methods. See [StatementArguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/StatementArguments.html) for more information about the query arguments.
27322732

27332733
> **Note**: for performance reasons, the same row argument to `init(row:)` is reused during the iteration of a fetch query. If you want to keep the row for later use, make sure to store a copy: `self.row = row.copy()`.
27342734

@@ -3238,7 +3238,7 @@ Here is a list with all the available [persistence callbacks], listed in the sam
32383238
- `aroundDelete`
32393239
- `didDelete`
32403240

3241-
For detailed information about each callback, check the [reference](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Protocols/MutablePersistableRecord.html).
3241+
For detailed information about each callback, check the [reference](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Protocols/MutablePersistableRecord.html).
32423242

32433243
In the `MutablePersistableRecord` protocol, `willInsert` and `didInsert` are mutating methods. In `PersistableRecord`, they are not mutating.
32443244

@@ -3431,7 +3431,7 @@ protocol EncodableRecord {
34313431
}
34323432
```
34333433

3434-
See [DatabaseColumnDecodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Enums/DatabaseColumnDecodingStrategy.html) and [DatabaseColumnEncodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Enums/DatabaseColumnEncodingStrategy.html) to learn about all available strategies.
3434+
See [DatabaseColumnDecodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Enums/DatabaseColumnDecodingStrategy.html) and [DatabaseColumnEncodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Enums/DatabaseColumnEncodingStrategy.html) to learn about all available strategies.
34353435

34363436

34373437
### Date and UUID Coding Strategies
@@ -3453,7 +3453,7 @@ protocol EncodableRecord {
34533453
}
34543454
```
34553455

3456-
See [DatabaseDateDecodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Enums/DatabaseDateDecodingStrategy.html), [DatabaseDateEncodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Enums/DatabaseDateEncodingStrategy.html), and [DatabaseUUIDEncodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Enums/DatabaseUUIDEncodingStrategy.html) to learn about all available strategies.
3456+
See [DatabaseDateDecodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Enums/DatabaseDateDecodingStrategy.html), [DatabaseDateEncodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Enums/DatabaseDateEncodingStrategy.html), and [DatabaseUUIDEncodingStrategy](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Enums/DatabaseUUIDEncodingStrategy.html) to learn about all available strategies.
34573457

34583458
There is no customization of uuid decoding, because UUID can already decode all its encoded variants (16-bytes blobs and uuid strings, both uppercase and lowercase).
34593459

@@ -5013,7 +5013,7 @@ Player // SELECT * FROM player
50135013
```
50145014
50155015
5016-
Raw SQL snippets are also accepted, with eventual [arguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/StatementArguments.html):
5016+
Raw SQL snippets are also accepted, with eventual [arguments](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/StatementArguments.html):
50175017
50185018
```swift
50195019
// SELECT DATE(creationDate), COUNT(*) FROM player WHERE name = 'Arthur' GROUP BY date(creationDate)
@@ -5919,7 +5919,7 @@ try Player.customRequest().fetchAll(db) // [Player]
59195919
59205920
- The `adapted(_:)` method eases the consumption of complex rows with [row adapters](#row-adapters). See [Joined Queries Support](#joined-queries-support) for some sample code that uses this method.
59215921
5922-
- [AnyFetchRequest](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/AnyFetchRequest.html): a type-erased request.
5922+
- [AnyFetchRequest](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/AnyFetchRequest.html): a type-erased request.
59235923
59245924
59255925
## Joined Queries Support
@@ -7252,7 +7252,7 @@ DatabaseRegion helps [ValueObservation] and [DatabaseRegionObservation] track ch
72527252
72537253
For example, if you observe the region of `Player.select(max(Column("score")))`, then you'll get be notified of all changes performed on the `score` column of the `player` table (updates, insertions and deletions), even if they do not modify the value of the maximum score. However, you will not get any notification for changes performed on other database tables, or updates to other columns of the player table.
72547254
7255-
For more details, see the [reference](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/DatabaseRegion.html).
7255+
For more details, see the [reference](https://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/DatabaseRegion.html).
72567256
72577257
72587258
#### The DatabaseRegionConvertible Protocol
@@ -8616,7 +8616,7 @@ When this is the case, there are two possible explanations:
86168616
try db.execute(sql: "UPDATE player SET name = ?", arguments: [name])
86178617
```
86188618
8619-
For more information, see [Double-quoted String Literals Are Accepted](https://sqlite.org/quirks.html#dblquote), and [Configuration.acceptsDoubleQuotedStringLiterals](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/Configuration.html#/s:4GRDB13ConfigurationV33acceptsDoubleQuotedStringLiteralsSbvp).
8619+
For more information, see [Double-quoted String Literals Are Accepted](https://sqlite.org/quirks.html#dblquote), and [Configuration.acceptsDoubleQuotedStringLiterals](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/Configuration.html#/s:4GRDB13ConfigurationV33acceptsDoubleQuotedStringLiteralsSbvp).
86208620
86218621
86228622
@@ -8765,7 +8765,7 @@ This chapter has [moved](Documentation/Concurrency.md#database-snapshots).
87658765
87668766
#### DatabaseWriter and DatabaseReader Protocols
87678767
8768-
This chapter was removed. See the references of [DatabaseReader](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Protocols/DatabaseReader.html) and [DatabaseWriter](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Protocols/DatabaseWriter.html).
8768+
This chapter was removed. See the references of [DatabaseReader](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Protocols/DatabaseReader.html) and [DatabaseWriter](http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Protocols/DatabaseWriter.html).
87698769
87708770
#### Asynchronous APIs
87718771
@@ -8819,7 +8819,7 @@ This chapter was renamed to [Embedding SQL in Query Interface Requests].
88198819
[Sharing a Database]: Documentation/SharingADatabase.md
88208820
[FAQ]: #faq
88218821
[Database Observation]: #database-changes-observation
8822-
[SQLRequest]: http://groue.github.io/GRDB.swift/docs/6.0.0-beta.3/Structs/SQLRequest.html
8822+
[SQLRequest]: http://groue.github.io/GRDB.swift/docs/6.0.0-beta.4/Structs/SQLRequest.html
88238823
[SQL literal]: Documentation/SQLInterpolation.md#sql-literal
88248824
[Identifiable]: https://developer.apple.com/documentation/swift/identifiable
88258825
[Query Interface Organization]: Documentation/QueryInterfaceOrganization.md

Support/Info.plist

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
<key>CFBundlePackageType</key>
1616
<string>FMWK</string>
1717
<key>CFBundleShortVersionString</key>
18-
<string>6.0.0-beta.3</string>
18+
<string>6.0.0-beta.4</string>
1919
<key>CFBundleSignature</key>
2020
<string>????</string>
2121
<key>CFBundleVersion</key>

0 commit comments

Comments
 (0)