Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package baobab for openSUSE:Factory checked 
in at 2025-04-17 16:06:19
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/baobab (Old)
 and      /work/SRC/openSUSE:Factory/.baobab.new.30101 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "baobab"

Thu Apr 17 16:06:19 2025 rev:58 rq:1269668 version:48.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/baobab/baobab.changes    2025-03-18 
17:38:57.915675053 +0100
+++ /work/SRC/openSUSE:Factory/.baobab.new.30101/baobab.changes 2025-04-20 
19:50:13.576523386 +0200
@@ -1,0 +2,6 @@
+Sat Apr 12 09:04:53 UTC 2025 - Bjørn Lie <bjorn....@gmail.com>
+
+- Add baobab-Improve-Scaning-Speed_cpu.patch: Improve Scaning Speed
+  and Memory Usage.
+
+-------------------------------------------------------------------

New:
----
  baobab-Improve-Scaning-Speed_cpu.patch

BETA DEBUG BEGIN:
  New:
- Add baobab-Improve-Scaning-Speed_cpu.patch: Improve Scaning Speed
  and Memory Usage.
BETA DEBUG END:

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

Other differences:
------------------
++++++ baobab.spec ++++++
--- /var/tmp/diff_new_pack.TfSvwb/_old  2025-04-20 19:50:14.264552020 +0200
+++ /var/tmp/diff_new_pack.TfSvwb/_new  2025-04-20 19:50:14.264552020 +0200
@@ -27,6 +27,8 @@
 Group:          System/GUI/GNOME
 URL:            https://wiki.gnome.org/Apps/DiskUsageAnalyzer
 Source0:        %{name}-%{version}.tar.zst
+# PATCH-FIX-UPSTREAM baobab-Improve-Scaning-Speed_cpu.patch -- Improve Scaning 
Speed and Memory Usage
+Patch0:         baobab-Improve-Scaning-Speed_cpu.patch
 
 BuildRequires:  appstream-glib
 BuildRequires:  desktop-file-utils

++++++ baobab-Improve-Scaning-Speed_cpu.patch ++++++
>From 0d38eafdfae54fc477cdf4719ce1a98c20b1ed7b Mon Sep 17 00:00:00 2001
From: Khalid Abu Shawarib <khalid.shawa...@gmail.com>
Date: Fri, 11 Apr 2025 12:33:56 +0000
Subject: [PATCH 1/2] scanner: Remove unused attribute from query

This saves 6% of CPU usage and ~12% of calculation
time in my testing.
---
 src/baobab-scanner.vala | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/src/baobab-scanner.vala b/src/baobab-scanner.vala
index a1c1aa61..51c15d34 100644
--- a/src/baobab-scanner.vala
+++ b/src/baobab-scanner.vala
@@ -76,8 +76,7 @@ namespace Baobab {
             FileAttribute.TIME_MODIFIED + "," +
             FileAttribute.UNIX_NLINK + "," +
             FileAttribute.UNIX_INODE + "," +
-            FileAttribute.UNIX_DEVICE + "," +
-            FileAttribute.ACCESS_CAN_READ;
+            FileAttribute.UNIX_DEVICE;
 
         [Compact]
         class HardLink {
-- 
GitLab


>From b5a419ffb9d0dc451b98593282ad8a91a935fc7f Mon Sep 17 00:00:00 2001
From: Khalid Abu Shawarib <k...@gnome.org>
Date: Sat, 12 Apr 2025 02:34:02 +0300
Subject: [PATCH 2/2] scanner: Call notify manually

This saves a lot of signal creation work for the very small price in
of slightly more verbose code.

Reduces scanning time by ~20%
---
 src/baobab-scanner.vala | 12 ++++++++++--
 1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/src/baobab-scanner.vala b/src/baobab-scanner.vala
index 51c15d34..07223b65 100644
--- a/src/baobab-scanner.vala
+++ b/src/baobab-scanner.vala
@@ -159,7 +159,6 @@ namespace Baobab {
             public uint64 size { get; internal set; }
             public uint64 time_modified { get; internal set; }
             public int elements { get; internal set; }
-            public double percent { get; internal set; }
             internal int max_depth;
             internal Error? error;
             internal bool child_error;
@@ -168,6 +167,16 @@ namespace Baobab {
             public GLib.ListStore children_list_store { get; construct set; }
             public State state { get; internal set; }
 
+            double _percent;
+            public double percent {
+                get { return _percent; }
+                internal set {
+                    _percent = value;
+
+                    notify_property ("fraction");
+                }
+            }
+
             public double fraction {
                 get {
                     return _percent / 100.0;
@@ -182,7 +191,6 @@ namespace Baobab {
 
             construct {
                 children_list_store = new ListStore (typeof (Results));
-                notify["percent"].connect (() => notify_property ("fraction"));
             }
 
             public Results (FileInfo info, Results? parent_results) {
-- 
GitLab

Reply via email to