Skip to content

Commit 1b7d440

Browse files
committed
docs: update CHANGELOG.md
1 parent ca7bf10 commit 1b7d440

1 file changed

Lines changed: 64 additions & 0 deletions

File tree

CHANGELOG.md

Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,69 @@
11
# Change Log
22

3+
## [1.6.0](https://github.com/ably/ably-java/tree/v1.6.0)
4+
5+
[Full Changelog](https://github.com/ably/ably-java/compare/v1.5.0...v1.6.0)
6+
7+
### What's Changed
8+
9+
* Message Updates and Deletes updated, Appends API added in https://github.com/ably/ably-java/pull/1182
10+
* Mutable Message API over Realtime added in https://github.com/ably/ably-java/pull/1183
11+
* Updated publish API to include message serials in the response in https://github.com/ably/ably-java/pull/1184
12+
13+
### Breaking changes
14+
15+
This release includes several breaking changes to experimental Mutable Message features:
16+
17+
#### REST API Changes
18+
19+
* `updateMessage()` and `deleteMessage()` now return `UpdateDeleteResult` instead of `void`, containing the updated message version serial
20+
* `updateMessageAsync()` and `deleteMessageAsync()` callback parameter changed from `CompletionListener` to `Callback<UpdateDeleteResult>`
21+
* Added `appendMessage()` and `appendMessageAsync()` methods returning `UpdateDeleteResult`
22+
23+
#### Realtime API Changes
24+
25+
* `updateMessage()`, `deleteMessage()`, and `appendMessage()` are now asynchronous methods (void return) instead of synchronous (returning `UpdateDeleteResult`)
26+
* All message mutation methods now accept an optional `Callback<UpdateDeleteResult>` parameter for async result handling
27+
* Removed `*Async` suffix from method names - all Realtime methods are now async by default and throw `AblyException`
28+
* `updateMessage()`, `deleteMessage()`, and `appendMessage()` are now use WebSocket transport to send data rather than REST requests
29+
30+
#### Migration Guide
31+
32+
**REST API:**
33+
```java
34+
// Before (v1.5.0)
35+
channel.updateMessage(message);
36+
channel.updateMessageAsync(message, new CompletionListener() { ... });
37+
38+
// After (v1.6.0)
39+
UpdateDeleteResult result = channel.updateMessage(message);
40+
channel.updateMessageAsync(message, new Callback<UpdateDeleteResult>() {
41+
public void onSuccess(UpdateDeleteResult result) { ... }
42+
public void onError(ErrorInfo error) { ... }
43+
});
44+
```
45+
46+
**Realtime API:**
47+
```java
48+
// Before (v1.5.0)
49+
UpdateDeleteResult result = channel.updateMessage(message); // synchronous
50+
channel.updateMessageAsync(message, new CompletionListener() { ... });
51+
52+
// After (v1.6.0)
53+
channel.updateMessage(message); // asynchronous, fire-and-forget
54+
channel.updateMessage(message, new Callback<UpdateDeleteResult>() {
55+
public void onSuccess(UpdateDeleteResult result) { ... }
56+
public void onError(ErrorInfo error) { ... }
57+
});
58+
```
59+
60+
#### Protocol Changes
61+
62+
* Protocol version bumped from v4 to v5 to support message appends and enhanced result handling
63+
* ACK responses now include message serials and version information via `PublishResult`
64+
65+
66+
367
## [1.5.0](https://github.com/ably/ably-java/tree/v1.5.0)
468

569
[Full Changelog](https://github.com/ably/ably-java/compare/v1.4.2...v1.5.0)

0 commit comments

Comments
 (0)