pijul nest
guest โ€บ [sign in] [explore]

๐Ÿฉน Reorder imports, solve merge conflicts, post merge cleanup

berkus
Jun 24, 2025, 4:03 PM
MKDWLE4VR5MFRUNUKCWACK7OHCVHRPZLSW7TWXFJ65CYRZ7QD7FAC

Dependencies

  • [2]ย SXEYMYF7 Fixing the bad changes in history (unfortunately, by rebooting).
  • [3]ย L4JXJHWX pijul/*: reorganize imports and remove extern crate
  • [4]ย I52XSRUH Massive cleanup, and simplification
  • [5]ย CCLLB7OI Upgrading to Sanakirja 0.15 + version bump
  • [6]ย XA23FMQM Reset only files that have been modified
  • [7]ย OU243LAB Support for staging
  • [8]ย YN63NUZO Sanakirja 1.0
  • [9]ย I24UEJQL Various post-fire fixes
  • [10]ย QL6K2ZM3 Tags
  • [11]ย 3H6Q5LDS Fixing a bug with the salt argument in `mv`
  • [12]ย GUL4M5FI Cleanup and formatting
  • [13]ย DX2FO4HZ Tag CLI cleanup
  • [14]ย EUZFFJSO Updating Pijul with the latest changes in Libpijul
  • [15]ย IVLLXQ5Z Improved push/pull reporting
  • [16]ย OU6JOR3C Add path filtering for log, add json output for log
  • [17]ย 6F6AAHK4 Simplifying pijul::commands::log, and fixing Broken Pipe errors
  • [18]ย PIQCNEEB Upgrading to Clap 3.0.0-alpha.5
  • [19]ย NAUECZW3 Fixing the map between keys and identities
  • [20]ย 6ZHY3XTG Updating deprecated methods in clap
  • [21]ย ABQDWHNG Migrate from `pijul::repository` to `pijul-repository`
  • [22]ย IP4CUEBE reset: Require --force to reset unspecified unrecorded changes
  • [23]ย QQS7LII4 Add value hints to arguments
  • [24]ย MYB5C3FP Solving conflicts
  • [25]ย HJVWPKWV Migrate crates to edition 2024
  • [26]ย N26HD5PF Replace `chrono` with `jiff`
  • [27]ย 42MFQSMS Require at least one path for file operations
  • [28]ย OWJL5HO7 Allow deleting remote by URL and remove default remote if set to deleted remote
  • [29]ย 67GIAQEU Handle named remotes in pijul remote and remote delete
  • [30]ย Q7LEDPIW Refactor tag command's handling of repo and channel
  • [31]ย OSWFAKWM Refactor push/pull commands' handling of repo and channel
  • [32]ย 3WADZG36 Refactor file operation commands' handling of repo and channel
  • [33]ย Q5PNWJ5W Refactor reset command's handling of repo and channel
  • [34]ย DDEUZMXQ Refactor record command's handling of repo and channel
  • [35]ย 3FNRS6MW Refactor log command's handling of repo and channel
  • [36]ย YV5PVUXV Refactor apply command's handling of repo and channel
  • [37]ย YWL2K3P7 Removing the `Direction` argument in pijul::remote::Repository::remote
  • [38]ย 2D7P2VKJ Change completions (where the whole progress bar story started)
  • [39]ย ZSFJT4SF Allow remotes to have a different push and pull address
  • [40]ย KWAGWB73 Adding extra dependencies from the config file
  • [41]ย ZHABNS3S Canonicalize all paths
  • [42]ย 3OPNBBAU Migrate from `pijul::remote` to `pijul_remote`
  • [43]ย 3AMEP2Y5 More convenient interface for channels
  • [44]ย 3FTEGCMR add timestamp_validator to tag --timestamp option
  • [45]ย MF3WAHBI commands/record: amend current change if unspecified
  • [46]ย 2K7JLB4Z No pager on Windows
  • [47]ย SLJ3OHD4 unrecord: show list of changes if none were given as arguments
  • [48]ย RG4YZPKL file_operations: remove the counter-intuitive --repository options
  • [49]ย BPCAJCLT Use RFC2822 date formatting in `log`, `tag`, and `record --timestamp`
  • [50]ย GURIBVW6 Fixing the pager
  • [51]ย G7HJHNFD Migrate from `pijul_interaction::progress` to `pijul_interaction`
  • [52]ย 6ZPDI7QG pull uses None as the base case path when outputing repo
  • [53]ย JUYSZJSH Migrate from `pijul::progress` to `pijul_interaction::progress`
  • [54]ย GHO6DWPI Refactoring iterators
  • [55]ย LGEJSLTY Fixing output (including its uses in reset and pull)
  • [56]ย ZDK3GNDB Tag transactions (including a massive refactoring of errors)
  • [57]ย Y7YAFMFF Fix path prefix striping on Windows.
  • [58]ย X243Z3Y5 Recording only the required metadata (can even be changed later!)
  • [59]ย MU5GSJAW Partial push and pull (WARNING: breaks the existing protocol)
  • [60]ย 3KRGVQFU Do not update the mtime of unmodified files
  • [61]ย AEPEFS7O Write help for each argument
  • [62]ย SCUBUHIA Remove `lazy_static` dependency
  • [63]ย QYY37T6Y Fixing a panic with reset --dry-run and no input
  • [64]ย QAS4VLXU Use `serde_derive` instead of `serde`'s `derive` feature'

Change contents

  • edit in pijul/src/commands/tag.rs at line 3
    [10.150]โ†’[30.0:79](โˆ…โ†’โˆ…),[10.150]โ†’[30.0:79](โˆ…โ†’โˆ…)
    use crate::commands::common_opts::RepoPath;
    use crate::commands::load_channel;
  • edit in pijul/src/commands/tag.rs at line 4
    [23.130]โ†’[26.1159:1180](โˆ…โ†’โˆ…)
    use jiff::Timestamp;
  • edit in pijul/src/commands/tag.rs at line 5
    [30.98]
    [10.219]
    use jiff::Timestamp;
    use log::*;
    use crate::commands::common_opts::RepoPath;
    use crate::commands::load_channel;
  • edit in pijul/src/commands/tag.rs at line 12
    [30.196]โ†’[13.0:12](โˆ…โ†’โˆ…),[14.2427]โ†’[13.0:12](โˆ…โ†’โˆ…),[10.332]โ†’[13.0:12](โˆ…โ†’โˆ…)
    use log::*;
  • edit in pijul/src/commands/reset.rs at line 7
    [24.31]โ†’[25.2389:2470](โˆ…โ†’โˆ…),[25.2470]โ†’[22.81:164](โˆ…โ†’โˆ…),[22.81]โ†’[22.81:164](โˆ…โ†’โˆ…)
    use libpijul::pristine::{ChangeId, ChannelMutTxnT, Position, sanakirja::MutTxn};
    use libpijul::{ArcTxn, ChannelRef, ChannelTxnT, DepsTxnT, MutTxnT, TxnT, TxnTExt};
  • edit in pijul/src/commands/reset.rs at line 9
    [3.1348]โ†’[25.2471:2521](โˆ…โ†’โˆ…)
    use pijul_interaction::{OUTPUT_MESSAGE, Spinner};
  • resurrect zombie in pijul/src/commands/reset.rs at line 9
    [3.1348]โ†’[33.0:79](โˆ…โ†’โˆ…),[3.1348]โ†’[33.0:79](โˆ…โ†’โˆ…)
    use crate::commands::common_opts::RepoPath;
    use crate::commands::load_channel;
  • edit in pijul/src/commands/reset.rs at line 11
    [33.79]
    [21.992]
    use libpijul::pristine::{ChangeId, ChannelMutTxnT, Position, sanakirja::MutTxn};
    use libpijul::{ArcTxn, ChannelRef, ChannelTxnT, DepsTxnT, MutTxnT, TxnT, TxnTExt};
    use pijul_interaction::{OUTPUT_MESSAGE, Spinner};
  • edit in pijul/src/commands/record.rs at line 7
    [7.55]
    [26.1353]
    use clap::Parser;
  • edit in pijul/src/commands/record.rs at line 9
    [2.101821]โ†’[34.0:18](โˆ…โ†’โˆ…),[2.101821]โ†’[34.0:18](โˆ…โ†’โˆ…)
    use clap::Parser;
  • resolve order conflict in pijul/src/commands/record.rs at line 9
    [26.1374]
    [2.101821]
  • edit in pijul/src/commands/record.rs at line 95
    [2.103811]โ†’[25.2522:2570](โˆ…โ†’โˆ…),[2.103811]โ†’[25.2522:2570](โˆ…โ†’โˆ…)
    let h = if let Some(hash) = amend {
  • replacement in pijul/src/commands/record.rs at line 98
    [34.1021]โ†’[34.1021:1069](โˆ…โ†’โˆ…)
    if let Some(ref hash) = amend {
    [34.1021]
    [34.1069]
    if let Some(hash) = amend {
  • replacement in pijul/src/commands/record.rs at line 101
    [34.1209]โ†’[34.1209:1244](โˆ…โ†’โˆ…)
    h?.1 .0.into()
    [34.1209]
    [34.1244]
    h?.1.0.into()
  • resurrect zombie in pijul/src/commands/pushpull.rs at line 1
    [2.111631]โ†’[29.348:444](โˆ…โ†’โˆ…),[2.111631]โ†’[29.348:444](โˆ…โ†’โˆ…)
    use std::collections::{BTreeMap, BTreeSet, HashSet};
    use std::io;
    use std::io::{Stdout, Write};
  • edit in pijul/src/commands/pushpull.rs at line 6
    [3.1696]โ†’[31.0:61](โˆ…โ†’โˆ…)
    use super::{get_channel, make_changelist, parse_changelist};
  • edit in pijul/src/commands/pushpull.rs at line 8
    [23.758]
    [2.111667]
    use log::debug;
    use regex::Regex;
    use super::{get_channel, make_changelist, parse_changelist};
    use crate::commands::common_opts::RepoPath;
  • edit in pijul/src/commands/pushpull.rs at line 14
    [2.111707]โ†’[15.18473:18516](โˆ…โ†’โˆ…)
    use libpijul::pristine::sanakirja::MutTxn;
  • edit in pijul/src/commands/pushpull.rs at line 15
    [28.34]
    [5.12857]
    use libpijul::pristine::sanakirja::MutTxn;
  • edit in pijul/src/commands/pushpull.rs at line 17
    [4.2383]โ†’[3.1743:1759](โˆ…โ†’โˆ…),[5.12874]โ†’[3.1743:1759](โˆ…โ†’โˆ…),[2.111785]โ†’[3.1743:1759](โˆ…โ†’โˆ…)
    use log::debug;
  • edit in pijul/src/commands/pushpull.rs at line 18
    [29.497]โ†’[2.111785:111803](โˆ…โ†’โˆ…),[3.1759]โ†’[2.111785:111803](โˆ…โ†’โˆ…),[2.111785]โ†’[2.111785:111803](โˆ…โ†’โˆ…),[2.111803]โ†’[3.1760:1761](โˆ…โ†’โˆ…)
    use regex::Regex;
  • edit in pijul/src/commands/pushpull.rs at line 20
    [3.1761]โ†’[31.62:106](โˆ…โ†’โˆ…),[3.1761]โ†’[31.62:106](โˆ…โ†’โˆ…)
    use crate::commands::common_opts::RepoPath;
  • resolve order conflict in pijul/src/commands/pushpull.rs at line 20
    [25.2725]
    [21.1121]
  • replacement in pijul/src/commands/pushpull.rs at line 370
    [29.10857]โ†’[29.10857:10984](โˆ…โ†’โˆ…)
    bail!("Cannot delete '{}' since there is both a named remote and an ID associated with it", spec);
    [29.10857]
    [29.10984]
    bail!(
    "Cannot delete '{}' since there is both a named remote and an ID associated with it",
    spec
    );
  • replacement in pijul/src/commands/pushpull.rs at line 377
    [29.11060]โ†’[29.11060:11181](โˆ…โ†’โˆ…)
    bail!("Cannot delete '{}' since there are multiple named remotes associated with it", spec);
    [29.11060]
    [29.11181]
    bail!(
    "Cannot delete '{}' since there are multiple named remotes associated with it",
    spec
    );
  • replacement in pijul/src/commands/pushpull.rs at line 384
    [29.11252]โ†’[29.11252:11363](โˆ…โ†’โˆ…)
    bail!("Cannot delete '{}' since there are multiple IDs associated with it", spec);
    [29.11252]
    [29.11363]
    bail!(
    "Cannot delete '{}' since there are multiple IDs associated with it",
    spec
    );
  • edit in pijul/src/commands/pushpull.rs at line 517
    [2.115196]โ†’[25.2803:2859](โˆ…โ†’โˆ…),[2.115196]โ†’[25.2803:2859](โˆ…โ†’โˆ…)
    if c.is_empty() { channel_name } else { c }
  • edit in pijul/src/commands/log.rs at line 7
    [3.2088]โ†’[35.0:85](โˆ…โ†’โˆ…)
    use crate::commands::common_opts::RepoAndChannel;
    use crate::commands::load_channel;
  • edit in pijul/src/commands/log.rs at line 8
    [5.16943]
    [26.1675]
    use clap::Parser;
  • edit in pijul/src/commands/log.rs at line 11
    [5.16943]โ†’[35.86:104](โˆ…โ†’โˆ…)
    use clap::Parser;
  • resolve order conflict in pijul/src/commands/log.rs at line 11
    [26.1720]
  • edit in pijul/src/commands/log.rs at line 11
    [0.1278]
    [2.134430]
    use log::*;
    use serde::ser::{SerializeSeq, Serializer};
    use thiserror::*;
    use crate::commands::common_opts::RepoAndChannel;
    use crate::commands::load_channel;
  • edit in pijul/src/commands/log.rs at line 22
    [35.138]โ†’[19.230:242](โˆ…โ†’โˆ…),[4.3396]โ†’[19.230:242](โˆ…โ†’โˆ…)
    use log::*;
  • edit in pijul/src/commands/log.rs at line 23
    [19.242]โ†’[16.225:269](โˆ…โ†’โˆ…),[21.1757]โ†’[16.225:269](โˆ…โ†’โˆ…),[4.3396]โ†’[16.225:269](โˆ…โ†’โˆ…),[16.291]โ†’[17.94:112](โˆ…โ†’โˆ…)
    use serde::ser::{SerializeSeq, Serializer};
    use thiserror::*;
  • edit in pijul/src/commands/file_operations.rs at line 6
    [11.31]โ†’[4.4127:4173](โˆ…โ†’โˆ…),[20.268]โ†’[4.4127:4173](โˆ…โ†’โˆ…),[18.1171]โ†’[4.4127:4173](โˆ…โ†’โˆ…),[12.1749]โ†’[4.4127:4173](โˆ…โ†’โˆ…),[23.1813]โ†’[4.4127:4173](โˆ…โ†’โˆ…),[3.2421]โ†’[4.4127:4173](โˆ…โ†’โˆ…)
    use libpijul::{MutTxnT, MutTxnTExt, TxnTExt};
  • edit in pijul/src/commands/file_operations.rs at line 9
    [32.44]
    [21.1845]
    use libpijul::{MutTxnT, MutTxnTExt, TxnTExt};
  • edit in pijul/src/commands/file_operations.rs at line 208
    [2.172507]
    [27.60]
    #[clap(flatten)]
    base: RepoPath,
  • edit in pijul/src/commands/file_operations.rs at line 212
    [2.172507]โ†’[32.372:413](โˆ…โ†’โˆ…),[2.172507]โ†’[32.372:413](โˆ…โ†’โˆ…)
    #[clap(flatten)]
    base: RepoPath,
  • resolve order conflict in pijul/src/commands/file_operations.rs at line 212
    [27.117]
    [2.172572]
  • edit in pijul/src/commands/apply.rs at line 5
    [36.18]
    [2.194343]
    use log::*;
    use crate::commands::common_opts::RepoAndChannel;
    use crate::commands::load_channel;
  • edit in pijul/src/commands/apply.rs at line 12
    [9.23475]โ†’[8.14202:14214](โˆ…โ†’โˆ…),[6.617]โ†’[8.14202:14214](โˆ…โ†’โˆ…),[6.617]โ†’[3.3379:3380](โˆ…โ†’โˆ…),[4.6528]โ†’[3.3379:3380](โˆ…โ†’โˆ…),[8.14214]โ†’[3.3379:3380](โˆ…โ†’โˆ…),[2.194442]โ†’[3.3379:3380](โˆ…โ†’โˆ…)
    use log::*;
  • edit in pijul/src/commands/apply.rs at line 13
    [3.3380]โ†’[36.19:104](โˆ…โ†’โˆ…),[3.3380]โ†’[36.19:104](โˆ…โ†’โˆ…)
    use crate::commands::common_opts::RepoAndChannel;
    use crate::commands::load_channel;
  • resolve order conflict in pijul/src/commands/apply.rs at line 13
    [25.6054]
    [21.2124]