[INFO] cloning repository https://github.com/bavadim/semanticsearch [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/bavadim/semanticsearch" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbavadim%2Fsemanticsearch", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbavadim%2Fsemanticsearch'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] f32379dec6858101f1f7eecc4c85d1c37602f4bd [INFO] testing bavadim/semanticsearch against beta-2022-04-10 for beta-1.61-1 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fbavadim%2Fsemanticsearch" "/workspace/builds/worker-7/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-7/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/bavadim/semanticsearch on toolchain beta-2022-04-10 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/bavadim/semanticsearch [INFO] finished tweaking git repo https://github.com/bavadim/semanticsearch [INFO] tweaked toml for git repo https://github.com/bavadim/semanticsearch written to /workspace/builds/worker-7/source/Cargo.toml [INFO] crate git repo https://github.com/bavadim/semanticsearch already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+beta-2022-04-10" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 49c65829b9ea65278db2e375a5fc6a8bc29dc2ff31e729e29153f95b316f99ad [INFO] running `Command { std: "docker" "start" "-a" "49c65829b9ea65278db2e375a5fc6a8bc29dc2ff31e729e29153f95b316f99ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "49c65829b9ea65278db2e375a5fc6a8bc29dc2ff31e729e29153f95b316f99ad", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "49c65829b9ea65278db2e375a5fc6a8bc29dc2ff31e729e29153f95b316f99ad", kill_on_drop: false }` [INFO] [stdout] 49c65829b9ea65278db2e375a5fc6a8bc29dc2ff31e729e29153f95b316f99ad [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:b0c94ce3c1162fcb8e57cac5b65ec2f72eabb1eebea4fcc35e269e823f681646" "/opt/rustwide/cargo-home/bin/cargo" "+beta-2022-04-10" "build" "--frozen" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] e19684c0844d2ff95c806fb17050f0cffedddf6c6f56f59cf1592795d7b42d39 [INFO] running `Command { std: "docker" "start" "-a" "e19684c0844d2ff95c806fb17050f0cffedddf6c6f56f59cf1592795d7b42d39", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.36 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.89 [INFO] [stderr] Compiling futures-core v0.3.21 [INFO] [stderr] Compiling futures-task v0.3.21 [INFO] [stderr] Compiling futures-channel v0.3.21 [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Compiling futures-sink v0.3.21 [INFO] [stderr] Compiling pin-utils v0.1.0 [INFO] [stderr] Compiling futures-io v0.3.21 [INFO] [stderr] Compiling pin-project-lite v0.2.8 [INFO] [stderr] Compiling slab v0.4.5 [INFO] [stderr] Compiling either v1.6.1 [INFO] [stderr] Compiling quote v1.0.16 [INFO] [stderr] Compiling futures-macro v0.3.21 [INFO] [stderr] Compiling pin-project-internal v1.0.10 [INFO] [stderr] Compiling pin-project v1.0.10 [INFO] [stderr] Compiling futures-executor v0.3.21 [INFO] [stderr] Compiling futures v0.3.21 [INFO] [stderr] Compiling semanticdb v0.1.0-nightly (/opt/rustwide/workdir) [INFO] [stdout] warning: unused imports: `Display`, `self` [INFO] [stdout] --> src/main.rs:4:16 [INFO] [stdout] | [INFO] [stdout] 4 | use std::fmt::{self, Display}; [INFO] [stdout] | ^^^^ ^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: `#[warn(unused_imports)]` on by default [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:200:51 [INFO] [stdout] | [INFO] [stdout] 200 | Eq(field, value) => parse_relation(field, value, |v| v == value, indexes, db), [INFO] [stdout] | ^^^^^ expected `&str`, found enum `DataType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:200:58 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(expression: Expression, [INFO] [stdout] | - this type parameter [INFO] [stdout] ... [INFO] [stdout] 200 | Eq(field, value) => parse_relation(field, value, |v| v == value, indexes, db), [INFO] [stdout] | ^^^^^^^^^^^^^^ expected type parameter `T`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `T` [INFO] [stdout] found closure `[closure@src/main.rs:200:58: 200:72]` [INFO] [stdout] = help: every closure has a distinct type and so could not always match the caller-chosen type of parameter `T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:201:60 [INFO] [stdout] | [INFO] [stdout] 201 | GreaterThan(field, value) => parse_relation(field, value, |v| v > value, indexes, db), [INFO] [stdout] | ^^^^^ expected `&str`, found enum `DataType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:201:67 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(expression: Expression, [INFO] [stdout] | - this type parameter [INFO] [stdout] ... [INFO] [stdout] 201 | GreaterThan(field, value) => parse_relation(field, value, |v| v > value, indexes, db), [INFO] [stdout] | ^^^^^^^^^^^^^ expected type parameter `T`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `T` [INFO] [stdout] found closure `[closure@src/main.rs:201:67: 201:80]` [INFO] [stdout] = help: every closure has a distinct type and so could not always match the caller-chosen type of parameter `T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:202:57 [INFO] [stdout] | [INFO] [stdout] 202 | LessThen(field, value) => parse_relation(field, value, |v| v < value, indexes, db), [INFO] [stdout] | ^^^^^ expected `&str`, found enum `DataType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:202:64 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(expression: Expression, [INFO] [stdout] | - this type parameter [INFO] [stdout] ... [INFO] [stdout] 202 | LessThen(field, value) => parse_relation(field, value, |v| v < value, indexes, db), [INFO] [stdout] | ^^^^^^^^^^^^^ expected type parameter `T`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `T` [INFO] [stdout] found closure `[closure@src/main.rs:202:64: 202:77]` [INFO] [stdout] = help: every closure has a distinct type and so could not always match the caller-chosen type of parameter `T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:203:62 [INFO] [stdout] | [INFO] [stdout] 203 | GreaterThanEq(field, value) => parse_relation(field, value, |v| v >= value, indexes, db), [INFO] [stdout] | ^^^^^ expected `&str`, found enum `DataType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:203:69 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(expression: Expression, [INFO] [stdout] | - this type parameter [INFO] [stdout] ... [INFO] [stdout] 203 | GreaterThanEq(field, value) => parse_relation(field, value, |v| v >= value, indexes, db), [INFO] [stdout] | ^^^^^^^^^^^^^^ expected type parameter `T`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `T` [INFO] [stdout] found closure `[closure@src/main.rs:203:69: 203:83]` [INFO] [stdout] = help: every closure has a distinct type and so could not always match the caller-chosen type of parameter `T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:204:59 [INFO] [stdout] | [INFO] [stdout] 204 | LessThenEq(field, value) => parse_relation(field, value, |v| v <= value, indexes, db), [INFO] [stdout] | ^^^^^ expected `&str`, found enum `DataType` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:204:66 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(expression: Expression, [INFO] [stdout] | - this type parameter [INFO] [stdout] ... [INFO] [stdout] 204 | LessThenEq(field, value) => parse_relation(field, value, |v| v <= value, indexes, db), [INFO] [stdout] | ^^^^^^^^^^^^^^ expected type parameter `T`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `T` [INFO] [stdout] found closure `[closure@src/main.rs:204:66: 204:80]` [INFO] [stdout] = help: every closure has a distinct type and so could not always match the caller-chosen type of parameter `T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:206:44 [INFO] [stdout] | [INFO] [stdout] 206 | And(exp1, exp2) => parse_operation(exp1, exp2, AndStream::new, indexes, db), [INFO] [stdout] | ^^^^ expected enum `either::Either`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `either::Either + 'static)>>` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:206:50 [INFO] [stdout] | [INFO] [stdout] 206 | And(exp1, exp2) => parse_operation(exp1, exp2, AndStream::new, indexes, db), [INFO] [stdout] | ^^^^ expected enum `either::Either`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `either::Either + 'static)>>` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:206:56 [INFO] [stdout] | [INFO] [stdout] 206 | And(exp1, exp2) => parse_operation(exp1, exp2, AndStream::new, indexes, db), [INFO] [stdout] | ^^^^^^^^^^^^^^ incorrect number of function parameters [INFO] [stdout] | [INFO] [stdout] = note: expected fn pointer `fn((dyn futures::Stream + 'static), (dyn futures::Stream + 'static)) -> Box<(dyn futures::Stream + 'static)>` [INFO] [stdout] found fn item `fn(AndStream, Pin + 'static)>>, Pin + 'static)>>) -> AndStream {AndStream::new}` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:207:43 [INFO] [stdout] | [INFO] [stdout] 207 | Or(exp1, exp2) => parse_operation(exp1, exp2, |s1, s2| s1.select(s2), indexes, db), [INFO] [stdout] | ^^^^ expected enum `either::Either`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `either::Either + 'static)>>` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:207:49 [INFO] [stdout] | [INFO] [stdout] 207 | Or(exp1, exp2) => parse_operation(exp1, exp2, |s1, s2| s1.select(s2), indexes, db), [INFO] [stdout] | ^^^^ expected enum `either::Either`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `either::Either + 'static)>>` [INFO] [stdout] found struct `Box>` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0599]: no method named `select` found for trait object `(dyn futures::Stream + 'static)` in the current scope [INFO] [stdout] --> src/main.rs:207:67 [INFO] [stdout] | [INFO] [stdout] 207 | Or(exp1, exp2) => parse_operation(exp1, exp2, |s1, s2| s1.select(s2), indexes, db), [INFO] [stdout] | ^^^^^^ method not found in `(dyn futures::Stream + 'static)` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn futures::Stream + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:207:56 [INFO] [stdout] | [INFO] [stdout] 207 | Or(exp1, exp2) => parse_operation(exp1, exp2, |s1, s2| s1.select(s2), indexes, db), [INFO] [stdout] | ^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn futures::Stream + 'static)` [INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size [INFO] [stdout] | [INFO] [stdout] 207 | Or(exp1, exp2) => parse_operation(exp1, exp2, |&s1, s2| s1.select(s2), indexes, db), [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `(dyn futures::Stream + 'static)` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:207:60 [INFO] [stdout] | [INFO] [stdout] 207 | Or(exp1, exp2) => parse_operation(exp1, exp2, |s1, s2| s1.select(s2), indexes, db), [INFO] [stdout] | ^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `(dyn futures::Stream + 'static)` [INFO] [stdout] help: function arguments must have a statically known size, borrowed types always have a known size [INFO] [stdout] | [INFO] [stdout] 207 | Or(exp1, exp2) => parse_operation(exp1, exp2, |s1, &s2| s1.select(s2), indexes, db), [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:209:25 [INFO] [stdout] | [INFO] [stdout] 209 | match parse(exp, indexes, db) { [INFO] [stdout] | ^^^ expected enum `Expression`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected enum `Expression<'_>` [INFO] [stdout] found struct `Box>` [INFO] [stdout] help: consider unboxing the value [INFO] [stdout] | [INFO] [stdout] 209 | match parse(*exp, indexes, db) { [INFO] [stdout] | + [INFO] [stdout] help: try wrapping the expression in `Expression::Not` [INFO] [stdout] | [INFO] [stdout] 209 | match parse(Expression::Not(exp), indexes, db) { [INFO] [stdout] | ++++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:173:49 [INFO] [stdout] | [INFO] [stdout] 173 | Some(&index) => Right(index.get_ids(value)), [INFO] [stdout] | ^^^^^ expected enum `CellValue`, found `str` [INFO] [stdout] | [INFO] [stdout] = note: expected reference `&CellValue` [INFO] [stdout] found reference `&str` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:173:35 [INFO] [stdout] | [INFO] [stdout] 173 | Some(&index) => Right(index.get_ids(value)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^ expected struct `Box`, found trait object `dyn futures::Stream` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box>` [INFO] [stdout] found trait object `(dyn futures::Stream + 'static)` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 173 | Some(&index) => Right(Box::new(index.get_ids(value))), [INFO] [stdout] | +++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: expected a `FnOnce<(&&CellValue,)>` closure, found `T` [INFO] [stdout] --> src/main.rs:174:83 [INFO] [stdout] | [INFO] [stdout] 174 | None => Left(|record: &Record| record.fields.get(field).map_or(false, cond)) [INFO] [stdout] | ------ ^^^^ expected an `FnOnce<(&&CellValue,)>` closure, found `T` [INFO] [stdout] | | [INFO] [stdout] | required by a bound introduced by this call [INFO] [stdout] | [INFO] [stdout] = note: expected a closure with arguments `(&Record<'_>,)` [INFO] [stdout] found a closure with arguments `(&&CellValue,)` [INFO] [stdout] note: required by a bound in `Option::::map_or` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:174:26 [INFO] [stdout] | [INFO] [stdout] 166 | fn parse_relation( [INFO] [stdout] | - this type parameter [INFO] [stdout] ... [INFO] [stdout] 174 | None => Left(|record: &Record| record.fields.get(field).map_or(false, cond)) [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `T`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `T` [INFO] [stdout] found closure `[closure@src/main.rs:174:26: 174:88]` [INFO] [stdout] = help: every closure has a distinct type and so could not always match the caller-chosen type of parameter `T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> src/main.rs:185:16 [INFO] [stdout] | [INFO] [stdout] 185 | match (parse(e1, indexes), parse(e2, indexes)) { [INFO] [stdout] | ^^^^^ -- ------- supplied 2 arguments [INFO] [stdout] | | [INFO] [stdout] | expected 3 arguments [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> src/main.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(expression: Expression, [INFO] [stdout] | ^^^^^ ---------------------- [INFO] [stdout] 163 | indexes: &HashMap<&str, &dyn Index>, [INFO] [stdout] | ----------------------------------- [INFO] [stdout] 164 | db: &dyn Database) -> Either> where T: Fn(&Record) -> bool { [INFO] [stdout] | ----------------- [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0061]: this function takes 3 arguments but 2 arguments were supplied [INFO] [stdout] --> src/main.rs:185:36 [INFO] [stdout] | [INFO] [stdout] 185 | match (parse(e1, indexes), parse(e2, indexes)) { [INFO] [stdout] | ^^^^^ -- ------- supplied 2 arguments [INFO] [stdout] | | [INFO] [stdout] | expected 3 arguments [INFO] [stdout] | [INFO] [stdout] note: function defined here [INFO] [stdout] --> src/main.rs:162:4 [INFO] [stdout] | [INFO] [stdout] 162 | fn parse(expression: Expression, [INFO] [stdout] | ^^^^^ ---------------------- [INFO] [stdout] 163 | indexes: &HashMap<&str, &dyn Index>, [INFO] [stdout] | ----------------------------------- [INFO] [stdout] 164 | db: &dyn Database) -> Either> where T: Fn(&Record) -> bool { [INFO] [stdout] | ----------------- [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:186:46 [INFO] [stdout] | [INFO] [stdout] 178 | fn parse_operation( [INFO] [stdout] | - this type parameter [INFO] [stdout] ... [INFO] [stdout] 186 | (Left(fsf1), Left(fsf2)) => Left(|record: &Record| fsf1(record) && fsf2(record)), [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected type parameter `T`, found closure [INFO] [stdout] | [INFO] [stdout] = note: expected type parameter `T` [INFO] [stdout] found closure `[closure@src/main.rs:186:46: 186:92]` [INFO] [stdout] = help: every closure has a distinct type and so could not always match the caller-chosen type of parameter `T` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `dyn futures::Stream` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:188:21 [INFO] [stdout] | [INFO] [stdout] 188 | let cur2 = db.filter(fsf1); [INFO] [stdout] | ^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `dyn futures::Stream` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] = help: unsized locals are gated as an unstable feature [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:189:28 [INFO] [stdout] | [INFO] [stdout] 189 | Right(comb(cur1, cur2)) [INFO] [stdout] | ^^^^ expected trait object `dyn futures::Stream`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected trait object `(dyn futures::Stream + 'static)` [INFO] [stdout] found struct `Box>` [INFO] [stdout] help: consider unboxing the value [INFO] [stdout] | [INFO] [stdout] 189 | Right(comb(*cur1, cur2)) [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: the size for values of type `dyn futures::Stream` cannot be known at compilation time [INFO] [stdout] --> src/main.rs:192:21 [INFO] [stdout] | [INFO] [stdout] 192 | let cur2 = db.filter(fsf1); [INFO] [stdout] | ^^^^ doesn't have a size known at compile-time [INFO] [stdout] | [INFO] [stdout] = help: the trait `Sized` is not implemented for `dyn futures::Stream` [INFO] [stdout] = note: all local variables must have a statically known size [INFO] [stdout] = help: unsized locals are gated as an unstable feature [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:193:28 [INFO] [stdout] | [INFO] [stdout] 193 | Right(comb(cur1, cur2)) [INFO] [stdout] | ^^^^ expected trait object `dyn futures::Stream`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected trait object `(dyn futures::Stream + 'static)` [INFO] [stdout] found struct `Box>` [INFO] [stdout] help: consider unboxing the value [INFO] [stdout] | [INFO] [stdout] 193 | Right(comb(*cur1, cur2)) [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:195:54 [INFO] [stdout] | [INFO] [stdout] 195 | (Right(cur1), Right(cur2)) => Right(comb(cur1, cur2)) [INFO] [stdout] | ^^^^ expected trait object `dyn futures::Stream`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected trait object `(dyn futures::Stream + 'static)` [INFO] [stdout] found struct `Box>` [INFO] [stdout] help: consider unboxing the value [INFO] [stdout] | [INFO] [stdout] 195 | (Right(cur1), Right(cur2)) => Right(comb(*cur1, cur2)) [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:195:60 [INFO] [stdout] | [INFO] [stdout] 195 | (Right(cur1), Right(cur2)) => Right(comb(cur1, cur2)) [INFO] [stdout] | ^^^^ expected trait object `dyn futures::Stream`, found struct `Box` [INFO] [stdout] | [INFO] [stdout] = note: expected trait object `(dyn futures::Stream + 'static)` [INFO] [stdout] found struct `Box>` [INFO] [stdout] help: consider unboxing the value [INFO] [stdout] | [INFO] [stdout] 195 | (Right(cur1), Right(cur2)) => Right(comb(cur1, *cur2)) [INFO] [stdout] | + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:218:56 [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33))))); [INFO] [stdout] | ^^ expected enum `DataType`, found floating-point number [INFO] [stdout] | [INFO] [stdout] help: try wrapping the expression in `DataType::FLOAT` [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", DataType::FLOAT(2.)), LessThen("bbbbb", 33))))); [INFO] [stdout] | ++++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:218:45 [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33))))); [INFO] [stdout] | ^^^^^^^^^^^^^^ expected struct `Box`, found enum `Expression` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box>` [INFO] [stdout] found enum `Expression<'_>` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Box::new(Eq("aaaa", 2.)), LessThen("bbbbb", 33))))); [INFO] [stdout] | +++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:218:79 [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33))))); [INFO] [stdout] | ^^ expected enum `DataType`, found integer [INFO] [stdout] | [INFO] [stdout] help: try wrapping the expression in `DataType::INT` [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", DataType::INT(33)))))); [INFO] [stdout] | ++++++++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:218:61 [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33))))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^ expected struct `Box`, found enum `Expression` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box>` [INFO] [stdout] found enum `Expression<'_>` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), Box::new(LessThen("bbbbb", 33)))))); [INFO] [stdout] | +++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:218:42 [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33))))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Box`, found enum `Expression` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box>` [INFO] [stdout] found enum `Expression<'_>` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Box::new(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33)))))); [INFO] [stdout] | +++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0308]: mismatched types [INFO] [stdout] --> src/main.rs:218:38 [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33))))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ expected struct `Box`, found enum `Expression` [INFO] [stdout] | [INFO] [stdout] = note: expected struct `Box>` [INFO] [stdout] found enum `Expression<'_>` [INFO] [stdout] = note: for more on the distinction between the stack and the heap, read https://doc.rust-lang.org/book/ch15-01-box.html, https://doc.rust-lang.org/rust-by-example/std/box.html, and https://doc.rust-lang.org/std/boxed/index.html [INFO] [stdout] help: store this in the heap by calling `Box::new` [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Box::new(Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33)))))); [INFO] [stdout] | +++++++++ + [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0277]: `Order<'_>` doesn't implement `std::fmt::Display` [INFO] [stdout] --> src/main.rs:218:20 [INFO] [stdout] | [INFO] [stdout] 218 | println!("{}", SimilarTo("aaaa", Not(Or(Eq("aaaa", 2.), LessThen("bbbbb", 33))))); [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ `Order<'_>` cannot be formatted with the default formatter [INFO] [stdout] | [INFO] [stdout] = help: the trait `std::fmt::Display` is not implemented for `Order<'_>` [INFO] [stdout] = note: in format strings you may be able to use `{:?}` (or {:#?} for pretty-print) instead [INFO] [stdout] = note: this error originates in the macro `$crate::format_args_nl` (in Nightly builds, run with -Z macro-backtrace for more info) [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 39 previous errors; 1 warning emitted [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] Some errors have detailed explanations: E0061, E0277, E0308, E0599. [INFO] [stdout] [INFO] [stdout] For more information about an error, try `rustc --explain E0061`. [INFO] [stdout] [INFO] [stderr] error: could not compile `semanticdb` due to 40 previous errors; 1 warning emitted [INFO] running `Command { std: "docker" "inspect" "e19684c0844d2ff95c806fb17050f0cffedddf6c6f56f59cf1592795d7b42d39", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "e19684c0844d2ff95c806fb17050f0cffedddf6c6f56f59cf1592795d7b42d39", kill_on_drop: false }` [INFO] [stdout] e19684c0844d2ff95c806fb17050f0cffedddf6c6f56f59cf1592795d7b42d39