[INFO] fetching crate nexus-rt 2.5.1...
[INFO] testing nexus-rt-2.5.1 against 1.100.0-beta.1+cargoflags=--release for beta-release-1.100-2
[INFO] extracting crate nexus-rt 2.5.1 into /workspace/builds/worker-2-tc2/source
[INFO] started tweaking crates.io crate nexus-rt 2.5.1
[INFO] removed 0 missing examples
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate nexus-rt 2.5.1
[INFO] tweaked toml for crates.io crate nexus-rt 2.5.1 written to /workspace/builds/worker-2-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate nexus-rt 2.5.1 on toolchain 1.100.0-beta.1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate crates.io crate nexus-rt 2.5.1 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.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc2/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] 5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a
[INFO] running `Command { std: "docker" "start" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a", 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" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a", 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" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling rustc-hash v2.1.1
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]    Compiling nexus-rt-derive v1.2.1
[INFO] [stderr]    Compiling nexus-rt v2.5.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 6.70s
[INFO] running `Command { std: "docker" "inspect" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a", 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" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json" "--release", kill_on_drop: false }`
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling serde_json v1.0.147
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]    Compiling itoa v1.0.16
[INFO] [stderr]    Compiling zmij v0.1.9
[INFO] [stderr]    Compiling anstyle v1.0.13
[INFO] [stderr]    Compiling ciborium-io v0.2.2
[INFO] [stderr]    Compiling plotters-backend v0.3.7
[INFO] [stderr]    Compiling target-triple v1.0.0
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_lex v0.7.6
[INFO] [stderr]    Compiling winnow v1.0.0
[INFO] [stderr]    Compiling regex-syntax v0.8.8
[INFO] [stderr]    Compiling plotters-svg v0.3.7
[INFO] [stderr]    Compiling cast v0.3.0
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling toml_writer v1.1.1+spec-1.1.0
[INFO] [stderr]    Compiling clap_builder v4.5.53
[INFO] [stderr]    Compiling same-file v1.0.6
[INFO] [stderr]    Compiling log v0.4.29
[INFO] [stderr]    Compiling anes v0.1.6
[INFO] [stderr]    Compiling walkdir v2.5.0
[INFO] [stderr]    Compiling glob v0.3.3
[INFO] [stderr]    Compiling toml_parser v1.0.10+spec-1.1.0
[INFO] [stderr]    Compiling oorandom v11.1.5
[INFO] [stderr]    Compiling crossbeam-epoch v0.9.18
[INFO] [stderr]    Compiling termcolor v1.4.1
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling mio v1.1.1
[INFO] [stderr]    Compiling plotters v0.3.7
[INFO] [stderr]    Compiling rayon v1.11.0
[INFO] [stderr]    Compiling regex-automata v0.4.13
[INFO] [stderr]    Compiling clap v4.5.53
[INFO] [stderr]    Compiling serde_spanned v1.1.1
[INFO] [stderr]    Compiling toml_datetime v1.0.1+spec-1.1.0
[INFO] [stderr]    Compiling toml v1.0.7+spec-1.1.0
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling trybuild v1.0.116
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling regex v1.12.2
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr]    Compiling nexus-rt v2.5.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 33.23s
[INFO] running `Command { std: "docker" "inspect" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a", 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" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--release", kill_on_drop: false }`
[INFO] [stderr]     Finished `release` profile [optimized] target(s) in 0.06s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/release/build/nexus-rt/046b221f37f6f213/out/nexus_rt-046b221f37f6f213)
[INFO] [stdout] 
[INFO] [stdout] running 418 tests
[INFO] [stdout] test adapt::tests::by_ref_delegates_name ... ok
[INFO] [stdout] test adapt::tests::by_ref_dispatch ... ok
[INFO] [stdout] test adapt::tests::cloned_delegates_name ... ok
[INFO] [stdout] test adapt::tests::cloned_copy_type ... ok
[INFO] [stdout] test adapt::tests::cloned_dispatch ... ok
[INFO] [stdout] test adapt::tests::delegates_name ... ok
[INFO] [stdout] test adapt::tests::dispatch_decodes_and_forwards ... ok
[INFO] [stdout] test adapt::tests::none_skips_dispatch ... ok
[INFO] [stdout] test adapt::tests::owned_clone_type ... ok
[INFO] [stdout] test adapt::tests::owned_delegates_name ... ok
[INFO] [stdout] test adapt::tests::owned_str_to_string ... ok
[INFO] [stdout] test callback::tests::box_dyn_handler ... ok
[INFO] [stdout] test callback::tests::callback_in_vec_dyn ... ok
[INFO] [stdout] test callback::tests::callback_interop_with_handler ... ok
[INFO] [stdout] test callback::tests::callback_with_local ... ok
[INFO] [stdout] test callback::tests::ctx_accessible_outside_dispatch ... ok
[INFO] [stdout] test callback::tests::ctx_mutated_outside_dispatch ... ok
[INFO] [stdout] test callback::tests::ctx_mutated_persists ... ok
[INFO] [stdout] test callback::tests::ctx_one_res ... ok
[INFO] [stdout] test callback::tests::ctx_one_res_mut ... ok
[INFO] [stdout] test callback::tests::ctx_only_no_params ... ok
[INFO] [stdout] test callback::tests::ctx_three_params ... ok
[INFO] [stdout] test callback::tests::ctx_two_params ... ok
[INFO] [stdout] test callback::tests::no_event_callback_arity_0 ... ok
[INFO] [stdout] test callback::tests::no_event_callback_arity_2 ... ok
[INFO] [stdout] test callback::tests::no_event_callback_boxed ... ok
[INFO] [stdout] test callback::tests::no_event_callback_arity_1 ... ok
[INFO] [stdout] test catch_unwind::tests::forwards_run ... ok
[INFO] [stdout] test clock::tests::clock_default ... ok
[INFO] [stdout] test catch_unwind::tests::forwards_name ... ok
[INFO] [stdout] test clock::tests::historical_exhausts ... ok
[INFO] [stdout] test clock::tests::historical_install_and_sync ... ok
[INFO] [stdout] test clock::tests::historical_reset ... ok
[INFO] [stdout] test clock::tests::realtime_install_and_sync ... ok
[INFO] [stdout] test clock::tests::historical_rejects_bad_config ... ok
[INFO] [stdout] test clock::tests::realtime_resync_no_panic ... ok
[INFO] [stdout] test callback::tests::callback_duplicate_access_panics - should panic ... ok
[INFO] [stdout] test clock::tests::realtime_zero_retries_rejected ... ok
[INFO] [stdout] test callback::tests::panics_on_second_missing - should panic ... ok
[INFO] [stdout] test clock::tests::sync_returns_the_written_clock ... ok
[INFO] [stdout] test clock::tests::test_clock_advance ... ok
[INFO] [stdout] test callback::tests::panics_on_missing_resource - should panic ... ok
[INFO] [stdout] test clock::tests::test_clock_install_and_sync ... ok
[INFO] [stdout] test clock::tests::test_clock_instant_advances ... ok
[INFO] [stdout] test clock::tests::test_clock_reset ... ok
[INFO] [stdout] test catch_unwind::tests::survives_panic ... ok
[INFO] [stdout] test clock::tests::test_clock_set_nanos ... ok
[INFO] [stdout] test clock::tests::test_clock_starting_at ... ok
[INFO] [stdout] test combinator::tests::broadcast_dispatch ... ok
[INFO] [stdout] test catch_unwind::tests::world_state_survives_handler_panic ... ok
[INFO] [stdout] test combinator::tests::broadcast_empty ... ok
[INFO] [stdout] test combinator::tests::broadcast_len ... ok
[INFO] [stdout] test combinator::tests::broadcast_with_cloned_adapter ... ok
[INFO] [stdout] test combinator::tests::fanout_boxable ... ok
[INFO] [stdout] test combinator::tests::fanout_three_way ... ok
[INFO] [stdout] test clock::tests::realtime_nanos_increase ... ok
[INFO] [stdout] test combinator::tests::fanout_two_way ... ok
[INFO] [stdout] test combinator::tests::fanout_with_cloned_adapter ... ok
[INFO] [stdout] test ctx_dag::tests::ctx_dag_fork_join ... ok
[INFO] [stdout] test ctx_dag::tests::ctx_dag_fork_merge_two_arms ... ok
[INFO] [stdout] test ctx_dag::tests::ctx_dag_guard_before_fork ... ok
[INFO] [stdout] test ctx_dag::tests::ctx_dag_linear_then ... ok
[INFO] [stdout] test ctx_dag::tests::ctx_dag_merge_with_param ... ok
[INFO] [stdout] test ctx_dag::tests::ctx_dag_three_arm_fork_merge ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_and_then ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_build_with_option_unit ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_catch ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_filter ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_guard_and_map ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_inspect_err ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_inspect_option ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_inspect_result ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_ok_result ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_ok_or ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_on_none ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_opaque_producer ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_opaque_step ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_result_map_and_map_err ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_tap ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_three_steps_with_context_mutation ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_opaque_guard ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_unwrap_or_else_option ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_unwrap_or_result ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_unwrap_or_option ... ok
[INFO] [stdout] test ctx_pipeline::tests::ctx_pipeline_with_res_mut ... ok
[INFO] [stdout] test dag::tests::batch_dag_basic ... ok
[INFO] [stdout] test dag::tests::batch_dag_buffer_reuse ... ok
[INFO] [stdout] test dag::tests::batch_dag_empty_is_noop ... ok
[INFO] [stdout] test dag::tests::batch_dag_retains_allocation ... ok
[INFO] [stdout] test dag::tests::batch_dag_option_terminal ... ok
[INFO] [stdout] test dag::tests::batch_dag_with_splat ... ok
[INFO] [stdout] test dag::tests::batch_dag_then_conditional ... ok
[INFO] [stdout] test dag::tests::build_borrowed_event_direct ... ok
[INFO] [stdout] test dag::tests::build_option_unit_terminal ... ok
[INFO] [stdout] test dag::tests::dag_3way_merge ... ok
[INFO] [stdout] test dag::tests::dag_and ... ok
[INFO] [stdout] test dag::tests::dag_arm_combinators ... ok
[INFO] [stdout] test dag::tests::dag_arm_guard ... ok
[INFO] [stdout] test dag::tests::dag_arm_scan ... ok
[INFO] [stdout] test dag::tests::dag_arm_tap ... ok
[INFO] [stdout] test dag::tests::dag_boxable ... ok
[INFO] [stdout] test dag::tests::dag_complex_topology ... ok
[INFO] [stdout] test dag::tests::dag_dedup_suppresses_unchanged ... ok
[INFO] [stdout] test dag::tests::dag_diamond ... ok
[INFO] [stdout] test dag::tests::dag_dispatch ... ok
[INFO] [stdout] test dag::tests::dag_fan_out_join ... ok
[INFO] [stdout] test dag::tests::dag_guard_drops ... ok
[INFO] [stdout] test dag::tests::dag_guard_keeps ... ok
[INFO] [stdout] test dag::tests::dag_linear_2 ... ok
[INFO] [stdout] test dag::tests::dag_linear_3 ... ok
[INFO] [stdout] test dag::tests::dag_linear_5 ... ok
[INFO] [stdout] test dag::tests::dag_multiple_dispatches ... ok
[INFO] [stdout] test dag::tests::dag_nested_fork ... ok
[INFO] [stdout] test dag::tests::dag_not ... ok
[INFO] [stdout] test dag::tests::dag_option_and_then ... ok
[INFO] [stdout] test dag::tests::dag_option_filter_drops ... ok
[INFO] [stdout] test dag::tests::dag_option_filter_keeps ... ok
[INFO] [stdout] test dag::tests::dag_option_map ... ok
[INFO] [stdout] test dag::tests::dag_option_inspect ... ok
[INFO] [stdout] test dag::tests::dag_option_map_none ... ok
[INFO] [stdout] test dag::tests::dag_option_ok_or ... ok
[INFO] [stdout] test dag::tests::dag_option_on_none ... ok
[INFO] [stdout] test dag::tests::dag_option_unwrap_or ... ok
[INFO] [stdout] test dag::tests::dag_or ... ok
[INFO] [stdout] test dag::tests::dag_resolve_arm_with_params ... ok
[INFO] [stdout] test dag::tests::dag_result_and_then ... ok
[INFO] [stdout] test dag::tests::dag_result_catch ... ok
[INFO] [stdout] test dag::tests::dag_result_map ... ok
[INFO] [stdout] test dag::tests::dag_result_map_err ... ok
[INFO] [stdout] test dag::tests::dag_result_ok ... ok
[INFO] [stdout] test dag::tests::dag_result_unwrap_or_else ... ok
[INFO] [stdout] test dag::tests::dag_root_only ... ok
[INFO] [stdout] test dag::tests::dag_route_false_arm ... ok
[INFO] [stdout] test dag::tests::dag_route_nested ... ok
[INFO] [stdout] test dag::tests::dag_route_true_arm ... ok
[INFO] [stdout] test dag::tests::dag_scan_arity0_closure ... ok
[INFO] [stdout] test dag::tests::dag_scan_named_fn_with_param ... ok
[INFO] [stdout] test dag::tests::dag_splat2_on_chain ... ok
[INFO] [stdout] test dag::tests::dag_splat2_with_param ... ok
[INFO] [stdout] test dag::tests::dag_splat3_on_chain ... ok
[INFO] [stdout] test dag::tests::dag_splat4_on_chain ... ok
[INFO] [stdout] test dag::tests::dag_splat5_on_chain ... ok
[INFO] [stdout] test dag::tests::dag_splat_boxable ... ok
[INFO] [stdout] test dag::tests::dag_splat_on_arm ... ok
[INFO] [stdout] test dag::tests::dag_splat_on_arm_start ... ok
[INFO] [stdout] test dag::tests::dag_tap_observes_without_changing ... ok
[INFO] [stdout] test dag::tests::dag_tee_side_effect_chain ... ok
[INFO] [stdout] test dag::tests::dag_then_conditional_3_way ... ok
[INFO] [stdout] test dag::tests::dag_then_conditional_basic ... ok
[INFO] [stdout] test dag::tests::dag_then_conditional_in_fork_arm ... ok
[INFO] [stdout] test dag::tests::dag_then_with_resolve_arm ... ok
[INFO] [stdout] test dag::tests::dag_world_access ... ok
[INFO] [stdout] test dag::tests::dag_xor ... ok
[INFO] [stdout] test handler::tests::box_dyn_type_erasure ... ok
[INFO] [stdout] test handler::tests::concrete_handler_satisfies_into_handler ... ok
[INFO] [stdout] test handler::tests::different_types_no_conflict ... ok
[INFO] [stdout] test handler::tests::duplicate_mixed_panics - should panic ... ok
[INFO] [stdout] test handler::tests::empty_tuple_param ... ok
[INFO] [stdout] test handler::tests::duplicate_res_mut_panics - should panic ... ok
[INFO] [stdout] test handler::tests::event_only_dispatch ... ok
[INFO] [stdout] test handler::tests::handler_impl_into_handler_dispatches ... ok
[INFO] [stdout] test handler::tests::local_default_init ... ok
[INFO] [stdout] test handler::tests::duplicate_res_panics - should panic ... ok
[INFO] [stdout] test handler::tests::local_no_conflict ... ok
[INFO] [stdout] test handler::tests::local_independent_per_handler ... ok
[INFO] [stdout] test handler::tests::mutation_through_res_mut ... ok
[INFO] [stdout] test handler::tests::no_event_arity_0 ... ok
[INFO] [stdout] test handler::tests::local_persists_across_runs ... ok
[INFO] [stdout] test handler::tests::no_event_arity_1 ... ok
[INFO] [stdout] test handler::tests::no_event_arity_2 ... ok
[INFO] [stdout] test handler::tests::no_event_boxed ... ok
[INFO] [stdout] test handler::tests::one_res_and_event ... ok
[INFO] [stdout] test handler::tests::no_event_coexists_with_event_handler ... ok
[INFO] [stdout] test handler::tests::opaque_handler_boxed ... ok
[INFO] [stdout] test handler::tests::opaque_handler_dispatch ... ok
[INFO] [stdout] test handler::tests::option_in_handler ... ok
[INFO] [stdout] test handler::tests::option_res_mut_some_when_present ... ok
[INFO] [stdout] test handler::tests::option_res_none_when_missing ... ok
[INFO] [stdout] test handler::tests::option_res_some_when_present ... ok
[INFO] [stdout] test handler::tests::res_mut_param ... ok
[INFO] [stdout] test handler::tests::res_param ... ok
[INFO] [stdout] test handler::tests::seq_last_position ... ok
[INFO] [stdout] test handler::tests::seq_first_with_res ... ok
[INFO] [stdout] test handler::tests::seq_middle_position ... ok
[INFO] [stdout] test handler::tests::seq_mut_last_position ... ok
[INFO] [stdout] test handler::tests::seq_mut_advances ... ok
[INFO] [stdout] test handler::tests::seq_mut_multiple_advances_in_one_dispatch ... ok
[INFO] [stdout] test handler::tests::seq_mut_only_param ... ok
[INFO] [stdout] test handler::tests::seq_mut_first_with_res ... ok
[INFO] [stdout] test handler::tests::seq_only_param ... ok
[INFO] [stdout] test handler::tests::seq_reads_current ... ok
[INFO] [stdout] test handler::tests::seq_mut_middle_position ... ok
[INFO] [stdout] test handler::tests::tuple_param ... ok
[INFO] [stdout] test pipeline::tests::and_named_fn_with_param ... ok
[INFO] [stdout] test handler::tests::two_res_and_event ... ok
[INFO] [stdout] test handler::tests::seq_mut_persistent_across_dispatches ... ok
[INFO] [stdout] test pipeline::tests::batch_accumulates ... ok
[INFO] [stdout] test pipeline::tests::batch_catch_continues_on_error ... ok
[INFO] [stdout] test pipeline::tests::batch_empty_is_noop ... ok
[INFO] [stdout] test pipeline::tests::batch_filter_skips_items ... ok
[INFO] [stdout] test pipeline::tests::batch_multiple_runs_accumulate ... ok
[INFO] [stdout] test pipeline::tests::batch_pipeline_then_branching ... ok
[INFO] [stdout] test pipeline::tests::batch_retains_allocation ... ok
[INFO] [stdout] test pipeline::tests::build_borrowed_event_direct ... ok
[INFO] [stdout] test pipeline::tests::batch_with_world_access ... ok
[INFO] [stdout] test pipeline::tests::build_borrowed_event_option_unit ... ok
[INFO] [stdout] test pipeline::tests::build_option_unit_boxes_into_handler ... ok
[INFO] [stdout] test pipeline::tests::build_option_unit_terminal ... ok
[INFO] [stdout] test pipeline::tests::build_produces_handler ... ok
[INFO] [stdout] test pipeline::tests::cloned_option_none ... ok
[INFO] [stdout] test pipeline::tests::cloned_bare ... ok
[INFO] [stdout] test pipeline::tests::cloned_option_some ... ok
[INFO] [stdout] test pipeline::tests::cloned_result_err ... ok
[INFO] [stdout] test pipeline::tests::cloned_result_ok ... ok
[INFO] [stdout] test pipeline::tests::dispatch_build_produces_handler ... ok
[INFO] [stdout] test pipeline::tests::dispatch_to_broadcast ... ok
[INFO] [stdout] test pipeline::tests::dispatch_to_fanout ... ok
[INFO] [stdout] test pipeline::tests::dispatch_to_handler ... ok
[INFO] [stdout] test pipeline::tests::filter_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::guard_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::inspect_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::local_in_step ... ok
[INFO] [stdout] test pipeline::tests::map_err_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::no_event_step_arity_1 ... ok
[INFO] [stdout] test pipeline::tests::no_event_step_arity_0 ... ok
[INFO] [stdout] test pipeline::tests::no_event_step_as_handler ... ok
[INFO] [stdout] test pipeline::tests::no_event_step_chained ... ok
[INFO] [stdout] test pipeline::tests::ok_or_else_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::on_none_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::option_and_then_chains ... ok
[INFO] [stdout] test pipeline::tests::option_filter_drops ... ok
[INFO] [stdout] test pipeline::tests::option_and_then_short_circuits ... ok
[INFO] [stdout] test pipeline::tests::option_filter_keeps ... ok
[INFO] [stdout] test pipeline::tests::option_inspect_passes_through ... ok
[INFO] [stdout] test pipeline::tests::option_map_on_some ... ok
[INFO] [stdout] test pipeline::tests::option_map_skips_none ... ok
[INFO] [stdout] test pipeline::tests::option_ok_or_else ... ok
[INFO] [stdout] test pipeline::tests::option_ok_or_some ... ok
[INFO] [stdout] test pipeline::tests::option_on_none_fires ... ok
[INFO] [stdout] test pipeline::tests::option_unwrap_or_else ... ok
[INFO] [stdout] test pipeline::tests::option_ok_or ... ok
[INFO] [stdout] test pipeline::tests::option_unwrap_or_some ... ok
[INFO] [stdout] test pipeline::tests::or_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::option_unwrap_or_none ... ok
[INFO] [stdout] test pipeline::tests::pipeline_and ... ok
[INFO] [stdout] test pipeline::tests::pipeline_dedup_suppresses_unchanged ... ok
[INFO] [stdout] test pipeline::tests::panics_on_missing_resource - should panic ... ok
[INFO] [stdout] test pipeline::tests::pipeline_guard_drops ... ok
[INFO] [stdout] test pipeline::tests::pipeline_guard_keeps ... ok
[INFO] [stdout] test pipeline::tests::pipeline_not ... ok
[INFO] [stdout] test pipeline::tests::pipeline_or ... ok
[INFO] [stdout] test pipeline::tests::pipeline_route_false_arm ... ok
[INFO] [stdout] test pipeline::tests::pipeline_route_nested ... ok
[INFO] [stdout] test pipeline::tests::pipeline_route_true_arm ... ok
[INFO] [stdout] test pipeline::tests::pipeline_tap_observes_without_changing ... ok
[INFO] [stdout] test pipeline::tests::pipeline_tee_side_effect_chain ... ok
[INFO] [stdout] test pipeline::tests::pipeline_then_3_way ... ok
[INFO] [stdout] test pipeline::tests::pipeline_then_with_resolve_step ... ok
[INFO] [stdout] test pipeline::tests::pipeline_xor ... ok
[INFO] [stdout] test pipeline::tests::result_catch_passes_ok ... ok
[INFO] [stdout] test pipeline::tests::result_inspect_err_passes_through ... ok
[INFO] [stdout] test pipeline::tests::result_inspect_passes_through ... ok
[INFO] [stdout] test pipeline::tests::result_map_err ... ok
[INFO] [stdout] test pipeline::tests::result_map_err_ok_passthrough ... ok
[INFO] [stdout] test pipeline::tests::result_map_on_ok ... ok
[INFO] [stdout] test pipeline::tests::result_map_skips_err ... ok
[INFO] [stdout] test pipeline::tests::result_ok_converts ... ok
[INFO] [stdout] test pipeline::tests::result_ok_drops_err ... ok
[INFO] [stdout] test pipeline::tests::result_catch_handles_error ... ok
[INFO] [stdout] test pipeline::tests::result_unwrap_or ... ok
[INFO] [stdout] test pipeline::tests::result_or_else ... ok
[INFO] [stdout] test pipeline::tests::result_unwrap_or_else ... ok
[INFO] [stdout] test pipeline::tests::run_returns_output ... ok
[INFO] [stdout] test pipeline::tests::pipeline_then_branching ... ok
[INFO] [stdout] test pipeline::tests::scan_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::scan_arity0_closure_running_sum ... ok
[INFO] [stdout] test pipeline::tests::scan_on_pipeline_start ... ok
[INFO] [stdout] test pipeline::tests::scan_opaque_closure ... ok
[INFO] [stdout] test pipeline::tests::scan_persistence_across_batch ... ok
[INFO] [stdout] test pipeline::tests::scan_suppression_returns_none ... ok
[INFO] [stdout] test pipeline::tests::splat2_mid_chain ... ok
[INFO] [stdout] test pipeline::tests::splat2_closure_on_start ... ok
[INFO] [stdout] test pipeline::tests::splat2_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::splat3_closure_on_start ... ok
[INFO] [stdout] test pipeline::tests::splat3_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::splat4_mid_chain ... ok
[INFO] [stdout] test pipeline::tests::splat5_closure_on_start ... ok
[INFO] [stdout] test pipeline::tests::splat_build_batch ... ok
[INFO] [stdout] test pipeline::tests::splat_build_into_handler ... ok
[INFO] [stdout] test pipeline::tests::step_chain_two ... ok
[INFO] [stdout] test pipeline::tests::step_one_res ... ok
[INFO] [stdout] test pipeline::tests::splat_access_conflict_detected - should panic ... ok
[INFO] [stdout] test pipeline::tests::step_pure_transform ... ok
[INFO] [stdout] test pipeline::tests::step_duplicate_access_panics - should panic ... ok
[INFO] [stdout] test pipeline::tests::step_one_res_mut ... ok
[INFO] [stdout] test pipeline::tests::step_two_params ... ok
[INFO] [stdout] test pipeline::tests::tap_named_fn_with_param ... ok
[INFO] [stdout] test pipeline::tests::unwrap_or_else_option_named_fn_with_param ... ok
[INFO] [stdout] test resource::tests::res_deref ... ok
[INFO] [stdout] test resource::tests::res_is_copy ... ok
[INFO] [stdout] test resource::tests::res_mut_deref_mut_no_stamp ... ok
[INFO] [stdout] test resource::tests::res_mut_deref ... ok
[INFO] [stdout] test resource::tests::res_mut_reborrow ... ok
[INFO] [stdout] test resource::tests::res_mut_reborrow_then_use_original ... ok
[INFO] [stdout] test resource::tests::res_pass_to_inner_function ... ok
[INFO] [stdout] test resource::tests::seq_mut_advance ... ok
[INFO] [stdout] test resource::tests::seq_get ... ok
[INFO] [stdout] test scheduler::tests::linear_chain_propagation ... ok
[INFO] [stdout] test scheduler::tests::multi_system_stage_all_run ... ok
[INFO] [stdout] test scheduler::tests::multiple_roots ... ok
[INFO] [stdout] test scheduler::tests::mutations_visible_downstream ... ok
[INFO] [stdout] test scheduler::tests::mixed_bool_void_stage ... ok
[INFO] [stdout] test scheduler::tests::scheduler_does_not_bump_sequence ... ok
[INFO] [stdout] test scheduler::tests::scheduler_chain_is_send ... ok
[INFO] [stdout] test scheduler::tests::single_root_always_runs ... ok
[INFO] [stdout] test scheduler::tests::propagation_stops_on_false ... ok
[INFO] [stdout] test scheduler::tests::stage_propagation_all_false_stops ... ok
[INFO] [stdout] test scheduler::tests::stage_propagation_any_semantics ... ok
[INFO] [stdout] test scheduler::tests::staged_diamond ... ok
[INFO] [stdout] test scheduler::tests::three_stage_linear ... ok
[INFO] [stdout] test scheduler::tests::void_systems_in_stage ... ok
[INFO] [stdout] test shutdown::tests::handle_can_trigger_shutdown ... ok
[INFO] [stdout] test shutdown::tests::handle_not_shutdown_by_default ... ok
[INFO] [stdout] test shutdown::tests::shutdown_in_handler ... ok
[INFO] [stdout] test shutdown::tests::shutdown_param_triggers ... ok
[INFO] [stdout] test system::tests::arity_0_system ... ok
[INFO] [stdout] test system::tests::arity_0_void_system ... ok
[INFO] [stdout] test system::tests::arity_n_void_system ... ok
[INFO] [stdout] test system::tests::box_dyn_system ... ok
[INFO] [stdout] test system::tests::box_dyn_void_system ... ok
[INFO] [stdout] test system::tests::local_in_system ... ok
[INFO] [stdout] test system::tests::single_param_system ... ok
[INFO] [stdout] test system::tests::single_param_system_false ... ok
[INFO] [stdout] test system::tests::system_has_name ... ok
[INFO] [stdout] test system::tests::two_param_system ... ok
[INFO] [stdout] test system::tests::system_access_conflict_panics - should panic ... ok
[INFO] [stdout] test system::tests::void_local_persists ... ok
[INFO] [stdout] test system::tests::void_system_has_name ... ok
[INFO] [stdout] test system::tests::void_two_params_mixed ... ok
[INFO] [stdout] test system::tests::void_two_params_read_only ... ok
[INFO] [stdout] test template::tests::callback_new_event_ignored_drops_a_non_unit_event ... ok
[INFO] [stdout] test system::tests::void_system_access_conflict_panics - should panic ... ok
[INFO] [stdout] test template::tests::callback_template_basic ... ok
[INFO] [stdout] test template::tests::callback_template_boxable ... ok
[INFO] [stdout] test template::tests::callback_template_ctx_accessible ... ok
[INFO] [stdout] test template::tests::callback_template_event_only ... ok
[INFO] [stdout] test template::tests::callback_template_independent_contexts ... ok
[INFO] [stdout] test template::tests::handler_template_basic ... ok
[INFO] [stdout] test template::tests::handler_template_event_only ... ok
[INFO] [stdout] test template::tests::handler_template_duplicate_access - should panic ... ok
[INFO] [stdout] test template::tests::handler_template_five_params ... ok
[INFO] [stdout] test template::tests::handler_template_stamps_independent ... ok
[INFO] [stdout] test template::tests::handler_template_two_params ... ok
[INFO] [stdout] test template::tests::handler_template_missing_resource - should panic ... ok
[INFO] [stdout] test template::tests::macro_callback_blueprint ... ok
[INFO] [stdout] test template::tests::macro_handler_blueprint ... ok
[INFO] [stdout] test template::tests::new_event_ignored_drops_a_non_unit_event ... ok
[INFO] [stdout] test template::tests::self_referential_blueprint_reschedules_itself ... ok
[INFO] [stdout] test template::tests::template_copies_without_requiring_key_copy ... ok
[INFO] [stdout] test template::tests::templated_handler_boxable ... ok
[INFO] [stdout] test template::tests::templated_handler_name ... ok
[INFO] [stdout] test testing::tests::dispatch_advances_sequence ... ok
[INFO] [stdout] test testing::tests::dispatch_many_sequential ... ok
[INFO] [stdout] test testing::tests::dispatch_runs_handler ... ok
[INFO] [stdout] test testing::tests::world_access ... ok
[INFO] [stdout] test view::tests::dag_view_guard ... ok
[INFO] [stdout] test view::tests::dag_view_tap ... ok
[INFO] [stdout] test view::tests::event_passes_through_unchanged ... ok
[INFO] [stdout] test view::tests::filter_rejects ... ok
[INFO] [stdout] test view::tests::guard_rejects ... ok
[INFO] [stdout] test view::tests::guard_short_circuits_subsequent_tap ... ok
[INFO] [stdout] test view::tests::inspect_no_params ... ok
[INFO] [stdout] test view::tests::multiple_taps_in_scope ... ok
[INFO] [stdout] test view::tests::reusable_across_event_types ... ok
[INFO] [stdout] test view::tests::sequential_views ... ok
[INFO] [stdout] test view::tests::view_guard_inside_view ... ok
[INFO] [stdout] test view::tests::tap_observes_view ... ok
[INFO] [stdout] test view::tests::view_of_non_copy_types ... ok
[INFO] [stdout] test view::tests::view_tap_with_world_resources ... ok
[INFO] [stdout] test view::tests::view_guard_preserves_non_copy_event ... ok
[INFO] [stdout] test view::tests::view_with_multiple_borrowed_fields ... ok
[INFO] [stdout] test view::tests::view_repeated_dispatch ... ok
[INFO] [stdout] test world::tests::builder_drop_cleans_up_without_build ... ok
[INFO] [stdout] test world::tests::builder_id_and_try_id_resolve_during_build ... ok
[INFO] [stdout] test world::tests::check_access_no_conflict ... ok
[INFO] [stdout] test world::tests::builder_id_panics_when_absent - should panic ... ok
[INFO] [stdout] test world::tests::contains_reflects_registration ... ok
[INFO] [stdout] test world::tests::driver_installs_and_returns_handle ... ok
[INFO] [stdout] test world::tests::check_access_detects_conflict - should panic ... ok
[INFO] [stdout] test world::tests::drop_runs_destructors ... ok
[INFO] [stdout] test world::tests::empty_builder_builds_empty_world ... ok
[INFO] [stdout] test world::tests::ensure_default_registers_new_type ... ok
[INFO] [stdout] test world::tests::ensure_default_returns_existing_id ... ok
[INFO] [stdout] test world::tests::ensure_registers_new_type ... ok
[INFO] [stdout] test world::tests::ensure_returns_existing_id ... ok
[INFO] [stdout] test world::tests::get_mut_modifies_value ... ok
[INFO] [stdout] test world::tests::get_returns_registered_value ... ok
[INFO] [stdout] test world::tests::next_sequence_increments ... ok
[INFO] [stdout] test world::tests::multiple_types_independent ... ok
[INFO] [stdout] test world::tests::panics_on_duplicate_registration - should panic ... ok
[INFO] [stdout] test world::tests::plugin_registers_resources ... ok
[INFO] [stdout] test world::tests::register_and_build ... ok
[INFO] [stdout] test world::tests::panics_on_unregistered_id - should panic ... ok
[INFO] [stdout] test world::tests::register_default_works ... ok
[INFO] [stdout] test world::tests::registry_accessible_from_builder ... ok
[INFO] [stdout] test world::tests::registry_accessible_from_world ... ok
[INFO] [stdout] test world::tests::resource_ids_are_distinct ... ok
[INFO] [stdout] test world::tests::resource_reads_value ... ok
[INFO] [stdout] test world::tests::resource_mut_modifies_value ... ok
[INFO] [stdout] test world::tests::run_startup_dispatches_handler ... ok
[INFO] [stdout] test world::tests::run_startup_multiple_phases ... ok
[INFO] [stdout] test world::tests::sequence_default_is_zero ... ok
[INFO] [stdout] test world::tests::sequence_wrapping ... ok
[INFO] [stdout] test world::tests::try_id_returns_none_for_unregistered ... ok
[INFO] [stdout] test world::tests::try_id_returns_some_for_registered ... ok
[INFO] [stdout] test world::tests::send_to_another_thread ... ok
[INFO] [stdout] test world::tests::try_register_duplicate_hands_value_back ... ok
[INFO] [stdout] test world::tests::try_register_fresh_returns_ok ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 418 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/compile_tests.rs (/opt/rustwide/target/release/build/nexus-rt/651ab9f3bb5c6fc0/out/compile_tests-651ab9f3bb5c6fc0)
[INFO] [stdout] 
[INFO] [stdout] running 211 tests
[INFO] [stdout] test batch_dag_fill_run_check ... ok
[INFO] [stdout] test batch_pipeline_fill_run_check ... ok
[INFO] [stdout] test batch_pipeline_option_terminal ... ok
[INFO] [stdout] test bool_system_regression ... ok
[INFO] [stdout] test ctx_pipelines::ctx_dag_fork_merge ... ok
[INFO] [stdout] test ctx_pipelines::ctx_pipeline_build_void ... ok
[INFO] [stdout] test ctx_pipelines::ctx_pipeline_guard_and_map ... ok
[INFO] [stdout] test ctx_pipelines::ctx_pipeline_opaque_step ... ok
[INFO] [stdout] test ctx_pipelines::ctx_pipeline_result_flow ... ok
[INFO] [stdout] test ctx_pipelines::ctx_pipeline_three_stage ... ok
[INFO] [stdout] test ctx_pipelines::ctx_pipeline_tap ... ok
[INFO] [stdout] test dag_batch_option_terminal ... ok
[INFO] [stdout] test dag_bool_not_and ... ok
[INFO] [stdout] test dag_bool_or ... ok
[INFO] [stdout] test dag_bool_xor ... ok
[INFO] [stdout] test dag_borrowed_slice ... ok
[INFO] [stdout] test dag_borrowed_through_fork ... ok
[INFO] [stdout] test dag_borrowed_with_guard ... ok
[INFO] [stdout] test dag_build_into_virtual ... ok
[INFO] [stdout] test dag_build_batch ... ok
[INFO] [stdout] test dag_fork_arm_with_guard ... ok
[INFO] [stdout] test dag_dispatch ... ok
[INFO] [stdout] test dag_fork_arms_with_multiple_steps ... ok
[INFO] [stdout] test dag_fork_join_2arm ... ok
[INFO] [stdout] test dag_fork_merge_2arm ... ok
[INFO] [stdout] test dag_fork_merge_3arm ... ok
[INFO] [stdout] test dag_fork_merge_4arm ... ok
[INFO] [stdout] test dag_join_3arm ... ok
[INFO] [stdout] test dag_dedup ... ok
[INFO] [stdout] test dag_join_4arm ... ok
[INFO] [stdout] test dag_nested_fork ... ok
[INFO] [stdout] test dag_option_and_then ... ok
[INFO] [stdout] test dag_option_combinators ... ok
[INFO] [stdout] test dag_option_ok_or ... ok
[INFO] [stdout] test dag_option_ok_or_else ... ok
[INFO] [stdout] test dag_option_on_none ... ok
[INFO] [stdout] test dag_option_unit_terminal ... ok
[INFO] [stdout] test dag_option_unwrap_or ... ok
[INFO] [stdout] test dag_option_unwrap_or_else ... ok
[INFO] [stdout] test dag_result_and_then ... ok
[INFO] [stdout] test dag_result_combinators ... ok
[INFO] [stdout] test dag_result_inspect_err ... ok
[INFO] [stdout] test dag_result_map_err ... ok
[INFO] [stdout] test dag_result_ok ... ok
[INFO] [stdout] test dag_result_unwrap_or ... ok
[INFO] [stdout] test dag_result_or_else ... ok
[INFO] [stdout] test dag_result_unwrap_or_else ... ok
[INFO] [stdout] test dag_root_then_then_build ... ok
[INFO] [stdout] test dag_root_then_build ... ok
[INFO] [stdout] test dag_scan ... ok
[INFO] [stdout] test dag_root_single_step ... ok
[INFO] [stdout] test dag_route ... ok
[INFO] [stdout] test dag_splat_inside_arm ... ok
[INFO] [stdout] test dag_tap ... ok
[INFO] [stdout] test dag_tee ... ok
[INFO] [stdout] test dag_splat_chain ... ok
[INFO] [stdout] test hrtb_dag_fork_merge ... ok
[INFO] [stdout] test hrtb_disjoint_lifetimes ... ok
[INFO] [stdout] test hrtb_named_function ... ok
[INFO] [stdout] test hrtb_borrowed_struct_event ... ok
[INFO] [stdout] test hrtb_pipeline ... ok
[INFO] [stdout] test hrtb_callback ... ok
[INFO] [stdout] test hrtb_pipeline_basic ... ok
[INFO] [stdout] test hrtb_dag ... ok
[INFO] [stdout] test hrtb_pipeline_local ... ok
[INFO] [stdout] test hrtb_pipeline_multi_param ... ok
[INFO] [stdout] test hrtb_dag_basic ... ok
[INFO] [stdout] test hrtb_pipeline_with_guard ... ok
[INFO] [stdout] test hrtb_dag_fork_join ... ok
[INFO] [stdout] test hrtb_pipeline_with_option_chain ... ok
[INFO] [stdout] test pipeline_and_then_option ... ok
[INFO] [stdout] test hrtb_send_bound ... ok
[INFO] [stdout] test pipeline_bool_and ... ok
[INFO] [stdout] test pipeline_bool_or ... ok
[INFO] [stdout] test pipeline_bool_xor ... ok
[INFO] [stdout] test hrtb_pipeline_opaque_closure ... ok
[INFO] [stdout] test hrtb_dag_direct_run_no_boxing ... ok
[INFO] [stdout] test hrtb_direct_run_no_boxing ... ok
[INFO] [stdout] test hrtb_pipeline_tee ... ok
[INFO] [stdout] test pipeline_borrowed_run_direct ... ok
[INFO] [stdout] test hrtb_dispatch_map ... ok
[INFO] [stdout] test hrtb_pipeline_and_dag_in_same_map ... ok
[INFO] [stdout] test pipeline_bool_not ... ok
[INFO] [stdout] test pipeline_borrowed_through_guard ... ok
[INFO] [stdout] test pipeline_build_batch ... ok
[INFO] [stdout] test pipeline_build_into_virtual ... ok
[INFO] [stdout] test pipeline_borrowed_option_unit_terminal ... ok
[INFO] [stdout] test hrtb_pipeline_with_closure ... ok
[INFO] [stdout] test pipeline_cloned_option ... ok
[INFO] [stdout] test pipeline_dedup ... ok
[INFO] [stdout] test pipeline_dispatch_handler_interop ... ok
[INFO] [stdout] test pipeline_dispatch_to_handler ... ok
[INFO] [stdout] test pipeline_borrowed_slice ... ok
[INFO] [stdout] test pipeline_filter ... ok
[INFO] [stdout] test pipeline_filter_then_map_sink ... ok
[INFO] [stdout] test pipeline_borrowed_str ... ok
[INFO] [stdout] test pipeline_guard_arity0_closure ... ok
[INFO] [stdout] test pipeline_guard_then_map ... ok
[INFO] [stdout] test pipeline_guard_unwrap_then ... ok
[INFO] [stdout] test pipeline_guard_with_res_param ... ok
[INFO] [stdout] test pipeline_inspect_option ... ok
[INFO] [stdout] test pipeline_guard_opaque ... ok
[INFO] [stdout] test pipeline_linear_chain_three ... ok
[INFO] [stdout] test pipeline_long_realistic ... ok
[INFO] [stdout] test pipeline_multiple_batch_runs ... ok
[INFO] [stdout] test pipeline_linear_chain_five ... ok
[INFO] [stdout] test pipeline_ok_or ... ok
[INFO] [stdout] test pipeline_ok_or_else ... ok
[INFO] [stdout] test pipeline_on_none ... ok
[INFO] [stdout] test pipeline_on_none_opaque ... ok
[INFO] [stdout] test pipeline_option_unit_terminal ... ok
[INFO] [stdout] test pipeline_option_map ... ok
[INFO] [stdout] test pipeline_realistic_decode_validate_enrich_store ... ok
[INFO] [stdout] test pipeline_result_and_then ... ok
[INFO] [stdout] test pipeline_result_catch ... ok
[INFO] [stdout] test pipeline_result_catch_then ... ok
[INFO] [stdout] test pipeline_result_inspect_err ... ok
[INFO] [stdout] test pipeline_result_inspect_ok ... ok
[INFO] [stdout] test pipeline_result_map ... ok
[INFO] [stdout] test pipeline_result_map_err ... ok
[INFO] [stdout] test pipeline_result_ok ... ok
[INFO] [stdout] test pipeline_result_or_else ... ok
[INFO] [stdout] test pipeline_result_unwrap_or ... ok
[INFO] [stdout] test pipeline_result_unwrap_or_else ... ok
[INFO] [stdout] test pipeline_route ... ok
[INFO] [stdout] test pipeline_run_direct ... ok
[INFO] [stdout] test pipeline_single_step ... ok
[INFO] [stdout] test pipeline_scan_at_start ... ok
[INFO] [stdout] test pipeline_splat2 ... ok
[INFO] [stdout] test pipeline_splat3 ... ok
[INFO] [stdout] test pipeline_splat4 ... ok
[INFO] [stdout] test pipeline_splat5 ... ok
[INFO] [stdout] test pipeline_splat_at_start ... ok
[INFO] [stdout] test pipeline_tap_named_fn ... ok
[INFO] [stdout] test pipeline_tap_arity0_closure ... ok
[INFO] [stdout] test pipeline_scan ... ok
[INFO] [stdout] test pipeline_with_option_res ... ok
[INFO] [stdout] test pipeline_with_option_res_mut ... ok
[INFO] [stdout] test pipeline_tee ... ok
[INFO] [stdout] test pipeline_tap_with_res ... ok
[INFO] [stdout] test pipeline_then_opaque ... ok
[INFO] [stdout] test pipeline_to_boxed_handler ... ok
[INFO] [stdout] test pipeline_unwrap_or_else_option ... ok
[INFO] [stdout] test resolve_producer_helper ... ok
[INFO] [stdout] test pipeline_unwrap_or_option ... ok
[INFO] [stdout] test resolve_ref_step_named_fn ... ok
[INFO] [stdout] test pipeline_with_shutdown ... ok
[INFO] [stdout] test pipeline_with_res ... ok
[INFO] [stdout] test pipeline_tap_opaque ... ok
[INFO] [stdout] test resolve_step_named_fn ... ok
[INFO] [stdout] test resolved_arity_zero ... ok
[INFO] [stdout] test pipeline_with_res_mut ... ok
[INFO] [stdout] test pipeline_with_seq ... ok
[INFO] [stdout] test resolved_callback ... ok
[INFO] [stdout] test resolved_borrowed_struct_event ... ok
[INFO] [stdout] test resolved_dag ... ok
[INFO] [stdout] test resolved_box_passthrough ... ok
[INFO] [stdout] test pipeline_with_multiple_res_and_res_mut ... ok
[INFO] [stdout] test resolved_install_handler_pattern ... ok
[INFO] [stdout] test resolved_local_preserves_state ... ok
[INFO] [stdout] test resolved_opaque ... ok
[INFO] [stdout] test resolved_optional_res ... ok
[INFO] [stdout] test resolved_optional_resmut ... ok
[INFO] [stdout] test resolved_pipeline ... ok
[INFO] [stdout] test resolved_ref_struct_event ... ok
[INFO] [stdout] test resolved_res_param ... ok
[INFO] [stdout] test resolved_resmut_param ... ok
[INFO] [stdout] test resolved_seq_mut_param ... ok
[INFO] [stdout] test resolved_seq_param ... ok
[INFO] [stdout] test resolved_slice_event ... ok
[INFO] [stdout] test resolved_str_event ... ok
[INFO] [stdout] test run_startup_bool_returning_also_works ... ok
[INFO] [stdout] test run_startup_phased ... ok
[INFO] [stdout] test run_startup_void_single_param ... ok
[INFO] [stdout] test run_startup_void_three_params ... ok
[INFO] [stdout] test run_startup_void_two_params ... ok
[INFO] [stdout] test run_startup_with_local ... ok
[INFO] [stdout] test run_startup_with_optional_missing ... ok
[INFO] [stdout] test run_startup_with_optional_present ... ok
[INFO] [stdout] test run_startup_with_shutdown ... ok
[INFO] [stdout] test view_derive::derive_basic_tap ... ok
[INFO] [stdout] test view_derive::derive_borrow_copy_type ... ok
[INFO] [stdout] test view_derive::derive_bounded_type_param_view ... ok
[INFO] [stdout] test view_derive::derive_const_param_view ... ok
[INFO] [stdout] test resolve_step_arity0_closure ... ok
[INFO] [stdout] test view_derive::derive_dag_integration ... ok
[INFO] [stdout] test view_derive::derive_field_remap ... ok
[INFO] [stdout] test resolved_all_params_borrowed_event ... ok
[INFO] [stdout] test view_derive::derive_generic_view_pipeline_integration ... ok
[INFO] [stdout] test view_derive::derive_lifetime_bound_type_param ... ok
[INFO] [stdout] test view_derive::derive_mixed_remap_and_match ... ok
[INFO] [stdout] test pipeline_with_seq_mut ... ok
[INFO] [stdout] test view_derive::derive_guard_rejects ... ok
[INFO] [stdout] test view_derive::derive_multiple_views_same_event ... ok
[INFO] [stdout] test view_derive::derive_no_lifetime_generic_view ... ok
[INFO] [stdout] test resolve_arm_helper ... ok
[INFO] [stdout] test run_startup_void_no_params ... ok
[INFO] [stdout] test view_derive::derive_no_lifetime_view ... ok
[INFO] [stdout] test void_system_arity0 ... ok
[INFO] [stdout] test void_system_single_res_mut ... ok
[INFO] [stdout] test void_system_three_params ... ok
[INFO] [stdout] test view_derive::derive_reusable_across_sources ... ok
[INFO] [stdout] test view_derive::derive_multi_type_param_view ... ok
[INFO] [stdout] test void_system_two_params ... ok
[INFO] [stdout] test void_system_with_local ... ok
[INFO] [stdout] test void_system_with_optional_present ... ok
[INFO] [stdout] test view_derive::derive_type_param_view ... ok
[INFO] [stdout] test void_system_boxed ... ok
[INFO] [stdout] test void_system_with_optional_missing ... ok
[INFO] [stdout] test void_system_with_seq ... ok
[INFO] [stdout] test void_system_with_seq_mut ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 211 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/derive_generic_resource.rs (/opt/rustwide/target/release/build/nexus-rt/a85d77a99a0b5f65/out/derive_generic_resource-a85d77a99a0b5f65)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stdout] test generic_resource_registers_for_send_instantiations ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/derive_param.rs (/opt/rustwide/target/release/build/nexus-rt/00dfbd8e20cea599/out/derive_param-00dfbd8e20cea599)
[INFO] [stdout] 
[INFO] [stdout] running 6 tests
[INFO] [stdout] test basic_res_resmut ... ok
[INFO] [stdout] test nested_params ... ok
[INFO] [stdout] test param_plus_additional_resources ... ok
[INFO] [stdout] test with_local ... ok
[INFO] [stdout] test with_ignored_field ... ok
[INFO] [stdout] test with_optional_res ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 6 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ignore_event_handler.rs (/opt/rustwide/target/release/build/nexus-rt/00b88b5aa1b1957a/out/ignore_event_handler-00b88b5aa1b1957a)
[INFO] [stdout] 
[INFO] [stdout] running 3 tests
[INFO] [stdout] test drops_event_arity_0 ... ok
[INFO] [stdout] test drops_borrowed_nonstatic_event ... ok
[INFO] [stdout] test drops_owned_event ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/miri_tests.rs (/opt/rustwide/target/release/build/nexus-rt/bfae88b0a1750110/out/miri_tests-bfae88b0a1750110)
[INFO] [stdout] 
[INFO] [stdout] running 9 tests
[INFO] [stdout] test world_change_detection ... ok
[INFO] [stdout] test world_drop_drops_resources ... ok
[INFO] [stdout] test world_drop_drops_heap_resources ... ok
[INFO] [stdout] test world_many_resources ... ok
[INFO] [stdout] test world_multiple_resources_coexist ... ok
[INFO] [stdout] test world_rebuild_after_drop ... ok
[INFO] [stdout] test world_resource_insert_get_roundtrip ... ok
[INFO] [stdout] test world_resource_mut ... ok
[INFO] [stdout] test world_stress_register_mutate_drop ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 9 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/select_macro.rs (/opt/rustwide/target/release/build/nexus-rt/ede6f28aa93bae60/out/select_macro-ede6f28aa93bae60)
[INFO] [stdout] 
[INFO] [stdout] running 8 tests
[INFO] [stdout] test select_callback_mutates_ctx ... ok
[INFO] [stdout] test select_tier1_basic ... ok
[INFO] [stdout] test select_tier1_default ... ok
[INFO] [stdout] test select_callback_basic ... ok
[INFO] [stdout] test select_tier2_key ... ok
[INFO] [stdout] test select_tier3_default ... ok
[INFO] [stdout] test select_tier3_default_receives_raw_input ... ok
[INFO] [stdout] test select_tier3_key_project ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 8 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/ui.rs (/opt/rustwide/target/release/build/nexus-rt/359deb8b6fa2526e/out/ui-359deb8b6fa2526e)
[INFO] [stdout] 
[INFO] [stdout] running 1 test
[INFO] [stderr]    Compiling proc-macro2 v1.0.103
[INFO] [stderr]    Compiling unicode-ident v1.0.22
[INFO] [stderr]    Compiling quote v1.0.42
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling crossbeam-utils v0.8.21
[INFO] [stderr]    Compiling zerocopy v0.8.31
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling autocfg v1.5.0
[INFO] [stderr]    Compiling libc v0.2.178
[INFO] [stderr]     Checking cfg-if v1.0.4
[INFO] [stderr]    Compiling serde_json v1.0.147
[INFO] [stderr]    Compiling rayon-core v1.13.0
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking anstyle v1.0.13
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking memchr v2.7.6
[INFO] [stderr]     Checking clap_lex v0.7.6
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking zmij v0.1.9
[INFO] [stderr]     Checking itoa v1.0.16
[INFO] [stderr]     Checking regex-syntax v0.8.8
[INFO] [stderr]     Checking clap_builder v4.5.53
[INFO] [stderr]     Checking same-file v1.0.6
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking once_cell v1.21.3
[INFO] [stderr]     Checking walkdir v2.5.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking log v0.4.29
[INFO] [stderr]     Checking rustc-hash v2.1.1
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]     Checking crossbeam-epoch v0.9.18
[INFO] [stderr]     Checking crossbeam-deque v0.8.6
[INFO] [stderr]    Compiling syn v2.0.111
[INFO] [stderr]     Checking regex-automata v0.4.13
[INFO] [stderr]     Checking rayon v1.11.0
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking clap v4.5.53
[INFO] [stderr]     Checking is-terminal v0.4.17
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking regex v1.12.2
[INFO] [stderr]    Compiling zerocopy-derive v0.8.31
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling nexus-rt-derive v1.2.1
[INFO] [stderr]     Checking nexus-rt v2.5.1 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking half v2.7.1
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking nexus-rt-tests v0.0.0 (/opt/rustwide/target/tests/trybuild/nexus-rt)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.10s
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/callback_missing_ctx.rs ... ok
[INFO] [stderr] test tests/ui/callback_wrong_sig.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be converted into a callback
[INFO] [stderr]   --> tests/ui/callback_wrong_sig.rs:22:40
[INFO] [stderr]    |
[INFO] [stderr] 22 |     register_callback::<MyCtx, u32, _>(bad_callback, MyCtx, &reg);
[INFO] [stderr]    |     ---------------------------------- ^^^^^^^^^^^^ the trait `IntoCallback<MyCtx, u32, _>` is not implemented for fn item `fn(u32) -> u32 {bad_callback}`
[INFO] [stderr]    |     |
[INFO] [stderr]    |     required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: callback signature: `fn(&mut Context, Res<A>, ..., Event)` — context first, then resources, event last
[INFO] [stderr]    = note: for Handler<()> with params, wrap with `no_event(fn_name)` to omit the event parameter
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn` when using Param resources
[INFO] [stderr]    = help: the following other types implement trait `IntoCallback<C, E, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoCallback<C, (), (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCallback<C, (), (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCallback<C, (), (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCallback<C, (), (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCallback<C, (), (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCallback<C, (), (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCallback<C, (), (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCallback<C, (), (P0,)>`
[INFO] [stderr] note: required by a bound in `register_callback`
[INFO] [stderr]   --> tests/ui/callback_wrong_sig.rs:13:39
[INFO] [stderr]    |
[INFO] [stderr] 13 | fn register_callback<C, E, P>(f: impl IntoCallback<C, E, P>, ctx: C, registry: &nexus_rt::Registry) {
[INFO] [stderr]    |                                       ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `register_callback`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be converted into a callback
[INFO] [stderr]   --> tests/ui/callback_wrong_sig.rs:22:40
[INFO] [stderr]    |
[INFO] [stderr] 22 |     register_callback::<MyCtx, u32, _>(bad_callback, MyCtx, &reg);
[INFO] [stderr]    |     ---------------------------------- ^^^^^^^^^^^^ the trait `IntoCallback<MyCtx, u32, _>` is not implemented for fn item `fn(u32) -> u32 {bad_callback}`
[INFO] [stderr]    |     |
[INFO] [stderr]    |     required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: callback signature: `fn(&mut Context, Res<A>, ..., Event)` — context first, then resources, event last
[INFO] [stderr]    = note: for Handler<()> with params, wrap with `no_event(fn_name)` to omit the event parameter
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn` when using Param resources
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoCallback<C, E, Params>`:
[INFO] [stderr]              IntoCallback<C, (), (P0, P1)>
[INFO] [stderr]              IntoCallback<C, (), (P0, P1, P2)>
[INFO] [stderr]              IntoCallback<C, (), (P0, P1, P2, P3)>
[INFO] [stderr]              IntoCallback<C, (), (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoCallback<C, (), (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoCallback<C, (), (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoCallback<C, (), (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoCallback<C, (), (P0,)>
[INFO] [stderr] note: required by a bound in `register_callback`
[INFO] [stderr]   --> tests/ui/callback_wrong_sig.rs:13:39
[INFO] [stderr]    |
[INFO] [stderr] 13 | fn register_callback<C, E, P>(f: impl IntoCallback<C, E, P>, ctx: C, registry: &nexus_rt::Registry) {
[INFO] [stderr]    |                                       ^^^^^^^^^^^^^^^^^^^^^ required by this bound in `register_callback`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/ctx_dag_wrong_merge.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a context-aware merge step
[INFO] [stderr]   --> tests/ui/ctx_dag_wrong_merge.rs:35:16
[INFO] [stderr]    |
[INFO] [stderr] 35 |         .merge(bad_merge, reg);
[INFO] [stderr]    |          ----- ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `IntoCtxMergeStep<MyCtx, (&'static u32, &'static String), _, _>` is not implemented for fn item `for<'a> fn(&'a mut MyCtx, u32, String) {bad_merge}`
[INFO] [stderr]    = note: ctx merge steps: `fn(&mut C, Params..., &A, &B, ...) -> Out`
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr] note: required by a bound in `CtxDagChainFork::<Ctx, In, ForkOut, Chain, (CtxDagArm<Ctx, ForkOut, A0, C0>, CtxDagArm<Ctx, ForkOut, A1, C1>)>::merge`
[INFO] [stderr]   --> src/ctx_dag.rs
[INFO] [stderr]    |
[INFO] [stderr]    |             pub fn merge<MOut, Params, S>(
[INFO] [stderr]    |                    ----- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]    |                 S: IntoCtxMergeStep<Ctx, (&'static A0, &'static A1), MOut, Params>,
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `CtxDagChainFork::<Ctx, In, ForkOut, Chain, (CtxDagArm<Ctx, ForkOut, A0, C0>, CtxDagArm<Ctx, ForkOut, A1, C1>)>::merge`
[INFO] [stderr] ...
[INFO] [stderr]    | impl_ctx_dag_fork!(fork: CtxDagChainFork, output: CtxDagChain, upstream: In);
[INFO] [stderr]    | ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]    = note: this error originates in the macro `impl_ctx_dag_fork` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a context-aware merge step
[INFO] [stderr]   --> tests/ui/ctx_dag_wrong_merge.rs:35:16
[INFO] [stderr]    |
[INFO] [stderr] 35 |         .merge(bad_merge, reg);
[INFO] [stderr]    |          ----- ^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = help: the trait `nexus_rt::IntoCtxMergeStep<MyCtx, (&'static u32, &'static String), _, _>` is not implemented for fn item `for<'a> fn(&'a mut MyCtx, u32, String) {bad_merge}`
[INFO] [stderr]    = note: ctx merge steps: `fn(&mut C, Params..., &A, &B, ...) -> Out`
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr] note: required by a bound in `CtxDagChainFork::<Ctx, In, ForkOut, Chain, (CtxDagArm<Ctx, ForkOut, A0, C0>, CtxDagArm<Ctx, ForkOut, A1, C1>)>::merge`
[INFO] [stderr]   --> src/ctx_dag.rs
[INFO] [stderr]    |
[INFO] [stderr]    |         impl<Ctx, $U, ForkOut: 'static, Chain, A0: 'static, C0, A1: 'static, C1>
[INFO] [stderr] ...
[INFO] [stderr]    |             pub fn merge<MOut, Params, S>(
[INFO] [stderr] ...
[INFO] [stderr]    |                 S: IntoCtxMergeStep<Ctx, (&'static A0, &'static A1), MOut, Params>,
[INFO] [stderr]    |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `CtxDagChainFork::<Ctx, In, ForkOut, Chain, (CtxDagArm<Ctx, ForkOut, A0, C0>, CtxDagArm<Ctx, ForkOut, A1, C1>)>::merge`
[INFO] [stderr] ...
[INFO] [stderr]    | impl_ctx_dag_fork!(fork: CtxDagChainFork, output: CtxDagChain, upstream: In);
[INFO] [stderr]    | ---------------------------------------------------------------------------- in this macro invocation
[INFO] [stderr]    = note: this error originates in the macro `impl_ctx_dag_fork` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/ctx_pipeline_missing_ctx.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a context-aware pipeline step
[INFO] [stderr]   --> tests/ui/ctx_pipeline_missing_ctx.rs:21:66
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let _pipeline = CtxPipelineBuilder::<MyCtx, u32>::new().then(bad_step, reg);
[INFO] [stderr]    |                                                             ---- ^^^^^^^^ the trait `IntoCtxStep<MyCtx, u32, _, _>` is not implemented for fn item `for<'a> fn(Res<'a, Val>, u32) -> u64 {bad_step}`
[INFO] [stderr]    |                                                             |
[INFO] [stderr]    |                                                             required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: ctx step signature: `fn(&mut C, Params..., In) -> Out` — context first, resources, input last
[INFO] [stderr]    = note: for raw World access: `fn(&mut C, &mut World, In) -> Out`
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoCtxStep<C, In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoCtxStep<C, (), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCtxStep<C, (), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCtxStep<C, (), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCtxStep<C, (), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCtxStep<C, (), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCtxStep<C, (), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCtxStep<C, (), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoCtxStep<C, (), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `CtxPipelineBuilder::<C, In>::then`
[INFO] [stderr]   --> src/ctx_pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn then<Out, Params, S: IntoCtxStep<C, In, Out, Params>>(
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `CtxPipelineBuilder::<C, In>::then`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a context-aware pipeline step
[INFO] [stderr]   --> tests/ui/ctx_pipeline_missing_ctx.rs:21:66
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let _pipeline = CtxPipelineBuilder::<MyCtx, u32>::new().then(bad_step, reg);
[INFO] [stderr]    |                                                             ---- ^^^^^^^^ the trait `IntoCtxStep<MyCtx, u32, _, _>` is not implemented for fn item `for<'a> fn(Res<'a, Val>, u32) -> u64 {bad_step}`
[INFO] [stderr]    |                                                             |
[INFO] [stderr]    |                                                             required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: ctx step signature: `fn(&mut C, Params..., In) -> Out` — context first, resources, input last
[INFO] [stderr]    = note: for raw World access: `fn(&mut C, &mut World, In) -> Out`
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoCtxStep<C, In, Out, Params>`:
[INFO] [stderr]              IntoCtxStep<C, (), Out, (P0, P1)>
[INFO] [stderr]              IntoCtxStep<C, (), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoCtxStep<C, (), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoCtxStep<C, (), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoCtxStep<C, (), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoCtxStep<C, (), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoCtxStep<C, (), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoCtxStep<C, (), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `CtxPipelineBuilder::<C, In>::then`
[INFO] [stderr]   --> src/ctx_pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<C, In> CtxPipelineBuilder<C, In> {
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn then<Out, Params, S: IntoCtxStep<C, In, Out, Params>>(
[INFO] [stderr]    |                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `CtxPipelineBuilder::<C, In>::then`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/dag_merge_mismatch.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a pipeline step for this input type
[INFO] [stderr]   --> tests/ui/dag_merge_mismatch.rs:22:31
[INFO] [stderr]    |
[INFO] [stderr] 22 |         .arm(|seed| seed.then(identity, &reg))
[INFO] [stderr]    |                          ---- ^^^^^^^^ the trait `IntoStep<&'static u32, _, _>` is not implemented for fn item `fn(u32) -> u32 {identity}`
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, use `.map()` to operate on the inner `T`
[INFO] [stderr]    = note: if the pipeline output is `Result<T, E>`, use `.map()` for `Ok` or `.catch()` for `Err`
[INFO] [stderr]    = note: if using a closure with resource params (Res<T>, ResMut<T>), that isn't supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoStep<In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `DagArmSeed::<In>::then`
[INFO] [stderr]   --> src/dag.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn then<Out, Params, S>(
[INFO] [stderr]    |            ---- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]    |         S: IntoStep<&'static In, Out, Params>,
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `DagArmSeed::<In>::then`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: this function cannot be used as a pipeline step for this input type
[INFO] [stderr]   --> tests/ui/dag_merge_mismatch.rs:23:31
[INFO] [stderr]    |
[INFO] [stderr] 23 |         .arm(|seed| seed.then(to_string, &reg))
[INFO] [stderr]    |                          ---- ^^^^^^^^^ the trait `IntoStep<&'static u32, _, _>` is not implemented for fn item `fn(u32) -> String {to_string}`
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, use `.map()` to operate on the inner `T`
[INFO] [stderr]    = note: if the pipeline output is `Result<T, E>`, use `.map()` for `Ok` or `.catch()` for `Err`
[INFO] [stderr]    = note: if using a closure with resource params (Res<T>, ResMut<T>), that isn't supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoStep<In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `DagArmSeed::<In>::then`
[INFO] [stderr]   --> src/dag.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn then<Out, Params, S>(
[INFO] [stderr]    |            ---- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]    |         S: IntoStep<&'static In, Out, Params>,
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `DagArmSeed::<In>::then`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a pipeline step for this input type
[INFO] [stderr]   --> tests/ui/dag_merge_mismatch.rs:22:31
[INFO] [stderr]    |
[INFO] [stderr] 22 |         .arm(|seed| seed.then(identity, &reg))
[INFO] [stderr]    |                          ---- ^^^^^^^^ the trait `IntoStep<&'static u32, _, _>` is not implemented for fn item `fn(u32) -> u32 {identity}`
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, use `.map()` to operate on the inner `T`
[INFO] [stderr]    = note: if the pipeline output is `Result<T, E>`, use `.map()` for `Ok` or `.catch()` for `Err`
[INFO] [stderr]    = note: if using a closure with resource params (Res<T>, ResMut<T>), that isn't supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoStep<In, Out, Params>`:
[INFO] [stderr]              IntoStep<(), Out, (P0, P1)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoStep<(), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `DagArmSeed::<In>::then`
[INFO] [stderr]   --> src/dag.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In: 'static> DagArmSeed<In> {
[INFO] [stderr]    |     /// Add the first step in this arm. Takes `&In` by reference.
[INFO] [stderr]    |     pub fn then<Out, Params, S>(
[INFO] [stderr] ...
[INFO] [stderr]    |         S: IntoStep<&'static In, Out, Params>,
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `DagArmSeed::<In>::then`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: this function cannot be used as a pipeline step for this input type
[INFO] [stderr]   --> tests/ui/dag_merge_mismatch.rs:23:31
[INFO] [stderr]    |
[INFO] [stderr] 23 |         .arm(|seed| seed.then(to_string, &reg))
[INFO] [stderr]    |                          ---- ^^^^^^^^^ the trait `IntoStep<&'static u32, _, _>` is not implemented for fn item `fn(u32) -> String {to_string}`
[INFO] [stderr]    |                          |
[INFO] [stderr]    |                          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, use `.map()` to operate on the inner `T`
[INFO] [stderr]    = note: if the pipeline output is `Result<T, E>`, use `.map()` for `Ok` or `.catch()` for `Err`
[INFO] [stderr]    = note: if using a closure with resource params (Res<T>, ResMut<T>), that isn't supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoStep<In, Out, Params>`:
[INFO] [stderr]              IntoStep<(), Out, (P0, P1)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoStep<(), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `DagArmSeed::<In>::then`
[INFO] [stderr]   --> src/dag.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In: 'static> DagArmSeed<In> {
[INFO] [stderr]    |     /// Add the first step in this arm. Takes `&In` by reference.
[INFO] [stderr]    |     pub fn then<Out, Params, S>(
[INFO] [stderr] ...
[INFO] [stderr]    |         S: IntoStep<&'static In, Out, Params>,
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `DagArmSeed::<In>::then`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/derive_resource_non_send.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `Rc<u32>` cannot be sent between threads safely
[INFO] [stderr]  --> tests/ui/derive_resource_non_send.rs:6:8
[INFO] [stderr]   |
[INFO] [stderr] 6 | struct Bad(std::rc::Rc<u32>);
[INFO] [stderr]   |        ^^^ `Rc<u32>` cannot be sent between threads safely
[INFO] [stderr]   |
[INFO] [stderr]   = help: within `Bad`, the trait `Send` is not implemented for `Rc<u32>`
[INFO] [stderr] note: required because it appears within the type `Bad`
[INFO] [stderr]  --> tests/ui/derive_resource_non_send.rs:6:8
[INFO] [stderr]   |
[INFO] [stdout] test diagnostics ... FAILED
[INFO] [stderr] 6 | struct Bad(std::rc::Rc<u32>);
[INFO] [stdout] 
[INFO] [stderr]   |        ^^^
[INFO] [stdout] failures:
[INFO] [stderr] note: required by a bound in `Resource`
[INFO] [stdout] 
[INFO] [stderr]  --> src/world.rs
[INFO] [stdout] ---- diagnostics stdout ----
[INFO] [stderr]   |
[INFO] [stdout] 
[INFO] [stderr]   | pub trait Resource: Send + 'static {}
[INFO] [stdout] thread 'diagnostics' (2751) panicked at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/trybuild-1.0.116/src/run.rs:102:13:
[INFO] [stderr]   |                     ^^^^ required by this bound in `Resource`
[INFO] [stdout] 19 of 28 tests failed
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stdout] stack backtrace:
[INFO] [stderr] 
[INFO] [stdout]    0:     0x56887d2124d1 - <<std[617be2ca0a6fd877]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[a373ad73a504971]::fmt::Display>::fmt
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stdout]    1:     0x56887d2287ba - core[a373ad73a504971]::fmt::write
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stdout]    2:     0x56887d216d1c - <alloc[2e1b2a31b91974c5]::vec::Vec<u8> as core[a373ad73a504971]::io::write::Write>::write_fmt
[INFO] [stderr] error[E0277]: `Rc<u32>` cannot be sent between threads safely
[INFO] [stdout]    3:     0x56887d1eb936 - std[617be2ca0a6fd877]::panicking::default_hook::{closure#0}
[INFO] [stderr]  --> tests/ui/derive_resource_non_send.rs:6:8
[INFO] [stdout]    4:     0x56887d209a79 - std[617be2ca0a6fd877]::panicking::default_hook
[INFO] [stderr]   |
[INFO] [stdout]    5:     0x56887d1a3080 - test[aada8e7e76ba119b]::test_main_inner::{closure#0}
[INFO] [stderr] 6 | struct Bad(std::rc::Rc<u32>);
[INFO] [stdout]    6:     0x56887d209c32 - std[617be2ca0a6fd877]::panicking::panic_with_hook
[INFO] [stderr]   |        ^^^ `Rc<u32>` cannot be sent between threads safely
[INFO] [stdout]    7:     0x56887d1eb9e2 - std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}
[INFO] [stderr]   |
[INFO] [stdout]    8:     0x56887d1e4239 - std[617be2ca0a6fd877]::sys::backtrace::__rust_end_short_backtrace::<std[617be2ca0a6fd877]::panicking::panic_handler::{closure#0}, !>
[INFO] [stderr]   = help: within `Bad`, the trait `Send` is not implemented for `Rc<u32>`
[INFO] [stdout]    9:     0x56887d1ec5ed - __rustc[ea4f61d10b84890b]::rust_begin_unwind
[INFO] [stderr] note: required because it appears within the type `Bad`
[INFO] [stdout]   10:     0x56887d228f2c - core[a373ad73a504971]::panicking::panic_fmt
[INFO] [stderr]  --> tests/ui/derive_resource_non_send.rs:6:12
[INFO] [stdout]   11:     0x56887d0f51db - <trybuild[6881f2320c3a9da3]::Runner>::run
[INFO] [stderr]   |
[INFO] [stdout]   12:     0x56887d0f82f0 - <trybuild[6881f2320c3a9da3]::TestCases as core[a373ad73a504971]::ops::drop::Drop>::drop
[INFO] [stderr] 6 | struct Bad(std::rc::Rc<u32>);
[INFO] [stdout]   13:     0x56887d0ee548 - ui[7e4c555e9c78f57b]::diagnostics
[INFO] [stderr]   |            ^^^^^^^^^^^^^^^^ required by this field
[INFO] [stdout]   14:     0x56887d0ee749 - <ui[7e4c555e9c78f57b]::diagnostics::{closure#0} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once
[INFO] [stderr] note: required by a bound in `Resource`
[INFO] [stdout]   15:     0x56887d1964cb - test[aada8e7e76ba119b]::__rust_begin_short_backtrace::<core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>, fn() -> core[a373ad73a504971]::result::Result<(), alloc[2e1b2a31b91974c5]::string::String>>
[INFO] [stderr]  --> src/world.rs
[INFO] [stdout]   16:     0x56887d1a36a5 - test[aada8e7e76ba119b]::run_test::{closure#0}
[INFO] [stderr]   |
[INFO] [stdout]   17:     0x56887d19cf94 - std[617be2ca0a6fd877]::sys::backtrace::__rust_begin_short_backtrace::<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>
[INFO] [stderr]   | pub trait Resource: Send + 'static {}
[INFO] [stdout]   18:     0x56887d1a6732 - <std[617be2ca0a6fd877]::thread::lifecycle::spawn_unchecked<test[aada8e7e76ba119b]::run_test::{closure#1}, ()>::{closure#1} as core[a373ad73a504971]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stderr]   |                     ^^^^ required by this bound in `Resource`
[INFO] [stdout]   19:     0x56887d21172f - <std[617be2ca0a6fd877]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stdout]   20:     0x79cc109b1dfa - <unknown>
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stdout]   21:     0x79cc10a453d4 - clone
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stdout]   22:                0x0 - <unknown>
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stderr] test tests/ui/guard_takes_value.rs ... mismatch
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] failures:
[INFO] [stderr] EXPECTED:
[INFO] [stdout]     diagnostics
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stdout] 
[INFO] [stderr] error[E0277]: this function cannot be used as a reference step for this input type
[INFO] [stdout] test result: FAILED. 0 passed; 1 failed; 0 ignored; 0 measured; 0 filtered out; finished in 16.03s
[INFO] [stderr]   --> tests/ui/guard_takes_value.rs:22:16
[INFO] [stdout] 
[INFO] [stderr]    |
[INFO] [stderr] 22 |         .guard(check_value, &reg);
[INFO] [stderr]    |          ----- ^^^^^^^^^^^ the trait `IntoRefStep<u32, bool, _>` is not implemented for fn item `fn(u32) -> bool {check_value}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: reference steps (guard, filter, tap, inspect) take `&In`, not `In`
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, `.filter()` operates on `&T` inside the Option
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoRefStep<In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `PipelineChain::<In, Out, Chain>::guard`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn guard<Params, S: IntoRefStep<Out, bool, Params>>(
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineChain::<In, Out, Chain>::guard`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a reference step for this input type
[INFO] [stderr]   --> tests/ui/guard_takes_value.rs:22:16
[INFO] [stderr]    |
[INFO] [stderr] 22 |         .guard(check_value, &reg);
[INFO] [stderr]    |          ----- ^^^^^^^^^^^ the trait `IntoRefStep<u32, bool, _>` is not implemented for fn item `fn(u32) -> bool {check_value}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: reference steps (guard, filter, tap, inspect) take `&In`, not `In`
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, `.filter()` operates on `&T` inside the Option
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoRefStep<In, Out, Params>`:
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `PipelineChain::<In, Out, Chain>::guard`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In, Out, Chain: ChainCall<In, Out = Out>> PipelineChain<In, Out, Chain> {
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn guard<Params, S: IntoRefStep<Out, bool, Params>>(
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineChain::<In, Out, Chain>::guard`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/guard_wrong_ref.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a reference step for this input type
[INFO] [stderr]   --> tests/ui/guard_wrong_ref.rs:24:16
[INFO] [stderr]    |
[INFO] [stderr] 24 |         .guard(check_value, &reg);
[INFO] [stderr]    |          ----- ^^^^^^^^^^^ the trait `IntoRefStep<Option<u32>, bool, _>` is not implemented for fn item `fn(u32) -> bool {check_value}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: reference steps (guard, filter, tap, inspect) take `&In`, not `In`
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, `.filter()` operates on `&T` inside the Option
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoRefStep<In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `PipelineChain::<In, Out, Chain>::guard`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn guard<Params, S: IntoRefStep<Out, bool, Params>>(
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineChain::<In, Out, Chain>::guard`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a reference step for this input type
[INFO] [stderr]   --> tests/ui/guard_wrong_ref.rs:24:16
[INFO] [stderr]    |
[INFO] [stderr] 24 |         .guard(check_value, &reg);
[INFO] [stderr]    |          ----- ^^^^^^^^^^^ the trait `IntoRefStep<Option<u32>, bool, _>` is not implemented for fn item `fn(u32) -> bool {check_value}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: reference steps (guard, filter, tap, inspect) take `&In`, not `In`
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, `.filter()` operates on `&T` inside the Option
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoRefStep<In, Out, Params>`:
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `PipelineChain::<In, Out, Chain>::guard`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In, Out, Chain: ChainCall<In, Out = Out>> PipelineChain<In, Out, Chain> {
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn guard<Params, S: IntoRefStep<Out, bool, Params>>(
[INFO] [stderr]    |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineChain::<In, Out, Chain>::guard`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/handler_too_many_params.rs ... ok
[INFO] [stderr] test tests/ui/map_on_bare_value.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0599]: `PipelineChain<u32, u32, ThenNode<IdentityNode, nexus_rt::pipeline::Step<fn(u32) -> u32 {add_one}, ()>>>` is not an iterator
[INFO] [stderr]   --> tests/ui/map_on_bare_value.rs:16:10
[INFO] [stderr]    |
[INFO] [stderr] 14 |       let _ = PipelineBuilder::<u32>::new()
[INFO] [stderr]    |  _____________-
[INFO] [stderr] 15 | |         .then(add_one, &reg)
[INFO] [stderr] 16 | |         .map(add_one, &reg); // ERROR: no method named `map`
[INFO] [stderr]    | |         -^^^ `PipelineChain<u32, u32, ThenNode<IdentityNode, nexus_rt::pipeline::Step<fn(u32) -> u32 {add_one}, ()>>>` is not an iterator
[INFO] [stderr]    | |_________|
[INFO] [stderr]    |
[INFO] [stderr]    |
[INFO] [stderr]   ::: src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    |   pub struct PipelineChain<In, Out, Chain> {
[INFO] [stderr]    |   ---------------------------------------- doesn't satisfy `_: Iterator`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the following trait bounds were not satisfied:
[INFO] [stderr]            `PipelineChain<u32, u32, ThenNode<IdentityNode, nexus_rt::pipeline::Step<fn(u32) -> u32 {add_one}, ()>>>: Iterator`
[INFO] [stderr]            which is required by `&mut PipelineChain<u32, u32, ThenNode<IdentityNode, nexus_rt::pipeline::Step<fn(u32) -> u32 {add_one}, ()>>>: Iterator`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0599]: `PipelineChain<u32, u32, nexus_rt::pipeline::ThenNode<nexus_rt::pipeline::IdentityNode, nexus_rt::pipeline::Step<fn(u32) -> u32 {add_one}, ()>>>` is not an iterator
[INFO] [stderr]   --> tests/ui/map_on_bare_value.rs:16:10
[INFO] [stderr]    |
[INFO] [stderr] 14 |     let _ = PipelineBuilder::<u32>::new()
[INFO] [stderr] 15 |         .then(add_one, &reg)
[INFO] [stderr] 16 |         .map(add_one, &reg); // ERROR: no method named `map`
[INFO] [stderr]    |          ^^^ `PipelineChain<u32, u32, nexus_rt::pipeline::ThenNode<nexus_rt::pipeline::IdentityNode, nexus_rt::pipeline::Step<fn(u32) -> u32 {add_one}, ()>>>` is not an iterator
[INFO] [stderr]    |
[INFO] [stderr]   ::: src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    | pub struct PipelineChain<In, Out, Chain> {
[INFO] [stderr]    | ---------------------------------------- doesn't satisfy `_: Iterator`
[INFO] [stderr]    |
[INFO] [stderr]    = note: the following trait bounds were not satisfied:
[INFO] [stderr]            `PipelineChain<u32, u32, nexus_rt::pipeline::ThenNode<nexus_rt::pipeline::IdentityNode, nexus_rt::pipeline::Step<fn(u32) -> u32 {add_one}, ()>>>: Iterator`
[INFO] [stderr]            which is required by `&mut PipelineChain<u32, u32, nexus_rt::pipeline::ThenNode<nexus_rt::pipeline::IdentityNode, nexus_rt::pipeline::Step<fn(u32) -> u32 {add_one}, ()>>>: Iterator`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/param_no_lifetime.rs ... ok
[INFO] [stderr] test tests/ui/param_non_param_field.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `&'static u32: Param` is not satisfied
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:6:10
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Param)]
[INFO] [stderr]   |          ^^^^^ the trait `Param` is not implemented for `&'static u32`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `Param`:
[INFO] [stderr]             ()
[INFO] [stderr]             (P0, P1)
[INFO] [stderr]             (P0, P1, P2)
[INFO] [stderr]             (P0, P1, P2, P3)
[INFO] [stderr]             (P0, P1, P2, P3, P4)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6, P7)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: this error originates in the derive macro `Param` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&'static u32: Param` is not satisfied in `BadFieldState`
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct BadField<'w> {
[INFO] [stderr]   |        ^^^^^^^^ within `BadFieldState`, the trait `Param` is not implemented for `&'static u32`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `Param`:
[INFO] [stderr]             ()
[INFO] [stderr]             (P0, P1)
[INFO] [stderr]             (P0, P1, P2)
[INFO] [stderr]             (P0, P1, P2, P3)
[INFO] [stderr]             (P0, P1, P2, P3, P4)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6, P7)
[INFO] [stderr]           and $N others
[INFO] [stderr] note: required because it appears within the type `BadFieldState`
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct BadField<'w> {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] note: required by a bound in `nexus_rt::Param::State`
[INFO] [stderr]  --> src/handler.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     type State: Send;
[INFO] [stderr]   |                 ^^^^ required by this bound in `Param::State`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&'static u32: Param` is not satisfied in `BadFieldState`
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:6:10
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Param)]
[INFO] [stderr]   |          ^^^^^ within `BadFieldState`, the trait `Param` is not implemented for `&'static u32`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `Param`:
[INFO] [stderr]             ()
[INFO] [stderr]             (P0, P1)
[INFO] [stderr]             (P0, P1, P2)
[INFO] [stderr]             (P0, P1, P2, P3)
[INFO] [stderr]             (P0, P1, P2, P3, P4)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6, P7)
[INFO] [stderr]           and $N others
[INFO] [stderr] note: required because it appears within the type `BadFieldState`
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct BadField<'w> {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr]   = note: the return type of a function must have a statically known size
[INFO] [stderr]   = note: this error originates in the derive macro `Param` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&'static u32: Param` is not satisfied
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 |     x: &'w u32,  // &u32 doesn't impl Param
[INFO] [stderr]   |        ^^^^^^^ the trait `Param` is not implemented for `&'static u32`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `Param`:
[INFO] [stderr]             ()
[INFO] [stderr]             (P0, P1)
[INFO] [stderr]             (P0, P1, P2)
[INFO] [stderr]             (P0, P1, P2, P3)
[INFO] [stderr]             (P0, P1, P2, P3, P4)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6, P7)
[INFO] [stderr]           and $N others
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: the trait bound `&'static u32: Param` is not satisfied
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:6:10
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Param)]
[INFO] [stderr]   |          ^^^^^ the trait `Param` is not implemented for `&'static u32`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `Param`:
[INFO] [stderr]             ()
[INFO] [stderr]             (P0,)
[INFO] [stderr]             (P0, P1)
[INFO] [stderr]             (P0, P1, P2)
[INFO] [stderr]             (P0, P1, P2, P3)
[INFO] [stderr]             (P0, P1, P2, P3, P4)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6)
[INFO] [stderr]           and $N others
[INFO] [stderr]   = note: this error originates in the derive macro `Param` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&'static u32: Param` is not satisfied in `BadFieldState`
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct BadField<'w> {
[INFO] [stderr]   |        ^^^^^^^^ within `BadFieldState`, the trait `Param` is not implemented for `&'static u32`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `Param`:
[INFO] [stderr]             ()
[INFO] [stderr]             (P0,)
[INFO] [stderr]             (P0, P1)
[INFO] [stderr]             (P0, P1, P2)
[INFO] [stderr]             (P0, P1, P2, P3)
[INFO] [stderr]             (P0, P1, P2, P3, P4)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6)
[INFO] [stderr]           and $N others
[INFO] [stderr] note: required because it appears within the type `BadFieldState`
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct BadField<'w> {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr] note: required by a bound in `nexus_rt::Param::State`
[INFO] [stderr]  --> src/handler.rs
[INFO] [stderr]   |
[INFO] [stderr]   | pub trait Param {
[INFO] [stderr] ...
[INFO] [stderr]   |     type State: Send;
[INFO] [stderr]   |                 ^^^^ required by this bound in `Param::State`
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&'static u32: Param` is not satisfied in `BadFieldState`
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:6:10
[INFO] [stderr]   |
[INFO] [stderr] 6 | #[derive(Param)]
[INFO] [stderr]   |          ^^^^^ within `BadFieldState`, the trait `Param` is not implemented for `&'static u32`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `Param`:
[INFO] [stderr]             ()
[INFO] [stderr]             (P0,)
[INFO] [stderr]             (P0, P1)
[INFO] [stderr]             (P0, P1, P2)
[INFO] [stderr]             (P0, P1, P2, P3)
[INFO] [stderr]             (P0, P1, P2, P3, P4)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6)
[INFO] [stderr]           and $N others
[INFO] [stderr] note: required because it appears within the type `BadFieldState`
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:7:8
[INFO] [stderr]   |
[INFO] [stderr] 7 | struct BadField<'w> {
[INFO] [stderr]   |        ^^^^^^^^
[INFO] [stderr]   = note: the return type of a function must have a statically known size
[INFO] [stderr]   = note: this error originates in the derive macro `Param` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] 
[INFO] [stderr] error[E0277]: the trait bound `&'static u32: Param` is not satisfied
[INFO] [stderr]  --> tests/ui/param_non_param_field.rs:8:8
[INFO] [stderr]   |
[INFO] [stderr] 8 |     x: &'w u32,  // &u32 doesn't impl Param
[INFO] [stderr]   |        ^^^^^^^ the trait `Param` is not implemented for `&'static u32`
[INFO] [stderr]   |
[INFO] [stderr]   = help: the following other types implement trait `Param`:
[INFO] [stderr]             ()
[INFO] [stderr]             (P0,)
[INFO] [stderr]             (P0, P1)
[INFO] [stderr]             (P0, P1, P2)
[INFO] [stderr]             (P0, P1, P2, P3)
[INFO] [stderr]             (P0, P1, P2, P3, P4)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5)
[INFO] [stderr]             (P0, P1, P2, P3, P4, P5, P6)
[INFO] [stderr]           and $N others
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/param_two_lifetimes.rs ... ok
[INFO] [stderr] test tests/ui/register_generic_resource_non_send.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `Rc<u32>` cannot be sent between threads safely
[INFO] [stderr]   --> tests/ui/register_generic_resource_non_send.rs:13:17
[INFO] [stderr]    |
[INFO] [stderr] 13 |     wb.register(Wrap(Rc::new(0u32)));
[INFO] [stderr]    |        -------- ^^^^^^^^^^^^^^^^^^^ `Rc<u32>` cannot be sent between threads safely
[INFO] [stderr]    |        |
[INFO] [stderr]    |        required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = help: within `Wrap<Rc<u32>>`, the trait `Send` is not implemented for `Rc<u32>`
[INFO] [stderr] help: the trait `Resource` is implemented for `Wrap<T>`
[INFO] [stderr]   --> tests/ui/register_generic_resource_non_send.rs:8:10
[INFO] [stderr]    |
[INFO] [stderr]  8 | #[derive(Resource)]
[INFO] [stderr]    |          ^^^^^^^^
[INFO] [stderr] note: required because it appears within the type `Wrap<Rc<u32>>`
[INFO] [stderr]   --> tests/ui/register_generic_resource_non_send.rs:9:8
[INFO] [stderr]    |
[INFO] [stderr]  9 | struct Wrap<T>(T);
[INFO] [stderr]    |        ^^^^
[INFO] [stderr] note: required for `Wrap<Rc<u32>>` to implement `Resource`
[INFO] [stderr]   --> tests/ui/register_generic_resource_non_send.rs:8:10
[INFO] [stderr]    |
[INFO] [stderr]  8 | #[derive(Resource)]
[INFO] [stderr]    |          ^^^^^^^^ unsatisfied trait bound introduced in this `derive` macro
[INFO] [stderr]  9 | struct Wrap<T>(T);
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] note: required by a bound in `WorldBuilder::register`
[INFO] [stderr]   --> src/world.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn register<T: Resource>(&mut self, value: T) -> ResourceId {
[INFO] [stderr]    |                        ^^^^^^^^ required by this bound in `WorldBuilder::register`
[INFO] [stderr]    = note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `Rc<u32>` cannot be sent between threads safely
[INFO] [stderr]   --> tests/ui/register_generic_resource_non_send.rs:13:17
[INFO] [stderr]    |
[INFO] [stderr] 13 |     wb.register(Wrap(Rc::new(0u32)));
[INFO] [stderr]    |        -------- ^^^^^^^^^^^^^^^^^^^ `Rc<u32>` cannot be sent between threads safely
[INFO] [stderr]    |        |
[INFO] [stderr]    |        required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = help: within `Wrap<Rc<u32>>`, the trait `Send` is not implemented for `Rc<u32>`
[INFO] [stderr] help: the trait `Resource` is conditionally implemented for `Wrap<T>`
[INFO] [stderr]   --> tests/ui/register_generic_resource_non_send.rs:8:10
[INFO] [stderr]    |
[INFO] [stderr]  8 | #[derive(Resource)]
[INFO] [stderr]    |          ^^^^^^^^ unsatisfied requirement introduced here: `Wrap<Rc<u32>>: Send`
[INFO] [stderr] note: required because it appears within the type `Wrap<Rc<u32>>`
[INFO] [stderr]   --> tests/ui/register_generic_resource_non_send.rs:9:16
[INFO] [stderr]    |
[INFO] [stderr]  9 | struct Wrap<T>(T);
[INFO] [stderr]    |                ^ required by this field
[INFO] [stderr] note: required for `Wrap<Rc<u32>>` to implement `Resource`
[INFO] [stderr]   --> tests/ui/register_generic_resource_non_send.rs:9:8
[INFO] [stderr]    |
[INFO] [stderr]  8 | #[derive(Resource)]
[INFO] [stderr]    |          -------- type parameter would need to implement `Resource`
[INFO] [stderr]  9 | struct Wrap<T>(T);
[INFO] [stderr]    |        ^^^^^^^
[INFO] [stderr] note: required by a bound in `WorldBuilder::register`
[INFO] [stderr]   --> src/world.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl WorldBuilder {
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn register<T: Resource>(&mut self, value: T) -> ResourceId {
[INFO] [stderr]    |                        ^^^^^^^^ required by this bound in `WorldBuilder::register`
[INFO] [stderr]    = note: this error originates in the derive macro `Resource` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/register_non_resource.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this type cannot be stored as a resource in the World
[INFO] [stderr]  --> tests/ui/register_non_resource.rs:6:19
[INFO] [stderr]   |
[INFO] [stderr] 6 |     wb.register::<u64>(42);
[INFO] [stderr]   |        --------   ^^^ the trait `Resource` is not implemented for `u64`
[INFO] [stderr]   |        |
[INFO] [stderr]   |        required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr]   = note: add `#[derive(Resource)]` to your type, or use `new_resource!` for a newtype wrapper
[INFO] [stderr] help: the trait `Resource` is implemented for `Clock`
[INFO] [stderr]  --> src/clock.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl crate::world::Resource for Clock {}
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: required by a bound in `WorldBuilder::register`
[INFO] [stderr]  --> src/world.rs
[INFO] [stderr]   |
[INFO] [stderr]   |     pub fn register<T: Resource>(&mut self, value: T) -> ResourceId {
[INFO] [stderr]   |                        ^^^^^^^^ required by this bound in `WorldBuilder::register`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this type cannot be stored as a resource in the World
[INFO] [stderr]  --> tests/ui/register_non_resource.rs:6:19
[INFO] [stderr]   |
[INFO] [stderr] 6 |     wb.register::<u64>(42);
[INFO] [stderr]   |        --------   ^^^ the trait `Resource` is not implemented for `u64`
[INFO] [stderr]   |        |
[INFO] [stderr]   |        required by a bound introduced by this call
[INFO] [stderr]   |
[INFO] [stderr]   = note: add `#[derive(Resource)]` to your type, or use `new_resource!` for a newtype wrapper
[INFO] [stderr] help: the trait `Resource` is implemented for `Clock`
[INFO] [stderr]  --> src/clock.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl crate::world::Resource for Clock {}
[INFO] [stderr]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] note: required by a bound in `WorldBuilder::register`
[INFO] [stderr]  --> src/world.rs
[INFO] [stderr]   |
[INFO] [stderr]   | impl WorldBuilder {
[INFO] [stderr] ...
[INFO] [stderr]   |     pub fn register<T: Resource>(&mut self, value: T) -> ResourceId {
[INFO] [stderr]   |                        ^^^^^^^^ required by this bound in `WorldBuilder::register`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/scan_wrong_acc.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a scan step
[INFO] [stderr]   --> tests/ui/scan_wrong_acc.rs:17:28
[INFO] [stderr]    |
[INFO] [stderr] 17 |         .scan::<u64, _, _, _>(0u64, bad_scan, &reg);
[INFO] [stderr]    |          ----              ^ the trait `IntoScanStep<u64, u32, _, _>` is not implemented for fn item `fn(u32) -> u32 {bad_scan}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: scan steps take `&mut Accumulator` as first param, then resources, then input last
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoScanStep<Acc, In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoScanStep<Acc, (), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoScanStep<Acc, (), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoScanStep<Acc, (), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoScanStep<Acc, (), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoScanStep<Acc, (), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoScanStep<Acc, (), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoScanStep<Acc, (), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoScanStep<Acc, (), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `PipelineBuilder::<In>::scan`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn scan<Acc, Out, Params, S>(
[INFO] [stderr]    |            ---- required by a bound in this associated function
[INFO] [stderr] ...
[INFO] [stderr]    |         S: IntoScanStep<Acc, In, Out, Params>,
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineBuilder::<In>::scan`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a scan step
[INFO] [stderr]   --> tests/ui/scan_wrong_acc.rs:17:28
[INFO] [stderr]    |
[INFO] [stderr] 17 |         .scan::<u64, _, _, _>(0u64, bad_scan, &reg);
[INFO] [stderr]    |          ----              ^ the trait `IntoScanStep<u64, u32, _, _>` is not implemented for fn item `fn(u32) -> u32 {bad_scan}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: scan steps take `&mut Accumulator` as first param, then resources, then input last
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoScanStep<Acc, In, Out, Params>`:
[INFO] [stderr]              IntoScanStep<Acc, (), Out, (P0, P1)>
[INFO] [stderr]              IntoScanStep<Acc, (), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoScanStep<Acc, (), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoScanStep<Acc, (), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoScanStep<Acc, (), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoScanStep<Acc, (), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoScanStep<Acc, (), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoScanStep<Acc, (), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `PipelineBuilder::<In>::scan`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In> PipelineBuilder<In> {
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn scan<Acc, Out, Params, S>(
[INFO] [stderr] ...
[INFO] [stderr]    |         S: IntoScanStep<Acc, In, Out, Params>,
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineBuilder::<In>::scan`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/select_non_exhaustive.rs ... ok
[INFO] [stderr] test tests/ui/template_wrong_blueprint.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0631]: type mismatch in function arguments
[INFO] [stderr]   --> tests/ui/template_wrong_blueprint.rs:21:57
[INFO] [stderr]    |
[INFO] [stderr] 12 | fn wrong_event(_config: Res<Config>, _event: String) {
[INFO] [stderr]    | ---------------------------------------------------- found signature defined here
[INFO] [stderr] ...
[INFO] [stderr] 21 |     let _template = HandlerTemplate::<MyBlueprint>::new(wrong_event, &reg);
[INFO] [stderr]    |                     ----------------------------------- ^^^^^^^^^^^ expected due to this
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected function signature `fn(Res<'static, Config>, u32) -> _`
[INFO] [stderr]               found function signature `fn(Res<'_, Config>, String) -> _`
[INFO] [stderr]    = note: required for `&'a mut for<'a> fn(Res<'a, Config>, String) {wrong_event}` to implement `for<'a> FnOnce(Res<'static, Config>, u32)`
[INFO] [stderr]    = note: required for `for<'a> fn(Res<'a, Config>, String) {wrong_event}` to implement `TemplateDispatch<(Res<'static, Config>,), u32>`
[INFO] [stderr] note: required by a bound in `HandlerTemplate::<K>::new`
[INFO] [stderr]   --> src/template.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn new<F>(f: F, registry: &Registry) -> Self
[INFO] [stderr]    |            --- required by a bound in this associated function
[INFO] [stderr]    |     where
[INFO] [stderr]    |         F: TemplateDispatch<K::Params, K::Event>,
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HandlerTemplate::<K>::new`
[INFO] [stderr] help: consider wrapping the function in a closure
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let _template = HandlerTemplate::<MyBlueprint>::new(|arg0: Res<'static, Config>, arg1: u32| wrong_event(arg0, /* String */), &reg);
[INFO] [stderr]    |                                                         +++++++++++++++++++++++++++++++++++++++            ++++++++++++++++++++
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0631]: type mismatch in function arguments
[INFO] [stderr]   --> tests/ui/template_wrong_blueprint.rs:21:57
[INFO] [stderr]    |
[INFO] [stderr] 12 | fn wrong_event(_config: Res<Config>, _event: String) {
[INFO] [stderr]    | ---------------------------------------------------- found signature defined here
[INFO] [stderr] ...
[INFO] [stderr] 21 |     let _template = HandlerTemplate::<MyBlueprint>::new(wrong_event, &reg);
[INFO] [stderr]    |                     ----------------------------------- ^^^^^^^^^^^ expected due to this
[INFO] [stderr]    |                     |
[INFO] [stderr]    |                     required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: expected function signature `fn(Res<'static, Config>, u32) -> _`
[INFO] [stderr]               found function signature `fn(Res<'_, Config>, String) -> _`
[INFO] [stderr]    = note: required for `&'a mut for<'a> fn(Res<'a, Config>, String) {wrong_event}` to implement `for<'a> FnOnce(Res<'static, Config>, u32)`
[INFO] [stderr]    = note: required for `for<'a> fn(Res<'a, Config>, String) {wrong_event}` to implement `nexus_rt::template::TemplateDispatch<(Res<'static, Config>,), u32>`
[INFO] [stderr] note: required by a bound in `HandlerTemplate::<K>::new`
[INFO] [stderr]   --> src/template.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<K: Blueprint> HandlerTemplate<K>
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn new<F>(f: F, registry: &Registry) -> Self
[INFO] [stderr]    |     where
[INFO] [stderr]    |         F: TemplateDispatch<K::Params, K::Event>,
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `HandlerTemplate::<K>::new`
[INFO] [stderr] help: consider wrapping the function in a closure
[INFO] [stderr]    |
[INFO] [stderr] 21 |     let _template = HandlerTemplate::<MyBlueprint>::new(|arg0: Res<'static, Config>, arg1: u32| wrong_event(arg0, /* String */), &reg);
[INFO] [stderr]    |                                                         +++++++++++++++++++++++++++++++++++++++            ++++++++++++++++++++
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/then_on_option.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a pipeline step for this input type
[INFO] [stderr]   --> tests/ui/then_on_option.rs:18:15
[INFO] [stderr]    |
[INFO] [stderr] 18 |         .then(takes_u32, &reg); // ERROR: takes_u32 expects u32, not Option<u32>
[INFO] [stderr]    |          ---- ^^^^^^^^^ the trait `IntoStep<Option<u32>, _, _>` is not implemented for fn item `fn(u32) -> u32 {takes_u32}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, use `.map()` to operate on the inner `T`
[INFO] [stderr]    = note: if the pipeline output is `Result<T, E>`, use `.map()` for `Ok` or `.catch()` for `Err`
[INFO] [stderr]    = note: if using a closure with resource params (Res<T>, ResMut<T>), that isn't supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoStep<In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `PipelineChain::<In, Out, Chain>::then`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn then<NewOut, Params, S: IntoStep<Out, NewOut, Params>>(
[INFO] [stderr]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineChain::<In, Out, Chain>::then`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a pipeline step for this input type
[INFO] [stderr]   --> tests/ui/then_on_option.rs:18:15
[INFO] [stderr]    |
[INFO] [stderr] 18 |         .then(takes_u32, &reg); // ERROR: takes_u32 expects u32, not Option<u32>
[INFO] [stderr]    |          ---- ^^^^^^^^^ the trait `IntoStep<Option<u32>, _, _>` is not implemented for fn item `fn(u32) -> u32 {takes_u32}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, use `.map()` to operate on the inner `T`
[INFO] [stderr]    = note: if the pipeline output is `Result<T, E>`, use `.map()` for `Ok` or `.catch()` for `Err`
[INFO] [stderr]    = note: if using a closure with resource params (Res<T>, ResMut<T>), that isn't supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoStep<In, Out, Params>`:
[INFO] [stderr]              IntoStep<(), Out, (P0, P1)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoStep<(), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `PipelineChain::<In, Out, Chain>::then`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In, Out, Chain: ChainCall<In, Out = Out>> PipelineChain<In, Out, Chain> {
[INFO] [stderr]    |     /// Add a step. Params resolved from the registry.
[INFO] [stderr]    |     pub fn then<NewOut, Params, S: IntoStep<Out, NewOut, Params>>(
[INFO] [stderr]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineChain::<In, Out, Chain>::then`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/then_on_result.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a pipeline step for this input type
[INFO] [stderr]   --> tests/ui/then_on_result.rs:18:15
[INFO] [stderr]    |
[INFO] [stderr] 18 |         .then(takes_u32, &reg); // ERROR: takes_u32 expects u32, not Result
[INFO] [stderr]    |          ---- ^^^^^^^^^ the trait `IntoStep<Result<u32, String>, _, _>` is not implemented for fn item `fn(u32) -> u32 {takes_u32}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, use `.map()` to operate on the inner `T`
[INFO] [stderr]    = note: if the pipeline output is `Result<T, E>`, use `.map()` for `Ok` or `.catch()` for `Err`
[INFO] [stderr]    = note: if using a closure with resource params (Res<T>, ResMut<T>), that isn't supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoStep<In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoStep<(), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `PipelineChain::<In, Out, Chain>::then`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn then<NewOut, Params, S: IntoStep<Out, NewOut, Params>>(
[INFO] [stderr]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineChain::<In, Out, Chain>::then`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a pipeline step for this input type
[INFO] [stderr]   --> tests/ui/then_on_result.rs:18:15
[INFO] [stderr]    |
[INFO] [stderr] 18 |         .then(takes_u32, &reg); // ERROR: takes_u32 expects u32, not Result
[INFO] [stderr]    |          ---- ^^^^^^^^^ the trait `IntoStep<Result<u32, String>, _, _>` is not implemented for fn item `fn(u32) -> u32 {takes_u32}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, use `.map()` to operate on the inner `T`
[INFO] [stderr]    = note: if the pipeline output is `Result<T, E>`, use `.map()` for `Ok` or `.catch()` for `Err`
[INFO] [stderr]    = note: if using a closure with resource params (Res<T>, ResMut<T>), that isn't supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoStep<In, Out, Params>`:
[INFO] [stderr]              IntoStep<(), Out, (P0, P1)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoStep<(), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `PipelineChain::<In, Out, Chain>::then`
[INFO] [stderr]   --> src/pipeline.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In, Out, Chain: ChainCall<In, Out = Out>> PipelineChain<In, Out, Chain> {
[INFO] [stderr]    |     /// Add a step. Params resolved from the registry.
[INFO] [stderr]    |     pub fn then<NewOut, Params, S: IntoStep<Out, NewOut, Params>>(
[INFO] [stderr]    |                                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `PipelineChain::<In, Out, Chain>::then`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/view_derive_missing_field.rs ... ok
[INFO] [stderr] test tests/ui/view_derive_no_source.rs ... ok
[INFO] [stderr] test tests/ui/view_derive_on_enum.rs ... ok
[INFO] [stderr] test tests/ui/view_derive_two_lifetimes.rs ... ok
[INFO] [stderr] test tests/ui/view_missing_impl.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `BadEvent` cannot be viewed as `AsOrderView`
[INFO] [stderr]   --> tests/ui/view_missing_impl.rs:32:17
[INFO] [stderr]    |
[INFO] [stderr] 32 |         .view::<AsOrderView>();
[INFO] [stderr]    |          ----   ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: implement `View<BadEvent>` for your view marker type
[INFO] [stderr] help: the trait `View<BadEvent>` is not implemented for `AsOrderView`
[INFO] [stderr]       but trait `View<GoodEvent>` is implemented for it
[INFO] [stderr]   --> tests/ui/view_missing_impl.rs:21:1
[INFO] [stderr]    |
[INFO] [stderr] 21 | unsafe impl View<GoodEvent> for AsOrderView {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    = help: for that trait implementation, expected `GoodEvent`, found `BadEvent`
[INFO] [stderr] note: required by a bound in `nexus_rt::view::<impl PipelineBuilder<In>>::view`
[INFO] [stderr]   --> src/view.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn view<V: View<In>>(self) -> ViewScope<In, In, V, crate::pipeline::IdentityNode, ()> {
[INFO] [stderr]    |                    ^^^^^^^^ required by this bound in `nexus_rt::view::<impl PipelineBuilder<In>>::view`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: `BadEvent` cannot be viewed as `AsOrderView`
[INFO] [stderr]   --> tests/ui/view_missing_impl.rs:32:17
[INFO] [stderr]    |
[INFO] [stderr] 32 |         .view::<AsOrderView>();
[INFO] [stderr]    |          ----   ^^^^^^^^^^^ unsatisfied trait bound
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: implement `View<BadEvent>` for your view marker type
[INFO] [stderr] help: the trait `View<BadEvent>` is not implemented for `AsOrderView`
[INFO] [stderr]       but trait `View<GoodEvent>` is implemented for it
[INFO] [stderr]   --> tests/ui/view_missing_impl.rs:21:1
[INFO] [stderr]    |
[INFO] [stderr] 21 | unsafe impl View<GoodEvent> for AsOrderView {
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    = help: for that trait implementation, expected `GoodEvent`, found `BadEvent`
[INFO] [stderr] note: required by a bound in `nexus_rt::view::<impl PipelineBuilder<In>>::view`
[INFO] [stderr]   --> src/view.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In> crate::pipeline::PipelineBuilder<In> {
[INFO] [stderr]    |     /// Open a view scope as the first pipeline step.
[INFO] [stderr]    |     pub fn view<V: View<In>>(self) -> ViewScope<In, In, V, crate::pipeline::IdentityNode, ()> {
[INFO] [stderr]    |                    ^^^^^^^^ required by this bound in `nexus_rt::view::<impl PipelineBuilder<In>>::view`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/view_then_inside_scope.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0599]: no method named `then` found for struct `ViewScope<In, Out, V, PrevChain, InnerSteps>` in the current scope
[INFO] [stderr]   --> tests/ui/view_then_inside_scope.rs:28:10
[INFO] [stderr]    |
[INFO] [stderr] 26 |       let _ = PipelineBuilder::<u32>::new()
[INFO] [stderr]    |               -----------------------------
[INFO] [stderr]    |               |
[INFO] [stderr]    |  _____________method `then` is available on `PipelineBuilder<u32>`
[INFO] [stderr]    | |
[INFO] [stderr] 27 | |         .view::<AsOrderView>()
[INFO] [stderr] 28 | |         .then(transform);
[INFO] [stderr]    | |         -^^^^ method not found in `ViewScope<u32, u32, AsOrderView, IdentityNode, ()>`
[INFO] [stderr]    | |_________|
[INFO] [stderr]    |
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0599]: no method named `then` found for struct `ViewScope<In, Out, V, PrevChain, InnerSteps>` in the current scope
[INFO] [stderr]   --> tests/ui/view_then_inside_scope.rs:28:10
[INFO] [stderr]    |
[INFO] [stderr] 26 |     let _ = PipelineBuilder::<u32>::new()
[INFO] [stderr]    |             ----------------------------- method `then` is available on `PipelineBuilder<u32>`
[INFO] [stderr] 27 |         .view::<AsOrderView>()
[INFO] [stderr] 28 |         .then(transform);
[INFO] [stderr]    |          ^^^^ method not found in `ViewScope<u32, u32, AsOrderView, nexus_rt::pipeline::IdentityNode, ()>`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/view_wrong_handler_type.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a reference step for this input type
[INFO] [stderr]   --> tests/ui/view_wrong_handler_type.rs:33:14
[INFO] [stderr]    |
[INFO] [stderr] 33 |         .tap(bad_handler, reg);
[INFO] [stderr]    |          --- ^^^^^^^^^^^ the trait `IntoRefStep<OrderView, (), _>` is not implemented for fn item `for<'a> fn(&'a WrongView) {bad_handler}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: reference steps (guard, filter, tap, inspect) take `&In`, not `In`
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, `.filter()` operates on `&T` inside the Option
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: the following other types implement trait `IntoRefStep<In, Out, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoRefStep<(), Out, (P0,)>`
[INFO] [stderr] note: required by a bound in `ViewScope::<In, Out, V, PrevChain, InnerSteps>::tap`
[INFO] [stderr]   --> src/view.rs
[INFO] [stderr]    |
[INFO] [stderr]    |     pub fn tap<Params, S: IntoRefStep<V::StaticViewType, (), Params>>(
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ViewScope::<In, Out, V, PrevChain, InnerSteps>::tap`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be used as a reference step for this input type
[INFO] [stderr]   --> tests/ui/view_wrong_handler_type.rs:33:14
[INFO] [stderr]    |
[INFO] [stderr] 33 |         .tap(bad_handler, reg);
[INFO] [stderr]    |          --- ^^^^^^^^^^^ the trait `IntoRefStep<OrderView, (), _>` is not implemented for fn item `for<'a> fn(&'a WrongView) {bad_handler}`
[INFO] [stderr]    |          |
[INFO] [stderr]    |          required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: reference steps (guard, filter, tap, inspect) take `&In`, not `In`
[INFO] [stderr]    = note: if the pipeline output is `Option<T>`, `.filter()` operates on `&T` inside the Option
[INFO] [stderr]    = note: closures with resource parameters are not supported — use a named `fn`
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoRefStep<In, Out, Params>`:
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoRefStep<(), Out, (P0,)>
[INFO] [stderr] note: required by a bound in `ViewScope::<In, Out, V, PrevChain, InnerSteps>::tap`
[INFO] [stderr]   --> src/view.rs
[INFO] [stderr]    |
[INFO] [stderr]    | impl<In, Out, V: View<Out>, PrevChain, InnerSteps> ViewScope<In, Out, V, PrevChain, InnerSteps> {
[INFO] [stderr] ...
[INFO] [stderr]    |     pub fn tap<Params, S: IntoRefStep<V::StaticViewType, (), Params>>(
[INFO] [stderr]    |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ required by this bound in `ViewScope::<In, Out, V, PrevChain, InnerSteps>::tap`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] test tests/ui/wrong_param_order.rs ... mismatch
[INFO] [stderr] 
[INFO] [stderr] EXPECTED:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be converted into a handler
[INFO] [stderr]   --> tests/ui/wrong_param_order.rs:24:32
[INFO] [stderr]    |
[INFO] [stderr] 24 |     register_handler::<u32, _>(bad_order, &reg);
[INFO] [stderr]    |     -------------------------- ^^^^^^^^^ the trait `IntoHandler<u32, _>` is not implemented for fn item `for<'a> fn(u32, Res<'a, Config>) {bad_order}`
[INFO] [stderr]    |     |
[INFO] [stderr]    |     required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: handler signature: `fn(Res<A>, ResMut<B>, ..., Event)` — resources first, event last
[INFO] [stderr]    = note: for Handler<()> with params, wrap with `no_event(fn_name)` to omit the event parameter
[INFO] [stderr]    = note: closures with resource parameters (Res<T>, ResMut<T>) are not supported — use a named `fn`
[INFO] [stderr]    = note: arity-0 closures (`fn(Event)` with no resources) ARE supported
[INFO] [stderr]    = help: the following other types implement trait `IntoHandler<E, Params>`:
[INFO] [stderr]              `NoEvent<F>` implements `IntoHandler<(), (P0, P1)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3, P4)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3, P4, P5)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3, P4, P5, P6)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoHandler<(), (P0, P1, P2, P3, P4, P5, P6, P7)>`
[INFO] [stderr]              `NoEvent<F>` implements `IntoHandler<(), (P0,)>`
[INFO] [stderr] note: required by a bound in `register_handler`
[INFO] [stderr]   --> tests/ui/wrong_param_order.rs:14:35
[INFO] [stderr]    |
[INFO] [stderr] 14 | fn register_handler<E, P>(f: impl IntoHandler<E, P>, registry: &nexus_rt::Registry) {
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^ required by this bound in `register_handler`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] 
[INFO] [stderr] ACTUAL OUTPUT:
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] error[E0277]: this function cannot be converted into a handler
[INFO] [stderr]   --> tests/ui/wrong_param_order.rs:24:32
[INFO] [stderr]    |
[INFO] [stderr] 24 |     register_handler::<u32, _>(bad_order, &reg);
[INFO] [stderr]    |     -------------------------- ^^^^^^^^^ the trait `IntoHandler<u32, _>` is not implemented for fn item `for<'a> fn(u32, Res<'a, Config>) {bad_order}`
[INFO] [stderr]    |     |
[INFO] [stderr]    |     required by a bound introduced by this call
[INFO] [stderr]    |
[INFO] [stderr]    = note: handler signature: `fn(Res<A>, ResMut<B>, ..., Event)` — resources first, event last
[INFO] [stderr]    = note: for Handler<()> with params, wrap with `no_event(fn_name)` to omit the event parameter
[INFO] [stderr]    = note: closures with resource parameters (Res<T>, ResMut<T>) are not supported — use a named `fn`
[INFO] [stderr]    = note: arity-0 closures (`fn(Event)` with no resources) ARE supported
[INFO] [stderr]    = help: `NoEvent<F>` implements trait `IntoHandler<E, Params>`:
[INFO] [stderr]              IntoHandler<(), (P0, P1)>
[INFO] [stderr]              IntoHandler<(), (P0, P1, P2)>
[INFO] [stderr]              IntoHandler<(), (P0, P1, P2, P3)>
[INFO] [stderr]              IntoHandler<(), (P0, P1, P2, P3, P4)>
[INFO] [stderr]              IntoHandler<(), (P0, P1, P2, P3, P4, P5)>
[INFO] [stderr]              IntoHandler<(), (P0, P1, P2, P3, P4, P5, P6)>
[INFO] [stderr]              IntoHandler<(), (P0, P1, P2, P3, P4, P5, P6, P7)>
[INFO] [stderr]              IntoHandler<(), (P0,)>
[INFO] [stderr] note: required by a bound in `register_handler`
[INFO] [stderr]   --> tests/ui/wrong_param_order.rs:14:35
[INFO] [stderr]    |
[INFO] [stderr] 14 | fn register_handler<E, P>(f: impl IntoHandler<E, P>, registry: &nexus_rt::Registry) {
[INFO] [stderr]    |                                   ^^^^^^^^^^^^^^^^^ required by this bound in `register_handler`
[INFO] [stderr] ┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈┈
[INFO] [stderr] note: If the actual output is the correct output you can bless it by rerunning
[INFO] [stderr]       your test with the environment variable TRYBUILD=overwrite
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stderr] 
[INFO] [stderr] error: test failed, to rerun pass `--test ui`
[INFO] running `Command { std: "docker" "inspect" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a", kill_on_drop: false }`
[INFO] [stdout] 5e1553945cc1c232bad14204474e0bd2d0ed8ae229015413930e00e109727e9a
