Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package krunvm for openSUSE:Factory checked 
in at 2026-10-27 17:06:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/krunvm (Old)
 and      /work/SRC/openSUSE:Factory/.krunvm.new.2252680 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "krunvm"

Tue Oct 27 17:06:19 2026 rev:12 rq:1393007 version:0.2.7

Changes:
--------
--- /work/SRC/openSUSE:Factory/krunvm/krunvm.changes    2026-03-11 
20:52:40.551406492 +0100
+++ /work/SRC/openSUSE:Factory/.krunvm.new.2252680/krunvm.changes       
2026-10-27 17:07:25.320865633 +0100
@@ -1,0 +2,8 @@
+Sun Oct 25 16:23:50 UTC 2026 - Andrea Manzini <[email protected]>
+
+- Update to version 0.2.7:
+  * Add --vsock option for guest-to-host Unix socket IPC.
+  * Minor clippy fixes.
+  * Refresh vendored cargo dependencies.
+
+-------------------------------------------------------------------

Old:
----
  krunvm-0.2.6+git59f3673.obscpio

New:
----
  krunvm-0.2.7.obscpio

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ krunvm.spec ++++++
--- /var/tmp/diff_new_pack.8j4lY9/_old  2026-10-27 17:07:31.481123670 +0100
+++ /var/tmp/diff_new_pack.8j4lY9/_new  2026-10-27 17:07:31.483123754 +0100
@@ -17,14 +17,13 @@
 
 
 Name:           krunvm
-Version:        0.2.6+git59f3673
+Version:        0.2.7
 Release:        0
 Summary:        Manage lightweight VMs created from OCI images
 License:        Apache-2.0
 URL:            https://github.com/containers/krunvm
 Source0:        krunvm-%{version}.tar.gz
 Source1:        vendor.tar.zst
-ExclusiveArch:  x86_64 aarch64
 BuildRequires:  cargo-packaging
 BuildRequires:  libkrun-devel
 BuildRequires:  zstd
@@ -32,6 +31,7 @@
 Requires:       buildah
 Requires:       libkrun1 >= 1.4.4
 Conflicts:      libkrun0
+ExclusiveArch:  x86_64 aarch64
 
 %description
 Manage lightweight VMs created from OCI images
@@ -41,7 +41,7 @@
 %doc README.md
 %doc CODE-OF-CONDUCT.md
 %doc SECURITY.md
-%{_mandir}/man1/krunvm*.1*
+%{_mandir}/man1/krunvm*.1%{?ext_man}
 %{_bindir}/krunvm
 
 %prep

++++++ _service ++++++
--- /var/tmp/diff_new_pack.8j4lY9/_old  2026-10-27 17:07:31.524125472 +0100
+++ /var/tmp/diff_new_pack.8j4lY9/_new  2026-10-27 17:07:31.528125639 +0100
@@ -1,9 +1,9 @@
 <services>
   <service name="obs_scm" mode="manual">
     <param name="scm">git</param>
-    <param name="revision">refs/tags/v0.2.6</param>
+    <param name="revision">refs/tags/v0.2.7</param>
     <param name="url">https://github.com/containers/krunvm.git</param>
-    <param name="versionformat">@PARENT_TAG@+git%h</param>
+    <param name="versionformat">@PARENT_TAG@</param>
     <param name="changesgenerate">enable</param>
     <param name="versionrewrite-pattern">v(.*)</param>
   </service>

++++++ _servicedata ++++++
--- /var/tmp/diff_new_pack.8j4lY9/_old  2026-10-27 17:07:31.552126644 +0100
+++ /var/tmp/diff_new_pack.8j4lY9/_new  2026-10-27 17:07:31.556126812 +0100
@@ -1,6 +1,6 @@
 <servicedata>
 <service name="tar_scm">
                 <param 
name="url">https://github.com/containers/krunvm.git</param>
-              <param 
name="changesrevision">59f3673a42625a8cd09c8f34f040a32b74c84452</param></service></servicedata>
+              <param 
name="changesrevision">d51d82ae415b3db19243f6a90548efd4e4542bbe</param></service></servicedata>
 (No newline at EOF)
 

++++++ krunvm-0.2.6+git59f3673.obscpio -> krunvm-0.2.7.obscpio ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' 
old/krunvm-0.2.6+git59f3673/.github/actions/setup-build-env/action.yml 
new/krunvm-0.2.7/.github/actions/setup-build-env/action.yml
--- old/krunvm-0.2.6+git59f3673/.github/actions/setup-build-env/action.yml      
2026-02-09 12:18:59.000000000 +0100
+++ new/krunvm-0.2.7/.github/actions/setup-build-env/action.yml 2026-08-25 
11:07:33.000000000 +0200
@@ -26,7 +26,7 @@
     - name: Install packages (macOS)
       if: runner.os == 'macOS'
       shell: bash
-      run: brew tap slp/krun && brew install asciidoctor libkrun clang-format 
llvm
+      run: brew tap libkrun/krun && brew trust libkrun/krun && brew install 
asciidoctor libkrun clang-format llvm
 
     - name: Install packages (Linux)
       if: runner.os == 'Linux'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunvm-0.2.6+git59f3673/Cargo.lock 
new/krunvm-0.2.7/Cargo.lock
--- old/krunvm-0.2.6+git59f3673/Cargo.lock      2026-02-09 12:18:59.000000000 
+0100
+++ new/krunvm-0.2.7/Cargo.lock 2026-08-25 11:07:33.000000000 +0200
@@ -217,7 +217,7 @@
 
 [[package]]
 name = "krunvm"
-version = "0.2.6"
+version = "0.2.7"
 dependencies = [
  "clap",
  "confy",
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunvm-0.2.6+git59f3673/Cargo.toml 
new/krunvm-0.2.7/Cargo.toml
--- old/krunvm-0.2.6+git59f3673/Cargo.toml      2026-02-09 12:18:59.000000000 
+0100
+++ new/krunvm-0.2.7/Cargo.toml 2026-08-25 11:07:33.000000000 +0200
@@ -1,6 +1,6 @@
 [package]
 name = "krunvm"
-version = "0.2.6"
+version = "0.2.7"
 authors = ["Sergio Lopez <[email protected]>"]
 description = "Create microVMs from OCI images"
 repository = "https://github.com/containers/krunvm";
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunvm-0.2.6+git59f3673/src/bindings.rs 
new/krunvm-0.2.7/src/bindings.rs
--- old/krunvm-0.2.6+git59f3673/src/bindings.rs 2026-02-09 12:18:59.000000000 
+0100
+++ new/krunvm-0.2.7/src/bindings.rs    2026-08-25 11:07:33.000000000 +0200
@@ -13,6 +13,7 @@
     pub fn krun_set_port_map(ctx: u32, port_map: *const *const c_char) -> i32;
     pub fn krun_set_workdir(ctx: u32, workdir_path: *const c_char) -> i32;
     pub fn krun_add_virtiofs(ctx: u32, tag: *const c_char, path: *const 
c_char) -> i32;
+    pub fn krun_add_vsock_port(ctx: u32, port: u32, filepath: *const c_char) 
-> i32;
     pub fn krun_set_exec(
         ctx: u32,
         exec_path: *const c_char,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunvm-0.2.6+git59f3673/src/commands/changevm.rs 
new/krunvm-0.2.7/src/commands/changevm.rs
--- old/krunvm-0.2.6+git59f3673/src/commands/changevm.rs        2026-02-09 
12:18:59.000000000 +0100
+++ new/krunvm-0.2.7/src/commands/changevm.rs   2026-08-25 11:07:33.000000000 
+0200
@@ -60,7 +60,7 @@
 
             let mut vmcfg = match cfg.vmconfig_map.remove(&self.name) {
                 None => {
-                    println!("No VM found with name {}", &self.name);
+                    println!("No VM found with name {}", self.name);
                     std::process::exit(-1);
                 }
                 Some(vmcfg) => vmcfg,
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunvm-0.2.6+git59f3673/src/commands/list.rs 
new/krunvm-0.2.7/src/commands/list.rs
--- old/krunvm-0.2.6+git59f3673/src/commands/list.rs    2026-02-09 
12:18:59.000000000 +0100
+++ new/krunvm-0.2.7/src/commands/list.rs       2026-08-25 11:07:33.000000000 
+0200
@@ -17,7 +17,7 @@
         if cfg.vmconfig_map.is_empty() {
             println!("No microVMs found");
         } else {
-            for (_name, vm) in cfg.vmconfig_map.iter() {
+            for vm in cfg.vmconfig_map.values() {
                 println!();
                 printvm(vm);
             }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/krunvm-0.2.6+git59f3673/src/commands/start.rs 
new/krunvm-0.2.7/src/commands/start.rs
--- old/krunvm-0.2.6+git59f3673/src/commands/start.rs   2026-02-09 
12:18:59.000000000 +0100
+++ new/krunvm-0.2.7/src/commands/start.rs      2026-08-25 11:07:33.000000000 
+0200
@@ -44,6 +44,12 @@
     /// env(s) in format "key=value" to be exposed to the VM
     #[arg(long = "env")]
     envs: Option<Vec<String>>,
+
+    /// vsock port to host Unix socket mapping(s) in format
+    /// "PORT:/host/path.sock". Guest connections to AF_VSOCK
+    /// (CID 2, PORT) are proxied to the Unix socket on the host.
+    #[arg(long = "vsock")]
+    vsocks: Option<Vec<String>>,
 }
 
 impl StartCmd {
@@ -76,11 +82,39 @@
             Vec::new()
         };
 
+        let vsock_ports: Vec<(u32, String)> = self
+            .vsocks
+            .unwrap_or_default()
+            .into_iter()
+            .map(|val| match val.split_once(':') {
+                Some((port, path)) => match port.parse::<u32>() {
+                    Ok(port) => (port, path.to_string()),
+                    Err(_) => {
+                        println!("Invalid vsock port in mapping: {}", val);
+                        std::process::exit(-1);
+                    }
+                },
+                None => {
+                    println!("Invalid vsock mapping (expected PORT:PATH): {}", 
val);
+                    std::process::exit(-1);
+                }
+            })
+            .collect();
+
         set_rlimits();
 
         let _file = set_lock(&rootfs);
 
-        unsafe { exec_vm(vmcfg, &rootfs, self.command.as_deref(), vm_args, 
env_pairs) };
+        unsafe {
+            exec_vm(
+                vmcfg,
+                &rootfs,
+                self.command.as_deref(),
+                vm_args,
+                env_pairs,
+                vsock_ports,
+            )
+        };
 
         umount_container(cfg, vmcfg).expect("Error unmounting container");
     }
@@ -118,7 +152,7 @@
 fn map_volumes(ctx: u32, vmcfg: &VmConfig, rootfs: &str) -> Vec<(String, 
String)> {
     let mut mounts = Vec::new();
     for (idx, (host_path, guest_path)) in 
vmcfg.mapped_volumes.iter().enumerate() {
-        let full_guest = format!("{}{}", &rootfs, guest_path);
+        let full_guest = format!("{}{}", rootfs, guest_path);
         let full_guest_path = Path::new(&full_guest);
         if !full_guest_path.exists() {
             std::fs::create_dir(full_guest_path)
@@ -143,6 +177,7 @@
     cmd: Option<&str>,
     args: Vec<CString>,
     env_pairs: Vec<CString>,
+    vsock_ports: Vec<(u32, String)>,
 ) {
     //bindings::krun_set_log_level(9);
 
@@ -185,6 +220,15 @@
         std::process::exit(-1);
     }
 
+    for (port, path) in vsock_ports.iter() {
+        let c_path = CString::new(path.as_str()).unwrap();
+        let ret = bindings::krun_add_vsock_port(ctx, *port, c_path.as_ptr());
+        if ret < 0 {
+            println!("Error adding vsock port {} -> {}", port, path);
+            std::process::exit(-1);
+        }
+    }
+
     if !vmcfg.workdir.is_empty() {
         let c_workdir = CString::new(vmcfg.workdir.clone()).unwrap();
         let ret = bindings::krun_set_workdir(ctx, c_workdir.as_ptr());

++++++ krunvm.obsinfo ++++++
--- /var/tmp/diff_new_pack.8j4lY9/_old  2026-10-27 17:07:31.728134017 +0100
+++ /var/tmp/diff_new_pack.8j4lY9/_new  2026-10-27 17:07:31.733134226 +0100
@@ -1,5 +1,5 @@
 name: krunvm
-version: 0.2.6+git59f3673
-mtime: 1770635939
-commit: 59f3673a42625a8cd09c8f34f040a32b74c84452
+version: 0.2.7
+mtime: 1787648853
+commit: d51d82ae415b3db19243f6a90548efd4e4542bbe
 

++++++ vendor.tar.zst ++++++
/work/SRC/openSUSE:Factory/krunvm/vendor.tar.zst 
/work/SRC/openSUSE:Factory/.krunvm.new.2252680/vendor.tar.zst differ: char 7, 
line 1

Reply via email to