1.0.0-alpha.28, with Tokio 1.0

[?]
Jan 4, 2021, 2:52 PM
TPEH2XNBS5RO4IEVKENVF6P65AH7IX64KK2JAYMSJT3J5GXO67EAC

Dependencies

  • [2] MWKDNWZW Version bump
  • [3] BVVMTOYW Proper renaming of changes downloaded over HTTP
  • [4] CCLLB7OI Upgrading to Sanakirja 0.15 + version bump
  • [5] PJ7T2VFL Do not hang on locked repositories
  • [6] JACZWIJ6 Version bump
  • [7] YX3VCEOM Version bump
  • [8] 5BRU2RRW Cleanup (debugging a crash related to trees/inodes)
  • [9] B5Z4IMEU Generating Cargo.nix for pijul 1.0.0-alpha.6
  • [10] 2K7JLB4Z No pager on Windows
  • [11] WIORLB47 Version bump
  • [12] XAY4DYRR Version bump
  • [13] SXEYMYF7 Fixing the bad changes in history (unfortunately, by rebooting).
  • [14] XWETQ4DE Upgrading versions
  • [15] OUWD436A Version bump
  • [16] ZHABNS3S Canonicalize all paths
  • [17] RR65HCKO Thrussh versions
  • [18] ZTVNGFNT Version bump
  • [19] 3S4DR77Z Version updates
  • [20] G6YZ7U65 Version bump
  • [21] UDHP4ZVB Fixing SSH asynchronicity issues
  • [22] MU5GSJAW Partial push and pull (WARNING: breaks the existing protocol)
  • [23] 6DOXSHWG Cleanup, and version bump
  • [24] VBMXB443 Retrying if the HTTP connection drops while reading the body
  • [25] Q7CAYX5N Fixing Windows compilation
  • [26] OCBM7IFE New release: pijul-1.0.0-alpha.8
  • [27] UFCZKKLX Upgrading to the latest Sanakirja/Rand
  • [28] WI5BS6BS New published versions
  • [29] NX5I5H53 New published versions
  • [30] 5YDI33C4 Fixing pager on OSX
  • [31] SZWBLWZ4 Reading ~/.ssh/config
  • [32] I52XSRUH Massive cleanup, and simplification
  • [33] N35L72XV Versions in Cargo.lock
  • [34] H62VFFJE Cargo.nix, and solving conflicts
  • [35] IQ4FCHPZ HTTP connections: pooling + retry on error
  • [36] L4JXJHWX pijul/*: reorganize imports and remove extern crate
  • [37] 3WIQYEIS Fixing conflicts in Cargo.lock
  • [38] BT2ZHPY4 Version bumps
  • [39] FBXYP7QM Forgot to add remote::http
  • [40] SAGSYAPX Various version bumps
  • [41] XL6Y64UP Fixing a panic when iterating over the basenames of a file
  • [*] 367UBQ6K Forwarding SSH stderr, and progress bar for push

Change contents

  • replacement in pijul/src/remote/ssh.rs at line 23
    [5.25806][5.25806:25842]()
    pub h: thrussh::client::Handle,
    [5.25806]
    [5.25842]
    pub h: thrussh::client::Handle<SshClient>,
  • replacement in pijul/src/remote/ssh.rs at line 127
    [5.983][5.983:1024]()
    h: &mut thrussh::client::Handle,
    [5.983]
    [5.1024]
    h: &mut thrussh::client::Handle<SshClient>,
  • replacement in pijul/src/remote/ssh.rs at line 153
    [5.1617][5.29474:29513](),[5.29474][5.29474:29513]()
    Ok((a, auth)) => {
    [5.1617]
    [5.29844]
    (a, Ok(auth)) => {
  • replacement in pijul/src/remote/ssh.rs at line 157
    [5.29953][5.29953:29985]()
    Err(e) => {
    [5.29953]
    [5.29985]
    (a, Err(e)) => {
    agent = Some(a);
  • replacement in pijul/src/remote/ssh.rs at line 160
    [5.30037][5.30037:30123]()
    if let Ok(thrussh_keys::Error::AgentFailure) = e.downcast() {
    [5.30037]
    [5.30123]
    if let thrussh::AgentAuthError::Key(e) = e {
    debug!("error: {:?}", e);
  • replacement in pijul/src/remote/ssh.rs at line 174
    [5.30403][5.30403:30498]()
    async fn auth_pk(&self, h: &mut thrussh::client::Handle, key_path: &mut PathBuf) -> bool {
    [5.30403]
    [5.30498]
    async fn auth_pk(
    &self,
    h: &mut thrussh::client::Handle<SshClient>,
    key_path: &mut PathBuf,
    ) -> bool {
  • replacement in pijul/src/remote/ssh.rs at line 209
    [5.31119][5.31119:31219]()
    async fn auth_password(&self, h: &mut thrussh::client::Handle) -> Result<bool, anyhow::Error> {
    [5.31119]
    [5.31219]
    async fn auth_password(
    &self,
    h: &mut thrussh::client::Handle<SshClient>,
    ) -> Result<bool, thrussh::Error> {
  • replacement in pijul/src/remote/ssh.rs at line 226
    [5.31641][5.31641:31717]()
    if let Ok(thrussh_keys::Error::KeyIsEncrypted) = e.downcast() {
    [5.31641]
    [5.31717]
    if let thrussh_keys::Error::KeyIsEncrypted = e {
  • edit in pijul/src/remote/ssh.rs at line 285
    [5.32427]
    [5.32427]
    type Error = anyhow::Error;
  • replacement in pijul/src/remote/ssh.rs at line 316
    [5.33679][5.33679:33726]()
    futures::future::ready(Err(e))
    [5.33679]
    [5.33726]
    futures::future::ready(Err(e.into()))
  • replacement in pijul/src/remote/mod.rs at line 539
    [5.71183][5.71183:71261]()
    let (mut send_hash, mut recv_hash) = tokio::sync::mpsc::channel(100);
    [5.71183]
    [5.71261]
    let (send_hash, mut recv_hash) = tokio::sync::mpsc::channel(100);
  • replacement in pijul/src/remote/mod.rs at line 643
    [5.75086][5.75086:75164]()
    let (mut send_hash, mut recv_hash) = tokio::sync::mpsc::channel(100);
    [5.75086]
    [5.75164]
    let (send_hash, mut recv_hash) = tokio::sync::mpsc::channel(100);
  • edit in pijul/src/remote/http.rs at line 10
    [5.25]
    [5.87]
    use tokio_compat_02::FutureExt;
  • replacement in pijul/src/remote/http.rs at line 34
    [3.11][5.75:173](),[5.75][5.75:173]()
    let mut res = if let Ok(res) = client.get(&url).query(&[("change", &c32)]).send().await {
    [3.11]
    [5.173]
    let mut res = if let Ok(res) = client
    .get(&url)
    .query(&[("change", &c32)])
    .send()
    .compat()
    .await
    {
  • replacement in pijul/src/remote/http.rs at line 45
    [5.803][5.803:888]()
    tokio::time::delay_for(std::time::Duration::from_secs_f64(delay)).await;
    [5.803]
    [5.888]
    tokio::time::sleep(std::time::Duration::from_secs_f64(delay)).await;
  • replacement in pijul/src/remote/http.rs at line 54
    [3.38][5.256:294](),[5.256][5.256:294]()
    match res.chunk().await {
    [3.38]
    [5.294]
    match res.chunk().compat().await {
  • replacement in pijul/src/remote/http.rs at line 62
    [5.593][5.593:686]()
    tokio::time::delay_for(std::time::Duration::from_secs_f64(delay)).await;
    [5.593]
    [5.686]
    tokio::time::sleep(std::time::Duration::from_secs_f64(delay)).await;
  • edit in pijul/src/remote/http.rs at line 164
    [43.1781]
    [43.1781]
    .compat()
  • replacement in pijul/src/remote/http.rs at line 189
    [5.5584][5.5584:5653]()
    let res = self.client.get(&url).query(&query).send().await?;
    [5.5584]
    [5.5653]
    let res = self.client.get(&url).query(&query).send().compat().await?;
  • replacement in pijul/src/remote/http.rs at line 193
    [5.5823][5.5823:5862]()
    let resp = res.bytes().await?;
    [5.5823]
    [5.5862]
    let resp = res.bytes().compat().await?;
  • replacement in pijul/Cargo.toml at line 4
    [5.196462][4.19458:19485]()
    version = "1.0.0-alpha.27"
    [5.196462]
    [5.196488]
    version = "1.0.0-alpha.28"
  • replacement in pijul/Cargo.toml at line 58
    [5.197665][5.197665:197741](),[5.197741][5.2754:2774](),[5.2774][5.240:265](),[5.265][2.0:25]()
    tokio = { version = "0.2", features = [ "rt-threaded", "macros", "sync" ] }
    thrussh = "0.29.15"
    thrussh-keys = "0.18.12"
    thrussh-config = "0.4.1"
    [5.197665]
    [5.197800]
    tokio = { version = "1.0", features = [ "rt-multi-thread", "macros", "sync" ] }
    thrussh = "0.32.1"
    thrussh-keys = "0.20"
    thrussh-config = "0.5"
  • edit in pijul/Cargo.toml at line 80
    [5.1190]
    [5.309]
    tokio-compat-02 = "0.1"
  • replacement in libpijul/Cargo.toml at line 4
    [5.1020894][4.138323:138350]()
    version = "1.0.0-alpha.23"
    [5.1020894]
    [5.1020920]
    version = "1.0.0-alpha.25"
  • replacement in libpijul/Cargo.toml at line 113
    [5.1023438][5.1023438:1023507]()
    tokio = { version = "0.2", optional = true, features = ["io-util"] }
    [5.1023438]
    [5.1023507]
    tokio = { version = "1.0", optional = true, features = ["io-util"] }
  • edit in Cargo.lock at line 156
    [5.1035263]
    [5.3110]
    [[package]]
    name = "bytes"
    version = "1.0.0"
    source = "registry+https://github.com/rust-lang/crates.io-index"
    checksum = "ad1f8e949d755f9d79112b5bb46938e0ef9d3804a0b16dfab13aafcaa5f0fa72"
  • replacement in Cargo.lock at line 350
    [5.1040602][5.1040602:1040620]()
    version = "2.0.2"
    [5.1040602]
    [5.1040620]
    version = "3.0.1"
  • replacement in Cargo.lock at line 352
    [5.1040685][5.1040685:1040763]()
    checksum = "13aea89a5c93364a98e9b37b2fa237effbb694d5cfe01c5b70941f7eb087d5e3"
    [5.1040685]
    [5.1040763]
    checksum = "142995ed02755914747cc6ca76fc7e4583cd18578746716d0508ea6ed558b9ff"
  • edit in Cargo.lock at line 354
    [5.1040780][5.1040780:1040798]()
    "cfg-if 0.1.10",
  • replacement in Cargo.lock at line 653
    [5.242][5.242:260]()
    version = "0.2.0"
    [5.242]
    [5.260]
    version = "0.2.1"
  • replacement in Cargo.lock at line 655
    [5.325][5.325:403]()
    checksum = "ee8025cf36f917e6a52cce185b7c7177689b838b7ec138364e50cc2277a56cf4"
    [5.325]
    [5.1047677]
    checksum = "4060f4657be78b8e766215b02b18a2e862d83745545de804638e2b545e81aee6"
  • replacement in Cargo.lock at line 657
    [5.1047694][5.1047694:1047712]()
    "cfg-if 0.1.10",
    [5.1047694]
    [5.1047712]
    "cfg-if 1.0.0",
  • replacement in Cargo.lock at line 659
    [5.1047721][5.1047721:1047759]()
    "wasi 0.9.0+wasi-snapshot-preview1",
    [5.1047721]
    [5.1047759]
    "wasi 0.10.0+wasi-snapshot-preview1",
  • replacement in Cargo.lock at line 702
    [5.1048901][5.1048901:1048911]()
    "bytes",
    [5.1048901]
    [5.1048911]
    "bytes 0.5.6",
  • replacement in Cargo.lock at line 710
    [5.1049001][5.1049001:1049011]()
    "tokio",
    [5.1049001]
    [5.1049011]
    "tokio 0.2.24",
  • replacement in Cargo.lock at line 746
    [5.1049913][5.1049913:1049923]()
    "bytes",
    [5.1049913]
    [5.1049923]
    "bytes 0.5.6",
  • replacement in Cargo.lock at line 757
    [5.1050152][5.1050152:1050162]()
    "bytes",
    [5.1050152]
    [5.1050162]
    "bytes 0.5.6",
  • replacement in Cargo.lock at line 800
    [5.1051484][5.1051484:1051494]()
    "bytes",
    [5.1051484]
    [5.1051494]
    "bytes 0.5.6",
  • replacement in Cargo.lock at line 812
    [5.1051647][5.1051647:1051657]()
    "tokio",
    [5.1051647]
    [5.1051657]
    "tokio 0.2.24",
  • replacement in Cargo.lock at line 824
    [5.1051908][5.1051908:1051918]()
    "bytes",
    [5.1051908]
    [5.1051918]
    "bytes 0.5.6",
  • replacement in Cargo.lock at line 827
    [5.1051943][5.1051943:1051953]()
    "tokio",
    [5.1051943]
    [5.1051953]
    "tokio 0.2.24",
  • replacement in Cargo.lock at line 968
    [5.560][4.142134:142161]()
    version = "1.0.0-alpha.23"
    [5.560]
    [5.729]
    version = "1.0.0-alpha.25"
  • replacement in Cargo.lock at line 995
    [5.1055842][5.1055842:1055852]()
    "tokio",
    [5.1055842]
    [5.1055852]
    "tokio 1.0.1",
  • replacement in Cargo.lock at line 1131
    [5.1059131][5.1059131:1059140]()
    "miow",
    [5.1059131]
    [5.1059140]
    "miow 0.2.2",
  • replacement in Cargo.lock at line 1138
    [5.1059190][5.1059190:1059225]()
    name = "mio-uds"
    version = "0.6.8"
    [5.1059190]
    [5.1059225]
    name = "mio"
    version = "0.7.7"
  • replacement in Cargo.lock at line 1141
    [5.1059290][5.1059290:1059368]()
    checksum = "afcb699eb26d4332647cc848492bbc15eafb26f08d0304550d5aa1f612e066f0"
    [5.1059290]
    [5.1059368]
    checksum = "e50ae3f04d169fcc9bde0b547d1c205219b7157e07ded9c5aff03e0637cb3ed7"
  • edit in Cargo.lock at line 1143
    [5.1059385][5.1059385:1059395]()
    "iovec",
  • replacement in Cargo.lock at line 1144
    [5.1059404][5.1059404:1059412]()
    "mio",
    [5.1059404]
    [5.1059412]
    "log",
    "miow 0.3.6",
    "ntapi",
    "winapi 0.3.9",
  • edit in Cargo.lock at line 1160
    [5.1059677]
    [5.1059677]
    ]
    [[package]]
    name = "miow"
    version = "0.3.6"
    source = "registry+https://github.com/rust-lang/crates.io-index"
    checksum = "5a33c1b55807fbed163481b5ba66db4b2fa6cde694a5027be10fb724206c5897"
    dependencies = [
    "socket2",
    "winapi 0.3.9",
  • edit in Cargo.lock at line 1198
    [5.1060280]
    [5.1060280]
    "winapi 0.3.9",
    ]
    [[package]]
    name = "ntapi"
    version = "0.3.6"
    source = "registry+https://github.com/rust-lang/crates.io-index"
    checksum = "3f6bb902e437b6d86e03cce10a7e2af662292c5dfef23b65899ea3ac9354ad44"
    dependencies = [
  • replacement in Cargo.lock at line 1393
    [5.1064507][5.1064507:1064517]()
    "tokio",
    [5.1064507]
    [5.1064517]
    "tokio 1.0.1",
    "tokio-compat-02",
  • replacement in Cargo.lock at line 1593
    [5.1340][5.1340:1360]()
    "getrandom 0.2.0",
    [5.1340]
    [5.1360]
    "getrandom 0.2.1",
  • replacement in Cargo.lock at line 1665
    [5.1125][5.1070408:1070418](),[5.1666][5.1070408:1070418](),[5.1070408][5.1070408:1070418]()
    "bytes",
    [5.1125]
    [5.1070418]
    "bytes 0.5.6",
  • replacement in Cargo.lock at line 1684
    [5.1070672][5.1070672:1070682]()
    "tokio",
    [5.1070672]
    [5.1070682]
    "tokio 0.2.24",
  • replacement in Cargo.lock at line 1738
    [5.1072132][4.142373:142392]()
    version = "0.15.2"
    [5.1072132]
    [5.1072151]
    version = "0.15.3"
  • replacement in Cargo.lock at line 1740
    [5.1072216][4.142393:142471]()
    checksum = "de7079fe5772801b9ecef5085feec8d28f1b0598b14859e63f18d48f30a95e2f"
    [5.1072216]
    [5.1072294]
    checksum = "7826a692e79c80214f37fc838ae140a4f2148c4415a452ee5bf9f49c52e59765"
  • replacement in Cargo.lock at line 1841
    [5.1074767][5.12963:12981]()
    version = "1.5.1"
    [5.1074767]
    [5.1074785]
    version = "1.6.0"
  • replacement in Cargo.lock at line 1843
    [5.1074850][5.12982:13060]()
    checksum = "ae524f056d7d770e174287294f562e95044c68e88dec909a00d2094805db9d75"
    [5.1074850]
    [5.1074928]
    checksum = "1a55ca5f3b68e41c979bf8c46a6f1da892ca4db8f94023ce0bd32407573b1ac0"
  • replacement in Cargo.lock at line 1870
    [5.1075798][4.142586:142605]()
    version = "1.0.56"
    [5.1075798]
    [5.1075817]
    version = "1.0.57"
  • replacement in Cargo.lock at line 1872
    [5.1075882][4.142606:142684]()
    checksum = "a9802ddde94170d186eeee5005b798d9c159fa970403f1be19976d0cfb939b72"
    [5.1075882]
    [5.1075960]
    checksum = "4211ce9909eb971f111059df92c45640aad50a619cf55cd76476be803c4c68e6"
  • replacement in Cargo.lock at line 1973
    [5.1078238][5.13357:13377]()
    version = "0.29.16"
    [5.1078238]
    [5.351]
    version = "0.32.1"
  • replacement in Cargo.lock at line 1975
    [5.416][5.13378:13456]()
    checksum = "1895fda8eef436a585ea38d43dd4e99cd579e6a7894e914adf4efee0801b1164"
    [5.416]
    [5.1078400]
    checksum = "16540c03b4f72d7c00fed6382d35ae99f155981350cc737a82dc81ea28df3829"
  • edit in Cargo.lock at line 1977
    [5.1078417][5.1078417:1078428](),[5.1078417][5.1078417:1078428]()
    "anyhow",
  • replacement in Cargo.lock at line 1987
    [5.1078565][5.432:442]()
    "tokio",
    [5.1078565]
    [5.442]
    "tokio 1.0.1",
  • replacement in Cargo.lock at line 1992
    [5.481][2.26:44]()
    version = "0.4.1"
    [5.481]
    [5.499]
    version = "0.5.0"
  • replacement in Cargo.lock at line 1994
    [5.564][2.45:123]()
    checksum = "0e6419c87e1afff135f65cecfbe8c602d6b053b387ecf37466520587d1c55213"
    [5.564]
    [5.642]
    checksum = "67c044d978aff4dfc0036a29ce10bfa190ab84381bb4551fd50fa0e0db2ef5f9"
  • edit in Cargo.lock at line 1998
    [5.685][5.685:701]()
    "lazy_static",
  • edit in Cargo.lock at line 1999
    [5.709][5.709:719]()
    "regex",
  • replacement in Cargo.lock at line 2000
    [5.733][5.733:745](),[5.745][5.1078565:1078575](),[5.1078565][5.1078565:1078575]()
    "thrussh",
    "tokio",
    [5.733]
    [4.142883]
    "tokio 1.0.1",
  • replacement in Cargo.lock at line 2006
    [5.1078612][5.764:784]()
    version = "0.18.12"
    [5.1078612]
    [5.1078631]
    version = "0.20.0"
  • replacement in Cargo.lock at line 2008
    [5.1078696][5.785:863]()
    checksum = "edd61138eed83d5ea8aadc440a5163f59a55843c913b206a8c6887e42aefd3c2"
    [5.1078696]
    [5.1078774]
    checksum = "0a96771a782fd01410957fa2e93d5c6503b09817274baac56a67845594dd7a3d"
  • edit in Cargo.lock at line 2010
    [5.1078791][5.1078791:1078802]()
    "anyhow",
  • replacement in Cargo.lock at line 2024
    [5.1078995][5.1078995:1079005]()
    "tokio",
    [5.1078995]
    [5.1079005]
    "tokio 1.0.1",
  • replacement in Cargo.lock at line 2073
    [5.1080212][5.1080212:1080222]()
    "bytes",
    [5.1080212]
    [5.1080222]
    "bytes 0.5.6",
  • edit in Cargo.lock at line 2078
    [5.1080273][5.1080273:1080282]()
    "libc",
  • replacement in Cargo.lock at line 2079
    [5.1080293][5.1080293:1080313]()
    "mio",
    "mio-uds",
    [5.1080293]
    [5.1080313]
    "mio 0.6.23",
  • edit in Cargo.lock at line 2083
    [5.1080356]
    [5.1080356]
    ]
    [[package]]
    name = "tokio"
    version = "0.3.6"
    source = "registry+https://github.com/rust-lang/crates.io-index"
    checksum = "720ba21c25078711bf456d607987d95bce90f7c3bea5abe1db587862e7a1e87c"
    dependencies = [
    "autocfg",
    "futures-core",
    "pin-project-lite 0.2.0",
    ]
    [[package]]
    name = "tokio"
    version = "1.0.1"
    source = "registry+https://github.com/rust-lang/crates.io-index"
    checksum = "d258221f566b6c803c7b4714abadc080172b272090cdc5e244a6d4dd13c3a6bd"
    dependencies = [
    "autocfg",
    "bytes 1.0.0",
    "libc",
    "memchr",
    "mio 0.7.7",
    "num_cpus",
    "pin-project-lite 0.2.0",
  • edit in Cargo.lock at line 2110
    [5.1080373]
    [5.1080373]
    ]
    [[package]]
    name = "tokio-compat-02"
    version = "0.1.2"
    source = "registry+https://github.com/rust-lang/crates.io-index"
    checksum = "bb4cec419b8b6f06c32e74aae6d8c5e79646d038a38e5ea2b36045f2c3296e22"
    dependencies = [
    "bytes 0.5.6",
    "once_cell",
    "pin-project-lite 0.1.11",
    "tokio 0.2.24",
    "tokio 0.3.6",
  • replacement in Cargo.lock at line 2127
    [5.1080410][5.1080410:1080428]()
    version = "0.2.6"
    [5.1080410]
    [5.1080428]
    version = "1.0.0"
  • replacement in Cargo.lock at line 2129
    [5.1080493][5.1080493:1080571]()
    checksum = "e44da00bfc73a25f814cd8d7e57a68a5c31b74b3152a0a1d1f590c97ed06265a"
    [5.1080493]
    [5.1080571]
    checksum = "42517d2975ca3114b22a16192634e8241dc5cc1f130be194645970cc1c371494"
  • replacement in Cargo.lock at line 2143
    [5.1080849][5.1080849:1080859]()
    "tokio",
    [5.1080849]
    [5.1080859]
    "tokio 0.2.24",
  • replacement in Cargo.lock at line 2152
    [5.1081072][5.1081072:1081082]()
    "bytes",
    [5.1081072]
    [5.1081082]
    "bytes 0.5.6",
  • replacement in Cargo.lock at line 2157
    [5.2458][5.1081145:1081155](),[5.1081145][5.1081145:1081155]()
    "tokio",
    [5.2458]
    [5.1081155]
    "tokio 0.2.24",
  • replacement in Cargo.lock at line 2527
    [5.1090745][5.359:377]()
    version = "0.1.5"
    [5.1090745]
    [5.1090763]
    version = "0.1.6"
  • replacement in Cargo.lock at line 2529
    [5.1090828][5.378:456]()
    checksum = "21ec14c84cd9770dbe4db1c469e7fa7370093e32219bc3b53b3f968de260cc54"
    [5.1090828]
    [5.1090906]
    checksum = "29c68256da15ff4518794182c59cde0e1a824129805018bc6670d1d585fb1ba8"
  • edit in Cargo.lock at line 2533
    [5.1090972]
    [5.1090972]
    "pkg-config",