Fixing a bug in patch download
Dependencies
- [2]
C3L2TLQWWhen downloading changes, check whether we have their dependencies and download them too - [3]
ZWVYH7WPPulling local tags - [4]
XQHABMC2Do not block when there is no patch to pull - [5]
5QTMRUXNFixing a race condition between progress bars - [6]
HXEIH4UQPulling more than 100 changes at once - [7]
SXEYMYF7Fixing the bad changes in history (unfortunately, by rebooting). - [8]
X6YFD4WVDo not download changes if we already have them - [9]
BNPSVXICFriendlier progress bars - [10]
DO2Y5TY5Tag synchronisation - [11]
TKEVOH7HFixing a bug when downloading changes, and making change download more efficient (more async) - [12]
MU5GSJAWPartial push and pull (WARNING: breaks the existing protocol) - [13]
ZDK3GNDBTag transactions (including a massive refactoring of errors)
Change contents
- edit in pijul/src/remote/mod.rs at line 1162
let mut to_download = HashSet::with_capacity(to_apply.len()); - edit in pijul/src/remote/mod.rs at line 1163
let (send_ready, mut recv_ready) = tokio::sync::mpsc::channel(100); - edit in pijul/src/remote/mod.rs at line 1166
debug!("to_apply {:?}", h); - edit in pijul/src/remote/mod.rs at line 1174[3.16468]→[3.298:408](∅→∅),[3.408]→[2.95:125](∅→∅),[2.125]→[3.408:448](∅→∅),[3.408]→[3.408:448](∅→∅)
}if std::fs::metadata(&change_path_).is_err() {hash_send.send(*h)?;waiting += 1;to_download.insert(*h); - edit in pijul/src/remote/mod.rs at line 1175
hash_send.send(*h)?;waiting += 1; - replacement in pijul/src/remote/mod.rs at line 1180
let (u, mut to_apply) = self.download_changes_rec(repo, hash_send, recv, pro_a, waiting)let u = self.download_changes_rec(repo, hash_send, recv, send_ready, pro_a, waiting) - replacement in pijul/src/remote/mod.rs at line 1186
while let Some(h) = to_apply.recv().await {while let Some(h) = recv_ready.recv().await { - edit in pijul/src/remote/mod.rs at line 1248
send_ready: tokio::sync::mpsc::Sender<CS>, - replacement in pijul/src/remote/mod.rs at line 1251
) -> Result<(tokio::task::JoinHandle<Result<(), anyhow::Error>>,tokio::sync::mpsc::Receiver<CS>,),anyhow::Error,> {let (send_ready, recv_ready) = tokio::sync::mpsc::channel(100);) -> Result<tokio::task::JoinHandle<Result<(), anyhow::Error>>, anyhow::Error> { - replacement in pijul/src/remote/mod.rs at line 1305
Ok((t, recv_ready))Ok(t) - replacement in pijul/src/remote/mod.rs at line 1345
let (u, mut recv_ready) = self.download_changes_rec(repo, send_hash, recv_signal, pro_n, waiting)let (send_ready, mut recv_ready) = tokio::sync::mpsc::channel(100);let u = self.download_changes_rec(repo, send_hash, recv_signal, send_ready, pro_n, waiting)