# Changelog
All notable changes to this project will be documented in this file.

The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

## [2.6.5] - 2024-04-03
- Improved exception reporting for serialization errors
- Added type annotations
- Removed private key serialization safeguards to fix compatibility with latest Cryptography library

## [2.6.4] - 2023-06-08
- Added Improved exception reporting
- Switched to async/await syntax from twisted deferreds
- Dropped support for Python 2

## [2.6.3] - 2023-01-17
### Fixed
- The 'call' method now always returns a Deferred, fixing compatibility with callers that use 'await' syntax. Fixed in v1 and v2. (D107159)

## [2.6.2] - 2021-11-17
### Changed
- Added new, optional argument to CallError. Affects v1 and v2. (T139259)

## [2.6.1] - 2021-03-18
### Changed
- Move DRPC defer function to shared/defer.py. Affects v1 and v2. (T116469)

## [2.6.0] - 2020-04-07
### Added
- Python 2 support back in

## [2.5.0] - 2019-3-2020
### Added
- Python 3 support
- Increased logging in the send_msg call for better debugging of timing related issues

### Removed
- Python 2 support


## [2.4.3] - 2019-10-22
### Added
- A new folder shared/ to contain any code to be used by all versions (T79504)

### Changed
- The exceptions thrown and handled by DRPC are now the same across all versions. Affects v1 and v2. (T79504)


## [2.4.2] - 2019-10-11
### Added
- A log_debug hook on the BaseFactory for messages. Affects v1 and v2. (T59219)

### Changed
- drpc_timing messages are now logged at the debug level. Affects v1 and v2. (T59219)
