Skip to content

0.2.0

Compare
Choose a tag to compare
@decathorpe decathorpe released this 09 Feb 10:38
· 136 commits to main since this release
2db5f31

This version contains some fixes that required changes in public APIs (listed below), so this
is a semver-incompatible release.

Added:

  • convenience methods for checking the type of DxrError and extracting the inner error value
  • more client-server roundtrip tests (for ~80% test coverage across all three crates)
  • support for implementing / requesting graceful server shutdown
  • snapshot tests for some Debug implementations
  • feature hints for the generated documentation on docs.rs

Changed:

  • moved method handler synchronization from the server to the method handlers themselves to
    improve concurrency, throughput and latency, especially for methods that do not modify internal
    or global state
  • changed MethodResponse to match the XML-RPC spec (<params> can be missing)
  • changed method signatures on client and server implementations to adapt to optional return values
  • renamed DxrError::ReturnMismatch to DxrError::ParameterMismatch to better reflect what it
    actually means (unexpected number of parameters, whether they are method call arguments or
    return values)