# Changelog for version 0.3.0

* all pickling operations now use the new `PicklingMode` enum instead of a raw key, to distinguish between encrypted and unencrypted pickling more easily
* `OlmSession` now implements the `Ord` trait
* use `getrandom` instead of `ring` as a dependency for CSPRNG functionality
  - reduce compile time
  - slightly reduce generated machine code size
* `OlmAccount::parsed_identity_keys` is a new function that returns the ready for use `IdentityKeys` struct
* `olm_error` is no longer part of the public API surface

## Internal changes

* unit tests were split into multiple modules for easier maintenance
* reflect the actual project license (GPLv3+) in the projects manifest file (previously GPLv3)
* add module for crate fuzzing

### Contributors

My warmest thanks go out to Eli Flanagan for adding the subcrate for fuzzing. This was planned for a long time, however was of low priority as this crate was still considered experimental. This is of huge importance for getting this library towards v1.0.

---

Johannes Hayeß
