Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:96343 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 89440 invoked from network); 13 Oct 2016 17:08:42 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 13 Oct 2016 17:08:42 -0000 Authentication-Results: pb1.pair.com smtp.mail=dave@mudsite.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=dave@mudsite.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain mudsite.com designates 209.85.215.44 as permitted sender) X-PHP-List-Original-Sender: dave@mudsite.com X-Host-Fingerprint: 209.85.215.44 mail-lf0-f44.google.com Received: from [209.85.215.44] ([209.85.215.44:36014] helo=mail-lf0-f44.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 1A/FF-41968-A9FBFF75 for ; Thu, 13 Oct 2016 13:08:42 -0400 Received: by mail-lf0-f44.google.com with SMTP id b75so145030374lfg.3 for ; Thu, 13 Oct 2016 10:08:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=mudsite-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=UWzlWE+8ChLOKvhB/GqxP7024epySb+Q9uCfdbtJcoQ=; b=ZS2nfphu1NEtbgdLIiC36zfYkTddFyJnNKp5W+s1+kssikXRDR54K5OhnFfojFwvrz UkMbSOwy8DmBkybfLdEM/ZIZFQmilqlv0rMwLBGvxlPUCBntyzu5UAeBsLrYn9wNQi0r IIITxKTnAQjB4zBseYUiRHjCXu6CLP43enbM7IrVDtWmzQVcjHNs6XUNAwe7jZ9/KR7i l2iC66B1sVmulbEw0EMFuIqUnIlMWcMytYWvyltoHjnOHBnTwGLIp1855o/bGlN2BWmq YZcNF1FP8Hpv0Kiqb7juGRBP/DyyCe1aVMbRWogxe0FMZ8u1eLzoBRwB3DC4fYh7Qz6L YiXg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=UWzlWE+8ChLOKvhB/GqxP7024epySb+Q9uCfdbtJcoQ=; b=hQmuS5Nv1nQwb3o7yOmUhIHMsZEMwzd/mIzMAsYTFso8c3n0u7XtYt6TLR32VSJNqq HPvMotwRUwE47i9xKHtq2mGszTOoYH4cUmDgevMB0sQNibLIJBXt9qJuCr0brlpNJqnp j9YPcHozSD+Peu5cUelr+OJIerp1zp/j1FJr6V1z7vJMFuDa5e6QMFvNgE7eEHjI7qYt Wm0tVi5tuPIOPzDSejqABg3CfYpw7UHfYm9n6YpI08uue695HeIo7wALXoGBG/Ul6Sgb V3ezxbelVdnzWnCx+G0nfSkyqlLM2OX90eiPVeE1jG2VTVk9qeB0ZiXZ4s+ybtkrUeux x/7g== X-Gm-Message-State: AA6/9RkKabRCwLm7WVNOl3iMHvzvhW450b6LZSu9o/HJcdVenf47e6szoOZj+0jZYbmnN4bShX7MSseILS8Drg== X-Received: by 10.25.228.90 with SMTP id b87mr11572630lfh.61.1476378518337; Thu, 13 Oct 2016 10:08:38 -0700 (PDT) MIME-Version: 1.0 References: <6c571887-c24f-0f11-26b0-5f67b5e7a170@gmx.de> In-Reply-To: <6c571887-c24f-0f11-26b0-5f67b5e7a170@gmx.de> Date: Thu, 13 Oct 2016 17:08:27 +0000 Message-ID: To: "Christoph M. Becker" , Nikita Popov Cc: PHP internals Content-Type: multipart/alternative; boundary=94eb2c0db56423d090053ec22944 Subject: Re: [PHP-DEV] [RFC] Bug #72811 - Replacing parse_url() From: dave@mudsite.com (David Walker) --94eb2c0db56423d090053ec22944 Content-Type: text/plain; charset=UTF-8 On Thu, Oct 13, 2016 at 10:54 AM Christoph M. Becker wrote: > On 07.10.2016 at 16:45, David Walker wrote: > > > On Fri, Oct 7, 2016 at 4:37 AM Nikita Popov > wrote: > > > >> Are you aware of the WHATWG URL standard [1]? Quoting the first goal > >> statement: > >> > >>> Align RFC 3986 and RFC 3987 with contemporary implementations and > >> obsolete them in the process. (E.g., spaces, other "illegal" code > points, > >> query encoding, equality, canonicalization, are all concepts not > entirely > >> shared, or defined.) URL parsing needs to become as solid as HTML > parsing. > > > > I was not. I assume that WHATWG ought to supersede the IETF standards on > > the subject. I can obviously make an implementation follow the standards > > and algorithms set out in this doc. > > That might be hard, because WHATWG has "living standards", i.e. they can > change over time. If we state that our new functionality conforms to > WHATWG's URL standard we have to always apply the latest changes even > into revisions, potentially causing BC breaks. > We could say that we support WHATWG@f88f96 and support the previous 2, or 3, keeping in line with some BC ability. But yes, it would be a nuisance and overly complex to keep updating the parser for frivolous changes (like that commit) which re-makes fragments an optional part of a URL. I'd be more apt to stick to a single 3987/3988 compatible parser, which ought to be future compatible with WHATWG. It would just lack any of the standardization terms, object models, and rigid-parser definitions. That's to say that WHATWG maintains the requirements of the 2RFC and just expands on them. This also plays with what Larry is saying by keeping the parsing, and object-side of things separate. WHATWG does have a very nice layout of the URL/SearchParams, and how they can play with eachother. I'd think that end of the spec should be left for userland classes, in the event a new PSR wants to propose implementing the WHATWG format of URL/SearchParams/Hosts, etc. -- Dave --94eb2c0db56423d090053ec22944--