mirror of
https://seed.radicle.dev/rad:z4V1sjrXqjvFdnCUbxPFqd5p4DtH5.git
synced 2026-11-16 03:40:37 +08:00
Upgrade rust dependencies
Upgrade all radicle-* dependencies to the latest versions regardless of cooldown and the remaining rust dependencies honoring cooldown period.
This commit is contained in:
Generated
+453
-951
File diff suppressed because it is too large
Load Diff
@@ -2,6 +2,12 @@
|
|||||||
members = ["crates/*"]
|
members = ["crates/*"]
|
||||||
resolver = "2"
|
resolver = "2"
|
||||||
|
|
||||||
|
[patch.crates-io]
|
||||||
|
radicle-job = {
|
||||||
|
git = "https://seed.radicle.dev/z2UcCU1LgMshWvXj6hXSDDrwB8q8M/z6MkwPUeUS2fJMfc2HZN1RQTQcTTuhw4HhPySB8JeUg2mVvx",
|
||||||
|
branch = "patches/da55667860741ee221483fc42fa7cbbb58e0cfc2"
|
||||||
|
}
|
||||||
|
|
||||||
[workspace.package]
|
[workspace.package]
|
||||||
edition = "2024"
|
edition = "2024"
|
||||||
|
|
||||||
|
|||||||
@@ -17,12 +17,12 @@ tauri-build = { version = "2.6.1", features = ["isolation"] }
|
|||||||
anyhow = { version = "1.0.90" }
|
anyhow = { version = "1.0.90" }
|
||||||
base64 = { version = "0.22.1" }
|
base64 = { version = "0.22.1" }
|
||||||
either = { version = "1.15" }
|
either = { version = "1.15" }
|
||||||
git2 = { version = "0.20.4", default-features = false, features = ["vendored-libgit2"] }
|
git2 = { version = "0.21", default-features = false, features = ["vendored-libgit2"] }
|
||||||
infer = { version = "0.19.0" }
|
infer = { version = "0.19.0" }
|
||||||
log = { version = "0.4.22" }
|
log = { version = "0.4.22" }
|
||||||
radicle = { version = "0.24", features = ["tor", "i2p"] }
|
radicle = { version = "0.25", features = ["tor", "i2p"] }
|
||||||
radicle-types = { version = "0.1.0", path = "../radicle-types" }
|
radicle-types = { version = "0.1.0", path = "../radicle-types" }
|
||||||
radicle-surf = { version = "0.27.1", features = ["serde"] }
|
radicle-surf = { version = "0.29.0", features = ["serde"] }
|
||||||
serde = { version = "1.0.0", features = ["derive"] }
|
serde = { version = "1.0.0", features = ["derive"] }
|
||||||
serde_json = { version = "1.0.0" }
|
serde_json = { version = "1.0.0" }
|
||||||
tauri = { version = "2.11.1", features = ["isolation"] }
|
tauri = { version = "2.11.1", features = ["isolation"] }
|
||||||
|
|||||||
@@ -1,9 +1,11 @@
|
|||||||
use std::str::FromStr;
|
use std::str::FromStr;
|
||||||
|
|
||||||
|
use radicle::crypto::Seed;
|
||||||
use radicle::crypto::ssh::{self, Passphrase};
|
use radicle::crypto::ssh::{self, Passphrase};
|
||||||
use radicle::node::Alias;
|
use radicle::node::Alias;
|
||||||
use radicle::profile::env;
|
use radicle::profile::env;
|
||||||
use radicle_types::error::Error;
|
use radicle_types::error::Error;
|
||||||
|
use ssh_key::rand_core::{OsRng, RngCore};
|
||||||
|
|
||||||
use crate::AppState;
|
use crate::AppState;
|
||||||
|
|
||||||
@@ -47,7 +49,12 @@ pub(crate) fn init(alias: String, passphrase: Passphrase) -> Result<(), Error> {
|
|||||||
radicle::crypto::ssh::keystore::Error::PassphraseMissing,
|
radicle::crypto::ssh::keystore::Error::PassphraseMissing,
|
||||||
));
|
));
|
||||||
}
|
}
|
||||||
let profile = radicle::Profile::init(home, alias, Some(passphrase.clone()), env::seed())?;
|
let seed = env::seed().unwrap_or_else(|| {
|
||||||
|
let mut bytes = [0u8; 32];
|
||||||
|
OsRng.fill_bytes(&mut bytes);
|
||||||
|
Seed::new(bytes)
|
||||||
|
});
|
||||||
|
let profile = radicle::Profile::init(home, alias, Some(passphrase.clone()), seed)?;
|
||||||
match ssh::agent::Agent::connect() {
|
match ssh::agent::Agent::connect() {
|
||||||
Ok(mut agent) => register(&mut agent, &profile, passphrase.clone())?,
|
Ok(mut agent) => register(&mut agent, &profile, passphrase.clone())?,
|
||||||
Err(e) if e.is_not_running() => return Err(Error::AgentNotRunning),
|
Err(e) if e.is_not_running() => return Err(Error::AgentNotRunning),
|
||||||
|
|||||||
@@ -10,14 +10,14 @@ doctest = false
|
|||||||
anyhow = { version = "1.0.90" }
|
anyhow = { version = "1.0.90" }
|
||||||
axum = { version = "0.8.1", default-features = false, features = ["json"] }
|
axum = { version = "0.8.1", default-features = false, features = ["json"] }
|
||||||
base64 = { version = "0.22.1" }
|
base64 = { version = "0.22.1" }
|
||||||
git2 = { version = "0.20.4", default-features = false, features = ["vendored-libgit2"] }
|
git2 = { version = "0.21", default-features = false, features = ["vendored-libgit2"] }
|
||||||
log = { version = "0.4.22" }
|
log = { version = "0.4.22" }
|
||||||
infer = { version = "0.19.0" }
|
infer = { version = "0.19.0" }
|
||||||
mime-infer = { version = "3.0.0" }
|
mime-infer = { version = "3.0.0" }
|
||||||
radicle = { version = "0.24", features = ["tor", "i2p"] }
|
radicle = { version = "0.25", features = ["tor", "i2p"] }
|
||||||
radicle-job = { version = "0.6" }
|
radicle-job = { version = "0.6" }
|
||||||
radicle-localtime = { version = "0.1.0", features = ["serde"] }
|
radicle-localtime = { version = "0.1.0", features = ["serde"] }
|
||||||
radicle-surf = { version = "0.27.1", features = ["serde"] }
|
radicle-surf = { version = "0.29.0", features = ["serde"] }
|
||||||
serde = { version = "1.0.0", features = ["derive"] }
|
serde = { version = "1.0.0", features = ["derive"] }
|
||||||
serde_json = { version = "1.0.0" }
|
serde_json = { version = "1.0.0" }
|
||||||
sqlite = { version = "0.37.0", features = ["bundled"] }
|
sqlite = { version = "0.37.0", features = ["bundled"] }
|
||||||
@@ -53,4 +53,4 @@ ts-rs = { version = "12.0.1", features = [
|
|||||||
url = { version = "2.5.4", features = ["serde"] }
|
url = { version = "2.5.4", features = ["serde"] }
|
||||||
|
|
||||||
[dev-dependencies]
|
[dev-dependencies]
|
||||||
radicle = { version = "0.24", features = ["test", "tor", "i2p"] }
|
radicle = { version = "0.25", features = ["test", "tor", "i2p"] }
|
||||||
|
|||||||
@@ -318,7 +318,7 @@ where
|
|||||||
})?;
|
})?;
|
||||||
action(&blob, op, author).map_err(error::TreeAction::from)
|
action(&blob, op, author).map_err(error::TreeAction::from)
|
||||||
};
|
};
|
||||||
let name = entry.name()?;
|
let name = entry.name().ok()?;
|
||||||
// An entry is only considered an action if it:
|
// An entry is only considered an action if it:
|
||||||
// a) Is a blob
|
// a) Is a blob
|
||||||
// b) Its name is numeric, e.g. 1, 2, 3, etc.
|
// b) Its name is numeric, e.g. 1, 2, 3, etc.
|
||||||
|
|||||||
@@ -320,7 +320,7 @@ impl From<(git::fmt::RefString, Option<git::Oid>, Option<git::Oid>)> for RefUpda
|
|||||||
},
|
},
|
||||||
_ => RefUpdate::Skipped {
|
_ => RefUpdate::Skipped {
|
||||||
name,
|
name,
|
||||||
oid: new.unwrap_or(radicle::git::raw::Oid::zero().into()),
|
oid: new.unwrap_or(radicle::git::raw::Oid::ZERO_SHA1.into()),
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,7 +1,10 @@
|
|||||||
|
// `radicle_surf::Oid` and `radicle::git::Oid` are both aliases for
|
||||||
|
// `radicle_oid::Oid`, so these conversions are identities. They are kept as a
|
||||||
|
// single boundary in case the two crates diverge on their Oid type again.
|
||||||
pub(crate) fn from_surf(oid: radicle_surf::Oid) -> radicle::git::Oid {
|
pub(crate) fn from_surf(oid: radicle_surf::Oid) -> radicle::git::Oid {
|
||||||
radicle::git::Oid::from(radicle::git::raw::Oid::from(oid))
|
oid
|
||||||
}
|
}
|
||||||
|
|
||||||
pub(crate) fn into_surf(oid: radicle::git::Oid) -> radicle_surf::Oid {
|
pub(crate) fn into_surf(oid: radicle::git::Oid) -> radicle_surf::Oid {
|
||||||
radicle_surf::Oid::from(radicle::git::raw::Oid::from(oid))
|
oid
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ use std::path::Path;
|
|||||||
use radicle::Storage;
|
use radicle::Storage;
|
||||||
use radicle::cob::migrate;
|
use radicle::cob::migrate;
|
||||||
use radicle::crypto::ssh::Keystore;
|
use radicle::crypto::ssh::Keystore;
|
||||||
use radicle::crypto::{KeyPair, Seed};
|
use radicle::crypto::{Seed, Signer, SigningKey};
|
||||||
use radicle::node::{Features, Timestamp, UserAgent};
|
use radicle::node::{Features, Timestamp, UserAgent};
|
||||||
use radicle::profile::Home;
|
use radicle::profile::Home;
|
||||||
use radicle::{node, profile};
|
use radicle::{node, profile};
|
||||||
@@ -17,23 +17,23 @@ pub fn profile(home: &Path, seed: [u8; 32]) -> radicle::Profile {
|
|||||||
let config = profile::Config::new(alias.clone());
|
let config = profile::Config::new(alias.clone());
|
||||||
let keystore = Keystore::new(&home.keys());
|
let keystore = Keystore::new(&home.keys());
|
||||||
|
|
||||||
let keypair = KeyPair::from_seed(Seed::from(seed));
|
let signer = SigningKey::from_seed(Seed::new(seed));
|
||||||
let storage = Storage::open(
|
let storage = Storage::open(
|
||||||
home.storage(),
|
home.storage(),
|
||||||
radicle::git::UserInfo {
|
radicle::git::UserInfo {
|
||||||
alias: alias.clone(),
|
alias: alias.clone(),
|
||||||
key: keypair.pk.into(),
|
key: *signer.public_key(),
|
||||||
},
|
},
|
||||||
)
|
)
|
||||||
.unwrap();
|
.unwrap();
|
||||||
|
|
||||||
let mut db = home.policies_mut().unwrap();
|
let mut db = home.policies_mut().unwrap();
|
||||||
db.follow(&keypair.pk.into(), Some(&alias)).unwrap();
|
db.follow(signer.public_key(), Some(&alias)).unwrap();
|
||||||
|
|
||||||
let node_db = home.database_mut(config.node.database).unwrap();
|
let node_db = home.database_mut(config.node.database).unwrap();
|
||||||
node_db
|
node_db
|
||||||
.init(
|
.init(
|
||||||
&keypair.pk.into(),
|
signer.public_key(),
|
||||||
Features::SEED,
|
Features::SEED,
|
||||||
&alias,
|
&alias,
|
||||||
&UserAgent::default(),
|
&UserAgent::default(),
|
||||||
@@ -47,13 +47,13 @@ pub fn profile(home: &Path, seed: [u8; 32]) -> radicle::Profile {
|
|||||||
cobs.migrate(migrate::ignore).unwrap();
|
cobs.migrate(migrate::ignore).unwrap();
|
||||||
|
|
||||||
radicle::storage::git::transport::local::register(storage.clone());
|
radicle::storage::git::transport::local::register(storage.clone());
|
||||||
keystore.store(keypair.clone(), "radicle", None).unwrap();
|
keystore.store(&signer, "radicle", None).unwrap();
|
||||||
|
|
||||||
radicle::Profile {
|
radicle::Profile {
|
||||||
home,
|
home,
|
||||||
storage,
|
storage,
|
||||||
keystore,
|
keystore,
|
||||||
public_key: keypair.pk.into(),
|
public_key: *signer.public_key(),
|
||||||
config,
|
config,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -37,8 +37,7 @@ pub trait Profile {
|
|||||||
mod test {
|
mod test {
|
||||||
use std::str::FromStr;
|
use std::str::FromStr;
|
||||||
|
|
||||||
use radicle::crypto::Signer;
|
use radicle::crypto::{Seed, Signer, SigningKey};
|
||||||
use radicle::crypto::test::signer::MockSigner;
|
|
||||||
use radicle::node::{Alias, config};
|
use radicle::node::{Alias, config};
|
||||||
|
|
||||||
use crate::config::Config;
|
use crate::config::Config;
|
||||||
@@ -48,7 +47,7 @@ mod test {
|
|||||||
fn config() {
|
fn config() {
|
||||||
let tmp = tempfile::tempdir().unwrap();
|
let tmp = tempfile::tempdir().unwrap();
|
||||||
let profile = test::profile(tmp.path(), [0xff; 32]);
|
let profile = test::profile(tmp.path(), [0xff; 32]);
|
||||||
let signer = MockSigner::from_seed([0xff; 32]);
|
let signer = SigningKey::from_seed(Seed::new([0xff; 32]));
|
||||||
let state = AppState { profile };
|
let state = AppState { profile };
|
||||||
|
|
||||||
assert_eq!(
|
assert_eq!(
|
||||||
|
|||||||
@@ -249,7 +249,7 @@ fn canonical_refs(repo: &storage::git::Repository) -> Result<repo::Canonical, Er
|
|||||||
for (pattern, _) in rules.iter() {
|
for (pattern, _) in rules.iter() {
|
||||||
for r in repo.backend.references_glob(pattern.as_str())? {
|
for r in repo.backend.references_glob(pattern.as_str())? {
|
||||||
let r = r?;
|
let r = r?;
|
||||||
let Some(name) = r.name() else { continue };
|
let Ok(name) = r.name() else { continue };
|
||||||
let Some(oid) = r.target() else { continue };
|
let Some(oid) = r.target() else { continue };
|
||||||
|
|
||||||
if let Some(short) = name.strip_prefix("refs/tags/") {
|
if let Some(short) = name.strip_prefix("refs/tags/") {
|
||||||
@@ -295,7 +295,7 @@ fn resolve_tag(repo: &storage::git::Repository, oid: git::raw::Oid) -> Option<re
|
|||||||
oid: commit.id().into(),
|
oid: commit.id().into(),
|
||||||
timestamp,
|
timestamp,
|
||||||
tagger,
|
tagger,
|
||||||
message: tag.message().map(str::to_owned),
|
message: tag.message().ok().flatten().map(str::to_owned),
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
let commit = repo.backend.find_commit(oid).ok()?;
|
let commit = repo.backend.find_commit(oid).ok()?;
|
||||||
|
|||||||
@@ -2,6 +2,7 @@ use std::fs;
|
|||||||
|
|
||||||
use radicle::Node;
|
use radicle::Node;
|
||||||
use radicle::cob;
|
use radicle::cob;
|
||||||
|
use radicle::crypto::Signer;
|
||||||
use radicle::git;
|
use radicle::git;
|
||||||
use radicle::identity;
|
use radicle::identity;
|
||||||
use radicle::node::Handle;
|
use radicle::node::Handle;
|
||||||
|
|||||||
@@ -13,8 +13,8 @@ anyhow = { version = "1.0.90" }
|
|||||||
axum = { version = "0.8.1", default-features = false, features = ["json", "query", "tokio", "http1"] }
|
axum = { version = "0.8.1", default-features = false, features = ["json", "query", "tokio", "http1"] }
|
||||||
hyper = { version = "1.6", default-features = false }
|
hyper = { version = "1.6", default-features = false }
|
||||||
lexopt = { version = "0.3.0" }
|
lexopt = { version = "0.3.0" }
|
||||||
radicle = { version = "0.24" }
|
radicle = { version = "0.25" }
|
||||||
radicle-surf = { version = "0.27.1", default-features = false, features = ["serde"] }
|
radicle-surf = { version = "0.29.0", default-features = false, features = ["serde"] }
|
||||||
radicle-types = { path = "../radicle-types" }
|
radicle-types = { path = "../radicle-types" }
|
||||||
serde = { version = "1.0.0", features = ["derive"] }
|
serde = { version = "1.0.0", features = ["derive"] }
|
||||||
serde_json = { version = "1.0.0", features = ["preserve_order"] }
|
serde_json = { version = "1.0.0", features = ["preserve_order"] }
|
||||||
|
|||||||
+1
-1
@@ -1,4 +1,4 @@
|
|||||||
[toolchain]
|
[toolchain]
|
||||||
channel = "1.90"
|
channel = "1.95"
|
||||||
profile = "default"
|
profile = "default"
|
||||||
components = [ "rust-src" ]
|
components = [ "rust-src" ]
|
||||||
|
|||||||
Reference in New Issue
Block a user