[INFO] fetching crate myrtio-mqtt 0.3.0...
[INFO] testing myrtio-mqtt-0.3.0 against 1.99.0-beta.8+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate myrtio-mqtt 0.3.0 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate myrtio-mqtt 0.3.0
[INFO] removed 0 missing examples
[INFO] finished tweaking crates.io crate myrtio-mqtt 0.3.0
[INFO] tweaked toml for crates.io crate myrtio-mqtt 0.3.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate myrtio-mqtt 0.3.0 on toolchain 1.99.0-beta.8
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate myrtio-mqtt 0.3.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.99.0-beta.8" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded esp-println v0.16.1
[INFO] [stderr]   Downloaded embedded-io-async v0.6.1
[INFO] [stderr]   Downloaded embassy-time v0.5.0
[INFO] [stderr]   Downloaded managed v0.8.0
[INFO] [stderr]   Downloaded embedded-nal v0.9.0
[INFO] [stderr]   Downloaded embassy-time-driver v0.2.1
[INFO] [stderr]   Downloaded heapless v0.9.2
[INFO] [stderr]   Downloaded embassy-net-driver v0.2.0
[INFO] [stderr]   Downloaded defmt v0.3.100
[INFO] [stderr]   Downloaded embedded-nal-async v0.8.0
[INFO] [stderr]   Downloaded defmt-macros v1.0.1
[INFO] [stderr]   Downloaded defmt v1.0.1
[INFO] [stderr]   Downloaded embassy-sync v0.7.2
[INFO] [stderr]   Downloaded embassy-net v0.7.1
[INFO] [stderr]   Downloaded esp-metadata-generated v0.3.0
[INFO] [stderr]   Downloaded smoltcp v0.12.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:77db811e55d90add9212f6832c23229e3de5f1c1f9905e8cb07319ea15df73ac" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc
[INFO] running `Command { std: "docker" "start" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling nb v1.1.0
[INFO] [stderr]    Compiling byteorder v1.5.0
[INFO] [stderr]    Compiling embedded-io-async v0.6.1
[INFO] [stderr]    Compiling heapless v0.8.0
[INFO] [stderr]    Compiling embassy-time-driver v0.2.1
[INFO] [stderr]    Compiling embedded-io v0.6.1
[INFO] [stderr]    Compiling litrs v1.0.0
[INFO] [stderr]    Compiling embedded-hal-async v1.0.0
[INFO] [stderr]    Compiling embedded-hal v1.0.0
[INFO] [stderr]    Compiling embassy-sync v0.7.2
[INFO] [stderr]    Compiling critical-section v1.2.0
[INFO] [stderr]    Compiling void v1.0.2
[INFO] [stderr]    Compiling smoltcp v0.12.0
[INFO] [stderr]    Compiling heapless v0.9.2
[INFO] [stderr]    Compiling futures-task v0.3.31
[INFO] [stderr]    Compiling managed v0.8.0
[INFO] [stderr]    Compiling nb v0.1.3
[INFO] [stderr]    Compiling embedded-nal v0.9.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling futures-util v0.3.31
[INFO] [stderr]    Compiling futures-channel v0.3.31
[INFO] [stderr]    Compiling hash32 v0.3.1
[INFO] [stderr]    Compiling embedded-hal v0.2.7
[INFO] [stderr]    Compiling futures-io v0.3.31
[INFO] [stderr]    Compiling embassy-net-driver v0.2.0
[INFO] [stderr]    Compiling embassy-futures v0.1.2
[INFO] [stderr]    Compiling document-features v0.2.12
[INFO] [stderr]    Compiling embedded-nal-async v0.8.0
[INFO] [stderr]    Compiling embassy-time v0.5.0
[INFO] [stderr]    Compiling futures v0.3.31
[INFO] [stderr]    Compiling embassy-net v0.7.1
[INFO] [stderr]    Compiling myrtio-mqtt v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 5.47s
[INFO] running `Command { std: "docker" "inspect" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-w" "/opt/rustwide/workdir" "--user" "0:0" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc" "/opt/rustwide/cargo-home/bin/cargo" "+1.99.0-beta.8" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling myrtio-mqtt v0.3.0 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0432]: unresolved import `myrtio_mqtt::runtime::Context`
[INFO] [stdout]   --> examples/const_topics_module.rs:26:15
[INFO] [stdout]    |
[INFO] [stdout] 26 |     runtime::{Context, MqttModule, TopicRegistry},
[INFO] [stdout]    |               ^^^^^^^ no `Context` in `runtime`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this struct instead:
[INFO] [stdout]            core::task::Context
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `#[panic_handler]` function required, but not found
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: trait takes 0 lifetime arguments but 1 lifetime argument was supplied
[INFO] [stdout]    --> examples/const_topics_module.rs:70:61
[INFO] [stdout]     |
[INFO] [stdout]  70 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]     |                                                             ^^^^^^^^^^ -- help: remove the lifetime argument
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             expected 0 lifetime arguments
[INFO] [stdout]     |
[INFO] [stdout] note: trait defined here, with 0 lifetime parameters
[INFO] [stdout]    --> src/runtime/traits.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub trait MqttModule {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: trait takes 0 generic arguments but 3 generic arguments were supplied
[INFO] [stdout]    --> examples/const_topics_module.rs:70:61
[INFO] [stdout]     |
[INFO] [stdout]  70 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]     |                                                             ^^^^^^^^^^      ---------------------- help: remove the unnecessary generic arguments
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             expected 0 generic arguments
[INFO] [stdout]     |
[INFO] [stdout] note: trait defined here, with 0 generic parameters
[INFO] [stdout]    --> src/runtime/traits.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub trait MqttModule {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: struct takes 0 lifetime arguments but 1 lifetime argument was supplied
[INFO] [stdout]   --> examples/const_topics_module.rs:79:50
[INFO] [stdout]    |
[INFO] [stdout] 79 |     fn register<'reg>(&'reg self, registry: &mut TopicRegistry<'reg, MAX_TOPICS>) {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^ ---- help: remove the lifetime argument
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  expected 0 lifetime arguments
[INFO] [stdout]    |
[INFO] [stdout] note: struct defined here, with 0 lifetime parameters
[INFO] [stdout]   --> src/runtime/registry.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct TopicRegistry<const MAX_TOPICS: usize> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0207]: the type parameter `T` is not constrained by the impl trait, self type, or predicates
[INFO] [stdout]   --> examples/const_topics_module.rs:70:10
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]    |          ^ unconstrained type parameter
[INFO] [stdout]    |
[INFO] [stdout] help: use the type parameter `T` in the `LightModule` type and use it in the type definition
[INFO] [stdout]    |
[INFO] [stdout] 45 ~ pub struct LightModule<T> {
[INFO] [stdout] 46 |     /// Flag indicating state changed and needs publishing
[INFO] [stdout] ...
[INFO] [stdout] 70 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout] 71 ~     for LightModule<T>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0207]: the const parameter `MAX_TOPICS` is not constrained by the impl trait, self type, or predicates
[INFO] [stdout]   --> examples/const_topics_module.rs:70:13
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unconstrained const parameter
[INFO] [stdout]    |
[INFO] [stdout]    = note: expressions using a const parameter must map each value to a distinct output value
[INFO] [stdout]    = note: proving the result of expressions other than the parameter are unique is not supported
[INFO] [stdout] help: use the type parameter `MAX_TOPICS` in the `LightModule` type and use it in the type definition
[INFO] [stdout]    |
[INFO] [stdout] 45 ~ pub struct LightModule<MAX_TOPICS> {
[INFO] [stdout] 46 |     /// Flag indicating state changed and needs publishing
[INFO] [stdout] ...
[INFO] [stdout] 70 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout] 71 ~     for LightModule<MAX_TOPICS>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0207]: the const parameter `BUF_SIZE` is not constrained by the impl trait, self type, or predicates
[INFO] [stdout]   --> examples/const_topics_module.rs:70:38
[INFO] [stdout]    |
[INFO] [stdout] 70 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^ unconstrained const parameter
[INFO] [stdout]    |
[INFO] [stdout]    = note: expressions using a const parameter must map each value to a distinct output value
[INFO] [stdout]    = note: proving the result of expressions other than the parameter are unique is not supported
[INFO] [stdout] help: use the type parameter `BUF_SIZE` in the `LightModule` type and use it in the type definition
[INFO] [stdout]    |
[INFO] [stdout] 45 ~ pub struct LightModule<BUF_SIZE> {
[INFO] [stdout] 46 |     /// Flag indicating state changed and needs publishing
[INFO] [stdout] ...
[INFO] [stdout] 70 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout] 71 ~     for LightModule<BUF_SIZE>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0432]: unresolved import `myrtio_mqtt::runtime::Context`
[INFO] [stdout]   --> examples/dynamic_topics_module.rs:31:15
[INFO] [stdout]    |
[INFO] [stdout] 31 |     runtime::{Context, MqttModule, TopicRegistry},
[INFO] [stdout]    |               ^^^^^^^ no `Context` in `runtime`
[INFO] [stdout]    |
[INFO] [stdout]    = help: consider importing this struct instead:
[INFO] [stdout]            core::task::Context
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: `#[panic_handler]` function required, but not found
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: unwinding panics are not supported without std
[INFO] [stdout]   |
[INFO] [stdout]   = help: using nightly cargo, use -Zbuild-std with panic="abort" to avoid unwinding
[INFO] [stdout]   = note: since the core library is usually precompiled with panic="unwind", rebuilding your crate with panic="abort" may not be enough to fix the problem
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0107, E0207, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: trait takes 0 lifetime arguments but 1 lifetime argument was supplied
[INFO] [stdout]    --> examples/dynamic_topics_module.rs:86:61
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]     |                                                             ^^^^^^^^^^ -- help: remove the lifetime argument
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             expected 0 lifetime arguments
[INFO] [stdout]     |
[INFO] [stdout] note: trait defined here, with 0 lifetime parameters
[INFO] [stdout]    --> src/runtime/traits.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub trait MqttModule {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: trait takes 0 generic arguments but 3 generic arguments were supplied
[INFO] [stdout]    --> examples/dynamic_topics_module.rs:86:61
[INFO] [stdout]     |
[INFO] [stdout]  86 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]     |                                                             ^^^^^^^^^^      ---------------------- help: remove the unnecessary generic arguments
[INFO] [stdout]     |                                                             |
[INFO] [stdout]     |                                                             expected 0 generic arguments
[INFO] [stdout]     |
[INFO] [stdout] note: trait defined here, with 0 generic parameters
[INFO] [stdout]    --> src/runtime/traits.rs:131:11
[INFO] [stdout]     |
[INFO] [stdout] 131 | pub trait MqttModule {
[INFO] [stdout]     |           ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0107]: struct takes 0 lifetime arguments but 1 lifetime argument was supplied
[INFO] [stdout]   --> examples/dynamic_topics_module.rs:97:50
[INFO] [stdout]    |
[INFO] [stdout] 97 |     fn register<'reg>(&'reg self, registry: &mut TopicRegistry<'reg, MAX_TOPICS>) {
[INFO] [stdout]    |                                                  ^^^^^^^^^^^^^ ---- help: remove the lifetime argument
[INFO] [stdout]    |                                                  |
[INFO] [stdout]    |                                                  expected 0 lifetime arguments
[INFO] [stdout]    |
[INFO] [stdout] note: struct defined here, with 0 lifetime parameters
[INFO] [stdout]   --> src/runtime/registry.rs:29:12
[INFO] [stdout]    |
[INFO] [stdout] 29 | pub struct TopicRegistry<const MAX_TOPICS: usize> {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0207]: the type parameter `T` is not constrained by the impl trait, self type, or predicates
[INFO] [stdout]   --> examples/dynamic_topics_module.rs:86:10
[INFO] [stdout]    |
[INFO] [stdout] 86 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]    |          ^ unconstrained type parameter
[INFO] [stdout]    |
[INFO] [stdout] help: use the type parameter `T` in the `SensorModule` type and use it in the type definition
[INFO] [stdout]    |
[INFO] [stdout] 43 ~ pub struct SensorModule<T> {
[INFO] [stdout] 44 |     /// Command topic: `{device_id}/sensor/cmd`
[INFO] [stdout] ...
[INFO] [stdout] 86 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout] 87 ~     for SensorModule<T>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0207]: the const parameter `MAX_TOPICS` is not constrained by the impl trait, self type, or predicates
[INFO] [stdout]   --> examples/dynamic_topics_module.rs:86:13
[INFO] [stdout]    |
[INFO] [stdout] 86 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]    |             ^^^^^^^^^^^^^^^^^^^^^^^ unconstrained const parameter
[INFO] [stdout]    |
[INFO] [stdout]    = note: expressions using a const parameter must map each value to a distinct output value
[INFO] [stdout]    = note: proving the result of expressions other than the parameter are unique is not supported
[INFO] [stdout] help: use the type parameter `MAX_TOPICS` in the `SensorModule` type and use it in the type definition
[INFO] [stdout]    |
[INFO] [stdout] 43 ~ pub struct SensorModule<MAX_TOPICS> {
[INFO] [stdout] 44 |     /// Command topic: `{device_id}/sensor/cmd`
[INFO] [stdout] ...
[INFO] [stdout] 86 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout] 87 ~     for SensorModule<MAX_TOPICS>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0207]: the const parameter `BUF_SIZE` is not constrained by the impl trait, self type, or predicates
[INFO] [stdout]   --> examples/dynamic_topics_module.rs:86:38
[INFO] [stdout]    |
[INFO] [stdout] 86 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout]    |                                      ^^^^^^^^^^^^^^^^^^^^^ unconstrained const parameter
[INFO] [stdout]    |
[INFO] [stdout]    = note: expressions using a const parameter must map each value to a distinct output value
[INFO] [stdout]    = note: proving the result of expressions other than the parameter are unique is not supported
[INFO] [stdout] help: use the type parameter `BUF_SIZE` in the `SensorModule` type and use it in the type definition
[INFO] [stdout]    |
[INFO] [stdout] 43 ~ pub struct SensorModule<BUF_SIZE> {
[INFO] [stdout] 44 |     /// Command topic: `{device_id}/sensor/cmd`
[INFO] [stdout] ...
[INFO] [stdout] 86 | impl<'a, T, const MAX_TOPICS: usize, const BUF_SIZE: usize> MqttModule<'a, T, MAX_TOPICS, BUF_SIZE>
[INFO] [stdout] 87 ~     for SensorModule<BUF_SIZE>
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `myrtio-mqtt` (example "const_topics_module") due to 9 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0107, E0207, E0432.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0107`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `myrtio-mqtt` (example "dynamic_topics_module") due to 9 previous errors
[INFO] running `Command { std: "docker" "inspect" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc", kill_on_drop: false }`
[INFO] [stdout] 0b67391db3f60ff05c3fbe7db29364fc40bbd8ccacf4d809fb7ded53165f01fc
