Someone wanting to detect duplicates is often not interested in hidden files; they are often noise, build artifacts, etc. I think a sane default is to exclude hidden files, which is what this PR does. It also adds an option to include them (with -H or --include-hidden).
Another small change I've made is to pass the Args struct around wherever it is needed instead of passing all options as individual function arguments, because the function signatures were getting unwieldy. We probably want to change the Args struct to bundle detection config (include hidden, max depth, excluded directories, number of workers) from other concerns (raw root path, use absolute path). I might do this in a follow up.
Someone wanting to detect duplicates is often not interested in hidden files; they are often noise, build artifacts, etc. I think a sane default is to exclude hidden files, which is what this PR does. It also adds an option to include them (with -H or --include-hidden).
Another small change I've made is to pass the Args struct around wherever it is needed instead of passing all options as individual function arguments, because the function signatures were getting unwieldy. We probably want to change the Args struct to bundle detection config (include hidden, max depth, excluded directories, number of workers) from other concerns (raw root path, use absolute path). I might do this in a follow up.