Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package entr for openSUSE:Factory checked in 
at 2021-07-05 22:22:46
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/entr (Old)
 and      /work/SRC/openSUSE:Factory/.entr.new.2625 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "entr"

Mon Jul  5 22:22:46 2021 rev:10 rq:903985 version:5.0

Changes:
--------
--- /work/SRC/openSUSE:Factory/entr/entr.changes        2021-03-02 
12:45:30.148357892 +0100
+++ /work/SRC/openSUSE:Factory/.entr.new.2625/entr.changes      2021-07-05 
22:23:05.561669614 +0200
@@ -1,0 +2,12 @@
+Sun Jul  4 11:56:13 UTC 2021 - Martin Hauke <[email protected]>
+
+- Update to version 5.0
+  * Eliminate memory management warnings on Linux.
+  * EV_TRACE prints file mode and file name.
+- Update to version 4.8
+  * EV_TRACE also prints file/notify descriptor limit.
+  * Set 2^16 watches if inotify limits cannot be read.
+  * Raise an error and suggest '-n' if terminal attributes cannot
+    be read.
+
+-------------------------------------------------------------------

Old:
----
  entr-4.8.tar.gz
  entr-4.8.tar.gz.sig

New:
----
  entr-5.0.tar.gz
  entr-5.0.tar.gz.sig

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

Other differences:
------------------
++++++ entr.spec ++++++
--- /var/tmp/diff_new_pack.LDkLJG/_old  2021-07-05 22:23:06.001666209 +0200
+++ /var/tmp/diff_new_pack.LDkLJG/_new  2021-07-05 22:23:06.005666178 +0200
@@ -18,7 +18,7 @@
 
 
 Name:           entr
-Version:        4.8
+Version:        5.0
 Release:        0
 Summary:        A utility for running arbitrary commands when files change
 License:        ISC

++++++ entr-4.8.tar.gz -> entr-5.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/entr-4.8/Makefile.bsd new/entr-5.0/Makefile.bsd
--- old/entr-4.8/Makefile.bsd   2021-02-26 21:02:29.000000000 +0100
+++ new/entr-5.0/Makefile.bsd   2021-07-02 16:50:26.000000000 +0200
@@ -1,6 +1,6 @@
 PREFIX ?= /usr/local
 MANPREFIX ?= ${PREFIX}/man
-RELEASE = 4.8
+RELEASE = 5.0
 CPPFLAGS += -DRELEASE=\"${RELEASE}\"
 
 all: versioncheck entr
@@ -17,10 +17,10 @@
        @./system_test.sh
 
 entr: entr.c ${EXTRA_SRC}
-       ${CC} ${CFLAGS} ${CPPFLAGS} ${EXTRA_SRC} entr.c -o $@ ${LDFLAGS}
+       ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} ${EXTRA_SRC} entr.c -o $@
 
 entr_spec: entr_spec.c entr.c ${EXTRA_SRC}
-       ${CC} ${CFLAGS} ${CPPFLAGS} ${EXTRA_SRC} entr_spec.c -o $@ ${LDFLAGS}
+       ${CC} ${CFLAGS} ${CPPFLAGS} ${LDFLAGS} ${EXTRA_SRC} entr_spec.c -o $@
 
 clean:
        rm -f entr entr_spec *.o
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/entr-4.8/NEWS new/entr-5.0/NEWS
--- old/entr-4.8/NEWS   2021-02-26 21:02:29.000000000 +0100
+++ new/entr-5.0/NEWS   2021-07-02 16:50:26.000000000 +0200
@@ -1,5 +1,19 @@
 = Release History
 
+== 5.0: July 2, 2021
+
+ - Add missing call to getrlimit(3) on MacOS
+ - Eliminate memory management warnings on Linux
+ - EV_TRACE prints file mode and file name
+ - Ignore asynchronous attribute changes on MacOS 11
+
+== 4.9: May 3, 2021
+
+ - EV_TRACE also prints file/notify descriptor limit
+ - Don't raise rlim_cur on MacOS
+ - Set 2^16 watches if inotify limits cannot be read
+ - Raise an error and suggest '-n' if terminal attributes cannot be read
+
 == 4.8: February 26, 2021
 
  - Set a maximum of 2^19 watches to guard against absurd file open limits on
@@ -28,7 +42,7 @@
 
  - Use a single inotify queue on Linux, limited by
    /proc/sys/fs/inotify/max_user_watches
- - Set the environment variable `ENTR_INOTIFY_WORKAROUND` to enable a
+ - Set the environment variable 'ENTR_INOTIFY_WORKAROUND' to enable a
    compatibility mode for platforms with deformed inotify support
 
 == 4.3: September 25, 2019
@@ -109,7 +123,7 @@
  - Relocated 'reload-browser' to http://entrproject.org/scripts/reload-browser
  - Drop FIFO support to further simply code and documentation. FIFO mode was
    conceptually good, but EXEC mode is intelligent hand easily handles the vast
-   majority of use cases.
+   majority of use cases
  - Remove kFreeBSD as a target platform
 
 == 3.1: March 4, 2015
@@ -132,7 +146,6 @@
 
 == 2.9: June 10, 2014
 
- - RPM package by @funollet
  - Moved alternate Makefiles to contrib/
  - Trigger actions when a file is truncated on BSD
  - Improved format of DEBUG messages
@@ -140,7 +153,7 @@
  - No longer register NOTE_EXTEND; this event is not always merged with
    NOTE_WRITE on MacOS
  - New directory-watch option ('-d'). In this mode a shell while-loop can be
-   used to track the addition of new files.
+   used to track the addition of new files
 
 
 == 2.8: March 15, 2014
@@ -148,20 +161,18 @@
  - Iteratively check for new file system events using a 1ms timeout after a 
file
    has been renamed or removed in order to prevent the utility from being
    executed before successive changes from a version control system have
-   completed.
- - Regression tests are now system tests that depend on and use Vim and
-   Mercurial
+   completed
+ - Regression tests use Vim and Mercurial
  - Timing on regression tests has been tightened to only support real hardware;
-   they are not expected to pass in emulated environments.
+   they are not expected to pass in emulated environments
  - More correctly identify the first file to trigger a file change notification
- - Regression tests no longer require ksh
- - Renamed regress.sh to system_test.sh
+ - Renamed regress.sh to system_test.sh, and drop dependency on ksh
 
 == 2.7: February 12, 2014
 
  - Changed function pointer prefixes from '_' to 'x' to avoid runtime symbol
    collisions in libc. Required to build on DragonFlyBSD
- - Added this NEWS file to provide detailed release history for port 
maintainers
+ - Add this NEWS file to provide detailed release history for port maintainers
  - Subsitute '/_' argument with the first file that changed
  - Man page formatted with more semantically correct markup
  - Multiple events on the same file are merged on Linux to prevent duplicate
@@ -177,13 +188,13 @@
  - Raise ARG_MAX from 4K to 2MB on Linux, since _SC_ARG_MAX returns an 
incorrect
    value on Linux
  - Handle RENAME events that are not followed by DELETE. This enables us to 
cope
-   with the backup option in Vim.
+   with the backup option in Vim
 
 == 2.5: December 30, 2013
 
  - Restore full 50ms period for consolidating events on Linux. Required for the
    Geany editor
- - Remove use of setproctitle(3), no plans to implement this on Linux and 
MacOS.
+ - Remove use of setproctitle(3), no plans to implement this on Linux and MacOS
    This also eliminates use of the 3-clause license
  - New feature: the first occurrence of '{}' on the command line will be
    replaced with the name of the first file under watch
@@ -216,7 +227,7 @@
  - Exit non-zero if list of regular files exceeds the hard limit set by the
    current login class
  - Ignore directories and special files; exit with error code 1 if no regular
-   files are provided as input.
+   files are provided as input
 
 == 2.1: July 01, 2013
 
@@ -238,7 +249,7 @@
 
 == 1.9: April 13, 2013
 
- - New auto-reload option ('-r'). Thanks for Kevin Cox for the idea
+ - New auto-reload option ('-r')
  - Add a simple configure script, BSD is the default
  - Do not install directories...they should already exist
  - Man page installation path can be set with MANPATH. MacOS expects it to be
@@ -273,8 +284,8 @@
 
 == 1.3: May 17, 2012
 
- - Added FIFO support. Thanks to James K. Lowden for the idea
- - Use min(OPEN_MAX, rl.rlim_max) to be more compatible of Mac OS.
+ - Added FIFO support
+ - Use min(OPEN_MAX, rl.rlim_max) to be more compatible of Mac OS
  - More correct use of fgets(3) when reading STDIN
 
 == 1.2: April 26, 2012
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/entr-4.8/README.md new/entr-5.0/README.md
--- old/entr-4.8/README.md      2021-02-26 21:02:29.000000000 +0100
+++ new/entr-5.0/README.md      2021-07-02 16:50:26.000000000 +0200
@@ -36,19 +36,19 @@
 
 Launch and auto-reload a node.js server:
 
-    $ find . -name '*.js' | entr -r node app.js
+    $ ls *.js | entr -r node app.js
 
 Clear the screen and run a query after the SQL script is updated:
 
-    $ echo my.sql | entr -p psql -f /_
+    $ echo my.sql | entr -cp psql -f /_
 
 Rebuild project if a source file is modified or added to the src/ directory:
 
-    $ while sleep 0.1; do find src -name '*.rb' | entr -d make; done
+    $ while sleep 0.1; do ls src/*.rb | entr -d make; done
 
-Self-terminate after a file is updated
+Auto-reload a web server, or terminate if the server exits
 
-    $ find . -type f | entr -p 'kill $PPID'
+    $ ls * | entr -rz ./httpd
 
 News
 ----
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/entr-4.8/entr.1 new/entr-5.0/entr.1
--- old/entr-4.8/entr.1 2021-02-26 21:02:29.000000000 +0100
+++ new/entr-5.0/entr.1 2021-07-02 16:50:26.000000000 +0200
@@ -13,7 +13,7 @@
 .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 .\"
-.Dd February 18, 2021
+.Dd July 2, 2021
 .Dt ENTR 1
 .Os
 .Sh NAME
@@ -124,21 +124,22 @@
 .Aq Cm control-C .
 .El
 .Sh ENVIRONMENT
-If
-.Ev PAGER
-is undefined,
-.Nm
-will assign
+.Bl -tag -width "ENTR_ENVIRON"
+.It Ev PAGER
+Set to
 .Pa /bin/cat
+by default
 to prevent interactive utilities from waiting for keyboard input if output does
 not fit on the screen.
-.Pp
-If
-.Ev SHELL
-is undefined,
-.Nm entr
-will use
+.It Ev SHELL
+Specify the shell to use with the
+.Fl s
+flag.
+The default is
 .Pa /bin/sh .
+.It Ev EV_TRACE
+Print file system event messages.
+.El
 .Sh EXIT STATUS
 If the
 .Fl z
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/entr-4.8/entr.c new/entr-5.0/entr.c
--- old/entr-4.8/entr.c 2021-02-26 21:02:29.000000000 +0100
+++ new/entr-5.0/entr.c 2021-07-02 16:50:26.000000000 +0200
@@ -106,7 +106,6 @@
 int
 main(int argc, char *argv[]) {
        struct rlimit rl;
-       rlim_t max_watches;
        int kq;
        struct sigaction act;
        int ttyfd;
@@ -114,7 +113,7 @@
        int n_files;
        int i;
        struct kevent evSet;
-       long open_max;
+       unsigned open_max;
 
        if ((*test_runner_main))
                return(test_runner_main(argc, argv));
@@ -159,28 +158,29 @@
        if (sigaction(SIGCHLD, &act, NULL) != 0)
                err(1, "Failed to set SIGCHLD handler");
 
-       getrlimit(RLIMIT_NOFILE, &rl);
-
 #if defined(_LINUX_PORT)
-       max_watches = (rlim_t)fs_sysctl(INOTIFY_MAX_USER_WATCHES);
-       if(max_watches > 0) {
-               rl.rlim_cur = max_watches;
-               open_max = max_watches;
-               goto rlim_set;
-       }
-#endif
-       /* raise soft limit */
-       open_max = min(sysconf(_SC_OPEN_MAX), (long)rl.rlim_max);
-       if (open_max == -1)
-               err(1, "_SC_OPEN_MAX");
-
-       open_max = min(524288, open_max);  /* guard against unrealistic replies 
*/
-
+       /* attempt to read inotify limits */
+       open_max = (unsigned)fs_sysctl(INOTIFY_MAX_USER_WATCHES);
+       if (open_max == 0)
+               open_max = 65536;
+#elif defined(_MACOS_PORT)
+       if (getrlimit(RLIMIT_NOFILE, &rl) == -1)
+               err(1, "getrlimit");
+       /* guard against unrealistic replies */
+       open_max = min(65536, (unsigned)rl.rlim_cur);
+       if (open_max == 0)
+               open_max = 65536;
+#else /* BSD */
+       if (getrlimit(RLIMIT_NOFILE, &rl) == -1)
+               err(1, "getrlimit");
+       open_max = (unsigned)rl.rlim_max;
        rl.rlim_cur = (rlim_t)open_max;
        if (setrlimit(RLIMIT_NOFILE, &rl) != 0)
-               err(1, "setrlimit cannot set rlim_cur to %ld", open_max);
+               err(1, "setrlimit cannot set rlim_cur to %u", open_max);
+#endif
 
-rlim_set:
+       if (getenv("EV_TRACE"))
+               fprintf(stderr, "open_max: %d\n", open_max);
 
        /* prevent interactive utilities from paging output */
        setenv("PAGER", "/bin/cat", 0);
@@ -204,7 +204,7 @@
                errx(1, "No regular files to watch");
        if (n_files == -1)
                errx(1, "Too many files listed; the hard limit for your login"
-                   " class is %ld. Please consult"
+                   " class is %u. Please consult"
                    " http://eradman.com/entrproject/limits.html";, open_max);
        for (i=0; i<n_files; i++)
                watch_file(kq, files[i]);
@@ -219,7 +219,8 @@
                }
 
                /* remember terminal settings */
-               tcgetattr(STDIN_FILENO, &canonical_tty);
+               if (tcgetattr(STDIN_FILENO, &canonical_tty) == -1)
+                       errx(1, "unable to get terminal attributes, use '-n' to 
run non-interactively");
 
                /* Use keyboard input as a trigger */
                EV_SET(&evSet, STDIN_FILENO, EVFILT_READ, EV_ADD, NOTE_LOWAT, 
1, NULL);
@@ -261,7 +262,7 @@
 void
 handle_exit(int sig) {
        if (!noninteractive_opt)
-               xtcsetattr(0, TCSADRAIN, &canonical_tty);
+               xtcsetattr(STDIN_FILENO, TCSADRAIN, &canonical_tty);
        terminate_utility();
        if ((sig == SIGINT || sig == SIGHUP))
            exit(0);
@@ -417,7 +418,7 @@
        char **new_argv;
        char *p, *arg_buf;
        int argc;
-       int stdin_pipe[2];
+       int stdin_pipe[2] = {0, 0};
 
        if (restart_opt == 1) {
                terminate_utility();
@@ -587,7 +588,6 @@
        struct stat sb;
        char c;
        struct termios character_tty;
-       char *trace_message;
 
        leading_edge = files[0]; /* default */
        if (postpone_opt == 0)
@@ -601,7 +601,7 @@
 
 main:
        if (!noninteractive_opt)
-               xtcsetattr(0, TCSADRAIN, &character_tty);
+               xtcsetattr(STDIN_FILENO, TCSADRAIN, &character_tty);
        if ((reopen_only == 1) || (collate_only == 1)) {
                nev = xkevent(kq, NULL, 0, evList, 32, &evTimeout);
        }
@@ -640,7 +640,7 @@
                        dir_modified += compare_dir_contents(file);
        }
        if (!noninteractive_opt)
-               xtcsetattr(0, TCSADRAIN, &canonical_tty);
+               xtcsetattr(STDIN_FILENO, TCSADRAIN, &canonical_tty);
 
        collate_only = 0;
        for (i=0; i<nev; i++) {
@@ -668,7 +668,6 @@
        }
 
        for (i=0; i<nev && reopen_only == 0; i++) {
-               trace_message = "";
 
                if (evList[i].filter != EVFILT_VNODE)
                        continue;
@@ -690,27 +689,30 @@
                        if (file->mode != sb.st_mode) {
                            do_exec = 1;
                            file->mode = sb.st_mode;
-                           trace_message = "mode changed";
                        }
                        /* Possible on Linux when a running binary is unlinked 
*/
                        if (file->ino != sb.st_ino) {
                            do_exec = 1;
                            file->ino = sb.st_ino;
-                           trace_message = "inode changed";
                        }
                }
                else if (evList[i].fflags & NOTE_ATTRIB)
                        continue;
 
-               if ((file->is_dir == 0) && (leading_edge_set == 0)) {
+               if ((leading_edge_set == 0) &&
+                           (file->is_dir == 0) &&
+                           (do_exec == 1)) {
                        leading_edge = file;
                        leading_edge_set = 1;
                }
 
                if (getenv("EV_TRACE")) {
-                       fprintf(stderr, "EVFILT_VNODE: %d/%d: "
-                           "fflags: 0x%x %s\n", i, nev, evList[i].fflags,
-                           trace_message);
+                       fprintf(stderr, "%d/%d: fflags: 0x%x %s %o %s\n",
+                           i, nev,
+                           evList[i].fflags,
+                           file->is_dir ? "d" : "r",
+                           file->mode,
+                           file->fn);
                }
        }
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/entr-4.8/missing/kqueue_inotify.c 
new/entr-5.0/missing/kqueue_inotify.c
--- old/entr-4.8/missing/kqueue_inotify.c       2021-02-26 21:02:29.000000000 
+0100
+++ new/entr-5.0/missing/kqueue_inotify.c       2021-07-02 16:50:26.000000000 
+0200
@@ -57,7 +57,7 @@
 fs_sysctl(const int name) {
        FILE *file;
        char line[8];
-       int value;
+       int value = 0;
 
        switch(name) {
        case INOTIFY_MAX_USER_WATCHES:
@@ -114,18 +114,17 @@
        struct inotify_event *iev;
        u_int fflags;
        const struct kevent *kev;
-       int ignored;
-       struct pollfd *pfd;
        int nfds;
 
-       pfd = calloc(2, sizeof(struct pollfd));
+       int ignored = 0;
+       struct pollfd pfd[2];
+
        pfd[0].fd = kq;
        pfd[0].events = POLLIN;
        pfd[1].fd = STDIN_FILENO;
        pfd[1].events = POLLIN;
 
        if (nchanges > 0) {
-               ignored = 0;
                for (n=0; n<nchanges; n++) {
                        kev = changelist + (sizeof(struct kevent)*n);
                        file = (WatchFile *)kev->udata;
@@ -230,6 +229,5 @@
        }
        while ((poll(pfd, nfds, 50) > 0));
        
-       free(pfd);
        return n;
 }
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/entr-4.8/system_test.sh new/entr-5.0/system_test.sh
--- old/entr-4.8/system_test.sh 2021-02-26 21:02:29.000000000 +0100
+++ new/entr-5.0/system_test.sh 2021-07-02 16:50:26.000000000 +0200
@@ -221,25 +221,29 @@
        fi
 
 try "exec single utility when an entire stash of files is reverted"
-       setup
-       cp /usr/include/*.h $tmp/
-       cd $tmp
-       git init -q
-       git add *.h
-       git commit -m "initial checkin" -q
-       for f in `ls *.h | head`; do
-               chmod 644 $f
-               echo "" >> $f
-       done
-       cd - > /dev/null ; zz
-       ls $tmp/*.h | ./entr -p echo "changed" > $tmp/exec.out &
-       bgpid=$! ; zz
-       cd $tmp
-       git checkout *.h -q
-       cd - > /dev/null ; zz
-       kill -INT $bgpid
-       wait $bgpid || assert "$?" "130"
-       assert "$(cat $tmp/exec.out)" "changed"
+       if [ ! -d /usr/include ]; then
+               skip "Operating system does not include files in a standard 
location"
+       else
+               setup
+               cp /usr/include/*.h $tmp/
+               cd $tmp
+               git init -q
+               git add *.h
+               git commit -m "initial checkin" -q
+               for f in `ls *.h | head`; do
+                       chmod 644 $f
+                       echo "" >> $f
+               done
+               cd - > /dev/null ; zz
+               ls $tmp/*.h | ./entr -p echo "changed" > $tmp/exec.out &
+               bgpid=$! ; zz
+               cd $tmp
+               git checkout *.h -q
+               cd - > /dev/null ; zz
+               kill -INT $bgpid
+               wait $bgpid || assert "$?" "130"
+               assert "$(cat $tmp/exec.out)" "changed"
+       fi
 
 try "exec utility when a file is written by Vim"
        setup

Reply via email to