Finer-grained detection of metadata on Windows

pmeunier
Jul 4, 2021, 8:43 PM
SAADQM3H4JAE2JE65Y6IHONZ57V3ZZ3IBBV72O3LRBTGWBPJWR3AC

Dependencies

  • [2] 3S6LU2U5 abstract out FileMetadata (de)serialistion
  • [3] I52XSRUH Massive cleanup, and simplification
  • [4] YN63NUZO Sanakirja 1.0
  • [5] ADPAFSMY Proper old metadata when recording
  • [6] SXEYMYF7 Fixing the bad changes in history (unfortunately, by rebooting).

Change contents

  • edit in libpijul/src/record.rs at line 1023
    [3.511386]
    [3.34470]
    let mut last_alive_meta = None;
  • replacement in libpijul/src/record.rs at line 1079
    [3.341][2.1229:1330]()
    let name_changed = (parent_name != name) || (new_meta != parent_meta && cfg!(not(windows)));
    [3.341]
    [3.34801]
    let name_changed = parent_name != name;
    let mut meta_changed = new_meta != parent_meta;
    if cfg!(windows) && !meta_changed {
    if let Some(m) = last_alive_meta {
    meta_changed = new_meta != m
    }
    }
  • replacement in libpijul/src/record.rs at line 1110
    [3.52475][3.514232:514306](),[3.514232][3.514232:514306]()
    debug!("change = {:?}", grandparent_changed || name_changed);
    [3.52475]
    [3.514306]
    debug!(
    "change = {:?} {:?} {:?}",
    grandparent_changed, name_changed, meta_changed
    );
  • replacement in libpijul/src/record.rs at line 1116
    [3.52541][3.514370:514429](),[3.514370][3.514370:514429]()
    if !grandparent_changed && !name_changed {
    [3.52541]
    [3.514429]
    if !grandparent_changed && !name_changed && !meta_changed {
  • replacement in libpijul/src/record.rs at line 1143
    [3.515807][3.515807:515867]()
    } else if grandparent_changed || name_changed {
    [3.515807]
    [3.515867]
    } else if grandparent_changed || name_changed || (meta_changed && cfg!(unix)) {
  • edit in libpijul/src/record.rs at line 1162
    [3.516857]
    [3.516857]
    last_alive_meta = Some(new_meta);