address clippy lints
[?]
Nov 30, 2020, 7:57 PM
WZVCLZKY34KQBQU6YBGJLQCDADBQ67LQVDNRVCMQVY3O3C3EIWSQCDependencies
- [2]
I52XSRUHMassive cleanup, and simplification - [3]
H23LO7U7a few more clippy lints addressed - [4]
ZXTHL45Oaddress clippy lints - [5]
76PCXGMLPushing to, and pulling from the local repository - [6]
Q45QHPO4Feedback on network stuff - [7]
KVBLRDOUConcatenating edits with order conflict resolutions (if relevant), and parsing the text format of the result - [8]
AEPEFS7OWrite help for each argument - [9]
SXEYMYF7Fixing the bad changes in history (unfortunately, by rebooting). - [10]
UNZXTNSJChange text format: order dependencies in the order they were on the channel at record time - [11]
3YDPHBANaddress non-controversial clippy lints - [12]
KDF6FJRVbigger clippy refactors - [13]
QE64ATLZFixing asynchronicity problems in SSH - [14]
KWAMD2KRA few fixes in the documentation comments - [15]
4H2XTVJ2Fix some mistakes in the docs - [16]
74HX2XZDCleanup and debugging - [17]
ISQJRA3OFixing the parsing of zombie resurrection in the change text format - [18]
VQPAUKBQchannel switch as an alias to reset - [19]
UDHP4ZVBFixing SSH asynchronicity issues - [20]
NLGQAH4HCredit and reset relative to current directory instead of the root - [21]
BXD3IQYNFixing --features git - [22]
7UPL3Y2AUnrecord: don't restore the same unrecorded file deletion twice in the inodes and tree tables
Change contents
- replacement in pijul/src/remote/ssh.rs at line 50
let cap = if let Some(cap) = ADDRESS.captures(addr) {cap} else {return None;};let cap = ADDRESS.captures(addr)?; - edit in pijul/src/remote/ssh.rs at line 257
type BoxFuture<T> = Pin<Box<dyn futures::future::Future<Output = T> + Send>>; - replacement in pijul/src/remote/ssh.rs at line 262
type FutureUnit = Pin<Box<dyn futures::future::Future<Output = Result<(Self, Session), anyhow::Error>> + Send>,>;type FutureUnit = BoxFuture<Result<(Self, Session), anyhow::Error>>; - replacement in pijul/src/remote/ssh.rs at line 584
prefix.unwrap_or(String::new())prefix.unwrap_or_else(String::new) - replacement in pijul/src/remote/mod.rs at line 149
match *self {RemoteRepo::Ssh(ref mut s) => s.finish().await?,_ => {}if let RemoteRepo::Ssh(s) = self {s.finish().await? - replacement in pijul/src/remote/mod.rs at line 667
match *self {RemoteRepo::Ssh(ref mut s) => {return s.clone_channel(repo, txn, local_channel, lazy).await}_ => {}if let RemoteRepo::Ssh(s) = self {return s.clone_channel(repo, txn, local_channel, lazy).await; - replacement in pijul/src/commands/upgrade.rs at line 27
let e = channels.entry(name.to_string()).or_insert(Vec::new());let e = channels.entry(name.to_string()).or_insert_with(Vec::new); - replacement in pijul/src/commands/reset.rs at line 70
if self.channel.as_ref().map(|x| x.as_str()) == Some(current_channel) {if self.channel.as_deref() == Some(current_channel) { - replacement in pijul/src/commands/record.rs at line 133
message: self.message.clone().unwrap_or(String::new()),message: self.message.clone().unwrap_or_else(String::new), - replacement in pijul/src/commands/pushpull.rs at line 163
return Err((crate::Error::AmbiguousPath { path: path.clone() }).into());return Err((crate::Error::AmbiguousPath { path }).into()); - replacement in pijul/src/commands/pushpull.rs at line 314
return Err((crate::Error::AmbiguousPath { path: path.clone() }).into());return Err((crate::Error::AmbiguousPath { path }).into()); - replacement in pijul/src/commands/protocol.rs at line 43
Err((Error::NoSuchChannel {Err(Error::NoSuchChannel { - edit in pijul/src/commands/protocol.rs at line 46
.into()) - replacement in pijul/src/commands/protocol.rs at line 61
let o = o.lock();let mut o = BufWriter::new(o.lock()); - replacement in pijul/src/commands/protocol.rs at line 63
let mut o = BufWriter::new(o); - replacement in pijul/src/commands/protocol.rs at line 76
if n < pos {continue;} else if n > pos {writeln!(o, "-")?;break;} else {writeln!(o, "{} {}", n, m.to_base32())?;break;match n.cmp(&pos) {std::cmp::Ordering::Less => continue,std::cmp::Ordering::Greater => {writeln!(o, "-")?;break;}std::cmp::Ordering::Equal => {writeln!(o, "{} {}", n, m.to_base32())?;break;} - edit in pijul/src/commands/protocol.rs at line 88
} else if let Some((n, (_, m))) = txn.reverse_log(&channel.borrow(), None).next() {writeln!(o, "{} {}", n, m.to_base32())? - replacement in pijul/src/commands/protocol.rs at line 91
if let Some((n, (_, m))) = txn.reverse_log(&channel.borrow(), None).next() {writeln!(o, "{} {}", n, m.to_base32())?} else {writeln!(o, "-")?;}writeln!(o, "-")?; - replacement in pijul/src/commands/protocol.rs at line 126
writeln!(o, "")?;writeln!(o)?; - replacement in pijul/src/commands/init.rs at line 21
let channel_name = self.channel.unwrap_or(crate::DEFAULT_CHANNEL.to_string());let channel_name = self.channel.unwrap_or_else(|| crate::DEFAULT_CHANNEL.to_string()); - replacement in libpijul/src/unrecord/working_copy.rs at line 64
.filter(|e| e.flag.contains(EdgeFlags::PARENT | EdgeFlags::FOLDER)).next().find(|e| e.flag.contains(EdgeFlags::PARENT | EdgeFlags::FOLDER)) - replacement in libpijul/src/unrecord/mod.rs at line 81
if br.name != channel.name {if txn.get_changeset(&br.changes, change_id, None).is_some() {return false;}if br.name != channel.name && txn.get_changeset(&br.changes, change_id, None).is_some() {return false; - replacement in libpijul/src/unrecord/mod.rs at line 117
match *change {Atom::EdgeMap(ref n) => {remove_zombies(txn, channel, change_id, n)?;repair_edges_context(changes,txn,channel,&mut ws.apply.missing_context,change_id,n,)?}_ => {}if let Atom::EdgeMap(ref n) = *change {remove_zombies(txn, channel, change_id, n)?;repair_edges_context(changes,txn,channel,&mut ws.apply.missing_context,change_id,n,)? - edit in libpijul/src/unrecord/mod.rs at line 129
- replacement in libpijul/src/unrecord/mod.rs at line 226
if new_vertex.flag.contains(EdgeFlags::FOLDER) {if new_vertex.down_context.is_empty() {// let mut f = std::fs::File::create("debug_unrecord")?;// txn.debug(&channel, &mut f).unwrap();if new_vertex.flag.contains(EdgeFlags::FOLDER) && new_vertex.down_context.is_empty() {// let mut f = std::fs::File::create("debug_unrecord")?;// txn.debug(&channel, &mut f).unwrap(); - replacement in libpijul/src/unrecord/mod.rs at line 230
working_copy::undo_file_addition(txn, change_id, new_vertex)?;}working_copy::undo_file_addition(txn, change_id, new_vertex)?; - replacement in libpijul/src/unrecord/mod.rs at line 420
if !follow {if e.introduced_by != change_id {continue;}if !follow && e.introduced_by != change_id {continue; - replacement in libpijul/src/unrecord/mod.rs at line 452
.filter(|e| e.dest == v.start_pos()).next().find(|e| e.dest == v.start_pos()) - replacement in libpijul/src/tests/conflict.rs at line 78
(&mut conflict[2..9]).sort();(&mut conflict[2..9]).sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 267
(&mut conflict[2..7]).sort();(&mut conflict[2..7]).sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 331
(&mut conflict[2..6]).sort();(&mut conflict[2..6]).sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 636
lines2.sort();lines2.sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 638
lines3.sort();lines3.sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 754
lines2.sort();lines2.sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 756
lines3.sort();lines3.sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 975
(&mut conflict[2..5]).sort();(&mut conflict[2..5]).sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 1185
buf == &[buf == [ - replacement in libpijul/src/tests/conflict.rs at line 1198
== &[== [ - replacement in libpijul/src/tests/conflict.rs at line 1233
buf == &[buf == [ - replacement in libpijul/src/tests/conflict.rs at line 1246
== &[== [ - replacement in libpijul/src/tests/conflict.rs at line 1394
lines.sort();lines.sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 1396
lines2.sort();lines2.sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 1539
lines.sort();lines.sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 1541
lines2.sort();lines2.sort_unstable(); - replacement in libpijul/src/tests/conflict.rs at line 2554
fn check_tree_inodes<'env, T: TxnT>(txn: &T, channel: &Channel<T>) {fn check_tree_inodes<T: TxnT>(txn: &T, channel: &Channel<T>) { - replacement in libpijul/src/small_string.rs at line 43
assert_eq!(s0.clone(), s1);assert_eq!(s0, s1); - replacement in libpijul/src/record.rs at line 798
} else {if vertex.start == vertex.end {debug!("delete_recursively {:?}", vertex);// Killing an inode.if !self.deleted_vertices.insert(vertex.start_pos()) {continue;}if let Some(inode) = txn.get_revinodes(vertex.start_pos(), None) {debug!("delete_recursively, vertex = {:?}, inode = {:?}",vertex, inode);self.recorded_inodes.insert(inode, vertex.start_pos().to_option());self.rec.updatables.insert(self.rec.actions.len(), InodeUpdate::Deleted { inode });}self.delete_inode_vertex(txn, channel, vertex, vertex.start_pos(), full_path)} else if vertex.start == vertex.end {debug!("delete_recursively {:?}", vertex);// Killing an inode.if !self.deleted_vertices.insert(vertex.start_pos()) {continue;}if let Some(inode) = txn.get_revinodes(vertex.start_pos(), None) {debug!("delete_recursively, vertex = {:?}, inode = {:?}",vertex, inode);self.recorded_inodes.insert(inode, vertex.start_pos().to_option());self.rec.updatables.insert(self.rec.actions.len(), InodeUpdate::Deleted { inode }); - edit in libpijul/src/record.rs at line 815
self.delete_inode_vertex(txn, channel, vertex, vertex.start_pos(), full_path) - replacement in libpijul/src/pristine/sanakirja.rs at line 1010
self.open_channels.borrow_mut().insert(name.clone(), br.clone());self.open_channels.borrow_mut().insert(name, br.clone()); - replacement in libpijul/src/pristine/mod.rs at line 349
let curs = txn.cursor_graph(graph, Some((k, v)));curstxn.cursor_graph(graph, Some((k, v))) - replacement in libpijul/src/pristine/mod.rs at line 358
let curs = T::cursor_graph_ref(txn, graph, Some((k, v)));cursT::cursor_graph_ref(txn, graph, Some((k, v))) - replacement in libpijul/src/pristine/mod.rs at line 462
.filter(|e| e.flag.contains(EdgeFlags::BLOCK) || e.flag.contains(EdgeFlags::FOLDER)).next().is_some().any(|e| e.flag.contains(EdgeFlags::BLOCK) || e.flag.contains(EdgeFlags::FOLDER)) - replacement in libpijul/src/pristine/mod.rs at line 635
if v.flag.contains(EdgeFlags::PARENT) && !v.flag.contains(EdgeFlags::DELETED) {if !reachable.contains(&k) {let file = find_file(txn, &channel, k, &mut stack, &mut visited);alive_unreachable.insert(k, file);}if v.flag.contains(EdgeFlags::PARENT)&& !v.flag.contains(EdgeFlags::DELETED)&& !reachable.contains(&k){let file = find_file(txn, &channel, k, &mut stack, &mut visited);alive_unreachable.insert(k, file); - replacement in libpijul/src/pristine/channel_dump.rs at line 396
let mut e = e.clone();let mut e = e; - replacement in libpijul/src/path.rs at line 120
assert!(!extra.starts_with("/")); // Make sure the extra path is relative.if !path.ends_with("/") && !path.is_empty() {assert!(!extra.starts_with('/')); // Make sure the extra path is relative.if !path.ends_with('/') && !path.is_empty() { - replacement in libpijul/src/output/mod.rs at line 95
.filter(|e| !e.flag.contains(EdgeFlags::PARENT)).next().find(|e| !e.flag.contains(EdgeFlags::PARENT)) - replacement in libpijul/src/output/mod.rs at line 108
let v = files.entry(name).or_insert(Vec::new());let v = files.entry(name).or_insert_with(Vec::new); - replacement in libpijul/src/lib.rs at line 388
let cid = if let Some(c) = pristine::TxnT::get_internal(self, hash) {c} else {return None;};let cid = pristine::TxnT::get_internal(self, hash)?; - replacement in libpijul/src/fs.rs at line 305
if is_dir {if !txn.del_tree(file_id.as_file_id(), Some(inode))? {debug!("rec_delete (is_dir): {:?} {:?} not present",file_id.as_file_id(),inode);}if is_dir && !txn.del_tree(file_id.as_file_id(), Some(inode))? {debug!("rec_delete (is_dir): {:?} {:?} not present",file_id.as_file_id(),inode); - replacement in libpijul/src/fs.rs at line 410
if k.basename.len() > 0 {if !k.basename.is_empty() { - replacement in libpijul/src/find_alive.rs at line 90
if next_file.is_none() {if iter_adjacent(if next_file.is_none()&& iter_adjacent( - replacement in libpijul/src/find_alive.rs at line 102
}) {alive.insert(vertex);}}){alive.insert(vertex); - replacement in libpijul/src/diff/mod.rs at line 22
if self.before_end_marker {if !b.last && b.l.last() == Some(&b'\n') {return &b.l[..b.l.len() - 1] == self.l;}if self.before_end_marker && !b.last && b.l.last() == Some(&b'\n') {return &b.l[..b.l.len() - 1] == self.l; - replacement in libpijul/src/diff/mod.rs at line 25
if b.before_end_marker {if !self.last && self.l.last() == Some(&b'\n') {return &self.l[..self.l.len() - 1] == b.l;}if b.before_end_marker && !self.last && self.l.last() == Some(&b'\n') {return &self.l[..self.l.len() - 1] == b.l; - replacement in libpijul/src/diff/mod.rs at line 48
if std::str::from_utf8(&d.contents_a).is_err() || std::str::from_utf8(&b).is_err() {if d.contents_a != b {self.diff_binary(changes, txn, channel, path, inode, a, &b);return Ok(());}if (std::str::from_utf8(&d.contents_a).is_err() || std::str::from_utf8(&b).is_err())&& d.contents_a != b{self.diff_binary(changes, txn, channel, path, inode, a, &b);return Ok(()); - replacement in libpijul/src/change.rs at line 170
deps.insert(dep.clone());deps.insert(*dep); - replacement in libpijul/src/change.rs at line 319
} else {if internal_deps_.remove(&id) {debug!("removing dep {:?}", id);}} else if internal_deps_.remove(&id) {debug!("removing dep {:?}", id); - replacement in libpijul/src/change.rs at line 1174
let mut offsets = Offsets::default();offsets.version = VERSION;let version = VERSION; - replacement in libpijul/src/change.rs at line 1179
offsets.hashed_len = hashed.len() as u64;let hashed_len = hashed.len() as u64; - edit in libpijul/src/change.rs at line 1185
- replacement in libpijul/src/change.rs at line 1193
offsets.unhashed_len = unhashed.len() as u64;let unhashed_len = unhashed.len() as u64; - replacement in libpijul/src/change.rs at line 1198
offsets.unhashed_off = Self::OFFSETS_SIZE + hashed_comp.len() as u64;let unhashed_off = Self::OFFSETS_SIZE + hashed_comp.len() as u64; - replacement in libpijul/src/change.rs at line 1201
offsets.contents_off = offsets.unhashed_off + unhashed_comp.len() as u64;let contents_off = unhashed_off + unhashed_comp.len() as u64; - replacement in libpijul/src/change.rs at line 1205
offsets.contents_len = self.contents.len() as u64;offsets.total = offsets.contents_off + contents_comp.len() as u64;let contents_len = self.contents.len() as u64;let total = contents_off + contents_comp.len() as u64;let offsets = Offsets {version,hashed_len,unhashed_off,unhashed_len,contents_off,contents_len,total,}; - replacement in libpijul/src/change.rs at line 2107
if h.starts_with("+") {if h.starts_with('+') { - replacement in libpijul/src/change.rs at line 2120
if h.starts_with("+") {if h.starts_with('+') { - replacement in libpijul/src/change.rs at line 2124
} else if h.starts_with("\\") {} else if h.starts_with('\\') { - replacement in libpijul/src/change.rs at line 2232
} else if h.starts_with("\\") {} else if h.starts_with('\\') { - replacement in libpijul/src/change.rs at line 2268
} else if h.starts_with("\\") {} else if h.starts_with('\\') { - replacement in libpijul/src/change.rs at line 2394
Some(rec) => rec.iter().any(|e| {if let Atom::NewVertex(_) = e {true} else {false}}),Some(rec) => rec.iter().any(|e| matches!(e, Atom::NewVertex(_))), - replacement in libpijul/src/change.rs at line 2452
for edge in s.split(",") {for edge in s.split(',') { - replacement in libpijul/src/apply.rs at line 947
match atom {Atom::EdgeMap(ref n) => {for e in n.edges.iter() {if e.flag.contains(EdgeFlags::DELETED) {trace!("repairing context deleted {:?}", e);repair_context_deleted(txn,channel,&mut ws.missing_context,n.inode,change_id,|h| change.knows(&h),e,)?}if let Atom::EdgeMap(ref n) = atom {for e in &n.edges {if e.flag.contains(EdgeFlags::DELETED) {trace!("repairing context deleted {:?}", e);repair_context_deleted(txn,channel,&mut ws.missing_context,n.inode,change_id,|h| change.knows(&h),e,)? - edit in libpijul/src/apply.rs at line 962
_ => {} - replacement in libpijul/src/apply.rs at line 1046
let ref mut stack = ws.up_context;let stack = &mut ws.up_context; - replacement in libpijul/src/apply.rs at line 1049
let ref mut visited = ws.parents;let visited = &mut ws.parents; - replacement in libpijul/src/alive/tarjan.rs at line 20
let ref mut l = self[n_l];let l = &mut self[n_l]; - replacement in libpijul/src/alive/tarjan.rs at line 25
index = index + 1;index += 1; - replacement in libpijul/src/alive/tarjan.rs at line 50
self[n_p].flags = self[n_p].flags ^ Flags::ONSTACK;self[n_p].flags ^= Flags::ONSTACK; - replacement in libpijul/src/alive/retrieve.rs at line 93
.filter(|e| {.any(|e| { - replacement in libpijul/src/alive/retrieve.rs at line 96
}).next().is_some(){}) { - replacement in libpijul/src/alive/mod.rs at line 79
let ref line = self[i];let line = &self[i]; - replacement in libpijul/src/alive/dfs.rs at line 208
(return_value.unwrap_or(Path::new()), forward_scc)(return_value.unwrap_or_else(Path::new), forward_scc) - replacement in libpijul/src/alive/dfs.rs at line 254
d.sort();d.sort_unstable(); - replacement in libpijul/src/alive/dfs.rs at line 295
.map(|&x| x).copied()