Nov 28 17:43:11.321 INFO checking sounding-analysis-0.9.2 against try#db42d4dad33013eba11ef37342ad9f614e5652b8 for pr-56074 Nov 28 17:43:11.321 INFO running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-56074/worker-3/try#db42d4dad33013eba11ef37342ad9f614e5652b8:/target:rw,Z" "-v" "/mnt/big/crater/work/local/test-source/worker-3/pr-56074/try#db42d4dad33013eba11ef37342ad9f614e5652b8:/source:ro,Z" "-v" "/mnt/big/crater/work/local/cargo-home:/cargo-home:ro,Z" "-v" "/mnt/big/crater/work/local/rustup-home:/rustup-home:ro,Z" "-e" "USER_ID=1000" "-e" "SOURCE_DIR=/source" "-e" "USER_ID=1000" "-e" "CMD=cargo +db42d4dad33013eba11ef37342ad9f614e5652b8-alt check --frozen --all --all-targets" "-e" "CARGO_TARGET_DIR=/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/cargo-home" "-e" "RUSTUP_HOME=/rustup-home" "-m" "1536M" "--network" "none" "crater"` Nov 28 17:43:11.706 INFO [stdout] 5d08e24d043270dbb2b23e040e7e802680a733a94fc15ae0173f6877be85ac50 Nov 28 17:43:11.708 INFO running `"docker" "start" "-a" "5d08e24d043270dbb2b23e040e7e802680a733a94fc15ae0173f6877be85ac50"` Nov 28 17:43:12.604 INFO [stderr] usermod: no changes Nov 28 17:43:12.676 INFO [stderr] Checking sounding-validate v0.8.1 Nov 28 17:43:12.676 INFO [stderr] Checking sounding-analysis v0.9.2 (/source) Nov 28 17:43:14.184 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.184 INFO [stderr] --> src/interpolation.rs:28:23 Nov 28 17:43:14.184 INFO [stderr] | Nov 28 17:43:14.184 INFO [stderr] 28 | result.pressure = Optioned::from(target_p); Nov 28 17:43:14.184 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.184 INFO [stderr] | Nov 28 17:43:14.185 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.185 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.185 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.185 INFO [stderr] --> src/interpolation.rs:28:23 Nov 28 17:43:14.185 INFO [stderr] | Nov 28 17:43:14.185 INFO [stderr] 28 | result.pressure = Optioned::from(target_p); Nov 28 17:43:14.185 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:14.185 INFO [stderr] Nov 28 17:43:14.264 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.264 INFO [stderr] --> src/interpolation.rs:56:80 Nov 28 17:43:14.265 INFO [stderr] | Nov 28 17:43:14.265 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 28 17:43:14.265 INFO [stderr] | ^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.265 INFO [stderr] | Nov 28 17:43:14.265 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:14.265 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:14.265 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.265 INFO [stderr] --> src/interpolation.rs:56:80 Nov 28 17:43:14.265 INFO [stderr] | Nov 28 17:43:14.265 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 28 17:43:14.265 INFO [stderr] | ^^^^^^^^^^^ Nov 28 17:43:14.265 INFO [stderr] Nov 28 17:43:14.326 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.326 INFO [stderr] --> src/interpolation.rs:56:30 Nov 28 17:43:14.326 INFO [stderr] | Nov 28 17:43:14.326 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 28 17:43:14.326 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.326 INFO [stderr] | Nov 28 17:43:14.326 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.326 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.326 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.326 INFO [stderr] --> src/interpolation.rs:56:30 Nov 28 17:43:14.326 INFO [stderr] | Nov 28 17:43:14.326 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 28 17:43:14.326 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:14.326 INFO [stderr] Nov 28 17:43:14.424 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.424 INFO [stderr] --> src/interpolation.rs:57:77 Nov 28 17:43:14.424 INFO [stderr] | Nov 28 17:43:14.424 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 28 17:43:14.424 INFO [stderr] | ^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.424 INFO [stderr] | Nov 28 17:43:14.424 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:14.424 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:14.424 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.424 INFO [stderr] --> src/interpolation.rs:57:77 Nov 28 17:43:14.424 INFO [stderr] | Nov 28 17:43:14.424 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 28 17:43:14.424 INFO [stderr] | ^^^^^^^^ Nov 28 17:43:14.424 INFO [stderr] Nov 28 17:43:14.525 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.525 INFO [stderr] --> src/interpolation.rs:57:27 Nov 28 17:43:14.525 INFO [stderr] | Nov 28 17:43:14.525 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 28 17:43:14.525 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.525 INFO [stderr] | Nov 28 17:43:14.525 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.525 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.525 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.525 INFO [stderr] --> src/interpolation.rs:57:27 Nov 28 17:43:14.525 INFO [stderr] | Nov 28 17:43:14.526 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 28 17:43:14.526 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:14.526 INFO [stderr] Nov 28 17:43:14.602 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.602 INFO [stderr] --> src/interpolation.rs:58:78 Nov 28 17:43:14.602 INFO [stderr] | Nov 28 17:43:14.602 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 28 17:43:14.602 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.609 INFO [stderr] | Nov 28 17:43:14.611 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:14.611 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:14.611 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.611 INFO [stderr] --> src/interpolation.rs:58:78 Nov 28 17:43:14.611 INFO [stderr] | Nov 28 17:43:14.611 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 28 17:43:14.611 INFO [stderr] | ^^^^^^^^^ Nov 28 17:43:14.611 INFO [stderr] Nov 28 17:43:14.674 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.675 INFO [stderr] --> src/interpolation.rs:58:28 Nov 28 17:43:14.675 INFO [stderr] | Nov 28 17:43:14.676 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 28 17:43:14.676 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.676 INFO [stderr] | Nov 28 17:43:14.676 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.676 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.676 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.676 INFO [stderr] --> src/interpolation.rs:58:28 Nov 28 17:43:14.676 INFO [stderr] | Nov 28 17:43:14.676 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 28 17:43:14.676 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:14.676 INFO [stderr] Nov 28 17:43:14.777 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.777 INFO [stderr] --> src/interpolation.rs:59:76 Nov 28 17:43:14.777 INFO [stderr] | Nov 28 17:43:14.777 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 28 17:43:14.777 INFO [stderr] | ^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.777 INFO [stderr] | Nov 28 17:43:14.777 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:14.777 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:14.777 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.777 INFO [stderr] --> src/interpolation.rs:59:76 Nov 28 17:43:14.777 INFO [stderr] | Nov 28 17:43:14.777 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 28 17:43:14.777 INFO [stderr] | ^^^^^^^ Nov 28 17:43:14.777 INFO [stderr] Nov 28 17:43:14.873 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:14.873 INFO [stderr] --> src/interpolation.rs:59:26 Nov 28 17:43:14.874 INFO [stderr] | Nov 28 17:43:14.874 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 28 17:43:14.874 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:14.874 INFO [stderr] | Nov 28 17:43:14.874 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.874 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:14.874 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:14.874 INFO [stderr] --> src/interpolation.rs:59:26 Nov 28 17:43:14.874 INFO [stderr] | Nov 28 17:43:14.874 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 28 17:43:14.874 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:14.874 INFO [stderr] Nov 28 17:43:15.008 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.008 INFO [stderr] --> src/interpolation.rs:96:74 Nov 28 17:43:15.008 INFO [stderr] | Nov 28 17:43:15.008 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 28 17:43:15.008 INFO [stderr] | ^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.008 INFO [stderr] | Nov 28 17:43:15.008 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.009 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.009 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.009 INFO [stderr] --> src/interpolation.rs:96:74 Nov 28 17:43:15.009 INFO [stderr] | Nov 28 17:43:15.009 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 28 17:43:15.009 INFO [stderr] | ^^^^^ Nov 28 17:43:15.009 INFO [stderr] Nov 28 17:43:15.063 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.063 INFO [stderr] --> src/interpolation.rs:96:24 Nov 28 17:43:15.063 INFO [stderr] | Nov 28 17:43:15.064 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 28 17:43:15.064 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.064 INFO [stderr] | Nov 28 17:43:15.064 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.064 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.064 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.064 INFO [stderr] --> src/interpolation.rs:96:24 Nov 28 17:43:15.064 INFO [stderr] | Nov 28 17:43:15.064 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 28 17:43:15.064 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:15.064 INFO [stderr] Nov 28 17:43:15.184 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.184 INFO [stderr] --> src/interpolation.rs:97:75 Nov 28 17:43:15.184 INFO [stderr] | Nov 28 17:43:15.184 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 28 17:43:15.184 INFO [stderr] | ^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.184 INFO [stderr] | Nov 28 17:43:15.184 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.184 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.184 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.184 INFO [stderr] --> src/interpolation.rs:97:75 Nov 28 17:43:15.184 INFO [stderr] | Nov 28 17:43:15.184 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 28 17:43:15.184 INFO [stderr] | ^^^^^^ Nov 28 17:43:15.184 INFO [stderr] Nov 28 17:43:15.252 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.252 INFO [stderr] --> src/interpolation.rs:97:25 Nov 28 17:43:15.252 INFO [stderr] | Nov 28 17:43:15.252 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 28 17:43:15.252 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.252 INFO [stderr] | Nov 28 17:43:15.252 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.252 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.252 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.252 INFO [stderr] --> src/interpolation.rs:97:25 Nov 28 17:43:15.252 INFO [stderr] | Nov 28 17:43:15.252 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 28 17:43:15.252 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:15.252 INFO [stderr] Nov 28 17:43:15.336 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.336 INFO [stderr] --> src/interpolation.rs:98:83 Nov 28 17:43:15.336 INFO [stderr] | Nov 28 17:43:15.336 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 28 17:43:15.337 INFO [stderr] | ^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.337 INFO [stderr] | Nov 28 17:43:15.337 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.337 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.337 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.337 INFO [stderr] --> src/interpolation.rs:98:83 Nov 28 17:43:15.337 INFO [stderr] | Nov 28 17:43:15.337 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 28 17:43:15.337 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 28 17:43:15.337 INFO [stderr] Nov 28 17:43:15.380 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.380 INFO [stderr] --> src/interpolation.rs:98:33 Nov 28 17:43:15.380 INFO [stderr] | Nov 28 17:43:15.380 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 28 17:43:15.381 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.381 INFO [stderr] | Nov 28 17:43:15.381 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.381 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.381 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.381 INFO [stderr] --> src/interpolation.rs:98:33 Nov 28 17:43:15.381 INFO [stderr] | Nov 28 17:43:15.381 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 28 17:43:15.381 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:15.381 INFO [stderr] Nov 28 17:43:15.542 INFO [stderr] error[E0308]: if and else have incompatible types Nov 28 17:43:15.542 INFO [stderr] --> src/parcel.rs:179:19 Nov 28 17:43:15.542 INFO [stderr] | Nov 28 17:43:15.542 INFO [stderr] 179 | let theta_e = if !snd.get_profile(ThetaE).is_empty() { Nov 28 17:43:15.542 INFO [stderr] | ___________________^ Nov 28 17:43:15.542 INFO [stderr] 180 | | snd.get_profile(ThetaE) Nov 28 17:43:15.542 INFO [stderr] 181 | | } else { Nov 28 17:43:15.542 INFO [stderr] 182 | | temp_vec = equivalent_potential_temperature(snd); Nov 28 17:43:15.542 INFO [stderr] 183 | | &temp_vec Nov 28 17:43:15.542 INFO [stderr] 184 | | }; Nov 28 17:43:15.542 INFO [stderr] | |_____^ expected slice, found struct `std::vec::Vec` Nov 28 17:43:15.542 INFO [stderr] | Nov 28 17:43:15.542 INFO [stderr] = note: expected type `&[optional::Optioned]` Nov 28 17:43:15.542 INFO [stderr] found type `&std::vec::Vec>` Nov 28 17:43:15.542 INFO [stderr] Nov 28 17:43:15.619 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.619 INFO [stderr] --> src/interpolation.rs:28:23 Nov 28 17:43:15.619 INFO [stderr] | Nov 28 17:43:15.619 INFO [stderr] 28 | result.pressure = Optioned::from(target_p); Nov 28 17:43:15.619 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.619 INFO [stderr] | Nov 28 17:43:15.619 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.619 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.619 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.619 INFO [stderr] --> src/interpolation.rs:28:23 Nov 28 17:43:15.619 INFO [stderr] | Nov 28 17:43:15.619 INFO [stderr] 28 | result.pressure = Optioned::from(target_p); Nov 28 17:43:15.619 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:15.619 INFO [stderr] Nov 28 17:43:15.697 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.697 INFO [stderr] --> src/interpolation.rs:56:80 Nov 28 17:43:15.697 INFO [stderr] | Nov 28 17:43:15.697 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 28 17:43:15.697 INFO [stderr] | ^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.704 INFO [stderr] | Nov 28 17:43:15.704 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.704 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.704 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.704 INFO [stderr] --> src/interpolation.rs:56:80 Nov 28 17:43:15.704 INFO [stderr] | Nov 28 17:43:15.704 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 28 17:43:15.704 INFO [stderr] | ^^^^^^^^^^^ Nov 28 17:43:15.704 INFO [stderr] Nov 28 17:43:15.705 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 28 17:43:15.705 INFO [stderr] --> src/profile.rs:37:12 Nov 28 17:43:15.705 INFO [stderr] | Nov 28 17:43:15.705 INFO [stderr] 37 | }).collect() Nov 28 17:43:15.705 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 28 17:43:15.705 INFO [stderr] | Nov 28 17:43:15.705 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 28 17:43:15.705 INFO [stderr] Nov 28 17:43:15.717 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 28 17:43:15.717 INFO [stderr] --> src/profile.rs:59:12 Nov 28 17:43:15.717 INFO [stderr] | Nov 28 17:43:15.717 INFO [stderr] 59 | }).collect() Nov 28 17:43:15.717 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 28 17:43:15.717 INFO [stderr] | Nov 28 17:43:15.717 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 28 17:43:15.717 INFO [stderr] Nov 28 17:43:15.717 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 28 17:43:15.717 INFO [stderr] --> src/profile.rs:81:12 Nov 28 17:43:15.717 INFO [stderr] | Nov 28 17:43:15.717 INFO [stderr] 81 | }).collect() Nov 28 17:43:15.717 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 28 17:43:15.717 INFO [stderr] | Nov 28 17:43:15.717 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 28 17:43:15.718 INFO [stderr] Nov 28 17:43:15.719 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 28 17:43:15.719 INFO [stderr] --> src/profile.rs:106:12 Nov 28 17:43:15.719 INFO [stderr] | Nov 28 17:43:15.719 INFO [stderr] 106 | }).collect() Nov 28 17:43:15.719 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 28 17:43:15.719 INFO [stderr] | Nov 28 17:43:15.719 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 28 17:43:15.719 INFO [stderr] Nov 28 17:43:15.720 INFO [stderr] error[E0271]: type mismatch resolving `> as std::iter::Iterator>::Item == &optional::Optioned` Nov 28 17:43:15.720 INFO [stderr] --> src/profile.rs:112:5 Nov 28 17:43:15.720 INFO [stderr] | Nov 28 17:43:15.720 INFO [stderr] 112 | lapse_rate(snd, t_profile) Nov 28 17:43:15.720 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.720 INFO [stderr] | Nov 28 17:43:15.720 INFO [stderr] = note: expected type `&optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.720 INFO [stderr] found type `&optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.720 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.720 INFO [stderr] --> src/profile.rs:112:5 Nov 28 17:43:15.720 INFO [stderr] | Nov 28 17:43:15.720 INFO [stderr] 112 | lapse_rate(snd, t_profile) Nov 28 17:43:15.720 INFO [stderr] | ^^^^^^^^^^ Nov 28 17:43:15.720 INFO [stderr] = note: required because of the requirements on the impl of `std::iter::Iterator` for `std::iter::Cloned>>` Nov 28 17:43:15.720 INFO [stderr] note: required by `profile::lapse_rate` Nov 28 17:43:15.720 INFO [stderr] --> src/profile.rs:151:1 Nov 28 17:43:15.720 INFO [stderr] | Nov 28 17:43:15.720 INFO [stderr] 151 | / fn lapse_rate>>( Nov 28 17:43:15.720 INFO [stderr] 152 | | snd: &Sounding, Nov 28 17:43:15.720 INFO [stderr] 153 | | v_profile: I, Nov 28 17:43:15.720 INFO [stderr] 154 | | ) -> Vec> { Nov 28 17:43:15.720 INFO [stderr] ... | Nov 28 17:43:15.720 INFO [stderr] 176 | | }).collect() Nov 28 17:43:15.720 INFO [stderr] 177 | | } Nov 28 17:43:15.720 INFO [stderr] | |_^ Nov 28 17:43:15.720 INFO [stderr] Nov 28 17:43:15.724 INFO [stderr] error[E0271]: type mismatch resolving `> as std::iter::Iterator>::Item == &optional::Optioned` Nov 28 17:43:15.724 INFO [stderr] --> src/profile.rs:148:5 Nov 28 17:43:15.724 INFO [stderr] | Nov 28 17:43:15.724 INFO [stderr] 148 | lapse_rate(snd, theta_e) Nov 28 17:43:15.724 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.724 INFO [stderr] | Nov 28 17:43:15.724 INFO [stderr] = note: expected type `&optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.724 INFO [stderr] found type `&optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.725 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.725 INFO [stderr] --> src/profile.rs:148:5 Nov 28 17:43:15.725 INFO [stderr] | Nov 28 17:43:15.725 INFO [stderr] 148 | lapse_rate(snd, theta_e) Nov 28 17:43:15.725 INFO [stderr] | ^^^^^^^^^^ Nov 28 17:43:15.725 INFO [stderr] = note: required because of the requirements on the impl of `std::iter::Iterator` for `std::iter::Cloned>>` Nov 28 17:43:15.725 INFO [stderr] note: required by `profile::lapse_rate` Nov 28 17:43:15.725 INFO [stderr] --> src/profile.rs:151:1 Nov 28 17:43:15.725 INFO [stderr] | Nov 28 17:43:15.725 INFO [stderr] 151 | / fn lapse_rate>>( Nov 28 17:43:15.725 INFO [stderr] 152 | | snd: &Sounding, Nov 28 17:43:15.725 INFO [stderr] 153 | | v_profile: I, Nov 28 17:43:15.725 INFO [stderr] 154 | | ) -> Vec> { Nov 28 17:43:15.725 INFO [stderr] ... | Nov 28 17:43:15.725 INFO [stderr] 176 | | }).collect() Nov 28 17:43:15.725 INFO [stderr] 177 | | } Nov 28 17:43:15.725 INFO [stderr] | |_^ Nov 28 17:43:15.725 INFO [stderr] Nov 28 17:43:15.744 INFO [stderr] error: aborting due to 22 previous errors Nov 28 17:43:15.744 INFO [stderr] Nov 28 17:43:15.744 INFO [stderr] Some errors occurred: E0271, E0277, E0308. Nov 28 17:43:15.744 INFO [stderr] For more information about an error, try `rustc --explain E0271`. Nov 28 17:43:15.752 INFO [stderr] error: Could not compile `sounding-analysis`. Nov 28 17:43:15.752 INFO [stderr] warning: build failed, waiting for other jobs to finish... Nov 28 17:43:15.784 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.784 INFO [stderr] --> src/interpolation.rs:56:30 Nov 28 17:43:15.784 INFO [stderr] | Nov 28 17:43:15.784 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 28 17:43:15.784 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.784 INFO [stderr] | Nov 28 17:43:15.784 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.784 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.784 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.784 INFO [stderr] --> src/interpolation.rs:56:30 Nov 28 17:43:15.784 INFO [stderr] | Nov 28 17:43:15.784 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 28 17:43:15.784 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:15.784 INFO [stderr] Nov 28 17:43:15.856 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.856 INFO [stderr] --> src/interpolation.rs:57:77 Nov 28 17:43:15.856 INFO [stderr] | Nov 28 17:43:15.856 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 28 17:43:15.856 INFO [stderr] | ^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.856 INFO [stderr] | Nov 28 17:43:15.856 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.856 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.856 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.856 INFO [stderr] --> src/interpolation.rs:57:77 Nov 28 17:43:15.856 INFO [stderr] | Nov 28 17:43:15.856 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 28 17:43:15.856 INFO [stderr] | ^^^^^^^^ Nov 28 17:43:15.856 INFO [stderr] Nov 28 17:43:15.920 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.920 INFO [stderr] --> src/interpolation.rs:57:27 Nov 28 17:43:15.920 INFO [stderr] | Nov 28 17:43:15.921 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 28 17:43:15.921 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.921 INFO [stderr] | Nov 28 17:43:15.921 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.921 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:15.921 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.921 INFO [stderr] --> src/interpolation.rs:57:27 Nov 28 17:43:15.921 INFO [stderr] | Nov 28 17:43:15.921 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 28 17:43:15.921 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:15.921 INFO [stderr] Nov 28 17:43:15.984 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:15.984 INFO [stderr] --> src/interpolation.rs:58:78 Nov 28 17:43:15.984 INFO [stderr] | Nov 28 17:43:15.985 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 28 17:43:15.985 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:15.985 INFO [stderr] | Nov 28 17:43:15.985 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.985 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:15.985 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:15.985 INFO [stderr] --> src/interpolation.rs:58:78 Nov 28 17:43:15.985 INFO [stderr] | Nov 28 17:43:15.985 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 28 17:43:15.985 INFO [stderr] | ^^^^^^^^^ Nov 28 17:43:15.985 INFO [stderr] Nov 28 17:43:16.052 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.052 INFO [stderr] --> src/interpolation.rs:58:28 Nov 28 17:43:16.052 INFO [stderr] | Nov 28 17:43:16.052 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 28 17:43:16.052 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.052 INFO [stderr] | Nov 28 17:43:16.052 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.052 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.052 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.052 INFO [stderr] --> src/interpolation.rs:58:28 Nov 28 17:43:16.052 INFO [stderr] | Nov 28 17:43:16.052 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 28 17:43:16.052 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:16.052 INFO [stderr] Nov 28 17:43:16.120 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.120 INFO [stderr] --> src/interpolation.rs:59:76 Nov 28 17:43:16.120 INFO [stderr] | Nov 28 17:43:16.120 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 28 17:43:16.120 INFO [stderr] | ^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.120 INFO [stderr] | Nov 28 17:43:16.120 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:16.120 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:16.120 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.120 INFO [stderr] --> src/interpolation.rs:59:76 Nov 28 17:43:16.120 INFO [stderr] | Nov 28 17:43:16.121 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 28 17:43:16.121 INFO [stderr] | ^^^^^^^ Nov 28 17:43:16.121 INFO [stderr] Nov 28 17:43:16.182 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.182 INFO [stderr] --> src/interpolation.rs:59:26 Nov 28 17:43:16.182 INFO [stderr] | Nov 28 17:43:16.182 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 28 17:43:16.182 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.182 INFO [stderr] | Nov 28 17:43:16.182 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.182 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.182 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.182 INFO [stderr] --> src/interpolation.rs:59:26 Nov 28 17:43:16.182 INFO [stderr] | Nov 28 17:43:16.182 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 28 17:43:16.182 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:16.182 INFO [stderr] Nov 28 17:43:16.252 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.252 INFO [stderr] --> src/interpolation.rs:96:74 Nov 28 17:43:16.252 INFO [stderr] | Nov 28 17:43:16.253 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 28 17:43:16.253 INFO [stderr] | ^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.253 INFO [stderr] | Nov 28 17:43:16.253 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:16.253 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:16.253 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.253 INFO [stderr] --> src/interpolation.rs:96:74 Nov 28 17:43:16.253 INFO [stderr] | Nov 28 17:43:16.253 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 28 17:43:16.253 INFO [stderr] | ^^^^^ Nov 28 17:43:16.253 INFO [stderr] Nov 28 17:43:16.313 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.313 INFO [stderr] --> src/interpolation.rs:96:24 Nov 28 17:43:16.313 INFO [stderr] | Nov 28 17:43:16.313 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 28 17:43:16.313 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.313 INFO [stderr] | Nov 28 17:43:16.313 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.313 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.313 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.313 INFO [stderr] --> src/interpolation.rs:96:24 Nov 28 17:43:16.314 INFO [stderr] | Nov 28 17:43:16.314 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 28 17:43:16.314 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:16.314 INFO [stderr] Nov 28 17:43:16.384 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.384 INFO [stderr] --> src/interpolation.rs:97:75 Nov 28 17:43:16.384 INFO [stderr] | Nov 28 17:43:16.384 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 28 17:43:16.384 INFO [stderr] | ^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.384 INFO [stderr] | Nov 28 17:43:16.384 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:16.384 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:16.384 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.384 INFO [stderr] --> src/interpolation.rs:97:75 Nov 28 17:43:16.384 INFO [stderr] | Nov 28 17:43:16.384 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 28 17:43:16.384 INFO [stderr] | ^^^^^^ Nov 28 17:43:16.384 INFO [stderr] Nov 28 17:43:16.455 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.455 INFO [stderr] --> src/interpolation.rs:97:25 Nov 28 17:43:16.455 INFO [stderr] | Nov 28 17:43:16.455 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 28 17:43:16.455 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.455 INFO [stderr] | Nov 28 17:43:16.455 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.455 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.455 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.456 INFO [stderr] --> src/interpolation.rs:97:25 Nov 28 17:43:16.456 INFO [stderr] | Nov 28 17:43:16.456 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 28 17:43:16.456 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:16.456 INFO [stderr] Nov 28 17:43:16.536 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.536 INFO [stderr] --> src/interpolation.rs:98:83 Nov 28 17:43:16.536 INFO [stderr] | Nov 28 17:43:16.536 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 28 17:43:16.536 INFO [stderr] | ^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.536 INFO [stderr] | Nov 28 17:43:16.536 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:16.536 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 28 17:43:16.536 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.536 INFO [stderr] --> src/interpolation.rs:98:83 Nov 28 17:43:16.536 INFO [stderr] | Nov 28 17:43:16.536 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 28 17:43:16.536 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 28 17:43:16.536 INFO [stderr] Nov 28 17:43:16.604 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.604 INFO [stderr] --> src/interpolation.rs:98:33 Nov 28 17:43:16.604 INFO [stderr] | Nov 28 17:43:16.604 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 28 17:43:16.604 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.604 INFO [stderr] | Nov 28 17:43:16.605 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.605 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:16.605 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.605 INFO [stderr] --> src/interpolation.rs:98:33 Nov 28 17:43:16.605 INFO [stderr] | Nov 28 17:43:16.605 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 28 17:43:16.605 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 28 17:43:16.605 INFO [stderr] Nov 28 17:43:16.698 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.698 INFO [stderr] --> src/layers.rs:98:27 Nov 28 17:43:16.698 INFO [stderr] | Nov 28 17:43:16.699 INFO [stderr] 98 | bottom.pressure = some(1000.0); Nov 28 17:43:16.699 INFO [stderr] | ^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.699 INFO [stderr] | Nov 28 17:43:16.699 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:16.699 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:16.699 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.699 INFO [stderr] --> src/layers.rs:98:27 Nov 28 17:43:16.699 INFO [stderr] | Nov 28 17:43:16.699 INFO [stderr] 98 | bottom.pressure = some(1000.0); Nov 28 17:43:16.699 INFO [stderr] | ^^^^^^^^^^^^ Nov 28 17:43:16.699 INFO [stderr] Nov 28 17:43:16.768 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.768 INFO [stderr] --> src/layers.rs:99:30 Nov 28 17:43:16.768 INFO [stderr] | Nov 28 17:43:16.768 INFO [stderr] 99 | bottom.temperature = some(20.0); Nov 28 17:43:16.768 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.768 INFO [stderr] | Nov 28 17:43:16.768 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:16.768 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:16.768 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.769 INFO [stderr] --> src/layers.rs:99:30 Nov 28 17:43:16.769 INFO [stderr] | Nov 28 17:43:16.769 INFO [stderr] 99 | bottom.temperature = some(20.0); Nov 28 17:43:16.769 INFO [stderr] | ^^^^^^^^^^ Nov 28 17:43:16.769 INFO [stderr] Nov 28 17:43:16.855 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.856 INFO [stderr] --> src/layers.rs:100:25 Nov 28 17:43:16.856 INFO [stderr] | Nov 28 17:43:16.856 INFO [stderr] 100 | bottom.height = some(5.0); Nov 28 17:43:16.856 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.856 INFO [stderr] | Nov 28 17:43:16.856 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:16.856 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:16.856 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.856 INFO [stderr] --> src/layers.rs:100:25 Nov 28 17:43:16.856 INFO [stderr] | Nov 28 17:43:16.856 INFO [stderr] 100 | bottom.height = some(5.0); Nov 28 17:43:16.856 INFO [stderr] | ^^^^^^^^^ Nov 28 17:43:16.856 INFO [stderr] Nov 28 17:43:16.927 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.927 INFO [stderr] --> src/layers.rs:101:24 Nov 28 17:43:16.927 INFO [stderr] | Nov 28 17:43:16.927 INFO [stderr] 101 | bottom.speed = some(1.0); Nov 28 17:43:16.927 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.927 INFO [stderr] | Nov 28 17:43:16.927 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:16.927 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:16.927 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.927 INFO [stderr] --> src/layers.rs:101:24 Nov 28 17:43:16.927 INFO [stderr] | Nov 28 17:43:16.927 INFO [stderr] 101 | bottom.speed = some(1.0); Nov 28 17:43:16.927 INFO [stderr] | ^^^^^^^^^ Nov 28 17:43:16.927 INFO [stderr] Nov 28 17:43:16.976 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:16.976 INFO [stderr] --> src/layers.rs:102:28 Nov 28 17:43:16.976 INFO [stderr] | Nov 28 17:43:16.976 INFO [stderr] 102 | bottom.direction = some(180.0); Nov 28 17:43:16.976 INFO [stderr] | ^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:16.976 INFO [stderr] | Nov 28 17:43:16.976 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:16.976 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:16.976 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:16.977 INFO [stderr] --> src/layers.rs:102:28 Nov 28 17:43:16.977 INFO [stderr] | Nov 28 17:43:16.977 INFO [stderr] 102 | bottom.direction = some(180.0); Nov 28 17:43:16.977 INFO [stderr] | ^^^^^^^^^^^ Nov 28 17:43:16.977 INFO [stderr] Nov 28 17:43:17.049 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:17.049 INFO [stderr] --> src/layers.rs:105:24 Nov 28 17:43:17.049 INFO [stderr] | Nov 28 17:43:17.049 INFO [stderr] 105 | top.pressure = some(700.0); Nov 28 17:43:17.049 INFO [stderr] | ^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.049 INFO [stderr] | Nov 28 17:43:17.049 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:17.049 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:17.049 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.049 INFO [stderr] --> src/layers.rs:105:24 Nov 28 17:43:17.050 INFO [stderr] | Nov 28 17:43:17.050 INFO [stderr] 105 | top.pressure = some(700.0); Nov 28 17:43:17.050 INFO [stderr] | ^^^^^^^^^^^ Nov 28 17:43:17.050 INFO [stderr] Nov 28 17:43:17.140 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:17.140 INFO [stderr] --> src/layers.rs:106:27 Nov 28 17:43:17.140 INFO [stderr] | Nov 28 17:43:17.140 INFO [stderr] 106 | top.temperature = some(-2.0); Nov 28 17:43:17.140 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.140 INFO [stderr] | Nov 28 17:43:17.140 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:17.140 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:17.140 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.140 INFO [stderr] --> src/layers.rs:106:27 Nov 28 17:43:17.140 INFO [stderr] | Nov 28 17:43:17.140 INFO [stderr] 106 | top.temperature = some(-2.0); Nov 28 17:43:17.140 INFO [stderr] | ^^^^^^^^^^ Nov 28 17:43:17.140 INFO [stderr] Nov 28 17:43:17.224 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:17.224 INFO [stderr] --> src/layers.rs:107:22 Nov 28 17:43:17.224 INFO [stderr] | Nov 28 17:43:17.224 INFO [stderr] 107 | top.height = some(3012.0); Nov 28 17:43:17.224 INFO [stderr] | ^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.224 INFO [stderr] | Nov 28 17:43:17.224 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:17.224 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:17.224 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.224 INFO [stderr] --> src/layers.rs:107:22 Nov 28 17:43:17.224 INFO [stderr] | Nov 28 17:43:17.224 INFO [stderr] 107 | top.height = some(3012.0); Nov 28 17:43:17.224 INFO [stderr] | ^^^^^^^^^^^^ Nov 28 17:43:17.224 INFO [stderr] Nov 28 17:43:17.259 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:17.259 INFO [stderr] --> src/layers.rs:108:21 Nov 28 17:43:17.259 INFO [stderr] | Nov 28 17:43:17.259 INFO [stderr] 108 | top.speed = some(1.0); Nov 28 17:43:17.259 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.259 INFO [stderr] | Nov 28 17:43:17.259 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:17.259 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:17.259 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.259 INFO [stderr] --> src/layers.rs:108:21 Nov 28 17:43:17.259 INFO [stderr] | Nov 28 17:43:17.259 INFO [stderr] 108 | top.speed = some(1.0); Nov 28 17:43:17.259 INFO [stderr] | ^^^^^^^^^ Nov 28 17:43:17.259 INFO [stderr] Nov 28 17:43:17.331 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:17.331 INFO [stderr] --> src/layers.rs:109:25 Nov 28 17:43:17.331 INFO [stderr] | Nov 28 17:43:17.331 INFO [stderr] 109 | top.direction = some(90.0); Nov 28 17:43:17.331 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.331 INFO [stderr] | Nov 28 17:43:17.331 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:17.331 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:17.331 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.331 INFO [stderr] --> src/layers.rs:109:25 Nov 28 17:43:17.331 INFO [stderr] | Nov 28 17:43:17.331 INFO [stderr] 109 | top.direction = some(90.0); Nov 28 17:43:17.331 INFO [stderr] | ^^^^^^^^^^ Nov 28 17:43:17.331 INFO [stderr] Nov 28 17:43:17.437 INFO [stderr] error[E0308]: if and else have incompatible types Nov 28 17:43:17.437 INFO [stderr] --> src/parcel.rs:179:19 Nov 28 17:43:17.438 INFO [stderr] | Nov 28 17:43:17.438 INFO [stderr] 179 | let theta_e = if !snd.get_profile(ThetaE).is_empty() { Nov 28 17:43:17.438 INFO [stderr] | ___________________^ Nov 28 17:43:17.438 INFO [stderr] 180 | | snd.get_profile(ThetaE) Nov 28 17:43:17.438 INFO [stderr] 181 | | } else { Nov 28 17:43:17.438 INFO [stderr] 182 | | temp_vec = equivalent_potential_temperature(snd); Nov 28 17:43:17.438 INFO [stderr] 183 | | &temp_vec Nov 28 17:43:17.438 INFO [stderr] 184 | | }; Nov 28 17:43:17.438 INFO [stderr] | |_____^ expected slice, found struct `std::vec::Vec` Nov 28 17:43:17.438 INFO [stderr] | Nov 28 17:43:17.438 INFO [stderr] = note: expected type `&[optional::Optioned]` Nov 28 17:43:17.438 INFO [stderr] found type `&std::vec::Vec>` Nov 28 17:43:17.438 INFO [stderr] Nov 28 17:43:17.584 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 28 17:43:17.584 INFO [stderr] --> src/profile.rs:37:12 Nov 28 17:43:17.584 INFO [stderr] | Nov 28 17:43:17.584 INFO [stderr] 37 | }).collect() Nov 28 17:43:17.584 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 28 17:43:17.584 INFO [stderr] | Nov 28 17:43:17.584 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 28 17:43:17.584 INFO [stderr] Nov 28 17:43:17.587 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 28 17:43:17.587 INFO [stderr] --> src/profile.rs:59:12 Nov 28 17:43:17.587 INFO [stderr] | Nov 28 17:43:17.587 INFO [stderr] 59 | }).collect() Nov 28 17:43:17.587 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 28 17:43:17.587 INFO [stderr] | Nov 28 17:43:17.587 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 28 17:43:17.587 INFO [stderr] Nov 28 17:43:17.589 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 28 17:43:17.589 INFO [stderr] --> src/profile.rs:81:12 Nov 28 17:43:17.589 INFO [stderr] | Nov 28 17:43:17.589 INFO [stderr] 81 | }).collect() Nov 28 17:43:17.589 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 28 17:43:17.589 INFO [stderr] | Nov 28 17:43:17.589 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 28 17:43:17.589 INFO [stderr] Nov 28 17:43:17.593 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 28 17:43:17.593 INFO [stderr] --> src/profile.rs:106:12 Nov 28 17:43:17.593 INFO [stderr] | Nov 28 17:43:17.593 INFO [stderr] 106 | }).collect() Nov 28 17:43:17.593 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 28 17:43:17.593 INFO [stderr] | Nov 28 17:43:17.593 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 28 17:43:17.593 INFO [stderr] Nov 28 17:43:17.594 INFO [stderr] error[E0271]: type mismatch resolving `> as std::iter::Iterator>::Item == &optional::Optioned` Nov 28 17:43:17.594 INFO [stderr] --> src/profile.rs:112:5 Nov 28 17:43:17.594 INFO [stderr] | Nov 28 17:43:17.594 INFO [stderr] 112 | lapse_rate(snd, t_profile) Nov 28 17:43:17.594 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.594 INFO [stderr] | Nov 28 17:43:17.594 INFO [stderr] = note: expected type `&optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:17.594 INFO [stderr] found type `&optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:17.594 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.594 INFO [stderr] --> src/profile.rs:112:5 Nov 28 17:43:17.594 INFO [stderr] | Nov 28 17:43:17.594 INFO [stderr] 112 | lapse_rate(snd, t_profile) Nov 28 17:43:17.594 INFO [stderr] | ^^^^^^^^^^ Nov 28 17:43:17.594 INFO [stderr] = note: required because of the requirements on the impl of `std::iter::Iterator` for `std::iter::Cloned>>` Nov 28 17:43:17.594 INFO [stderr] note: required by `profile::lapse_rate` Nov 28 17:43:17.594 INFO [stderr] --> src/profile.rs:151:1 Nov 28 17:43:17.594 INFO [stderr] | Nov 28 17:43:17.594 INFO [stderr] 151 | / fn lapse_rate>>( Nov 28 17:43:17.594 INFO [stderr] 152 | | snd: &Sounding, Nov 28 17:43:17.594 INFO [stderr] 153 | | v_profile: I, Nov 28 17:43:17.594 INFO [stderr] 154 | | ) -> Vec> { Nov 28 17:43:17.594 INFO [stderr] ... | Nov 28 17:43:17.594 INFO [stderr] 176 | | }).collect() Nov 28 17:43:17.594 INFO [stderr] 177 | | } Nov 28 17:43:17.594 INFO [stderr] | |_^ Nov 28 17:43:17.594 INFO [stderr] Nov 28 17:43:17.599 INFO [stderr] error[E0271]: type mismatch resolving `> as std::iter::Iterator>::Item == &optional::Optioned` Nov 28 17:43:17.599 INFO [stderr] --> src/profile.rs:148:5 Nov 28 17:43:17.599 INFO [stderr] | Nov 28 17:43:17.599 INFO [stderr] 148 | lapse_rate(snd, theta_e) Nov 28 17:43:17.599 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.599 INFO [stderr] | Nov 28 17:43:17.599 INFO [stderr] = note: expected type `&optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:17.599 INFO [stderr] found type `&optional::Optioned` (struct `optional::Optioned`) Nov 28 17:43:17.599 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.599 INFO [stderr] --> src/profile.rs:148:5 Nov 28 17:43:17.599 INFO [stderr] | Nov 28 17:43:17.599 INFO [stderr] 148 | lapse_rate(snd, theta_e) Nov 28 17:43:17.599 INFO [stderr] | ^^^^^^^^^^ Nov 28 17:43:17.599 INFO [stderr] = note: required because of the requirements on the impl of `std::iter::Iterator` for `std::iter::Cloned>>` Nov 28 17:43:17.604 INFO [stderr] note: required by `profile::lapse_rate` Nov 28 17:43:17.604 INFO [stderr] --> src/profile.rs:151:1 Nov 28 17:43:17.604 INFO [stderr] | Nov 28 17:43:17.604 INFO [stderr] 151 | / fn lapse_rate>>( Nov 28 17:43:17.604 INFO [stderr] 152 | | snd: &Sounding, Nov 28 17:43:17.604 INFO [stderr] 153 | | v_profile: I, Nov 28 17:43:17.604 INFO [stderr] 154 | | ) -> Vec> { Nov 28 17:43:17.604 INFO [stderr] ... | Nov 28 17:43:17.604 INFO [stderr] 176 | | }).collect() Nov 28 17:43:17.604 INFO [stderr] 177 | | } Nov 28 17:43:17.604 INFO [stderr] | |_^ Nov 28 17:43:17.604 INFO [stderr] Nov 28 17:43:17.612 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:17.612 INFO [stderr] --> src/profile.rs:219:44 Nov 28 17:43:17.613 INFO [stderr] | Nov 28 17:43:17.613 INFO [stderr] 219 | .set_profile(Temperature, vec![some(9.8), some(0.0), some(-5.0)]) Nov 28 17:43:17.613 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.613 INFO [stderr] | Nov 28 17:43:17.613 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:17.613 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:17.613 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.613 INFO [stderr] --> src/profile.rs:219:44 Nov 28 17:43:17.613 INFO [stderr] | Nov 28 17:43:17.613 INFO [stderr] 219 | .set_profile(Temperature, vec![some(9.8), some(0.0), some(-5.0)]) Nov 28 17:43:17.613 INFO [stderr] | ^^^^^^^^^ Nov 28 17:43:17.613 INFO [stderr] Nov 28 17:43:17.613 INFO [stderr] error[E0308]: mismatched types Nov 28 17:43:17.613 INFO [stderr] --> src/profile.rs:222:22 Nov 28 17:43:17.613 INFO [stderr] | Nov 28 17:43:17.613 INFO [stderr] 222 | vec![some(1000.0), some(2000.0), some(3000.0)], Nov 28 17:43:17.613 INFO [stderr] | ^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 28 17:43:17.614 INFO [stderr] | Nov 28 17:43:17.614 INFO [stderr] = note: expected type `optional::Optioned` Nov 28 17:43:17.614 INFO [stderr] found type `optional::Optioned<{float}>` Nov 28 17:43:17.614 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 28 17:43:17.614 INFO [stderr] --> src/profile.rs:222:22 Nov 28 17:43:17.614 INFO [stderr] | Nov 28 17:43:17.614 INFO [stderr] 222 | vec![some(1000.0), some(2000.0), some(3000.0)], Nov 28 17:43:17.614 INFO [stderr] | ^^^^^^^^^^^^ Nov 28 17:43:17.614 INFO [stderr] Nov 28 17:43:17.620 INFO [stderr] error: aborting due to 34 previous errors Nov 28 17:43:17.621 INFO [stderr] Nov 28 17:43:17.621 INFO [stderr] Some errors occurred: E0271, E0277, E0308. Nov 28 17:43:17.621 INFO [stderr] For more information about an error, try `rustc --explain E0271`. Nov 28 17:43:17.632 INFO [stderr] error: Could not compile `sounding-analysis`. Nov 28 17:43:17.632 INFO [stderr] Nov 28 17:43:17.632 INFO [stderr] To learn more, run the command again with --verbose. Nov 28 17:43:17.634 INFO [stderr] su: No module specific data is present Nov 28 17:43:17.931 INFO running `"docker" "inspect" "5d08e24d043270dbb2b23e040e7e802680a733a94fc15ae0173f6877be85ac50"` Nov 28 17:43:18.001 INFO running `"docker" "rm" "-f" "5d08e24d043270dbb2b23e040e7e802680a733a94fc15ae0173f6877be85ac50"` Nov 28 17:43:18.124 INFO [stdout] 5d08e24d043270dbb2b23e040e7e802680a733a94fc15ae0173f6877be85ac50