Releases: eclipse-zenoh/zenoh
Releases · eclipse-zenoh/zenoh
1.0.0-beta.2
What's Changed
New features 🎉
- Allow transport defragmentation errors and fix dropping of old transport messages by @oteffahi in #1344
- Encapsulate ZBufSliceIterator in ZBytesSliceIterator by @Mallets in #1361
- Yeet 73 unused dependencies by @fuzzypixelz in #1359
- Apply lints from Clippy 1.81.0 by @fuzzypixelz in #1365
- made builder traits internal by @milyin in #1376
- feat(zenoh_id): exposing into
[u8; 16]
&to_le_bytes()
by @DariusIMP in #1373 - Improve error handling and logs in examples by @OlivierHecart in #1388
- feat: add reliability getter to publisher by @wyfo in #1393
- Enable
shared-memory
feature on docs.rs by @fuzzypixelz in #1389 - res() -> wait() by @yellowhatter in #1397
- feat!: make session an arc-like object by @Mallets in #1364
- refactor: remove state from entities by @wyfo in #1407
- fix: getting reference instead of value in PluginsManager::declare_static_plugin by @gabrik in #1415
Bug fixes 🐞
- Fix erroneous parsing of
backend_search_dirs
by @fuzzypixelz in #1349 - Fix storage error when keyexpr equals the configured
strip_prefix
by @oteffahi in #1351 - Fix bug with QueryTarget ALL_COMPLETE in clients and peers by @OlivierHecart in #1358
- fix: publisher should not be clonable by @wyfo in #1370
- Fix bugs querying liveliness tokens by @OlivierHecart in #1374
- Fix orchestrator not dying after being killed by @fuzzypixelz in #1391
- fix(storage-manager): race condition on
latest_updates
structure by @J-Loudet in #1399 - Don't auto-connect to configured connect endpoints by @fuzzypixelz in #1396
- Bug/liveliness duplicate by @OlivierHecart in #1404
- fix: remove
Session::put
onehost publisher by @wyfo in #1412 - Bugfix (rest-plugins): Correct the return type of if-condition to ensure zenohd get the error. by @evshary in #1416
Other changes
- Fix typos in
JOIN
message specification by @fuzzypixelz in #1346 - Publisher reliability by @OlivierHecart in #1305
- chore(deps): bump quinn-proto from 0.11.3 to 0.11.8 by @dependabot in #1352
- Add ZBytes::slices by @Mallets in #1354
- expose ZBytesSliceIterator to public api by @DenisBiryukov91 in #1362
- Add LivelinessSubscriber history option by @OlivierHecart in #1355
- Close #1357 by @Mallets in #1381
- reexporting methods from QoSBuilderTrait added by @milyin in #1385
- feat(storage-manager): enforce History::Latest based on Timestamp by @J-Loudet in #1367
- Remove subscriber reliability option by @Mallets in #1353
Hello
should be clonable to make it compatible with zenoh-c API by @milyin in #1401- Support
--cfg
flag in examples by @fuzzypixelz in #1394 - feat!: make callback an opaque type by @wyfo in #1405
- fix: update release workflow to depend on cargo by @diogomatsubara in #1410
Full Changelog: 1.0.0-beta.1...1.0.0-beta.2
1.0.0-beta.1
What's Changed
New features 🎉
- fix: Improve debug messages in
zenoh-transport
by @fuzzypixelz in #1090 - Add typos check to CI by @kilpkonn in #1065
- Remove redundant
WhatAmI
tests inHatBaseTrait::init
by @fuzzypixelz in #1299 - merge Dev/1.0.0 into main by @milyin in #1331
- Scouting accepts IPv6 addresses by @Mallets in #1345
Bug fixes 🐞
- Fix interface name scanning when listening on IP unspecified for TCP/TLS/QUIC/WS by @Mallets in #1123
- Fix REST plugin deadlock when too many local replies by @OlivierHecart in #1213
- Fix Clippy errors from Rust 1.80 by @fuzzypixelz in #1273
Other changes
- Add the limitation note about message size for LowLatency transport by @evshary in #1088
- Improve pipeline backoff by @Mallets in #1097
- Start link tx_task before notifying router by @Mallets in #1098
- Fix typos by @Mallets in #1110
- bump quinn & rustls by @JLerxky in #1086
- Enable releasing from any branch by @fuzzypixelz in #1136
- Fix cargo clippy by @Mallets in #1145
- Release tables locks before propagating subscribers and queryables declarations to void dead locks by @OlivierHecart in #1150
- feat: make
TerminatableTask
terminate itself when dropped by @YuanYuYuan in #1151 - Fix bug in keyexpr::includes leading to call get_unchecked on empty array UB by @OlivierHecart in #1208
- fix: typo in selector.rs by @diogomatsubara in #1228
- fix: zenohd --cfg by @YuanYuYuan in #1263
- Fix failover brokering bug reacting to linkstate changes by @OlivierHecart in #1272
- Update Cargo.toml by @kydos in #1277
- fix: typos by @brian049 in #1297
- refactor: polish the z_bytes (de)serialize impl macro by @YuanYuYuan in #1300
- Add append method to ZByteWriter by @Mallets in #1301
- Replace trees computation tasks with a worker by @OlivierHecart in #1303
- zenohd-default config error #1292 by @anhaabaete in #1298
- Avoid warning when failing to connect to an already connected peer by @OlivierHecart in #1309
- make SHM enabled by default in Config by @yellowhatter in #1312
- Bump dev version to
1.0.0-dev
by @zettascale-bot in #1311 - Hide
UndeclarableInner::undeclare_inner
by @fuzzypixelz in #1294 - refactor: remove the unnecessary
Option
in the z_liveliness example for clarity by @YuanYuYuan in #1316 - refactor: demostrate how to use a background subscriber in the example by @YuanYuYuan in #1315
- make reliability feature unstable by @milyin in #1317
- Fix liveliness bug by @OlivierHecart in #1321
- Merge main into dev/1.0.0 by @milyin in #1326
- Upgrade stabby dependency by @hakanlundvall in #1328
- Revert "Merge main into dev/1.0.0" by @milyin in #1332
- Merge main into dev/1.0.0 by @milyin in #1333
- Fix liveliness bug by @OlivierHecart in #1327
- Fix wire_expr mapping by @OlivierHecart in #1330
- chore(deps): bump openssl from 0.10.64 to 0.10.66 by @dependabot in #1253
- Improve pipeline jitter by @Mallets in #1335
- fix: add check-labels workflow to CI jobs by @diogomatsubara in #1025
- fix: only run the check labels workflow on PRs by @diogomatsubara in #1336
- refactor(storage-manager): move prefix related functions in crate by @J-Loudet in #1325
- Upgrade dependencies to latest version by @Mallets in #1338
- fix: pass correct credentials to check-labels workflow by @diogomatsubara in #1340
- fix: update check-labels triggers by @diogomatsubara in #1341
- Fix typo by @Mallets in #1342
New Contributors
- @kilpkonn made their first contribution in #1065
- @brian049 made their first contribution in #1297
- @anhaabaete made their first contribution in #1298
- @zettascale-bot made their first contribution in #1311
Full Changelog: 1.0.0-alpha.6...1.0.0-beta.1
1.0.0-alpha.6
What's Changed
New features 🎉
- Fix #1185. Add encoding option to publisher creation by @Mallets in #1194
- Fix typos ("nof" -> "not") by @fuzzypixelz in #1227
- Make
rustls
,rustls-webpki
andwebpki-roots
optional by @fuzzypixelz in #1238 - Configure
scouting/*/autoconnect/*
with a sequence by @fuzzypixelz in #1224 - Update ACL config format to support AND/OR logic between subjects by @oteffahi in #1200
- Optimize RoutingContext keyexpr for Query and Response messages by @oteffahi in #1266
- Rename
KeyExpr::from_boxed_string_unchecked
toKeyExpr::from_boxed_str_unchecked
by @fuzzypixelz in #1288 - Rework
plugins_loading/search_dirs
config option by @fuzzypixelz in #1278 - Rename
close
toundeclare
inzenoh-ext
by @fuzzypixelz in #1286
Bug fixes 🐞
- fix: adminspace encodings by @gabrik in #1182
- fix: replace some unsafe code with safe version by @wyfo in #1184
- fix: fix keyexpr canonization unsafe behavior by @wyfo in #1191
- Fix Clippy errors from Rust 1.80 by @fuzzypixelz in #1270
- Don't load plugins/volumes when
plugins_loading/enabled:false
by @fuzzypixelz in #1269 - Don't duplicate token undeclarations in routers by @fuzzypixelz in #1275
- fix: invalid mime crash on REST plugin by @gabrik in #1287
- Fix failing Liveliness Subscriber Undeclaration by @fuzzypixelz in #1283
- Fix routing bugs by @OlivierHecart in #1296
Other changes
- Value fields public by @Charles-Schleich in #1178
- Draft: Add
new_timestamp
to Session by @Charles-Schleich in #1175 - Improve bytes by @Mallets in #1174
- fix: fix zenoh-shm test requiring "test" feature to compile by @wyfo in #1183
- Fix README format by @evshary in #1186
- make HatTokenTrait pub(crate) by @Charles-Schleich in #1189
- Implement Error trait for ZBytes error types by @Mallets in #1192
- Fix and Improve liveliness doc by @OlivierHecart in #1195
- Allow to enable/disable batching from config by @Mallets in #1196
- Fix doc warnings by @OlivierHecart in #1197
- Add codec test of interest message by @Mallets in #1198
- Fix CLI args for z_pub_shm by @Mallets in #1199
- Fix bug in keyexpr::includes leading to call get_unchecked on empty array UB by @OlivierHecart in #1207
- feat: unify pub/sub and query/reply modules by @wyfo in #1193
- Add z_bytes in the examples. by @evshary in #1180
- Make listen and connect endpoints ModeDependentValues by @OlivierHecart in #1216
- Bump uhlc to 0.8.0 - changing formatting of Timestamps as Strings by @JEnoch in #1218
- fix: typos by @J-Loudet in #1220
- remove
new_timestamp
fn ,time
module, reworked plugin storage … by @Charles-Schleich in #1188 - Use TCP MSS as TCP link MTU by @Mallets in #1214
- Make adminspace return current metadata by @OlivierHecart in #1221
- simplify timestamp id, remove allocation. by @Charles-Schleich in #1223
- fix(storage-manager): do not start when 'timestamping' is disabled by @J-Loudet in #1219
- fix(storage-manager): validate presence of timestamp by @J-Loudet in #1229
- Fix zenoh macros category by @diogomatsubara in #1232
- Fix downsampling with wildcards by @sashacmc in #1240
- Fix error log text in zenoh-ext PublicationCache (about timestamping config) by @JEnoch in #1237
- Mark replier_id accessor as unstable by @Mallets in #1226
- Fix bug in routers replying to peers liveliness queries by @OlivierHecart in #1233
- Sync Rust toolchain by @eclipse-zenoh-bot in #1243
- Sync Rust toolchain by @eclipse-zenoh-bot in #1244
- Null value opts for shm by @yellowhatter in #1241
- Fix establish failure on shm by @yellowhatter in #1242
- Do not trigger transport error in case of SHM buffer invalidation by @yellowhatter in #1245
- Log to debug SHM error by @Mallets in #1246
- Admin keys remapping by @OlivierHecart in #1209
- Do not require mandatory "unstable" for "internal" feature by @yellowhatter in #1250
- Fix unstable marker atachment by @yellowhatter in #1251
- fix: fix canonization not updating
&mut str
length by @wyfo in #1254 - Support bytes::Bytes for ZBytes by @evshary in #1248
- Fix #1239. Fix timestamp codec len calculation by @Mallets in #1258
- SHM bugfix by @yellowhatter in #1256
- Add publisher delete and queryable reply messages to ACL by @oteffahi in #1259
- Make SHM sub\queryable examples more robust by @yellowhatter in #1261
- SHM on RaspberryPI bugfixes by @yellowhatter in #1265
- Align SHM examples by @Mallets in #1268
- Routing renaming by @OlivierHecart in #1276
- Merge/main into dev/1.0.0 by @Mallets in #1279
- chore: fix documentation in examples by @diogomatsubara in #1280
- Shm segment cleanup by @yellowhatter in #1281
- Rename
close
toundeclare
inzenoh-ext-examples
by @fuzzypixelz in #1293 - fix: Fix ZBufWriter implementation by @wyfo in #1289
- feat: use the bit manipulation to compute the alignment size by @YuanYuYuan in #1206
- Use tokio to replace async_std for plugins and backends. by @evshary in #1264
Full Changelog: 1.0.0-alpha.2...1.0.0-alpha.6
1.0.0-alpha.5
What's Changed
New features 🎉
- Make
rustls
,rustls-webpki
andwebpki-roots
optional by @fuzzypixelz in #1238 - Configure
scouting/*/autoconnect/*
with a sequence by @fuzzypixelz in #1224 - Update ACL config format to support AND/OR logic between subjects by @oteffahi in #1200
- Optimize RoutingContext keyexpr for Query and Response messages by @oteffahi in #1266
Bug fixes 🐞
- fix: fix keyexpr canonization unsafe behavior by @wyfo in #1191
- Fix Clippy errors from Rust 1.80 by @fuzzypixelz in #1270
- Don't load plugins/volumes when
plugins_loading/enabled:false
by @fuzzypixelz in #1269 - Don't duplicate token undeclarations in routers by @fuzzypixelz in #1275
Other changes
- Fix downsampling with wildcards by @sashacmc in #1240
- Fix error log text in zenoh-ext PublicationCache (about timestamping config) by @JEnoch in #1237
- Mark replier_id accessor as unstable by @Mallets in #1226
- Fix bug in routers replying to peers liveliness queries by @OlivierHecart in #1233
- Sync Rust toolchain by @eclipse-zenoh-bot in #1243
- Sync Rust toolchain by @eclipse-zenoh-bot in #1244
- Null value opts for shm by @yellowhatter in #1241
- Fix establish failure on shm by @yellowhatter in #1242
- Do not trigger transport error in case of SHM buffer invalidation by @yellowhatter in #1245
- Log to debug SHM error by @Mallets in #1246
- Admin keys remapping by @OlivierHecart in #1209
- Do not require mandatory "unstable" for "internal" feature by @yellowhatter in #1250
- Fix unstable marker atachment by @yellowhatter in #1251
- fix: fix canonization not updating
&mut str
length by @wyfo in #1254 - Support bytes::Bytes for ZBytes by @evshary in #1248
- Fix #1239. Fix timestamp codec len calculation by @Mallets in #1258
- SHM bugfix by @yellowhatter in #1256
- Add publisher delete and queryable reply messages to ACL by @oteffahi in #1259
- Make SHM sub\queryable examples more robust by @yellowhatter in #1261
- SHM on RaspberryPI bugfixes by @yellowhatter in #1265
- Align SHM examples by @Mallets in #1268
Full Changelog: 1.0.0-alpha.4...1.0.0-alpha.5
1.0.0-alpha.4
What's Changed
New features 🎉
- Fix #1185. Add encoding option to publisher creation by @Mallets in #1194
- Fix typos ("nof" -> "not") by @fuzzypixelz in #1227
Bug fixes 🐞
- fix: adminspace encodings by @gabrik in #1182
- fix: replace some unsafe code with safe version by @wyfo in #1184
Other changes
- Value fields public by @Charles-Schleich in #1178
- Draft: Add
new_timestamp
to Session by @Charles-Schleich in #1175 - Improve bytes by @Mallets in #1174
- fix: fix zenoh-shm test requiring "test" feature to compile by @wyfo in #1183
- Fix README format by @evshary in #1186
- make HatTokenTrait pub(crate) by @Charles-Schleich in #1189
- Implement Error trait for ZBytes error types by @Mallets in #1192
- Fix and Improve liveliness doc by @OlivierHecart in #1195
- Allow to enable/disable batching from config by @Mallets in #1196
- Fix doc warnings by @OlivierHecart in #1197
- Add codec test of interest message by @Mallets in #1198
- Fix CLI args for z_pub_shm by @Mallets in #1199
- Fix bug in keyexpr::includes leading to call get_unchecked on empty array UB by @OlivierHecart in #1207
- feat: unify pub/sub and query/reply modules by @wyfo in #1193
- Add z_bytes in the examples. by @evshary in #1180
- Make listen and connect endpoints ModeDependentValues by @OlivierHecart in #1216
- Bump uhlc to 0.8.0 - changing formatting of Timestamps as Strings by @JEnoch in #1218
- fix: typos by @J-Loudet in #1220
- remove
new_timestamp
fn ,time
module, reworked plugin storage … by @Charles-Schleich in #1188 - Use TCP MSS as TCP link MTU by @Mallets in #1214
- Make adminspace return current metadata by @OlivierHecart in #1221
- simplify timestamp id, remove allocation. by @Charles-Schleich in #1223
- fix(storage-manager): do not start when 'timestamping' is disabled by @J-Loudet in #1219
- fix(storage-manager): validate presence of timestamp by @J-Loudet in #1229
- Fix zenoh macros category by @diogomatsubara in #1232
Full Changelog: 1.0.0-alpha.2...1.0.0-alpha.4
1.0.0-alpha.2
Full Changelog: 1.0.0-alpha.1...1.0.0-alpha.2
0.11.0
What's Changed
New features 🎉
- fix: Relax lifetime bounds in endpoint
as_str
methods by @fuzzypixelz in #1058
Bug fixes 🐞
- fix: format the error message in
ZRuntime
expect by @YuanYuYuan in #1049 - fix(1059): adding explicit plugin id in PluginStatus and PluginManager by @gabrik in #1060
- fix: Decrease
zenoh_link_udp::UDP_MAX_MTU
to fit UDP over IPv6 by @fuzzypixelz in #1071 - fix: missed renames from name to id in plugins by @gabrik in #1079
Other changes
- ci: speedup the cargo deny installation by @YuanYuYuan in #1027
- fix: set live-run to input's value in dockerhub publish by @diogomatsubara in #1029
- fix(ci): address the issue of
RUSTUP_WINDOWS_PATH_ADD_BIN
change by @YuanYuYuan in #1039 - added multicast scouting ttl option by @jeremiah-wooten in #1032
- fix: make rx task close the link properly in low-latency transport by @YuanYuYuan in #1030
New Contributors
- @jeremiah-wooten made their first contribution in #1032
Full Changelog: 0.11.0-rc.3...0.11.0
0.11.0-rc.3
What's Changed
Bug fixes 🐞
- Don't compress
OpenAck
messages by @gabrik in #1005 - Fix unhonored query timeouts by @OlivierHecart in #1021
- Remove unsound
libc::atexit
handler by @YuanYuYuan in #1015
Other changes
- Rename
no_mangle
crate feature todynamic_plugin
by @gabrik in #1010 - Refactor downsampling test by @YuanYuYuan in #999
- Check licenses of third-party dependencies by @fuzzypixelz in #1001
- Fix compression test by @Mallets in #1006
- Set
latest
andnightly
Docker tags by @diogomatsubara in #1011 - Fix
zenoh_session_multicast
test by @YuanYuYuan in #1004 - Improve Rustdoc rendering of
unstable
items by @fuzzypixelz in #1016 - Apply Clippy lints from Rust 1.78 by @fuzzypixelz in #1020
New Contributors
- @diogomatsubara made their first contribution in #1011
Full Changelog: 0.11.0-rc.2...0.11.0-rc.3
0.11.0-rc.2
What's Changed
New features 🎉
Bug fixes 🐞
- Fix invalid JSON in adminspace for static plugins by @JEnoch in #988
- Fix invalid
__path__
field in adminspace by @JEnoch in #990 - Fix zenoh-c DLL crash in
libc::atexit
handler on Windows by @YuanYuYuan in #981 - Fix gossip deadlock by @OlivierHecart in #976
- Fix incorrect ACL filtering of messages without keyexprs by @OlivierHecart in #993
- Fix double/missing runtime starting by @Mallets in #985
Other changes
- Use
gen_range
rather than modulo by @OlivierHecart in #978 - Deny publishing of zenoh-ext-examples by @fuzzypixelz in #984
- Improve ACL config validation by @snehilzs and @oteffahi in #982
Full Changelog: 0.11.0-rc.1...0.11.0-rc.2
0.11.0-rc.1
What's Changed
New features 🎉
- Tokio port by @YuanYuYuan in #830
- Add Access Control for network interfaces by @snehilzs in #683
- Downsampling interceptors by @sashacmc in #728
- Allow applications to load plugins by @Mallets in #953
- Adminspace for clients and peers by @OlivierHecart in #960
- Use
tracing
instead oflog
for logging by @gabrik in #895 - Support Vsock links by @sashacmc in #811
- Verbatim chunks for Key Expressions by @p-avital in #655
- Plugin API rework, plugin status support by @milyin in #583
complete
option inPublicationCache
by @milyin in #688- Quality of Service settings for Samples (Priority, Congestion Control, Express) by @DenisBiryukov91 in #730
- Connection timeouts and retries by @sashacmc in #770
- Add
CallbackPair
handler implementingDrop
andIntoCallbackReceiverPair
by @JEnoch in #653 - Ability to bind on an interface by @sashacmc in #755
- Support binding on TCP/UDP interfaces in Android by @DariusIMP in #832
wait_before_drop
configuration option time in case ofCongestionControl::Drop
by @JEnoch in #848- Show known origin of Subscribers and Queryables in adminspace by @OlivierHecart in #959
- Support
.yml
configuration files by @fuzzypixelz in #784 - Ability to print-debug builders by @evshary in #658
Bug fixes 🐞
- Fix session mode overwritting in configuration file by @JEnoch in #702
- Fix reviving of dropped liveliness tokens by @OlivierHecart in #802
- Fix formatter reuse and
**
sometimes being considered as included into*
by @p-avital in #638 - Only consider
UP
andRUNNING
network interfaces by @OlivierHecart in #637 - Fix CLI argument parsing in examples by @Jarsop in #635
- Fix broken Debian package by @fuzzypixelz in #640
- Fix partial storages replication by @JEnoch in #644
- Fix potential panic in
z_sub_thr
example @jerry73204 in #642 - Correctly enable
unstable
feature in zenoh-plugin-example by @YuanYuYuan in #657 - Handle whitespace and blank lines in credentials by @vivekpandey02 in #776
- Remove unused dependencies by @fuzzypixelz in #761
- Relax dependency requirements by @fuzzypixelz in #758
- Build plugins with default zenoh features by @milyin in #745
- Restore sequence number in case of frame drops caused by congestion control by @yellowhatter in #815
- Align examples and remove reading from stdin by @oteffahi in #768
- Reverse backwards default paths list by @fuzzypixelz in #825
- Fix scouting on unixpipe transport by @yellowhatter in #845
- Fix memory leaks by @DenisBiryukov91 in #846
- Change generic name
IntoSelector
toTryIntoSelector
inSession::get
by @DenisBiryukov91 in #879 - Include bytes received as part of
put
payload in the global received bytes counter by @gabrik in #914 - Don't reply with an error when a key is not found during replication by @J-Loudet in #912
- Fix CLI argument parsing in zenoh-ext examples by @DenisBiryukov91 in #934
- Fix crash in replication logic when removing logs from interval by @pftbest in #933
- Don't write outside
OUT_DIR
in build scripts by @J-Loudet in #939 - Fix digest calculation errors in replication by @J-Loudet, @chachi and Nathan Ward #938
Other changes
- Interceptor caches by @OlivierHecart in #744
- Router refactoring by @OlivierHecart in #587
- Update
ZenohId
representation by @Mallets in #860 - Bump unsafe-libyaml from 0.2.9 to 0.2.10 by @dependabot in #632
- Bump mio from 0.8.8 to 0.8.11 by @dependabot in #789
- Improve Release workflow by @fuzzypixelz in #756
- Improve project management by @fuzzypixelz in #674
- Add support for verbatims in ketrees by @p-avital in #706
- Make cargo-nextest more resilient by @YuanYuYuan in #715
- Specify windows char escape in README by @Mallets in #735
- Move
Publisher::write
method into trait by @DenisBiryukov91 in #736 - Remind users to start
z_pong
first in the ping-pong example by @YuanYuYuan in #852 - Clarify
keep_alive
configuration parameter by @Mallets in #856 - Enable query timeouts by @sashacmc in #853
- Explicitly specify default features in examples by @YuanYuYuan in #854
- Use GitHub's markdown alerts for warnings in README by @ayhon in #883
- Cancel query timeout task once the query is finalized by @DenisBiryukov91 in #881
- Add Ubuntu 24.04 tests by @oteffahi in #951
New Contributors
- @Jarsop made their first contribution in #635
- @vivekpandey02 made their first contribution in #776
- @oteffahi made their first contribution in #768
- @ayhon made their first contribution in #883
- @J-Loudet made their first contribution in #912
- @pftbest made their first contribution in #933
- @snehilzs made their first contribution in #683
- @chachi made their first contribution in #938
Full Changelog: 0.10.1-rc...0.11.0-rc.1