Fix: in repositories converted from the mono-root format, some deleted file name edges could be recorded twice in some cases
Dependencies
- [2]
RMDMAYRXAdding a root inode (aka supporting submodules) - [3]
LRIUJWCRRecording files with multiple names (some files were given no name at all) - [4]
ZXTHL45Oaddress clippy lints - [5]
YN63NUZOSanakirja 1.0 - [6]
SXEYMYF7Fixing the bad changes in history (unfortunately, by rebooting).
Change contents
- replacement in libpijul/src/record.rs at line 1515[4.51872]→[4.93:140](∅→∅),[4.512449]→[4.93:140](∅→∅),[4.140]→[4.512493:512522](∅→∅),[4.512493]→[4.512493:512522](∅→∅)
.or_insert_with(Vec::new);v.push(None).or_insert_with(HashSet::new);v.insert(None); - replacement in libpijul/src/record.rs at line 1520
.or_insert_with(Vec::new);v.push(Some(parent.introduced_by())).or_insert_with(HashSet::new);v.insert(Some(parent.introduced_by())); - edit in libpijul/src/record.rs at line 1574
// Because repos may have multiple roots there may be// a mismatch here. The "no change" case when// `parent_pos` is a root vertex is when// `grandparent.dest()` is also a root vertex. - replacement in libpijul/src/record.rs at line 1621
.or_insert_with(Vec::new);v.push(Some(grandparent.introduced_by())).or_insert_with(HashSet::new);v.insert(Some(grandparent.introduced_by())); - replacement in libpijul/src/record.rs at line 1655
.or_insert_with(Vec::new);v.push(Some(grandparent.introduced_by()));.or_insert_with(HashSet::new);v.insert(Some(grandparent.introduced_by())); - edit in libpijul/src/record.rs at line 1702
/// Is this vertex a (potentially deleted) "root vertex", i.e. a root/// of the file hierarchy? - replacement in libpijul/src/record.rs at line 1714
EdgeFlags::FOLDER | EdgeFlags::PARENT | EdgeFlags::PSEUDO | EdgeFlags::BLOCK,EdgeFlags::all(), - replacement in libpijul/src/record.rs at line 1716
let p = parent?.dest();let parent = parent?;if !parent.flag().contains(EdgeFlags::PARENT) {continue}let p = parent.dest();