Hi HN! I just released dupeSweep, a duplicate file finder I built after getting frustrated with existing tools that permanently delete files without confirmation.
Key features:
• Two-phase hashing (quick hash first, full SHA256 on collision) - fast AND accurate
• Full undo support with verification - files never permanently deleted
• GUI and CLI interfaces (no args launches GUI)
• Symlink/hardlink safety - prevents data loss from cycles and false positives
• Collision-resistant trash naming with backup/recovery
• Confirmation prompts for all deletions
Available in two implementations:
• Python: Pure stdlib, no dependencies, 21 tests
• Go: Single binary, 20x faster, 16 tests
Also on PyPI: `pip install dupesweep`
I'd love feedback on the safety features especially - spent a lot of time on undo verification, hardlink detection via inode tracking, and symlink cycle prevention.
---
Hi HN! I just released dupeSweep, a duplicate file finder I built after getting frustrated with existing tools that permanently delete files without confirmation.
Key features: • Two-phase hashing (quick hash first, full SHA256 on collision) - fast AND accurate • Full undo support with verification - files never permanently deleted • GUI and CLI interfaces (no args launches GUI) • Symlink/hardlink safety - prevents data loss from cycles and false positives • Collision-resistant trash naming with backup/recovery • Confirmation prompts for all deletions
Available in two implementations: • Python: Pure stdlib, no dependencies, 21 tests • Go: Single binary, 20x faster, 16 tests
Also on PyPI: `pip install dupesweep`
I'd love feedback on the safety features especially - spent a lot of time on undo verification, hardlink detection via inode tracking, and symlink cycle prevention.
Tech stack: Python 3.7+/tkinter, Go 1.21+/Fyne
GitHub: https://github.com/larryste1/dupesweep PyPI: https://pypi.org/project/dupesweep/