Nov 30 15:12:08.994 INFO checking sounding-analysis-0.9.2 against try#32252761328f59ccfadb1bafb8148c685bc830b3 for pr-56323 Nov 30 15:12:08.994 INFO running `"docker" "create" "-v" "/mnt/big/crater/work/local/target-dirs/pr-56323/worker-6/try#32252761328f59ccfadb1bafb8148c685bc830b3:/target:rw,Z" "-v" "/mnt/big/crater/work/local/test-source/worker-6/pr-56323/try#32252761328f59ccfadb1bafb8148c685bc830b3:/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 +32252761328f59ccfadb1bafb8148c685bc830b3-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 30 15:12:09.484 INFO [stdout] e215330ab0e45d623c3043258017a8e2fa6a78a06329392f2562899a463c5c80 Nov 30 15:12:09.490 INFO running `"docker" "start" "-a" "e215330ab0e45d623c3043258017a8e2fa6a78a06329392f2562899a463c5c80"` Nov 30 15:12:10.413 INFO [stderr] usermod: no changes Nov 30 15:12:10.544 INFO [stderr] Checking metfor v0.4.0 Nov 30 15:12:10.544 INFO [stderr] Checking optional v0.5.0 Nov 30 15:12:10.544 INFO [stderr] Checking optional v0.4.3 Nov 30 15:12:11.555 INFO [stderr] Checking sounding-base v0.8.1 Nov 30 15:12:12.213 INFO [stderr] Checking sounding-analysis v0.9.2 (/source) Nov 30 15:12:12.213 INFO [stderr] Checking sounding-validate v0.8.1 Nov 30 15:12:13.527 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:13.527 INFO [stderr] --> src/interpolation.rs:28:23 Nov 30 15:12:13.527 INFO [stderr] | Nov 30 15:12:13.527 INFO [stderr] 28 | result.pressure = Optioned::from(target_p); Nov 30 15:12:13.527 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:13.527 INFO [stderr] | Nov 30 15:12:13.527 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:13.527 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:13.527 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:13.527 INFO [stderr] --> src/interpolation.rs:28:23 Nov 30 15:12:13.527 INFO [stderr] | Nov 30 15:12:13.527 INFO [stderr] 28 | result.pressure = Optioned::from(target_p); Nov 30 15:12:13.527 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:13.527 INFO [stderr] Nov 30 15:12:13.608 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:13.608 INFO [stderr] --> src/interpolation.rs:56:80 Nov 30 15:12:13.608 INFO [stderr] | Nov 30 15:12:13.608 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 30 15:12:13.608 INFO [stderr] | ^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:13.608 INFO [stderr] | Nov 30 15:12:13.608 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:13.608 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:13.608 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:13.608 INFO [stderr] --> src/interpolation.rs:56:80 Nov 30 15:12:13.608 INFO [stderr] | Nov 30 15:12:13.608 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 30 15:12:13.608 INFO [stderr] | ^^^^^^^^^^^ Nov 30 15:12:13.608 INFO [stderr] Nov 30 15:12:13.671 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:13.671 INFO [stderr] --> src/interpolation.rs:56:30 Nov 30 15:12:13.671 INFO [stderr] | Nov 30 15:12:13.671 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 30 15:12:13.671 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:13.671 INFO [stderr] | Nov 30 15:12:13.671 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:13.671 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:13.671 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:13.671 INFO [stderr] --> src/interpolation.rs:56:30 Nov 30 15:12:13.671 INFO [stderr] | Nov 30 15:12:13.671 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 30 15:12:13.671 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:13.671 INFO [stderr] Nov 30 15:12:13.717 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:13.717 INFO [stderr] --> src/interpolation.rs:57:77 Nov 30 15:12:13.717 INFO [stderr] | Nov 30 15:12:13.717 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 30 15:12:13.717 INFO [stderr] | ^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:13.717 INFO [stderr] | Nov 30 15:12:13.717 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:13.717 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:13.717 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:13.717 INFO [stderr] --> src/interpolation.rs:57:77 Nov 30 15:12:13.717 INFO [stderr] | Nov 30 15:12:13.717 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 30 15:12:13.717 INFO [stderr] | ^^^^^^^^ Nov 30 15:12:13.717 INFO [stderr] Nov 30 15:12:13.780 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:13.780 INFO [stderr] --> src/interpolation.rs:57:27 Nov 30 15:12:13.780 INFO [stderr] | Nov 30 15:12:13.780 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 30 15:12:13.780 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:13.780 INFO [stderr] | Nov 30 15:12:13.780 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:13.780 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:13.780 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:13.780 INFO [stderr] --> src/interpolation.rs:57:27 Nov 30 15:12:13.780 INFO [stderr] | Nov 30 15:12:13.780 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 30 15:12:13.780 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:13.780 INFO [stderr] Nov 30 15:12:13.851 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:13.851 INFO [stderr] --> src/interpolation.rs:58:78 Nov 30 15:12:13.851 INFO [stderr] | Nov 30 15:12:13.851 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 30 15:12:13.851 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:13.851 INFO [stderr] | Nov 30 15:12:13.851 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:13.851 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:13.851 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:13.851 INFO [stderr] --> src/interpolation.rs:58:78 Nov 30 15:12:13.851 INFO [stderr] | Nov 30 15:12:13.851 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 30 15:12:13.851 INFO [stderr] | ^^^^^^^^^ Nov 30 15:12:13.851 INFO [stderr] Nov 30 15:12:13.914 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:13.914 INFO [stderr] --> src/interpolation.rs:58:28 Nov 30 15:12:13.914 INFO [stderr] | Nov 30 15:12:13.914 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 30 15:12:13.914 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:13.914 INFO [stderr] | Nov 30 15:12:13.914 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:13.914 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:13.914 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:13.914 INFO [stderr] --> src/interpolation.rs:58:28 Nov 30 15:12:13.914 INFO [stderr] | Nov 30 15:12:13.914 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 30 15:12:13.914 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:13.914 INFO [stderr] Nov 30 15:12:13.989 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:13.989 INFO [stderr] --> src/interpolation.rs:59:76 Nov 30 15:12:13.989 INFO [stderr] | Nov 30 15:12:13.989 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 30 15:12:13.989 INFO [stderr] | ^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:13.989 INFO [stderr] | Nov 30 15:12:13.989 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:13.989 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:13.989 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:13.989 INFO [stderr] --> src/interpolation.rs:59:76 Nov 30 15:12:13.989 INFO [stderr] | Nov 30 15:12:13.989 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 30 15:12:13.989 INFO [stderr] | ^^^^^^^ Nov 30 15:12:13.989 INFO [stderr] Nov 30 15:12:14.044 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.044 INFO [stderr] --> src/interpolation.rs:59:26 Nov 30 15:12:14.044 INFO [stderr] | Nov 30 15:12:14.044 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 30 15:12:14.044 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.044 INFO [stderr] | Nov 30 15:12:14.044 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.044 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.044 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.044 INFO [stderr] --> src/interpolation.rs:59:26 Nov 30 15:12:14.044 INFO [stderr] | Nov 30 15:12:14.044 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 30 15:12:14.044 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:14.044 INFO [stderr] Nov 30 15:12:14.112 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.112 INFO [stderr] --> src/interpolation.rs:96:74 Nov 30 15:12:14.112 INFO [stderr] | Nov 30 15:12:14.112 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 30 15:12:14.112 INFO [stderr] | ^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.112 INFO [stderr] | Nov 30 15:12:14.112 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.112 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.112 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.112 INFO [stderr] --> src/interpolation.rs:96:74 Nov 30 15:12:14.112 INFO [stderr] | Nov 30 15:12:14.112 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 30 15:12:14.112 INFO [stderr] | ^^^^^ Nov 30 15:12:14.112 INFO [stderr] Nov 30 15:12:14.184 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.184 INFO [stderr] --> src/interpolation.rs:96:24 Nov 30 15:12:14.184 INFO [stderr] | Nov 30 15:12:14.184 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 30 15:12:14.184 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.184 INFO [stderr] | Nov 30 15:12:14.184 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.184 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.184 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.184 INFO [stderr] --> src/interpolation.rs:96:24 Nov 30 15:12:14.184 INFO [stderr] | Nov 30 15:12:14.184 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 30 15:12:14.184 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:14.184 INFO [stderr] Nov 30 15:12:14.248 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.248 INFO [stderr] --> src/interpolation.rs:97:75 Nov 30 15:12:14.248 INFO [stderr] | Nov 30 15:12:14.248 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 30 15:12:14.248 INFO [stderr] | ^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.248 INFO [stderr] | Nov 30 15:12:14.248 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.248 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.248 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.248 INFO [stderr] --> src/interpolation.rs:97:75 Nov 30 15:12:14.248 INFO [stderr] | Nov 30 15:12:14.248 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 30 15:12:14.248 INFO [stderr] | ^^^^^^ Nov 30 15:12:14.248 INFO [stderr] Nov 30 15:12:14.323 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.323 INFO [stderr] --> src/interpolation.rs:97:25 Nov 30 15:12:14.323 INFO [stderr] | Nov 30 15:12:14.323 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 30 15:12:14.323 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.324 INFO [stderr] | Nov 30 15:12:14.324 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.324 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.324 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.324 INFO [stderr] --> src/interpolation.rs:97:25 Nov 30 15:12:14.324 INFO [stderr] | Nov 30 15:12:14.324 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 30 15:12:14.324 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:14.324 INFO [stderr] Nov 30 15:12:14.399 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.399 INFO [stderr] --> src/interpolation.rs:98:83 Nov 30 15:12:14.399 INFO [stderr] | Nov 30 15:12:14.399 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 30 15:12:14.399 INFO [stderr] | ^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.399 INFO [stderr] | Nov 30 15:12:14.399 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.399 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.399 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.399 INFO [stderr] --> src/interpolation.rs:98:83 Nov 30 15:12:14.399 INFO [stderr] | Nov 30 15:12:14.399 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 30 15:12:14.399 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 30 15:12:14.399 INFO [stderr] Nov 30 15:12:14.432 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.432 INFO [stderr] --> src/interpolation.rs:28:23 Nov 30 15:12:14.432 INFO [stderr] | Nov 30 15:12:14.432 INFO [stderr] 28 | result.pressure = Optioned::from(target_p); Nov 30 15:12:14.432 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.432 INFO [stderr] | Nov 30 15:12:14.432 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.432 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.432 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.432 INFO [stderr] --> src/interpolation.rs:28:23 Nov 30 15:12:14.432 INFO [stderr] | Nov 30 15:12:14.432 INFO [stderr] 28 | result.pressure = Optioned::from(target_p); Nov 30 15:12:14.432 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:14.432 INFO [stderr] Nov 30 15:12:14.456 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.456 INFO [stderr] --> src/interpolation.rs:98:33 Nov 30 15:12:14.456 INFO [stderr] | Nov 30 15:12:14.456 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 30 15:12:14.456 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.456 INFO [stderr] | Nov 30 15:12:14.456 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.456 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.456 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.456 INFO [stderr] --> src/interpolation.rs:98:33 Nov 30 15:12:14.456 INFO [stderr] | Nov 30 15:12:14.456 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 30 15:12:14.456 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:14.456 INFO [stderr] Nov 30 15:12:14.512 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.512 INFO [stderr] --> src/interpolation.rs:56:80 Nov 30 15:12:14.512 INFO [stderr] | Nov 30 15:12:14.512 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 30 15:12:14.512 INFO [stderr] | ^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.512 INFO [stderr] | Nov 30 15:12:14.512 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.512 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.512 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.512 INFO [stderr] --> src/interpolation.rs:56:80 Nov 30 15:12:14.512 INFO [stderr] | Nov 30 15:12:14.512 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 30 15:12:14.512 INFO [stderr] | ^^^^^^^^^^^ Nov 30 15:12:14.512 INFO [stderr] Nov 30 15:12:14.577 INFO [stderr] error[E0308]: if and else have incompatible types Nov 30 15:12:14.577 INFO [stderr] --> src/parcel.rs:179:19 Nov 30 15:12:14.577 INFO [stderr] | Nov 30 15:12:14.577 INFO [stderr] 179 | let theta_e = if !snd.get_profile(ThetaE).is_empty() { Nov 30 15:12:14.577 INFO [stderr] | ___________________^ Nov 30 15:12:14.577 INFO [stderr] 180 | | snd.get_profile(ThetaE) Nov 30 15:12:14.577 INFO [stderr] 181 | | } else { Nov 30 15:12:14.577 INFO [stderr] 182 | | temp_vec = equivalent_potential_temperature(snd); Nov 30 15:12:14.577 INFO [stderr] 183 | | &temp_vec Nov 30 15:12:14.577 INFO [stderr] 184 | | }; Nov 30 15:12:14.577 INFO [stderr] | |_____^ expected slice, found struct `std::vec::Vec` Nov 30 15:12:14.577 INFO [stderr] | Nov 30 15:12:14.577 INFO [stderr] = note: expected type `&[optional::Optioned]` Nov 30 15:12:14.577 INFO [stderr] found type `&std::vec::Vec>` Nov 30 15:12:14.577 INFO [stderr] Nov 30 15:12:14.600 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.600 INFO [stderr] --> src/interpolation.rs:56:30 Nov 30 15:12:14.600 INFO [stderr] | Nov 30 15:12:14.600 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 30 15:12:14.600 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.600 INFO [stderr] | Nov 30 15:12:14.600 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.600 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.600 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.600 INFO [stderr] --> src/interpolation.rs:56:30 Nov 30 15:12:14.600 INFO [stderr] | Nov 30 15:12:14.600 INFO [stderr] 56 | result.temperature = eval_linear_interp(below_idx, above_idx, run, dp, temperature); Nov 30 15:12:14.600 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:14.600 INFO [stderr] Nov 30 15:12:14.668 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.668 INFO [stderr] --> src/interpolation.rs:57:77 Nov 30 15:12:14.668 INFO [stderr] | Nov 30 15:12:14.668 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 30 15:12:14.668 INFO [stderr] | ^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.668 INFO [stderr] | Nov 30 15:12:14.668 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.668 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.668 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.668 INFO [stderr] --> src/interpolation.rs:57:77 Nov 30 15:12:14.668 INFO [stderr] | Nov 30 15:12:14.668 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 30 15:12:14.668 INFO [stderr] | ^^^^^^^^ Nov 30 15:12:14.668 INFO [stderr] Nov 30 15:12:14.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 30 15:12:14.719 INFO [stderr] --> src/profile.rs:37:12 Nov 30 15:12:14.719 INFO [stderr] | Nov 30 15:12:14.719 INFO [stderr] 37 | }).collect() Nov 30 15:12:14.719 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 30 15:12:14.719 INFO [stderr] | Nov 30 15:12:14.719 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 30 15:12:14.719 INFO [stderr] Nov 30 15:12:14.723 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 30 15:12:14.723 INFO [stderr] --> src/profile.rs:59:12 Nov 30 15:12:14.723 INFO [stderr] | Nov 30 15:12:14.723 INFO [stderr] 59 | }).collect() Nov 30 15:12:14.723 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 30 15:12:14.723 INFO [stderr] | Nov 30 15:12:14.723 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 30 15:12:14.723 INFO [stderr] Nov 30 15:12:14.726 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 30 15:12:14.726 INFO [stderr] --> src/profile.rs:81:12 Nov 30 15:12:14.726 INFO [stderr] | Nov 30 15:12:14.726 INFO [stderr] 81 | }).collect() Nov 30 15:12:14.726 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 30 15:12:14.727 INFO [stderr] | Nov 30 15:12:14.727 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 30 15:12:14.727 INFO [stderr] Nov 30 15:12:14.732 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 30 15:12:14.732 INFO [stderr] --> src/profile.rs:106:12 Nov 30 15:12:14.732 INFO [stderr] | Nov 30 15:12:14.732 INFO [stderr] 106 | }).collect() Nov 30 15:12:14.732 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 30 15:12:14.732 INFO [stderr] | Nov 30 15:12:14.732 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 30 15:12:14.732 INFO [stderr] Nov 30 15:12:14.732 INFO [stderr] error[E0271]: type mismatch resolving `> as std::iter::Iterator>::Item == &optional::Optioned` Nov 30 15:12:14.732 INFO [stderr] --> src/profile.rs:112:5 Nov 30 15:12:14.732 INFO [stderr] | Nov 30 15:12:14.732 INFO [stderr] 112 | lapse_rate(snd, t_profile) Nov 30 15:12:14.732 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.732 INFO [stderr] | Nov 30 15:12:14.732 INFO [stderr] = note: expected type `&optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.732 INFO [stderr] found type `&optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.732 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.732 INFO [stderr] --> src/profile.rs:112:5 Nov 30 15:12:14.732 INFO [stderr] | Nov 30 15:12:14.732 INFO [stderr] 112 | lapse_rate(snd, t_profile) Nov 30 15:12:14.732 INFO [stderr] | ^^^^^^^^^^ Nov 30 15:12:14.732 INFO [stderr] = note: required because of the requirements on the impl of `std::iter::Iterator` for `std::iter::Cloned>>` Nov 30 15:12:14.732 INFO [stderr] note: required by `profile::lapse_rate` Nov 30 15:12:14.732 INFO [stderr] --> src/profile.rs:151:1 Nov 30 15:12:14.732 INFO [stderr] | Nov 30 15:12:14.732 INFO [stderr] 151 | / fn lapse_rate>>( Nov 30 15:12:14.732 INFO [stderr] 152 | | snd: &Sounding, Nov 30 15:12:14.732 INFO [stderr] 153 | | v_profile: I, Nov 30 15:12:14.732 INFO [stderr] 154 | | ) -> Vec> { Nov 30 15:12:14.732 INFO [stderr] ... | Nov 30 15:12:14.732 INFO [stderr] 176 | | }).collect() Nov 30 15:12:14.732 INFO [stderr] 177 | | } Nov 30 15:12:14.732 INFO [stderr] | |_^ Nov 30 15:12:14.732 INFO [stderr] Nov 30 15:12:14.732 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.732 INFO [stderr] --> src/interpolation.rs:57:27 Nov 30 15:12:14.732 INFO [stderr] | Nov 30 15:12:14.733 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 30 15:12:14.733 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.733 INFO [stderr] | Nov 30 15:12:14.733 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.733 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.743 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.743 INFO [stderr] --> src/interpolation.rs:57:27 Nov 30 15:12:14.743 INFO [stderr] | Nov 30 15:12:14.743 INFO [stderr] 57 | result.wet_bulb = eval_linear_interp(below_idx, above_idx, run, dp, wet_bulb); Nov 30 15:12:14.743 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:14.743 INFO [stderr] Nov 30 15:12:14.743 INFO [stderr] error[E0271]: type mismatch resolving `> as std::iter::Iterator>::Item == &optional::Optioned` Nov 30 15:12:14.743 INFO [stderr] --> src/profile.rs:148:5 Nov 30 15:12:14.743 INFO [stderr] | Nov 30 15:12:14.743 INFO [stderr] 148 | lapse_rate(snd, theta_e) Nov 30 15:12:14.743 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.743 INFO [stderr] | Nov 30 15:12:14.743 INFO [stderr] = note: expected type `&optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.743 INFO [stderr] found type `&optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.743 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.743 INFO [stderr] --> src/profile.rs:148:5 Nov 30 15:12:14.743 INFO [stderr] | Nov 30 15:12:14.743 INFO [stderr] 148 | lapse_rate(snd, theta_e) Nov 30 15:12:14.743 INFO [stderr] | ^^^^^^^^^^ Nov 30 15:12:14.743 INFO [stderr] = note: required because of the requirements on the impl of `std::iter::Iterator` for `std::iter::Cloned>>` Nov 30 15:12:14.743 INFO [stderr] note: required by `profile::lapse_rate` Nov 30 15:12:14.743 INFO [stderr] --> src/profile.rs:151:1 Nov 30 15:12:14.743 INFO [stderr] | Nov 30 15:12:14.743 INFO [stderr] 151 | / fn lapse_rate>>( Nov 30 15:12:14.743 INFO [stderr] 152 | | snd: &Sounding, Nov 30 15:12:14.743 INFO [stderr] 153 | | v_profile: I, Nov 30 15:12:14.743 INFO [stderr] 154 | | ) -> Vec> { Nov 30 15:12:14.743 INFO [stderr] ... | Nov 30 15:12:14.743 INFO [stderr] 176 | | }).collect() Nov 30 15:12:14.743 INFO [stderr] 177 | | } Nov 30 15:12:14.743 INFO [stderr] | |_^ Nov 30 15:12:14.743 INFO [stderr] Nov 30 15:12:14.756 INFO [stderr] error: aborting due to 22 previous errors Nov 30 15:12:14.756 INFO [stderr] Nov 30 15:12:14.756 INFO [stderr] Some errors occurred: E0271, E0277, E0308. Nov 30 15:12:14.756 INFO [stderr] For more information about an error, try `rustc --explain E0271`. Nov 30 15:12:14.765 INFO [stderr] error: Could not compile `sounding-analysis`. Nov 30 15:12:14.766 INFO [stderr] warning: build failed, waiting for other jobs to finish... Nov 30 15:12:14.805 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.805 INFO [stderr] --> src/interpolation.rs:58:78 Nov 30 15:12:14.805 INFO [stderr] | Nov 30 15:12:14.805 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 30 15:12:14.805 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.805 INFO [stderr] | Nov 30 15:12:14.805 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.806 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.806 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.806 INFO [stderr] --> src/interpolation.rs:58:78 Nov 30 15:12:14.806 INFO [stderr] | Nov 30 15:12:14.806 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 30 15:12:14.806 INFO [stderr] | ^^^^^^^^^ Nov 30 15:12:14.806 INFO [stderr] Nov 30 15:12:14.876 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.876 INFO [stderr] --> src/interpolation.rs:58:28 Nov 30 15:12:14.876 INFO [stderr] | Nov 30 15:12:14.876 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 30 15:12:14.876 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.876 INFO [stderr] | Nov 30 15:12:14.876 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.876 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:14.876 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.876 INFO [stderr] --> src/interpolation.rs:58:28 Nov 30 15:12:14.876 INFO [stderr] | Nov 30 15:12:14.876 INFO [stderr] 58 | result.dew_point = eval_linear_interp(below_idx, above_idx, run, dp, dew_point); Nov 30 15:12:14.876 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:14.876 INFO [stderr] Nov 30 15:12:14.944 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:14.944 INFO [stderr] --> src/interpolation.rs:59:76 Nov 30 15:12:14.944 INFO [stderr] | Nov 30 15:12:14.944 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 30 15:12:14.944 INFO [stderr] | ^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:14.944 INFO [stderr] | Nov 30 15:12:14.944 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.944 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:14.944 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:14.944 INFO [stderr] --> src/interpolation.rs:59:76 Nov 30 15:12:14.944 INFO [stderr] | Nov 30 15:12:14.944 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 30 15:12:14.944 INFO [stderr] | ^^^^^^^ Nov 30 15:12:14.944 INFO [stderr] Nov 30 15:12:15.004 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.005 INFO [stderr] --> src/interpolation.rs:59:26 Nov 30 15:12:15.005 INFO [stderr] | Nov 30 15:12:15.005 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 30 15:12:15.005 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.005 INFO [stderr] | Nov 30 15:12:15.005 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:15.005 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:15.005 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.005 INFO [stderr] --> src/interpolation.rs:59:26 Nov 30 15:12:15.005 INFO [stderr] | Nov 30 15:12:15.005 INFO [stderr] 59 | result.theta_e = eval_linear_interp(below_idx, above_idx, run, dp, theta_e); Nov 30 15:12:15.005 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:15.005 INFO [stderr] Nov 30 15:12:15.078 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.078 INFO [stderr] --> src/interpolation.rs:96:74 Nov 30 15:12:15.078 INFO [stderr] | Nov 30 15:12:15.078 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 30 15:12:15.078 INFO [stderr] | ^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.078 INFO [stderr] | Nov 30 15:12:15.078 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:15.078 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:15.078 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.078 INFO [stderr] --> src/interpolation.rs:96:74 Nov 30 15:12:15.078 INFO [stderr] | Nov 30 15:12:15.078 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 30 15:12:15.078 INFO [stderr] | ^^^^^ Nov 30 15:12:15.078 INFO [stderr] Nov 30 15:12:15.144 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.144 INFO [stderr] --> src/interpolation.rs:96:24 Nov 30 15:12:15.144 INFO [stderr] | Nov 30 15:12:15.144 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 30 15:12:15.144 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.144 INFO [stderr] | Nov 30 15:12:15.144 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:15.144 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:15.144 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.144 INFO [stderr] --> src/interpolation.rs:96:24 Nov 30 15:12:15.144 INFO [stderr] | Nov 30 15:12:15.144 INFO [stderr] 96 | result.omega = eval_linear_interp(below_idx, above_idx, run, dp, omega); Nov 30 15:12:15.144 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:15.144 INFO [stderr] Nov 30 15:12:15.208 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.208 INFO [stderr] --> src/interpolation.rs:97:75 Nov 30 15:12:15.208 INFO [stderr] | Nov 30 15:12:15.208 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 30 15:12:15.208 INFO [stderr] | ^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.208 INFO [stderr] | Nov 30 15:12:15.208 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:15.208 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:15.208 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.208 INFO [stderr] --> src/interpolation.rs:97:75 Nov 30 15:12:15.208 INFO [stderr] | Nov 30 15:12:15.208 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 30 15:12:15.208 INFO [stderr] | ^^^^^^ Nov 30 15:12:15.208 INFO [stderr] Nov 30 15:12:15.272 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.272 INFO [stderr] --> src/interpolation.rs:97:25 Nov 30 15:12:15.272 INFO [stderr] | Nov 30 15:12:15.272 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 30 15:12:15.272 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.272 INFO [stderr] | Nov 30 15:12:15.272 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:15.272 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:15.272 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.272 INFO [stderr] --> src/interpolation.rs:97:25 Nov 30 15:12:15.272 INFO [stderr] | Nov 30 15:12:15.272 INFO [stderr] 97 | result.height = eval_linear_interp(below_idx, above_idx, run, dp, height); Nov 30 15:12:15.272 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:15.272 INFO [stderr] Nov 30 15:12:15.373 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.374 INFO [stderr] --> src/interpolation.rs:98:83 Nov 30 15:12:15.374 INFO [stderr] | Nov 30 15:12:15.374 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 30 15:12:15.374 INFO [stderr] | ^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.374 INFO [stderr] | Nov 30 15:12:15.374 INFO [stderr] = note: expected type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:15.374 INFO [stderr] found type `&[optional::Optioned]` (struct `optional::Optioned`) Nov 30 15:12:15.374 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.374 INFO [stderr] --> src/interpolation.rs:98:83 Nov 30 15:12:15.374 INFO [stderr] | Nov 30 15:12:15.374 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 30 15:12:15.374 INFO [stderr] | ^^^^^^^^^^^^^^ Nov 30 15:12:15.374 INFO [stderr] Nov 30 15:12:15.416 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.416 INFO [stderr] --> src/interpolation.rs:98:33 Nov 30 15:12:15.416 INFO [stderr] | Nov 30 15:12:15.416 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 30 15:12:15.416 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.416 INFO [stderr] | Nov 30 15:12:15.416 INFO [stderr] = note: expected type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:15.416 INFO [stderr] found type `optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:15.416 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.416 INFO [stderr] --> src/interpolation.rs:98:33 Nov 30 15:12:15.416 INFO [stderr] | Nov 30 15:12:15.416 INFO [stderr] 98 | result.cloud_fraction = eval_linear_interp(below_idx, above_idx, run, dp, cloud_fraction); Nov 30 15:12:15.416 INFO [stderr] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Nov 30 15:12:15.416 INFO [stderr] Nov 30 15:12:15.512 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.512 INFO [stderr] --> src/layers.rs:98:27 Nov 30 15:12:15.512 INFO [stderr] | Nov 30 15:12:15.512 INFO [stderr] 98 | bottom.pressure = some(1000.0); Nov 30 15:12:15.512 INFO [stderr] | ^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.512 INFO [stderr] | Nov 30 15:12:15.512 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.512 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.512 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.512 INFO [stderr] --> src/layers.rs:98:27 Nov 30 15:12:15.512 INFO [stderr] | Nov 30 15:12:15.512 INFO [stderr] 98 | bottom.pressure = some(1000.0); Nov 30 15:12:15.512 INFO [stderr] | ^^^^^^^^^^^^ Nov 30 15:12:15.512 INFO [stderr] Nov 30 15:12:15.572 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.572 INFO [stderr] --> src/layers.rs:99:30 Nov 30 15:12:15.572 INFO [stderr] | Nov 30 15:12:15.572 INFO [stderr] 99 | bottom.temperature = some(20.0); Nov 30 15:12:15.572 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.572 INFO [stderr] | Nov 30 15:12:15.572 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.572 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.572 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.572 INFO [stderr] --> src/layers.rs:99:30 Nov 30 15:12:15.572 INFO [stderr] | Nov 30 15:12:15.572 INFO [stderr] 99 | bottom.temperature = some(20.0); Nov 30 15:12:15.572 INFO [stderr] | ^^^^^^^^^^ Nov 30 15:12:15.572 INFO [stderr] Nov 30 15:12:15.623 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.623 INFO [stderr] --> src/layers.rs:100:25 Nov 30 15:12:15.623 INFO [stderr] | Nov 30 15:12:15.623 INFO [stderr] 100 | bottom.height = some(5.0); Nov 30 15:12:15.623 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.623 INFO [stderr] | Nov 30 15:12:15.623 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.623 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.623 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.623 INFO [stderr] --> src/layers.rs:100:25 Nov 30 15:12:15.623 INFO [stderr] | Nov 30 15:12:15.623 INFO [stderr] 100 | bottom.height = some(5.0); Nov 30 15:12:15.623 INFO [stderr] | ^^^^^^^^^ Nov 30 15:12:15.623 INFO [stderr] Nov 30 15:12:15.663 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.663 INFO [stderr] --> src/layers.rs:101:24 Nov 30 15:12:15.663 INFO [stderr] | Nov 30 15:12:15.663 INFO [stderr] 101 | bottom.speed = some(1.0); Nov 30 15:12:15.663 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.663 INFO [stderr] | Nov 30 15:12:15.663 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.663 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.663 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.663 INFO [stderr] --> src/layers.rs:101:24 Nov 30 15:12:15.663 INFO [stderr] | Nov 30 15:12:15.663 INFO [stderr] 101 | bottom.speed = some(1.0); Nov 30 15:12:15.663 INFO [stderr] | ^^^^^^^^^ Nov 30 15:12:15.663 INFO [stderr] Nov 30 15:12:15.707 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.707 INFO [stderr] --> src/layers.rs:102:28 Nov 30 15:12:15.707 INFO [stderr] | Nov 30 15:12:15.707 INFO [stderr] 102 | bottom.direction = some(180.0); Nov 30 15:12:15.707 INFO [stderr] | ^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.707 INFO [stderr] | Nov 30 15:12:15.707 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.707 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.707 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.707 INFO [stderr] --> src/layers.rs:102:28 Nov 30 15:12:15.707 INFO [stderr] | Nov 30 15:12:15.707 INFO [stderr] 102 | bottom.direction = some(180.0); Nov 30 15:12:15.707 INFO [stderr] | ^^^^^^^^^^^ Nov 30 15:12:15.707 INFO [stderr] Nov 30 15:12:15.762 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.762 INFO [stderr] --> src/layers.rs:105:24 Nov 30 15:12:15.762 INFO [stderr] | Nov 30 15:12:15.762 INFO [stderr] 105 | top.pressure = some(700.0); Nov 30 15:12:15.762 INFO [stderr] | ^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.762 INFO [stderr] | Nov 30 15:12:15.762 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.762 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.762 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.762 INFO [stderr] --> src/layers.rs:105:24 Nov 30 15:12:15.762 INFO [stderr] | Nov 30 15:12:15.762 INFO [stderr] 105 | top.pressure = some(700.0); Nov 30 15:12:15.762 INFO [stderr] | ^^^^^^^^^^^ Nov 30 15:12:15.762 INFO [stderr] Nov 30 15:12:15.820 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.820 INFO [stderr] --> src/layers.rs:106:27 Nov 30 15:12:15.820 INFO [stderr] | Nov 30 15:12:15.820 INFO [stderr] 106 | top.temperature = some(-2.0); Nov 30 15:12:15.820 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.820 INFO [stderr] | Nov 30 15:12:15.820 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.820 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.820 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.820 INFO [stderr] --> src/layers.rs:106:27 Nov 30 15:12:15.820 INFO [stderr] | Nov 30 15:12:15.820 INFO [stderr] 106 | top.temperature = some(-2.0); Nov 30 15:12:15.820 INFO [stderr] | ^^^^^^^^^^ Nov 30 15:12:15.820 INFO [stderr] Nov 30 15:12:15.861 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.861 INFO [stderr] --> src/layers.rs:107:22 Nov 30 15:12:15.861 INFO [stderr] | Nov 30 15:12:15.861 INFO [stderr] 107 | top.height = some(3012.0); Nov 30 15:12:15.861 INFO [stderr] | ^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.861 INFO [stderr] | Nov 30 15:12:15.861 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.861 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.861 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.861 INFO [stderr] --> src/layers.rs:107:22 Nov 30 15:12:15.861 INFO [stderr] | Nov 30 15:12:15.861 INFO [stderr] 107 | top.height = some(3012.0); Nov 30 15:12:15.861 INFO [stderr] | ^^^^^^^^^^^^ Nov 30 15:12:15.861 INFO [stderr] Nov 30 15:12:15.902 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.902 INFO [stderr] --> src/layers.rs:108:21 Nov 30 15:12:15.902 INFO [stderr] | Nov 30 15:12:15.902 INFO [stderr] 108 | top.speed = some(1.0); Nov 30 15:12:15.902 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.902 INFO [stderr] | Nov 30 15:12:15.902 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.902 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.902 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.902 INFO [stderr] --> src/layers.rs:108:21 Nov 30 15:12:15.902 INFO [stderr] | Nov 30 15:12:15.902 INFO [stderr] 108 | top.speed = some(1.0); Nov 30 15:12:15.902 INFO [stderr] | ^^^^^^^^^ Nov 30 15:12:15.902 INFO [stderr] Nov 30 15:12:15.960 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:15.960 INFO [stderr] --> src/layers.rs:109:25 Nov 30 15:12:15.960 INFO [stderr] | Nov 30 15:12:15.960 INFO [stderr] 109 | top.direction = some(90.0); Nov 30 15:12:15.960 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:15.960 INFO [stderr] | Nov 30 15:12:15.960 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:15.960 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:15.960 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:15.960 INFO [stderr] --> src/layers.rs:109:25 Nov 30 15:12:15.960 INFO [stderr] | Nov 30 15:12:15.960 INFO [stderr] 109 | top.direction = some(90.0); Nov 30 15:12:15.960 INFO [stderr] | ^^^^^^^^^^ Nov 30 15:12:15.960 INFO [stderr] Nov 30 15:12:16.052 INFO [stderr] error[E0308]: if and else have incompatible types Nov 30 15:12:16.052 INFO [stderr] --> src/parcel.rs:179:19 Nov 30 15:12:16.052 INFO [stderr] | Nov 30 15:12:16.052 INFO [stderr] 179 | let theta_e = if !snd.get_profile(ThetaE).is_empty() { Nov 30 15:12:16.052 INFO [stderr] | ___________________^ Nov 30 15:12:16.052 INFO [stderr] 180 | | snd.get_profile(ThetaE) Nov 30 15:12:16.052 INFO [stderr] 181 | | } else { Nov 30 15:12:16.052 INFO [stderr] 182 | | temp_vec = equivalent_potential_temperature(snd); Nov 30 15:12:16.052 INFO [stderr] 183 | | &temp_vec Nov 30 15:12:16.052 INFO [stderr] 184 | | }; Nov 30 15:12:16.052 INFO [stderr] | |_____^ expected slice, found struct `std::vec::Vec` Nov 30 15:12:16.052 INFO [stderr] | Nov 30 15:12:16.052 INFO [stderr] = note: expected type `&[optional::Optioned]` Nov 30 15:12:16.052 INFO [stderr] found type `&std::vec::Vec>` Nov 30 15:12:16.052 INFO [stderr] Nov 30 15:12:16.220 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 30 15:12:16.220 INFO [stderr] --> src/profile.rs:37:12 Nov 30 15:12:16.220 INFO [stderr] | Nov 30 15:12:16.220 INFO [stderr] 37 | }).collect() Nov 30 15:12:16.220 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 30 15:12:16.220 INFO [stderr] | Nov 30 15:12:16.220 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 30 15:12:16.220 INFO [stderr] Nov 30 15:12:16.228 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 30 15:12:16.228 INFO [stderr] --> src/profile.rs:59:12 Nov 30 15:12:16.228 INFO [stderr] | Nov 30 15:12:16.228 INFO [stderr] 59 | }).collect() Nov 30 15:12:16.228 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 30 15:12:16.228 INFO [stderr] | Nov 30 15:12:16.228 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 30 15:12:16.228 INFO [stderr] Nov 30 15:12:16.236 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 30 15:12:16.236 INFO [stderr] --> src/profile.rs:81:12 Nov 30 15:12:16.236 INFO [stderr] | Nov 30 15:12:16.236 INFO [stderr] 81 | }).collect() Nov 30 15:12:16.236 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 30 15:12:16.236 INFO [stderr] | Nov 30 15:12:16.236 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 30 15:12:16.236 INFO [stderr] Nov 30 15:12:16.236 INFO [stderr] error[E0277]: a collection of type `std::vec::Vec>` cannot be built from an iterator over elements of type `optional::Optioned` Nov 30 15:12:16.236 INFO [stderr] --> src/profile.rs:106:12 Nov 30 15:12:16.236 INFO [stderr] | Nov 30 15:12:16.236 INFO [stderr] 106 | }).collect() Nov 30 15:12:16.236 INFO [stderr] | ^^^^^^^ a collection of type `std::vec::Vec>` cannot be built from `std::iter::Iterator>` Nov 30 15:12:16.236 INFO [stderr] | Nov 30 15:12:16.236 INFO [stderr] = help: the trait `std::iter::FromIterator>` is not implemented for `std::vec::Vec>` Nov 30 15:12:16.236 INFO [stderr] Nov 30 15:12:16.236 INFO [stderr] error[E0271]: type mismatch resolving `> as std::iter::Iterator>::Item == &optional::Optioned` Nov 30 15:12:16.236 INFO [stderr] --> src/profile.rs:112:5 Nov 30 15:12:16.236 INFO [stderr] | Nov 30 15:12:16.237 INFO [stderr] 112 | lapse_rate(snd, t_profile) Nov 30 15:12:16.237 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:16.237 INFO [stderr] | Nov 30 15:12:16.237 INFO [stderr] = note: expected type `&optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:16.237 INFO [stderr] found type `&optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:16.237 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:16.237 INFO [stderr] --> src/profile.rs:112:5 Nov 30 15:12:16.237 INFO [stderr] | Nov 30 15:12:16.237 INFO [stderr] 112 | lapse_rate(snd, t_profile) Nov 30 15:12:16.237 INFO [stderr] | ^^^^^^^^^^ Nov 30 15:12:16.237 INFO [stderr] = note: required because of the requirements on the impl of `std::iter::Iterator` for `std::iter::Cloned>>` Nov 30 15:12:16.237 INFO [stderr] note: required by `profile::lapse_rate` Nov 30 15:12:16.237 INFO [stderr] --> src/profile.rs:151:1 Nov 30 15:12:16.237 INFO [stderr] | Nov 30 15:12:16.237 INFO [stderr] 151 | / fn lapse_rate>>( Nov 30 15:12:16.237 INFO [stderr] 152 | | snd: &Sounding, Nov 30 15:12:16.237 INFO [stderr] 153 | | v_profile: I, Nov 30 15:12:16.237 INFO [stderr] 154 | | ) -> Vec> { Nov 30 15:12:16.237 INFO [stderr] ... | Nov 30 15:12:16.237 INFO [stderr] 176 | | }).collect() Nov 30 15:12:16.237 INFO [stderr] 177 | | } Nov 30 15:12:16.237 INFO [stderr] | |_^ Nov 30 15:12:16.237 INFO [stderr] Nov 30 15:12:16.237 INFO [stderr] error[E0271]: type mismatch resolving `> as std::iter::Iterator>::Item == &optional::Optioned` Nov 30 15:12:16.237 INFO [stderr] --> src/profile.rs:148:5 Nov 30 15:12:16.237 INFO [stderr] | Nov 30 15:12:16.237 INFO [stderr] 148 | lapse_rate(snd, theta_e) Nov 30 15:12:16.238 INFO [stderr] | ^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:16.244 INFO [stderr] | Nov 30 15:12:16.244 INFO [stderr] = note: expected type `&optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:16.244 INFO [stderr] found type `&optional::Optioned` (struct `optional::Optioned`) Nov 30 15:12:16.244 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:16.244 INFO [stderr] --> src/profile.rs:148:5 Nov 30 15:12:16.244 INFO [stderr] | Nov 30 15:12:16.244 INFO [stderr] 148 | lapse_rate(snd, theta_e) Nov 30 15:12:16.244 INFO [stderr] | ^^^^^^^^^^ Nov 30 15:12:16.245 INFO [stderr] = note: required because of the requirements on the impl of `std::iter::Iterator` for `std::iter::Cloned>>` Nov 30 15:12:16.245 INFO [stderr] note: required by `profile::lapse_rate` Nov 30 15:12:16.245 INFO [stderr] --> src/profile.rs:151:1 Nov 30 15:12:16.245 INFO [stderr] | Nov 30 15:12:16.245 INFO [stderr] 151 | / fn lapse_rate>>( Nov 30 15:12:16.245 INFO [stderr] 152 | | snd: &Sounding, Nov 30 15:12:16.245 INFO [stderr] 153 | | v_profile: I, Nov 30 15:12:16.245 INFO [stderr] 154 | | ) -> Vec> { Nov 30 15:12:16.245 INFO [stderr] ... | Nov 30 15:12:16.245 INFO [stderr] 176 | | }).collect() Nov 30 15:12:16.245 INFO [stderr] 177 | | } Nov 30 15:12:16.245 INFO [stderr] | |_^ Nov 30 15:12:16.245 INFO [stderr] Nov 30 15:12:16.252 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:16.252 INFO [stderr] --> src/profile.rs:219:44 Nov 30 15:12:16.252 INFO [stderr] | Nov 30 15:12:16.252 INFO [stderr] 219 | .set_profile(Temperature, vec![some(9.8), some(0.0), some(-5.0)]) Nov 30 15:12:16.252 INFO [stderr] | ^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:16.252 INFO [stderr] | Nov 30 15:12:16.252 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:16.252 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:16.252 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:16.252 INFO [stderr] --> src/profile.rs:219:44 Nov 30 15:12:16.252 INFO [stderr] | Nov 30 15:12:16.252 INFO [stderr] 219 | .set_profile(Temperature, vec![some(9.8), some(0.0), some(-5.0)]) Nov 30 15:12:16.252 INFO [stderr] | ^^^^^^^^^ Nov 30 15:12:16.252 INFO [stderr] Nov 30 15:12:16.252 INFO [stderr] error[E0308]: mismatched types Nov 30 15:12:16.252 INFO [stderr] --> src/profile.rs:222:22 Nov 30 15:12:16.252 INFO [stderr] | Nov 30 15:12:16.252 INFO [stderr] 222 | vec![some(1000.0), some(2000.0), some(3000.0)], Nov 30 15:12:16.252 INFO [stderr] | ^^^^^^^^^^^^ expected struct `optional::Optioned`, found a different struct `optional::Optioned` Nov 30 15:12:16.252 INFO [stderr] | Nov 30 15:12:16.252 INFO [stderr] = note: expected type `optional::Optioned` Nov 30 15:12:16.253 INFO [stderr] found type `optional::Optioned<{float}>` Nov 30 15:12:16.253 INFO [stderr] note: Perhaps two different versions of crate `optional` are being used? Nov 30 15:12:16.253 INFO [stderr] --> src/profile.rs:222:22 Nov 30 15:12:16.253 INFO [stderr] | Nov 30 15:12:16.253 INFO [stderr] 222 | vec![some(1000.0), some(2000.0), some(3000.0)], Nov 30 15:12:16.253 INFO [stderr] | ^^^^^^^^^^^^ Nov 30 15:12:16.253 INFO [stderr] Nov 30 15:12:16.264 INFO [stderr] error: aborting due to 34 previous errors Nov 30 15:12:16.264 INFO [stderr] Nov 30 15:12:16.264 INFO [stderr] Some errors occurred: E0271, E0277, E0308. Nov 30 15:12:16.264 INFO [stderr] For more information about an error, try `rustc --explain E0271`. Nov 30 15:12:16.273 INFO [stderr] error: Could not compile `sounding-analysis`. Nov 30 15:12:16.273 INFO [stderr] Nov 30 15:12:16.273 INFO [stderr] To learn more, run the command again with --verbose. Nov 30 15:12:16.279 INFO [stderr] su: No module specific data is present Nov 30 15:12:16.662 INFO running `"docker" "inspect" "e215330ab0e45d623c3043258017a8e2fa6a78a06329392f2562899a463c5c80"` Nov 30 15:12:16.816 INFO running `"docker" "rm" "-f" "e215330ab0e45d623c3043258017a8e2fa6a78a06329392f2562899a463c5c80"` Nov 30 15:12:17.008 INFO [stdout] e215330ab0e45d623c3043258017a8e2fa6a78a06329392f2562899a463c5c80