structuredAttrs is enabled Running phase: unpackPhase unpacking source archive /nix/store/ms904ra0j8iw2zf736jhp01lsn9faaiy-source source root is source Executing cargoSetupPostUnpackHook Finished cargoSetupPostUnpackHook Running phase: patchPhase Executing cargoSetupPostPatchHook Validating consistency between /build/source/Cargo.lock and /build/usbeehive-0.12.1-vendor/Cargo.lock Finished cargoSetupPostPatchHook Running phase: updateAutotoolsGnuConfigScriptsPhase Running phase: configurePhase Running phase: buildPhase Executing cargoBuildHook cargoBuildHook flags: -j 4 --target x86_64-unknown-linux-gnu --offline --profile release Compiling proc-macro2 v1.0.106 Compiling unicode-ident v1.0.24 Compiling quote v1.0.45 Compiling libc v0.2.186 Compiling utf8parse v0.2.2 Compiling pkg-config v0.3.33 Compiling serde_core v1.0.228 Compiling anstyle-parse v1.0.0 Compiling libudev-sys v0.1.4 Compiling anstyle-query v1.1.5 Compiling io-lifetimes v1.0.11 Compiling colorchoice v1.0.5 Compiling syn v2.0.117 Compiling anstyle v1.0.14 Compiling zmij v1.0.21 Compiling is_terminal_polyfill v1.70.2 Compiling anstream v1.0.0 Compiling serde_json v1.0.150 Compiling clap_lex v1.1.0 Compiling serde v1.0.228 Compiling strsim v0.11.1 Compiling heck v0.5.0 Compiling clap_builder v4.6.0 Compiling itoa v1.0.18 Compiling memchr v2.8.0 Compiling udev v0.9.3 Compiling clap_derive v4.6.1 Compiling serde_derive v1.0.228 Compiling clap v4.6.1 Compiling usbeehive v0.12.1 (/build/source) Finished `release` profile [optimized] target(s) in 12.24s Executing cargoInstallPostBuildHook Finished cargoInstallPostBuildHook Finished cargoBuildHook Running phase: checkPhase Executing cargoCheckHook cargoCheckHook flags: -j 4 --profile release --target x86_64-unknown-linux-gnu --offline -- Compiling usbeehive v0.12.1 (/build/source) Finished `release` profile [optimized] target(s) in 24.42s Running unittests src/lib.rs (target/x86_64-unknown-linux-gnu/release/deps/usbeehive-f9044afd08766785) running 220 tests test bos::tests::assessment_is_unknown_without_usable_inputs ... ok test bos::tests::assessment_at_capability_is_never_a_warning ... ok test bos::tests::assessment_flags_below_the_declared_floor ... ok test bos::tests::assessment_carries_gen_label_when_derivable ... ok test bos::tests::billboard_alt_mode_states_have_stable_labels ... ok test bos::tests::assessment_suppresses_warning_at_vendor_declared_floor ... ok test bos::tests::assessment_without_declared_floor_is_never_a_warning ... ok test bos::tests::billboard_coexists_with_speed_capabilities ... ok test bos::tests::billboard_truncated_mode_array_keeps_whole_entries ... ok test bos::tests::billboard_unpacks_two_status_bits_per_mode ... ok test bos::tests::billboard_with_no_modes_has_no_overall_state ... ok test bos::tests::blob_shorter_than_declared_total_length_keeps_what_parsed ... ok test bos::tests::capability_overrunning_the_blob_is_truncated ... ok test bos::tests::contradictory_functionality_support_is_not_trusted ... ok test bos::tests::empty_blob_is_not_a_bos ... ok test bos::tests::gen1x2_and_gen2x1_are_distinguishable ... ok test bos::tests::header_only_blob_parses_with_no_capabilities ... ok test bos::tests::lane_speed_exponents_scale ... ok test bos::tests::non_device_capability_descriptor_type_stops_the_walk ... ok test bos::tests::parses_billboard_dp_altmode_not_attempted ... ok test bos::tests::parses_real_full_speed_only_blob ... ok test bos::tests::parses_real_lan_adapter_blob ... ok test bos::tests::parses_real_hub_blob_with_container_id ... ok test bos::tests::parses_real_root_hub_superspeed_plus_blob ... ok test bos::tests::short_blength_capability_terminates_the_walk ... ok test bos::tests::superspeed_plus_with_truncated_attr_array_keeps_whole_entries ... ok test bos::tests::undersized_billboard_falls_back_to_other ... ok test bos::tests::rate_str_formats_tiers ... ok test bos::tests::undersized_typed_capability_falls_back_to_other ... ok test bos::tests::unknown_capability_type_is_preserved_verbatim ... ok test bos::tests::verdict_labels_are_stable ... ok test bos::tests::wrong_descriptor_type_is_rejected ... ok test bos::tests::wrong_header_length_is_rejected ... ok test bos::tests::zero_blength_capability_terminates_the_walk ... ok test bos::tests::zero_container_id_is_reported_as_absent ... ok test cable::tests::cable_vdo_drives_active_flag ... ok test cable::tests::passive_string_only ... ok test cable::tests::missing_cable_vdo_keeps_only_vendor ... ok test cable::tests::passive_with_vdo_keeps_passive_flag ... ok test cable::tests::trust_clean_cable_fires_nothing ... ok test cable::tests::trust_reserved_bits_fires_on_dirty_vdo ... ok test cable::tests::trust_vid_unknown_fires_on_hex_fallback ... ok test cable::tests::trust_zero_vid_fires_on_blank_emarker ... ok test diagnostic::tests::cable_limit_flagged_with_warning ... ok test diagnostic::tests::cable_limit_wins_over_sink_limit ... ok test diagnostic::tests::cable_no_emarker_not_raised_when_emarker_rating_present ... ok test diagnostic::tests::cable_no_emarker_flagged_when_request_pinned_at_3a ... ok test diagnostic::tests::cable_no_emarker_not_raised_when_pdo_offers_only_3a ... ok test diagnostic::tests::cable_no_emarker_not_raised_when_request_above_3a ... ok test diagnostic::tests::device_limit_detail_carries_benign_hint ... ok test diagnostic::tests::device_limit_when_active_below_80pct ... ok test diagnostic::tests::device_limit_wins_over_sink_limit ... ok test diagnostic::tests::fine_when_active_meets_charger ... ok test diagnostic::tests::fine_when_no_active_pdo_uses_max ... ok test diagnostic::tests::no_source_caps_returns_none ... ok test diagnostic::tests::sink_limit_not_raised_when_request_near_contract ... ok test diagnostic::tests::sink_limit_when_request_far_below_healthy_contract ... ok test diagnostic::tests::zero_charger_returns_none ... ok test pd::tests::cable_speed_ord_follows_declaration_order ... ok test pd::tests::cable_vdo_5a_50v_marks_250w ... ok test pd::tests::cable_vdo_decodes_speed_current_voltage ... ok test pd::tests::cable_vdo_unknown_speed_falls_to_usb20 ... ok test pd::tests::cable_vdo_vbus_through_bit ... ok test pd::tests::id_header_active_cable_ufp ... ok test pd::tests::id_header_dfp_field ... ok test pd::tests::id_header_flag_bits ... ok test pd::tests::id_header_unknown_product_type_is_none ... ok test pd::tests::id_header_vendor_low16 ... ok test pd::tests::label_helpers ... ok test pd::tests::reserved_bits_active_only_bit_3 ... ok test pd::tests::reserved_bits_passive_detect ... ok test pd::tests::ufp_vdo_highest_speed_decodes_known_values ... ok test pd::tests::ufp_vdo_highest_speed_rejects_reserved_speed ... ok test pd::tests::ufp_vdo_highest_speed_rejects_zero_and_version_0 ... ok test power::tests::current_and_power_labels ... ok test power::tests::infer_active_source_pdo_clears_previous_active ... ok test power::tests::infer_active_source_pdo_handles_empty_list ... ok test power::tests::infer_active_source_pdo_matches_pps_range ... ok test power::tests::infer_active_source_pdo_picks_exact_fixed ... ok test power::tests::infer_active_source_pdo_prefers_fixed_over_pps_when_both_match ... ok test power::tests::infer_active_source_pdo_returns_none_when_nothing_matches ... ok test power::tests::infer_active_source_pdo_tolerates_voltage_drop ... ok test power::tests::pdo_type_labels ... ok test power::tests::voltage_label_fixed ... ok test power::tests::voltage_label_pps_range ... ok test summary::tests::adds_nothing_over_product_is_case_insensitive_containment ... ok test summary::tests::active_pdo_inference_skipped_when_no_power_supply ... ok test summary::tests::cable_data_speed_limit_fires_when_cable_slower_than_partner ... ok test summary::tests::active_pdo_inferred_from_live_ucsi_voltage ... ok test summary::tests::cable_data_speed_limit_silent_for_pd20_partner ... ok test summary::tests::cable_data_speed_limit_silent_when_cable_matches_partner ... ok test summary::tests::cable_no_emarker_property_absent_when_5a_contract_negotiated ... ok test summary::tests::cable_no_emarker_property_absent_when_active_pdo_is_3a ... ok test summary::tests::cable_no_emarker_property_fires_for_big_charger_without_cable_node ... ok test summary::tests::cable_no_emarker_property_silent_when_emarker_rating_present ... ok test summary::tests::cable_no_emarker_property_silent_for_3a_only_charger ... ok test summary::tests::cable_speed_limit_absent_for_no_vdo_partner_with_negotiated_480_usb2_cable ... ok test summary::tests::cable_properties_appear ... ok test summary::tests::cable_speed_limit_absent_when_cable_matches_gen2_partner_negotiated_10000 ... ok test summary::tests::cable_speed_limit_fires_with_vdo_gen2_partner_usb2_cable_negotiated_480 ... ok test summary::tests::cable_speed_limit_present_via_vdo_even_when_negotiated_exceeds_cable ... ok test summary::tests::canonical_usb_version_normalizes_bcd ... ok test summary::tests::charging_status_when_pd_source_present ... ok test summary::tests::classify_bluetooth_via_wireless_subclass ... ok test summary::tests::classify_camera_not_misidentified_as_phone ... ok test summary::tests::classify_capture_card_product_heuristic ... ok test summary::tests::classify_keyboard_via_hid_protocol ... ok test summary::tests::classify_mouse_via_hid_protocol ... ok test summary::tests::classify_phone_android_via_adb_signature ... ok test summary::tests::classify_phone_cat_s61_via_vid_and_ptp ... ok test summary::tests::classify_phone_iphone_by_vid_and_product ... ok test summary::tests::classify_security_key_by_vid ... ok test summary::tests::classify_serial_via_cdc_acm ... ok test summary::tests::classify_serial_via_ftdi_driver ... ok test summary::tests::classify_smartcard_via_ccid_class ... ok test summary::tests::classify_storage_via_class_code ... ok test summary::tests::empty_typec_port_is_disconnected ... ok test summary::tests::headline_falls_back_to_vidpid_when_nothing_known ... ok test summary::tests::headline_prefers_iproduct_descriptor_when_present ... ok test summary::tests::headline_falls_back_to_class_when_vendor_unknown ... ok test summary::tests::headline_falls_back_to_vendor_when_class_unknown ... ok test summary::tests::headline_synthesizes_vendor_class_when_iproduct_is_empty ... ok test summary::tests::headline_uses_manufacturer_descriptor_over_vendor_db ... ok test summary::tests::hub_ports_used_zero_is_emitted_but_unreadable_is_not ... ok test summary::tests::hub_class_marks_hub ... ok test summary::tests::identity_vdo_wins_over_usb_string ... ok test summary::tests::kernel_quirks_render_names_not_the_bitmask ... ok test summary::tests::live_ucsi_power_reported_without_linked_pd_port ... ok test summary::tests::manufacturer_and_product_both_set_combined_with_space ... ok test summary::tests::negotiated_cable_speed_maps_thresholds ... ok test summary::tests::no_usb_device_falls_back_to_device_connected ... ok test summary::tests::port_keys_are_absent_rather_than_empty_or_zero ... ok test summary::tests::port_keys_mirror_the_reference_hub_connector ... ok test summary::tests::power_contract_string_renders_volts_amps ... ok test summary::tests::power_source_and_hub_budget_track_bmattributes ... ok test summary::tests::product_db_only_when_it_adds_something ... ok test summary::tests::self_powered_hub_reports_source_but_no_budget ... ok test summary::tests::sink_limited_laptop_reports_request_and_contract_separately ... ok test summary::tests::transport_dp_and_tb_from_partner_altmodes ... ok test summary::tests::transport_usb2_fires_for_highspeed ... ok test summary::tests::transport_usb3_fires_for_superspeed ... ok test summary::tests::usb_device_subtitle_when_no_identity ... ok test summary::tests::usb_summary_extracts_structured_fields ... ok test sysfs::manager::tests::multi_port_pd_matches_by_parent_number ... ok test sysfs::manager::tests::partner_symlink_pairs_pd_and_unlinked_pd_never_matches_port0 ... ok test sysfs::manager::tests::partner_symlink_wins_over_parent_port_number ... ok test sysfs::manager::tests::manager_with_missing_sysfs_yields_empty_snapshot ... ok test sysfs::manager::tests::single_port_pd_pairs_with_single_typec ... ok test sysfs::manager::tests::root_hubs_are_excluded ... ok test sysfs::manager::tests::snapshot_diff_flags_newly_degraded_typec_port ... ok test sysfs::manager::tests::snapshot_diff_flags_link_speed_change_as_changed ... ok test sysfs::manager::tests::snapshot_diff_empty_when_unchanged ... ok test sysfs::manager::tests::snapshot_diff_detects_added_and_removed_summaries ... ok test sysfs::manager::tests::snapshot_diff_flags_resolved_when_warning_clears ... ok test sysfs::manager::tests::snapshot_diff_flags_status_only_transition_as_changed ... ok test sysfs::manager::tests::snapshot_diff_ignores_raw_power_jitter ... ok test sysfs::manager::tests::transport_usb4_fires_for_port_with_partner_when_usb4_link_present ... ok test sysfs::manager::tests::transport_usb4_silent_for_empty_port ... ok test sysfs::manager::tests::transport_usb4_silent_when_only_tbt3_partner ... ok test sysfs::manager::tests::usb_correlation_noop_for_charger_partner ... ok test sysfs::manager::tests::usb_correlation_via_usb_name ... ok test sysfs::power::tests::missing_pd_dir_returns_empty ... ok test sysfs::power::tests::pdo_type_parses_known_strings ... ok test sysfs::reader::tests::empty_attr_yields_none ... ok test sysfs::reader::tests::hex_strips_prefix ... ok test sysfs::reader::tests::int_parses_decimal ... ok test sysfs::reader::tests::missing_paths_are_none ... ok test sysfs::reader::tests::read_bytes_returns_raw_binary ... ok test sysfs::reader::tests::read_all_attrs_collects_files ... ok test sysfs::reader::tests::read_bytes_rejects_empty_and_oversized ... ok test sysfs::reader::tests::sysfs_path_helpers ... ok test sysfs::reader::tests::try_with_root_rejects_missing ... ok test sysfs::reader::tests::reads_and_trims_attr ... ok test sysfs::reader::tests::try_with_root_accepts_directory ... ok test sysfs::thunderbolt::tests::missing_thunderbolt_dir_returns_empty ... ok test sysfs::typec::tests::bus_port_name_accepts_hub_chain ... ok test sysfs::typec::tests::bus_port_name_accepts_simple ... ok test sysfs::typec::tests::bus_port_name_rejects_non_matching ... ok test sysfs::typec::tests::missing_typec_dir_returns_empty ... ok test sysfs::thunderbolt::tests::routers_without_generation_are_skipped ... ok test sysfs::power::tests::parse_pdos_tolerates_unit_suffixes_and_skips_power_dir ... ok test sysfs::typec::tests::partner_usb_name_finds_bus_port_child ... ok test sysfs::typec::tests::partner_usb_name_hub_chain_returned_verbatim ... ok test sysfs::typec::tests::ucsi_controller_extracts_id ... ok test sysfs::typec::tests::ucsi_controller_none_when_missing ... ok test sysfs::usb::tests::bus_port_depth_counts_dots ... ok test sysfs::usb::tests::enumerate_missing_dir_returns_empty ... ok test sysfs::usb::tests::parse_max_power_strips_units ... ok test sysfs::typec::tests::partner_usb_name_returns_empty_when_only_pd_node ... ok test thunderbolt::tests::supports_usb4_requires_generation_4 ... ok test sysfs::thunderbolt::tests::enumerates_host_and_device_routers ... ok test thunderbolt::tests::system_has_usb4_link_ignores_tbt3_partner_under_usb4_host ... ok test thunderbolt::tests::system_has_usb4_link_needs_both_sides ... ok test typec::tests::bracketed_extracts_active_role ... ok test typec::tests::current_roles_handle_brackets ... ok test typec::tests::is_connected_logic ... ok test typec::tests::negotiated_power_mw_basic ... ok test typec::tests::negotiated_power_mw_epr_no_overflow ... ok test sysfs::typec::tests::partner_usb_name_rejects_non_matching_names ... ok test typec::tests::negotiated_power_mw_rejects_zero_or_negative ... ok test usb::tests::display_name_falls_back_to_vidpid ... ok test typec::tests::negotiated_power_mw_returns_none_on_missing ... ok test usb::tests::hub_power_committed_sums_bus_powered_children_only ... ok test usb::tests::hub_power_budget_only_for_bus_powered_hubs ... ok test usb::tests::link_speed_label_matches_legacy ... ok test usb::tests::link_speed_tier_buckets ... ok test usb::tests::parent_bus_port_resolves_levels ... ok test usb::tests::power_label_formats ... ok test usb::tests::quirk_names_are_ascending_and_prefix_stripped ... ok test usb::tests::quirk_names_render_unknown_bits_rather_than_dropping_them ... ok test usb::tests::self_powered_reads_bmattributes_bit6 ... ok test usb::tests::speed_label_thresholds ... ok test usb::tests::tree_roots_includes_root_hubs_and_orphans ... ok test usbclass::tests::known_classes ... ok test usbclass::tests::unknown_class_is_hex ... ok test vendor::tests::known_vendors ... ok test vendor::tests::real_name_is_not_hex_fallback ... ok test vendor::tests::unknown_falls_back_to_hex ... ok test watch::tests::watcher_config_defaults_to_usb_and_typec ... ok test watch::tests::watcher_can_open_and_close ... ok test result: ok. 220 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.01s Running unittests src/main.rs (target/x86_64-unknown-linux-gnu/release/deps/usbeehive-bd27981c13a69868) running 12 tests test output::tests::flag_properties_render_label_only_when_true ... ok test output::tests::empty_text_says_no_devices ... ok test output::tests::data_speed_limit_renders_yellow_sentence ... ok test output::tests::flag_property_with_non_true_value_falls_through ... ok test output::tests::speed_color_buckets ... ok test output::tests::root_label_picks_spec_for_speed ... ok test output::tests::print_tree_legend_appears_when_devices_exist ... ok test output::tests::unknown_property_falls_through_to_raw_key ... ok test output::tests::text_output_renders_charger_profiles ... ok test output::tests::value_bearing_properties_keep_colon_format ... ok test output::tests::json_for_usb_summary_has_expected_keys ... ok test output::tests::typec_summary_serializes ... ok test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/cli_smoke.rs (target/x86_64-unknown-linux-gnu/release/deps/cli_smoke-d349f3e43a9d3380) running 7 tests test empty_root_says_no_devices ... ok test help_flag_works ... ok test keyboard_renders_in_list_mode ... ok test keyboard_renders_in_json_mode ... ok test version_flag_works ... ok test keyboard_renders_in_tree_mode ... ok test raw_flag_includes_sysfs_attributes ... ok test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/dbus_interface.rs (target/x86_64-unknown-linux-gnu/release/deps/dbus_interface-8453e0db062377dc) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/fixture_builder.rs (target/x86_64-unknown-linux-gnu/release/deps/fixture_builder-9d8b09ca8db69a9a) running 0 tests test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/typec_pd_scenarios.rs (target/x86_64-unknown-linux-gnu/release/deps/typec_pd_scenarios-38b3f2b7af063133) running 5 tests test empty_typec_port_renders_disconnected ... ok test pd_port_without_typec_partner_yields_no_summary_match ... ok test json_roundtrip_for_typec_port ... ok test cable_bottleneck_flags_warning ... ok test typec_charging_with_pps_charger_and_5a_active_cable ... ok test result: ok. 5 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s Running tests/usb_enumeration.rs (target/x86_64-unknown-linux-gnu/release/deps/usb_enumeration-a27932123e7b1b35) running 18 tests test absent_bos_yields_no_assessment_and_no_keys ... ok test bos_capability_flags_a_link_below_the_declared_floor ... ok test bos_capability_surfaces_without_flagging_a_vendor_declared_floor ... ok test data_rate_diff_reports_ids_not_port_numbers ... ok test deep_topology_preserves_parent_chain ... ok test enumerates_root_hub_with_keyboard_and_storage ... ok test bus_powered_hub_reports_budget_and_committed_draw ... ok test connector_keys_do_not_make_devicechanged_chatter_when_idle ... ok test malformed_bos_blob_never_panics_and_yields_no_verdict ... ok test missing_attrs_yield_skip_not_panic ... ok test missing_root_yields_empty_manager ... ok test hub_internal_ports_have_no_peer_and_no_connect_type ... ok test kernel_quirk_bitmask_is_rendered_as_names ... ok test quirk_suppressed_bos_is_unknown_not_a_shortfall ... ok test unrelated_quirk_does_not_mark_bos_suppressed ... ok test peer_port_state_explains_a_superspeed_hub_linked_at_high_speed ... ok test hub_occupancy_change_alone_does_not_fire_devicechanged_on_the_hub ... ok test peer_port_training_late_fires_devicechanged ... ok test result: ok. 18 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.04s Doc-tests usbeehive running 12 tests test src/lib.rs - (line 36) - compile ... ok test src/sysfs/manager.rs - sysfs::manager::DeviceManager (line 265) - compile ... ok test src/sysfs/mod.rs - sysfs (line 9) - compile ... ok test src/sysfs/reader.rs - sysfs::reader::Sysfs (line 22) - compile ... ok test src/pd.rs - pd (line 17) ... ok test src/lib.rs - (line 25) ... ok test src/bos.rs - bos (line 27) ... ok test src/watch.rs - watch (line 17) - compile ... ok test src/usb.rs - usb::quirk_names (line 218) ... ok test src/watch.rs - watch::run_loop (line 182) - compile ... ok test src/usbclass.rs - usbclass::class_name (line 9) ... ok test src/vendor.rs - vendor::lookup (line 10) ... ok test result: ok. 12 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.72s Finished cargoCheckHook Running phase: installPhase Executing cargoInstallHook Finished cargoInstallHook Running phase: fixupPhase shrinking RPATHs of ELF executables and libraries in /nix/store/vpd1f4l0qy9ai6w8h3n148aa7zfl53y5-usbeehive-0.12.1 shrinking /nix/store/vpd1f4l0qy9ai6w8h3n148aa7zfl53y5-usbeehive-0.12.1/bin/usbeehive checking for references to /build/ in /nix/store/vpd1f4l0qy9ai6w8h3n148aa7zfl53y5-usbeehive-0.12.1... patching script interpreter paths in /nix/store/vpd1f4l0qy9ai6w8h3n148aa7zfl53y5-usbeehive-0.12.1 stripping (with command strip and flags -S -p) in /nix/store/vpd1f4l0qy9ai6w8h3n148aa7zfl53y5-usbeehive-0.12.1/bin