On Tue, 2014-11-18 at 12:15 -0800, Junio C Hamano wrote: > Paul Smith <paul@xxxxxxxxxxxxxxxxx> writes: > > > Getting rid of ls/wc was not as simple as I'd hoped, > > I didn't say ls/wc was not portable. Assuming that a directory for > which the output from "ls -a" has two entries is empty may be. Yes, I didn't get your email before I sent the latest patch. Sorry about that. On Tue, 2014-11-18 at 11:32 -0800, Junio C Hamano wrote: > Even on network mounts from esoteric filesystems and such? When > > http://pubs.opengroup.org/onlinepubs/9699919799/utilities/ls.html > > mentions the "-A" option, it says: > > -A > Write out all directory entries, including those whose names > begin with a <period> ( '.' ) but excluding the entries dot > and dot-dot (if they exist). > > The "if they exist" part suggests, at least to me, that it is valid > for a POSIX filesystem to lack these two (I suspect that one may be > able to find a more definitive answer from other parts of the POSIX > but I didn't bother). Hm. Well, POSIX clearly reserves "." and ".." to be special and requires that directories containing only those values are considered empty (rmdir(2) says so). The definitions section contains special wording for "dot" and "dot-dot". Looking at http://pubs.opengroup.org/onlinepubs/9699919799/xrat/V4_xbd_chap04.html Each directory has exactly one parent directory which is represented by the name dot-dot in the first directory. which implies that every directory must have "..". This is in the Rationale, I realize. There are also various mentions to using "." as a synonym for the current directory. I can't find a clear statement that both are required and that "ls -a" must show them. I've used a wide range of UNIX-en and filesystems for 30 years or so and never seen one that didn't provide them. It seems like it would break quite a few scripts, at least. Even virtual filesystems like ClearCase's MVFS provide "." and "..". If you want to allow for this possibility I can do so but it would be a bit crufty. Personally I think it would be overkill but you're the boss: let me know :-). Cheers! -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html