diff --git a/src/snapshot_middleware/csv.rs b/src/snapshot_middleware/csv.rs index b014b6ba..48288a5b 100644 --- a/src/snapshot_middleware/csv.rs +++ b/src/snapshot_middleware/csv.rs @@ -109,27 +109,17 @@ pub fn syncback_csv<'sync>( if !meta.is_empty() { let parent = snapshot.path.parent_err()?; - let meta_stem = snapshot.middleware - .and_then(|mw| { - let ext = format!(".{}", crate::syncback::extension_for_middleware(mw)); - snapshot.path.file_name() - .and_then(|n| n.to_str()) - .and_then(|s| s.strip_suffix(ext.as_str())) - .map(str::to_owned) - }) - .unwrap_or_else(|| { - let name = &new_inst.name; - let base = if crate::syncback::validate_file_name(name).is_err() { - crate::syncback::slugify_name(name) - } else { - name.clone() - }; - if base.to_lowercase() == "init" { - format!("_{base}") - } else { - base - } - }); + let instance_name = &new_inst.name; + let base = if crate::syncback::validate_file_name(instance_name).is_err() { + crate::syncback::slugify_name(instance_name) + } else { + instance_name.clone() + }; + let meta_stem = if base.to_lowercase() == "init" { + format!("_{base}") + } else { + base + }; fs_snapshot.add_file( parent.join(format!("{meta_stem}.meta.json")), serde_json::to_vec_pretty(&meta).context("cannot serialize metadata")?, diff --git a/src/snapshot_middleware/lua.rs b/src/snapshot_middleware/lua.rs index 06c6855f..560523b4 100644 --- a/src/snapshot_middleware/lua.rs +++ b/src/snapshot_middleware/lua.rs @@ -158,27 +158,17 @@ pub fn syncback_lua<'sync>( if !meta.is_empty() { let parent_location = snapshot.path.parent_err()?; - let meta_stem = snapshot.middleware - .and_then(|mw| { - let ext = format!(".{}", crate::syncback::extension_for_middleware(mw)); - snapshot.path.file_name() - .and_then(|n| n.to_str()) - .and_then(|s| s.strip_suffix(ext.as_str())) - .map(str::to_owned) - }) - .unwrap_or_else(|| { - let name = &snapshot.new_inst().name; - let base = if crate::syncback::validate_file_name(name).is_err() { - crate::syncback::slugify_name(name) - } else { - name.clone() - }; - if base.to_lowercase() == "init" { - format!("_{base}") - } else { - base - } - }); + let instance_name = &snapshot.new_inst().name; + let base = if crate::syncback::validate_file_name(instance_name).is_err() { + crate::syncback::slugify_name(instance_name) + } else { + instance_name.clone() + }; + let meta_stem = if base.to_lowercase() == "init" { + format!("_{base}") + } else { + base + }; fs_snapshot.add_file( parent_location.join(format!("{meta_stem}.meta.json")), serde_json::to_vec_pretty(&meta).context("cannot serialize metadata")?, diff --git a/src/snapshot_middleware/txt.rs b/src/snapshot_middleware/txt.rs index 9bb5dafa..5b024a14 100644 --- a/src/snapshot_middleware/txt.rs +++ b/src/snapshot_middleware/txt.rs @@ -58,27 +58,17 @@ pub fn syncback_txt<'sync>( if !meta.is_empty() { let parent = snapshot.path.parent_err()?; - let meta_stem = snapshot.middleware - .and_then(|mw| { - let ext = format!(".{}", crate::syncback::extension_for_middleware(mw)); - snapshot.path.file_name() - .and_then(|n| n.to_str()) - .and_then(|s| s.strip_suffix(ext.as_str())) - .map(str::to_owned) - }) - .unwrap_or_else(|| { - let name = &new_inst.name; - let base = if crate::syncback::validate_file_name(name).is_err() { - crate::syncback::slugify_name(name) - } else { - name.clone() - }; - if base.to_lowercase() == "init" { - format!("_{base}") - } else { - base - } - }); + let instance_name = &new_inst.name; + let base = if crate::syncback::validate_file_name(instance_name).is_err() { + crate::syncback::slugify_name(instance_name) + } else { + instance_name.clone() + }; + let meta_stem = if base.to_lowercase() == "init" { + format!("_{base}") + } else { + base + }; fs_snapshot.add_file( parent.join(format!("{meta_stem}.meta.json")), serde_json::to_vec_pretty(&meta).context("could not serialize metadata")?,