diff --git a/CHANGELOG.md b/CHANGELOG.md index 6c606391..463b4b17 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,34 @@ All notable changes to this project will be documented in this file. +## 0.8.0 - 2024-09-20 + +### Features + +- Apply const keyword to many methods ([#167](https://github.com/matrix-org/vodozemac/pull/167)). + +- [**BREAKING**] The `Account::sign()` method now accepts an `impl AsRef<[u8]>` +for the message instead of a `&str`. This has been streamlined to be like +most of our other methods accepting a message to be encrypted. This +change is mostly backwards compatible as the method will continue to +accept a string. + +The `OlmMessage::from_parts()` and `OlmMessage::to_parts()` methods now +accept and return an `&[u8]` and `Vec` exclusively for the +ciphertext. The `base64_encode()` and `base64_decode()` methods can be +used to achieve the previous behavior ([#176](https://github.com/matrix-org/vodozemac/pull/176)). + +- Add support for the libolm PkEncryption feature. This allows +Matrix clients to implement the [m.megolm_backup.v1.curve25519-aes-sha2](https://spec.matrix.org/v1.11/client-server-api/#backup-algorithm-mmegolm_backupv1curve25519-aes-sha2) +room key backup algorithm. Please note that this algorithm contains a +critical flaw and should only be used for compatibility reasons ([171](https://github.com/matrix-org/vodozemac/pull/171)) ([#180](https://github.com/matrix-org/vodozemac/pull/180)). + +### Refactor + +- Remove the pkcs7 crate from the list of dependencies ([#164](https://github.com/matrix-org/vodozemac/pull/164)). + +- Remove Debug implementations for the libolm compat structs ([#184](https://github.com/matrix-org/vodozemac/pull/184)). + ## 0.7.0 - 2024-07-17 ### Features diff --git a/Cargo.toml b/Cargo.toml index 3fdae073..941e4b4e 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,7 +6,7 @@ authors = [ name = "vodozemac" description = "A Rust implementation of Olm and Megolm" repository = "https://github.com/matrix-org/vodozemac" -version = "0.7.0" +version = "0.8.0" edition = "2021" keywords = ["matrix", "chat", "messaging", "olm", "cryptography"] license = "Apache-2.0" @@ -46,7 +46,7 @@ low-level-api = [] [dependencies] aes = "0.8.4" -arrayvec = { version = "0.7.4", features = ["serde"] } +arrayvec = { version = "0.7.6", features = ["serde"] } base64 = "0.22.1" base64ct = { version = "1.6.0", features = ["std", "alloc"] } cbc = { version = "0.1.2", features = ["std"] } @@ -56,20 +56,20 @@ ed25519-dalek = { version = "2.1.1", default-features = false, features = ["rand getrandom = "0.2.15" hkdf = "0.12.4" hmac = "0.12.1" -matrix-pickle = { version = "0.2.0" } -prost = "0.13.1" +matrix-pickle = { version = "0.2.1" } +prost = "0.13.2" rand = "0.8.5" -serde = { version = "1.0.204", features = ["derive"] } +serde = { version = "1.0.210", features = ["derive"] } serde_bytes = "0.11.15" -serde_json = "1.0.120" +serde_json = "1.0.128" sha2 = "0.10.8" -subtle = "2.6.0" -thiserror = "1.0.62" +subtle = "2.6.1" +thiserror = "1.0.63" x25519-dalek = { version = "2.0.1", features = ["serde", "reusable_secrets", "static_secrets", "zeroize"] } zeroize = "1.8.1" [dev-dependencies] -anyhow = "1.0.86" +anyhow = "1.0.89" assert_matches = "1.5.0" assert_matches2 = "0.1.2" olm-rs = "2.2.0"