The sound distributed version control system

#995 1.0.0-beta.11 is broken

Opened by O01eg on April 13, 2026
O01eg on April 13, 2026

If I try to build recent pijul I get errors:

   Compiling pijul v1.0.0-beta.11
error[E0433]: failed to resolve: could not find `distributions` in `rand`
   --> /home/oleg/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pijul-1.0.0-beta.11/src/commands/git.rs:567:61
    |
567 | ...                   .sample_iter(&rand::distributions::Alphanumeric)
    |                                           ^^^^^^^^^^^^^ could not find `distributions` in `rand`
    |
help: a trait with a similar name exists
    |
567 -                                         .sample_iter(&rand::distributions::Alphanumeric)
567 +                                         .sample_iter(&rand::Distribution::Alphanumeric)
    |

error[E0599]: no method named `set_root` found for struct `MutTxn<E>` in the current scope
    --> /home/oleg/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pijul-1.0.0-beta.11/src/commands/git.rs:181:17
     |
 181 |         txn_git.set_root(0, db.db.into());
     |                 ^^^^^^^^
     |
    ::: /home/oleg/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sanakirja-2.0.0-beta/src/environment/mod.rs:604:8
     |
 604 |     fn set_root(&mut self, num: usize, value: u64);
     |        -------- the method is available for `MutTxn<&mut sanakirja::Env>` here
     |
     = help: items from traits can only be used if the trait is in scope
help: there is a method `root` with a similar name, but with different arguments
    --> /home/oleg/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sanakirja-2.0.0-beta/src/environment/muttxn.rs:1067:5
     |
1067 |     pub fn root(&self, n: usize) -> Option<u64> {
     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: trait `RootPageMut` which provides `set_root` is implemented but not in scope; perhaps you want to import it
     |
   1 + use sanakirja::RootPageMut;
     |

error[E0599]: no method named `set_root` found for struct `MutTxn<E>` in the current scope
    --> /home/oleg/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/pijul-1.0.0-beta.11/src/commands/git.rs:383:9
     |
 383 |     txn.set_root(0, db.db.into());
     |         ^^^^^^^^
     |
    ::: /home/oleg/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sanakirja-2.0.0-beta/src/environment/mod.rs:604:8
     |
 604 |     fn set_root(&mut self, num: usize, value: u64);
     |        -------- the method is available for `MutTxn<&mut sanakirja::Env>` here
     |
     = help: items from traits can only be used if the trait is in scope
help: there is a method `root` with a similar name, but with different arguments
    --> /home/oleg/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/sanakirja-2.0.0-beta/src/environment/muttxn.rs:1067:5
     |
1067 |     pub fn root(&self, n: usize) -> Option<u64> {
     |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
help: trait `RootPageMut` which provides `set_root` is implemented but not in scope; perhaps you want to import it
     |
   1 + use sanakirja::RootPageMut;
     |

Some errors have detailed explanations: E0433, E0599.
For more information about an error, try `rustc --explain E0433`.
error: could not compile `pijul` (bin "pijul") due to 3 previous errors
error: failed to compile `pijul v1.0.0-beta.11`, intermediate artifacts can be found at `/tmp/cargo-installEukpMj`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.

Rustc version is 1.94.1