Skip to content

Commit bb03cd0

Browse files
committed
Revert RealtimeClient breaking change
1 parent 25e6373 commit bb03cd0

File tree

3 files changed

+9
-159
lines changed

3 files changed

+9
-159
lines changed

Sources/Realtime/Deprecated.swift

Lines changed: 0 additions & 143 deletions
Original file line numberDiff line numberDiff line change
@@ -9,146 +9,3 @@ import Foundation
99

1010
@available(*, deprecated, renamed: "RealtimeMessage")
1111
public typealias Message = RealtimeMessage
12-
13-
extension RealtimeChannelV2 {
14-
// @available(
15-
// *,
16-
// deprecated,
17-
// message: "Please use one of postgresChanges, presenceChange, or broadcast methods that returns an AsyncSequence instead."
18-
// )
19-
// @discardableResult
20-
// public func on(
21-
// _ event: String,
22-
// filter: ChannelFilter,
23-
// handler: @escaping (Message) -> Void
24-
// ) -> RealtimeChannel {
25-
// let stream: AsyncStream<HasRawMessage>
26-
//
27-
// switch event.lowercased() {
28-
// case "postgres_changes":
29-
// switch filter.event?.uppercased() {
30-
// case "UPDATE":
31-
// stream = postgresChange(
32-
// UpdateAction.self,
33-
// schema: filter.schema ?? "public",
34-
// table: filter.table!,
35-
// filter: filter.filter
36-
// )
37-
// .map { $0 as HasRawMessage }
38-
// .eraseToStream()
39-
// case "INSERT":
40-
// stream = postgresChange(
41-
// InsertAction.self,
42-
// schema: filter.schema ?? "public",
43-
// table: filter.table!,
44-
// filter: filter.filter
45-
// )
46-
// .map { $0 as HasRawMessage }
47-
// .eraseToStream()
48-
// case "DELETE":
49-
// stream = postgresChange(
50-
// DeleteAction.self,
51-
// schema: filter.schema ?? "public",
52-
// table: filter.table!,
53-
// filter: filter.filter
54-
// )
55-
// .map { $0 as HasRawMessage }
56-
// .eraseToStream()
57-
// case "SELECT":
58-
// stream = postgresChange(
59-
// SelectAction.self,
60-
// schema: filter.schema ?? "public",
61-
// table: filter.table!,
62-
// filter: filter.filter
63-
// )
64-
// .map { $0 as HasRawMessage }
65-
// .eraseToStream()
66-
// default:
67-
// stream = postgresChange(
68-
// AnyAction.self,
69-
// schema: filter.schema ?? "public",
70-
// table: filter.table!,
71-
// filter: filter.filter
72-
// )
73-
// .map { $0 as HasRawMessage }
74-
// .eraseToStream()
75-
// }
76-
//
77-
// case "presence":
78-
// stream = presenceChange().map { $0 as HasRawMessage }.eraseToStream()
79-
// case "broadcast":
80-
// stream = broadcast(event: filter.event!).map { $0 as HasRawMessage }.eraseToStream()
81-
// default:
82-
// fatalError(
83-
// "Unsupported event '\(event)'. Expected one of: postgres_changes, presence, or broadcast."
84-
// )
85-
// }
86-
//
87-
// Task {
88-
// for await action in stream {
89-
// handler(action.rawMessage)
90-
// }
91-
// }
92-
//
93-
// return self
94-
// }
95-
}
96-
97-
extension RealtimeClient {
98-
@available(
99-
*,
100-
deprecated,
101-
message: "Replace usages of this initializer with new init(_:headers:params:vsn:logger)"
102-
)
103-
@available(macOS 10.15, iOS 13, watchOS 6, tvOS 13, *)
104-
public convenience init(
105-
_ endPoint: String,
106-
headers: [String: String] = [:],
107-
params: Payload? = nil,
108-
vsn: String = Defaults.vsn
109-
) {
110-
self.init(endPoint, headers: headers, params: params, vsn: vsn, logger: nil)
111-
}
112-
113-
@available(
114-
*,
115-
deprecated,
116-
message: "Replace usages of this initializer with new init(_:headers:paramsClosure:vsn:logger)"
117-
)
118-
@available(macOS 10.15, iOS 13, watchOS 6, tvOS 13, *)
119-
public convenience init(
120-
_ endPoint: String,
121-
headers: [String: String] = [:],
122-
paramsClosure: PayloadClosure?,
123-
vsn: String = Defaults.vsn
124-
) {
125-
self.init(
126-
endPoint,
127-
headers: headers, paramsClosure: paramsClosure,
128-
vsn: vsn,
129-
logger: nil
130-
)
131-
}
132-
133-
@available(
134-
*,
135-
deprecated,
136-
message: "Replace usages of this initializer with new init(endPoint:headers:transport:paramsClosure:vsn:logger)"
137-
)
138-
public convenience init(
139-
endPoint: String,
140-
headers: [String: String] = [:],
141-
transport: @escaping ((URL) -> PhoenixTransport),
142-
paramsClosure: PayloadClosure? = nil,
143-
vsn: String = Defaults.vsn
144-
) {
145-
self.init(
146-
endPoint: endPoint,
147-
headers: headers,
148-
transport: transport,
149-
paramsClosure: paramsClosure,
150-
vsn: vsn,
151-
logger: nil
152-
)
153-
}
154-
}

Sources/Realtime/RealtimeClient.swift

Lines changed: 8 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,7 @@ public class RealtimeClient: PhoenixTransportDelegate {
122122
public var rejoinAfter: (Int) -> TimeInterval = Defaults.rejoinSteppedBackOff
123123

124124
/// The optional function to receive logs
125-
public let logger: SupabaseLogger?
125+
public var logger: ((String) -> Void)?
126126

127127
/// Disables heartbeats from being sent. Default is false.
128128
public var skipHeartbeat: Bool = false
@@ -191,16 +191,14 @@ public class RealtimeClient: PhoenixTransportDelegate {
191191
_ endPoint: String,
192192
headers: [String: String] = [:],
193193
params: Payload? = nil,
194-
vsn: String = Defaults.vsn,
195-
logger: SupabaseLogger? = nil
194+
vsn: String = Defaults.vsn
196195
) {
197196
self.init(
198197
endPoint: endPoint,
199198
headers: headers,
200199
transport: { url in URLSessionTransport(url: url) },
201200
paramsClosure: { params },
202-
vsn: vsn,
203-
logger: logger
201+
vsn: vsn
204202
)
205203
}
206204

@@ -209,16 +207,14 @@ public class RealtimeClient: PhoenixTransportDelegate {
209207
_ endPoint: String,
210208
headers: [String: String] = [:],
211209
paramsClosure: PayloadClosure?,
212-
vsn: String = Defaults.vsn,
213-
logger: SupabaseLogger? = nil
210+
vsn: String = Defaults.vsn
214211
) {
215212
self.init(
216213
endPoint: endPoint,
217214
headers: headers,
218215
transport: { url in URLSessionTransport(url: url) },
219216
paramsClosure: paramsClosure,
220-
vsn: vsn,
221-
logger: logger
217+
vsn: vsn
222218
)
223219
}
224220

@@ -227,21 +223,19 @@ public class RealtimeClient: PhoenixTransportDelegate {
227223
headers: [String: String] = [:],
228224
transport: @escaping ((URL) -> PhoenixTransport),
229225
paramsClosure: PayloadClosure? = nil,
230-
vsn: String = Defaults.vsn,
231-
logger: SupabaseLogger? = nil
226+
vsn: String = Defaults.vsn
232227
) {
233228
self.transport = transport
234229
self.paramsClosure = paramsClosure
235230
self.endPoint = endPoint
236231
self.vsn = vsn
237-
self.logger = logger
238232

239233
var headers = headers
240234
if headers["X-Client-Info"] == nil {
241235
headers["X-Client-Info"] = "realtime-swift/\(version)"
242236
}
243237
self.headers = headers
244-
http = HTTPClient(logger: logger, fetchHandler: { try await URLSession.shared.data(for: $0) })
238+
http = HTTPClient(logger: nil, fetchHandler: { try await URLSession.shared.data(for: $0) })
245239

246240
let params = paramsClosure?()
247241
if let jwt = (params?["Authorization"] as? String)?.split(separator: " ").last {
@@ -767,7 +761,7 @@ public class RealtimeClient: PhoenixTransportDelegate {
767761
/// - parameter items: List of items to be logged. Behaves just like debugPrint()
768762
func logItems(_ items: Any...) {
769763
let msg = items.map { String(describing: $0) }.joined(separator: ", ")
770-
logger?.debug("SwiftPhoenixClient: \(msg)")
764+
logger?("SwiftPhoenixClient: \(msg)")
771765
}
772766

773767
// ----------------------------------------------------------------------

Sources/Supabase/SupabaseClient.swift

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,7 @@ public final class SupabaseClient: @unchecked Sendable {
114114
realtime = RealtimeClient(
115115
supabaseURL.appendingPathComponent("/realtime/v1").absoluteString,
116116
headers: defaultHeaders,
117-
params: defaultHeaders,
118-
logger: options.global.logger
117+
params: defaultHeaders
119118
)
120119

121120
realtimeV2 = RealtimeClientV2(

0 commit comments

Comments
 (0)