Avoid converting between base32 and hash in pijul::commands::unrecord

[?]
Jan 8, 2021, 1:50 PM
EGSVRZJVIBSPYAI65A25CH5RYAGL4PUP3B24VSRUS3M4WIUCZWHAC

Dependencies

  • [2] CCLLB7OI Upgrading to Sanakirja 0.15 + version bump
  • [3] SLJ3OHD4 unrecord: show list of changes if none were given as arguments
  • [4] GHO6DWPI Refactoring iterators
  • [5] YAJAXIV5 Unrecording changes atomically
  • [6] SXEYMYF7 Fixing the bad changes in history (unfortunately, by rebooting).
  • [7] 5DVRL6MF Hard-unrecord
  • [8] I52XSRUH Massive cleanup, and simplification

Change contents

  • replacement in pijul/src/commands/unrecord.rs at line 48
    [3.486][3.1403:1459]()
    let hashes = if self.change_id.is_empty() {
    [3.486]
    [3.1459]
    let mut hashes = Vec::new();
    if self.change_id.is_empty() {
  • replacement in pijul/src/commands/unrecord.rs at line 66
    [3.2257][3.2257:2290]()
    let hashes = txn
    [3.2257]
    [2.11791]
    let hashes_ = txn
  • replacement in pijul/src/commands/unrecord.rs at line 71
    [3.2477][3.2477:2724]()
    let o = make_changelist(&repo.changes, &hashes, "unrecord")?;
    parse_changelist(&edit::edit_bytes(&o[..])?)
    .iter()
    .map(|h| h.to_base32())
    .collect::<_>()
    [3.2477]
    [3.2724]
    let o = make_changelist(&repo.changes, &hashes_, "unrecord")?;
    for h in parse_changelist(&edit::edit_bytes(&o[..])?).iter() {
    hashes.push((*h, txn.get_internal(*h)?.unwrap()))
    }
  • replacement in pijul/src/commands/unrecord.rs at line 76
    [3.2745][3.2745:2776]()
    self.change_id
    [3.2745]
    [3.2776]
    for c in self.change_id.iter() {
    let (hash, cid) = txn.hash_from_prefix(c)?;
    hashes.push((hash, cid))
    }
  • replacement in pijul/src/commands/unrecord.rs at line 83
    [3.2834][3.2834:2864](),[3.2864][3.439:506](),[3.439][3.439:506]()
    for c in hashes {
    let (hash, change_id) = txn.hash_from_prefix(&c)?;
    [3.2834]
    [3.1855]
    for (hash, change_id) in hashes {
  • replacement in pijul/src/commands/unrecord.rs at line 87
    [3.1985][3.2865:2920]()
    changes.push((hash, change_id, n, c));
    [3.1985]
    [3.648]
    changes.push((hash, change_id, n));
  • replacement in pijul/src/commands/unrecord.rs at line 91
    [3.751][3.751:804]()
    for (hash, change_id, _, c) in changes {
    [3.751]
    [3.96673]
    for (hash, change_id, _) in changes {
  • replacement in pijul/src/commands/unrecord.rs at line 105
    [3.742][3.742:776]()
    c
    [3.742]
    [3.776]
    hash.to_base32()
  • replacement in pijul/src/commands/unrecord.rs at line 110
    [3.960][3.960:995]()
    c,
    [3.960]
    [3.995]
    hash.to_base32(),