Bug 40196

Summary: man find does not describe -follow
Product: Documentation Reporter: Vladimir Tchoukharev <chu>
Component: Books & ArticlesAssignee: Tom Rhodes <trhodes>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Latest   
Hardware: Any   
OS: Any   

Description Vladimir Tchoukharev 2002-07-04 20:00:10 UTC
man find does not describe an option -follow. It only mentions this option 
in STANDARDTS section. Quick check confirm that -follow is implemented, 
thus references to it in usenet are most probably correct.

 $ grep -i -- -follow /usr/src/usr.bin/find/*
/usr/src/usr.bin/find/find.1:.Ic -depth , -follow ,
/usr/src/usr.bin/find/function.c:       ftsoptions |= FTS_PHYSICAL;     /* disable -follow */
/usr/src/usr.bin/find/function.c:       ftsoptions &= ~FTS_LOGICAL;     /* disable -follow */
/usr/src/usr.bin/find/function.c: * -follow functions --
/usr/src/usr.bin/find/option.c: { "-follow",    c_follow,       f_always_true,  0 },

Fix: 

Sorry, don't know what it supposed to do, no patch this time.
Comment 1 sirmoo 2004-02-23 06:54:44 UTC
find(1) has the -follow option historically on SysV and Solaris.

In IRIX 6.5, the find(1) manpage says: 

-follow		Always true; causes the underlying file of a symbolic link to 
		be checked rather than the symbolic link itself.

In GNU find(1), the manpage says:

-follow		Dereference symbolic links...

In Solaris 8+ find(1), the manpage says:

-follow		Always true; causes symbolic  links  to  be  followed.
		When following symbolic links, find keeps track of the
		directories visited so that  it  can  detect  infinite
		loops;  for example, such a loop would occur if a sym-
		bolic link pointed to  an  ancestor.  This  expression
		should not be used with the -type l expression.

Whereas I'm not sure whether or not FreeBSD's find(1) supports the infinite loop
detection feature, the Solaris description appears to be the most accurate.

Can someone verify this for me, and submit a diff/patch? This PR's been open
for over a year.

Thanks,
Pete

-- 
Peter C. Lai
University of Connecticut
Dept. of Molecular and Cell Biology
Yale University School of Medicine
SenseLab | Research Assistant
http://cowbert.2y.net/
Comment 2 Dag-Erling Smørgrav 2004-02-23 09:05:59 UTC
"Peter C. Lai" <sirmoo@cowbert.2y.net> writes:
> find(1) has the -follow option historically on SysV and Solaris.
> [...]
> Whereas I'm not sure whether or not FreeBSD's find(1) supports the
> infinite loop detection feature, the Solaris description appears to
> be the most accurate.

Have you even read the man page?  Our find(1) uses fts(3) and supports
the usual -H, -L and -P options.  The -follow option (and one reason
why we don't support it) is even mentioned in the STANDARDS section,
though -H is misspelled as -h in that paragraph.

DES
--=20
Dag-Erling Sm=F8rgrav - des@des.no
Comment 3 sirmoo 2004-02-23 21:24:28 UTC
-follow works on the command line. Is it just another method to invoke -H?
I find it strange that the only mention of -follow is in the STANDARDS section,
since that's not the most intutitive place to look for it (yes, I did read it);
I guess the misspelling threw me off since there's no -h option (only -H) :)
Shouldn't we at least put in a line for -follow saying "another name for -H"?

thanks

On Mon, Feb 23, 2004 at 10:05:59AM +0100, Dag-Erling Sm?rgrav wrote:
> "Peter C. Lai" <sirmoo@cowbert.2y.net> writes:
> > find(1) has the -follow option historically on SysV and Solaris.
> > [...]
> > Whereas I'm not sure whether or not FreeBSD's find(1) supports the
> > infinite loop detection feature, the Solaris description appears to
> > be the most accurate.
> 
> Have you even read the man page?  Our find(1) uses fts(3) and supports
> the usual -H, -L and -P options.  The -follow option (and one reason
> why we don't support it) is even mentioned in the STANDARDS section,
> though -H is misspelled as -h in that paragraph.
> 
> DES
> -- 
> Dag-Erling Sm?rgrav - des@des.no

-- 
Peter C. Lai
University of Connecticut
Dept. of Molecular and Cell Biology
Yale University School of Medicine
SenseLab | Research Assistant
http://cowbert.2y.net/
Comment 4 Dag-Erling Smørgrav 2004-02-24 06:57:42 UTC
"Peter C. Lai" <sirmoo@cowbert.2y.net> writes:
> -follow works on the command line. Is it just another method to
> invoke -H?  I find it strange that the only mention of -follow is in
> the STANDARDS section, since that's not the most intutitive place to
> look for it (yes, I did read it); I guess the misspelling threw me
> off since there's no -h option (only -H) :) Shouldn't we at least
> put in a line for -follow saying "another name for -H"?

It isn't "another name for -H", and the reason why is explained in the
STANDARDS section.  Please read it again.

If you insist on documenting -follow, make sure to

 - document it in the correct section (PRIMARIES, not DESCRIPTION)
 - note that it does not behave like other primaries do
 - note that it should not be used except for compatibility reasons
 - also document -depth and -xdev in the same manner

DES
--=20
Dag-Erling Sm=F8rgrav - des@des.no
Comment 5 Tom Rhodes freebsd_committer freebsd_triage 2004-02-24 15:32:35 UTC
On Tue, 24 Feb 2004 07:57:42 +0100
des@des.no (Dag-Erling Sm=F8rgrav) wrote:

> "Peter C. Lai" <sirmoo@cowbert.2y.net> writes:
> > -follow works on the command line. Is it just another method to
> > invoke -H?  I find it strange that the only mention of -follow is in
> > the STANDARDS section, since that's not the most intutitive place to
> > look for it (yes, I did read it); I guess the misspelling threw me
> > off since there's no -h option (only -H) :) Shouldn't we at least
> > put in a line for -follow saying "another name for -H"?
>=20
> It isn't "another name for -H", and the reason why is explained in the
> STANDARDS section.  Please read it again.
>=20
> If you insist on documenting -follow, make sure to
>=20
>  - document it in the correct section (PRIMARIES, not DESCRIPTION)
>  - note that it does not behave like other primaries do
>  - note that it should not be used except for compatibility reasons
>  - also document -depth and -xdev in the same manner

Wouldn't a note that -follow is supported only for compatibility
reasons?

--=20
Tom Rhodes
Comment 6 Gary W. Swearingen 2004-02-24 19:24:27 UTC
des@des.no (Dag-Erling Smørgrav) writes:

> If you insist on documenting -follow, make sure to
>
>  - document it in the correct section (PRIMARIES, not DESCRIPTION)

From the mdoc(7) manpage's list of section descriptions:

     .Sh COMPATIBILITY  Known compatibility issues (e.g. deprecated options or
                        parameters) should be listed here.
Comment 7 Tom Rhodes freebsd_committer freebsd_triage 2004-02-27 20:10:00 UTC
State Changed
From-To: open->patched

The -follow option was added under a compatibility section 
and noted with the -H flag. 


Comment 8 Tom Rhodes freebsd_committer freebsd_triage 2004-02-27 20:10:00 UTC
Responsible Changed
From-To: freebsd-doc->trhodes

The -follow option was added under a compatibility section 
and noted with the -H flag.
Comment 9 Tom Rhodes freebsd_committer freebsd_triage 2004-03-04 12:03:03 UTC
State Changed
From-To: patched->closed

MFC Complete!