diff --git a/bin/analyze-go b/bin/analyze-go index d87c9da..1f77054 100755 Binary files a/bin/analyze-go and b/bin/analyze-go differ diff --git a/cmd/analyze/constants.go b/cmd/analyze/constants.go index 5a00ac4..b38e8de 100644 --- a/cmd/analyze/constants.go +++ b/cmd/analyze/constants.go @@ -181,6 +181,12 @@ var skipSystemDirs = map[string]bool{ ".MobileBackups": true, // Time Machine local snapshots } +var defaultSkipDirs = map[string]bool{ + "nfs": true, // Network File System + "PHD": true, // Parallels Shared Folders / Home Directories + "Permissions": true, // Common macOS deny folder +} + var skipExtensions = map[string]bool{ ".go": true, ".js": true, diff --git a/cmd/analyze/scanner.go b/cmd/analyze/scanner.go index 5c85e77..248fd88 100644 --- a/cmd/analyze/scanner.go +++ b/cmd/analyze/scanner.go @@ -126,6 +126,11 @@ func scanPathConcurrent(root string, filesScanned, dirsScanned, bytesScanned *in } if child.IsDir() { + // Check if directory should be skipped based on user configuration + if defaultSkipDirs[child.Name()] { + continue + } + // In root directory, skip system directories completely if isRootDir && skipSystemDirs[child.Name()] { continue