From 490fc18b656a15e65403ebf14a3a08f25cede2a2 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 18 Dec 2025 12:13:07 +0000 Subject: [PATCH 1/3] Initial plan From 55153b1b83932bd3a54d1eb18f497c03214da03f Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 18 Dec 2025 12:21:32 +0000 Subject: [PATCH 2/3] Add #[rustfmt::skip] annotations to separate pub use from regular use statements Co-authored-by: CBenoit <3809077+CBenoit@users.noreply.github.com> --- crates/devolutions-agent-shared/src/lib.rs | 3 +++ .../src/windows/mod.rs | 4 +++- .../src/apis/mod.rs | 4 +++- .../src/models/mod.rs | 21 +++++++++++++++++++ crates/devolutions-pedm-shared/src/client.rs | 4 +++- crates/devolutions-pedm/src/lib.rs | 1 + crates/jet-proto/src/lib.rs | 5 +++-- crates/jmux-proto/src/lib.rs | 4 +++- crates/jmux-proxy/src/lib.rs | 10 ++++++--- crates/job-queue-libsql/src/lib.rs | 4 +++- crates/network-monitor/src/lib.rs | 1 + crates/network-scanner/src/broadcast/mod.rs | 1 + crates/network-scanner/src/interfaces/mod.rs | 2 ++ crates/proxy-socks/src/lib.rs | 5 ++++- crates/traffic-audit-libsql/src/lib.rs | 4 +++- crates/transport/src/lib.rs | 4 ++++ crates/video-streamer/src/lib.rs | 4 ++++ crates/win-api-wrappers/src/identity/sid.rs | 4 +++- crates/win-api-wrappers/src/lib.rs | 9 +++++--- crates/win-api-wrappers/src/str.rs | 2 ++ devolutions-gateway/src/ai/mod.rs | 1 + devolutions-gateway/src/plugin_manager/mod.rs | 7 +++++-- 22 files changed, 86 insertions(+), 18 deletions(-) diff --git a/crates/devolutions-agent-shared/src/lib.rs b/crates/devolutions-agent-shared/src/lib.rs index c9b153879..b58f361d0 100644 --- a/crates/devolutions-agent-shared/src/lib.rs +++ b/crates/devolutions-agent-shared/src/lib.rs @@ -11,7 +11,10 @@ use std::env; use camino::Utf8PathBuf; use cfg_if::cfg_if; + +#[rustfmt::skip] pub use date_version::{DateVersion, DateVersionError}; +#[rustfmt::skip] pub use update_json::{ProductUpdateInfo, UpdateJson, VersionSpecification}; cfg_if! { diff --git a/crates/devolutions-agent-shared/src/windows/mod.rs b/crates/devolutions-agent-shared/src/windows/mod.rs index 4706196d6..5b6c2e735 100644 --- a/crates/devolutions-agent-shared/src/windows/mod.rs +++ b/crates/devolutions-agent-shared/src/windows/mod.rs @@ -2,9 +2,11 @@ mod reversed_hex_uuid; pub mod registry; -pub use reversed_hex_uuid::InvalidReversedHexUuid; use uuid::{Uuid, uuid}; +#[rustfmt::skip] +pub use reversed_hex_uuid::InvalidReversedHexUuid; + /// MSI upgrade code for the Devolutions Gateway. /// /// MSI update code is same for all versions of the product, while product code is different for diff --git a/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/apis/mod.rs b/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/apis/mod.rs index e907d7d10..8be89e7a2 100644 --- a/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/apis/mod.rs +++ b/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/apis/mod.rs @@ -43,7 +43,9 @@ impl From for Error { mod request; mod default_api; -pub use self::default_api::{DefaultApi, DefaultApiClient}; pub mod client; pub mod configuration; + +#[rustfmt::skip] +pub use self::default_api::{DefaultApi, DefaultApiClient}; diff --git a/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/models/mod.rs b/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/models/mod.rs index 733315799..b15a3caba 100644 --- a/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/models/mod.rs +++ b/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/models/mod.rs @@ -1,42 +1,63 @@ pub mod about_data; +#[rustfmt::skip] pub use self::about_data::AboutData; pub mod assignment; +#[rustfmt::skip] pub use self::assignment::Assignment; pub mod authenticode_signature_status; +#[rustfmt::skip] pub use self::authenticode_signature_status::AuthenticodeSignatureStatus; pub mod certificate; +#[rustfmt::skip] pub use self::certificate::Certificate; pub mod elevation_kind; +#[rustfmt::skip] pub use self::elevation_kind::ElevationKind; pub mod elevation_method; +#[rustfmt::skip] pub use self::elevation_method::ElevationMethod; pub mod error; +#[rustfmt::skip] pub use self::error::Error; pub mod error_response; +#[rustfmt::skip] pub use self::error_response::ErrorResponse; pub mod get_profiles_me_response; +#[rustfmt::skip] pub use self::get_profiles_me_response::GetProfilesMeResponse; pub mod hash; +#[rustfmt::skip] pub use self::hash::Hash; pub mod jit_elevation_log_page; +#[rustfmt::skip] pub use self::jit_elevation_log_page::JitElevationLogPage; pub mod jit_elevation_log_query_options; +#[rustfmt::skip] pub use self::jit_elevation_log_query_options::JitElevationLogQueryOptions; pub mod jit_elevation_log_row; +#[rustfmt::skip] pub use self::jit_elevation_log_row::JitElevationLogRow; pub mod launch_payload; +#[rustfmt::skip] pub use self::launch_payload::LaunchPayload; pub mod launch_response; +#[rustfmt::skip] pub use self::launch_response::LaunchResponse; pub mod path_id_parameter; +#[rustfmt::skip] pub use self::path_id_parameter::PathIdParameter; pub mod profile; +#[rustfmt::skip] pub use self::profile::Profile; pub mod signature; +#[rustfmt::skip] pub use self::signature::Signature; pub mod signer; +#[rustfmt::skip] pub use self::signer::Signer; pub mod startup_info_dto; +#[rustfmt::skip] pub use self::startup_info_dto::StartupInfoDto; pub mod user; +#[rustfmt::skip] pub use self::user::User; diff --git a/crates/devolutions-pedm-shared/src/client.rs b/crates/devolutions-pedm-shared/src/client.rs index f34e99719..8ed01a569 100644 --- a/crates/devolutions-pedm-shared/src/client.rs +++ b/crates/devolutions-pedm-shared/src/client.rs @@ -6,7 +6,6 @@ use std::time::Duration; use anyhow::{Result, bail}; use devolutions_pedm_client_http::apis::client::APIClient; -pub use devolutions_pedm_client_http::models; use hyper::Uri; use hyper::body::HttpBody; use hyper::client::connect::{Connected, Connection}; @@ -17,6 +16,9 @@ use tower::Service; use win_api_wrappers::raw::Win32::Foundation::ERROR_PIPE_BUSY; use win_api_wrappers::raw::Win32::Storage::FileSystem::SECURITY_IMPERSONATION; +#[rustfmt::skip] +pub use devolutions_pedm_client_http::models; + #[pin_project] struct NamedPipeStream(#[pin] NamedPipeClient); diff --git a/crates/devolutions-pedm/src/lib.rs b/crates/devolutions-pedm/src/lib.rs index 48f281093..304af984f 100644 --- a/crates/devolutions-pedm/src/lib.rs +++ b/crates/devolutions-pedm/src/lib.rs @@ -7,6 +7,7 @@ mod db; mod log; pub mod model; +#[rustfmt::skip] pub use config::Config; cfg_if::cfg_if! { diff --git a/crates/jet-proto/src/lib.rs b/crates/jet-proto/src/lib.rs index 69cd2e3ff..fc0e9f73d 100644 --- a/crates/jet-proto/src/lib.rs +++ b/crates/jet-proto/src/lib.rs @@ -4,10 +4,11 @@ pub mod accept; pub mod connect; pub mod test; -pub use http::StatusCode; - mod utils; +#[rustfmt::skip] +pub use http::StatusCode; + use std::env; use std::io::{self, Read}; use std::sync::OnceLock; diff --git a/crates/jmux-proto/src/lib.rs b/crates/jmux-proto/src/lib.rs index f7b28f41c..a093ce3c8 100644 --- a/crates/jmux-proto/src/lib.rs +++ b/crates/jmux-proto/src/lib.rs @@ -5,9 +5,11 @@ use core::fmt; use bytes::{Buf as _, BufMut as _}; +use smol_str::SmolStr; + // We re-export these types, because they are used in the public API. +#[rustfmt::skip] pub use bytes::{Bytes, BytesMut}; -use smol_str::SmolStr; /// Distant identifier for a channel #[derive(Debug, PartialEq, Eq, Clone, Copy, Hash)] diff --git a/crates/jmux-proxy/src/lib.rs b/crates/jmux-proxy/src/lib.rs index c41c1abd8..ef27258f1 100644 --- a/crates/jmux-proxy/src/lib.rs +++ b/crates/jmux-proxy/src/lib.rs @@ -19,7 +19,6 @@ use std::time::SystemTime; use anyhow::Context as _; use bytes::Bytes; -pub use jmux_proto::DestinationUrl; use jmux_proto::{ChannelData, DistantChannelId, Header, LocalChannelId, Message, ReasonCode}; use tokio::io::{AsyncRead, AsyncWrite, AsyncWriteExt}; use tokio::net::TcpStream; @@ -30,11 +29,16 @@ use tokio_util::codec::FramedRead; use tracing::{Instrument as _, Span}; use self::codec::JmuxCodec; -pub use self::config::{FilteringRule, JmuxConfig}; use self::event::TrafficCallback; -pub use self::event::{EventOutcome, TrafficEvent, TransportProtocol}; use self::id_allocator::IdAllocator; +#[rustfmt::skip] +pub use jmux_proto::DestinationUrl; +#[rustfmt::skip] +pub use self::config::{FilteringRule, JmuxConfig}; +#[rustfmt::skip] +pub use self::event::{EventOutcome, TrafficEvent, TransportProtocol}; + const MAXIMUM_PACKET_SIZE_IN_BYTES: u16 = 4 * 1024; // 4 kiB const WINDOW_ADJUSTMENT_THRESHOLD: u32 = 4 * 1024; // 4 kiB diff --git a/crates/job-queue-libsql/src/lib.rs b/crates/job-queue-libsql/src/lib.rs index 2ec85f19b..0efbfd23f 100644 --- a/crates/job-queue-libsql/src/lib.rs +++ b/crates/job-queue-libsql/src/lib.rs @@ -4,12 +4,14 @@ extern crate tracing; use anyhow::Context as _; use async_trait::async_trait; use job_queue::{DynJob, JobCtx, JobQueue, JobReader, RunnerWaker}; -pub use libsql; use libsql::Connection; use time::OffsetDateTime; use ulid::Ulid; use uuid::Uuid; +#[rustfmt::skip] +pub use libsql; + /// Implementation of [`JobQueue`] using libSQL as the backend /// /// This is inspired by 37signals' Solid Queue: diff --git a/crates/network-monitor/src/lib.rs b/crates/network-monitor/src/lib.rs index c050f8898..1feae9159 100644 --- a/crates/network-monitor/src/lib.rs +++ b/crates/network-monitor/src/lib.rs @@ -12,6 +12,7 @@ use tracing::warn; mod log_queue; mod state; +#[rustfmt::skip] pub use crate::state::{ConfigCache, State}; #[derive(Error, Debug)] diff --git a/crates/network-scanner/src/broadcast/mod.rs b/crates/network-scanner/src/broadcast/mod.rs index 65b1e4278..24ae28d4b 100644 --- a/crates/network-scanner/src/broadcast/mod.rs +++ b/crates/network-scanner/src/broadcast/mod.rs @@ -6,6 +6,7 @@ use anyhow::Context; pub mod asynchronous; pub mod blocking; +#[rustfmt::skip] pub use asynchronous::broadcast; #[derive(Debug, Clone)] diff --git a/crates/network-scanner/src/interfaces/mod.rs b/crates/network-scanner/src/interfaces/mod.rs index 9338b25c9..b3b0dfae1 100644 --- a/crates/network-scanner/src/interfaces/mod.rs +++ b/crates/network-scanner/src/interfaces/mod.rs @@ -1,4 +1,6 @@ use network_interface::NetworkInterfaceConfig; + +#[rustfmt::skip] pub use network_interface::{Addr, NetworkInterface, V4IfAddr, V6IfAddr}; pub fn get_network_interfaces() -> anyhow::Result> { diff --git a/crates/proxy-socks/src/lib.rs b/crates/proxy-socks/src/lib.rs index 75b8e9955..c5b33dbc5 100644 --- a/crates/proxy-socks/src/lib.rs +++ b/crates/proxy-socks/src/lib.rs @@ -1,9 +1,12 @@ mod socks4; mod socks5; +use tokio::io::{AsyncRead, AsyncWrite}; + +#[rustfmt::skip] pub use socks4::Socks4Stream; +#[rustfmt::skip] pub use socks5::{Socks5Acceptor, Socks5AcceptorConfig, Socks5FailureCode, Socks5Listener, Socks5Stream}; -use tokio::io::{AsyncRead, AsyncWrite}; /// We need a super-trait in order to have additional non-auto-trait traits in trait objects. /// diff --git a/crates/traffic-audit-libsql/src/lib.rs b/crates/traffic-audit-libsql/src/lib.rs index a13399285..ab5591054 100644 --- a/crates/traffic-audit-libsql/src/lib.rs +++ b/crates/traffic-audit-libsql/src/lib.rs @@ -3,12 +3,14 @@ extern crate tracing; use anyhow::Context as _; use async_trait::async_trait; -pub use libsql; use libsql::Connection; use traffic_audit::{ClaimedEvent, TrafficAuditRepo, TrafficEvent}; use ulid::Ulid; use uuid::Uuid; +#[rustfmt::skip] +pub use libsql; + // Migration constants - these will be used by the migration system const MIGRATIONS: &[&str] = &[ // Migration 0 - Initial schema diff --git a/crates/transport/src/lib.rs b/crates/transport/src/lib.rs index f4642e690..e792b6417 100644 --- a/crates/transport/src/lib.rs +++ b/crates/transport/src/lib.rs @@ -9,9 +9,13 @@ mod ws; use tokio::io::{AsyncRead, AsyncWrite}; +#[rustfmt::skip] pub use self::copy_bidirectional::*; +#[rustfmt::skip] pub use self::pinnable::*; +#[rustfmt::skip] pub use self::shared::*; +#[rustfmt::skip] pub use self::ws::*; pub type ErasedRead = Box; diff --git a/crates/video-streamer/src/lib.rs b/crates/video-streamer/src/lib.rs index 5a4fe4750..f62e7be4d 100644 --- a/crates/video-streamer/src/lib.rs +++ b/crates/video-streamer/src/lib.rs @@ -6,7 +6,11 @@ pub(crate) mod streamer; #[macro_use] extern crate tracing; +#[rustfmt::skip] pub use config::StreamingConfig; +#[rustfmt::skip] pub use streamer::reopenable_file::ReOpenableFile; +#[rustfmt::skip] pub use streamer::signal_writer::SignalWriter; +#[rustfmt::skip] pub use streamer::webm_stream; diff --git a/crates/win-api-wrappers/src/identity/sid.rs b/crates/win-api-wrappers/src/identity/sid.rs index faa678edd..f3ea28c1d 100644 --- a/crates/win-api-wrappers/src/identity/sid.rs +++ b/crates/win-api-wrappers/src/identity/sid.rs @@ -1,6 +1,5 @@ use std::{fmt, mem}; -pub use Security::WELL_KNOWN_SID_TYPE; use thiserror::Error; use windows::Win32::Foundation::{HLOCAL, LocalFree}; use windows::Win32::Security; @@ -12,6 +11,9 @@ use crate::identity::account::{Account, AccountWithType}; use crate::raw_buffer::RawBuffer; use crate::str::{U16CStr, U16CStrExt, U16CString, U16CStringExt}; +#[rustfmt::skip] +pub use Security::WELL_KNOWN_SID_TYPE; + /// A string-format security identifier (SID), suitable for display, storage, or transmission #[derive(Debug, Clone, PartialEq, Eq, PartialOrd, Ord, Hash)] pub struct StringSid { diff --git a/crates/win-api-wrappers/src/lib.rs b/crates/win-api-wrappers/src/lib.rs index c5aebc899..fe80e37c3 100644 --- a/crates/win-api-wrappers/src/lib.rs +++ b/crates/win-api-wrappers/src/lib.rs @@ -8,10 +8,7 @@ pub mod str; #[cfg(target_os = "windows")] #[path = ""] mod lib_win { - pub use windows as raw; - mod error; - pub use error::Error; pub mod event; pub mod fs; @@ -32,7 +29,13 @@ mod lib_win { pub mod user; pub mod utils; pub mod wts; + + #[rustfmt::skip] + pub use windows as raw; + #[rustfmt::skip] + pub use error::Error; } #[cfg(target_os = "windows")] +#[rustfmt::skip] pub use lib_win::*; diff --git a/crates/win-api-wrappers/src/str.rs b/crates/win-api-wrappers/src/str.rs index 4529f635f..bc2325697 100644 --- a/crates/win-api-wrappers/src/str.rs +++ b/crates/win-api-wrappers/src/str.rs @@ -1,12 +1,14 @@ //! Utility module providing types for manipulating wide strings. // Re-export relevant items from the widestring crate. +#[rustfmt::skip] pub use widestring::{ U16CStr, U16CString, U16Str, U16String, Utf16Str, Utf16String, decode_utf16, decode_utf16_lossy, encode_utf16, include_utf16str, u16cstr, u16str, utf16str, }; #[cfg(target_os = "windows")] +#[rustfmt::skip] pub use self::win_ext::*; #[cfg(target_os = "windows")] diff --git a/devolutions-gateway/src/ai/mod.rs b/devolutions-gateway/src/ai/mod.rs index 9c61ade9b..e137989f9 100644 --- a/devolutions-gateway/src/ai/mod.rs +++ b/devolutions-gateway/src/ai/mod.rs @@ -4,4 +4,5 @@ mod provider; +#[rustfmt::skip] pub use provider::{AuthMethod, ProviderConfig, ProviderConfigBuilder}; diff --git a/devolutions-gateway/src/plugin_manager/mod.rs b/devolutions-gateway/src/plugin_manager/mod.rs index ab7b62c00..36d64cc05 100644 --- a/devolutions-gateway/src/plugin_manager/mod.rs +++ b/devolutions-gateway/src/plugin_manager/mod.rs @@ -7,13 +7,16 @@ use std::sync::{Arc, LazyLock}; use anyhow::Context as _; use camino::Utf8Path; use dlopen::symbor::Library; -pub use packets_parsing::PacketsParser; use parking_lot::Mutex; use plugin_info::{PluginCapabilities, PluginInformation}; -pub use recording::Recorder; use crate::config::Conf; +#[rustfmt::skip] +pub use packets_parsing::PacketsParser; +#[rustfmt::skip] +pub use recording::Recorder; + #[derive(Clone)] struct Plugin { lib: Arc, From ec617c9660a9cf577cfd61e0ede8919991311e0d Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 18 Dec 2025 12:46:57 +0000 Subject: [PATCH 3/3] Remove unnecessary #[rustfmt::skip] from models/mod.rs Co-authored-by: CBenoit <3809077+CBenoit@users.noreply.github.com> --- .../src/models/mod.rs | 21 ------------------- 1 file changed, 21 deletions(-) diff --git a/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/models/mod.rs b/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/models/mod.rs index b15a3caba..733315799 100644 --- a/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/models/mod.rs +++ b/crates/devolutions-pedm-shared/devolutions-pedm-client-http/src/models/mod.rs @@ -1,63 +1,42 @@ pub mod about_data; -#[rustfmt::skip] pub use self::about_data::AboutData; pub mod assignment; -#[rustfmt::skip] pub use self::assignment::Assignment; pub mod authenticode_signature_status; -#[rustfmt::skip] pub use self::authenticode_signature_status::AuthenticodeSignatureStatus; pub mod certificate; -#[rustfmt::skip] pub use self::certificate::Certificate; pub mod elevation_kind; -#[rustfmt::skip] pub use self::elevation_kind::ElevationKind; pub mod elevation_method; -#[rustfmt::skip] pub use self::elevation_method::ElevationMethod; pub mod error; -#[rustfmt::skip] pub use self::error::Error; pub mod error_response; -#[rustfmt::skip] pub use self::error_response::ErrorResponse; pub mod get_profiles_me_response; -#[rustfmt::skip] pub use self::get_profiles_me_response::GetProfilesMeResponse; pub mod hash; -#[rustfmt::skip] pub use self::hash::Hash; pub mod jit_elevation_log_page; -#[rustfmt::skip] pub use self::jit_elevation_log_page::JitElevationLogPage; pub mod jit_elevation_log_query_options; -#[rustfmt::skip] pub use self::jit_elevation_log_query_options::JitElevationLogQueryOptions; pub mod jit_elevation_log_row; -#[rustfmt::skip] pub use self::jit_elevation_log_row::JitElevationLogRow; pub mod launch_payload; -#[rustfmt::skip] pub use self::launch_payload::LaunchPayload; pub mod launch_response; -#[rustfmt::skip] pub use self::launch_response::LaunchResponse; pub mod path_id_parameter; -#[rustfmt::skip] pub use self::path_id_parameter::PathIdParameter; pub mod profile; -#[rustfmt::skip] pub use self::profile::Profile; pub mod signature; -#[rustfmt::skip] pub use self::signature::Signature; pub mod signer; -#[rustfmt::skip] pub use self::signer::Signer; pub mod startup_info_dto; -#[rustfmt::skip] pub use self::startup_info_dto::StartupInfoDto; pub mod user; -#[rustfmt::skip] pub use self::user::User;