Skip to content

Commit 14a5a68

Browse files
authored
Merge pull request #7 from fpseverino/update
Update to Swift 5.10
2 parents f3a8dfe + bb61ff4 commit 14a5a68

34 files changed

+108
-96
lines changed

.swiftformat

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
--extensionacl on-declarations
22
--header strip
3-
--maxwidth 100
3+
--maxwidth 140
44
--self insert
5-
--swiftversion 5.5
5+
--swiftversion 5.10
66
--wraparguments before-first
77
--wrapcollections before-first
88
--wrapparameters before-first

Package.swift

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
// swift-tools-version:5.9
1+
// swift-tools-version:5.10
22
import PackageDescription
33

44
let package = Package(
@@ -7,11 +7,11 @@ let package = Package(
77
.macOS(.v12),
88
],
99
products: [
10-
.library( name: "FluentPostGIS", targets: ["FluentPostGIS"] ),
10+
.library(name: "FluentPostGIS", targets: ["FluentPostGIS"]),
1111
],
1212
dependencies: [
13-
.package(url: "https://github.com/vapor/fluent-kit.git", from: "1.49.0"),
14-
.package(url: "https://github.com/vapor/fluent-postgres-driver.git", from: "2.10.0"),
13+
.package(url: "https://github.com/vapor/fluent-kit.git", from: "1.52.2"),
14+
.package(url: "https://github.com/vapor/fluent-postgres-driver.git", from: "2.10.1"),
1515
.package(url: "https://github.com/rabc/WKCodable.git", from: "0.1.2"),
1616
],
1717
targets: [
@@ -21,14 +21,25 @@ let package = Package(
2121
.product(name: "FluentKit", package: "fluent-kit"),
2222
.product(name: "FluentPostgresDriver", package: "fluent-postgres-driver"),
2323
.product(name: "WKCodable", package: "WKCodable"),
24-
]
24+
],
25+
swiftSettings: swiftSettings
2526
),
2627
.testTarget(
2728
name: "FluentPostGISTests",
2829
dependencies: [
2930
.target(name: "FluentPostGIS"),
3031
.product(name: "FluentBenchmark", package: "fluent-kit"),
31-
]
32+
],
33+
swiftSettings: swiftSettings
3234
),
3335
]
3436
)
37+
38+
var swiftSettings: [SwiftSetting] { [
39+
.enableUpcomingFeature("ExistentialAny"),
40+
.enableUpcomingFeature("ConciseMagicFile"),
41+
.enableUpcomingFeature("ForwardTrailingClosures"),
42+
.enableUpcomingFeature("DisableOutwardActorInference"),
43+
.enableUpcomingFeature("StrictConcurrency"),
44+
.enableExperimentalFeature("StrictConcurrency=complete"),
45+
] }

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ app.migrations.add(EnablePostGISMigration())
4141
Add a type to your model
4242

4343
```swift
44-
final class User: Model {
44+
final class User: Model, @unchecked Sendable {
4545
static let schema = "user"
4646

4747
@ID(key: .id)

Sources/FluentPostGIS/Geography/GeographicGeometryCollection2D.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
import FluentKit
22
import WKCodable
33

4-
public struct GeographicGeometryCollection2D: Codable, Equatable, CustomStringConvertible {
4+
public struct GeographicGeometryCollection2D: Codable, Equatable, CustomStringConvertible, Sendable {
55
/// The points
6-
public let geometries: [GeometryCollectable]
6+
public let geometries: [any GeometryCollectable]
77

88
/// Create a new `GISGeographicGeometryCollection2D`
9-
public init(geometries: [GeometryCollectable]) {
9+
public init(geometries: [any GeometryCollectable]) {
1010
self.geometries = geometries
1111
}
1212
}
@@ -43,17 +43,17 @@ extension GeographicGeometryCollection2D: GeometryConvertible, GeometryCollectab
4343
return .init(geometries: geometries, srid: FluentPostGISSrid)
4444
}
4545

46-
public var baseGeometry: Geometry {
46+
public var baseGeometry: any Geometry {
4747
self.geometry
4848
}
4949

50-
public init(from decoder: Decoder) throws {
50+
public init(from decoder: any Decoder) throws {
5151
let value = try decoder.singleValueContainer().decode(String.self)
5252
let wkbGeometry: GeometryCollection = try WKTDecoder().decode(from: value)
5353
self.init(geometry: wkbGeometry)
5454
}
5555

56-
public func encode(to encoder: Encoder) throws {
56+
public func encode(to encoder: any Encoder) throws {
5757
let wktEncoder = WKTEncoder()
5858
let value = wktEncoder.encode(self.geometry)
5959
var container = encoder.singleValueContainer()

Sources/FluentPostGIS/Geography/GeographicLineString2D.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import FluentKit
22
import WKCodable
33

4-
public struct GeographicLineString2D: Codable, Equatable, CustomStringConvertible {
4+
public struct GeographicLineString2D: Codable, Equatable, CustomStringConvertible, Sendable {
55
/// The points
66
public var points: [GeographicPoint2D]
77

@@ -24,7 +24,7 @@ extension GeographicLineString2D: GeometryConvertible, GeometryCollectable {
2424
.init(points: self.points.map(\.geometry), srid: FluentPostGISSrid)
2525
}
2626

27-
public var baseGeometry: Geometry {
27+
public var baseGeometry: any Geometry {
2828
self.geometry
2929
}
3030
}

Sources/FluentPostGIS/Geography/GeographicMultiLineString2D.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import FluentKit
22
import WKCodable
33

4-
public struct GeographicMultiLineString2D: Codable, Equatable, CustomStringConvertible {
4+
public struct GeographicMultiLineString2D: Codable, Equatable, CustomStringConvertible, Sendable {
55
/// The points
66
public let lineStrings: [GeographicLineString2D]
77

@@ -25,7 +25,7 @@ extension GeographicMultiLineString2D: GeometryConvertible, GeometryCollectable
2525
return .init(lineStrings: lineStrings, srid: FluentPostGISSrid)
2626
}
2727

28-
public var baseGeometry: Geometry {
28+
public var baseGeometry: any Geometry {
2929
self.geometry
3030
}
3131
}

Sources/FluentPostGIS/Geography/GeographicMultiPoint2D.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import FluentKit
22
import WKCodable
33

4-
public struct GeographicMultiPoint2D: Codable, Equatable, CustomStringConvertible {
4+
public struct GeographicMultiPoint2D: Codable, Equatable, CustomStringConvertible, Sendable {
55
/// The points
66
public var points: [GeographicPoint2D]
77

@@ -24,7 +24,7 @@ extension GeographicMultiPoint2D: GeometryConvertible, GeometryCollectable {
2424
.init(points: self.points.map(\.geometry), srid: FluentPostGISSrid)
2525
}
2626

27-
public var baseGeometry: Geometry {
27+
public var baseGeometry: any Geometry {
2828
self.geometry
2929
}
3030
}

Sources/FluentPostGIS/Geography/GeographicMultiPolygon2D.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import FluentKit
22
import WKCodable
33

4-
public struct GeographicMultiPolygon2D: Codable, Equatable, CustomStringConvertible {
4+
public struct GeographicMultiPolygon2D: Codable, Equatable, CustomStringConvertible, Sendable {
55
/// The points
66
public let polygons: [GeographicPolygon2D]
77

@@ -25,7 +25,7 @@ extension GeographicMultiPolygon2D: GeometryConvertible, GeometryCollectable {
2525
return .init(polygons: polygons, srid: FluentPostGISSrid)
2626
}
2727

28-
public var baseGeometry: Geometry {
28+
public var baseGeometry: any Geometry {
2929
self.geometry
3030
}
3131
}

Sources/FluentPostGIS/Geography/GeographicPoint2D.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import FluentKit
22
import WKCodable
33

4-
public struct GeographicPoint2D: Codable, Equatable, CustomStringConvertible {
4+
public struct GeographicPoint2D: Codable, Equatable, CustomStringConvertible, Sendable {
55
/// The point's x coordinate.
66
public var longitude: Double
77

@@ -27,7 +27,7 @@ extension GeographicPoint2D: GeometryConvertible, GeometryCollectable {
2727
.init(vector: [self.longitude, self.latitude], srid: FluentPostGISSrid)
2828
}
2929

30-
public var baseGeometry: Geometry {
30+
public var baseGeometry: any Geometry {
3131
self.geometry
3232
}
3333
}

Sources/FluentPostGIS/Geography/GeographicPolygon2D.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import FluentKit
22
import WKCodable
33

4-
public struct GeographicPolygon2D: Codable, Equatable, CustomStringConvertible {
4+
public struct GeographicPolygon2D: Codable, Equatable, CustomStringConvertible, Sendable {
55
/// The points
66
public let exteriorRing: GeographicLineString2D
77
public let interiorRings: [GeographicLineString2D]
@@ -37,7 +37,7 @@ extension GeographicPolygon2D: GeometryConvertible, GeometryCollectable {
3737
)
3838
}
3939

40-
public var baseGeometry: Geometry {
40+
public var baseGeometry: any Geometry {
4141
self.geometry
4242
}
4343
}

0 commit comments

Comments
 (0)