change

Crates.iochange
lib.rschange
version0.2.19
created_at2024-09-03 16:58:42.923247+00
updated_at2025-09-11 08:11:37.76297+00
descriptionscan dir find changed files, ignore files in .gitignore
homepagehttps://github.com/i18n-site/rust/tree/dev/change
repositoryhttps://github.com/i18n-site/rust.git
max_upload_size
id1361862
size39,864
i18n.site (i18nsite)

documentation

README

change

scan dir find changed files, ignore files in .gitignore

use std::path::PathBuf;

use aok::{OK, Result};
use static_init::constructor;
use tracing::info;

#[constructor(0)]
extern "C" fn init() {
  loginit::init()
}

#[test]
fn test() -> Result<()> {
  let root: PathBuf = env!("CARGO_MANIFEST_DIR").into();
  info!("root {}", root.display());
  let yml_fp = root.join("tests").join("state.yml");
  let scan = change::Scan::new(root, |build| build)?;
  let diff = scan.diff(&yml_fp)?;
  info!("has_change {}", diff.has_change);
  for (fp, _meta) in &diff.changed {
    info!("{}", fp);
  }
  diff.save()?;
  OK
}

About

This project is an open-source component of i18n.site ⋅ Internationalization Solution.

关于

本项目为 i18n.site ⋅ 国际化解决方案 的开源组件。

Commit count: 68

cargo fmt