edit in pijul-remote/src/lib.rs at line 1357
edit in pijul-remote/src/lib.rs at line 1448
− .download_changes_rec(
− repo,
− send_hash,
− recv_signal,
− send_ready,
− pro_n,
− waiting,
− asked,
− )
edit in pijul-remote/src/http.rs at line 45
[7.24470]→[7.3726:3815](∅→∅) − tokio::fs::create_dir_all(&path.parent().unwrap())
− .await
− .unwrap();
resolve order conflict in pijul-remote/src/http.rs at line 45
edit in pijul-remote/src/http.rs at line 168
[7.1410]→[5.536:562](∅→∅) edit in pijul-remote/src/http.rs at line 175
[7.1626]→[7.3917:3944](∅→∅) resolve order conflict in pijul-remote/src/http.rs at line 175
edit in pijul-remote/src/http.rs at line 542
[7.1930]→[5.591:682](∅→∅) − pub async fn prove(&mut self, key: libpijul::key::SKey) -> Result<(), anyhow::Error> {
edit in pijul-identity/src/lib.rs at line 134
− if let Ok(password) = keyring::Entry::new("pijul", name).and_then(|x| x.get_password())
− {
resolve order conflict in pijul-identity/src/lib.rs at line 134
edit in pijul-identity/src/lib.rs at line 151
[7.4743]→[7.141:282](∅→∅) − if let Err(e) =
− keyring::Entry::new("pijul", name).and_then(|x| x.set_password(&password_attempt))
− {
resolve order conflict in pijul-identity/src/lib.rs at line 151
edit in pijul-identity/src/lib.rs at line 271
[7.7658]→[5.940:1085](∅→∅) − if let Err(e) = keyring::Entry::new("pijul", &self.name)
− .and_then(|x| x.set_password(&user_password))
− {
edit in pijul-identity/src/create.rs at line 7
[7.28402]→[5.1086:1105](∅→∅) edit in pijul-identity/src/create.rs at line 9
[7.31]→[5.1106:1140](∅→∅),
[7.31]→[5.1106:1140](∅→∅) − use thrussh_keys::key::PublicKey;
resurrect zombie in pijul-identity/src/create.rs at line 9
[7.28494]→[7.1343:1367](∅→∅),
[7.28494]→[7.1343:1367](∅→∅),
[7.1367]→[7.1126:1175](∅→∅),
[7.101]→[7.1126:1175](∅→∅),
[7.101]→[7.1126:1175](∅→∅),
[7.352]→[7.449:483](∅→∅),
[7.352]→[7.449:483](∅→∅) + use log::{debug, warn};
+ use pijul_interaction::{Confirm, Input, Select};
+ use thrussh_keys::key::PublicKey;
edit in pijul/src/main.rs at line 3
[7.577]→[7.0:24](∅→∅),
[7.24]→[7.84279:84299](∅→∅),
[7.577]→[7.84279:84299](∅→∅),
[7.84279]→[7.84279:84299](∅→∅),
[7.602]→[7.602:603](∅→∅) − use std::ffi::OsString;
− use std::io::Write;
−
edit in pijul/src/main.rs at line 4
− use clap::{ColorChoice, Parser};
resolve order conflict in pijul/src/main.rs at line 4
edit in pijul/src/main.rs at line 7
+ use std::ffi::OsString;
+ use std::io::Write;
edit in pijul/src/commands/tag.rs at line 294
[7.5248]→[7.484:641](∅→∅) − chrono::DateTime::from_utc(
− chrono::NaiveDateTime::from_timestamp_opt(t, 0).unwrap(),
− chrono::Utc,
− )
resolve order conflict in pijul/src/commands/tag.rs at line 294
replacement in pijul/src/commands/record.rs at line 151
− let identity_name = if self.identity.is_some() {
− self.identity.clone().unwrap()
− } else {
− crate::identity::choose_identity_name(false).await?
− };
− let (key, _password) = crate::identity::Complete::load(&identity_name)?.decrypt()?;
+
+ let complete =
+ pijul_identity::Complete::load(&pijul_identity::choose_identity_name().await?)?;
+
+ let (secret, _) = complete.decrypt()?;
replacement in pijul/src/commands/record.rs at line 173
− "signature": key.sign_raw(&hash.to_bytes()).unwrap(),
+ "signature": secret.sign_raw(&hash.to_bytes()).unwrap(),
replacement in pijul/src/commands/record.rs at line 224
− let identity_name = if self.identity.is_some() {
− self.identity.clone().unwrap()
− } else {
− crate::identity::choose_identity_name(false).await?
− };
− let public_key = crate::identity::public_key(&identity_name);
+ let identity_name = self
+ .identity
+ .clone()
+ .unwrap_or(pijul_identity::choose_identity_name().await?);
+
+ let public_key = pijul_identity::public_key(&identity_name);
edit in pijul/src/commands/record.rs at line 361
[7.14343]→[3.572:752](∅→∅) − if self.patience {
− libpijul::Algorithm::Patience
− } else {
− libpijul::Algorithm::default()
− },
edit in pijul/src/commands/record.rs at line 469
[7.111616]→[7.2521:2521](∅→∅),
[7.814]→[6.344:401](∅→∅),
[7.814]→[6.344:401](∅→∅),
[7.953]→[6.402:481](∅→∅),
[7.953]→[6.402:481](∅→∅),
[7.15216]→[6.251:343](∅→∅),
[7.15216]→[6.251:343](∅→∅) −
− let public_key = pijul_identity::public_key(
− .unwrap_or(pijul_identity::choose_identity_name().await?),
− pijul_identity::Complete::load(&pijul_identity::choose_identity_name().await?)?
resolve order conflict in pijul/src/commands/record.rs at line 469
edit in pijul/src/commands/pushpull.rs at line 553
edit in pijul/src/commands/pushpull.rs at line 556
edit in pijul/src/commands/protocol.rs at line 413
[7.2669]→[5.1316:1349](∅→∅) edit in pijul/src/commands/log.rs at line 341
− let mut reverse_log = self
− .txn
− .reverse_log(&*self.channel_ref.read(), None)?
− .peekable();
resolve order conflict in pijul/src/commands/log.rs at line 341
edit in pijul/src/commands/log.rs at line 341
edit in pijul/src/commands/log.rs at line 480
[7.13977]→[7.994:1138](∅→∅) − description: if self.cmd.descriptions {
− header.description
− } else {
− None
− },
resolve order conflict in pijul/src/commands/log.rs at line 480
edit in pijul/src/commands/log.rs at line 510
[7.322]→[7.1139:1531](∅→∅) − OutputFormat::Json => serde_json::to_writer_pretty(&mut stdout, &log_iter)?,
− OutputFormat::Plaintext => {
− log_iter.for_each(|entry| match write!(&mut stdout, "{}", entry) {
− Ok(_) => Ok(()),
− Err(e) if e.kind() == std::io::ErrorKind::BrokenPipe => Ok(()),
− Err(e) => Err(e),
− })?
resolve order conflict in pijul/src/commands/log.rs at line 510
edit in pijul/src/commands/identity.rs at line 454
[7.19585]→[5.1350:1502](∅→∅) − if let Err(e) =
− Entry::new("pijul", &identity.name).and_then(|x| x.delete_password())
− {
edit in pijul/src/commands/dependents.rs at line 3
[7.323]→[5.1503:1547](∅→∅) − use std::io::Write;
− use std::path::PathBuf;
edit in pijul/src/commands/dependents.rs at line 38
[7.450]→[7.1730:1761](∅→∅) resolve order conflict in pijul/src/commands/dependents.rs at line 38
edit in pijul/src/commands/dependents.rs at line 65
[7.856]→[5.1580:1611](∅→∅) resolve order conflict in pijul/src/commands/debug.rs at line 7
edit in pijul/src/commands/debug.rs at line 58
[7.21392]→[7.1794:1882](∅→∅) − let (pos, _) = txn.follow_oldest_path(&repo.changes, &channel, &root)?;
resolve order conflict in pijul/src/commands/debug.rs at line 58
edit in pijul/src/commands/debug.rs at line 58
edit in pijul/src/commands/client.rs at line 3
[7.4588]→[5.1831:1869](∅→∅) − use crate::config::global_config_dir;
edit in pijul/src/commands/client.rs at line 5
[7.1921]→[7.1921:2018](∅→∅) − use hyper::service::{make_service_fn, service_fn};
− use hyper::{Body, Request, Response, Server};
resolve order conflict in pijul/src/commands/client.rs at line 5
edit in pijul/src/commands/client.rs at line 9
[7.4792]→[5.1967:1999](∅→∅) − use tokio::sync::mpsc::channel;
edit in pijul/src/commands/client.rs at line 29
[7.5461]→[5.2000:2035](∅→∅) edit in pijul/src/commands/client.rs at line 65
[7.6965]→[5.2036:2083](∅→∅) edit in pijul/src/commands/client.rs at line 80
[7.60]→[5.2084:2232](∅→∅) − eprintln!(
− "If the URL doesn't open automatically, please visit {}",
− url
− );
edit in pijul/src/commands/client.rs at line 85
[7.7598]→[5.2233:2259](∅→∅) edit in pijul/src/commands/client.rs at line 111
[7.8334]→[5.2260:2283](∅→∅) edit in pijul/src/commands/apply.rs at line 139
[7.188]→[5.2284:2318](∅→∅)