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