From 6d179141009ad07596ae3f435c95d444416a1b92 Mon Sep 17 00:00:00 2001 From: tetter <117813816+tetter27@users.noreply.github.com> Date: Thu, 31 Oct 2024 12:56:08 +0900 Subject: [PATCH 1/5] add: text about draft ver (#126) --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index 346a4980..9c5a93f9 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,13 @@ Both server and browser client are written in Rust. +> [!NOTE] +> draft-ietf-moq-transport-06 prototype is [here](https://github.com/nttcom/moq-wasm/tree/draft-06) + ## Implementation +Supported version: draft-ietf-moq-transport-01 + - [x] Send/Recv SETUP message - [x] Send/Recv ANNOUNCE message - [x] Send/Recv SUBSCRIBE message From 0d36cd056654aecd3126cae3a1812fc91b83c31d Mon Sep 17 00:00:00 2001 From: yuki-uchida Date: Tue, 10 Dec 2024 14:00:31 +0900 Subject: [PATCH 2/5] WIP --- moqt-client-sample/.cargo/config.toml | 3 +++ moqt-client-sample/.vscode/settings.json | 20 ++++++++++++++++++++ moqt-client-sample/config.toml | 2 -- 3 files changed, 23 insertions(+), 2 deletions(-) create mode 100644 moqt-client-sample/.cargo/config.toml create mode 100644 moqt-client-sample/.vscode/settings.json delete mode 100644 moqt-client-sample/config.toml diff --git a/moqt-client-sample/.cargo/config.toml b/moqt-client-sample/.cargo/config.toml new file mode 100644 index 00000000..33b46522 --- /dev/null +++ b/moqt-client-sample/.cargo/config.toml @@ -0,0 +1,3 @@ +[build] +target = "wasm32-unknown-unknown" +rustflags = ["--cfg=web_sys_unstable_apis"] \ No newline at end of file diff --git a/moqt-client-sample/.vscode/settings.json b/moqt-client-sample/.vscode/settings.json new file mode 100644 index 00000000..36131826 --- /dev/null +++ b/moqt-client-sample/.vscode/settings.json @@ -0,0 +1,20 @@ +{ + "editor.formatOnSave": true, + "[rust]": { + "editor.defaultFormatter": "rust-lang.rust-analyzer", + "editor.inlayHints.enabled": "on" + }, + "rust-analyzer.checkOnSave": true, + "rust-analyzer.check.command": "clippy", + "rust-analyzer.cargo.extraEnv": { + "RUSTFLAGS": "--cfg=web_sys_unstable_apis" + } + // "rust-analyzer.cargo.target": "wasm32-unknown-unknown", + // "rust-analyzer.cargo.features": ["web_sys_unstable_apis"], + // "rust-analyzer.cargo.features": ["web-sys/WebTransport"] + // "rust-analyzer.cargo.features": ["web_sys_unstable_apis"] + // "rust-analyzer.cargo.features": ["+wasm"] + // "rust-analyzer.cargo.cfgs": { + // "web_sys_unstable_apis": "" + // } +} diff --git a/moqt-client-sample/config.toml b/moqt-client-sample/config.toml deleted file mode 100644 index 2296f55b..00000000 --- a/moqt-client-sample/config.toml +++ /dev/null @@ -1,2 +0,0 @@ -[build] -rustflags = "--cfg web_sys_unstable_apis" From 9c444087fb69ff940433697bd29a0bd7b1aec9b2 Mon Sep 17 00:00:00 2001 From: yuki-uchida Date: Thu, 12 Dec 2024 13:44:54 +0900 Subject: [PATCH 3/5] enable rust-analyzer for cfg --- .vscode/settings.json | 10 +++++----- moqt-client-sample/.cargo/config.toml | 3 --- moqt-client-sample/Cargo.toml | 3 --- 3 files changed, 5 insertions(+), 11 deletions(-) delete mode 100644 moqt-client-sample/.cargo/config.toml diff --git a/.vscode/settings.json b/.vscode/settings.json index 6ecc47bb..de6dcb38 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -5,11 +5,11 @@ }, "[rust]": { "editor.defaultFormatter": "rust-lang.rust-analyzer", - "editor.inlayHints.enabled": "off" - }, - "rust-analyzer.cargo.cfgs": { - "web_sys_unstable_apis": "" + "editor.inlayHints.enabled": "on" }, "rust-analyzer.checkOnSave": true, - "rust-analyzer.check.command": "clippy" + "rust-analyzer.check.command": "clippy", + "rust-analyzer.cargo.extraEnv": { + "RUSTFLAGS": "--cfg web_sys_unstable_apis" + } } diff --git a/moqt-client-sample/.cargo/config.toml b/moqt-client-sample/.cargo/config.toml deleted file mode 100644 index 33b46522..00000000 --- a/moqt-client-sample/.cargo/config.toml +++ /dev/null @@ -1,3 +0,0 @@ -[build] -target = "wasm32-unknown-unknown" -rustflags = ["--cfg=web_sys_unstable_apis"] \ No newline at end of file diff --git a/moqt-client-sample/Cargo.toml b/moqt-client-sample/Cargo.toml index 78f4e8bb..4951ec92 100644 --- a/moqt-client-sample/Cargo.toml +++ b/moqt-client-sample/Cargo.toml @@ -35,6 +35,3 @@ features = [ 'ReadableStream', 'WritableStream', ] - -[lints.rust] -unexpected_cfgs = { level = "warn", check-cfg = ['cfg(web_sys_unstable_apis)'] } From c300e94f58ae5214e9b50b27b8da7841157de676 Mon Sep 17 00:00:00 2001 From: yuki-uchida Date: Thu, 12 Dec 2024 13:46:36 +0900 Subject: [PATCH 4/5] delete unnecessary settings --- moqt-client-sample/.vscode/settings.json | 20 -------------------- 1 file changed, 20 deletions(-) delete mode 100644 moqt-client-sample/.vscode/settings.json diff --git a/moqt-client-sample/.vscode/settings.json b/moqt-client-sample/.vscode/settings.json deleted file mode 100644 index 36131826..00000000 --- a/moqt-client-sample/.vscode/settings.json +++ /dev/null @@ -1,20 +0,0 @@ -{ - "editor.formatOnSave": true, - "[rust]": { - "editor.defaultFormatter": "rust-lang.rust-analyzer", - "editor.inlayHints.enabled": "on" - }, - "rust-analyzer.checkOnSave": true, - "rust-analyzer.check.command": "clippy", - "rust-analyzer.cargo.extraEnv": { - "RUSTFLAGS": "--cfg=web_sys_unstable_apis" - } - // "rust-analyzer.cargo.target": "wasm32-unknown-unknown", - // "rust-analyzer.cargo.features": ["web_sys_unstable_apis"], - // "rust-analyzer.cargo.features": ["web-sys/WebTransport"] - // "rust-analyzer.cargo.features": ["web_sys_unstable_apis"] - // "rust-analyzer.cargo.features": ["+wasm"] - // "rust-analyzer.cargo.cfgs": { - // "web_sys_unstable_apis": "" - // } -} From 2234dcaca758a62ee897706e16020244eb9f758d Mon Sep 17 00:00:00 2001 From: yuki-uchida Date: Thu, 12 Dec 2024 14:03:14 +0900 Subject: [PATCH 5/5] Enable cfg in CI build --- moqt-client-sample/Cargo.toml | 3 +++ moqt-client-sample/src/lib.rs | 17 ++--------------- 2 files changed, 5 insertions(+), 15 deletions(-) diff --git a/moqt-client-sample/Cargo.toml b/moqt-client-sample/Cargo.toml index 4951ec92..49521893 100644 --- a/moqt-client-sample/Cargo.toml +++ b/moqt-client-sample/Cargo.toml @@ -35,3 +35,6 @@ features = [ 'ReadableStream', 'WritableStream', ] + +[lints.rust] +unexpected_cfgs = { level = "warn", check-cfg = ['cfg(web_sys_unstable_apis)'] } \ No newline at end of file diff --git a/moqt-client-sample/src/lib.rs b/moqt-client-sample/src/lib.rs index 73328827..5cf205f2 100644 --- a/moqt-client-sample/src/lib.rs +++ b/moqt-client-sample/src/lib.rs @@ -671,22 +671,9 @@ impl MOQTClient { } #[wasm_bindgen(js_name = sendUnsubscribeMessage)] - pub async fn send_unsubscribe_message( - &self, - track_namespace: js_sys::Array, - track_name: String, - ) -> Result { + pub async fn send_unsubscribe_message(&self, subscribe_id: u64) -> Result { if let Some(writer) = &*self.control_stream_writer.borrow() { - let length = track_namespace.length(); - let mut track_namespace_vec: Vec = Vec::with_capacity(length as usize); - for i in 0..length { - let js_element = track_namespace.get(i); - let string_element = js_element - .as_string() - .ok_or_else(|| JsValue::from_str("Array contains a non-string element"))?; - track_namespace_vec.push(string_element); - } - let unsubscribe_message = Unsubscribe::new(track_namespace_vec, track_name); + let unsubscribe_message = Unsubscribe::new(subscribe_id); let mut unsubscribe_message_buf = BytesMut::new(); unsubscribe_message.packetize(&mut unsubscribe_message_buf);