3.0.0 • Published 6 months ago

rsync-utils v3.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
6 months ago

♻️ Rsync

A pure TypeScript implementation of the rsync algorithm

Installation

npm install @dldc/rsync

Usage

import { prepare, diff, apply } from '@dldc/rsync';

const checksum = prepare(destFile); // you can specify block size as second argument (default: 1024)
// send checksum to source
const patches = diff(sourceFile, checksum);
// send patches to dest
const syncedFile = apply(destFile, patches);

Performance

This package was not designed to be fast. Since it's implemented fully in TypeScript, it's not as fast as the C implementation of rsync. I tried to use the best practices to make it less slow but I did not benchmark it 🤷.

Dependencies 🪶

This package has a single dependency @dldc/erreur to define custom errors.