[INFO] fetching crate jmap-chat-server 0.1.2...
[INFO] checking jmap-chat-server-0.1.2 against 98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3 for pr-160235-1
[INFO] extracting crate jmap-chat-server 0.1.2 into /workspace/builds/worker-5-tc1/source
[INFO] started tweaking crates.io crate jmap-chat-server 0.1.2
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate jmap-chat-server 0.1.2
[INFO] tweaked toml for crates.io crate jmap-chat-server 0.1.2 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] validating manifest of crates.io crate jmap-chat-server 0.1.2 on toolchain 98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate jmap-chat-server 0.1.2 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" "+98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:54:1
[INFO] [stderr]    |
[INFO] [stderr] 54 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `jmap-chat-server` (manifest) generated 1 warning
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded jmap-chat-server v0.1.1
[INFO] [stderr]   Downloaded jmap-server v0.1.3
[INFO] [stderr]   Downloaded jmap-types v0.1.2
[INFO] [stderr]   Downloaded jmap-chat-types v0.1.2
[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:8683fc1fc2eb5c9ac98e0d076ab094b2ffac7f99da555d2b6a2e27f346de2ec7" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb
[INFO] running `Command { std: "docker" "start" "3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb", 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" "3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb" "/opt/rustwide/cargo-home/bin/cargo" "+98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb", 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=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb" "/opt/rustwide/cargo-home/bin/cargo" "+98fd715edd3a0a5aa8f2041d7e20a3143b0fc0d3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: explicit `package.readme` can be inferred
[INFO] [stderr]   --> Cargo.toml:54:1
[INFO] [stderr]    |
[INFO] [stderr] 54 | readme = "README.md"
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::manual_readme` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.readme`
[INFO] [stderr] warning: `jmap-chat-server` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]     Checking memchr v2.8.0
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]     Checking pin-project-lite v0.2.17
[INFO] [stderr]     Checking bytes v1.11.1
[INFO] [stderr]     Checking http v1.4.0
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]     Checking tokio v1.52.1
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]     Checking serde v1.0.228
[INFO] [stderr]     Checking jmap-types v0.1.2
[INFO] [stderr]     Checking jmap-chat-types v0.1.2
[INFO] [stderr]     Checking jmap-server v0.1.3
[INFO] [stderr]     Checking jmap-chat-server v0.1.1
[INFO] [stderr]     Checking jmap-chat-server v0.1.2 (/opt/rustwide/workdir)
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/memory.rs:618:13
[INFO] [stdout]     |
[INFO] [stdout] 616 |         Ok(QueryResult::new(
[INFO] [stdout]     |            ---------------- arguments to this function are incorrect
[INFO] [stdout] 617 |             ids,
[INFO] [stdout] 618 |             start as i64,
[INFO] [stdout]     |             ^^^^^^^^^^^^ expected `u64`, found `i64`
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-server-0.1.3/src/backend.rs:768:12
[INFO] [stdout]     |
[INFO] [stdout] 768 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: you can convert an `i64` to a `u64` and panic if the converted value doesn't fit
[INFO] [stdout]     |
[INFO] [stdout] 618 |             (start as i64).try_into().unwrap(),
[INFO] [stdout]     |             +            +++++++++++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/ban.rs:142:52
[INFO] [stdout]     |
[INFO] [stdout] 142 |             let created_at = UTCDate::from(now_str.as_str());
[INFO] [stdout]     |                                                    ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/chat.rs:248:54
[INFO] [stdout]     |
[INFO] [stdout] 248 |             let now: UTCDate = UTCDate::from(now_str.as_str());
[INFO] [stdout]     |                                                      ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/emoji.rs:351:54
[INFO] [stdout]     |
[INFO] [stdout] 351 |             let now: UTCDate = UTCDate::from(now_str.as_str());
[INFO] [stdout]     |                                                      ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/invite.rs:194:54
[INFO] [stdout]     |
[INFO] [stdout] 194 |             let now: UTCDate = UTCDate::from(now_str.as_str());
[INFO] [stdout]     |                                                      ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/message.rs:408:40
[INFO] [stdout]     |
[INFO] [stdout] 408 |                 if !iso8601_before(now.as_str(), expires_at.as_ref()) {
[INFO] [stdout]     |                                        ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/message.rs:444:62
[INFO] [stdout]     |
[INFO] [stdout] 444 |             let received_at: UTCDate = UTCDate::from(now_str.as_str());
[INFO] [stdout]     |                                                              ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 9 arguments but 13 arguments were supplied
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/message.rs:446:27
[INFO] [stdout]     |
[INFO] [stdout] 446 |             let mut msg = Message::new(
[INFO] [stdout]     |                           ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 453 |                 vec![],
[INFO] [stdout]     |                 ------ unexpected argument #7 of type `Vec<_>`
[INFO] [stdout] 454 |                 vec![],
[INFO] [stdout]     |                 ------ unexpected argument #8 of type `Vec<_>`
[INFO] [stdout] 455 |                 vec![],
[INFO] [stdout]     |                 ------ unexpected argument #9 of type `Vec<_>`
[INFO] [stdout] 456 |                 std::collections::HashMap::new(),
[INFO] [stdout]     |                 -------------------------------- unexpected argument #10 of type `HashMap<_, _>`
[INFO] [stdout]     |
[INFO] [stdout] note: associated function defined here
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-types-0.1.2/src/message.rs:564:12
[INFO] [stdout]     |
[INFO] [stdout] 564 |     pub fn new(
[INFO] [stdout]     |            ^^^
[INFO] [stdout] help: remove the extra arguments
[INFO] [stdout]     |
[INFO] [stdout] 452 -                 body_type,
[INFO] [stdout] 453 -                 vec![],
[INFO] [stdout] 454 -                 vec![],
[INFO] [stdout] 455 -                 vec![],
[INFO] [stdout] 456 -                 std::collections::HashMap::new(),
[INFO] [stdout] 452 +                 body_type,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/space.rs:825:54
[INFO] [stdout]     |
[INFO] [stdout] 825 |             let now: UTCDate = UTCDate::from(now_str.as_str());
[INFO] [stdout]     |                                                      ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/space.rs:1321:44
[INFO] [stdout]      |
[INFO] [stdout] 1321 |                     if !iso8601_before(now.as_str(), expires_at.as_ref()) {
[INFO] [stdout]      |                                            ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `as_str` found for struct `UTCDate` in the current scope
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/space.rs:1476:87
[INFO] [stdout]      |
[INFO] [stdout] 1476 |                         && m.get("joinedAt").and_then(|v| v.as_str()) == Some(now_str.as_str())
[INFO] [stdout]      |                                                                                       ^^^^^^ method not found in `UTCDate`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/memory.rs:1753:71
[INFO] [stdout]      |
[INFO] [stdout] 1753 |     chat_obj.insert("createdAt".to_owned(), serde_json::Value::String(now));
[INFO] [stdout]      |                                             ------------------------- ^^^ expected `String`, found `UTCDate`
[INFO] [stdout]      |                                             |
[INFO] [stdout]      |                                             arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.149/src/value/mod.rs:151:5
[INFO] [stdout]      |
[INFO] [stdout]  151 |     String(String),
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]      |
[INFO] [stdout] 1753 |     chat_obj.insert("createdAt".to_owned(), serde_json::Value::String(now.to_string()));
[INFO] [stdout]      |                                                                          ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0769]: tuple variant `SpacePatchOp::AddMember` written as struct variant
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/memory.rs:2361:9
[INFO] [stdout]      |
[INFO] [stdout] 2361 |         SpacePatchOp::AddMember { user_id, role_ids } => (user_id, role_ids),
[INFO] [stdout]      |         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      |
[INFO] [stdout] help: use the tuple variant pattern syntax instead
[INFO] [stdout]      |
[INFO] [stdout] 2361 -         SpacePatchOp::AddMember { user_id, role_ids } => (user_id, role_ids),
[INFO] [stdout] 2361 +         SpacePatchOp::AddMember(_) => (user_id, role_ids),
[INFO] [stdout]      |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0308]: mismatched types
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/memory.rs:2434:35
[INFO] [stdout]      |
[INFO] [stdout] 2434 |         serde_json::Value::String(now_utc_string()),
[INFO] [stdout]      |         ------------------------- ^^^^^^^^^^^^^^^^ expected `String`, found `UTCDate`
[INFO] [stdout]      |         |
[INFO] [stdout]      |         arguments to this enum variant are incorrect
[INFO] [stdout]      |
[INFO] [stdout] note: tuple variant defined here
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serde_json-1.0.149/src/value/mod.rs:151:5
[INFO] [stdout]      |
[INFO] [stdout]  151 |     String(String),
[INFO] [stdout]      |     ^^^^^^
[INFO] [stdout] help: try using a conversion method
[INFO] [stdout]      |
[INFO] [stdout] 2434 |         serde_json::Value::String(now_utc_string().to_string()),
[INFO] [stdout]      |                                                   ++++++++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0026]: variant `AddMember` does not have a field named `role_ids`
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/memory.rs:2735:43
[INFO] [stdout]      |
[INFO] [stdout] 2735 |                 SpacePatchOp::AddMember { role_ids, .. } => {
[INFO] [stdout]      |                                           ^^^^^^^^
[INFO] [stdout]      |                                           |
[INFO] [stdout]      |                                           variant `AddMember` does not have this field
[INFO] [stdout]      |                                           help: `AddMember` has a field named `0`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `SpacePatchOp::AddMember` has no field named `user_id`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/space.rs:59:43
[INFO] [stdout]     |
[INFO] [stdout]  59 |                 SpacePatchOp::AddMember { user_id, role_ids }
[INFO] [stdout]     |                                           ^^^^^^^ field does not exist
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-types-0.1.2/src/space_set.rs:437:5
[INFO] [stdout]     |
[INFO] [stdout] 437 |     AddMember(MemberCreate),
[INFO] [stdout]     |     --------- `SpacePatchOp::AddMember` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: `SpacePatchOp::AddMember` is a tuple variant, use the appropriate syntax
[INFO] [stdout]     |
[INFO] [stdout]  59 -                 SpacePatchOp::AddMember { user_id, role_ids }
[INFO] [stdout]  59 +                 SpacePatchOp::AddMember(/* MemberCreate */)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0559]: variant `SpacePatchOp::AddMember` has no field named `role_ids`
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/space.rs:59:52
[INFO] [stdout]     |
[INFO] [stdout]  59 |                 SpacePatchOp::AddMember { user_id, role_ids }
[INFO] [stdout]     |                                                    ^^^^^^^^ field does not exist
[INFO] [stdout]     |
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-types-0.1.2/src/space_set.rs:437:5
[INFO] [stdout]     |
[INFO] [stdout] 437 |     AddMember(MemberCreate),
[INFO] [stdout]     |     --------- `SpacePatchOp::AddMember` defined here
[INFO] [stdout]     |
[INFO] [stdout] help: `SpacePatchOp::AddMember` is a tuple variant, use the appropriate syntax
[INFO] [stdout]     |
[INFO] [stdout]  59 -                 SpacePatchOp::AddMember { user_id, role_ids }
[INFO] [stdout]  59 +                 SpacePatchOp::AddMember(/* MemberCreate */)
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 157 | /     reg!("Chat/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 158 | |         handle_chat_get(&*b, &ctx, a).await
[INFO] [stdout] 159 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 160 | /     reg!("Chat/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 161 | |         handle_chat_changes(&*b, &ctx, a).await
[INFO] [stdout] 162 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 163 | /     reg!("Chat/query", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 164 | |         handle_chat_query(&*b, &ctx, a).await
[INFO] [stdout] 165 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 166 | /     reg!("Chat/queryChanges", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 167 | |         handle_chat_query_changes(&*b, &ctx, a).await
[INFO] [stdout] 168 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 169 | /     reg!("Chat/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 170 | |         handle_chat_set(&*b, &ctx, a).await
[INFO] [stdout] 171 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 172 | /     reg!("Chat/typing", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 173 | |         handle_chat_typing(&*b, &ctx, a).await
[INFO] [stdout] 174 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 177 | /     reg!("Message/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 178 | |         handle_message_get(&*b, &ctx, a).await
[INFO] [stdout] 179 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 180 | /     reg!("Message/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 181 | |         handle_message_changes(&*b, &ctx, a).await
[INFO] [stdout] 182 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 183 | /     reg!("Message/query", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 184 | |         handle_message_query(&*b, &ctx, a).await
[INFO] [stdout] 185 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 186 | /     reg!("Message/queryChanges", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 187 | |         handle_message_query_changes(&*b, &ctx, a).await
[INFO] [stdout] 188 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 189 | /     reg!("Message/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 190 | |         handle_message_set(&*b, &ctx, a).await
[INFO] [stdout] 191 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 194 | /     reg!("Space/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 195 | |         handle_space_get(&*b, &ctx, a).await
[INFO] [stdout] 196 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 197 | /     reg!("Space/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 198 | |         handle_space_changes(&*b, &ctx, a).await
[INFO] [stdout] 199 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 200 | /     reg!("Space/query", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 201 | |         handle_space_query(&*b, &ctx, a).await
[INFO] [stdout] 202 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 203 | /     reg!("Space/queryChanges", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 204 | |         handle_space_query_changes(&*b, &ctx, a).await
[INFO] [stdout] 205 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 206 | /     reg!("Space/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 207 | |         handle_space_set(&*b, &ctx, a).await
[INFO] [stdout] 208 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 209 | /     reg!("Space/join", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 210 | |         handle_space_join(&*b, &ctx, a).await
[INFO] [stdout] 211 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 214 | /     reg!("ChatContact/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 215 | |         handle_contact_get(&*b, &ctx, a).await
[INFO] [stdout] 216 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 217 | /     reg!("ChatContact/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 218 | |         handle_contact_changes(&*b, &ctx, a).await
[INFO] [stdout] 219 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 220 | /     reg!("ChatContact/query", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 221 | |         handle_contact_query(&*b, &ctx, a).await
[INFO] [stdout] 222 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 223 | /     reg!("ChatContact/queryChanges", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 224 | |         handle_contact_query_changes(&*b, &ctx, a).await
[INFO] [stdout] 225 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 226 | /     reg!("ChatContact/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 227 | |         handle_contact_set(&*b, &ctx, a).await
[INFO] [stdout] 228 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 231 | /     reg!("ReadPosition/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 232 | |         handle_position_get(&*b, &ctx, a).await
[INFO] [stdout] 233 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 234 | /     reg!("ReadPosition/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 235 | |         handle_position_changes(&*b, &ctx, a).await
[INFO] [stdout] 236 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 237 | /     reg!("ReadPosition/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 238 | |         handle_position_set(&*b, &ctx, a).await
[INFO] [stdout] 239 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 242 | /     reg!("SpaceInvite/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 243 | |         handle_invite_get(&*b, &ctx, a).await
[INFO] [stdout] 244 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 245 | /     reg!("SpaceInvite/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 246 | |         handle_invite_changes(&*b, &ctx, a).await
[INFO] [stdout] 247 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 248 | /     reg!("SpaceInvite/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 249 | |         handle_invite_set(&*b, &ctx, a).await
[INFO] [stdout] 250 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 253 | /     reg!("SpaceBan/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 254 | |         handle_ban_get(&*b, &ctx, a).await
[INFO] [stdout] 255 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 256 | /     reg!("SpaceBan/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 257 | |         handle_ban_changes(&*b, &ctx, a).await
[INFO] [stdout] 258 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 259 | /     reg!("SpaceBan/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 260 | |         handle_ban_set(&*b, &ctx, a).await
[INFO] [stdout] 261 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 264 | /     reg!("CustomEmoji/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 265 | |         handle_emoji_get(&*b, &ctx, a).await
[INFO] [stdout] 266 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 267 | /     reg!("CustomEmoji/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 268 | |         handle_emoji_changes(&*b, &ctx, a).await
[INFO] [stdout] 269 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 270 | /     reg!("CustomEmoji/query", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 271 | |         handle_emoji_query(&*b, &ctx, a).await
[INFO] [stdout] 272 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 273 | /     reg!("CustomEmoji/queryChanges", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 274 | |         handle_emoji_query_changes(&*b, &ctx, a).await
[INFO] [stdout] 275 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 276 | /     reg!("CustomEmoji/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 277 | |         handle_emoji_set(&*b, &ctx, a).await
[INFO] [stdout] 278 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 281 | /     reg!("PresenceStatus/get", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 282 | |         handle_presence_get(&*b, &ctx, a).await
[INFO] [stdout] 283 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 284 | /     reg!("PresenceStatus/changes", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 285 | |         handle_presence_changes(&*b, &ctx, a).await
[INFO] [stdout] 286 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0639]: cannot create non-exhaustive struct using struct expression
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/jmap-chat-server-0.1.1/src/lib.rs:144:66
[INFO] [stdout]     |
[INFO] [stdout] 144 |               let h: Arc<dyn JmapHandler<B::CallerCtx>> = Arc::new(ClosureHandler {
[INFO] [stdout]     |  __________________________________________________________________^
[INFO] [stdout] 145 | |                 backend: backend_arc,
[INFO] [stdout] 146 | |                 call_fn: Box::new(
[INFO] [stdout] 147 | |                     move |$b: Arc<B>, $ci: String, $a: serde_json::Value, $ctx: B::CallerCtx| {
[INFO] [stdout] ...   |
[INFO] [stdout] 150 | |                 ),
[INFO] [stdout] 151 | |             });
[INFO] [stdout]     | |_____________^
[INFO] [stdout] ...
[INFO] [stdout] 287 | /     reg!("PresenceStatus/set", backend, |b, _ci, a, ctx| {
[INFO] [stdout] 288 | |         handle_presence_set(&*b, &ctx, a).await
[INFO] [stdout] 289 | |     });
[INFO] [stdout]     | |______- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: this error originates in the macro `reg` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0026, E0061, E0308, E0559, E0599, E0639, E0769.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0026`.
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `jmap-chat-server` (lib) due to 56 previous errors
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] running `Command { std: "docker" "inspect" "3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb", kill_on_drop: false }`
[INFO] [stdout] 3f418b9b9eef1899ec6d9d3f6ba60db5797fea62fe2b7e44c3942d14f8ed51cb
