Hello community, here is the log from the commit of package entr for openSUSE:Factory checked in at 2018-02-06 16:47:41 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/entr (Old) and /work/SRC/openSUSE:Factory/.entr.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "entr" Tue Feb 6 16:47:41 2018 rev:3 rq:572523 version:4.0 Changes: -------- --- /work/SRC/openSUSE:Factory/entr/entr.changes 2017-11-08 15:10:46.460644641 +0100 +++ /work/SRC/openSUSE:Factory/.entr.new/entr.changes 2018-02-06 16:47:45.423990723 +0100 @@ -1,0 +2,9 @@ +Sat Feb 3 18:05:13 UTC 2018 - avin...@opensuse.org + +- Bump to 4.0 + - Warn instead of error if kqueue fails to register on STDIN + - Close STDIN before running the utility when the restart option + is used + - Restore terminal settings if terminated by a signal + +------------------------------------------------------------------- Old: ---- entr-3.9.tar.bz2 New: ---- entr-4.0.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ entr.spec ++++++ --- /var/tmp/diff_new_pack.mZkZiT/_old 2018-02-06 16:47:47.103912116 +0100 +++ /var/tmp/diff_new_pack.mZkZiT/_new 2018-02-06 16:47:47.103912116 +0100 @@ -1,7 +1,7 @@ # # spec file for package entr # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # Copyright (c) 2016 Daniel Lichtenberger # # All modifications and additions to the file contributed by third parties @@ -18,7 +18,7 @@ Name: entr -Version: 3.9 +Version: 4.0 Release: 0 Summary: A utility for running arbitrary commands when files change License: ISC ++++++ entr-3.9.tar.bz2 -> entr-4.0.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/eradman-entr-332fd96a324a/.hg_archival.txt new/eradman-entr-d5110481f5b9/.hg_archival.txt --- old/eradman-entr-332fd96a324a/.hg_archival.txt 2017-09-19 20:58:52.000000000 +0200 +++ new/eradman-entr-d5110481f5b9/.hg_archival.txt 2018-02-02 16:36:53.000000000 +0100 @@ -1,4 +1,4 @@ repo: 49108c05f40cf0f2abceacff753c2df1cd22e1ec -node: 332fd96a324a7771b0d2252027c44eb972fd38dc +node: d5110481f5b968402d94e0c00b0ab1fedc2ce9f0 branch: default -tag: entr-3.9 +tag: entr-4.0 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/eradman-entr-332fd96a324a/.hgtags new/eradman-entr-d5110481f5b9/.hgtags --- old/eradman-entr-332fd96a324a/.hgtags 2017-09-19 20:58:52.000000000 +0200 +++ new/eradman-entr-d5110481f5b9/.hgtags 2018-02-02 16:36:53.000000000 +0100 @@ -113,3 +113,4 @@ c15b0be493fc70e6e13c2a7fa451486aa1bc71a3 entr-3.6 c5b62bde107d1b30af43fccc0398a5694a9b6b67 entr-3.7 592856d50559bc48fef4b27cc5c2bc4eacb69428 entr-3.8 +332fd96a324a7771b0d2252027c44eb972fd38dc entr-3.9 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/eradman-entr-332fd96a324a/Makefile.bsd new/eradman-entr-d5110481f5b9/Makefile.bsd --- old/eradman-entr-332fd96a324a/Makefile.bsd 2017-09-19 20:58:52.000000000 +0200 +++ new/eradman-entr-d5110481f5b9/Makefile.bsd 2018-02-02 16:36:53.000000000 +0100 @@ -1,6 +1,6 @@ PREFIX ?= /usr/local MANPREFIX ?= ${PREFIX}/man -RELEASE = 3.9 +RELEASE = 4.0 CPPFLAGS += -DRELEASE=\"${RELEASE}\" all: versioncheck entr diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/eradman-entr-332fd96a324a/NEWS new/eradman-entr-d5110481f5b9/NEWS --- old/eradman-entr-332fd96a324a/NEWS 2017-09-19 20:58:52.000000000 +0200 +++ new/eradman-entr-d5110481f5b9/NEWS 2018-02-02 16:36:53.000000000 +0100 @@ -1,5 +1,11 @@ = Release History +== 4.0: February 02, 2018 + + - Warn instead of error if kqueue fails to register on STDIN + - Close STDIN before running the utility when the restart option is used + - Restore terminal settings if terminated by a signal + == 3.9: September 19, 2017 - Fix use of poll(2) to avoid possible busy-loop on Linux diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/eradman-entr-332fd96a324a/README.md new/eradman-entr-d5110481f5b9/README.md --- old/eradman-entr-332fd96a324a/README.md 2017-09-19 20:58:52.000000000 +0200 +++ new/eradman-entr-d5110481f5b9/README.md 2018-02-02 16:36:53.000000000 +0100 @@ -14,15 +14,16 @@ To see available build options run `./configure -h` -Binary Installation -------------------- +Source Installation - Windows Subsystem for Linux +------------------------------------------------- -The following distributions provide `entr` as part of their main -package repository: + wget http://entrproject.org/patches/entr-3.9-wsl + patch -p1 < entr-3.9-wsl + ./configure + make install -* OpenBSD and FreeBSD -* Mac OS using Homebrew or MacPorts -* Debian, Ubuntu, Fedora, and Alpine Linux +The source patch is the current workaround for deformed [inotify +support on WSL](https://github.com/Microsoft/BashOnWindows/issues/2507). Man Page Examples ----------------- diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/eradman-entr-332fd96a324a/entr.1 new/eradman-entr-d5110481f5b9/entr.1 --- old/eradman-entr-332fd96a324a/entr.1 2017-09-19 20:58:52.000000000 +0200 +++ new/eradman-entr-d5110481f5b9/entr.1 2018-02-02 16:36:53.000000000 +0100 @@ -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 September 14, 2017 +.Dd September 22, 2017 .Dt ENTR 1 .Os .Sh NAME @@ -63,6 +63,7 @@ waits for the .Ar utility to exit to ensure that resources such as sockets have been closed. +Control of the TTY is not transferred the child process. .It Fl s Evaluate the first argument using the interpreter specified by the .Ev SHELL diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/eradman-entr-332fd96a324a/entr.c new/eradman-entr-d5110481f5b9/entr.c --- old/eradman-entr-332fd96a324a/entr.c 2017-09-19 20:58:52.000000000 +0200 +++ new/eradman-entr-d5110481f5b9/entr.c 2018-02-02 16:36:53.000000000 +0100 @@ -78,6 +78,7 @@ int restart_opt; int postpone_opt; int shell_opt; +struct termios canonical_tty; /* forwards */ @@ -179,10 +180,13 @@ close(ttyfd); } + /* remember terminal settings */ + tcgetattr(STDIN_FILENO, &canonical_tty); + /* Use keyboard input as a trigger */ EV_SET(&evSet, STDIN_FILENO, EVFILT_READ, EV_ADD, NOTE_LOWAT, 1, NULL); if (xkevent(kq, &evSet, 1, NULL, 0, NULL) == -1) - err(1, "failed to register stdin"); + xwarnx("failed to register stdin"); watch_loop(kq, argv+argv_index); return 1; @@ -212,6 +216,7 @@ void handle_exit(int sig) { + xtcsetattr(0, TCSADRAIN, &canonical_tty); terminate_utility(); raise(sig); } @@ -319,9 +324,9 @@ usage(); } } - if (argv[optind] == '\0') + if (argv[optind] == 0) usage(); - if ((shell_opt == 1) && (argv[optind+1] != '\0')) + if ((shell_opt == 1) && (argv[optind+1] != 0)) xerrx(1, "-s requires commands to be formatted as a single argument"); return optind; } @@ -381,8 +386,10 @@ if (clear_opt == 1) (void) system("/usr/bin/clear"); /* Set process group so subprocess can be signaled */ - if (restart_opt == 1) + if (restart_opt == 1) { setpgid(0, getpid()); + (void) close(STDIN_FILENO); + } /* wait up to 1 seconds for each file to become available */ for (i=0; i < 10; i++) { ret = xexecvp(new_argv[0], new_argv); @@ -485,15 +492,14 @@ int dir_modified = 0; int leading_edge_set = 0; struct stat sb; - struct termios canonical_tty, character_tty; char c; + struct termios character_tty; leading_edge = files[0]; /* default */ if (postpone_opt == 0) run_utility(argv); /* disabling/restore line buffering and local echo */ - tcgetattr(STDIN_FILENO, &canonical_tty); character_tty = canonical_tty; character_tty.c_lflag &= ~(ICANON|ECHO); diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/eradman-entr-332fd96a324a/system_test.sh new/eradman-entr-d5110481f5b9/system_test.sh --- old/eradman-entr-332fd96a324a/system_test.sh 2017-09-19 20:58:52.000000000 +0200 +++ new/eradman-entr-d5110481f5b9/system_test.sh 2018-02-02 16:36:53.000000000 +0100 @@ -93,6 +93,14 @@ # file system tests +try "exec a command as a background task and ensure stdin is closed" + setup + ls $tmp/file* | ./entr -r sh -c 'test -t 0; echo $?; kill $$' >$tmp/exec.out & + bgpid=$! ; zz + kill -INT $bgpid + wait $bgpid || assert "$?" "130" + assert "$(cat $tmp/exec.out)" "1" + try "exec single shell utility and exit when a file is added to an implicit watch path" setup ls $tmp/file* | ./entr -dp sh -c 'echo ping' >$tmp/exec.out 2>$tmp/exec.err \