diff --git a/Cargo.lock b/Cargo.lock index 78ec75065..8954f928c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -3738,7 +3738,7 @@ dependencies = [ [[package]] name = "zenoh" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "ahash", "async-trait", @@ -3786,7 +3786,7 @@ dependencies = [ [[package]] name = "zenoh-buffers" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "zenoh-collections", ] @@ -3823,7 +3823,7 @@ dependencies = [ [[package]] name = "zenoh-codec" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "tracing", "uhlc", @@ -3835,12 +3835,12 @@ dependencies = [ [[package]] name = "zenoh-collections" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" [[package]] name = "zenoh-config" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "json5", "num_cpus", @@ -3862,7 +3862,7 @@ dependencies = [ [[package]] name = "zenoh-core" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "lazy_static", "tokio", @@ -3873,7 +3873,7 @@ dependencies = [ [[package]] name = "zenoh-crypto" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "aes", "hmac", @@ -3886,7 +3886,7 @@ dependencies = [ [[package]] name = "zenoh-ext" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "bincode", @@ -3905,7 +3905,7 @@ dependencies = [ [[package]] name = "zenoh-keyexpr" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "hashbrown 0.14.5", "keyed-set", @@ -3919,7 +3919,7 @@ dependencies = [ [[package]] name = "zenoh-link" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "zenoh-config", "zenoh-link-commons", @@ -3939,7 +3939,7 @@ dependencies = [ [[package]] name = "zenoh-link-commons" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "flume", @@ -3963,7 +3963,7 @@ dependencies = [ [[package]] name = "zenoh-link-quic" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "base64 0.22.1", @@ -3990,7 +3990,7 @@ dependencies = [ [[package]] name = "zenoh-link-serial" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "tokio", @@ -4008,7 +4008,7 @@ dependencies = [ [[package]] name = "zenoh-link-tcp" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "socket2 0.5.7", @@ -4025,7 +4025,7 @@ dependencies = [ [[package]] name = "zenoh-link-tls" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "base64 0.22.1", @@ -4054,7 +4054,7 @@ dependencies = [ [[package]] name = "zenoh-link-udp" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "socket2 0.5.7", @@ -4073,7 +4073,7 @@ dependencies = [ [[package]] name = "zenoh-link-unixpipe" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "advisory-lock", "async-trait", @@ -4095,7 +4095,7 @@ dependencies = [ [[package]] name = "zenoh-link-unixsock_stream" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "nix 0.29.0", @@ -4113,7 +4113,7 @@ dependencies = [ [[package]] name = "zenoh-link-vsock" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "libc", @@ -4131,7 +4131,7 @@ dependencies = [ [[package]] name = "zenoh-link-ws" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "futures-util", @@ -4151,7 +4151,7 @@ dependencies = [ [[package]] name = "zenoh-macros" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "proc-macro2", "quote", @@ -4162,7 +4162,7 @@ dependencies = [ [[package]] name = "zenoh-plugin-trait" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "git-version", "libloading", @@ -4178,7 +4178,7 @@ dependencies = [ [[package]] name = "zenoh-protocol" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "const_format", "rand", @@ -4192,7 +4192,7 @@ dependencies = [ [[package]] name = "zenoh-result" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "anyhow", ] @@ -4200,7 +4200,7 @@ dependencies = [ [[package]] name = "zenoh-runtime" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "lazy_static", "ron", @@ -4213,7 +4213,7 @@ dependencies = [ [[package]] name = "zenoh-shm" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "advisory-lock", "async-trait", @@ -4236,7 +4236,7 @@ dependencies = [ [[package]] name = "zenoh-sync" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "event-listener 5.3.1", "futures", @@ -4249,7 +4249,7 @@ dependencies = [ [[package]] name = "zenoh-task" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "futures", "tokio", @@ -4262,7 +4262,7 @@ dependencies = [ [[package]] name = "zenoh-transport" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "crossbeam-utils", @@ -4296,7 +4296,7 @@ dependencies = [ [[package]] name = "zenoh-util" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "const_format", diff --git a/Cargo.toml b/Cargo.toml index f4b830e35..6506a105d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -74,10 +74,10 @@ spin = "0.9.5" tokio = "*" unwrap-infallible = "0.1.5" const_format = "0.2.32" -zenoh = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", branch = "main", default-features = false, features = ["internal"] } -zenoh-ext = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", features=["internal"], branch = "main" } -zenoh-runtime = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", branch = "main" } -zenoh-util = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", branch = "main" } +zenoh = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", branch = "shm_mutation_example", default-features = false, features = ["internal"] } +zenoh-ext = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", features=["internal"], branch = "shm_mutation_example" } +zenoh-runtime = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", branch = "shm_mutation_example" } +zenoh-util = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", branch = "shm_mutation_example" } flume = "*" [build-dependencies] diff --git a/Cargo.toml.in b/Cargo.toml.in index 9fdb4796c..c88cfcb5c 100644 --- a/Cargo.toml.in +++ b/Cargo.toml.in @@ -74,10 +74,10 @@ spin = "0.9.5" tokio = "*" unwrap-infallible = "0.1.5" const_format = "0.2.32" -zenoh = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", branch = "main", default-features = false, features = ["internal"] } -zenoh-ext = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", features=["internal"], branch = "main" } -zenoh-runtime = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", branch = "main" } -zenoh-util = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", branch = "main" } +zenoh = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", branch = "shm_mutation_example", default-features = false, features = ["internal"] } +zenoh-ext = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", features=["internal"], branch = "shm_mutation_example" } +zenoh-runtime = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", branch = "shm_mutation_example" } +zenoh-util = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", branch = "shm_mutation_example" } flume = "*" [build-dependencies] diff --git a/build-resources/opaque-types/Cargo.lock b/build-resources/opaque-types/Cargo.lock index b88eea208..c8052803f 100644 --- a/build-resources/opaque-types/Cargo.lock +++ b/build-resources/opaque-types/Cargo.lock @@ -3131,7 +3131,7 @@ dependencies = [ [[package]] name = "zenoh" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "ahash", "async-trait", @@ -3179,7 +3179,7 @@ dependencies = [ [[package]] name = "zenoh-buffers" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "zenoh-collections", ] @@ -3187,7 +3187,7 @@ dependencies = [ [[package]] name = "zenoh-codec" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "tracing", "uhlc", @@ -3199,12 +3199,12 @@ dependencies = [ [[package]] name = "zenoh-collections" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" [[package]] name = "zenoh-config" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "json5", "num_cpus", @@ -3226,7 +3226,7 @@ dependencies = [ [[package]] name = "zenoh-core" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "lazy_static", "tokio", @@ -3237,7 +3237,7 @@ dependencies = [ [[package]] name = "zenoh-crypto" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "aes", "hmac", @@ -3250,7 +3250,7 @@ dependencies = [ [[package]] name = "zenoh-ext" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "bincode", @@ -3269,7 +3269,7 @@ dependencies = [ [[package]] name = "zenoh-keyexpr" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "hashbrown", "keyed-set", @@ -3283,7 +3283,7 @@ dependencies = [ [[package]] name = "zenoh-link" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "zenoh-config", "zenoh-link-commons", @@ -3303,7 +3303,7 @@ dependencies = [ [[package]] name = "zenoh-link-commons" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "flume", @@ -3327,7 +3327,7 @@ dependencies = [ [[package]] name = "zenoh-link-quic" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "base64 0.22.1", @@ -3354,7 +3354,7 @@ dependencies = [ [[package]] name = "zenoh-link-serial" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "tokio", @@ -3372,7 +3372,7 @@ dependencies = [ [[package]] name = "zenoh-link-tcp" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "socket2", @@ -3389,7 +3389,7 @@ dependencies = [ [[package]] name = "zenoh-link-tls" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "base64 0.22.1", @@ -3418,7 +3418,7 @@ dependencies = [ [[package]] name = "zenoh-link-udp" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "socket2", @@ -3437,7 +3437,7 @@ dependencies = [ [[package]] name = "zenoh-link-unixpipe" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "advisory-lock", "async-trait", @@ -3459,7 +3459,7 @@ dependencies = [ [[package]] name = "zenoh-link-unixsock_stream" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "nix 0.29.0", @@ -3477,7 +3477,7 @@ dependencies = [ [[package]] name = "zenoh-link-vsock" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "libc", @@ -3495,7 +3495,7 @@ dependencies = [ [[package]] name = "zenoh-link-ws" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "futures-util", @@ -3515,7 +3515,7 @@ dependencies = [ [[package]] name = "zenoh-macros" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "proc-macro2", "quote", @@ -3526,7 +3526,7 @@ dependencies = [ [[package]] name = "zenoh-plugin-trait" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "git-version", "libloading", @@ -3542,7 +3542,7 @@ dependencies = [ [[package]] name = "zenoh-protocol" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "const_format", "rand", @@ -3556,7 +3556,7 @@ dependencies = [ [[package]] name = "zenoh-result" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "anyhow", ] @@ -3564,7 +3564,7 @@ dependencies = [ [[package]] name = "zenoh-runtime" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "lazy_static", "ron", @@ -3577,7 +3577,7 @@ dependencies = [ [[package]] name = "zenoh-shm" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "advisory-lock", "async-trait", @@ -3600,7 +3600,7 @@ dependencies = [ [[package]] name = "zenoh-sync" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "event-listener", "futures", @@ -3613,7 +3613,7 @@ dependencies = [ [[package]] name = "zenoh-task" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "futures", "tokio", @@ -3626,7 +3626,7 @@ dependencies = [ [[package]] name = "zenoh-transport" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "crossbeam-utils", @@ -3660,7 +3660,7 @@ dependencies = [ [[package]] name = "zenoh-util" version = "1.0.0-dev" -source = "git+https://github.com/eclipse-zenoh/zenoh.git?branch=main#77923a2e084b0e7f4fa316978a9a6226cc4d4031" +source = "git+https://github.com/ZettaScaleLabs/zenoh.git?branch=shm_mutation_example#3ba037d34f0dff7a496b972f4efa91fc2750f093" dependencies = [ "async-trait", "const_format", diff --git a/build-resources/opaque-types/Cargo.toml b/build-resources/opaque-types/Cargo.toml index 7ccb57ed0..867872fd1 100644 --- a/build-resources/opaque-types/Cargo.toml +++ b/build-resources/opaque-types/Cargo.toml @@ -30,9 +30,9 @@ panic = [ default = ["zenoh/default"] [dependencies] -zenoh = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", branch = "main", default-features = false, features = ["internal"] } -zenoh-ext = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", features=["internal"], branch = "main" } -zenoh-protocol = { version = "1.0.0-dev", git = "https://github.com/eclipse-zenoh/zenoh.git", branch = "main" } +zenoh = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", branch = "shm_mutation_example", default-features = false, features = ["internal"] } +zenoh-ext = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", features=["internal"], branch = "shm_mutation_example" } +zenoh-protocol = { version = "1.0.0-dev", git = "https://github.com/ZettaScaleLabs/zenoh.git", branch = "shm_mutation_example" } const_format = "0.2.32" flume = "*" tokio = "*" diff --git a/examples/z_sub_shm.c b/examples/z_sub_shm.c index b4ce6cb2d..548138c6b 100644 --- a/examples/z_sub_shm.c +++ b/examples/z_sub_shm.c @@ -44,9 +44,12 @@ void data_handler(z_loaned_sample_t *sample, void *arg) { #if defined(Z_FEATURE_SHARED_MEMORY) && defined(Z_FEATURE_UNSTABLE_API) char *payload_type = "RAW"; { + // try to convert sample payload into SHM buffer. The conversion will succeed + // only if payload is carrying underlying SHM buffer z_loaned_shm_t *shm = NULL; if (z_bytes_as_mut_loaned_shm(z_sample_payload_mut(sample), &shm) == Z_OK) { - z_loaned_shm_mut_t *shm_mut = z_shm_try_reloan_mut(shm); + // try to get mutable access to SHM buffer + z_loaned_shm_mut_t *shm_mut = z_shm_try_reloan_mut(shm); if (shm_mut) { payload_type = "SHM (MUT)"; } else { diff --git a/include/zenoh_commons.h b/include/zenoh_commons.h index fe8f30b02..2a80930c0 100644 --- a/include/zenoh_commons.h +++ b/include/zenoh_commons.h @@ -3700,6 +3700,10 @@ ZENOHC_API const struct z_loaned_keyexpr_t *z_query_keyexpr(const struct z_loane * Borrows the query. */ ZENOHC_API const struct z_loaned_query_t *z_query_loan(const struct z_owned_query_t *this_); +/** + * Mutably borrows the query. + */ +ZENOHC_API struct z_loaned_query_t *z_query_loan_mut(struct z_owned_query_t *this_); /** * Gets query value selector. */ @@ -3713,6 +3717,13 @@ void z_query_parameters(const struct z_loaned_query_t *this_, */ ZENOHC_API const struct z_loaned_bytes_t *z_query_payload(const struct z_loaned_query_t *this_); +/** + * Gets mutable query payload. + * + * Returns NULL if query does not contain a payload. + */ +ZENOHC_API +struct z_loaned_bytes_t *z_query_payload_mut(struct z_loaned_query_t *this_); /** * Sends a reply to a query. * @@ -3874,11 +3885,19 @@ const struct z_loaned_encoding_t *z_reply_err_encoding(const struct z_loaned_rep */ ZENOHC_API const struct z_loaned_reply_err_t *z_reply_err_loan(const struct z_owned_reply_err_t *this_); +/** + * Mutably borrows reply error. + */ +ZENOHC_API struct z_loaned_reply_err_t *z_reply_err_loan_mut(struct z_owned_reply_err_t *this_); /** * Returns reply error payload. */ ZENOHC_API const struct z_loaned_bytes_t *z_reply_err_payload(const struct z_loaned_reply_err_t *this_); +/** + * Returns mutable reply error payload. + */ +ZENOHC_API struct z_loaned_bytes_t *z_reply_err_payload_mut(struct z_loaned_reply_err_t *this_); /** * Returns ``true`` if reply contains a valid response, ``false`` otherwise (in this case it contains a errror value). */ @@ -4043,12 +4062,16 @@ ZENOHC_API enum z_sample_kind_t z_sample_kind(const struct z_loaned_sample_t *th * Borrows sample. */ ZENOHC_API const struct z_loaned_sample_t *z_sample_loan(const struct z_owned_sample_t *this_); +/** + * Mutably borrows sample. + */ +ZENOHC_API struct z_loaned_sample_t *z_sample_loan_mut(struct z_owned_sample_t *this_); /** * Returns the sample payload data. */ ZENOHC_API const struct z_loaned_bytes_t *z_sample_payload(const struct z_loaned_sample_t *this_); /** - * Returns the sample payload data. + * Returns the mutable sample payload data. */ ZENOHC_API struct z_loaned_bytes_t *z_sample_payload_mut(struct z_loaned_sample_t *this_); /** @@ -4447,6 +4470,7 @@ struct z_loaned_shm_mut_t *z_shm_try_mut(struct z_owned_shm_t *this_); /** * @warning This API has been marked as unstable: it works as advertised, but it may be changed in a future release. * @brief Tries to reborrow mutably-borrowed ZShm slice as borrowed ZShmMut slice. + * @return borrowed ZShmMut slice in case of success, NULL otherwise */ #if (defined(Z_FEATURE_SHARED_MEMORY) && defined(Z_FEATURE_UNSTABLE_API)) ZENOHC_API diff --git a/include/zenoh_macros.h b/include/zenoh_macros.h index aae0c0509..4b72893a3 100644 --- a/include/zenoh_macros.h +++ b/include/zenoh_macros.h @@ -128,6 +128,9 @@ static inline ze_moved_serializer_t* ze_serializer_move(ze_owned_serializer_t* x z_owned_mutex_t : z_mutex_loan_mut, \ z_owned_publisher_t : z_publisher_loan_mut, \ z_owned_querier_t : z_querier_loan_mut, \ + z_owned_query_t : z_query_loan_mut, \ + z_owned_reply_err_t : z_reply_err_loan_mut, \ + z_owned_sample_t : z_sample_loan_mut, \ z_owned_session_t : z_session_loan_mut, \ z_owned_shm_t : z_shm_loan_mut, \ z_owned_shm_mut_t : z_shm_mut_loan_mut, \ @@ -677,6 +680,9 @@ inline z_loaned_encoding_t* z_loan_mut(z_owned_encoding_t& this_) { return z_enc inline z_loaned_mutex_t* z_loan_mut(z_owned_mutex_t& this_) { return z_mutex_loan_mut(&this_); }; inline z_loaned_publisher_t* z_loan_mut(z_owned_publisher_t& this_) { return z_publisher_loan_mut(&this_); }; inline z_loaned_querier_t* z_loan_mut(z_owned_querier_t& this_) { return z_querier_loan_mut(&this_); }; +inline z_loaned_query_t* z_loan_mut(z_owned_query_t& this_) { return z_query_loan_mut(&this_); }; +inline z_loaned_reply_err_t* z_loan_mut(z_owned_reply_err_t& this_) { return z_reply_err_loan_mut(&this_); }; +inline z_loaned_sample_t* z_loan_mut(z_owned_sample_t& this_) { return z_sample_loan_mut(&this_); }; inline z_loaned_session_t* z_loan_mut(z_owned_session_t& this_) { return z_session_loan_mut(&this_); }; inline z_loaned_shm_t* z_loan_mut(z_owned_shm_t& this_) { return z_shm_loan_mut(&this_); }; inline z_loaned_shm_mut_t* z_loan_mut(z_owned_shm_mut_t& this_) { return z_shm_mut_loan_mut(&this_); }; diff --git a/src/commons.rs b/src/commons.rs index 4bb53015c..a932d7d1c 100644 --- a/src/commons.rs +++ b/src/commons.rs @@ -118,7 +118,7 @@ pub extern "C" fn z_sample_encoding(this_: &z_loaned_sample_t) -> &z_loaned_enco pub extern "C" fn z_sample_payload(this_: &z_loaned_sample_t) -> &z_loaned_bytes_t { this_.as_rust_type_ref().payload().as_loaned_c_type_ref() } -/// Returns the sample payload data. +/// Returns the mutable sample payload data. #[no_mangle] pub extern "C" fn z_sample_payload_mut(this_: &mut z_loaned_sample_t) -> &mut z_loaned_bytes_t { this_ @@ -218,6 +218,17 @@ pub unsafe extern "C" fn z_sample_loan(this_: &z_owned_sample_t) -> &z_loaned_sa .as_loaned_c_type_ref() } +/// Mutably borrows sample. +#[no_mangle] +#[allow(clippy::missing_safety_doc)] +pub unsafe extern "C" fn z_sample_loan_mut(this_: &mut z_owned_sample_t) -> &mut z_loaned_sample_t { + this_ + .as_rust_type_mut() + .as_mut() + .unwrap_unchecked() + .as_loaned_c_type_mut() +} + /// Frees the memory and invalidates the sample, resetting it to a gravestone state. #[no_mangle] pub extern "C" fn z_sample_drop(this_: &mut z_moved_sample_t) { diff --git a/src/get.rs b/src/get.rs index 4ccffc41b..25b817d0d 100644 --- a/src/get.rs +++ b/src/get.rs @@ -60,6 +60,17 @@ pub extern "C" fn z_reply_err_payload(this_: &z_loaned_reply_err_t) -> &z_loaned this_.as_rust_type_ref().payload().as_loaned_c_type_ref() } +/// Returns mutable reply error payload. +#[no_mangle] +pub extern "C" fn z_reply_err_payload_mut( + this_: &mut z_loaned_reply_err_t, +) -> &mut z_loaned_bytes_t { + this_ + .as_rust_type_mut() + .payload_mut() + .as_loaned_c_type_mut() +} + /// Returns reply error encoding. #[no_mangle] pub extern "C" fn z_reply_err_encoding(this_: &z_loaned_reply_err_t) -> &z_loaned_encoding_t { @@ -72,6 +83,14 @@ pub extern "C" fn z_reply_err_loan(this_: &z_owned_reply_err_t) -> &z_loaned_rep this_.as_rust_type_ref().as_loaned_c_type_ref() } +/// Mutably borrows reply error. +#[no_mangle] +pub extern "C" fn z_reply_err_loan_mut( + this_: &mut z_owned_reply_err_t, +) -> &mut z_loaned_reply_err_t { + this_.as_rust_type_mut().as_loaned_c_type_mut() +} + /// Frees the memory and resets the reply error it to its default value. #[no_mangle] pub extern "C" fn z_reply_err_drop(this_: &mut z_moved_reply_err_t) { diff --git a/src/queryable.rs b/src/queryable.rs index 4799d3583..d4dd98cae 100644 --- a/src/queryable.rs +++ b/src/queryable.rs @@ -82,6 +82,18 @@ pub unsafe extern "C" fn z_query_loan(this_: &'static z_owned_query_t) -> &z_loa .unwrap_unchecked() .as_loaned_c_type_ref() } +/// Mutably borrows the query. +#[no_mangle] +#[allow(clippy::missing_safety_doc)] +pub unsafe extern "C" fn z_query_loan_mut( + this_: &'static mut z_owned_query_t, +) -> &mut z_loaned_query_t { + this_ + .as_rust_type_mut() + .as_mut() + .unwrap_unchecked() + .as_loaned_c_type_mut() +} /// Destroys the query resetting it to its gravestone value. #[no_mangle] pub extern "C" fn z_query_drop(this_: &mut z_moved_query_t) { @@ -474,6 +486,19 @@ pub extern "C" fn z_query_payload(this_: &z_loaned_query_t) -> Option<&z_loaned_ .map(|v| v.as_loaned_c_type_ref()) } +/// Gets mutable query payload. +/// +/// Returns NULL if query does not contain a payload. +#[no_mangle] +pub extern "C" fn z_query_payload_mut( + this_: &mut z_loaned_query_t, +) -> Option<&mut z_loaned_bytes_t> { + this_ + .as_rust_type_mut() + .payload_mut() + .map(|v| v.as_loaned_c_type_mut()) +} + /// Gets query payload encoding. /// /// Returns NULL if query does not contain an encoding. diff --git a/src/shm/buffer/zshm.rs b/src/shm/buffer/zshm.rs index 82f41e3fb..5d6b4a110 100644 --- a/src/shm/buffer/zshm.rs +++ b/src/shm/buffer/zshm.rs @@ -115,6 +115,7 @@ pub extern "C" fn z_shm_drop(this_: &mut z_moved_shm_t) { /// @warning This API has been marked as unstable: it works as advertised, but it may be changed in a future release. /// @brief Tries to reborrow mutably-borrowed ZShm slice as borrowed ZShmMut slice. +/// @return borrowed ZShmMut slice in case of success, NULL otherwise #[no_mangle] pub extern "C" fn z_shm_try_reloan_mut(this_: &mut z_loaned_shm_t) -> *mut z_loaned_shm_mut_t { let this = this_.as_rust_type_mut();