58 Commits

Author SHA1 Message Date
8771c77869 Update dependency @eslint/js to ^9.32.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-28 00:20:35 +00:00
843e53e83a Merge pull request 'Update Rust crate sysinfo to 0.36.1' (#367) from renovate/sysinfo-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-27 00:20:20 +00:00
5f911e6fb4 Update Rust crate sysinfo to 0.36.1
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
2025-07-27 00:20:16 +00:00
6c42cd62df Merge pull request 'Update dependency eslint to ^9.32.0' (#366) from renovate/eslint-9.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-26 00:20:00 +00:00
a4a4954344 Update dependency eslint to ^9.32.0
Some checks failed
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is failing
2025-07-26 00:19:58 +00:00
5d20081fca Merge pull request 'Update dependency react-router-dom to ^7.7.1' (#365) from renovate/react-router-dom-7.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-25 00:20:51 +00:00
f46abedd1a Update dependency react-router-dom to ^7.7.1
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
2025-07-25 00:20:48 +00:00
0548e480b4 Merge pull request 'Update Rust crate quick-xml to 0.38.0' (#364) from renovate/quick-xml-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-24 00:21:06 +00:00
6b9455f6ea Update Rust crate quick-xml to 0.38.0
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
2025-07-24 00:21:04 +00:00
17108a52a3 Merge pull request 'Update dependency typescript-eslint to ^8.38.0' (#363) from renovate/typescript-eslint-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-23 00:20:29 +00:00
47ebc77458 Update dependency typescript-eslint to ^8.38.0
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
2025-07-23 00:20:28 +00:00
87e57dea56 Merge pull request 'Update dependency @mui/x-data-grid to ^8.9.1' (#362) from renovate/mui-x-data-grid-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-22 00:25:56 +00:00
24b4c02d9f Update dependency @mui/x-data-grid to ^8.9.1
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
2025-07-22 00:25:42 +00:00
f2a3e16a1c Merge pull request 'Update Rust crate rand to 0.9.2' (#361) from renovate/rand-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-21 00:21:31 +00:00
6530a6d8e9 Update Rust crate rand to 0.9.2
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
2025-07-21 00:21:29 +00:00
b741d79ba7 Merge pull request 'Update dependency @vitejs/plugin-react to ^4.7.0' (#360) from renovate/vitejs-plugin-react-4.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-20 00:18:51 +00:00
eeda3ca4ec Update dependency @vitejs/plugin-react to ^4.7.0
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
2025-07-20 00:18:48 +00:00
992f91bb8a Merge pull request 'Update Rust crate serde_json to 1.0.141' (#359) from renovate/serde_json-1.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-19 00:22:33 +00:00
2f3ad231c7 Update Rust crate serde_json to 1.0.141
Some checks failed
continuous-integration/drone/push Build is failing
continuous-integration/drone/pr Build is passing
2025-07-19 00:22:23 +00:00
6e41d3c6df Merge pull request 'Update materialui to ^7.2.0' (#358) from renovate/materialui into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-18 02:21:31 +00:00
f57f3f3c9a Update materialui to ^7.2.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-18 00:19:40 +00:00
34fda42766 Merge pull request 'Update dependency react-router-dom to ^7.7.0' (#357) from renovate/react-router-dom-7.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-17 02:41:12 +00:00
a9536f4091 Update dependency react-router-dom to ^7.7.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-17 00:19:55 +00:00
7770ad3ca7 Merge pull request 'Update dependency typescript-eslint to ^8.37.0' (#356) from renovate/typescript-eslint-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-16 02:28:11 +00:00
02b3373f51 Update dependency typescript-eslint to ^8.37.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-16 00:19:50 +00:00
5153af0618 Merge pull request 'Update dependency eslint to ^9.31.0' (#355) from renovate/eslint-9.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-15 02:15:03 +00:00
d50c3a00a5 Update dependency eslint to ^9.31.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-15 00:19:02 +00:00
4618c2c081 Merge pull request 'Update dependency eslint-plugin-react-x to ^1.52.3' (#354) from renovate/eslint-plugin-react-x-1.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-14 02:12:21 +00:00
34d78085c8 Update dependency eslint-plugin-react-x to ^1.52.3
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-14 00:18:46 +00:00
0381b73635 Merge pull request 'Update dependency eslint-plugin-react-dom to ^1.52.3' (#353) from renovate/eslint-plugin-react-dom-1.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-13 02:20:28 +00:00
2e88529e3d Update dependency eslint-plugin-react-dom to ^1.52.3
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-13 00:18:37 +00:00
84e3f61902 Merge pull request 'Update dependency @mui/x-data-grid to ^8.8.0' (#352) from renovate/mui-x-data-grid-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-12 02:35:41 +00:00
9623493aee Update dependency @mui/x-data-grid to ^8.8.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-12 00:18:58 +00:00
e5ad7d2fe4 Merge pull request 'Update dependency humanize-duration to ^3.33.0' (#351) from renovate/humanize-duration-3.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-11 02:28:44 +00:00
940179ffe5 Update dependency humanize-duration to ^3.33.0
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-11 00:19:12 +00:00
f7b27a527b Merge pull request 'Update Rust crate clap to 4.5.41' (#350) from renovate/clap-4.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-10 02:45:14 +00:00
caac7dc1bf Update Rust crate clap to 4.5.41
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-10 00:20:01 +00:00
a0f815534b Merge pull request 'Update dependency globals to ^16.3.0' (#349) from renovate/globals-16.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-09 02:31:14 +00:00
928c2c5cb4 Update dependency globals to ^16.3.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-09 00:19:18 +00:00
ddc8b65f8a Merge pull request 'Update dependency eslint to ^9.30.1' (#348) from renovate/eslint-9.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-08 02:47:12 +00:00
0b67659efa Update dependency eslint to ^9.30.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-08 00:19:22 +00:00
0601d9cad9 Merge pull request 'Update dependency @mui/x-data-grid to ^8.7.0' (#347) from renovate/mui-x-data-grid-8.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-07 02:12:52 +00:00
a1b6ebd9f5 Update dependency @mui/x-data-grid to ^8.7.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-07 00:18:43 +00:00
b8eedaab51 Merge pull request 'Update Rust crate reqwest to 0.12.22' (#346) from renovate/reqwest-0.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-06 02:00:23 +00:00
0afc3252c6 Update Rust crate reqwest to 0.12.22
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
2025-07-06 00:18:48 +00:00
685f1bc502 Merge pull request 'Update dependency react-router-dom to ^7.6.3' (#345) from renovate/react-router-dom-7.x into master
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-05 02:15:49 +00:00
3e642dd638 Update dependency react-router-dom to ^7.6.3
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-05 00:12:33 +00:00
22ad68e43e Update dependency @emotion/styled to ^11.14.1
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-07-04 00:12:22 +00:00
1dd86807fd Fix cargo clippy issues
All checks were successful
continuous-integration/drone/push Build is passing
2025-07-03 08:01:36 +02:00
96747bda89 Update dependency eslint-plugin-react-x to ^1.52.2
Some checks failed
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is failing
2025-06-26 00:12:11 +00:00
e15514dd4f Update dependency eslint-plugin-react-dom to ^1.52.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-06-25 00:12:04 +00:00
7556ee2c06 Update dependency @vitejs/plugin-react to ^4.6.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-06-24 00:14:13 +00:00
992a902590 Update dependency eslint to ^9.29.0
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-06-23 00:24:41 +00:00
100f12e7c1 Update dependency @vitejs/plugin-react to ^4.5.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-06-22 00:23:00 +00:00
3de66a5873 Fix a bug in sysinfo route with docker containers
All checks were successful
continuous-integration/drone/push Build is passing
2025-06-21 19:06:43 +02:00
49360188f5 Update dependency @mui/x-data-grid to ^8.5.3
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-06-21 00:23:42 +00:00
35c48ba846 Update materialui to ^7.1.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-06-20 00:25:00 +00:00
1ad4262086 Update Rust crate sysinfo to 0.35.2
All checks were successful
continuous-integration/drone/pr Build is passing
continuous-integration/drone/push Build is passing
2025-06-19 00:23:07 +00:00
13 changed files with 523 additions and 490 deletions

View File

@@ -112,7 +112,7 @@ dependencies = [
"mime",
"percent-encoding",
"pin-project-lite",
"rand 0.9.1",
"rand 0.9.2",
"sha1",
"smallvec",
"tokio",
@@ -616,7 +616,7 @@ dependencies = [
"elliptic-curve",
"jsonwebtoken",
"p384",
"rand 0.9.1",
"rand 0.9.2",
"serde",
]
@@ -811,9 +811,9 @@ dependencies = [
[[package]]
name = "clap"
version = "4.5.40"
version = "4.5.41"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "40b6887a1d8685cebccf115538db5c0efe625ccac9696ad45c409d96566e910f"
checksum = "be92d32e80243a54711e5d7ce823c35c41c9d929dc4ab58e1276f625841aadf9"
dependencies = [
"clap_builder",
"clap_derive",
@@ -821,9 +821,9 @@ dependencies = [
[[package]]
name = "clap_builder"
version = "4.5.40"
version = "4.5.41"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e0c66c08ce9f0c698cbce5c0279d0bb6ac936d8674174fe48f736533b964f59e"
checksum = "707eab41e9622f9139419d573eca0900137718000c517d47da73045f54331c3d"
dependencies = [
"anstream",
"anstyle",
@@ -833,9 +833,9 @@ dependencies = [
[[package]]
name = "clap_derive"
version = "4.5.40"
version = "4.5.41"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d2c7947ae4cc3d851207c1adb5b5e260ff0cca11446b1d6d1423788e442257ce"
checksum = "ef4f52386a59ca4c860f7393bcf8abd8dfd91ecccc0f774635ff68e92eeef491"
dependencies = [
"heck",
"proc-macro2",
@@ -2084,9 +2084,9 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
[[package]]
name = "libc"
version = "0.2.172"
version = "0.2.174"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa"
checksum = "1171693293099992e19cddea4e8b849964e9846f4acee11b3948bcc337be8776"
[[package]]
name = "libfuzzer-sys"
@@ -2147,7 +2147,7 @@ dependencies = [
"base64 0.22.1",
"bincode",
"log",
"rand 0.9.1",
"rand 0.9.2",
"reqwest",
"serde",
"serde_json",
@@ -2740,9 +2740,9 @@ checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3"
[[package]]
name = "quick-xml"
version = "0.37.5"
version = "0.38.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "331e97a1af0bf59823e6eadffe373d7b27f485be8748f71471c662c1f269b7fb"
checksum = "8927b0664f5c5a98265138b7e3f90aa19a6b21353182469ace36d4ac527b7b1b"
dependencies = [
"memchr",
"serde",
@@ -2776,9 +2776,9 @@ dependencies = [
[[package]]
name = "rand"
version = "0.9.1"
version = "0.9.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9fbfd9d094a40bf3ae768db9361049ace4c0e04a4fd6b359518bd7b73a73dd97"
checksum = "6db2770f06117d490610c7488547d543617b21bfa07796d7a12f6f1bd53850d1"
dependencies = [
"rand_chacha 0.9.0",
"rand_core 0.9.3",
@@ -2938,9 +2938,9 @@ checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
[[package]]
name = "reqwest"
version = "0.12.20"
version = "0.12.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eabf4c97d9130e2bf606614eb937e86edac8292eaa6f422f995d7e8de1eb1813"
checksum = "cbc931937e6ca3a06e3b6c0aa7841849b160a90351d6ab467a8b9b9959767531"
dependencies = [
"base64 0.22.1",
"bytes",
@@ -3206,9 +3206,9 @@ dependencies = [
[[package]]
name = "serde_json"
version = "1.0.140"
version = "1.0.141"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "20068b6e96dc6c9bd23e01df8827e6c7e1f2fddd43c21810382803c136b99373"
checksum = "30b9eff21ebe718216c6ec64e1d9ac57087aad11efc64e32002bce4a0d4c03d3"
dependencies = [
"itoa",
"memchr",
@@ -3421,9 +3421,9 @@ dependencies = [
[[package]]
name = "sysinfo"
version = "0.35.1"
version = "0.36.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "79251336d17c72d9762b8b54be4befe38d2db56fbbc0241396d70f173c39d47a"
checksum = "252800745060e7b9ffb7b2badbd8b31cfa4aa2e61af879d0a3bf2a317c20217d"
dependencies = [
"libc",
"memchr",
@@ -3936,7 +3936,7 @@ dependencies = [
"nix",
"num",
"quick-xml",
"rand 0.9.1",
"rand 0.9.2",
"reqwest",
"rust-embed",
"serde",

View File

@@ -8,7 +8,7 @@ edition = "2024"
[dependencies]
log = "0.4.27"
env_logger = "0.11.8"
clap = { version = "4.5.40", features = ["derive", "env"] }
clap = { version = "4.5.41", features = ["derive", "env"] }
light-openid = { version = "1.0.4", features = ["crypto-wrapper"] }
lazy_static = "1.5.0"
actix = "0.13.5"
@@ -21,22 +21,22 @@ actix-files = "0.6.6"
actix-ws = "0.3.0"
actix-http = "3.11.0"
serde = { version = "1.0.219", features = ["derive"] }
serde_json = "1.0.140"
serde_json = "1.0.141"
serde_yml = "0.0.12"
quick-xml = { version = "0.37.5", features = ["serialize", "overlapped-lists"] }
quick-xml = { version = "0.38.0", features = ["serialize", "overlapped-lists"] }
futures-util = "0.3.31"
anyhow = "1.0.98"
actix-multipart = "0.7.2"
tempfile = "3.20.0"
reqwest = { version = "0.12.20", features = ["stream"] }
reqwest = { version = "0.12.22", features = ["stream"] }
url = "2.5.4"
virt = "0.4.2"
sysinfo = { version = "0.35.1", features = ["serde"] }
sysinfo = { version = "0.36.1", features = ["serde"] }
uuid = { version = "1.16.0", features = ["v4", "serde"] }
lazy-regex = "3.4.1"
thiserror = "2.0.12"
image = "0.25.6"
rand = "0.9.1"
rand = "0.9.2"
tokio = { version = "1.45.0", features = ["rt", "time", "macros"] }
futures = "0.3.31"
ipnetwork = { version = "0.21.1", features = ["serde"] }

View File

@@ -27,10 +27,7 @@ impl LibVirtActor {
/// Connect to hypervisor
pub async fn connect() -> anyhow::Result<Self> {
let hypervisor_uri = AppConfig::get().hypervisor_uri.as_deref().unwrap_or("");
log::info!(
"Will connect to hypvervisor at address '{}'",
hypervisor_uri
);
log::info!("Will connect to hypvervisor at address '{hypervisor_uri}'",);
let conn = Connect::open(Some(hypervisor_uri))?;
Ok(Self { m: conn })
@@ -102,7 +99,7 @@ impl Handler<GetDomainXMLReq> for LibVirtActor {
log::debug!("Get domain XML:\n{}", msg.0.as_string());
let domain = Domain::lookup_by_uuid_string(&self.m, &msg.0.as_string())?;
let xml = domain.get_xml_desc(VIR_DOMAIN_XML_SECURE)?;
log::debug!("XML = {}", xml);
log::debug!("XML = {xml}");
DomainXML::parse_xml(&xml)
}
}
@@ -131,7 +128,7 @@ impl Handler<DefineDomainReq> for LibVirtActor {
fn handle(&mut self, mut msg: DefineDomainReq, _ctx: &mut Self::Context) -> Self::Result {
let xml = msg.1.as_xml()?;
log::debug!("Define domain:\n{}", xml);
log::debug!("Define domain:\n{xml}");
let domain = Domain::define_xml(&self.m, &xml)?;
let uuid = XMLUuid::parse_from_str(&domain.get_uuid_string()?)?;
@@ -446,7 +443,7 @@ impl Handler<GetNetworkXMLReq> for LibVirtActor {
log::debug!("Get network XML:\n{}", msg.0.as_string());
let network = Network::lookup_by_uuid_string(&self.m, &msg.0.as_string())?;
let xml = network.get_xml_desc(0)?;
log::debug!("XML = {}", xml);
log::debug!("XML = {xml}");
NetworkXML::parse_xml(&xml)
}
}
@@ -602,7 +599,7 @@ impl Handler<GetNWFilterXMLReq> for LibVirtActor {
log::debug!("Get network filter XML:\n{}", msg.0.as_string());
let filter = NWFilter::lookup_by_uuid_string(&self.m, &msg.0.as_string())?;
let xml = filter.get_xml_desc(0)?;
log::debug!("XML = {}", xml);
log::debug!("XML = {xml}");
NetworkFilterXML::parse_xml(xml)
}
}
@@ -617,7 +614,7 @@ impl Handler<DefineNWFilterReq> for LibVirtActor {
fn handle(&mut self, mut msg: DefineNWFilterReq, _ctx: &mut Self::Context) -> Self::Result {
let xml = msg.1.into_xml()?;
log::debug!("Define network filter:\n{}", xml);
log::debug!("Define network filter:\n{xml}");
let filter = NWFilter::define_xml(&self.m, &xml)?;
let uuid = XMLUuid::parse_from_str(&filter.get_uuid_string()?)?;

View File

@@ -280,7 +280,7 @@ impl AppConfig {
/// Get VM vnc sockets path for domain
pub fn vnc_socket_for_domain(&self, name: &str) -> PathBuf {
self.vnc_sockets_path().join(format!("vnc-{}", name))
self.vnc_sockets_path().join(format!("vnc-{name}"))
}
/// Get VM root disks storage directory

View File

@@ -34,8 +34,7 @@ pub async fn upload(MultipartForm(mut form): MultipartForm<UploadDiskImageForm>)
if let Some(mime_type) = file.content_type {
if !constants::ALLOWED_DISK_IMAGES_MIME_TYPES.contains(&mime_type.as_ref()) {
return Ok(HttpResponse::BadRequest().json(format!(
"Unsupported file type for disk upload: {}",
mime_type
"Unsupported file type for disk upload: {mime_type}"
)));
}
}

View File

@@ -52,7 +52,7 @@ pub async fn upload_file(MultipartForm(mut form): MultipartForm<UploadIsoForm>)
}
let dest_file = AppConfig::get().iso_storage_path().join(file_name);
log::info!("Will save ISO file {:?}", dest_file);
log::info!("Will save ISO file {dest_file:?}");
if dest_file.exists() {
log::error!("Conflict with uploaded iso file name!");

View File

@@ -43,7 +43,7 @@ impl actix_web::error::ResponseError for HttpErr {
}
}
fn error_response(&self) -> HttpResponse<BoxBody> {
log::error!("Error while processing request! {}", self);
log::error!("Error while processing request! {self}");
HttpResponse::InternalServerError().body("Failed to execute request!")
}

View File

@@ -109,7 +109,7 @@ fn extract_ip_mask<const V: usize>(n: Option<u8>) -> anyhow::Result<Option<u8>>
fn extract_nw_filter_comment(n: &Option<String>) -> anyhow::Result<Option<String>> {
if let Some(comment) = n {
if comment.len() > 256 || comment.contains('\"') || comment.contains('\n') {
return Err(NetworkFilterExtraction(format!("Invalid comment! {}", comment)).into());
return Err(NetworkFilterExtraction(format!("Invalid comment! {comment}")).into());
}
}

View File

@@ -69,8 +69,7 @@ where
if !AppConfig::get().is_allowed_ip(remote_ip.0) {
log::error!(
"An attempt to access VirtWeb from an unauthorized network has been intercepted! {:?}",
remote_ip
"An attempt to access VirtWeb from an unauthorized network has been intercepted! {remote_ip:?}"
);
return Ok(req
.into_response(

View File

@@ -81,10 +81,10 @@ impl CloudInitConfig {
// Process metadata
let mut metadatas = vec![];
if let Some(inst_id) = &self.instance_id {
metadatas.push(format!("instance-id: {}", inst_id));
metadatas.push(format!("instance-id: {inst_id}"));
}
if let Some(local_hostname) = &self.local_hostname {
metadatas.push(format!("local-hostname: {}", local_hostname));
metadatas.push(format!("local-hostname: {local_hostname}"));
}
if let Some(dsmode) = &self.dsmode {
metadatas.push(format!(

File diff suppressed because it is too large Load Diff

View File

@@ -11,23 +11,23 @@
},
"dependencies": {
"@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.0",
"@emotion/styled": "^11.14.1",
"@fontsource/roboto": "^5.2.6",
"@mdi/js": "^7.4.47",
"@mdi/react": "^1.6.1",
"@monaco-editor/react": "^4.7.0",
"@mui/icons-material": "^7.1.1",
"@mui/material": "^7.1.1",
"@mui/icons-material": "^7.2.0",
"@mui/material": "^7.2.0",
"@mui/x-charts": "^8.3.1",
"@mui/x-data-grid": "^8.3.1",
"@mui/x-data-grid": "^8.9.1",
"date-and-time": "^3.6.0",
"filesize": "^10.1.6",
"humanize-duration": "^3.32.2",
"humanize-duration": "^3.33.0",
"monaco-editor": "^0.52.2",
"monaco-yaml": "^5.4.0",
"react": "^19.1.0",
"react-dom": "^19.1.0",
"react-router-dom": "^7.6.2",
"react-router-dom": "^7.7.1",
"react-syntax-highlighter": "^15.6.1",
"react-vnc": "^3.1.0",
"uuid": "^11.1.0",
@@ -35,22 +35,22 @@
"yaml": "^2.8.0"
},
"devDependencies": {
"@eslint/js": "^9.27.0",
"@eslint/js": "^9.32.0",
"@types/humanize-duration": "^3.27.4",
"@types/jest": "^29.5.14",
"@types/react": "^19.1.8",
"@types/react-dom": "^19.1.6",
"@types/react-syntax-highlighter": "^15.5.13",
"@types/uuid": "^10.0.0",
"@vitejs/plugin-react": "^4.4.1",
"eslint": "^9.27.0",
"eslint-plugin-react-dom": "^1.49.0",
"@vitejs/plugin-react": "^4.7.0",
"eslint": "^9.32.0",
"eslint-plugin-react-dom": "^1.52.3",
"eslint-plugin-react-hooks": "^5.2.0",
"eslint-plugin-react-refresh": "^0.4.20",
"eslint-plugin-react-x": "^1.49.0",
"globals": "^16.1.0",
"eslint-plugin-react-x": "^1.52.3",
"globals": "^16.3.0",
"typescript": "^5.8.3",
"typescript-eslint": "^8.32.1",
"typescript-eslint": "^8.38.0",
"vite": "^6.3.5"
}
}

View File

@@ -319,7 +319,7 @@ function DiskDetailsTable(p: { disks: DiskInfo[] }): React.ReactElement {
{p.disks.map((e, c) => (
<TableRow hover key={c}>
<TableCell>{e.name}</TableCell>
<TableCell>{e.DiskKind}</TableCell>
<TableCell>{String(e.DiskKind)}</TableCell>
<TableCell>{e.mount_point}</TableCell>
<TableCell>{filesize(e.total_space)}</TableCell>
<TableCell>{filesize(e.available_space)}</TableCell>