[INFO] fetching crate vle-thermo 0.16.0...
[INFO] testing vle-thermo-0.16.0 against 1.100.0-beta.1 for beta-1.100-2
[INFO] extracting crate vle-thermo 0.16.0 into /workspace/builds/worker-4-tc2/source
[INFO] started tweaking crates.io crate vle-thermo 0.16.0
[INFO] removed 0 missing tests
[INFO] finished tweaking crates.io crate vle-thermo 0.16.0
[INFO] tweaked toml for crates.io crate vle-thermo 0.16.0 written to /workspace/builds/worker-4-tc2/source/Cargo.toml
[INFO] validating manifest of crates.io crate vle-thermo 0.16.0 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 vle-thermo 0.16.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.100.0-beta.1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:79:12
[INFO] [stderr]    |
[INFO] [stderr] 79 | homepage = "https://github.com/miguelju/vle"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 84 | repository = "https://github.com/miguelju/vle"
[INFO] [stderr]    |              ---------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `vle-thermo` (manifest) generated 1 warning
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4-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:3111399a4047eeb3a02b7a90e478d715f38a8c6669b5c4b49d30a17385265909" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc
[INFO] running `Command { std: "docker" "start" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc", 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" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc" "/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" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc", 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" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:79:12
[INFO] [stderr]    |
[INFO] [stderr] 79 | homepage = "https://github.com/miguelju/vle"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 84 | repository = "https://github.com/miguelju/vle"
[INFO] [stderr]    |              ---------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `vle-thermo` (manifest) generated 1 warning
[INFO] [stderr]    Compiling proc-macro2 v1.0.107
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling bytemuck v1.25.2
[INFO] [stderr]    Compiling matrixmultiply v0.3.11
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling rawpointer v0.2.1
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling smallvec v1.15.2
[INFO] [stderr]    Compiling safe_arch v0.7.4
[INFO] [stderr]    Compiling quote v1.0.47
[INFO] [stderr]    Compiling wide v0.7.33
[INFO] [stderr]    Compiling syn v3.0.3
[INFO] [stderr]    Compiling syn v2.0.119
[INFO] [stderr]    Compiling num-complex v0.4.6
[INFO] [stderr]    Compiling approx v0.5.1
[INFO] [stderr]    Compiling num-integer v0.1.47
[INFO] [stderr]    Compiling uom v0.36.0
[INFO] [stderr]    Compiling num-rational v0.4.2
[INFO] [stderr]    Compiling simba v0.9.1
[INFO] [stderr]    Compiling serde_derive v1.0.229
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling nalgebra v0.33.3
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling num-dual v0.11.2
[INFO] [stderr]    Compiling vle-units v0.16.0
[INFO] [stderr]    Compiling vle-thermo v0.16.0 (/opt/rustwide/workdir)
[INFO] [stderr] warning: unused dependency `vle-units`
[INFO] [stderr]   --> Cargo.toml:45:15
[INFO] [stderr]    |
[INFO] [stderr] 45 | [dependencies.vle-units]
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `vle-units`
[INFO] [stderr] warning: `vle-thermo` (manifest) generated 1 warning
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 57.14s
[INFO] running `Command { std: "docker" "inspect" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc", 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" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:79:12
[INFO] [stderr]    |
[INFO] [stderr] 79 | homepage = "https://github.com/miguelju/vle"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 84 | repository = "https://github.com/miguelju/vle"
[INFO] [stderr]    |              ---------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `vle-thermo` (manifest) generated 1 warning
[INFO] [stderr]    Compiling serde_core v1.0.229
[INFO] [stderr]    Compiling serde v1.0.229
[INFO] [stderr]    Compiling zerocopy v0.8.56
[INFO] [stderr]    Compiling zerocopy-derive v0.8.56
[INFO] [stderr]    Compiling either v1.17.0
[INFO] [stderr]    Compiling clap_builder v4.6.6
[INFO] [stderr]    Compiling regex-automata v0.4.18
[INFO] [stderr]    Compiling is-terminal v0.4.17
[INFO] [stderr]    Compiling itertools v0.10.5
[INFO] [stderr]    Compiling criterion-plot v0.5.0
[INFO] [stderr]    Compiling regex v1.13.1
[INFO] [stderr]    Compiling clap v4.6.6
[INFO] [stderr]    Compiling serde_json v1.0.151
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling tinytemplate v1.2.1
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling half v2.7.1
[INFO] [stderr]    Compiling ciborium-ll v0.2.2
[INFO] [stderr]    Compiling vle-units v0.16.0
[INFO] [stderr]    Compiling ciborium v0.2.2
[INFO] [stderr]    Compiling vle-thermo v0.16.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Compiling criterion v0.5.1
[INFO] [stderr] warning: unused dependency `vle-units`
[INFO] [stderr]   --> Cargo.toml:45:15
[INFO] [stderr]    |
[INFO] [stderr] 45 | [dependencies.vle-units]
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `vle-units`
[INFO] [stderr] warning: `vle-thermo` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 45.36s
[INFO] running `Command { std: "docker" "inspect" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc", 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" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc" "/opt/rustwide/cargo-home/bin/cargo" "+1.100.0-beta.1" "test" "--frozen", kill_on_drop: false }`
[INFO] [stderr] warning: `package.homepage` is redundant with `package.repository`
[INFO] [stderr]   --> Cargo.toml:79:12
[INFO] [stderr]    |
[INFO] [stderr] 79 | homepage = "https://github.com/miguelju/vle"
[INFO] [stderr]    |            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 84 | repository = "https://github.com/miguelju/vle"
[INFO] [stderr]    |              ---------------------------------
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::redundant_homepage` is set to `warn` by default
[INFO] [stderr] help: consider removing `package.homepage`
[INFO] [stderr] warning: `vle-thermo` (manifest) generated 1 warning
[INFO] [stderr] warning: unused dependency `vle-units`
[INFO] [stderr]   --> Cargo.toml:45:15
[INFO] [stderr]    |
[INFO] [stderr] 45 | [dependencies.vle-units]
[INFO] [stderr]    |               ^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `cargo::unused_dependencies` is set to `warn` by default
[INFO] [stderr] help: consider removing the dependency on `vle-units`
[INFO] [stderr] warning: `vle-thermo` (manifest) generated 1 warning
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.16s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/build/vle-thermo/5a4518952d338a23/out/vle_thermo-5a4518952d338a23)
[INFO] [stdout] 
[INFO] [stdout] running 364 tests
[INFO] [stdout] test activity::tests::activity_tp_cache_matches_direct_evaluation ... ok
[INFO] [stdout] test activity::tests::margules_matches_table_2_3_closed_form ... ok
[INFO] [stdout] test activity::tests::excess_cp_matches_fd_of_shipped_excess_enthalpy_per_model ... ok
[INFO] [stdout] test activity::tests::margules_van_laar_excess_enthalpy_equals_gibbs ... ok
[INFO] [stdout] test activity::tests::nrtl_matches_binary_closed_form ... ok
[INFO] [stdout] test activity::tests::van_laar_reduces_to_binary_closed_form ... ok
[INFO] [stdout] test activity::tests::gibbs_duhem_excess_gibbs_is_symmetric_endpoints ... ok
[INFO] [stdout] test activity::tests::ln_gamma_all_matches_per_component_for_every_model ... ok
[INFO] [stdout] test activity::tests::discriminant_values_match_legacy ... ok
[INFO] [stdout] test activity::tests::ideal_solution_is_unity_and_zero_excess ... ok
[INFO] [stdout] test activity::tests::scatchard_gamma_unity_when_solubility_params_equal ... ok
[INFO] [stdout] test activity::tests::nrtl_excess_enthalpy_matches_numerical_oracle ... ok
[INFO] [stdout] test activity::tests::nrtl_ternary_generic_matches_f64_per_component ... ok
[INFO] [stdout] test activity::tests::wilson_cache_matches_per_component_ln_gamma ... ok
[INFO] [stdout] test activity::tests::wilson_excess_enthalpy_matches_numerical_oracle ... ok
[INFO] [stdout] test energy::tests::analytic_t_derivative_matches_oracle_classical_and_3param ... ok
[INFO] [stdout] test energy::tests::departure_reduces_to_pure ... ok
[INFO] [stdout] test energy::tests::departure_lewis_randall_consistency ... ok
[INFO] [stdout] test activity::tests::wilson_gamma_goes_to_one_for_zero_interaction ... ok
[INFO] [stdout] test energy::tests::departure_h_via_direct_energy_oracle ... ok
[INFO] [stdout] test energy::tests::analytic_t_derivative_matches_oracle_ge_rules ... ok
[INFO] [stdout] test energy::tests::excess_h_s_matches_activity_layer ... ok
[INFO] [stdout] test energy::tests::full_phase_enthalpy_entropy_runs ... ok
[INFO] [stdout] test energy::tests::phase_cp_matches_fd_of_enthalpy_and_ideal_limit ... ok
[INFO] [stdout] test energy::tests::gamma_phi_liquid_enthalpy_ideal_minus_condensation ... ok
[INFO] [stdout] test energy::tests::ideal_cp_and_integral_consistent ... ok
[INFO] [stdout] test eos::tests::alpha_generic_f64_matches_scalar_alpha ... ok
[INFO] [stdout] test eos::tests::analytical_d_alpha_matches_numerical ... ok
[INFO] [stdout] test eos::tests::attractive_term_arctan_branch_hydrogen_like_sw ... ok
[INFO] [stdout] test eos::tests::chao_seader_pure_fugacity_sane ... ok
[INFO] [stdout] test eos::tests::discriminant_values_match_legacy ... ok
[INFO] [stdout] test energy::tests::ideal_entropy_integral_is_cp_over_t ... ok
[INFO] [stdout] test energy::tests::ideal_mixing_entropy_binary ... ok
[INFO] [stdout] test eos::tests::eos_dimensionless_generic_f64_matches_eos_state ... ok
[INFO] [stdout] test eos::tests::generalized_uw_reproduces_two_param_families ... ok
[INFO] [stdout] test energy::tests::partial_molar_enthalpy_euler_sum_equals_total ... ok
[INFO] [stdout] test eos::tests::ln_phi_ideal_gas_limit ... ok
[INFO] [stdout] test eos::tests::alpha_at_tr_one_is_one_for_pr_rks ... ok
[INFO] [stdout] test eos::tests::alpha_generic_dual_matches_analytic_d_alpha ... ok
[INFO] [stdout] test eos::tests::eos_state_reuse_matches_one_shot_functions ... ok
[INFO] [stdout] test eos::tests::family_constants_match_legacy_table ... ok
[INFO] [stdout] test eos::tests::grayson_streed_set_is_the_legacy_chao_seader_table_and_1961_differs ... ok
[INFO] [stdout] test eos::tests::m72_alpha_at_tr_one_is_one ... ok
[INFO] [stdout] test eos::tests::m72_alpha_is_finite_and_positive ... ok
[INFO] [stdout] test eos::tests::m72_analytical_d_alpha_matches_numerical ... ok
[INFO] [stdout] test eos::tests::ol_d_alpha_matches_numerical ... ok
[INFO] [stdout] test eos::tests::prsv_k1_recovers_kappa0_when_zero ... ok
[INFO] [stdout] test eos::tests::ol_z_factor_and_entropy_finite ... ok
[INFO] [stdout] test eos::tests::species_selection_by_name ... ok
[INFO] [stdout] test eos::tests::m72_z_factor_and_ln_phi_work ... ok
[INFO] [stdout] test eos::tests::ol_alpha_finite_and_positive ... ok
[INFO] [stdout] test eos::tests::ol_alpha_nan_without_sat_data ... ok
[INFO] [stdout] test eos::tests::schmidt_wenzel_tr1_entropy_finite ... ok
[INFO] [stdout] test eos::tests::three_parameter_alpha_unity_at_critical ... ok
[INFO] [stdout] test eos::tests::three_parameter_d_alpha_matches_numerical ... ok
[INFO] [stdout] test eos::tests::three_parameter_detection ... ok
[INFO] [stdout] test eos::tests::three_parameter_ideal_gas_limit ... ok
[INFO] [stdout] test eos::tests::z_factor_methane_supercritical ... ok
[INFO] [stdout] test eos::tests::z_factor_n_pentane_two_phase ... ok
[INFO] [stdout] test eos::tests::three_parameter_entropy_consistency ... ok
[INFO] [stdout] test eos::tests::three_parameter_roots_and_fugacity_sane ... ok
[INFO] [stdout] test flash::adiabatic::tests::adiabatic_recovers_the_temperature_of_a_known_enthalpy ... ok
[INFO] [stdout] test flash::adiabatic::tests::adiabatic_rejects_non_cubic_system ... ok
[INFO] [stdout] test flash::bubble::tests::bubble_pressure_gamma_phi_van_laar ... ok
[INFO] [stdout] test flash::adiabatic::tests::adiabatic_enthalpy_matches_target ... ok
[INFO] [stdout] test flash::aij_regression::tests::rejects_non_binary ... ok
[INFO] [stdout] test flash::bubble::tests::bubble_pressure_between_pure_component_vapor_pressures ... ok
[INFO] [stdout] test flash::critical::tests::pure_component_critical_recovers_tc_pc ... ok
[INFO] [stdout] test flash::critical::tests::rejects_three_parameter_eos ... ok
[INFO] [stdout] test flash::bubble::tests::bubble_pressure_satisfies_saturation_condition ... ok
[INFO] [stdout] test flash::dew::tests::dew_pressure_at_or_below_bubble_pressure ... ok
[INFO] [stdout] test flash::dew::tests::dew_pressure_satisfies_saturation_condition ... ok
[INFO] [stdout] test flash::critical::tests::binary_critical_between_pure_criticals ... ok
[INFO] [stdout] test flash::aij_regression::tests::recovers_known_van_laar_parameters ... ok
[INFO] [stdout] test flash::aij_regression::tests::recovers_known_nrtl_parameters ... ok
[INFO] [stdout] test flash::envelope::tests::rejects_non_cubic_system ... ok
[INFO] [stdout] test flash::envelope::tests::envelope_points_satisfy_equal_fugacity ... ok
[INFO] [stdout] test flash::aij_regression::tests::recovers_known_wilson_parameters ... ok
[INFO] [stdout] test flash::free_water::tests::a_little_water_in_a_hot_vapor_needs_no_free_phase_even_below_psat ... ok
[INFO] [stdout] test flash::free_water::tests::a_subcooled_drum_is_two_liquids_and_no_vapor ... ok
[INFO] [stdout] test flash::free_water::tests::a_dry_feed_reduces_to_the_ordinary_flash ... ok
[INFO] [stdout] test flash::dew::tests::dew_temperature_gamma_phi_wilson ... ok
[INFO] [stdout] test flash::free_water::tests::an_explicit_water_saturation_pressure_is_honoured ... ok
[INFO] [stdout] test flash::free_water::tests::rejects_bad_inputs ... ok
[INFO] [stdout] test flash::free_water::tests::hot_stripper_keeps_all_water_in_the_vapor ... ok
[INFO] [stdout] test flash::free_water::tests::cold_overhead_drum_decants_free_water ... ok
[INFO] [stdout] test flash::free_water::tests::water_antoine_fixture_is_sane ... ok
[INFO] [stdout] test flash::init::tests::raoult_falls_back_to_wilson_without_sat_data ... ok
[INFO] [stdout] test flash::init::tests::wilson_k_decreases_with_pressure ... ok
[INFO] [stdout] test flash::init::tests::wilson_k_light_heavy_ordering ... ok
[INFO] [stdout] test flash::init::tests::wilson_k_values_vector_matches_scalar ... ok
[INFO] [stdout] test flash::init::tests::wilson_k_at_critical_point_is_pc_over_p ... ok
[INFO] [stdout] test flash::isothermal::tests::flash_gamma_phi_activity_liquid ... ok
[INFO] [stdout] test flash::isothermal::tests::flash_isofugacity_at_convergence ... ok
[INFO] [stdout] test flash::isothermal::tests::flash_two_phase_mass_balance_and_equilibrium ... ok
[INFO] [stdout] test flash::isothermal::tests::gdem_trial_rejects_runaway_candidates ... ok
[INFO] [stdout] test flash::isothermal::tests::gdem_gain_is_bounded ... ok
[INFO] [stdout] test flash::isothermal::tests::flash_single_phase_high_pressure_liquid ... ok
[INFO] [stdout] test flash::isothermal::tests::rr_ignores_absent_components ... ok
[INFO] [stdout] test flash::isothermal::tests::rr_negative_flash_root_outside_unit_interval ... ok
[INFO] [stdout] test flash::isothermal::tests::rr_rejects_numerically_invalid_inputs ... ok
[INFO] [stdout] test flash::isothermal::tests::rr_rejects_single_phase_k ... ok
[INFO] [stdout] test flash::isothermal::tests::rr_residual_is_zero_at_root ... ok
[INFO] [stdout] test flash::isothermal::tests::rr_degenerate_unity_k_reports_no_root ... ok
[INFO] [stdout] test flash::isothermal::tests::rr_matches_hand_solution_binary ... ok
[INFO] [stdout] test flash::kij_regression::tests::rejects_non_binary ... ok
[INFO] [stdout] test flash::stability::tests::stability_agrees_with_flash_phase_count ... ok
[INFO] [stdout] test flash::stability::tests::stable_single_phase_high_pressure ... ok
[INFO] [stdout] test flash::stability::tests::unstable_feed_detected_and_gives_warm_start ... ok
[INFO] [stdout] test flash::system::tests::braun_k10_is_maxwell_bonnell_over_pressure_with_an_ideal_vapor ... ok
[INFO] [stdout] test flash::system::tests::dimension_mismatch_errors ... ok
[INFO] [stdout] test flash::system::tests::gamma_phi_ideal_solution_is_raoult ... ok
[INFO] [stdout] test flash::system::tests::gamma_phi_wilson_deviates_from_raoult ... ok
[INFO] [stdout] test flash::system::tests::grayson_streed_cached_path_matches_the_direct_path_and_flashes ... ok
[INFO] [stdout] test flash::envelope::tests::envelope_pressure_climbs_from_the_seed ... ok
[INFO] [stdout] test flash::system::tests::grayson_streed_without_solubility_data_degrades_to_gamma_one ... ok
[INFO] [stdout] test flash::system::tests::k_derivs_gamma_phi_cubic_vapor_match_fd ... ok
[INFO] [stdout] test flash::system::tests::grayson_streed_k_is_nu_times_gamma_over_phi ... ok
[INFO] [stdout] test flash::system::tests::k_derivs_phi_phi_match_fd ... ok
[INFO] [stdout] test flash::system::tests::k_derivs_gamma_phi_wilson_ideal_vapor_match_fd ... ok
[INFO] [stdout] test flash::system::tests::ln_k_values_into_matches_k_values ... ok
[INFO] [stdout] test flash::system::tests::ln_k_values_into_checks_output_length ... ok
[INFO] [stdout] test flash::system::tests::phase_cp_matches_fd_of_phase_enthalpy_for_every_route ... ok
[INFO] [stdout] test flash::system::tests::min_gibbs_matches_independent_two_root_evaluation ... ok
[INFO] [stdout] test flash::system::tests::phi_phi_k_values_finite_and_ordered ... ok
[INFO] [stdout] test liquid_volume::tests::rackett_volume_increases_with_temperature ... ok
[INFO] [stdout] test liquid_volume::tests::high_tr_branch_is_finite ... ok
[INFO] [stdout] test liquid_volume::tests::thomson_recovers_characteristic_volume_scale ... ok
[INFO] [stdout] test mixing::tests::c_mix_patel_teja_is_mole_fraction_average ... ok
[INFO] [stdout] test mixing::tests::c_mix_returns_none_for_ab_rules ... ok
[INFO] [stdout] test liquid_volume::tests::rackett_water_is_about_18_cm3_per_mol ... ok
[INFO] [stdout] test mixing::tests::c_mix_usb_is_weighted_average ... ok
[INFO] [stdout] test mixing::tests::vb6_mixing_rules_start_at_26 ... ok
[INFO] [stdout] test mixture::tests::cached_and_uncached_agree_at_scale ... ok
[INFO] [stdout] test mixture::tests::a_bar_euler_identity_every_rule ... ok
[INFO] [stdout] test mixture::tests::chao_seader_mix_matches_pure_calls ... ok
[INFO] [stdout] test mixture::tests::classical_analytic_jacobian_matches_fd_and_is_symmetric ... ok
[INFO] [stdout] test flash::envelope::tests::traces_a_multi_point_envelope ... ok
[INFO] [stdout] test mixture::tests::classical_pr_matches_textbook_form ... ok
[INFO] [stdout] test mixture::tests::dlnphi_dt_dp_match_fd_across_matrix ... ok
[INFO] [stdout] test mixture::tests::dual_jacobian_matches_fd_for_exotic_rules ... ok
[INFO] [stdout] test mixture::tests::dual_jacobian_matches_fd_for_3param_eos ... ok
[INFO] [stdout] test mixture::tests::factorized_matches_general_path ... ok
[INFO] [stdout] test mixture::tests::hv_c_star_matches_exact_and_vb6_table ... ok
[INFO] [stdout] test mixture::tests::gibbs_helmholtz_identity_vs_departure_enthalpy ... ok
[INFO] [stdout] test mixture::tests::invalid_combinations_are_rejected ... ok
[INFO] [stdout] test mixture::tests::kij_index_counts_every_nonzero ... ok
[INFO] [stdout] test mixture::tests::pure_limit_matches_ln_phi_pure_classical_and_3param ... ok
[INFO] [stdout] test mixture::tests::pure_limit_matches_ln_phi_pure_ge_rules ... ok
[INFO] [stdout] test mixture::tests::rank1_apply_falls_back_correctly ... ok
[INFO] [stdout] test mixture::tests::ideal_gas_limit_all_rules ... ok
[INFO] [stdout] test mixture::tests::three_param_euler_identity ... ok
[INFO] [stdout] test mixture::tests::sparse_matches_general_path ... ok
[INFO] [stdout] test mixture::tests::tp_cache_matches_uncached_path ... ok
[INFO] [stdout] test mixture::tests::tp_cache_rejects_mismatched_spec ... ok
[INFO] [stdout] test mixture::tests::volumetric_identity_all_rules ... ok
[INFO] [stdout] test mixture::tests::rank1_apply_matches_formed_jacobian ... ok
[INFO] [stdout] test mixture::tests::workspace_matches_allocating_path_and_survives_reuse ... ok
[INFO] [stdout] test mixture::tests::ws_b_mix_satisfies_wong_sandler_construction ... ok
[INFO] [stdout] test numerics::broyden::tests::detects_dimension_mismatch ... ok
[INFO] [stdout] test numerics::broyden::tests::detects_non_finite_evaluation ... ok
[INFO] [stdout] test mixture::tests::wong_sandler_collapse_matches_general_path ... ok
[INFO] [stdout] test mixture::tests::wong_sandler_departure_enthalpy_matches_gibbs_helmholtz ... ok
[INFO] [stdout] test numerics::broyden::tests::detects_singular_jacobian ... ok
[INFO] [stdout] test numerics::broyden::tests::refresh_cadence_does_not_break_convergence ... ok
[INFO] [stdout] test numerics::broyden::tests::solves_rosenbrock_style_system ... ok
[INFO] [stdout] test numerics::broyden::tests::solves_linear_system_essentially_immediately ... ok
[INFO] [stdout] test numerics::broyden::tests::solves_simple_2x2_polynomial_system ... ok
[INFO] [stdout] test numerics::broyden::tests::reports_no_convergence_with_residuals ... ok
[INFO] [stdout] test numerics::cubic::tests::one_real_root_via_cardano ... ok
[INFO] [stdout] test numerics::cubic::tests::rejects_nan_coefficient ... ok
[INFO] [stdout] test numerics::cubic::tests::rejects_non_cubic ... ok
[INFO] [stdout] test numerics::cubic::tests::three_real_roots_via_trigonometric_form ... ok
[INFO] [stdout] test numerics::cubic::tests::near_degenerate_discriminant_does_not_panic ... ok
[INFO] [stdout] test numerics::cubic::tests::vle_z_factor_style_cubic ... ok
[INFO] [stdout] test numerics::halley::tests::cubic_convergence_beats_newton_iteration_count ... ok
[INFO] [stdout] test numerics::cubic::tests::double_plus_single_root ... ok
[INFO] [stdout] test numerics::cubic::tests::triple_root ... ok
[INFO] [stdout] test numerics::halley::tests::finds_sqrt_via_halley ... ok
[INFO] [stdout] test numerics::halley::tests::reports_non_finite_evaluation ... ok
[INFO] [stdout] test numerics::root_finding::minimize_tests::finds_minimum_of_quartic ... ok
[INFO] [stdout] test numerics::root_finding::minimize_tests::finds_parabola_minimum ... ok
[INFO] [stdout] test numerics::root_finding::tests::brent_finds_dottie_number ... ok
[INFO] [stdout] test numerics::root_finding::tests::brent_finds_wallis_root ... ok
[INFO] [stdout] test numerics::root_finding::tests::brent_handles_root_on_endpoint ... ok
[INFO] [stdout] test numerics::root_finding::tests::brent_rejects_unbracketed_interval ... ok
[INFO] [stdout] test numerics::root_finding::tests::brent_reports_nan_evaluation ... ok
[INFO] [stdout] test numerics::root_finding::tests::illinois_finds_dottie_number ... ok
[INFO] [stdout] test numerics::halley::tests::detects_singular_step ... ok
[INFO] [stdout] test numerics::halley::tests::finds_dottie_number ... ok
[INFO] [stdout] test numerics::root_finding::tests::illinois_rejects_unbracketed_interval ... ok
[INFO] [stdout] test numerics::utils::tests::converged_scalar_handles_both_regimes ... ok
[INFO] [stdout] test numerics::utils::tests::near_zero_basic_and_nan ... ok
[INFO] [stdout] test numerics::utils::tests::norms_basic ... ok
[INFO] [stdout] test numerics::root_finding::tests::illinois_handles_steep_function ... ok
[INFO] [stdout] test numerics::utils::tests::parabolic_vertex_degenerate_returns_none ... ok
[INFO] [stdout] test numerics::utils::tests::parabolic_vertex_finds_known_minimum ... ok
[INFO] [stdout] test numerics::utils::tests::sum_frac_residual_works ... ok
[INFO] [stdout] test numerics::root_finding::tests::illinois_finds_wallis_root ... ok
[INFO] [stdout] test petroleum::assay::tests::a_weight_basis_curve_is_weighted_as_weight ... ok
[INFO] [stdout] test petroleum::assay::tests::an_out_of_range_cut_is_reported_with_its_index ... ok
[INFO] [stdout] test petroleum::assay::tests::a_d86_assay_is_converted_before_it_is_cut ... ok
[INFO] [stdout] test petroleum::assay::tests::a_gravity_curve_is_followed_rather_than_assumed ... ok
[INFO] [stdout] test petroleum::assay::tests::constant_watson_k_cuts_blend_back_to_the_bulk_gravity_exactly ... ok
[INFO] [stdout] test petroleum::assay::tests::characterizes_a_crude_into_usable_pseudocomponents ... ok
[INFO] [stdout] test petroleum::assay::tests::interpolate_flat_does_not_extrapolate ... ok
[INFO] [stdout] test petroleum::assay::tests::pseudocomponents_drive_a_real_flash ... ok
[INFO] [stdout] test petroleum::assay::tests::pseudocomponents_get_sequential_names ... ok
[INFO] [stdout] test petroleum::assay::tests::rackett_compressibility_is_in_the_hydrocarbon_range ... ok
[INFO] [stdout] test petroleum::assay::tests::rejects_a_malformed_gravity_specification ... ok
[INFO] [stdout] test petroleum::assay::tests::saturation_pressure_rises_with_temperature_for_every_pseudocomponent ... ok
[INFO] [stdout] test petroleum::assay::tests::scales_to_three_hundred_pseudocomponents ... ok
[INFO] [stdout] test petroleum::assay::tests::heavier_pseudocomponents_come_out_heavier ... ok
[INFO] [stdout] test petroleum::assay::tests::the_heat_capacity_polynomial_is_the_correlations_own ... ok
[INFO] [stdout] test petroleum::assay::tests::the_pseudo_antoine_fit_reproduces_the_boiling_point_and_the_critical_point ... ok
[INFO] [stdout] test petroleum::assay::tests::the_stamped_liquid_volume_matches_what_the_rackett_code_computes ... ok
[INFO] [stdout] test petroleum::cp::tests::aromatics_are_predicted_to_three_percent ... ok
[INFO] [stdout] test petroleum::cp::tests::coefficients_feed_the_shared_energy_path ... ok
[INFO] [stdout] test petroleum::cp::tests::coefficients_reproduce_the_direct_evaluation ... ok
[INFO] [stdout] test petroleum::cp::tests::heat_capacity_is_in_a_sane_range_for_hydrocarbons ... ok
[INFO] [stdout] test petroleum::cp::tests::heat_capacity_rises_with_temperature ... ok
[INFO] [stdout] test petroleum::assay::tests::the_conventional_watson_k_is_close_to_but_not_equal_to_the_internal_one ... ok
[INFO] [stdout] test petroleum::cp::tests::molar_heat_capacity_scales_linearly_with_molecular_weight ... ok
[INFO] [stdout] test petroleum::cp::tests::naphthenes_are_the_documented_weak_spot ... ok
[INFO] [stdout] test petroleum::cp::tests::paraffins_have_higher_mass_heat_capacity_than_aromatics ... ok
[INFO] [stdout] test petroleum::cp::tests::quadratic_correlation_leaves_the_cubic_and_quartic_terms_zero ... ok
[INFO] [stdout] test petroleum::cp::tests::refuses_to_extrapolate_outside_the_fitted_watson_k_window ... ok
[INFO] [stdout] test petroleum::cp::tests::rejects_non_physical_temperature_and_molecular_weight ... ok
[INFO] [stdout] test petroleum::cuts::tests::a_flat_curve_cannot_be_cut_by_temperature ... ok
[INFO] [stdout] test petroleum::cp::tests::paraffins_are_predicted_to_three_percent ... ok
[INFO] [stdout] test petroleum::assay::tests::constant_watson_k_really_is_constant_across_the_cuts ... ok
[INFO] [stdout] test petroleum::cuts::tests::cuts_are_contiguous_and_ordered ... ok
[INFO] [stdout] test petroleum::cuts::tests::boundaries_are_validated_rather_than_clamped ... ok
[INFO] [stdout] test petroleum::cuts::tests::cuts_span_a_curve_that_does_not_start_at_zero ... ok
[INFO] [stdout] test petroleum::cuts::tests::cutting_refuses_a_curve_that_is_not_tbp ... ok
[INFO] [stdout] test petroleum::cuts::tests::cuts_inside_one_segment_average_exactly_to_their_midpoint ... ok
[INFO] [stdout] test petroleum::cuts::tests::equal_temperature_produces_equal_boiling_ranges ... ok
[INFO] [stdout] test petroleum::cuts::tests::equal_volume_produces_the_requested_number_of_equal_slices ... ok
[INFO] [stdout] test petroleum::cuts::tests::a_zero_cut_count_is_an_error ... ok
[INFO] [stdout] test petroleum::cuts::tests::every_cut_boiling_point_lies_inside_its_own_range ... ok
[INFO] [stdout] test petroleum::cuts::tests::equal_temperature_and_equal_volume_disagree_on_a_curved_assay ... ok
[INFO] [stdout] test petroleum::cuts::tests::no_boundaries_gives_one_cut_spanning_the_whole_assay ... ok
[INFO] [stdout] test petroleum::cuts::tests::wide_cuts_average_rather_than_sample_the_midpoint ... ok
[INFO] [stdout] test petroleum::distillation::tests::api_data_book_example_d86_to_tbp_in_fahrenheit ... ok
[INFO] [stdout] test petroleum::distillation::tests::api_data_book_example_simdist_to_tbp_in_fahrenheit ... ok
[INFO] [stdout] test petroleum::distillation::tests::api_difference_method_round_trips ... ok
[INFO] [stdout] test petroleum::distillation::tests::conversions_reject_a_curve_on_the_wrong_basis ... ok
[INFO] [stdout] test petroleum::cuts::tests::three_hundred_cuts_is_the_scale_this_exists_for ... ok
[INFO] [stdout] test petroleum::distillation::tests::curve_construction_rejects_malformed_input ... ok
[INFO] [stdout] test petroleum::distillation::tests::efv_initial_point_row_crosses_its_neighbour_on_narrow_feeds ... ok
[INFO] [stdout] test petroleum::distillation::tests::efv_is_flatter_than_d86 ... ok
[INFO] [stdout] test petroleum::distillation::tests::efv_round_trips ... ok
[INFO] [stdout] test petroleum::distillation::tests::every_conversion_preserves_monotonicity ... ok
[INFO] [stdout] test petroleum::distillation::tests::extrapolation_past_the_last_point_keeps_rising ... ok
[INFO] [stdout] test petroleum::distillation::tests::interpolation_hits_the_grid_points_exactly ... ok
[INFO] [stdout] test petroleum::distillation::tests::interpolation_is_monotone_between_grid_points ... ok
[INFO] [stdout] test petroleum::distillation::tests::interval_lookup_covers_the_whole_unit_range ... ok
[INFO] [stdout] test petroleum::distillation::tests::resampling_onto_the_standard_grid_preserves_shared_points ... ok
[INFO] [stdout] test petroleum::distillation::tests::riazi_example_3_2_tbp_to_d86_and_on_to_efv ... ok
[INFO] [stdout] test petroleum::distillation::tests::difference_methods_explain_themselves_without_a_fifty_percent_point ... ok
[INFO] [stdout] test petroleum::distillation::tests::riazi_example_3_3_d86_to_tbp_power_law ... ok
[INFO] [stdout] test petroleum::distillation::tests::riazi_example_3_4_simdist_to_tbp ... ok
[INFO] [stdout] test petroleum::distillation::tests::riazi_example_3_5_simdist_to_d86 ... ok
[INFO] [stdout] test petroleum::distillation::tests::riazi_power_law_round_trips ... ok
[INFO] [stdout] test petroleum::distillation::tests::router_demands_gravity_only_for_efv_legs ... ok
[INFO] [stdout] test petroleum::distillation::tests::router_is_identity_on_the_same_basis ... ok
[INFO] [stdout] test petroleum::distillation::tests::router_reaches_every_basis_from_every_basis ... ok
[INFO] [stdout] test petroleum::distillation::tests::simdist_round_trips_through_tbp ... ok
[INFO] [stdout] test petroleum::distillation::tests::tbp_is_wider_boiling_than_d86 ... ok
[INFO] [stdout] test petroleum::gravity::tests::api_and_sg_round_trip ... ok
[INFO] [stdout] test petroleum::cuts::tests::explicit_boundaries_reproduce_refinery_product_cuts ... ok
[INFO] [stdout] test petroleum::gravity::tests::average_boiling_points_reject_a_decreasing_curve ... ok
[INFO] [stdout] test petroleum::gravity::tests::average_boiling_points_respect_the_physical_ordering ... ok
[INFO] [stdout] test petroleum::gravity::tests::averages_agree_for_a_single_cut ... ok
[INFO] [stdout] test petroleum::gravity::tests::cubic_average_never_exceeds_volume_average ... ok
[INFO] [stdout] test petroleum::gravity::tests::discrete_averages_normalize_their_weights ... ok
[INFO] [stdout] test petroleum::gravity::tests::discrete_averages_reject_mismatched_lengths ... ok
[INFO] [stdout] test petroleum::gravity::tests::lighter_oil_has_higher_api ... ok
[INFO] [stdout] test petroleum::gravity::tests::low_boiling_cut_below_freezing_stays_finite ... ok
[INFO] [stdout] test petroleum::gravity::tests::narrow_cut_collapses_every_average_onto_vabp ... ok
[INFO] [stdout] test petroleum::gravity::tests::rejects_nonphysical_gravity ... ok
[INFO] [stdout] test petroleum::gravity::tests::temperature_conversions_are_exact_at_known_anchors ... ok
[INFO] [stdout] test petroleum::gravity::tests::water_is_ten_degrees_api ... ok
[INFO] [stdout] test petroleum::gravity::tests::watson_k_rejects_bad_input ... ok
[INFO] [stdout] test petroleum::gravity::tests::watson_k_separates_paraffins_from_aromatics ... ok
[INFO] [stdout] test petroleum::properties::tests::acentric_factor_matches_measured_values ... ok
[INFO] [stdout] test petroleum::properties::tests::acentric_factor_rejects_non_physical_criticals ... ok
[INFO] [stdout] test petroleum::gravity::tests::blended_watson_k_lands_between_its_endpoints ... ok
[INFO] [stdout] test petroleum::properties::tests::api_1987_matches_measured_properties ... ok
[INFO] [stdout] test petroleum::properties::tests::critical_volumes_match_measured_values ... ok
[INFO] [stdout] test petroleum::properties::tests::acentric_factor_switches_branch_without_a_jump ... ok
[INFO] [stdout] test petroleum::properties::tests::estimate_rejects_non_physical_input ... ok
[INFO] [stdout] test petroleum::properties::tests::estimate_returns_a_physically_ordered_property_set ... ok
[INFO] [stdout] test petroleum::properties::tests::heavier_cuts_have_higher_critical_temperature_and_lower_critical_pressure ... ok
[INFO] [stdout] test petroleum::properties::tests::riazi_daubert_1980_matches_measured_properties ... ok
[INFO] [stdout] test petroleum::properties::tests::kesler_lee_matches_measured_properties ... ok
[INFO] [stdout] test petroleum::properties::tests::twu_is_the_best_method_on_paraffins_and_the_worst_on_aromatics ... ok
[INFO] [stdout] test petroleum::properties::tests::twu_matches_measured_properties ... ok
[INFO] [stdout] test petroleum::properties::tests::twu_reference_molecular_weight_inverts_its_own_forward_relation ... ok
[INFO] [stdout] test petroleum::distillation::tests::riazi_example_3_3_d86_to_tbp_api_difference_method ... ok
[INFO] [stdout] test petroleum::properties::tests::twu_reference_recovers_n_alkane_properties_almost_exactly ... ok
[INFO] [stdout] test petroleum::properties::tests::twu_reports_rather_than_silently_extrapolating_off_its_bracket ... ok
[INFO] [stdout] test petroleum::properties::tests::zc_conversion_reproduces_a_known_compound ... ok
[INFO] [stdout] test petroleum::properties::tests::twu_reference_alpha_is_a_sane_reduced_complement ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::a_temperature_inside_the_branch_step_returns_the_boundary_pressure ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::an_unreachable_vapor_pressure_says_so_rather_than_guessing ... ok
[INFO] [stdout] test petroleum::properties::tests::zc_correlations_agree_with_each_other_and_land_in_range ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::boiling_point_rises_monotonically_with_pressure ... ok
[INFO] [stdout] test petroleum::properties::tests::zc_and_vc_are_mutually_consistent_for_every_method ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::closed_form_reproduces_the_forward_relation_exactly ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::is_nearly_but_not_exactly_an_identity_at_one_atmosphere ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::ln_vapor_pressure_extrapolates_where_vapor_pressure_refuses ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::out_of_range_pressure_is_reported_not_extrapolated ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::out_of_range_temperature_is_reported ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::predicts_vapor_pressure_within_a_few_percent_of_antoine ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::recovers_normal_boiling_points_from_antoine_vapor_pressures ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::the_branch_boundaries_step_by_the_documented_amount ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::the_two_directions_are_exact_inverses ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::the_watson_correction_vanishes_at_the_reference ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::vacuum_lowers_the_boiling_point ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::vapor_pressure_inverts_the_boiling_point_relation ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::vapor_pressure_rises_monotonically_with_temperature ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::above_the_critical_point_both_phases_return_the_same_root ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::agrees_with_peng_robinson_for_a_near_simple_fluid_vapor ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::analytic_dz_dvr_matches_finite_differences ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::aromatic_and_paraffinic_corrections_pull_in_opposite_directions ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::heavy_liquid_enthalpy_departure_is_large_and_negative ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::enthalpy_departure_is_the_temperature_derivative_of_the_fugacity ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::mixture_departure_runs_and_is_bounded_by_the_pure_ends ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::pseudocritical_lies_between_the_pure_components_and_is_symmetric ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::pseudocritical_of_a_pure_component_is_the_component ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::reference_fluid_reproduces_itself ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::low_pressure_limit_is_the_ideal_gas ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::rejects_bad_inputs ... ok
[INFO] [stdout] test petroleum::vapor_pressure::tests::closed_form_inversion_matches_the_brent_oracle_everywhere ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::root_selection_gives_a_dense_liquid_and_a_light_vapor_below_tc ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::second_virial_coefficient_matches_pitzer_within_a_few_percent ... ok
[INFO] [stdout] test refinery::volume_translation::tests::a_measured_zra_overrides_the_correlation ... ok
[INFO] [stdout] test refinery::volume_translation::tests::mixture_shift_is_the_mole_fraction_average ... ok
[INFO] [stdout] test refinery::volume_translation::tests::translated_pr_liquid_density_of_n_decane_is_close_to_measured ... ok
[INFO] [stdout] test refinery::volume_translation::tests::translated_srk_liquid_density_of_n_heptane_is_close_to_measured ... ok
[INFO] [stdout] test refinery::volume_translation::tests::unsupported_families_are_reported ... ok
[INFO] [stdout] test saturation::tests::boiling_point_round_trips ... ok
[INFO] [stdout] test refinery::volume_translation::tests::shift_is_positive_and_of_the_expected_size_for_srk ... ok
[INFO] [stdout] test saturation::tests::correlations_finite_and_subcritical ... ok
[INFO] [stdout] test saturation::tests::correlations_hit_one_atm_at_boiling_point ... ok
[INFO] [stdout] test saturation::tests::d_psat_dt_matches_numerical ... ok
[INFO] [stdout] test saturation::tests::dual_first_derivative_matches_closed_form_and_fd ... ok
[INFO] [stdout] test saturation::tests::dual_real_part_equals_psat ... ok
[INFO] [stdout] test saturation::tests::dual_second_derivative_and_condensation_cp_match_fd ... ok
[INFO] [stdout] test saturation::tests::polynomial_dippr_form ... ok
[INFO] [stdout] test saturation::tests::poynting_unity_at_saturation_and_grows ... ok
[INFO] [stdout] test saturation::tests::pseudo_antoine_reproduces_model_at_ref ... ok
[INFO] [stdout] test virial::tests::flat_virial_matches_nested ... ok
[INFO] [stdout] test saturation::tests::maxwell_in_antoine_ballpark ... ok
[INFO] [stdout] test virial::tests::pitzer_b0_b1_at_critical ... ok
[INFO] [stdout] test virial::tests::virial_z_ideal_limit ... ok
[INFO] [stdout] test virial::tests::ln_phi_mix_with_matrix_matches_one_shot ... ok
[INFO] [stdout] test refinery::lee_kesler::tests::scales_to_hundreds_of_pseudocomponents ... ok
[INFO] [stdout] test flash::bubble::tests::bubble_temperature_satisfies_saturation_condition ... ok
[INFO] [stdout] test flash::kij_regression::tests::nonzero_kij_beats_zero_for_nonideal_data ... ok
[INFO] [stdout] test flash::kij_regression::tests::recovers_a_known_kij ... ok
[INFO] [stdout] test flash::dew::tests::dew_temperature_satisfies_saturation_condition ... ok
[INFO] [stdout] test flash::bubble::tests::bubble_temperature_close_boiling_phi_phi ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 364 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 2.03s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/chapter_iv_validation.rs (/opt/rustwide/target/debug/build/vle-thermo/1498597cd6375e5f/out/chapter_iv_validation-1498597cd6375e5f)
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test chapter_iv_isothermal_flash_table_4_10 ... ok
[INFO] [stdout] test chapter_iv_kij_regression_table_4_11_12 ... ok
[INFO] [stderr]    Doc-tests vle_thermo
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 2 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.50s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 2 tests
[INFO] [stdout] test src/mixture.rs - mixture::MixtureWorkspace (line 1219) ... ignored
[INFO] [stdout] test src/mixture.rs - mixture::MixtureWorkspace (line 1235) ... ignored
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 2 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] all doctests ran in 0.32s; merged doctests compilation took 0.31s
[INFO] running `Command { std: "docker" "inspect" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc", kill_on_drop: false }`
[INFO] [stdout] c92ce5a278c3ce71a15d43d27c9a49f69599359089cbef535ffb211b4f28ccbc
