[pbs-devel] [PATCH proxmox 3/4] http: sync: derive default user-agent from crate version

Fabian Grünbichler f.gruenbichler at proxmox.com
Fri Mar 3 12:39:23 CET 2023


Signed-off-by: Fabian Grünbichler <f.gruenbichler at proxmox.com>
---
if we want a fall back in case rustc is called manually, not by cargo, we could
also use option_env!..

 proxmox-http/src/client/sync.rs | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/proxmox-http/src/client/sync.rs b/proxmox-http/src/client/sync.rs
index 228f839..3485f84 100644
--- a/proxmox-http/src/client/sync.rs
+++ b/proxmox-http/src/client/sync.rs
@@ -7,8 +7,6 @@ use http::Response;
 use crate::HttpClient;
 use crate::HttpOptions;
 
-pub const DEFAULT_USER_AGENT_STRING: &str = "proxmox-sync-http-client/0.1";
-
 #[derive(Default)]
 /// Blocking HTTP client for usage with [`HttpClient`].
 pub struct Client {
@@ -23,12 +21,10 @@ impl Client {
     fn agent(&self) -> Result<ureq::Agent, Error> {
         let mut builder = ureq::AgentBuilder::new();
 
-        builder = builder.user_agent(
-            self.options
-                .user_agent
-                .as_deref()
-                .unwrap_or(DEFAULT_USER_AGENT_STRING),
-        );
+        builder = builder.user_agent(self.options.user_agent.as_deref().unwrap_or(&format!(
+            "proxmox-sync-http-client/{}",
+            env!("CARGO_PKG_VERSION")
+        )));
 
         if let Some(proxy_config) = &self.options.proxy_config {
             builder = builder.proxy(ureq::Proxy::new(proxy_config.to_proxy_string()?)?);
-- 
2.30.2






More information about the pbs-devel mailing list