Skip to content

5.0.0-rc0

Pre-release
Pre-release
Compare
Choose a tag to compare
@github-actions github-actions released this 04 Jul 15:46
· 170 commits to main since this release
ee6ce48

Added

  • More public namespaces have been moved under ::ccf
  • ::ds is now ccf::ds
  • ::siphash is now ccf::siphash
  • ::threading is now ccf::threading, and ccf/ds/thread_ids.h has moved to ccf/threading/thread_ids.h
  • ::consensus is now ccf::consensus
  • ::tls is now ccf::tls
  • ::http is now ccf::http
  • ::nonstd is now ccf::nonstd
  • ::crypto is now ccf::crypto
  • ::kv is now ccf::kv
  • ::logger is now ccf::logger
  • ::ccfapp is now ::ccf
  • The programmability sample app now demonstrates how applications can define their own extensions, creating bindings between C++ and JS state, and allowing JS endpoints to call functions implemented in C++.
  • Introduce DynamicJSEndpointRegistry::record_action_for_audit_v1 and DynamicJSEndpointRegistry::check_action_not_replayed_v1 to allow an application making use of the programmability feature to easily implement auditability, and protect users allowed to update the application against replay attacks (#6285).
  • Endpoints now support a ToBackup redirection strategy, for requests which should never be executed on a primary. These must also be read-only. These are configured similar to ToPrimary endpoints, with a to_backup object (specifying by-role or statically-addressed targets) in each node's configuration.
  • Introduced ccf::historical::read_only_adapter_v4 and ccf::historical::read_write_adapter_v4. Users are now capable of passing a custom error handler to the adapter to customise RPC responses for internal historical queries errors, which are listed in ccf::historical::HistoricalQueryErrorCode enum.

Changed

  • Updated Open Enclave to 0.19.7.
  • Containers are now published to the GitHub Container Registry. The platform has moved from the tag to the image name, to enable meaningful usage of GitHub attestation, and the tag now matches the git tag used to cut the release. For example, the SGX Development container for this release is ghcr.io/microsoft/ccf/app/dev/sgx:ccf-5.0.0-rc0.

Deprecated

  • ccf::historical::adapter_v3 becomes deprecated in favour of _v4 version.

Removed

  • Removed the existing metrics endpoint and API (GET /api/metrics, get_metrics_v1). Stats for request execution can instead be gathered by overriding the EndpointRegistry::handle_event_request_completed() method.
  • Removed automatic msgpack support from JSON endpoint adapters, and related include/ccf/serdes.h file.