Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 6 additions & 6 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

12 changes: 6 additions & 6 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,7 @@ loom = { version = "0.7.2", features = ["futures"] }
# DNS-SD advertisement and browsing for LAN peer discovery (moq-tokio's `mdns` feature).
# `async` awaits the event channel instead of blocking a thread on it.
mdns-sd = { version = "0.21", features = ["async"] }
moq-audio = { version = "0.0.27", path = "rs/moq-audio", default-features = false }
moq-audio = { version = "0.1.0", path = "rs/moq-audio", default-features = false }
moq-auth = { version = "0.1.0", path = "rs/moq-auth" }
moq-binary = { version = "0.1.0", path = "rs/moq-binary" }
moq-flate = { version = "0.1.3", path = "rs/moq-flate" }
Expand All @@ -154,12 +154,12 @@ moq-noq-udp = "1.3"
# NVENC bindings, forked from ViliamVadocz/nvidia-video-codec-sdk to dlopen the
# driver at runtime. Compiles on any platform (macOS included) but only actually
# used by moq-video on Linux.
moq-nvenc = { version = "0.0.6", path = "rs/moq-nvenc" }
moq-nvenc = { version = "0.1.0", path = "rs/moq-nvenc" }
moq-pattern = { version = "0.1.0", path = "rs/moq-pattern" }
moq-relay = { version = "0.15.1", path = "rs/moq-relay", default-features = false }
moq-rtc = { version = "0.3.1", path = "rs/moq-rtc" }
moq-rtmp = { version = "0.3.1", path = "rs/moq-rtmp" }
moq-sock = { version = "0.0.1", path = "rs/moq-sock" }
moq-sock = { version = "0.1.0", path = "rs/moq-sock" }
moq-srt = { version = "0.3.1", path = "rs/moq-srt" }
moq-stats = { version = "0.2.1", path = "rs/moq-stats" }
moq-tokio = { version = "0.19.12", path = "rs/moq-tokio", default-features = false }
Expand All @@ -168,15 +168,15 @@ moq-tokio = { version = "0.19.12", path = "rs/moq-tokio", default-features = fal
# provide working native plus software defaults when depended on directly.
# VAAPI is opt-in everywhere; its decoder is hardware-validated, while its
# encoder is not yet.
moq-transcode = { version = "0.0.21", path = "rs/moq-transcode", default-features = false }
moq-transcode = { version = "0.1.0", path = "rs/moq-transcode", default-features = false }
# default-features off (the noq backend) so the consumer picks which QUIC
# stack the io_uring path compiles; cargo features are additive, so a default-on
# backend could not be opted out of.
moq-uring = { version = "0.0.2", path = "rs/moq-uring", default-features = false }
# In-tree fork of `v4l` with the videodev2.h bindings checked in, so moq-video's
# `capture` and `v4l2` need no libclang or kernel headers. Linux only; an empty
# stub elsewhere.
moq-v4l = { version = "0.0.1", path = "rs/moq-v4l" }
moq-v4l = { version = "0.1.0", path = "rs/moq-v4l" }
# Standalone crate (moq-dev/vaapi); vendored from cros-libva + cros-codecs.
# dlopen's libva at runtime (no libva-dev at build, no NEEDED libva in the binary).
moq-vaapi = "0.0.4"
Expand All @@ -185,7 +185,7 @@ moq-vaapi = "0.0.4"
# `features = ["capture"]` to a consumer that ships in those bindings pulls the
# whole device graph into every one of them. Codec features are independent of
# that argument, so moq-ffi and libmoq opt NVIDIA, OpenH264, and VAAPI back in.
moq-video = { version = "0.0.27", path = "rs/moq-video", default-features = false }
moq-video = { version = "0.1.0", path = "rs/moq-video", default-features = false }
nix = { version = "0.31.3", features = ["net", "socket", "uio"] }
# Upstream noq-proto, only for iroh's controller factory types.
noq-proto = { version = "1.2", default-features = false }
Expand Down
18 changes: 9 additions & 9 deletions quest/m0/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -15,11 +15,12 @@ dev landed on main as #3793 on 2026-09-20;
[Release](/quest/m0/release.md) names what gates the release that follows.
Published API or wire breaks still land on dev; the quest's Plan says so.

The archive, E2EE, socket, and uring crates are 0.0.1 on main after the dev
merge. Their six API quests gate the release and target main under the 0.0.x
exception. Inspect transitive public exposure before changing a shared symbol:
`moq-tokio` publicly re-exports `moq-sock`'s bind module. Keep that re-export
and its current names.
The archive, E2EE, and uring crates are 0.0.x; socket, audio, video,
transcode, and nvenc are 0.1.x so dependents can take compatible patches. Their
API quests gate the release; a published break to a 0.1.x crate targets dev.
Inspect transitive public exposure before changing a shared symbol: `moq-tokio`
publicly re-exports `moq-sock`'s bind module. Keep that re-export and its
current names.

Keep the useful boundaries: archive owns storage and codecs, E2EE owns
protection rather than catalogs, sock owns runtime-neutral sockets, and uring
Expand All @@ -44,10 +45,9 @@ Their package boundaries are explicit:
- Published `moq-tokio` keeps its worker signatures and `bind` re-export while
adapting internal plumbing. Its root names do not move.

The media crates are also 0.0.x, so their changes target main. Adapt callers in
other packages without breaking their published APIs, C layouts, or wire
formats. Do not bump versions as part of these quests. The media review
found the four crates ready for a separately requested 0.1 release.
The media crates are 0.1.x too, so a published break to them targets dev.
Adapt callers in other packages without breaking their published APIs, C
layouts, or wire formats. Do not bump versions as part of these quests.

Their package boundaries are explicit:

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ session while unused handles are dropped, and prove all serving stops when
the group terminates. Wire the tests into normal or nightly CI.

Public API: no further `moq-tokio` ownership change. The prerequisite may
change `moq-sock`'s 0.0.x API. Wire: no format change. Close #2964 only when
change `moq-sock`'s 0.1.x API. Wire: no format change. Close #2964 only when
both the dev ownership proof and this integration are complete.

## Closes
Expand Down
4 changes: 2 additions & 2 deletions quest/m1/gpu-pool-reservation.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,8 +25,8 @@ then `None`, dropping an unconverted slot frees it, and a failed conversion
does not leak the buffer. Update the `just rs vulkan-cuda` hardware test and
`doc/lib/rs/moq-video.md` inline.

Public API: `moq-video` 0.0.x, breaking for `Converter::convert` callers. Wire:
none.
Public API: `moq-video` 0.1.x, breaking for `Converter::convert` callers, so
it targets dev. Wire: none.

## Related

Expand Down
2 changes: 1 addition & 1 deletion quest/m1/ladder/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ first, so the same number decides what to produce and what to send first;
ranking means on the first mile versus a cluster session before the
controller depends on it.

`moq-transcode` is 0.0.x, so this line lands on main.
`moq-transcode` is 0.1.x, so a published break in this line targets dev.

### Adaptive bands

Expand Down
2 changes: 1 addition & 1 deletion rs/moq-audio/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ authors = ["Luke Curley <kixelated@gmail.com>"]
repository = "https://github.com/moq-dev/moq"
license = "MIT OR Apache-2.0"

version = "0.0.27"
version = "0.1.0"
edition = "2024"
rust-version.workspace = true

Expand Down
2 changes: 1 addition & 1 deletion rs/moq-nvenc/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "moq-nvenc"
version = "0.0.6"
version = "0.1.0"
edition = "2021"
license = "MIT"
rust-version.workspace = true
Expand Down
2 changes: 1 addition & 1 deletion rs/moq-sock/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ authors = ["Luke Curley <kixelated@gmail.com>"]
repository = "https://github.com/moq-dev/moq"
license = "MIT OR Apache-2.0"

version = "0.0.1"
version = "0.1.0"
edition = "2024"
rust-version.workspace = true

Expand Down
2 changes: 1 addition & 1 deletion rs/moq-transcode/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ authors = ["Luke Curley <kixelated@gmail.com>"]
repository = "https://github.com/moq-dev/moq"
license = "MIT OR Apache-2.0"

version = "0.0.21"
version = "0.1.0"
edition = "2024"
rust-version.workspace = true

Expand Down
2 changes: 1 addition & 1 deletion rs/moq-v4l/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = "moq-v4l"
version = "0.0.1"
version = "0.1.0"
edition = "2021"
license = "MIT"
rust-version.workspace = true
Expand Down
2 changes: 1 addition & 1 deletion rs/moq-video/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ authors = ["Luke Curley <kixelated@gmail.com>"]
repository = "https://github.com/moq-dev/moq"
license = "MIT OR Apache-2.0"

version = "0.0.27"
version = "0.1.0"
edition = "2024"
rust-version.workspace = true

Expand Down
Loading