15 releases

0.5.0 Jun 23, 2022
0.4.0 Sep 16, 2019
0.3.3 Aug 27, 2019
0.2.6 May 31, 2019
0.1.1 Sep 4, 2018

#287 in Algorithms

Download history 1023/week @ 2025-03-11 1705/week @ 2025-03-18 2088/week @ 2025-03-25 1123/week @ 2025-04-01 1651/week @ 2025-04-08 1309/week @ 2025-04-15 2187/week @ 2025-04-22 1303/week @ 2025-04-29 1104/week @ 2025-05-06 984/week @ 2025-05-13 1294/week @ 2025-05-20 1018/week @ 2025-05-27 1037/week @ 2025-06-03 1074/week @ 2025-06-10 1399/week @ 2025-06-17 1876/week @ 2025-06-24

5,548 downloads per month

Apache-2.0

310KB
6.5K SLoC

Dogear

Dogear is a library that implements bookmark tree merging for Firefox Sync. It takes two trees—a valid, consistent local tree, and a possibly inconsistent remote tree—and produces a complete merged tree, with all conflicts and inconsistencies resolved.

Dogear implements the merge algorithm only; it doesn't handle syncing, storage, or application. It's up to the crate that embeds Dogear to store local and incoming bookmarks, describe how to build a tree from a storage backend, persist the merged tree back to storage, and upload records for changed bookmarks.

Requirements

  • Rust 1.31.0 or higher

Updating this package

Once a new version of Dogear is ready to release. The new version will need to be published to crates.io. Dogear follows the documentation detailed in the Cargo book.

Steps to publish a new verison

  1. Bump the version in the Cargo.toml file
  2. Run cargo publish --dry-run
    • Validate it does what you want it to do
  3. Run cargo publish and follow the steps cargo provides

Dependencies

~130KB