Skip to content
/ dircmp Public

๐Ÿ“– Compare two folders for the similarities and differences

License

Notifications You must be signed in to change notification settings

jondot/dircmp

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

dircmp

github crates.io docs.rs build status

Compare two folders for the similarities and differences.

  • Two way comparison
  • File types (dir, symlink, etc.)
  • Content difference is based on hashing the files, so binaries are also good for comparison
  • Good for asserting in tests and for taking snapshot of difference or similarity

Dependency

[dependencies]
dircmp = "0.1.0"

Usage

Default usage:

let cmp = dircmp::Comparison::default();

let result = cmp
    .compare(
        Path::new("/tmp/a"),
        Path::new("/tmp/b"),
    )

Ignore components:

use regex::RegexSet;

let ignores = let set = RegexSet::new(&[
    r"foo",
    r"bar",
]).expect("should compile");

let cmp = dircmp::Comparison::new(ignores);

let result = cmp
    .compare(
        Path::new("/tmp/a"),
        Path::new("/tmp/b"),
    )

Copyright

Copyright (c) 2022 @jondot. See LICENSE for further details.

About

๐Ÿ“– Compare two folders for the similarities and differences

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages