[INFO] crate ddo 0.1.6 is already in cache [INFO] testing ddo-0.1.6 against beta-2020-06-03 for beta-1.45-1 [INFO] extracting crate ddo 0.1.6 into /workspace/builds/worker-9/source [INFO] validating manifest of crates.io crate ddo 0.1.6 on toolchain beta-2020-06-03 [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "read-manifest" "--manifest-path" "Cargo.toml"` [INFO] started tweaking crates.io crate ddo 0.1.6 [INFO] finished tweaking crates.io crate ddo 0.1.6 [INFO] tweaked toml for crates.io crate ddo 0.1.6 written to /workspace/builds/worker-9/source/Cargo.toml [INFO] crate crates.io crate ddo 0.1.6 already has a lockfile, it will not be regenerated [INFO] running `"/workspace/cargo-home/bin/cargo" "+beta-2020-06-03" "fetch" "--locked" "--manifest-path" "Cargo.toml"` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded mock-it v0.3.0 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "build" "--frozen"` [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] [stdout] 9a3cdd7f0d6b32eda31407cb35ee7156f5c2feab946de773f219bf5ec94aeee1 [INFO] running `"docker" "start" "-a" "9a3cdd7f0d6b32eda31407cb35ee7156f5c2feab946de773f219bf5ec94aeee1"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Compiling libc v0.2.66 [INFO] [stderr] Compiling smallvec v1.2.0 [INFO] [stderr] Compiling compare v0.1.0 [INFO] [stderr] Compiling metrohash v1.0.6 [INFO] [stderr] Compiling bitset-fixed v0.1.0 [INFO] [stderr] Compiling crossbeam-utils v0.7.0 [INFO] [stderr] Compiling crossbeam-epoch v0.8.0 [INFO] [stderr] Compiling lock_api v0.3.3 [INFO] [stderr] Compiling memoffset v0.5.3 [INFO] [stderr] Compiling binary-heap-plus v0.2.0 [INFO] [stderr] Compiling crossbeam-channel v0.4.0 [INFO] [stderr] Compiling crossbeam-queue v0.2.1 [INFO] [stderr] Compiling parking_lot_core v0.7.0 [INFO] [stderr] Compiling num_cpus v1.12.0 [INFO] [stderr] Compiling crossbeam-deque v0.7.2 [INFO] [stderr] Compiling parking_lot v0.10.0 [INFO] [stderr] Compiling crossbeam v0.7.3 [INFO] [stderr] Compiling ddo v0.1.6 (/opt/rustwide/workdir) [INFO] [stderr] warning: unnecessary braces around assigned value [INFO] [stderr] --> src/core/implementation/solver/parallel.rs:274:19 [INFO] [stderr] | [INFO] [stderr] 274 | best_lb = {shared.critical.lock().best_lb}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stderr] Finished dev [unoptimized + debuginfo] target(s) in 8.65s [INFO] running `"docker" "inspect" "9a3cdd7f0d6b32eda31407cb35ee7156f5c2feab946de773f219bf5ec94aeee1"` [INFO] running `"docker" "rm" "-f" "9a3cdd7f0d6b32eda31407cb35ee7156f5c2feab946de773f219bf5ec94aeee1"` [INFO] [stdout] 9a3cdd7f0d6b32eda31407cb35ee7156f5c2feab946de773f219bf5ec94aeee1 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen" "--no-run"` [INFO] [stdout] 8ee20c68f65b384e58c7077c9c934cbe99cd14aa9e5765e0becb0175a654ec05 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "8ee20c68f65b384e58c7077c9c934cbe99cd14aa9e5765e0becb0175a654ec05"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] Blocking waiting for file lock on package cache [INFO] [stderr] Compiling proc-macro2 v1.0.8 [INFO] [stderr] Compiling syn v1.0.14 [INFO] [stderr] Compiling rustversion v1.0.2 [INFO] [stderr] Compiling memchr v2.3.2 [INFO] [stderr] Compiling regex-syntax v0.6.14 [INFO] [stderr] Compiling mock-it v0.3.0 [INFO] [stderr] Compiling atty v0.2.14 [INFO] [stderr] warning: unnecessary braces around assigned value [INFO] [stderr] --> src/core/implementation/solver/parallel.rs:274:19 [INFO] [stderr] | [INFO] [stderr] 274 | best_lb = {shared.critical.lock().best_lb}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stderr] Compiling clap v2.33.0 [INFO] [stderr] Compiling aho-corasick v0.7.8 [INFO] [stderr] Compiling quote v1.0.2 [INFO] [stderr] Compiling regex v1.3.4 [INFO] [stderr] Compiling syn-mid v0.5.0 [INFO] [stderr] Compiling proc-macro-error v0.4.9 [INFO] [stderr] Compiling proc-macro-error-attr v0.4.9 [INFO] [stderr] Compiling structopt-derive v0.4.4 [INFO] [stderr] Compiling structopt v0.3.11 [INFO] [stderr] Compiling ddo v0.1.6 (/opt/rustwide/workdir) [INFO] [stderr] warning: unnecessary braces around assigned value [INFO] [stderr] --> src/core/implementation/solver/parallel.rs:274:19 [INFO] [stderr] | [INFO] [stderr] 274 | best_lb = {shared.critical.lock().best_lb}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 1m 47s [INFO] running `"docker" "inspect" "8ee20c68f65b384e58c7077c9c934cbe99cd14aa9e5765e0becb0175a654ec05"` [INFO] running `"docker" "rm" "-f" "8ee20c68f65b384e58c7077c9c934cbe99cd14aa9e5765e0becb0175a654ec05"` [INFO] [stdout] 8ee20c68f65b384e58c7077c9c934cbe99cd14aa9e5765e0becb0175a654ec05 [INFO] running `"docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,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" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "MAP_USER_ID=0" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--network" "none" "rustops/crates-build-env" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2020-06-03" "test" "--frozen"` [INFO] [stdout] e8167dbd14b83d3cf88354b2ab5cc57545da20a11b9b40d24e8915cb84f8af27 [INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap. [INFO] running `"docker" "start" "-a" "e8167dbd14b83d3cf88354b2ab5cc57545da20a11b9b40d24e8915cb84f8af27"` [INFO] [stderr] sudo: setrlimit(RLIMIT_CORE): Operation not permitted [INFO] [stderr] warning: unnecessary braces around assigned value [INFO] [stderr] --> src/core/implementation/solver/parallel.rs:274:19 [INFO] [stderr] | [INFO] [stderr] 274 | best_lb = {shared.critical.lock().best_lb}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stderr] warning: unnecessary braces around assigned value [INFO] [stderr] --> src/core/implementation/solver/parallel.rs:274:19 [INFO] [stderr] | [INFO] [stderr] 274 | best_lb = {shared.critical.lock().best_lb}; [INFO] [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: remove these braces [INFO] [stderr] | [INFO] [stderr] = note: `#[warn(unused_braces)]` on by default [INFO] [stderr] [INFO] [stderr] warning: 1 warning emitted [INFO] [stderr] [INFO] [stderr] Finished test [unoptimized + debuginfo] target(s) in 0.14s [INFO] [stderr] Running /opt/rustwide/target/debug/deps/ddo-9180d4ecf5ab305a [INFO] [stdout] [INFO] [stdout] running 254 tests [INFO] [stdout] test core::abstraction::dp::test_problem_defaults::by_default_all_vars_return_all_possible_variables ... ok [INFO] [stdout] test core::common::test_domain::from_bitset_non_empty ... ok [INFO] [stdout] test core::common::test_domain::from_range_empty_positive ... ok [INFO] [stdout] test core::common::test_domain::from_range_empty_going_negative ... ok [INFO] [stdout] test core::common::test_domain::from_range_inclusive_empty_going_negative ... ok [INFO] [stdout] test core::common::test_domain::from_range_non_empty ... ok [INFO] [stdout] test core::common::test_domain::from_slice_empty ... ok [INFO] [stdout] test core::common::test_domain::from_slice_non_empty ... ok [INFO] [stdout] test core::common::test_domain::from_varset_empty ... ok [INFO] [stdout] test core::common::test_layer::plain_empty ... ok [INFO] [stdout] test core::common::test_layer::plain_next ... ok [INFO] [stdout] test core::common::test_layer::plain_next_exhausted ... ok [INFO] [stdout] test core::common::test_layer::plain_non_empty ... ok [INFO] [stdout] test core::common::test_node::constructor_merged_always_not_exact ... ok [INFO] [stdout] test core::common::test_node::constructor_merged_default_ub_value ... ok [INFO] [stdout] test core::common::test_node::constructor_merged_parent ... ok [INFO] [stdout] test core::common::test_node::constructor_new_default_ub_value ... ok [INFO] [stdout] test core::abstraction::dp::test_problem_defaults::by_default_all_vars_impact_all_states ... ok [INFO] [stdout] test core::abstraction::dp::test_problem_defaults::by_default_the_root_node_consitsts_of_the_initial_state_and_value ... ok [INFO] [stdout] test core::common::test_domain::from_bitset_empty ... ok [INFO] [stdout] test core::common::test_node::constructor_new_parent ... ok [INFO] [stdout] test core::common::test_layer::mapped_empty ... ok [INFO] [stdout] test core::abstraction::dp::test_problem_defaults::the_default_rough_upper_bound_is_infinity ... ok [INFO] [stdout] test core::common::test_domain::from_vector_empty ... ok [INFO] [stdout] test core::common::test_node::constructor_new_longest_path ... ok [INFO] [stdout] test core::common::test_domain::from_varset_non_empty ... ok [INFO] [stdout] test core::common::test_domain::from_vector_non_empty ... ok [INFO] [stdout] test core::common::test_layer::mapped_next_exhausted ... ok [INFO] [stdout] test core::common::test_layer::mapped_non_empty ... ok [INFO] [stdout] test core::common::test_nodeinfo::cmp_less_if_inexact ... ok [INFO] [stdout] test core::common::test_nodeinfo::cmp_less_if_lower_bound ... ok [INFO] [stdout] test core::common::test_nodeinfo::cmp_less_if_shorter_lp ... ok [INFO] [stdout] test core::common::test_node::constructor_new_root ... ok [INFO] [stdout] test core::common::test_node::node_equality_depends_on_state_only_string ... ok [INFO] [stdout] test core::common::test_nodeinfo::constructor_default_ub_value ... ok [INFO] [stdout] test core::common::test_domain::from_range_inclusive_non_empty ... ok [INFO] [stdout] test core::common::test_node::node_hash_is_a_passthrough_for_state_integer ... ok [INFO] [stdout] test core::common::test_node::node_hash_is_a_passthrough_for_state_string ... ok [INFO] [stdout] test core::common::test_domain::from_range_inclusive_single_value ... ok [INFO] [stdout] test core::common::test_node::node_equality_depends_on_state_only_bitset ... ok [INFO] [stdout] test core::common::test_layer::mapped_next ... ok [INFO] [stdout] test core::common::test_node::node_hash_is_a_passthrough_for_state_bitset ... ok [INFO] [stdout] test core::common::test_nodeinfo::constructor_parent ... ok [INFO] [stdout] test core::common::test_nodeinfo::merge_keeps_longest_path_other_is_best ... ok [INFO] [stdout] test core::common::test_nodeinfo::merge_keeps_tightest_bound_i_am_best ... ok [INFO] [stdout] test core::common::test_nodeinfo::merge_keeps_tightest_bound_other_is_best ... ok [INFO] [stdout] test core::common::test_nodeinfo::merge_tracks_exactitude_both_false ... ok [INFO] [stdout] test core::common::test_nodeinfo::longest_path ... ok [INFO] [stdout] test core::common::test_nodeinfo::merge_keeps_longest_path_i_am_best ... ok [INFO] [stdout] test core::common::test_nodeinfo::merge_tracks_exactitude_both_true ... ok [INFO] [stdout] test core::common::test_nodeinfo::merge_tracks_exactitude_me_false_she_true ... ok [INFO] [stdout] test core::common::test_nodeinfo::merge_tracks_exactitude_me_true_she_false ... ok [INFO] [stdout] test core::common::test_varset::add_has_no_effect_when_var_is_already_present ... ok [INFO] [stdout] test core::common::test_nodeinfo::partial_equiv ... ok [INFO] [stdout] test core::common::test_var::test_var_id ... ok [INFO] [stdout] test core::common::test_nodeinfo::partial_equiv_not_equal_if_different_lp_len ... ok [INFO] [stdout] test core::common::test_nodeinfo::partial_equiv_not_equal_if_different_parent ... ok [INFO] [stdout] test core::common::test_nodeinfo::partial_equiv_not_equal_if_different_ub ... ok [INFO] [stdout] test core::common::test_nodeinfo::constructor_root ... ok [INFO] [stdout] test core::common::test_node::node_equality_depends_on_state_only_integer ... ok [INFO] [stdout] test core::common::test_varset::add_adds_the_variable ... ok [INFO] [stdout] test core::common::test_varset::varset_are_lex_ordered ... ok [INFO] [stdout] test core::common::test_varset::remove_has_no_effect_when_variable_already_absent ... ok [INFO] [stdout] test core::common::test_varset_iter::vsiter_collect ... ok [INFO] [stdout] test core::common::test_nodeinfo::partial_equiv_not_equal_if_different_decision_variable ... ok [INFO] [stdout] test core::common::test_nodeinfo::partial_equiv_not_equal_if_different_decision_value ... ok [INFO] [stdout] test core::implementation::dp::test_minimize::the_minimize_adapter_has_no_impact_except_for_the_costs ... ok [INFO] [stdout] test core::common::test_varset::is_empty_means_len_zero ... ok [INFO] [stdout] test core::common::test_varset::iter_lets_you_iterate_over_all_variables_in_the_set ... ok [INFO] [stdout] test core::common::test_varset::len_indicates_the_size_of_the_set ... ok [INFO] [stdout] test core::implementation::heuristics::test_fromlongestpath::at_root ... ok [INFO] [stdout] test core::implementation::heuristics::test_fromlongestpath::all_vars_assigned ... ok [INFO] [stdout] test core::implementation::heuristics::test_fixedwidth::non_empty ... ok [INFO] [stdout] test core::implementation::heuristics::test_maxub::eq_because_all_match ... ok [INFO] [stdout] test core::implementation::heuristics::test_fromlongestpath::some_vars_assigned ... ok [INFO] [stdout] test core::implementation::heuristics::test_maxub::eq_self ... ok [INFO] [stdout] test core::common::test_varset_iter::vsiter_next_normal_case ... ok [INFO] [stdout] test core::implementation::heuristics::test_maxub::gt_because_lplen ... ok [INFO] [stdout] test core::implementation::heuristics::test_maxub::example ... ok [INFO] [stdout] test core::implementation::heuristics::test_fixedwidth::all ... ok [INFO] [stdout] test core::implementation::heuristics::test_maxub::lt_because_ub ... ok [INFO] [stdout] test core::implementation::heuristics::test_minlp::eq_self ... ok [INFO] [stdout] test core::implementation::heuristics::test_fixedwidth::empty ... ok [INFO] [stdout] test core::common::test_varset_iter::vsiter_no_items ... ok [INFO] [stdout] test core::implementation::heuristics::test_minlp::example ... ok [INFO] [stdout] test core::implementation::heuristics::test_minlp::gt_because_of_lplen ... ok [INFO] [stdout] test core::implementation::heuristics::test_minlp::lt_because_of_lplen ... ok [INFO] [stdout] test core::implementation::heuristics::test_naturalorder::example ... ok [INFO] [stdout] test core::implementation::heuristics::test_nbunassigned::all ... ok [INFO] [stdout] test core::implementation::heuristics::test_nbunassigned::empty ... ok [INFO] [stdout] test core::implementation::heuristics::test_nbunassigned::non_empty ... ok [INFO] [stdout] test core::implementation::heuristics::test_minlp::eq_if_all_match ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::branch_applies_the_desired_transition ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::branch_maintains_the_exact_flat ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::compare_is_a_pass_through_to_node_selection_heuristic ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::domain_is_pass_though_for_problem ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::estimate_ub_is_a_pass_through_for_relaxation ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::impacted_by_is_pass_though_for_problem ... ok [INFO] [stdout] test core::common::test_nodeinfo::partial_equiv_not_equal_if_not_same_exactitude ... ok [INFO] [stdout] test core::implementation::heuristics::test_maxub::gt_because_ub ... ok [INFO] [stdout] test core::common::test_varset::remove_drops_the_variable ... ok [INFO] [stdout] test core::common::test_varset::empty_contains_no_variable ... ok [INFO] [stdout] test core::common::test_varset_iter::vsiter_mutiple_words ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::it_can_build_a_pooled_mdd ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::it_can_build_an_mdd ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::it_can_build_an_mdd_from_ref ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::merge_nodes_is_a_pass_through_for_relaxation_nonempty ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::load_vars_is_pass_through_for_heuristic ... ok [INFO] [stdout] test core::common::test_varset::all_contains_all_variables ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::a_relaxed_mdd_is_not_exact_when_a_merge_occured ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::nb_free_vars_decreases_upon_remove ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::nb_free_vars_defaults_to_all_vars ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::it_can_build_a_flat_mdd ... ok [INFO] [stdout] test core::implementation::heuristics::test_maxub::lt_because_lplen ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::a_restricted_mdd_is_exact_as_long_as_no_restriction_occurs ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::root_node_is_pass_though_for_problem ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::select_var_is_a_pass_through_to_heuristic ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::by_default_the_mdd_type_is_exact ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::an_exact_mdd_must_be_exact ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::consume_cutset_clears_the_cutset ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::a_restricted_mdd_is_not_exact_when_a_restriction_occured ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::max_width_is_pass_through_for_heuristic ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::root_node_is_pass_through_to_config ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::merge_nodes_is_a_pass_through_for_relaxation_empty ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::a_relaxed_mdd_is_exact_as_long_as_no_merge_occurs ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::when_the_problem_is_infeasible_the_best_value_is_min_infinity ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::relaxed_populates_the_cutset_and_will_not_squash_first_layer ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::mdd_type_changes_depending_on_the_requested_type_of_mdd ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::clear_prepares_the_mdd_for_reuse_hence_best_node_must_be_none ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::clear_prepares_the_mdd_for_reuse_hence_cutset_must_be_empty ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::relaxed_merges_the_less_interesting_nodes ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::relaxed_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::restricted_drops_the_less_interesting_nodes ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::restricted_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::init_clears_stale_data ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::clear_prepares_the_mdd_for_reuse_hence_all_layers_must_be_empty ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::when_the_problem_is_infeasible_there_is_no_best_node ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::exact_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::exact_completely_unrolls_the_mdd_no_matter_its_width ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_mdd::when_the_problem_is_infeasible_the_longest_path_is_empty ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::init_sets_the_appropriate_mdd_type ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::init_loads_the_set_of_free_variables_from_the_given_node ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::clear_prepares_the_mdd_for_reuse_hence_exact_flag_must_be_true ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::init_inserts_the_given_root_node_in_the_first_layer_of_the_mdd ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::is_relevant_iff_estimate_is_better_than_lower_bound ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::move_to_next_ensures_next_layer_becomes_current ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::move_to_next_remembers_last_exact_layer_when_the_exact_flag_has_changed ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::move_to_next_clears_the_new_next_layer ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::no_relaxation_may_occur_for_first_layer ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::no_restriction_may_occur_for_first_layer ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::relaxation_forces_the_flags_is_exact_and_is_relaxed ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::relaxation_keeps_the_w_min_1_best_nodes ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::relaxation_makes_the_mdd_inexact ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::relaxation_merges_the_worst_nodes ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::restriction_makes_the_mdd_inexact ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::restriction_only_keeps_the_w_best_nodes ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::swap_current_lel_exchanges_the_indices ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::swap_current_next_exchanges_the_indices ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::unroll_layer_must_apply_decision_for_all_values_in_the_domain_of_var_to_all_nodes ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::unroll_layer_saves_a_node_to_next_layer_iff_it_is_relevant ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::unroll_layer_saves_all_distinct_target_nodes_in_the_next_layer ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::when_the_domain_is_empty_next_layer_is_empty_and_problem_becomes_unsat ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::find_best_node_identifies_the_terminal_node_with_maximum_longest_path ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::clear_prepares_the_mdd_for_reuse_hence_indices_must_revert_to_default ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::finalize_finds_the_best_node_if_there_is_one ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::clear_prepares_the_mdd_for_reuse_hence_mddtype_must_be_exact ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::it_next_allows_iteration_on_all_nodes_from_next_layer ... ok [INFO] [stdout] test core::implementation::mdd::builder::test_config_builder::removed_var_cannot_be_selected_anymore ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::it_current_allows_iteration_on_all_nodes_from_current_layer ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::when_there_is_no_best_node_finalize_clears_the_cutset ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::when_unroll_generates_two_nodes_with_the_same_state_nodes_are_merged ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::a_restricted_mdd_is_exact_as_long_as_no_restriction_occurs ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::a_restricted_mdd_is_not_exact_when_a_restriction_occured ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::a_relaxed_mdd_is_not_exact_when_a_merge_occured ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::by_default_the_mdd_type_is_exact ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::consume_cutset_clears_the_cutset ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::a_relaxed_mdd_is_exact_as_long_as_no_merge_occurs ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::when_unroll_generates_two_nodes_with_the_same_state_only_one_is_kept ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::exact_completely_unrolls_the_mdd_no_matter_its_width ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::exact_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::mdd_type_changes_depending_on_the_requested_type_of_mdd ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::relaxed_merges_the_less_interesting_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::relaxed_populates_the_cutset_and_will_not_squash_first_layer ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::restricted_drops_the_less_interesting_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::restricted_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::root_node_is_pass_through_to_config ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::when_the_problem_is_infeasible_the_best_value_is_min_infinity ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::when_the_problem_is_infeasible_the_longest_path_is_empty ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::when_the_problem_is_infeasible_there_is_no_best_node ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::clear_prepares_the_mdd_for_reuse_hence_best_node_must_be_none ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::clear_prepares_the_mdd_for_reuse_hence_current_must_be_empty ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::clear_prepares_the_mdd_for_reuse_hence_cutset_must_be_empty ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::clear_prepares_the_mdd_for_reuse_hence_exact_flag_must_be_true ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::clear_prepares_the_mdd_for_reuse_hence_mddtype_must_be_exact ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::clear_prepares_the_mdd_for_reuse_hence_pool_must_be_empty ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::exhausted_iff_pool_is_empty ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::finalize_finds_the_best_node_if_there_is_one ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::find_best_node_identifies_the_terminal_node_with_maximum_longest_path ... ok [INFO] [stdout] test core::implementation::dp::test_minimize::solver_effectively_minimizes_the_function ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::relaxed_skips_node_with_an_ub_less_than_best_known_lb ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::find_same_state_finds_a_clash_if_there_is_one ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::init_clears_stale_data ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::init_inserts_the_given_root_node_in_the_pool_of_the_mdd ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::init_loads_the_set_of_free_variables_from_the_given_node ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_mdd::an_exact_mdd_must_be_exact ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::init_sets_the_appropriate_mdd_type ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::it_current_allows_iteration_on_all_nodes_from_current_layer ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::merge_overdue_nodes_merges_the_worst_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::merge_overdue_nodes_sets_flags_is_exact_and_is_restricted ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::pick_nodes_from_pool_removes_the_selected_nodes_from_pool ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::relaxation_adds_all_exact_nodes_to_cutset ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::relaxation_keeps_the_w_min_1_best_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::no_relaxation_may_occur_for_first_layer ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::merge_overdue_nodes_keeps_the_w_min_1_best_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::is_relevant_iff_estimate_is_better_than_lower_bound ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::it_next_allows_iteration_on_all_nodes_from_pool ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::when_the_merged_node_has_the_same_state_as_one_of_the_best_the_two_are_merged ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::merge_overdue_nodes_adds_all_exact_nodes_to_cutset ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::when_there_is_a_best_node_finalize_sets_an_upper_bound_on_the_cutset_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::relaxation_merges_the_worst_nodes ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::when_there_is_a_best_node_finalize_sets_an_upper_bound_on_the_cutset_nodes_and_the_bound_is_constrained_by_lp_len_of_mdd ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::restriction_makes_the_mdd_inexact ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::restriction_only_keeps_the_w_best_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::no_restriction_may_occur_for_first_layer ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::unroll_layer_must_apply_decision_for_all_values_in_the_domain_of_var_to_all_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::pick_nodes_from_pool_leaves_non_selected_nodes_in_the_pool ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::unroll_layer_saves_a_node_to_next_layer_iff_it_is_relevant ... ok [INFO] [stdout] test core::implementation::mdd::flat::test_private::when_the_merged_node_is_distinct_from_all_others_it_is_added_to_the_set_of_candidate_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::unroll_layer_saves_all_distinct_target_nodes_in_the_next_layer ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::pick_nodes_from_pool_only_selects_nodes_that_are_impacted_by_var ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::relaxation_makes_the_mdd_inexact ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::unroll_must_add_a_node_that_becomes_inexact_because_new_is_inexact_to_the_mdd_cutset ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::unroll_must_add_a_node_that_becomes_inexact_because_old_was_inexact_to_the_mdd_cutset ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_the_domain_is_empty_next_layer_is_empty_and_problem_becomes_unsat ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_the_merged_node_is_distinct_from_all_others_it_is_added_to_the_set_of_candidate_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_there_is_a_best_node_finalize_sets_an_upper_bound_on_the_cutset_nodes ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_unroll_generates_two_nodes_with_the_same_state_nodes_are_merged ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_unroll_generates_two_nodes_with_the_same_state_only_one_is_kept ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_relax_merges_the_relaxed_node_with_an_other_exact_node_that_node_must_be_added_to_the_cutset ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_the_merged_node_has_the_same_state_as_one_of_the_best_the_two_are_merged ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_there_is_no_best_node_finalize_clears_the_cutset ... ok [INFO] [stdout] test core::utils::test_matrix::it_is_initialized_with_given_elem ... ok [INFO] [stdout] test core::utils::test_matrix::it_can_be_accessed_and_mutated_with_2d_position ... ok [INFO] [stdout] test core::utils::test_matrix::it_is_initialized_with_default_elem ... ok [INFO] [stdout] test core::utils::tests_lexbitset::same_size_equal ... ok [INFO] [stdout] test core::utils::tests_lexbitset::different_sizes_considered_padded_with_zeroes ... ok [INFO] [stdout] test core::utils::tests_lexbitset::same_size_greater_than ... ok [INFO] [stdout] test core::utils::tests_bitset_iter::bsiter_no_items ... ok [INFO] [stdout] test core::utils::tests_bitset_iter::bsiter_collect ... ok [INFO] [stdout] test core::utils::tests_lexbitset::same_size_less_than ... ok [INFO] [stdout] test core::utils::tests_bitset_iter::bsiter_next_normal_case ... ok [INFO] [stdout] test core::utils::tests_bitset_iter::bsiter_mutiple_words ... ok [INFO] [stdout] test core::implementation::mdd::pooled::test_private::when_there_is_a_best_node_finalize_sets_an_upper_bound_on_the_cutset_nodes_and_the_bound_is_constrained_by_lp_len_of_mdd ... ok [INFO] [stdout] test core::common::test_varset::contains_panic_when_over_the_max_number_of_vars ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 254 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] [stderr] Doc-tests ddo [INFO] [stdout] [INFO] [stdout] running 20 tests [INFO] [stdout] test src/core/common.rs - core::common::Variable::id (line 41) ... ok [INFO] [stdout] test src/core/implementation/heuristics.rs - core::implementation::heuristics::FixedWidth (line 73) ... ok [INFO] [stdout] test src/core/common.rs - core::common::VarSetIter (line 130) ... ok [INFO] [stdout] test src/core/implementation/mdd/flat.rs - core::implementation::mdd::flat::FlatMDD (line 63) ... ok [INFO] [stdout] test src/core/common.rs - core::common::Domain (line 164) ... ok [INFO] [stdout] test src/core/common.rs - core::common::VarSet (line 70) ... ok [INFO] [stdout] test src/core/implementation/heuristics.rs - core::implementation::heuristics::NaturalOrder (line 106) ... ok [INFO] [stdout] test src/core/implementation/heuristics.rs - core::implementation::heuristics::NbUnassigned (line 44) ... ok [INFO] [stdout] test src/core/implementation/mdd/builder.rs - core::implementation::mdd::builder::MDDBuilder (line 60) ... ok [INFO] [stdout] test src/core/implementation/mdd/builder.rs - core::implementation::mdd::builder::PbRef (line 434) ... ok [INFO] [stdout] test src/core/implementation/mdd/builder.rs - core::implementation::mdd::builder::mdd_builder (line 106) ... ok [INFO] [stdout] test src/core/implementation/heuristics.rs - core::implementation::heuristics::MaxUB (line 197) ... ok [INFO] [stdout] test src/core/implementation/heuristics.rs - core::implementation::heuristics::MinLP (line 158) ... ok [INFO] [stdout] test src/core/utils.rs - core::utils::LexBitSet (line 179) ... ok [INFO] [stdout] test src/core/utils.rs - core::utils::Matrix (line 46) ... ok [INFO] [stdout] test src/core/implementation/mdd/pooled.rs - core::implementation::mdd::pooled::PooledMDD (line 53) ... ok [INFO] [stdout] test src/core/utils.rs - core::utils::BitSetIter (line 105) ... ok [INFO] [stdout] test src/core/implementation/dp.rs - core::implementation::dp::Minimize (line 40) ... ok [INFO] [stdout] test src/core/implementation/solver/sequential.rs - core::implementation::solver::sequential::SequentialSolver (line 34) ... ok [INFO] [stdout] test src/core/implementation/solver/parallel.rs - core::implementation::solver::parallel::ParallelSolver (line 105) ... ok [INFO] [stdout] [INFO] [stdout] test result: ok. 20 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out [INFO] [stdout] [INFO] running `"docker" "inspect" "e8167dbd14b83d3cf88354b2ab5cc57545da20a11b9b40d24e8915cb84f8af27"` [INFO] running `"docker" "rm" "-f" "e8167dbd14b83d3cf88354b2ab5cc57545da20a11b9b40d24e8915cb84f8af27"` [INFO] [stdout] e8167dbd14b83d3cf88354b2ab5cc57545da20a11b9b40d24e8915cb84f8af27