Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: update changelog for 3.1.0 #917

Merged
merged 1 commit into from
Feb 12, 2025
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 30 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -219,6 +219,33 @@ it references.
- crypto-ffi: use the module level function buildMetadata [WPB-14827] (2a35392)
- parallel transactions are performed serially (20d47c1)

## v3.1.0 - 2025-02-12

### Highlights

- Add a test case mimicking a real life bug ([WPB-15810]), demonstrating that in some cases it was possible to generate errors by swapping the ordering of two messages.
- Add a new layer of buffering to handle that situation.

> [!NOTE]
> Decrypting a message can now potentially return a `MlsError::Other` variant with the message
>
>> Incoming message is a commit for which we have not yet received all the proposals.
>> Buffering until all proposals have arrived.
>
> Clients do not need to take any action in response to this message.
> This error simply indicates that the commit has been buffered, and will be automatically unbuffered when possible.

If the required proposal is never delivered, however, the client will eventually desync as the commit will never be processed. Clients should be on the lookout for this case and trigger their rejoin protocol in that event.

### Features

- implement commit buffering (e98f0a6)
- support entity derive for tables with hex ids (235730c)
- implement basic derive macro for entity trait [WPB-14952] (7add536)

### Testing

- add test case for the first part of 15810 (3b41175)

## v3.0.2 - 2025-01-31

Expand Down Expand Up @@ -271,16 +298,16 @@ it references.

- Dropped support for `i686-linux-android` target.
- `CoreCryptoLogger` takes an additional `context` parameter.
- `CoreCryptoError` and its child errors have been refactored to reduce the amount of error we expose and provide explicit
errors for Proteus errors. The errors we have removed will appear under the `Other` case.
- `CoreCryptoError` and its child errors have been refactored to reduce the amount of error we expose and provide explicit
errors for Proteus errors. The errors we have removed will appear under the `Other` case.
```
enum ProteusError {
SessionNotFound,
DuplicateMessage,
RemoteIdentityChanged,
Other(Int),
}

pub enum MlsError {
ConversationAlreadyExists,
DuplicateMessage,
Expand Down
Loading