W7IUT3ZVMFH77IGKLAL7WX7IVVTGTY3FKEJ3WHMP3KI37B6NENLQC 6YZAVBWU6E5FYOI5JGEIPXGZLIKAW6LS2AOFIQWEE5DMOPPCD5PQC IQDCHWCP47LL46EXQLQGHQPGFYIHQLMQBHA57RWJCIOX5UEUIQAQC SWWE2R6MVBX5CNM6X3WLXZTSRTU53PBJL7WJSFVF77XBPXDX4COAC WT3GA27PQ2AOAIGK65O3Q4DMX4AZDVNULBLRL6GF4QW6QCASUEAAC UB2ITZJSDADVINSQEZ3HA6PVGA7OA6JYFG5GMSO7Y7LOXJC4FI7AC EC3TVL4X6VZZVLOKUN63LC73ADPHBHMZO7QMDXGX2ZPURVI4B4XQC KT5UYXGKEEXUHURNOYFVIG7WQ3Y3SJZMM2TP4OSW6NXSXQ5XXRHAC ELG3UDT6OJFEYSJR7HZEC65IUWBMGPPPCXEW3CDW5T74R6KC5LIAC S2NVIFXRFER4SRA37WCT5XTXHDHAL5WIGGKY4A4XOTPLTKTZSRGQC let state = pijul::Repository::find_root(Some(path)).unwrap();let diff = diff(&state);let untracked_files = untracked_files(&state);
let repo = pijul::Repository::find_root(Some(path)).unwrap();let diff = diff(&repo);let untracked_files = untracked_files(&repo);
pub async fn record(state: &State, msg: String) {let repo = &state.repo;let channel = current_channel(&repo);let txn = repo.pristine.arc_txn_begin().unwrap();let mut channel = txn.read().load_channel(&channel).unwrap().unwrap();let mut extra = Vec::new();for h in repo.config.extra_dependencies.iter() {let (h, c) = txn.read().hash_from_prefix(h).unwrap();if txn.read().get_changeset(txn.read().changes(&*channel.read()), &c).unwrap().is_none(){panic!("Change {:?} (from .pijul/config) is not on channel {:?}",h,channel.read().name)}extra.push(h)}let header = todo!();let repo_path = CanonicalPathBuf::canonicalize(&repo.path).unwrap();}