Commit 0db0a49
committed
Use a single channel for all features
Resolves #242.
The API changes are based on the JS API changes from branch
integration/single-channel-integration at 0924cd5. The behavioural
changes are based on [1] at 27ddbb3.
This commit is quite large, and combines API and behavioural changes,
because the new specification points are written with reference to the
new API and so it was hard to disentangle the two.
Key changes to public API:
- Updated room options API:
- there's no concept of a feature being turned "on" any more, and
correspondingly no error when you try and use a feature that's not
turned on
- removed `allFeaturesEnabled`, since the equivalent has been removed
from JS
- you can now fetch a room without passing a room options; this uses
the default options
- Removed feature-specific error codes
- Discontinuities now always have an error
- Extended the set of RoomStatus that can have an error (this does not
have an equivalent in the JS API; it's a result of the room lifecycle
manager statuses that mean we're now more driven by the errors emitted
by ably-cocoa; we still need to revisit this in #12)
Key changes to interactions with Realtime:
- Switched to v3 of the REST API
- Use a single channel for all room features; this simplifies the room
lifecycle manager and the DefaultRoom class
- Room reactions now use ephemeral messages
- Resolves #133 (setting of presence-related channel modes).
Internal changes:
- Removed FeatureChannel and RoomLifecycleContributor
- Switch to using callbacks for ably-cocoa state changes (i.e. end the
experiment of using AsyncSequence in the ably-cocoa wrapper) and
enforce that ably-cocoa deliver its state changes on the main thread;
together with fc83fc1 this allows us to no longer have to work around
the fact that the spec's method for detecting a discontinuity assumes a
single-threaded environment, hence resolving #239.
[1] ably/specification#2821 parent d6b2a71 commit 0db0a49
File tree
44 files changed
+1284
-3528
lines changed- Example/AblyChatExample
- Mocks
- Sources/AblyChat
- AblyCocoaExtensions
- Tests/AblyChatTests
- Mocks
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
44 files changed
+1284
-3528
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
72 | | - | |
73 | | - | |
74 | | - | |
75 | | - | |
| 72 | + | |
76 | 73 | | |
77 | 74 | | |
78 | 75 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
52 | 52 | | |
53 | 53 | | |
54 | 54 | | |
| 55 | + | |
| 56 | + | |
55 | 57 | | |
56 | 58 | | |
57 | 59 | | |
| |||
83 | 85 | | |
84 | 86 | | |
85 | 87 | | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
86 | 92 | | |
87 | 93 | | |
88 | 94 | | |
89 | 95 | | |
90 | 96 | | |
91 | | - | |
92 | 97 | | |
93 | 98 | | |
94 | 99 | | |
95 | 100 | | |
96 | 101 | | |
97 | 102 | | |
98 | | - | |
99 | 103 | | |
100 | 104 | | |
101 | 105 | | |
| |||
179 | 183 | | |
180 | 184 | | |
181 | 185 | | |
182 | | - | |
183 | | - | |
184 | | - | |
185 | | - | |
186 | 186 | | |
187 | 187 | | |
188 | 188 | | |
189 | 189 | | |
190 | 190 | | |
191 | | - | |
192 | 191 | | |
193 | 192 | | |
194 | 193 | | |
195 | 194 | | |
196 | 195 | | |
197 | 196 | | |
198 | | - | |
199 | 197 | | |
200 | 198 | | |
201 | 199 | | |
| |||
226 | 224 | | |
227 | 225 | | |
228 | 226 | | |
229 | | - | |
230 | | - | |
231 | | - | |
232 | | - | |
233 | 227 | | |
234 | 228 | | |
235 | 229 | | |
236 | 230 | | |
237 | 231 | | |
238 | | - | |
239 | 232 | | |
240 | 233 | | |
241 | 234 | | |
242 | 235 | | |
243 | 236 | | |
244 | 237 | | |
245 | | - | |
246 | 238 | | |
247 | 239 | | |
248 | 240 | | |
| |||
272 | 264 | | |
273 | 265 | | |
274 | 266 | | |
275 | | - | |
276 | | - | |
277 | | - | |
278 | | - | |
279 | 267 | | |
280 | 268 | | |
281 | 269 | | |
| |||
392 | 380 | | |
393 | 381 | | |
394 | 382 | | |
395 | | - | |
396 | | - | |
397 | | - | |
398 | | - | |
399 | 383 | | |
400 | 384 | | |
401 | 385 | | |
402 | 386 | | |
403 | 387 | | |
404 | | - | |
405 | 388 | | |
406 | 389 | | |
407 | 390 | | |
408 | 391 | | |
409 | 392 | | |
410 | 393 | | |
411 | | - | |
412 | 394 | | |
413 | 395 | | |
414 | 396 | | |
| |||
425 | 407 | | |
426 | 408 | | |
427 | 409 | | |
428 | | - | |
429 | | - | |
430 | | - | |
431 | | - | |
432 | 410 | | |
433 | 411 | | |
434 | 412 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | 54 | | |
59 | 55 | | |
60 | 56 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
109 | 109 | | |
110 | 110 | | |
111 | 111 | | |
112 | | - | |
| 112 | + | |
113 | 113 | | |
114 | | - | |
| 114 | + | |
115 | 115 | | |
116 | 116 | | |
117 | 117 | | |
| |||
Lines changed: 33 additions & 20 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
8 | 8 | | |
9 | 9 | | |
10 | 10 | | |
11 | | - | |
12 | | - | |
13 | | - | |
14 | 11 | | |
15 | 12 | | |
16 | 13 | | |
| |||
67 | 64 | | |
68 | 65 | | |
69 | 66 | | |
70 | | - | |
71 | | - | |
72 | | - | |
73 | 67 | | |
74 | 68 | | |
75 | 69 | | |
| |||
96 | 90 | | |
97 | 91 | | |
98 | 92 | | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
99 | 121 | | |
100 | 122 | | |
101 | 123 | | |
| |||
225 | 247 | | |
226 | 248 | | |
227 | 249 | | |
228 | | - | |
| 250 | + | |
229 | 251 | | |
230 | 252 | | |
231 | 253 | | |
232 | | - | |
| 254 | + | |
233 | 255 | | |
234 | 256 | | |
235 | 257 | | |
| |||
247 | 269 | | |
248 | 270 | | |
249 | 271 | | |
250 | | - | |
251 | | - | |
252 | | - | |
253 | | - | |
254 | | - | |
255 | | - | |
256 | | - | |
257 | | - | |
258 | | - | |
259 | 272 | | |
260 | 273 | | |
261 | 274 | | |
| |||
350 | 363 | | |
351 | 364 | | |
352 | 365 | | |
353 | | - | |
| 366 | + | |
354 | 367 | | |
355 | 368 | | |
356 | 369 | | |
357 | | - | |
| 370 | + | |
358 | 371 | | |
359 | 372 | | |
360 | 373 | | |
| |||
394 | 407 | | |
395 | 408 | | |
396 | 409 | | |
397 | | - | |
| 410 | + | |
398 | 411 | | |
399 | 412 | | |
400 | 413 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
3 | 3 | | |
4 | 4 | | |
5 | 5 | | |
6 | | - | |
7 | | - | |
| 6 | + | |
8 | 7 | | |
9 | 8 | | |
10 | 9 | | |
11 | 10 | | |
12 | 11 | | |
13 | 12 | | |
14 | 13 | | |
15 | | - | |
| 14 | + | |
16 | 15 | | |
17 | 16 | | |
18 | 17 | | |
| |||
46 | 45 | | |
47 | 46 | | |
48 | 47 | | |
49 | | - | |
| 48 | + | |
50 | 49 | | |
51 | 50 | | |
52 | 51 | | |
| |||
85 | 84 | | |
86 | 85 | | |
87 | 86 | | |
88 | | - | |
| 87 | + | |
89 | 88 | | |
90 | 89 | | |
91 | 90 | | |
| |||
133 | 132 | | |
134 | 133 | | |
135 | 134 | | |
136 | | - | |
| 135 | + | |
137 | 136 | | |
138 | 137 | | |
139 | 138 | | |
| |||
171 | 170 | | |
172 | 171 | | |
173 | 172 | | |
174 | | - | |
| 173 | + | |
175 | 174 | | |
176 | 175 | | |
177 | 176 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
69 | 69 | | |
70 | 70 | | |
71 | 71 | | |
72 | | - | |
| 72 | + | |
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
| |||
0 commit comments