[INFO] fetching crate kql-language-tools 0.1.0... [INFO] checking kql-language-tools-0.1.0 against master#6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd for pr-153721 [INFO] extracting crate kql-language-tools 0.1.0 into /workspace/builds/worker-2-tc1/source [INFO] started tweaking crates.io crate kql-language-tools 0.1.0 [INFO] removed 0 missing examples [INFO] finished tweaking crates.io crate kql-language-tools 0.1.0 [INFO] tweaked toml for crates.io crate kql-language-tools 0.1.0 written to /workspace/builds/worker-2-tc1/source/Cargo.toml [INFO] validating manifest of crates.io crate kql-language-tools 0.1.0 on toolchain 6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] crate crates.io crate kql-language-tools 0.1.0 already has a lockfile, it will not be regenerated [INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] [stderr] Downloading crates ... [INFO] [stderr] Downloaded jiff v0.2.16 [INFO] [stderr] Downloaded jiff-static v0.2.16 [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-2-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }` [INFO] [stdout] d08be37a79327d7fae4743afef49c77c96ad437bd8a3898185add3c5dcbabd09 [INFO] running `Command { std: "docker" "start" "d08be37a79327d7fae4743afef49c77c96ad437bd8a3898185add3c5dcbabd09", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d08be37a79327d7fae4743afef49c77c96ad437bd8a3898185add3c5dcbabd09" "/opt/rustwide/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "d08be37a79327d7fae4743afef49c77c96ad437bd8a3898185add3c5dcbabd09", kill_on_drop: false }` [INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "d08be37a79327d7fae4743afef49c77c96ad437bd8a3898185add3c5dcbabd09" "/opt/rustwide/cargo-home/bin/cargo" "+6eda7419e71fdbc1185ed5be7e6bff1a474ab5cd" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.103 [INFO] [stderr] Compiling unicode-ident v1.0.22 [INFO] [stderr] Compiling quote v1.0.42 [INFO] [stderr] Checking memchr v2.7.6 [INFO] [stderr] Checking regex-syntax v0.8.8 [INFO] [stderr] Compiling serde_json v1.0.145 [INFO] [stderr] Compiling thiserror v2.0.17 [INFO] [stderr] Compiling kql-language-tools v0.1.0 (/opt/rustwide/workdir) [INFO] [stderr] Checking anstream v0.6.21 [INFO] [stderr] Checking jiff v0.2.16 [INFO] [stderr] warning: kql-language-tools@0.1.0: Native library not found, attempting to build... [INFO] [stderr] warning: kql-language-tools@0.1.0: [INFO] [stderr] warning: kql-language-tools@0.1.0: ===================================================== [INFO] [stderr] warning: kql-language-tools@0.1.0: .NET SDK not found - cannot build native library [INFO] [stderr] warning: kql-language-tools@0.1.0: ===================================================== [INFO] [stderr] warning: kql-language-tools@0.1.0: [INFO] [stderr] warning: kql-language-tools@0.1.0: The kql-language-tools crate requires a native library built from .NET. [INFO] [stderr] warning: kql-language-tools@0.1.0: [INFO] [stderr] warning: kql-language-tools@0.1.0: Options: [INFO] [stderr] warning: kql-language-tools@0.1.0: [INFO] [stderr] warning: kql-language-tools@0.1.0: 1. Install .NET 8.0+ SDK and rebuild: [INFO] [stderr] warning: kql-language-tools@0.1.0: - macOS: brew install dotnet [INFO] [stderr] warning: kql-language-tools@0.1.0: - Linux: https://docs.microsoft.com/dotnet/core/install/linux [INFO] [stderr] warning: kql-language-tools@0.1.0: - Windows: https://dotnet.microsoft.com/download [INFO] [stderr] warning: kql-language-tools@0.1.0: [INFO] [stderr] warning: kql-language-tools@0.1.0: 2. Set KQL_LANGUAGE_TOOLS_PATH to a pre-built library: [INFO] [stderr] warning: kql-language-tools@0.1.0: export KQL_LANGUAGE_TOOLS_PATH=/path/to/KqlLanguageFfiNE.so [INFO] [stderr] warning: kql-language-tools@0.1.0: [INFO] [stderr] warning: kql-language-tools@0.1.0: 3. Download pre-built binaries from releases (if available) [INFO] [stderr] warning: kql-language-tools@0.1.0: [INFO] [stderr] warning: kql-language-tools@0.1.0: Target platform: linux-x64 (KqlLanguageFfiNE.so) [INFO] [stderr] warning: kql-language-tools@0.1.0: ===================================================== [INFO] [stderr] Checking aho-corasick v1.1.4 [INFO] [stderr] Compiling syn v2.0.111 [INFO] [stderr] Checking regex-automata v0.4.13 [INFO] [stderr] Checking regex v1.12.2 [INFO] [stderr] Compiling thiserror-impl v2.0.17 [INFO] [stderr] Compiling serde_derive v1.0.228 [INFO] [stderr] Checking env_filter v0.1.4 [INFO] [stderr] Checking env_logger v0.11.8 [INFO] [stderr] Checking serde v1.0.228 [INFO] [stdout] warning: implementation of an `unsafe` trait [INFO] [stdout] --> src/loader.rs:178:1 [INFO] [stdout] | [INFO] [stdout] 178 | unsafe impl Send for LoadedLibrary {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-W unsafe-code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of an `unsafe` trait [INFO] [stdout] --> src/loader.rs:186:1 [INFO] [stdout] | [INFO] [stdout] 186 | unsafe impl Sync for LoadedLibrary {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:199:13 [INFO] [stdout] | [INFO] [stdout] 199 | unsafe { Library::new(path) }.map_err(|e| Error::library_load_failed(path, e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | let init: KqlInitFn = unsafe { [INFO] [stdout] | _______________________________^ [INFO] [stdout] 209 | | *library [INFO] [stdout] 210 | | .get(symbols::KQL_INIT.as_bytes()) [INFO] [stdout] 211 | | .map_err(|_| Error::SymbolNotFound { [INFO] [stdout] 212 | | symbol: symbols::KQL_INIT.to_string(), [INFO] [stdout] 213 | | })? [INFO] [stdout] 214 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:216:37 [INFO] [stdout] | [INFO] [stdout] 216 | let cleanup: KqlCleanupFn = unsafe { [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 217 | | *library [INFO] [stdout] 218 | | .get(symbols::KQL_CLEANUP.as_bytes()) [INFO] [stdout] 219 | | .map_err(|_| Error::SymbolNotFound { [INFO] [stdout] 220 | | symbol: symbols::KQL_CLEANUP.to_string(), [INFO] [stdout] 221 | | })? [INFO] [stdout] 222 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:224:52 [INFO] [stdout] | [INFO] [stdout] 224 | let validate_syntax: KqlValidateSyntaxFn = unsafe { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 225 | | *library [INFO] [stdout] 226 | | .get(symbols::KQL_VALIDATE_SYNTAX.as_bytes()) [INFO] [stdout] 227 | | .map_err(|_| Error::SymbolNotFound { [INFO] [stdout] 228 | | symbol: symbols::KQL_VALIDATE_SYNTAX.to_string(), [INFO] [stdout] 229 | | })? [INFO] [stdout] 230 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:232:49 [INFO] [stdout] | [INFO] [stdout] 232 | let get_last_error: KqlGetLastErrorFn = unsafe { [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 233 | | *library [INFO] [stdout] 234 | | .get(symbols::KQL_GET_LAST_ERROR.as_bytes()) [INFO] [stdout] 235 | | .map_err(|_| Error::SymbolNotFound { [INFO] [stdout] 236 | | symbol: symbols::KQL_GET_LAST_ERROR.to_string(), [INFO] [stdout] 237 | | })? [INFO] [stdout] 238 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:241:69 [INFO] [stdout] | [INFO] [stdout] 241 | let validate_with_schema: Option = unsafe { [INFO] [stdout] | _____________________________________________________________________^ [INFO] [stdout] 242 | | library [INFO] [stdout] 243 | | .get(symbols::KQL_VALIDATE_WITH_SCHEMA.as_bytes()) [INFO] [stdout] 244 | | .ok() [INFO] [stdout] 245 | | .map(|s| *s) [INFO] [stdout] 246 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:248:60 [INFO] [stdout] | [INFO] [stdout] 248 | let get_completions: Option = unsafe { [INFO] [stdout] | ____________________________________________________________^ [INFO] [stdout] 249 | | library [INFO] [stdout] 250 | | .get(symbols::KQL_GET_COMPLETIONS.as_bytes()) [INFO] [stdout] 251 | | .ok() [INFO] [stdout] 252 | | .map(|s| *s) [INFO] [stdout] 253 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:255:68 [INFO] [stdout] | [INFO] [stdout] 255 | let get_classifications: Option = unsafe { [INFO] [stdout] | ____________________________________________________________________^ [INFO] [stdout] 256 | | library [INFO] [stdout] 257 | | .get(symbols::KQL_GET_CLASSIFICATIONS.as_bytes()) [INFO] [stdout] 258 | | .ok() [INFO] [stdout] 259 | | .map(|s| *s) [INFO] [stdout] 260 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:303:9 [INFO] [stdout] | [INFO] [stdout] 303 | unsafe { (self.cleanup)() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:413:22 [INFO] [stdout] | [INFO] [stdout] 413 | let result = unsafe { (lib.init)() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:419:17 [INFO] [stdout] | [INFO] [stdout] 419 | unsafe { (lib.get_last_error)(error_buf.as_mut_ptr(), error_buf.len() as i32) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | / unsafe { [INFO] [stdout] 95 | | (self.lib.validate_syntax)( [INFO] [stdout] 96 | | query_bytes.as_ptr(), [INFO] [stdout] 97 | | query_len, [INFO] [stdout] ... | [INFO] [stdout] 101 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | / unsafe { [INFO] [stdout] 153 | | validate_fn( [INFO] [stdout] 154 | | query_bytes.as_ptr(), [INFO] [stdout] 155 | | query_len, [INFO] [stdout] ... | [INFO] [stdout] 161 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:218:13 [INFO] [stdout] | [INFO] [stdout] 218 | / unsafe { [INFO] [stdout] 219 | | classify_fn( [INFO] [stdout] 220 | | query_bytes.as_ptr(), [INFO] [stdout] 221 | | query_len, [INFO] [stdout] ... | [INFO] [stdout] 225 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:272:13 [INFO] [stdout] | [INFO] [stdout] 272 | / unsafe { [INFO] [stdout] 273 | | let (schema_ptr, schema_len) = match &schema_json { [INFO] [stdout] 274 | | Some(json) => (json.as_ptr(), json.len() as c_int), [INFO] [stdout] 275 | | None => (std::ptr::null(), 0), [INFO] [stdout] ... | [INFO] [stdout] 287 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:402:13 [INFO] [stdout] | [INFO] [stdout] 402 | unsafe { (self.lib.get_last_error)(buffer.as_mut_ptr(), buffer.len() as c_int) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of an `unsafe` trait [INFO] [stdout] --> src/loader.rs:178:1 [INFO] [stdout] | [INFO] [stdout] 178 | unsafe impl Send for LoadedLibrary {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: requested on the command line with `-W unsafe-code` [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: implementation of an `unsafe` trait [INFO] [stdout] --> src/loader.rs:186:1 [INFO] [stdout] | [INFO] [stdout] 186 | unsafe impl Sync for LoadedLibrary {} [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:199:13 [INFO] [stdout] | [INFO] [stdout] 199 | unsafe { Library::new(path) }.map_err(|e| Error::library_load_failed(path, e))?; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:208:31 [INFO] [stdout] | [INFO] [stdout] 208 | let init: KqlInitFn = unsafe { [INFO] [stdout] | _______________________________^ [INFO] [stdout] 209 | | *library [INFO] [stdout] 210 | | .get(symbols::KQL_INIT.as_bytes()) [INFO] [stdout] 211 | | .map_err(|_| Error::SymbolNotFound { [INFO] [stdout] 212 | | symbol: symbols::KQL_INIT.to_string(), [INFO] [stdout] 213 | | })? [INFO] [stdout] 214 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:216:37 [INFO] [stdout] | [INFO] [stdout] 216 | let cleanup: KqlCleanupFn = unsafe { [INFO] [stdout] | _____________________________________^ [INFO] [stdout] 217 | | *library [INFO] [stdout] 218 | | .get(symbols::KQL_CLEANUP.as_bytes()) [INFO] [stdout] 219 | | .map_err(|_| Error::SymbolNotFound { [INFO] [stdout] 220 | | symbol: symbols::KQL_CLEANUP.to_string(), [INFO] [stdout] 221 | | })? [INFO] [stdout] 222 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:224:52 [INFO] [stdout] | [INFO] [stdout] 224 | let validate_syntax: KqlValidateSyntaxFn = unsafe { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 225 | | *library [INFO] [stdout] 226 | | .get(symbols::KQL_VALIDATE_SYNTAX.as_bytes()) [INFO] [stdout] 227 | | .map_err(|_| Error::SymbolNotFound { [INFO] [stdout] 228 | | symbol: symbols::KQL_VALIDATE_SYNTAX.to_string(), [INFO] [stdout] 229 | | })? [INFO] [stdout] 230 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:232:49 [INFO] [stdout] | [INFO] [stdout] 232 | let get_last_error: KqlGetLastErrorFn = unsafe { [INFO] [stdout] | _________________________________________________^ [INFO] [stdout] 233 | | *library [INFO] [stdout] 234 | | .get(symbols::KQL_GET_LAST_ERROR.as_bytes()) [INFO] [stdout] 235 | | .map_err(|_| Error::SymbolNotFound { [INFO] [stdout] 236 | | symbol: symbols::KQL_GET_LAST_ERROR.to_string(), [INFO] [stdout] 237 | | })? [INFO] [stdout] 238 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:241:69 [INFO] [stdout] | [INFO] [stdout] 241 | let validate_with_schema: Option = unsafe { [INFO] [stdout] | _____________________________________________________________________^ [INFO] [stdout] 242 | | library [INFO] [stdout] 243 | | .get(symbols::KQL_VALIDATE_WITH_SCHEMA.as_bytes()) [INFO] [stdout] 244 | | .ok() [INFO] [stdout] 245 | | .map(|s| *s) [INFO] [stdout] 246 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:248:60 [INFO] [stdout] | [INFO] [stdout] 248 | let get_completions: Option = unsafe { [INFO] [stdout] | ____________________________________________________________^ [INFO] [stdout] 249 | | library [INFO] [stdout] 250 | | .get(symbols::KQL_GET_COMPLETIONS.as_bytes()) [INFO] [stdout] 251 | | .ok() [INFO] [stdout] 252 | | .map(|s| *s) [INFO] [stdout] 253 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:255:68 [INFO] [stdout] | [INFO] [stdout] 255 | let get_classifications: Option = unsafe { [INFO] [stdout] | ____________________________________________________________________^ [INFO] [stdout] 256 | | library [INFO] [stdout] 257 | | .get(symbols::KQL_GET_CLASSIFICATIONS.as_bytes()) [INFO] [stdout] 258 | | .ok() [INFO] [stdout] 259 | | .map(|s| *s) [INFO] [stdout] 260 | | }; [INFO] [stdout] | |_________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:303:9 [INFO] [stdout] | [INFO] [stdout] 303 | unsafe { (self.cleanup)() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:413:22 [INFO] [stdout] | [INFO] [stdout] 413 | let result = unsafe { (lib.init)() }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/loader.rs:419:17 [INFO] [stdout] | [INFO] [stdout] 419 | unsafe { (lib.get_last_error)(error_buf.as_mut_ptr(), error_buf.len() as i32) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:94:13 [INFO] [stdout] | [INFO] [stdout] 94 | / unsafe { [INFO] [stdout] 95 | | (self.lib.validate_syntax)( [INFO] [stdout] 96 | | query_bytes.as_ptr(), [INFO] [stdout] 97 | | query_len, [INFO] [stdout] ... | [INFO] [stdout] 101 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:152:13 [INFO] [stdout] | [INFO] [stdout] 152 | / unsafe { [INFO] [stdout] 153 | | validate_fn( [INFO] [stdout] 154 | | query_bytes.as_ptr(), [INFO] [stdout] 155 | | query_len, [INFO] [stdout] ... | [INFO] [stdout] 161 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:218:13 [INFO] [stdout] | [INFO] [stdout] 218 | / unsafe { [INFO] [stdout] 219 | | classify_fn( [INFO] [stdout] 220 | | query_bytes.as_ptr(), [INFO] [stdout] 221 | | query_len, [INFO] [stdout] ... | [INFO] [stdout] 225 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:272:13 [INFO] [stdout] | [INFO] [stdout] 272 | / unsafe { [INFO] [stdout] 273 | | let (schema_ptr, schema_len) = match &schema_json { [INFO] [stdout] 274 | | Some(json) => (json.as_ptr(), json.len() as c_int), [INFO] [stdout] 275 | | None => (std::ptr::null(), 0), [INFO] [stdout] ... | [INFO] [stdout] 287 | | } [INFO] [stdout] | |_____________^ [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] warning: usage of an `unsafe` block [INFO] [stdout] --> src/validator.rs:402:13 [INFO] [stdout] | [INFO] [stdout] 402 | unsafe { (self.lib.get_last_error)(buffer.as_mut_ptr(), buffer.len() as c_int) }; [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] [INFO] [stdout] [INFO] [stderr] Finished `dev` profile [unoptimized + debuginfo] target(s) in 8.32s [INFO] running `Command { std: "docker" "inspect" "d08be37a79327d7fae4743afef49c77c96ad437bd8a3898185add3c5dcbabd09", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "d08be37a79327d7fae4743afef49c77c96ad437bd8a3898185add3c5dcbabd09", kill_on_drop: false }` [INFO] [stdout] d08be37a79327d7fae4743afef49c77c96ad437bd8a3898185add3c5dcbabd09