v4.1.0
Highlighted Features
This release updates documentation for custom roles and sync hello, lays groundwork for upcoming features, fixes a few bugs, and pays down some tech debt.
add_peer()'ssync_now()operation is now scheduled asynchronously, preventing new sync peer additions from blocking or timing out.- The repo can now be used as a
cmakedependency because aCMakeLists.txthas been added to the root of the repo. - AFC (Aranya Fast Channels) performance enhancement by supporting concurrent shared-memory readers without a mutex.
- Syncer performance and stability improvements.
- Groundwork for
ctesttest suite for the C API.
Coming Soon
Specifications for new features are in progress.
- Custom roles rank-based hierarchy checks. Authority to perform an operation on an object will require the operator to have permission to perform that operation and have a higher rank than the object it is operating on.
- Migration from PSKs to mTLS certs for authenticating QUIC connections in the syncer. This will allow users to leverage their existing PKI infrastructure to secure sync traffic.
Security Patches
- Changing role management permissions now requires an explicit permission.
- Replaced panic with error in QUIC syncer implementation.
Breaking Changes
No breaking changes were introduced in this release.
What's Changed
- release: 4.1.0 by @gknopf-aranya in #679
- release patch: don't publish examples to crates.io by @gknopf-aranya in #623
- custom roles: gate changing of role management perms with perm by @gknopf-aranya in #644
- capi: cbindgen preview feature by @jdygert-spok in #639
- daemon: schedule
add_peer'ssync_nowby @jdygert-spok in #637 - Add client and daemon CMake targets by @jdygert-spok in #510
- Update policy links to point to the policy book by @chip-so in #642
- Fix AranyaExtError C API docs by @ssweetney-spok in #653
- ci: fix cargo deny errors/warnings by @gknopf-aranya in #662
- chore: add clang-format to Makefile.toml by @jdygert-spok in #664
- policy: use enums for perms everywhere by @gknopf-aranya in #656
- chore: update to latest aranya-core by @jdygert-spok in #667
- chore: update clang format by @jdygert-spok in #666
- capi: use cbindgen without expansion and in build script by @jdygert-spok in #587
- fix: replace panic with error handling for empty hello response by @gknopf-aranya in #671
- chore: update tooling and deps by @jdygert-spok in #675
- Use CTest for C API tests by @jdygert-spok in #513
Full Changelog: v4.0.0...v4.1.0