<feed xmlns='http://www.w3.org/2005/Atom'>
<title>coreutils/src/tail.c, branch v8.0</title>
<subtitle>Mirror of https://https.git.savannah.gnu.org/git/coreutils.git/
</subtitle>
<id>https://git.shady.money/coreutils/atom?h=v8.0</id>
<link rel='self' href='https://git.shady.money/coreutils/atom?h=v8.0'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/'/>
<updated>2009-10-02T13:00:06Z</updated>
<entry>
<title>tail: avoid a race where we could miss new data with --pid</title>
<updated>2009-10-02T13:00:06Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2009-10-01T07:36:25Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=f8726e05c4ec1141fb3ffad1c9ec3838f59182cb'/>
<id>urn:sha1:f8726e05c4ec1141fb3ffad1c9ec3838f59182cb</id>
<content type='text'>
* src/tail.c (tail_forever, tail_forever_inotify): Close a race in
tail_forever_inotify where new data written after the file check by
a now dead process, but before the pid check, is not output.  We use
the POSIX guarantee that read() and write() are serialized wrt each
other even in separate processes, to assume full file consistency
after exit() and so poll for new data _after_ the writer has exited.
This also allows us to not redundantly _wait_ for new data if the
process is dead.
* tests/tail-2/pid: Remove the now partially invalid sub second sleep
check as we now don't unconditionally wait, and replace it with a check
for the redundant sleep.  Also clarify some of the existing comments.
* NEWS: Mention the fix.
</content>
</entry>
<entry>
<title>maint: Use logical rather than bitwise operators on bools</title>
<updated>2009-09-23T13:33:40Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2009-09-23T09:10:51Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=a037e838e15c9a698f1634398e0fe2726398d575'/>
<id>urn:sha1:a037e838e15c9a698f1634398e0fe2726398d575</id>
<content type='text'>
This is because bitwise operators are:
- confusing and inconsistent in a boolean context
- non short circuiting
- brittle in C89 where bool can be an int (so &gt; 1)
</content>
</entry>
<entry>
<title>doc: mention the texinfo documentation in --help</title>
<updated>2009-09-21T11:37:57Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2009-09-18T22:06:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=5d4f09d83a7c69110b4db97443759e9046c149e1'/>
<id>urn:sha1:5d4f09d83a7c69110b4db97443759e9046c149e1</id>
<content type='text'>
* src/system.h: Rename emit_bug_reporting_address() to
emit_ancillary_info() and update it to not print the translation
project address in en_* locales, and _do_ print it in the 'C'
(and other) locales so that it's included in the default man page.
Also mention how to invoke the texinfo documentation for each command.
Also move the "hard-locale.h" include to the 8 files that now use it.
* man/help2man: Strip the newly added texinfo reference from the
--help output as a more verbose version is already added by help2man.
Suggestion from C de-Avillez
</content>
</entry>
<entry>
<title>tail: make the new piped-stdin test as portable as the old one</title>
<updated>2009-09-08T11:30:38Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-09-08T06:26:22Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=f0ff8c73fe8ae505d2029e905b23ac534d11990c'/>
<id>urn:sha1:f0ff8c73fe8ae505d2029e905b23ac534d11990c</id>
<content type='text'>
* src/tail.c (main): Adapt piped-stdin test to use the same isapipe,
test as was used in the preceding POSIXLY_CORRECT condition.
Remove the now-subsumed POSIXLY_CORRECT test.
Reported by Pádraig Brady.
* doc/coreutils.texi (tail invocation): Document this change.
* NEWS (Changes in behavior): Reclassify, clarify.
</content>
</entry>
<entry>
<title>tail: syntax-only: use "false", rather than equivalent, 0</title>
<updated>2009-09-07T21:20:01Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-09-07T20:36:05Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=f6d1f70183709124afd67462c05f82bb8d116165'/>
<id>urn:sha1:f6d1f70183709124afd67462c05f82bb8d116165</id>
<content type='text'>
* src/tail.c (record_open_fd): Initialize "-&gt;ignore" to false, not 0.
</content>
</entry>
<entry>
<title>tail: ignore -f for piped-stdin, as POSIX requires</title>
<updated>2009-09-07T21:19:56Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-09-07T20:10:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=af6436559c2954d7f35b7fec29dfcbaa4ebdc03b'/>
<id>urn:sha1:af6436559c2954d7f35b7fec29dfcbaa4ebdc03b</id>
<content type='text'>
* src/tail.c (main): Tailing a pipe "forever" is not useful,
and POSIX specifies that tail ignore the -f when there is no
file argument and stdin is a FIFO or pipe.  So we do that.
In addition, GNU tail excludes "-" arguments from the list of files
to tail forever, when the associated file descriptor is connected
to a FIFO or pipe.  Before this change, ":|tail -f" would hang.
Reported by Ren Yang and Ulrich Drepper.
* tests/tail-2/pipe-f: Test for this.
* tests/tail-2/pipe-f2: Ensure tail doesn't exit early for a fifo.
* tests/Makefile.am (TESTS): Add these tests.
* NEWS (POSIX conformance): Mention it.
</content>
</entry>
<entry>
<title>tail: don't give up on inotify mode for an already-ignored "-"</title>
<updated>2009-09-07T18:56:38Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-09-07T18:56:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=a8d26b3ce1630b6e9213b79d213ad7c699ee9861'/>
<id>urn:sha1:a8d26b3ce1630b6e9213b79d213ad7c699ee9861</id>
<content type='text'>
* src/tail.c (main): Adjust today's change to honor the
F[i].ignore flag that may have been set in tail_file.
</content>
</entry>
<entry>
<title>tail -f: handle "-"/stdin once again</title>
<updated>2009-09-07T07:01:14Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-09-07T06:37:08Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=cdfb703c5da31a798557722df516e0d01dac828a'/>
<id>urn:sha1:cdfb703c5da31a798557722df516e0d01dac828a</id>
<content type='text'>
* src/tail.c (main) [HAVE_INOTIFY]: When stdin (i.e., "-", or no args,
but not /dev/stdin) is specified on the command line, don't use inotify.
Reported by Bill Brelsford in &lt;http://bugs.debian.org/545422&gt;.
* tests/tail-2/follow-stdin: New file.  Test for this.
* tests/Makefile.am (TESTS): Add the test.
* NEWS (Bug fixes): Mention it.
This bug was introduced in coreutils-7.5 via commit ae494d4b,
2009-06-02, "tail: use inotify if it is available".
</content>
</entry>
<entry>
<title>tail: flush initial output before possibly blocking</title>
<updated>2009-09-06T07:40:43Z</updated>
<author>
<name>Jim Meyering</name>
<email>meyering@redhat.com</email>
</author>
<published>2009-09-06T07:39:31Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=d54376db68adf655b5f09855442b2983fc2f4f3e'/>
<id>urn:sha1:d54376db68adf655b5f09855442b2983fc2f4f3e</id>
<content type='text'>
* src/tail.c (main): Flush any output from tail_file,
before calling tail_forever_inotify, which can block.
* tests/tail-2/flush-initial: New file.  Test for the bug.
* tests/Makefile.am (TESTS): Add tail-2/flush-initial.
* NEWS (Bug fixes): Mention it.
This bug was introduced in coreutils-7.5 via commit ae494d4b,
2009-06-02, "tail: use inotify if it is available".
</content>
</entry>
<entry>
<title>doc: make the tail --sleep-interval help less confusing</title>
<updated>2009-09-05T16:25:40Z</updated>
<author>
<name>Pádraig Brady</name>
<email>P@draigBrady.com</email>
</author>
<published>2009-09-04T21:50:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/coreutils/commit/?id=471f219ac76fe0e8c42d1b66721c5f14f4238a28'/>
<id>urn:sha1:471f219ac76fe0e8c42d1b66721c5f14f4238a28</id>
<content type='text'>
* src/tail.c (usage): I read "approximately S seconds"
as "approximately 5 seconds" for approximately 5 seconds.
</content>
</entry>
</feed>
