- date_to_epoch, iso_week_info, weeks_in_month: replaced unsafe libc (mktime, strftime, localtime_r) with chrono NaiveDate and IsoWeek - epoch_to_local: replaced unsafe libc localtime_r with chrono Local - New util.rs with memory_subdir() helper: ensures subdir exists and propagates errors instead of silently ignoring them - Removed three duplicate agent_results_dir() definitions across digest.rs, consolidate.rs, enrich.rs - load_digest_files, parse_all_digest_links, find_consolidation_reports now return Result to properly propagate directory creation errors Co-Authored-By: Kent Overstreet <kent.overstreet@linux.dev>
14 lines
375 B
Rust
14 lines
375 B
Rust
// Shared utilities
|
|
|
|
use crate::store;
|
|
|
|
use std::fs;
|
|
use std::path::PathBuf;
|
|
|
|
/// Ensure a subdirectory of the memory dir exists and return its path.
|
|
pub(crate) fn memory_subdir(name: &str) -> Result<PathBuf, String> {
|
|
let dir = store::memory_dir().join(name);
|
|
fs::create_dir_all(&dir)
|
|
.map_err(|e| format!("create {}: {}", dir.display(), e))?;
|
|
Ok(dir)
|
|
}
|