I tried building Perl 5.10.0 on work's new OS X laptop. My username is approximately [EMAIL PROTECTED] complete with @ and . characters. My home directory is /Users/[EMAIL PROTECTED] The current code and tests assume that only characters in the \w class are valid in usernames. If email addresses appear to be valid usernames, the code Module::Build uses on my platform should perhaps use a regexp like m<^~[^/]*(?=/|$)> instead of m<^~\w*(?=/|$)>. In my case, the characters available for my username are probably restricted from the full [^/] and certainly exclude : but probably other things like \0 and anything non-ASCII.
[^/] is good enough to pass tests right now. To be correct, I think possibly I need to make Mac OS X be a subdialect of UNIX and add abstractions like "characters not allowed in usernames and pathnames," comprehend whether the set of things disallowed are actually the union of the two previously mentioned sets, and consider whether this data has byte or character semantics. Anyone's thoughts? I don't know what's correct for UNIXy Macs. Josh