From: SourceForge.net <no...@so...> - 2006-11-06 23:26:51
|
Bugs item #1591407, was opened at 2006-11-07 01:46 Message generated for change (Comment added) made by coldstore You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=1591407&group_id=10894 Please note that this message will contain a full copy of the comment thread, including the initial issue submission, for this request, not just the latest update. Category: 36. File System Group: current: 8.5a5 Status: Open Resolution: None Priority: 3 Private: No Submitted By: Colin McCormack (coldstore) Assigned to: Vince Darley (vincentdarley) Summary: anomaly in [file tail] under ~ expansion Initial Comment: [file tail ~fred/wilma] will return "wilma", but [file tail ~fred] will error, if there is no ~fred (that is, if the user fred does not exist.) It seems that when the terminal element of a file path/name is ~, it is expanded. I think that there's no good reason for [file tail] to have an existential interpretation, but that normalization of the path with a ~-element forces the existence to be tested implicitly and unintentionally. ---------------------------------------------------------------------- >Comment By: Colin McCormack (coldstore) Date: 2006-11-07 10:26 Message: Logged In: YES user_id=19214 I believe the correct behaviour would be to return "~fred" to [file tail ~fred] when the user fred doesn't exist. I note another anomaly: [file tail ~colin/wilma] returns "wilma" and [file tail ~colin] returns "colin" (being the tail of the expanded path.) It seems (from experiment, not looking at the source) that the expansion is intentionally performed iff the result of [file tail] yields a ~-form. This is unexpected behavior, and inconsistent with such things as [file tail ~fred/..] and so, I believe, it should be removed as surprising and not particularly useful. Most people, I imagine, use [file tail] as a shorthand for [lindex [file split] end]. If they wanted expansion, they could use [file normalize]. ---------------------------------------------------------------------- Comment By: Don Porter (dgp) Date: 2006-11-07 08:36 Message: Logged In: YES user_id=80530 Did some testing in old Tcl releases and this behavior is not new. Same happens in both 8.3.5 and 7.6p2. If this were to be "fixed", what would the correct behavior be? ---------------------------------------------------------------------- You can respond by visiting: https://sourceforge.net/tracker/?func=detail&atid=110894&aid=1591407&group_id=10894 |