From 5fc07df03e46436339228a902bab403a46dede99 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Mon, 12 Mar 2018 10:06:01 +0100 Subject: [PATCH] Update to 0.5.0 Signed-off-by: Igor Gnatenko --- .gitignore | 1 + ...e-on-all-platforms-simplify-Linux-co.patch | 58 ------------------- remove_dir_all-0.3.0-fix-metadata.diff | 11 ---- remove_dir_all-0.5.0-fix-metadata.diff | 9 +++ rust-remove_dir_all.spec | 11 ++-- sources | 2 +- 6 files changed, 17 insertions(+), 75 deletions(-) delete mode 100644 0001-Make-API-the-same-on-all-platforms-simplify-Linux-co.patch delete mode 100644 remove_dir_all-0.3.0-fix-metadata.diff create mode 100644 remove_dir_all-0.5.0-fix-metadata.diff diff --git a/.gitignore b/.gitignore index e8373e4..96e6652 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /remove_dir_all-0.3.0.crate +/remove_dir_all-0.5.0.crate diff --git a/0001-Make-API-the-same-on-all-platforms-simplify-Linux-co.patch b/0001-Make-API-the-same-on-all-platforms-simplify-Linux-co.patch deleted file mode 100644 index 66d31ac..0000000 --- a/0001-Make-API-the-same-on-all-platforms-simplify-Linux-co.patch +++ /dev/null @@ -1,58 +0,0 @@ -From a52b3a1206ca8ff387e3931d6b35b7b194d11617 Mon Sep 17 00:00:00 2001 -From: Rolf Karp -Date: Sun, 19 Nov 2017 10:29:29 +0100 -Subject: [PATCH] Make API the same on all platforms, simplify Linux - compilation (#3) - -* Generalize API for Windows to make it the same for all platforms - -* Avoid compiling Windows dependencies on Linux, fix warning ---- - src/fs.rs | 5 +++-- - src/lib.rs | 2 ++ - 2 files changed, 5 insertions(+), 2 deletions(-) - -diff --git a/src/fs.rs b/src/fs.rs -index b9eeaf1..852191a 100644 ---- a/src/fs.rs -+++ b/src/fs.rs -@@ -25,7 +25,7 @@ struct RmdirContext<'a> { - /// remove_dir_all("./temp/").unwrap(); - /// } - /// ``` --pub fn remove_dir_all(path: &Path) -> io::Result<()> { -+pub fn remove_dir_all>(path: P) -> io::Result<()> { - // On Windows it is not enough to just recursively remove the contents of a - // directory and then the directory itself. Deleting does not happen - // instantaneously, but is scheduled. -@@ -69,6 +69,7 @@ pub fn remove_dir_all(path: &Path) -> io::Result<()> { - - // Open the path once to get the canonical path, file type and attributes. - let (path, metadata) = { -+ let path = path.as_ref(); - let mut opts = OpenOptions::new(); - opts.access_mode(FILE_READ_ATTRIBUTES); - opts.custom_flags(FILE_FLAG_BACKUP_SEMANTICS | -@@ -158,7 +159,7 @@ fn rename(file: &File, new: &Path, replace: bool) -> io::Result<()> { - unsafe { - // Thanks to alignment guarantees on Windows this works - // (8 for 32-bit and 16 for 64-bit) -- let mut info = data.as_mut_ptr() as *mut FILE_RENAME_INFO; -+ let info = data.as_mut_ptr() as *mut FILE_RENAME_INFO; - // The type of ReplaceIfExists is BOOL, but it actually expects a - // BOOLEAN. This means true is -1, not c::TRUE. - (*info).ReplaceIfExists = if replace { -1 } else { FALSE }; -diff --git a/src/lib.rs b/src/lib.rs -index 606fb39..67b0548 100644 ---- a/src/lib.rs -+++ b/src/lib.rs -@@ -1,4 +1,6 @@ -+#[cfg(windows)] - extern crate winapi; -+#[cfg(windows)] - extern crate kernel32 as kernel; - - #[cfg(windows)] --- -2.16.1 - diff --git a/remove_dir_all-0.3.0-fix-metadata.diff b/remove_dir_all-0.3.0-fix-metadata.diff deleted file mode 100644 index c187e37..0000000 --- a/remove_dir_all-0.3.0-fix-metadata.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- remove_dir_all-0.3.0/Cargo.toml 1970-01-01T01:00:00+01:00 -+++ remove_dir_all-0.3.0/Cargo.toml 2018-01-31T14:47:15.521765+01:00 -@@ -21,8 +21,3 @@ - categories = ["filesystem"] - license = "MIT/Apache-2.0" - repository = "https://github.com/Aaronepower/remove_dir_all.git" --[dependencies.winapi] --version = "0.2" -- --[dependencies.kernel32-sys] --version = "0.2" diff --git a/remove_dir_all-0.5.0-fix-metadata.diff b/remove_dir_all-0.5.0-fix-metadata.diff new file mode 100644 index 0000000..2a79d75 --- /dev/null +++ b/remove_dir_all-0.5.0-fix-metadata.diff @@ -0,0 +1,9 @@ +--- remove_dir_all-0.5.0/Cargo.toml 1970-01-01T01:00:00+01:00 ++++ remove_dir_all-0.5.0/Cargo.toml 2018-03-12T10:06:33.544859+01:00 +@@ -21,6 +21,3 @@ + categories = ["filesystem"] + license = "MIT/Apache-2.0" + repository = "https://github.com/Aaronepower/remove_dir_all.git" +-[target."cfg(windows)".dependencies.winapi] +-version = "0.3" +-features = ["std", "errhandlingapi", "winerror", "fileapi", "winbase"] diff --git a/rust-remove_dir_all.spec b/rust-remove_dir_all.spec index 8f0dc37..95294bd 100644 --- a/rust-remove_dir_all.spec +++ b/rust-remove_dir_all.spec @@ -5,8 +5,8 @@ %global crate remove_dir_all Name: rust-%{crate} -Version: 0.3.0 -Release: 2%{?dist} +Version: 0.5.0 +Release: 1%{?dist} Summary: Safe, reliable implementation of remove_dir_all License: MIT or ASL 2.0 @@ -14,9 +14,7 @@ URL: https://crates.io/crates/remove_dir_all Source0: https://crates.io/api/v1/crates/%{crate}/%{version}/download#/%{crate}-%{version}.crate # Initial patched metadata # * No windows -Patch0: remove_dir_all-0.3.0-fix-metadata.diff -# https://github.com/Aaronepower/remove_dir_all/commit/a52b3a1206ca8ff387e3931d6b35b7b194d11617 -Patch0001: 0001-Make-API-the-same-on-all-platforms-simplify-Linux-co.patch +Patch0: remove_dir_all-0.5.0-fix-metadata.diff ExclusiveArch: %{rust_arches} @@ -55,6 +53,9 @@ which use %{crate} from crates.io. %{cargo_registry}/%{crate}-%{version}/ %changelog +* Mon Mar 12 2018 Igor Gnatenko - 0.5.0-1 +- Update to 0.5.0 + * Fri Feb 09 2018 Fedora Release Engineering - 0.3.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild diff --git a/sources b/sources index afc9a37..405c3ed 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (remove_dir_all-0.3.0.crate) = e486ccf7016cb8298409f5a4cf71d0b15e3c660ba20df49a7bcb597ff01d93906131c74a9e71aca93b586ab04c054f750867bc1a26115451bdd16d0cc1af3c65 +SHA512 (remove_dir_all-0.5.0.crate) = 876681ae98ac9a9cf0447397446ca7afb4e254cf0cfdd7a9b8702eb94cfda5230ac4daeaa067a3f07ae303b920d1a97fa4a0da76b80b4545eab1080bee8c1574