Skip to content

Releases: Rakshat28/bdstorage

Dedupe Daemon

04 Apr 14:33

Choose a tag to compare

This minor release introduces native, fully automated background deduplication for Linux users, along with significant architectural improvements to how bdstorage manages continuous scanning.

New Features
Native Background Daemon (Linux): You can now set bdstorage to run continuously in the background to watch specific folders. It wakes up at customizable intervals, deduplicates your files automatically, and goes back to sleep.

Self-Generating Systemd Service: No more messing with external bash scripts. You can now install the background service directly via the CLI using sudo bdstorage daemon install --target --interval-secs .

Customizable Scan Intervals: Control exactly how often the daemon runs to balance instant deduplication with system battery/CPU performance.

v0.1.2

28 Feb 11:39

Choose a tag to compare

  1. Massive Performance Boost for Tiny Files: Completely refactored the internal database architecture to use a dedicated asynchronous writer thread and transaction batching.
  2. Benchmark Milestone: This optimization eliminated the disk I/O bottleneck for the embedded redb database, dropping deduplication latency on 15,000 tiny files from ~20.1 seconds down to ~211 milliseconds (nearly a 100x speedup), making bdstorage faster than both rmlint and jdupes in all tested scenarios.

v0.1.1

27 Feb 20:16

Choose a tag to compare

What's Changed

Features

  • Implemented metadata preservation (xattrs, permissions, timestamps) during the deduplication process (#25).

Bug Fixes & Reliability

  • Implemented atomic vault renaming to prevent master file corruption during unexpected interruptions (#29).
  • Fixed a critical safety issue to ensure the master file is fully restored if a subsequent reflink operation fails (#27).
  • Fixed and improved the hardlink fallback logic for filesystems that do not support CoW reflinks (#24).

Testing & CI

  • Hardened the integration test suite to strictly validate sparse files, bit-rot simulations, and CI runner isolation (#30).