Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:87648 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 86732 invoked from network); 5 Aug 2015 15:06:57 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 5 Aug 2015 15:06:57 -0000 Authentication-Results: pb1.pair.com smtp.mail=pierre.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pierre.php@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.217.172 as permitted sender) X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 209.85.217.172 mail-lb0-f172.google.com Received: from [209.85.217.172] ([209.85.217.172:33361] helo=mail-lb0-f172.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 14/0F-11835-E8622C55 for ; Wed, 05 Aug 2015 11:06:55 -0400 Received: by lbbyj8 with SMTP id yj8so26199465lbb.0 for ; Wed, 05 Aug 2015 08:06:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=82W/41a86++TLZeCOVtSNCEIaJNIixeOCngr399WVxk=; b=zJFITLP1aTZAA3bk2H6iupVh5Gn6xuZ/K4KSG245jhXCLCDfxQviGgkmJBt+yWUF30 eszDxyilFPlyEK/AfnJ3ajA14NFXLkPAmmrsx1nbJy5s7TJFYpemMW/etqzZqpOZ6CRm SlN3rIV9MNX3m05Xs4jD2i0JZCPiZ/HK7woejpu8xZhEPK6zZW1NEFDPwT9pdZnn2Lez 2td49FOHMOVSt5uzaGc99X+WtS2zBvx15jrF0aR4g6xiC42+xdcil3wGXXB0SLaHQTlV uV8nomg1xEBnwGQmxC6vqquqzLvyHf28VQ8vjwhC+2hDcj5VxjLXvDkY9uvWVPQCGC1B jDMA== MIME-Version: 1.0 X-Received: by 10.112.63.201 with SMTP id i9mr9665761lbs.93.1438787211760; Wed, 05 Aug 2015 08:06:51 -0700 (PDT) Received: by 10.112.33.7 with HTTP; Wed, 5 Aug 2015 08:06:51 -0700 (PDT) Received: by 10.112.33.7 with HTTP; Wed, 5 Aug 2015 08:06:51 -0700 (PDT) In-Reply-To: References: Date: Wed, 5 Aug 2015 22:06:51 +0700 Message-ID: To: Nicolas Grekas Cc: PHP internals Content-Type: multipart/alternative; boundary=001a11c3f386aa1bd9051c91c023 Subject: Re: [PHP-DEV] realpath() on MacOSX doesn't normalize the case of characters From: pierre.php@gmail.com (Pierre Joye) --001a11c3f386aa1bd9051c91c023 Content-Type: text/plain; charset=UTF-8 Hi, On Aug 4, 2015 7:23 PM, "Nicolas Grekas" wrote: > > Hello, > > I reported this bug one year ago (https://bugs.php.net/67220) and it is now > closed as "not a bug". I'd like this to be reconsidered. > > The documentation of realpath() says: > > > realpath() expands all symbolic links and resolves references to '/./', > > '/../' and extra '/' characters in the input path ***and returns the > > canonicalized absolute pathname***. > > > > the last part of this description is IMO what qualifies this behavior on > MacOSX as a bug. > > I'm asking for this now because I spend many hours on Syfony trying to find > an efficient workaround, and this is far from easy. Here is the fastest we > found (it's a mix of scandir()+getcwd()+caching): > https://github.com/symfony/symfony/pull/15443 > > If realpath were behaving on OSX the same as it does on Windows (and Linux), > I could remove 60 lines of wtf lines. > > Do anyone else agree? I think it could be fixed but can be tricky. For windows, there is no path normalization either btw. It would makes realpath more expensive. Also as far as I remember the case sensitivity on osx (for hfs) can be enabled optionally, or? Cheers, Pierre > Regards, > Nicolas --001a11c3f386aa1bd9051c91c023--