From f42fc82f18a8b76365434eecefd8b1f47ec815e8 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Mon, 22 Jan 2024 22:32:11 +0100 Subject: [PATCH] adjust the fuzzers to use the new structure --- Cargo.toml | 4 ++++ {lib/unified-diff/fuzz => fuzz}/.gitignore | 0 {lib/unified-diff/fuzz => fuzz}/Cargo.toml | 18 +++++++++++++++--- .../fuzz => fuzz}/fuzz_targets/fuzz_ed.rs | 3 +-- .../fuzz_targets/fuzz_normal.rs | 2 +- .../fuzz => fuzz}/fuzz_targets/fuzz_patch.rs | 3 +-- lib/normal-diff/fuzz/Cargo.toml | 12 +----------- src/lib.rs | 11 +++++++++++ src/main.rs | 1 + 9 files changed, 35 insertions(+), 19 deletions(-) rename {lib/unified-diff/fuzz => fuzz}/.gitignore (100%) rename {lib/unified-diff/fuzz => fuzz}/Cargo.toml (61%) rename {lib/ed-diff/fuzz => fuzz}/fuzz_targets/fuzz_ed.rs (97%) rename lib/normal-diff/fuzz/fuzz_targets/fuzz_patch.rs => fuzz/fuzz_targets/fuzz_normal.rs (97%) rename {lib/unified-diff/fuzz => fuzz}/fuzz_targets/fuzz_patch.rs (97%) create mode 100644 src/lib.rs diff --git a/Cargo.toml b/Cargo.toml index c0ae8bf..7f33327 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -6,6 +6,10 @@ description = "A CLI app for generating diff files" license = "MIT OR Apache-2.0" repository = "https://github.com/notriddle/diffutils" +[lib] +name = "diffutils" +path = "src/lib.rs" + [[bin]] name = "diffutils" path = "src/main.rs" diff --git a/lib/unified-diff/fuzz/.gitignore b/fuzz/.gitignore similarity index 100% rename from lib/unified-diff/fuzz/.gitignore rename to fuzz/.gitignore diff --git a/lib/unified-diff/fuzz/Cargo.toml b/fuzz/Cargo.toml similarity index 61% rename from lib/unified-diff/fuzz/Cargo.toml rename to fuzz/Cargo.toml index 5c6aafb..c1bebc9 100644 --- a/lib/unified-diff/fuzz/Cargo.toml +++ b/fuzz/Cargo.toml @@ -10,9 +10,7 @@ cargo-fuzz = true [dependencies] libfuzzer-sys = "0.3" - -[dependencies.unified-diff] -path = ".." +diffutils = { path = "../" } # Prevent this from interfering with workspaces [workspace] @@ -24,3 +22,17 @@ path = "fuzz_targets/fuzz_patch.rs" test = false doc = false +[[bin]] +name = "fuzz_normal" +path = "fuzz_targets/fuzz_normal.rs" +test = false +doc = false + + +[[bin]] +name = "fuzz_ed" +path = "fuzz_targets/fuzz_ed.rs" +test = false +doc = false + + diff --git a/lib/ed-diff/fuzz/fuzz_targets/fuzz_ed.rs b/fuzz/fuzz_targets/fuzz_ed.rs similarity index 97% rename from lib/ed-diff/fuzz/fuzz_targets/fuzz_ed.rs rename to fuzz/fuzz_targets/fuzz_ed.rs index 50b64c5..95b5d4d 100644 --- a/lib/ed-diff/fuzz/fuzz_targets/fuzz_ed.rs +++ b/fuzz/fuzz_targets/fuzz_ed.rs @@ -1,8 +1,7 @@ #![no_main] #[macro_use] extern crate libfuzzer_sys; -extern crate ed_diff; - +use diffutils::{unified_diff, ed_diff, normal_diff}; use std::fs::{self, File}; use std::io::Write; use std::process::Command; diff --git a/lib/normal-diff/fuzz/fuzz_targets/fuzz_patch.rs b/fuzz/fuzz_targets/fuzz_normal.rs similarity index 97% rename from lib/normal-diff/fuzz/fuzz_targets/fuzz_patch.rs rename to fuzz/fuzz_targets/fuzz_normal.rs index d21beff..7af9852 100644 --- a/lib/normal-diff/fuzz/fuzz_targets/fuzz_patch.rs +++ b/fuzz/fuzz_targets/fuzz_normal.rs @@ -1,7 +1,7 @@ #![no_main] #[macro_use] extern crate libfuzzer_sys; -extern crate normal_diff; +use diffutils::{unified_diff, normal_diff}; use std::fs::{self, File}; use std::io::Write; diff --git a/lib/unified-diff/fuzz/fuzz_targets/fuzz_patch.rs b/fuzz/fuzz_targets/fuzz_patch.rs similarity index 97% rename from lib/unified-diff/fuzz/fuzz_targets/fuzz_patch.rs rename to fuzz/fuzz_targets/fuzz_patch.rs index 1e8008b..f964a8b 100644 --- a/lib/unified-diff/fuzz/fuzz_targets/fuzz_patch.rs +++ b/fuzz/fuzz_targets/fuzz_patch.rs @@ -1,8 +1,7 @@ #![no_main] #[macro_use] extern crate libfuzzer_sys; -extern crate unified_diff; - +use diffutils::{unified_diff, normal_diff}; use std::fs::{self, File}; use std::io::Write; use std::process::Command; diff --git a/lib/normal-diff/fuzz/Cargo.toml b/lib/normal-diff/fuzz/Cargo.toml index 00f0553..4274bbe 100644 --- a/lib/normal-diff/fuzz/Cargo.toml +++ b/lib/normal-diff/fuzz/Cargo.toml @@ -3,7 +3,7 @@ name = "normal-diff-fuzz" version = "0.0.0" publish = false -edition = "2018" +edition = "2021" [package.metadata] cargo-fuzz = true @@ -11,16 +11,6 @@ cargo-fuzz = true [dependencies] libfuzzer-sys = "0.3" -[dependencies.normal-diff] -path = ".." - # Prevent this from interfering with workspaces [workspace] members = ["."] - -[[bin]] -name = "fuzz_patch" -path = "fuzz_targets/fuzz_patch.rs" -test = false -doc = false - diff --git a/src/lib.rs b/src/lib.rs new file mode 100644 index 0000000..64811e3 --- /dev/null +++ b/src/lib.rs @@ -0,0 +1,11 @@ + +pub mod unified_diff; +pub mod normal_diff; +pub mod ed_diff; +pub mod context_diff; + +// Re-export the public functions/types you need +pub use unified_diff::diff as unified_diff; +pub use normal_diff::diff as normal_diff; +pub use ed_diff::diff as ed_diff; +pub use context_diff::diff as context_diff; \ No newline at end of file diff --git a/src/main.rs b/src/main.rs index 8896074..15abb8e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -9,6 +9,7 @@ use std::env; use std::fs; use std::io::{self, Write}; + mod params; mod normal_diff; mod unified_diff;