On Mon, Jul 14, 2008 at 3:51 PM, Joshua ben Jore <[EMAIL PROTECTED]> wrote: > 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.
The fact that one's username can contain weird characters doesn't mean a shell will expand it, though. I (and someone else in an M::B RT ticket) did some digging in some sources, and apparently expandable usernames are something like m/\w[-\w]*/ That's what the M::B::Platform::Unix::_detildefy() method accepts now, in SVN. -Ken