Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package fatrace for openSUSE:Factory checked 
in at 2022-12-13 18:57:17
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/fatrace (Old)
 and      /work/SRC/openSUSE:Factory/.fatrace.new.1835 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "fatrace"

Tue Dec 13 18:57:17 2022 rev:10 rq:1042695 version:0.17.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/fatrace/fatrace.changes  2021-12-23 
17:54:16.267738465 +0100
+++ /work/SRC/openSUSE:Factory/.fatrace.new.1835/fatrace.changes        
2022-12-13 18:57:43.191924561 +0100
@@ -1,0 +2,9 @@
+Sun Dec  4 21:32:48 UTC 2022 - Dirk Müller <dmuel...@suse.com>
+
+- update to 0.17.0:
+  * Work around kernel bug with blocking FAN_REPORT_FID with btrfs
+  * Improve event formatting
+  * Avoid ELOOP errors when monitoring symlinks
+  * Monitor ZFS volumes; thanks achims311
+ 
+-------------------------------------------------------------------

Old:
----
  fatrace-0.16.3.tar.gz

New:
----
  fatrace-0.17.0.tar.gz

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

Other differences:
------------------
++++++ fatrace.spec ++++++
--- /var/tmp/diff_new_pack.Nb3ue3/_old  2022-12-13 18:57:43.643926973 +0100
+++ /var/tmp/diff_new_pack.Nb3ue3/_new  2022-12-13 18:57:43.647926995 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package fatrace
 #
-# Copyright (c) 2021 SUSE LLC
+# Copyright (c) 2022 SUSE LLC
 # Copyright (c) 2013 Philipp Thomas <p...@suse.de>
 #
 # All modifications and additions to the file contributed by third parties
@@ -19,7 +19,7 @@
 
 %bcond_with tests
 Name:           fatrace
-Version:        0.16.3
+Version:        0.17.0
 Release:        0
 Summary:        System wide file access event reporting utility
 License:        GPL-3.0-or-later

++++++ fatrace-0.16.3.tar.gz -> fatrace-0.17.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fatrace-0.16.3/.github/workflows/release.yml 
new/fatrace-0.17.0/.github/workflows/release.yml
--- old/fatrace-0.16.3/.github/workflows/release.yml    2021-05-15 
21:52:17.000000000 +0200
+++ new/fatrace-0.17.0/.github/workflows/release.yml    2022-11-11 
11:04:56.000000000 +0100
@@ -9,7 +9,7 @@
     runs-on: ubuntu-latest
     steps:
       - name: Clone repository
-        uses: actions/checkout@v2
+        uses: actions/checkout@v3
 
       - name: Create GitHub release
         uses: docker://antonyurchenko/git-release:latest
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fatrace-0.16.3/.github/workflows/tests.yml 
new/fatrace-0.17.0/.github/workflows/tests.yml
--- old/fatrace-0.16.3/.github/workflows/tests.yml      2021-05-15 
21:52:17.000000000 +0200
+++ new/fatrace-0.17.0/.github/workflows/tests.yml      2022-11-11 
11:04:56.000000000 +0100
@@ -9,7 +9,7 @@
     runs-on: ubuntu-20.04
     steps:
       - name: Clone repository
-        uses: actions/checkout@v2
+        uses: actions/checkout@v3
 
       - name: Build
         run: make
@@ -33,7 +33,7 @@
       options: --privileged
     steps:
       - name: Clone repository
-        uses: actions/checkout@v2
+        uses: actions/checkout@v3
 
       - name: Install build and test dependencies
         run: |
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fatrace-0.16.3/NEWS new/fatrace-0.17.0/NEWS
--- old/fatrace-0.16.3/NEWS     2021-05-15 21:52:17.000000000 +0200
+++ new/fatrace-0.17.0/NEWS     2022-11-11 11:04:56.000000000 +0100
@@ -1,3 +1,9 @@
+## [0.17.0] - 2022-11-11
+ - Work around kernel bug with blocking FAN_REPORT_FID with btrfs
+ - Improve event formatting
+ - Avoid ELOOP errors when monitoring symlinks
+ - Monitor ZFS volumes; thanks achims311
+
 ## [0.16.3] - 2021-05-15
  - Always use line buffering
  - Fix fd leak with `-f` event type filtering. Thanks Stefan Dotterweich!
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fatrace-0.16.3/fatrace.c new/fatrace-0.17.0/fatrace.c
--- old/fatrace-0.16.3/fatrace.c        2021-05-15 21:52:17.000000000 +0200
+++ new/fatrace-0.17.0/fatrace.c        2022-11-11 11:04:56.000000000 +0100
@@ -149,7 +149,7 @@
 
     /* get affected file fd from fanotify_event_info_fid */
     fd = open_by_handle_at (get_mount_id ((const fsid_t *) &fid->fsid),
-                            (struct file_handle *) fid->handle, O_RDONLY);
+                            (struct file_handle *) fid->handle, 
O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_PATH);
     /* ignore ESTALE for deleted fds between the notification and handling it 
*/
     if (fd < 0 && errno != ESTALE)
         warn ("open_by_handle_at");
@@ -308,7 +308,7 @@
     } else if (option_timestamp == 2) {
         printf ("%li.%06li ", event_time->tv_sec, event_time->tv_usec);
     }
-    printf ("%s(%i): %s %s\n", procname[0] == '\0' ? "unknown" : procname, 
data->pid, mask2str (data->mask), pathname);
+    printf ("%s(%i): %-3s %s\n", procname[0] == '\0' ? "unknown" : procname, 
data->pid, mask2str (data->mask), pathname);
 }
 
 static void
@@ -378,8 +378,11 @@
          * are virtual and do not actually cause disk access. */
         if (mount->mnt_fsname == NULL || access (mount->mnt_fsname, F_OK) != 0 
||
             mount->mnt_fsname[0] != '/') {
-            debug ("ignore: fsname: %s dir: %s type: %s", mount->mnt_fsname, 
mount->mnt_dir, mount->mnt_type);
-            continue;
+            /* zfs mount point don't start with a "/" so allow them anyway */
+            if (strcmp(mount->mnt_type, "zfs") != 0) {
+                debug ("ignore: fsname: %s dir: %s type: %s", 
mount->mnt_fsname, mount->mnt_dir, mount->mnt_type);
+                continue;
+            }
         }
 
         /* root dir already added above */
@@ -653,4 +656,3 @@
 
     return 0;
 }
-
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fatrace-0.16.3/tests/fatrace 
new/fatrace-0.17.0/tests/fatrace
--- old/fatrace-0.16.3/tests/fatrace    2021-05-15 21:52:17.000000000 +0200
+++ new/fatrace-0.17.0/tests/fatrace    2022-11-11 11:04:56.000000000 +0100
@@ -31,19 +31,19 @@
 }
 
 # accessing the "head" binary
-check_log "RC\?O\? /usr/bin/head$"
+check_log "RC\?O\? \+/usr/bin/head$"
 # head accessing /etc/passwd
-check_log "RC\?O\? /etc/passwd$"
+check_log "RC\?O\? \+/etc/passwd$"
 # file creation
-check_log "^touch.* C\?W\?O $TEST_FILE"
-check_log "^touch.* C\?WO\? $TEST_FILE"
-check_log "^bash(.* C\?WO\? $TEST_FILE"
+check_log "^touch.* C\?W\?O \+$TEST_FILE"
+check_log "^touch.* C\?WO\? \+$TEST_FILE"
+check_log "^bash(.* C\?WO\? \+$TEST_FILE"
 
 # file creation
-check_log "^touch(.*): + $(dirname $TEST_FILE)$"
+check_log "^touch(.*): +   $(dirname $TEST_FILE)$"
 
 # file deletion
-check_log "^rm(.*): D $(dirname $TEST_FILE)"
+check_log "^rm(.*): D   $(dirname $TEST_FILE)"
 
 if [ $RC -ne 0 ]; then
    echo "$RC checks failed -- log:" >&2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fatrace-0.16.3/tests/fatrace-btrfs 
new/fatrace-0.17.0/tests/fatrace-btrfs
--- old/fatrace-0.16.3/tests/fatrace-btrfs      2021-05-15 21:52:17.000000000 
+0200
+++ new/fatrace-0.17.0/tests/fatrace-btrfs      2022-11-11 11:04:56.000000000 
+0100
@@ -16,6 +16,8 @@
 mount -o loop "$IMAGE" "$MOUNT"
 trap "umount -l '$MOUNT'" EXIT INT QUIT PIPE
 
+btrfs subvolume create "$MOUNT/subv1"
+
 cd "$MOUNT"
 
 echo "hello" > world.txt
@@ -43,6 +45,10 @@
 rm dest/"${TEST_FILE}.2"
 rmdir dest
 
+echo "create a file on a subvolume"
+touch subv1/sub.txt
+SUBVOL_FILE=$(realpath subv1/sub.txt)
+
 echo "waiting for fatrace..."
 wait
 
@@ -56,27 +62,30 @@
 }
 
 # accessing the world.txt file
-check_log "RC\?O\? $(pwd)/world.txt$"
+check_log "RC\?O\? \+$(pwd)/world.txt$"
 # file creation
 TEST_FILE=$(realpath "$TEST_FILE")
-check_log "^touch.* C\?W\?O $TEST_FILE"
-check_log "^touch.* C\?WO\? $TEST_FILE"
-check_log "^bash(.* C\?WO\? $TEST_FILE"
+check_log "^touch.* C\?W\?O \+$TEST_FILE"
+check_log "^touch.* C\?WO\? \+$TEST_FILE"
+check_log "^bash(.* C\?WO\? \+$TEST_FILE"
 
 # file deletion
-check_log "^rm(.*): D $(dirname $TEST_FILE)$"
+check_log "^rm(.*): D   $(dirname $TEST_FILE)$"
 
 # dir creation
-check_log "^touch(.*): + $(dirname $TEST_FILE)$"
-check_log "^mkdir(.*): + $(dirname $TEST_FILE)$"
+check_log "^touch(.*): +   $(dirname $TEST_FILE)$"
+check_log "^mkdir(.*): +   $(dirname $TEST_FILE)$"
 
 # file renaming; usually one event, but can be two
-check_log "^mv(.*): <>\? $(dirname $TEST_FILE)"
-check_log "^mv(.*): <\?> $(dirname $TEST_FILE)"
+check_log "^mv(.*): <>\? \+$(dirname $TEST_FILE)"
+check_log "^mv(.*): <\?> \+$(dirname $TEST_FILE)"
 
 # file moving
-check_log "^mv(.*): < $(dirname $TEST_FILE)$"
-check_log "^mv(.*): > $(dirname $TEST_FILE)/dest$"
+check_log "^mv(.*): <   $(dirname $TEST_FILE)$"
+check_log "^mv(.*): >   $(dirname $TEST_FILE)/dest$"
+
+# subvolume
+check_log "^touch.* C\?W\?O \+$SUBVOL_FILE"
 
 if [ $RC -ne 0 ]; then
    echo "$RC checks failed -- log:" >&2
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/fatrace-0.16.3/tests/fatrace-currentmount 
new/fatrace-0.17.0/tests/fatrace-currentmount
--- old/fatrace-0.16.3/tests/fatrace-currentmount       2021-05-15 
21:52:17.000000000 +0200
+++ new/fatrace-0.17.0/tests/fatrace-currentmount       2022-11-11 
11:04:56.000000000 +0100
@@ -43,31 +43,31 @@
 }
 
 # accessing the NEWS file
-check_log "RC\?O\? $(pwd)/NEWS$"
+check_log "RC\?O\? \+$(pwd)/NEWS$"
 # file creation
 TEST_FILE=$(realpath "$TEST_FILE")
-check_log "^touch.* C\?W\?O $TEST_FILE"
-check_log "^touch.* C\?WO\? $TEST_FILE"
-check_log "^bash(.* C\?WO\? $TEST_FILE"
+check_log "^touch.* C\?W\?O \+$TEST_FILE"
+check_log "^touch.* C\?WO\? \+$TEST_FILE"
+check_log "^bash(.* C\?WO\? \+$TEST_FILE"
 
 # file deletion
-check_log "^rm(.*): D $(dirname $TEST_FILE)$"
+check_log "^rm(.*): D   $(dirname $TEST_FILE)$"
 
 # dir creation
-check_log "^touch(.*): + $(dirname $TEST_FILE)$"
-check_log "^mkdir(.*): + $(dirname $TEST_FILE)$"
+check_log "^touch(.*): +   $(dirname $TEST_FILE)$"
+check_log "^mkdir(.*): +   $(dirname $TEST_FILE)$"
 
 # file renaming; usually one event, but can be two
-check_log "^mv(.*): <>\? $(dirname $TEST_FILE)"
-check_log "^mv(.*): <\?> $(dirname $TEST_FILE)"
+check_log "^mv(.*): <>\? \+$(dirname $TEST_FILE)"
+check_log "^mv(.*): <\?> \+$(dirname $TEST_FILE)"
 
 # file moving
-check_log "^mv(.*): < $(dirname $TEST_FILE)$"
-check_log "^mv(.*): > $(dirname $TEST_FILE)/dest$"
+check_log "^mv(.*): <   $(dirname $TEST_FILE)$"
+check_log "^mv(.*): >   $(dirname $TEST_FILE)/dest$"
 
 # ELOOP ln/rm
-check_log "^ln(.*): + $(dirname $TEST_FILE)$"
-check_log "^rm(.*): D $(dirname $TEST_FILE)$"
+check_log "^ln(.*): +   $(dirname $TEST_FILE)$"
+check_log "^rm(.*): D   $(dirname $TEST_FILE)$"
 
 if [ $RC -ne 0 ]; then
    echo "$RC checks failed -- log:" >&2

Reply via email to