{"push_id":676988387,"size":26,"distinct_size":2,"ref":"refs/heads/richacl","head":"d914ae91bcc8353c140c7e4d9f5afa958e73a3f4","before":"9b6b13e0937c1a821ee6e20c7cd797e646353546","commits":[{"sha":"09152f2d75d42c4c840d2e5cf25dcb2d7133055b","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tests: run ls capability coloring test irrespective of $LS_COLORS\n\n* tests/ls/no-cap.sh: Ensure the test isn't skipped even if\ncapability coloring is disabled in the current $LS_COLORS.\nAlso just enable/disable capability coloring to avoid the\ndircolors(1) overhead.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/09152f2d75d42c4c840d2e5cf25dcb2d7133055b"},{"sha":"bdf6837655730c09a42cfd0a23c984e1410370f5","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"maint: avoid a new -Werror=return-type warning in yes.c\n\n* src/yes.c (main): Simplify the logic so that the\ncompiler can see this function always returns a value.\nThis was seen with GCC 5.0 in SINGLE_BINARY mode.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/bdf6837655730c09a42cfd0a23c984e1410370f5"},{"sha":"c77a96ccba91ca687fe0c22e3b2bb1141fbab421","author":{"email":"8ca9e07d8da722742b3f5a8340e0afab8cf1248e@chromium.org","name":"Yunlian Jiang"},"message":"build: fix SINGLE_BINARY build when printf is a macro\n\n* src/coreutils.c (usage): include coreutils.h outside\nthe printf call, because if it's a macro you will get the error:\nembedding a #include directive within macro arguments is not supported","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/c77a96ccba91ca687fe0c22e3b2bb1141fbab421"},{"sha":"88a03548248cac37662f5044df5c35152c5eb937","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tests: don't skip df tests with /proc/self/mountinfo\n\n* tests/df/no-mtab-status.sh: getmntent is no longer called\nwhen /proc/self/mountinfo is present, thus causing the test\nto be skipped.  Therefore wrap fopen() to ignore mountinfo,\nand use the test genmntent table instead.\n* tests/df/skip-duplicates.sh: Likewise.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/88a03548248cac37662f5044df5c35152c5eb937"},{"sha":"e981643ae3e57affdf3f4f6aa8bf53cf06433f17","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"doc: standardize messages about the '-' stdin FILE\n\n* src/system.h (emit_stdin_note): A new function, refactoring\nthe usage note about the '-' FILE implying stdin.\n* src/base64.c (usage): Use the new function to emit the\nnote in a standard location and with standard separation.\n* src/cat.c (usage): Likewise.\n* src/csplit.c (usage): Likewise.\n* src/cut.c (usage): Likewise.\n* src/expand.c (usage): Likewise.\n* src/fmt.c (usage): Likewise.\n* src/head.c (usage): Likewise.\n* src/md5sum.c (usage): Likewise.\n* src/nl.c (usage): Likewise.\n* src/od.c (usage): Likewise.\n* src/paste.c (usage): Likewise.\n* src/pr.c (usage): Likewise.\n* src/ptx.c (usage): Likewise.\n* src/shred.c (usage): Likewise.\n* src/shuf.c (usage): Likewise.\n* src/sort.c (usage): Likewise.\n* src/sum.c (usage): Likewise.\n* src/tac.c (usage): Likewise.\n* src/tail.c (usage): Likewise.\n* src/tsort.c (usage): Likewise.\n* src/unexpand.c (usage): Likewise.\n* src/wc.c (usage): Likewise.\n* src/join.c (usage): Adjust the separation used for\nthe message referring to FILE1 or FILE2 as stdin.\n* src/comm.c (usage): Add a message using the same\nwording (translation) as used in join.\n* src/split.c (usage): Reword to using FILE rather than\nINPUT, allowing use of emit_stdin_note().  Also remove\nthe mention of \"fixed-size\" pieces as this isn't now\nalways the case.\nFixes http://pad.lv/1450179","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/e981643ae3e57affdf3f4f6aa8bf53cf06433f17"},{"sha":"aa7f31fc4a3f4d0c99086660d5ff008c559d657b","author":{"email":"15b0b14300fba1cff8c70eb2a5c1720ef2a4c654@fb.com","name":"Jim Meyering"},"message":"build: avoid a warning form gcc's new -Wlogical-op\n\nWithout this change, very recent gcc (e.g., version 6.0.0 20150509)\nwould print the following when configured with --enable-gcc-warnings:\n\n  src/copy.c:165:30: error: logical 'or' of equal expressions \\\n    [-Werror=logical-op]\n    && (errno == EOPNOTSUPP || errno == ENOTSUP || errno == ENOSYS))\n                           ^\n* src/system.h (is_ENOTSUP): New function.\n* src/copy.c (punch_hole): Use it.\n* src/ls.c (errno_unsupported, gobble_file): Use it.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/aa7f31fc4a3f4d0c99086660d5ff008c559d657b"},{"sha":"a976d7c9abe3a0ab28c0728e5318b307103f4bbd","author":{"email":"26f2e87da542ec7413c65de46a3f47210bfaa4a6@cs.ucla.edu","name":"Paul Eggert"},"message":"build: rewrite is_ENOTSUP without an #if directive\n\n* src/system.h (is_ENOTSUP): Avoid in-function #if directive.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/a976d7c9abe3a0ab28c0728e5318b307103f4bbd"},{"sha":"8ee3ca4bb96f61ed5fc12da1d751a29fec6f7979","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tests: fix races in and standardize the tail tests\n\n* tests/tail-2/F-vs-missing.sh: Use standard \"fastpoll\" options\n(-s.1 --max-unchanged-stats=1) to speedup the non-inotify case.\nAdd the non-inotify case to the test. `wait` on the background\ntail process to terminate which should avoid the need for the\nnon standard `retry_delay_ cleanup ...` on NFS.\n* tests/tail-2/F-vs-rename.sh: Remove 'out' at the start of the loop,\nto avoid a race in checking its contents.  Also ensure 'a' & 'b'\nfiles are present before the tail process starts.  Use the standard\n\"fastpoll\" options as above.\n* tests/tail-2/f-vs-rename.sh: Likewise.\n* tests/tail-2/append-only.sh: Use more standard variable names.\n* tests/tail-2/flush-initial.sh: Use \"fastpoll\" options for\nnon-inotify platforms.  Also `wait` on the background tail to avoid\nstray processes and file cleanup issues on NFS.\n* tests/tail-2/inotify-hash-abuse.sh: Always run non-inotify case.\nUse \"fastpoll\" options.  Use a more standard retry_delay_ instead\nof a hardcoded sleep loop.  Add a `wait` on the background tail.\n* tests/tail-2/inotify-hash-abuse2.sh: Likewise.\n* tests/tail-2/inotify-rotate-resources.sh: Wait just on the\nspecific tail $pid needed.\n* tests/tail-2/inotify-rotate.sh: Use \"fastpoll\" options.\n* tests/tail-2/pid.sh: Use standard variable names.\nAdd a `wait` on the background tails.\n* tests/tail-2/pipe-f2.sh: Likewise.\n* tests/tail-2/tail-n0f.sh: Likewise.\n* tests/tail-2/retry.sh: Use \"fastpoll\" options.\n* tests/tail-2/symlink.sh: Likewise.\n* tests/tail-2/wait.sh: Likewise.  Speedup by using sub second\nparameters to timeout(1).  Improve the part ensuring that\n-F never follows a renamed file.\n* tests/tail-2/infloop-1.sh: Remove invalid test.  tail(1) was not\nbeing passed the --pid=$yes_pid option, retry_delay_ wasn't used\nto avoid races, and yes could write huge files before being killed.\n* tests/local.mk: Remove the invalid test reference.\n* tests/tail-2/assert-2.sh: Rewrite using retry_delay_().  Since\nno longer hardcoding large delays, remove the VERY_EXPENSIVE tag.\n* tests/tail-2/assert.sh: Likewise.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/8ee3ca4bb96f61ed5fc12da1d751a29fec6f7979"},{"sha":"fe02153e6475ae52f90cfccae1d1ba24baf35f9c","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tests: avoid hung processes due to gdb SIGCONT handling\n\n* tests/tail-2/inotify-race.sh: Add a `wait` to ensure that\nwe reap all background gdb and tail processes.  That resulted\nin the test hanging intermittently and upon investigation was\ndue to gdb intermittently failing to terminate the child process\ndue to receiving a SIGCONT signal.  Therefore we avoid using\ntimeout(1) which sends that signal, and instead rely on tail's\ninbuilt --pid monitoring on a background sleep process.\nGiven this new implementation, the VERY_EXPENSIVE guard was removed.\nRelated issues with this test hanging were previously discussed at:\nhttps://lists.gnu.org/archive/html/bug-coreutils/2009-12/msg00025.html","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/fe02153e6475ae52f90cfccae1d1ba24baf35f9c"},{"sha":"9069f4ec850364e778c51bfa6f1ab761be67caec","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tests: cleanup background processes upon interruption\n\nReap background processes so that:\n- Stray processes aren't left on the system\n- Files aren't held open causing deletion issues on NFS\n- Partitions used to run the tests from can be unmounted\n\n* tests/tail-2/F-vs-missing.sh: Add the `kill && wait` of the\nbackground $pid(s) to cleanup_().\n* tests/tail-2/F-vs-rename.sh: Likewise.\n* tests/tail-2/f-vs-rename.sh: Likewise.\n* tests/tail-2/append-only.sh: Likewise.\n* tests/tail-2/assert-2.sh: Likewise.\n* tests/tail-2/assert.sh: Likewise.\n* tests/tail-2/flush-initial.sh: Likewise.\n* tests/tail-2/inotify-hash-abuse.sh: Likewise.\n* tests/tail-2/inotify-hash-abuse2.sh: Likewise.\n* tests/tail-2/inotify-race.sh: Likewise.\n* tests/tail-2/inotify-rotate-resources.sh: Likewise.\n* tests/tail-2/inotify-rotate.sh: Likewise.\n* tests/tail-2/pid.sh: Likewise.\n* tests/tail-2/pipe-f2.sh: Likewise.\n* tests/tail-2/retry.sh: Likewise.\n* tests/tail-2/symlink.sh: Likewise.\n* tests/tail-2/tail-n0f.sh: Likewise.\n* tests/tail-2/wait.sh: Likewise.\n* tests/cp/existing-perm-race.sh: Likewise.\n* tests/cp/file-perm-race.sh: Likewise.\n* tests/cp/parent-perm-race.sh: Likewise.\n* tests/cp/sparse-to-pipe.sh: Likewise.\n* tests/dd/stats.sh: Likewise.\n* tests/du/move-dir-while-traversing.sh: Likewise.\n* tests/misc/cat-buf.sh: Likewise.\n* tests/misc/help-version.sh: Likewise.\n* tests/misc/printf-surprise.sh: Likewise.\n* tests/misc/sort-compress-proc.sh: Likewise.\n* tests/misc/sort-spinlock-abuse.sh: Likewise.\n* tests/misc/stdbuf.sh: Likewise.\n* tests/misc/tac-continue.sh: Likewise.\n* tests/misc/timeout-group.sh: Likewise.\n* tests/mv/i-3.sh: Likewise.\n* tests/rm/dangling-symlink.sh: Likewise.\n* tests/rm/isatty.sh: Likewise.\n* cfg.mk (sc_prohibit_test_background_without_cleanup_):\nA new syntax-check to ensure cleanup_() is defined\nwhen background tasks are created in a test.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/9069f4ec850364e778c51bfa6f1ab761be67caec"},{"sha":"cf06a872e74b45588c2e64903f7fc99cf2aafe27","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tail: fix inotify startup races\n\nThe previous fixes to races in the various tail tests,\nidentified actual races in the tail inotify implementation.\nWith --follow=descriptor, if the tailed file was replaced before\nthe inotify watch was added, then any subsequent changes were ignored.\nSimilarly in --follow=name mode, all changes to a new name were\neffectively ignored if that name was created after the original open()\nbut before the inotify_add_watch().\n\n* src/tail.c (tail_forever_inotify): Fix 3 cases.\n1. With -f, don't stop tailing when file removed before watch.\n2. With -f, watch right file when file replaced before watch.\n3. With -F, inspect correct file when replaced before watch.\nExisting tests identify these when tail compiled with TAIL_TEST_SLEEP.\n* tests/tail-2/inotify-rotate-resources.sh:\nThis test also identifies the issue with --follow=name\nwhen TAIL_TEST_SLEEP is used.  Adjust so the test is immune\nto such races, and also fail quicker on remote file systems.\n* tests/tail-2/inotify-race2.sh: A new test using GDB,\nbased on inotify-race.sh, which tests the -F race\nwithout needed recompilation with sleeps.\n* tests/local.mk: Reference the new test.\n* NEWS: Mention the bug.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/cf06a872e74b45588c2e64903f7fc99cf2aafe27"},{"sha":"b28ff6a3c6ad25d877b63013af245de5d6c70b10","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tail: consistently output all data for truncated files\n\nGenerally if logs are truncated, they're truncated to 0 length,\nso output all existing data when our heuristic determines truncation.\nNote with inotify, truncate() and write() are often determined\nindependently and so all data would be written if that was the case.\n\n* src/tail.c (check_fspec): Reset file offset to 0 upon truncation.\n(tail_forever): Likewise.\n(recheck): Add a FIXME for the related issue where tail may lose\ndata due to tail discounting older log files too early.\n* tests/tail-2/truncate.sh: A new test.\n* tests/local.mk: Reference the new test.\n* NEWS: Mention the fix.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/b28ff6a3c6ad25d877b63013af245de5d6c70b10"},{"sha":"79111d1553ff6603199b9e8e5f27269d55b095fb","author":{"email":"8cfc40e3abb28329ddacbe31290f49cd035fd0d5@gmail.com","name":"Assaf Gordon"},"message":"doc: clarify the operation of wc -L\n\n* src/wc.c (usage): State that it calculates display width.\n* doc/coreutils.texi (wc invocation): Detail the distinct\nitems used to determine the display width.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/79111d1553ff6603199b9e8e5f27269d55b095fb"},{"sha":"703747f892d3ec4713b97d4bff770a80122cd1ef","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"split: auto set suffix len for --numeric-suffixes=<N --number=N\n\nSupporting `split --numeric-suffixes=1 -n100` for example.\n\n* doc/coreutils.texi (split invocation): Mention the two\nuse cases for the FROM parameter, and the consequences on\nthe suffix length determination.\n* src/split.c (set_suffix_length): Use the --numeric-suffixes\nFROM parameter in the suffix width calculation, when it's\nless than the number of files specified in --number.\n* tests/split/suffix-auto-length.sh: Add test cases.\nFixes http://bugs.gnu.org/20511","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/703747f892d3ec4713b97d4bff770a80122cd1ef"},{"sha":"45b8fe430dced8c489cb64491b8716cffeeca8c3","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"timeout: with --foreground don't send SIGCONT\n\n* src/timeout.c (cleanup): Don't send SIGCONT to the monitored program\nwhen --foreground is specified, as it's generally not needed for\nforeground programs, and can cause intermittent signal delivery\nissues with monitors like GDB for example.\n* doc/coreutils.texi (timeout invocation): Mention that SIGCONT\nis not sent with --foreground.\n* NEWS: Mention the behavior change.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/45b8fe430dced8c489cb64491b8716cffeeca8c3"},{"sha":"7f0f58fdd68e7ca86dd5db7effb2c7f94adc4a08","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tests: fix async allocation race on BTRFS\n\n* tests/dd/sparse.sh: Sync files before checking allocations,\nwhich may be done asynchronously on NFS and BTRFS at least.\nAlso mark this test as very expensive on remote file systems.\n* tests/du/2g.sh: Likewise, also use fallocate if available\nto efficiently allocate the large file, otherwise skip\non remote file systems.\n* tests/tail-2/inotify-rotate-resources.sh: Use the more\nstandard is_local_dir_() to check remoteness.\n* tests/cp/fiemap-empty.sh: Comment on the sync issue\nfor this currerntly unused test.\nFixes http://bugs.gnu.org/20570","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/7f0f58fdd68e7ca86dd5db7effb2c7f94adc4a08"},{"sha":"99dfd5a6616cbda93d1c8c917aa3158d8b82c25b","author":{"email":"1d6e1cf70ec6f9ab28d3ea4b27a49a77654d370e@bernhard-voelker.de","name":"Bernhard Voelker"},"message":"tests: fix check for local file system in inotify-rotate-resources.sh\n\n* tests/tail-2/inotify-rotate-resources.sh: s/(is_local_dir)/\\1_/","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/99dfd5a6616cbda93d1c8c917aa3158d8b82c25b"},{"sha":"524a86e4f5a2cf1145c18187d4158aec48c87640","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"build: avoid issues with case insensitive file systems\n\n* cfg.mk (sc_case_insensitive_file_names): A new syntax-check rule.\n* tests/tail-2/descriptor-vs-rename.sh: Rename from\ntests/tail-2/f-vs-rename.sh\n* tests/local.mk: Reference the renamed test.\nReported by Jim Meyering.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/524a86e4f5a2cf1145c18187d4158aec48c87640"},{"sha":"719c15a6f2ae6bf5d17021c6f138d6378ed06c50","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"build: fix 'dist' and 'syntax-check' targets in VPATH build\n\n* cfg.mk: Various syntax-check adjustments so that it's\nnot assumed the $builddir is the base distribution directory.\n* Makefile.am: Likewise for the 'dist' target.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/719c15a6f2ae6bf5d17021c6f138d6378ed06c50"},{"sha":"edc5bc5020e67c0835b6e4cf8fd9fef81055c148","author":{"email":"511993d3c99719e38a6779073019dacd7178ddb9@draigBrady.com","name":"Pádraig Brady"},"message":"tests: fix non POSIX constructs causing failures with dash\n\n* tests/cp/no-ctx.sh: Scope of `var=val func` is inconsistent\nacross shells, so avoid that construct with functions.\n* tests/df/no-mtab-status.sh: Likewise.\n* tests/tail-2/inotify-race.sh: `read` needs an argument.\n* tests/tail-2/inotify-race2.sh: Likewise.","distinct":false,"url":"https://api.github.com/repos/andreas-gruenbacher/coreutils/commits/edc5bc5020e67c0835b6e4cf8fd9fef81055c148"}]}