Skip to main content

wapm_cli/data/lock/
mod.rs

1pub mod lockfile;
2pub mod lockfile_command;
3pub mod lockfile_module;
4pub mod migrate;
5
6pub static LOCKFILE_NAME: &str = "wapm.lock";
7
8static LOCKFILE_HEADER: &str = r#"# Lockfile v4
9# This file is automatically generated by Wapm.
10# It is not intended for manual editing. The schema of this file may change."#;
11
12use crate::data::manifest::MANIFEST_FILE_NAME;
13use std::path::Path;
14
15pub fn is_lockfile_out_of_date<P: AsRef<Path>>(directory: P) -> anyhow::Result<bool> {
16    use std::fs;
17    let wapm_lock_metadata = fs::metadata(directory.as_ref().join(LOCKFILE_NAME))?;
18    let wapm_toml_metadata = fs::metadata(directory.as_ref().join(MANIFEST_FILE_NAME))?;
19    let wapm_lock_last_modified = wapm_lock_metadata.modified()?;
20    let wapm_toml_last_modified = wapm_toml_metadata.modified()?;
21    Ok(wapm_lock_last_modified < wapm_toml_last_modified)
22}