diff --git a/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_ROUTER_CONFIG.json5 b/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_ROUTER_CONFIG.json5 index 255ee8bdf..509f93499 100644 --- a/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_ROUTER_CONFIG.json5 +++ b/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_ROUTER_CONFIG.json5 @@ -185,7 +185,7 @@ autoconnect: { router: [], peer: ["router", "peer"] }, /// Strategy for autoconnection, mainly to avoid nodes connecting to each other redundantly. /// Possible options are: - /// - "always": always attempt to autoconnect, may result in redundant connection which will then be closed. + /// - "always": always attempt to autoconnect, may result in redundant connections. /// - "greater-zid": attempt to connect to another node only if its own zid is greater than the other's. /// If both nodes use this strategy, only one will attempt the connection. /// This strategy may not be suited if one of the nodes is not reachable by the other one, for example @@ -315,6 +315,15 @@ // /// Optional list of data flows messages will be processed on ("egress" and/or "ingress"). // /// If absent, the rules will be applied to both flows. // flows: ["egress", "ingress"], + // /// QoS filter to apply to the messages matching this item. + // qos: { + // congestion_control: "drop", + // priority: "data", + // express: true, + // reliability: "reliable", + // }, + // /// payload_size range for the messages matching this item. + // payload_size: "1000000..", // key_exprs: ["test/demo"], // overwrite: { // /// Optional new priority value, if not specified priority of the messages will stay unchanged. @@ -464,6 +473,11 @@ // /// link protocols can also be used to identify transports to filter messages on. // /// If absent, the rules will be applied to all transports. An empty list is invalid. // link_protocols: [ "tcp", "udp", "tls", "quic", "ws", "serial", "unixsock-stream", "unixpipe", "vsock"], + // /// ZIDs can also be used to identify transports to filter messages on. + // /// NOTE: ZID is not backed by an authentication mechanism, it can only be trusted for ACL if it is + // /// dynamically added/removed by eventual dedicated Zenoh mechanisms when transports are opened/closed. + // /// If managed manually in ACL config, can be useful for prototyping but should not be used in production! + // zids: ["38a4829bce9166ee"], // }, // ], // /// The policies list associates rules to subjects diff --git a/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_SESSION_CONFIG.json5 b/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_SESSION_CONFIG.json5 index 9d261b860..8b982483c 100644 --- a/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_SESSION_CONFIG.json5 +++ b/rmw_zenoh_cpp/config/DEFAULT_RMW_ZENOH_SESSION_CONFIG.json5 @@ -323,6 +323,15 @@ // /// Optional list of data flows messages will be processed on ("egress" and/or "ingress"). // /// If absent, the rules will be applied to both flows. // flows: ["egress", "ingress"], + // /// QoS filter to apply to the messages matching this item. + // qos: { + // congestion_control: "drop", + // priority: "data", + // express: true, + // reliability: "reliable", + // }, + // /// payload_size range for the messages matching this item. + // payload_size: "1000000..", // key_exprs: ["test/demo"], // overwrite: { // /// Optional new priority value, if not specified priority of the messages will stay unchanged. @@ -472,6 +481,11 @@ // /// link protocols can also be used to identify transports to filter messages on. // /// If absent, the rules will be applied to all transports. An empty list is invalid. // link_protocols: [ "tcp", "udp", "tls", "quic", "ws", "serial", "unixsock-stream", "unixpipe", "vsock"], + // /// ZIDs can also be used to identify transports to filter messages on. + // /// NOTE: ZID is not backed by an authentication mechanism, it can only be trusted for ACL if it is + // /// dynamically added/removed by eventual dedicated Zenoh mechanisms when transports are opened/closed. + // /// If managed manually in ACL config, can be useful for prototyping but should not be used in production! + // zids: ["38a4829bce9166ee"], // }, // ], // /// The policies list associates rules to subjects diff --git a/zenoh_cpp_vendor/CMakeLists.txt b/zenoh_cpp_vendor/CMakeLists.txt index 3b3c79edf..906452208 100644 --- a/zenoh_cpp_vendor/CMakeLists.txt +++ b/zenoh_cpp_vendor/CMakeLists.txt @@ -17,21 +17,28 @@ find_package(ament_cmake_vendor_package REQUIRED) # latter is a list separater in cmake and hence the string will be split into two when expanded. set(ZENOHC_CARGO_FLAGS "--features=shared-memory zenoh/transport_serial") -# Set VCS_VERSION to 1.4.0 commits of zenoh/zenoh-c/zenoh-cpp to benefit from: -# - Add a "bind" config option for endpoints: -# - https://github.com/eclipse-zenoh/zenoh/pull/1892 -# - Add a "low_pass_filter" config: -# - https://github.com/eclipse-zenoh/zenoh/pull/1868 -# - https://github.com/eclipse-zenoh/zenoh/pull/1895 -# - Add "zids" config parameter to "qos_overwrite": -# - https://github.com/eclipse-zenoh/zenoh/pull/1908 -# - Add support for link weights: -# - https://github.com/eclipse-zenoh/zenoh/pull/1914 -# - Add support for DiffServ's DSCP config for endpoints: -# - https://github.com/eclipse-zenoh/zenoh/pull/1937 +# Set VCS_VERSION to 1.5.0 commits of zenoh/zenoh-c/zenoh-cpp to benefit from: +# - Add CongestionControl::BlockFirst QoS +# - https://github.com/eclipse-zenoh/zenoh/pull/2014 +# - Add more options for messages selection to 'qos/network' config: +# - https://github.com/eclipse-zenoh/zenoh/pull/2030 +# - Add ZID subject property to access_control config: +# - https://github.com/eclipse-zenoh/zenoh/pull/2015 +# - Fix access control over UDP listen endpoints +# - https://github.com/eclipse-zenoh/zenoh/pull/1980 +# - Performance improvements: +# - https://github.com/eclipse-zenoh/zenoh/pull/1988 +# - https://github.com/eclipse-zenoh/zenoh/pull/2025 +# - https://github.com/eclipse-zenoh/zenoh/pull/2035 +# - https://github.com/eclipse-zenoh/zenoh/pull/2046 +# - https://github.com/eclipse-zenoh/zenoh/pull/2047 +# - https://github.com/eclipse-zenoh/zenoh/pull/2053 +# - https://github.com/eclipse-zenoh/zenoh/pull/2062 +# - Fix build failure on Windows: +# - https://github.com/eclipse-zenoh/zenoh-c/pull/1079 ament_vendor(zenoh_c_vendor VCS_URL https://github.com/eclipse-zenoh/zenoh-c.git - VCS_VERSION 6bea1f1ebc29412548f36af91cf2225c8bf476d4 + VCS_VERSION 71af32739394bc3200aa1bea32206dc28216e04e CMAKE_ARGS "-DZENOHC_CARGO_FLAGS=${ZENOHC_CARGO_FLAGS}" "-DZENOHC_BUILD_WITH_UNSTABLE_API=TRUE" @@ -43,7 +50,7 @@ ament_export_dependencies(zenohc) ament_vendor(zenoh_cpp_vendor VCS_URL https://github.com/eclipse-zenoh/zenoh-cpp - VCS_VERSION 7379592436398079934f4296d2fa90217f8eddf9 + VCS_VERSION d0eae207c6cfee8df9fb8622812a297ef9bfd18e CMAKE_ARGS -DZENOHCXX_ZENOHC=OFF )