From: Skgland Date: Fri, 5 Jun 2026 18:44:38 +0000 (+0200) Subject: cleanup after msrv bump X-Git-Url: https://git.sagredo.dev/?a=commitdiff_plain;h=bb5a59170a2bceb748a952eba26866185730dea7;p=scryer-prolog.git cleanup after msrv bump --- diff --git a/Cargo.lock b/Cargo.lock index fbb9e680..480ba916 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2841,7 +2841,6 @@ dependencies = [ "to-syn-value_derive", "tokio", "trycmd", - "version_check", "walkdir", "warp", "wasm-bindgen", diff --git a/Cargo.toml b/Cargo.toml index dc17a2d9..f7511677 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -40,9 +40,7 @@ crypto-full = ["dep:ring"] collapsible_match = "allow" [lints.rust] -unexpected_cfgs = { level = "deny", check-cfg = [ - 'cfg(rust_version, values("1.87.0"))', -] } +unexpected_cfgs = "deny" function_casts_as_integer = "deny" [build-dependencies] @@ -53,7 +51,6 @@ strum_macros = "0.26" syn = { version = "2.0.72", features = ['full', 'visit', 'extra-traits'] } to-syn-value = "0.1.1" to-syn-value_derive = "0.1.1" -version_check = "0.9.5" walkdir = "2" [dependencies] diff --git a/build/main.rs b/build/main.rs index e03c957e..fd2f8c46 100644 --- a/build/main.rs +++ b/build/main.rs @@ -45,10 +45,6 @@ fn find_prolog_files(path_prefix: &str, current_dir: &Path) -> Vec<(String, Path } fn main() { - if version_check::is_min_version("1.87.0").unwrap_or(false) { - println!(r#"cargo:rustc-cfg=rust_version="1.87.0""#); - } - let has_rustfmt = Command::new("rustfmt") .arg("--version") .stdin(Stdio::inherit()) diff --git a/src/machine/system_calls.rs b/src/machine/system_calls.rs index c91bf870..821c0aa5 100644 --- a/src/machine/system_calls.rs +++ b/src/machine/system_calls.rs @@ -8850,13 +8850,7 @@ impl Machine { .stderr(stderr); match command.spawn() { - #[cfg_attr(rust_version = "1.87.0", expect(unused_mut))] - Ok(mut child) => { - #[cfg(not(rust_version = "1.87.0"))] - { - self.anon_pipe_compat(&mut child, &stdin_args, &stdout_args, &stderr_args)?; - } - + Ok(child) => { let child_process_alloc: TypedArenaPtr = arena_alloc!(child, &mut self.machine_st.arena); @@ -8879,94 +8873,32 @@ impl Machine { } } - #[cfg(not(rust_version = "1.87.0"))] - fn anon_pipe_compat( - &mut self, - child: &mut std::process::Child, - stdin_args: &[HeapCellValue], - stdout_args: &[HeapCellValue], - stderr_args: &[HeapCellValue], - ) -> CallResult { - if let Some(atom!("pipe")) = stdin_args[0].to_atom() { - let writer = child.stdin.take().expect("Should have captured stdin"); - - let stream = Stream::from_pipe_writer(writer, &mut self.machine_st.arena); - - self.indices - .add_stream(stream, atom!("process_create"), 3) - .map_err(|stub_gen| stub_gen(&mut self.machine_st))?; - - unify!(self.machine_st, stdin_args[1], HeapCellValue::from(stream)); - } - - if let Some(atom!("pipe")) = stdout_args[0].to_atom() { - let writer = child.stdout.take().expect("Should have captured stdout"); - - let stream = Stream::from_pipe_reader( - PipeReader(PipeReaderInner::Stdout(writer)), - &mut self.machine_st.arena, - ); - - self.indices - .add_stream(stream, atom!("process_create"), 3) - .map_err(|stub_gen| stub_gen(&mut self.machine_st))?; - - unify!(self.machine_st, stdout_args[1], HeapCellValue::from(stream)); - } - - if let Some(atom!("pipe")) = stderr_args[0].to_atom() { - let writer = child.stderr.take().expect("Should have captured stderr"); - - let stream = Stream::from_pipe_reader( - PipeReader(PipeReaderInner::Stderr(writer)), - &mut self.machine_st.arena, - ); - - self.indices - .add_stream(stream, atom!("process_create"), 3) - .map_err(|stub_gen| stub_gen(&mut self.machine_st))?; - - unify!(self.machine_st, stderr_args[1], HeapCellValue::from(stream)); - } - - Ok(()) - } - fn handle_output_stream(&mut self, args: &[HeapCellValue]) -> Result { Ok(match args[0].to_atom() { Some(atom!("std")) => Stdio::inherit(), Some(atom!("null")) => Stdio::null(), Some(atom!("pipe")) => { - #[cfg(rust_version = "1.87.0")] - #[allow(clippy::incompatible_msrv)] - { - let (reader, writer) = match std::io::pipe() { - Ok(pipe_pair) => pipe_pair, - Err(_) => { - return Err(self.machine_st.open_permission_error( - atom!("anonymous_pipe"), - atom!("process_create"), - 3, - )); - } - }; - - let stream = Stream::from_pipe_reader(reader, &mut self.machine_st.arena); + let (reader, writer) = match std::io::pipe() { + Ok(pipe_pair) => pipe_pair, + Err(_) => { + return Err(self.machine_st.open_permission_error( + atom!("anonymous_pipe"), + atom!("process_create"), + 3, + )); + } + }; - self.indices - .add_stream(stream, atom!("process_create"), 3) - .map_err(|stub_gen| stub_gen(&mut self.machine_st))?; + let stream = Stream::from_pipe_reader(reader, &mut self.machine_st.arena); - self.machine_st - .bind(args[1].as_var().unwrap(), stream.into()); + self.indices + .add_stream(stream, atom!("process_create"), 3) + .map_err(|stub_gen| stub_gen(&mut self.machine_st))?; - Stdio::from(writer) - } + self.machine_st + .bind(args[1].as_var().unwrap(), stream.into()); - #[cfg(not(rust_version = "1.87.0"))] - { - Stdio::piped() - } + Stdio::from(writer) } Some(atom!("file")) => { let path = self.machine_st.value_to_str_like(args[1]).unwrap();