Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:105487 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 27698 invoked from network); 28 Apr 2019 23:30:16 -0000 Received: from unknown (HELO mail-ua1-f49.google.com) (209.85.222.49) by pb1.pair.com with SMTP; 28 Apr 2019 23:30:16 -0000 Received: by mail-ua1-f49.google.com with SMTP id 88so2852466uau.6 for ; Sun, 28 Apr 2019 13:32:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=wyQscPNWXgTP6R7EIeN48j9Zkrtp3UOJyvsgJm8gJhc=; b=XbqcjH3NJ3S5yj4jOyQNdL0YIBNLHDrAWGxE+2ia3b0TtLveSpjGauGHbcVvSwauD9 v9pjxK0YMwxYbHEzR8m2FMSvyZOYdU9S32Eg7jsgosZd93p3RxPJxpWr33wTWekqHFuA KkU2p6fVHO0hmr/FogfOdELon3jlqd98Ao8iMexGzhKAxXjnwjxphwK1OoiYKa40V4gv b2GvYIqQYmUQ9OiIDUanoRZJRD0A1vAxtgA/sGuVwoLkYEXgEtOwNyC0xk6qiUDAi2ZX uhPfaUMKbds/pz+FecVnWLP7tl3tmr88ogOIDHR7YuTYq3AH4cRozsJUhXc6rjeHKBB4 Dx2w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=wyQscPNWXgTP6R7EIeN48j9Zkrtp3UOJyvsgJm8gJhc=; b=WwDhe4jWbhGeoBy1SOqRK8/RaH/1gSaib4QTMne6e8f/USgfA9izdEe/6YQ4KDpXWc 3UT5q5Fde6QSSBsvAXIkT9favWrGQdQVE+YAaj+2Y7UX4mNmzDKfnPMIv/A5FY8TwcFJ D1RaZJuDLNlljxC4FldoD0RbFbvI8n4rzzSMMf3CcgPwR96uPeytoFzycwMz3zbjqDT5 0f0UAOvYbjwOFjhXpB0V5LhQdYvmhQeuLdivzh7dNG2oqKS+9OHnvbs5hE3XwDJZkCl8 /NcfOx2H0Y2TySFfUEWhHgj19R/Tgj8fuft+VNmKmEJx3uZ98/xaXi58tAc9xzqU1tP3 xw8Q== X-Gm-Message-State: APjAAAWNd6dPJ41GBnRh9HIGm8QfJ6GCfq8HawTouLHit6+6kQ13xpA+ 796gbugw9ZqVgMpqWKOzS4P0QFAn+sW4LlwnCAFewCsw X-Google-Smtp-Source: APXvYqxigXGu8TDAbptWCpGWoKUCe8ZQ6BingMR+1Zjih6F0rjh/lQk9ChZqDiNKLK+Qt3vVrHeHF9Z7wm+VwNa/Hhc= X-Received: by 2002:ab0:2b13:: with SMTP id e19mr4223417uar.15.1556483519628; Sun, 28 Apr 2019 13:31:59 -0700 (PDT) MIME-Version: 1.0 References: <0ec42fa9-77d1-a203-8425-e72fdd5071f3@korulczyk.pl> <06473788-a34b-f041-36e6-31d19d8dda4c@cubiclesoft.com> <59cafbfb-2bb0-468c-458f-74bcac780e0f@korulczyk.pl> <004c01d4f09f$880ac320$98204960$@roze.lv> <004401d4faa3$60f83700$22e8a500$@gmail.com> <2f922f17-bc7c-313a-8f77-122e861995be@lsces.co.uk> <5741936F-B1F4-43C7-B815-F9D8030AC7BB@koalephant.com> <49A4B76C-4C62-4CBE-BA20-FBE56CA29AB0@cschneid.com> <609E93CF-099B-446C-AD28-04F1D802C9F0@cschneid.com> <000401d4fac8$ae592cf0$0b0b86d0$@roze.lv> In-Reply-To: Date: Sun, 28 Apr 2019 22:30:58 +0200 Message-ID: To: Zeev Suraski Cc: Reinis Rozitis , PHP Internals List Content-Type: multipart/alternative; boundary="000000000000494ba305879d0f3d" Subject: Re: [PHP-DEV] [RFC] [VOTE] Deprecate PHP's short open tags From: george.banyard@gmail.com ("G. P. B.") --000000000000494ba305879d0f3d Content-Type: text/plain; charset="UTF-8" On Sun, 28 Apr 2019 at 14:36, Zeev Suraski wrote: > As I said numerous times in the past, I'm a firm believer that >>> controversial RFCs (ones that generate a lot of votes with a substantial >>> number of opposers) should not pass. I think this is important when >>> adding >>> features - but it's actually a lot more important with deprecations. >>> When >>> there's substantial doubt whether a deprecation should go through or not, >>> there should be no doubt at all - it shouldn't. This is one of the >>> clearest cases if not the clearest one we've had to date. >>> >> >> This IMHO applies to the deprecation vote which includes the default >> change >> > > From my POV it applies to all deprecations, although obviously taking out > something that's been a basic building block for the last 20+ years is > probably more of an issue than some 3rd party utility function. > I think this just boils down to what is an acceptable majority, if 2/3 is not enough then 3/4 but this is another debate altogether. (and seems that is where people disagree as more people vote for the removal >> without the deprecation notices which seems to point this is the issue) >> which in hindsight is a stupid thing to do, but I would have loved that >> people >> point out to this specific issue (and the voting structure) during the >> discussion >> or even at the beginning of the vote. >> >> But basing my self on the vote to remove the short open tags in PHP 8, >> which >> cleared with 74% so nearly 3/4 it would need six (6) more "NO" votes >> without any >> "YES" votes to be on the 2/3 threshold. Whereas the deprecation votes >> "only" >> needs two (2) votes to be on the 2/3 threshold. >> > > That's not how I understood the vote - although honestly, I found the vote > layout to be a bit weird. > > There are are two issues here: > 1. Secondary votes only kick in if the primary vote passes. They're also > defined as votes where you only need a simple majority for one of the > options. > 2. The two questions are, in fact, one and the same. Removing a feature > in a major version requires that we first deprecate it in a mini version, > in other words - we can't remove something in 8.0 in case it's not first > deprecated in 7.4. > > I admit I found this confusing that the two votes were separate, but the > way I understood it, is that we may actually deprecate it at 7.4, without > actually removing it at 8.0, but just keeping it deprecated. The other way > around (removing it in 8.0 without first deprecating it in 7.x) is against > our rules. > This was indeed the intention of the voting structure as I wanted to have a vote to get see if people were filling to remove it with PHP 8 or leave it longer in the Engine. However looking at how some people voted against the deprecation notice but for the removal the only meaningfull conclusion I can come up with is that the change of the default value is the issue. > I mean I don't see how we are in unchartered territory, the vote passed, >> sure >> with not a huge supra majority but it still passed. >> > > We're in unchartered territory not from a process perspective, but in > terms of the number of core devs who think it's a really bad idea and the > fact we're rediculously close to the minimum threshold - for something that > should really happen with consensus. > I can see this but is it really unheard of? > Moreover going about how Twitter [2] reacted (which isn't necessarely a >> good >> metric) it seems a *vast* majority is in favor of this change. >> > > It is, indeed, not a very good or even meaningful metric at all. The > folks which are likely to care about this are almost definitely severely > under-represented both here and on the dev cycles on Twitter. > This may well be true but by the same argument I can say that a lot of people are for this even tho they didn't express this as much as those against it. > I can consider it but I am really not keen on it. >> > > I'd sincrerely appreciate it if you did. I'm not fond of fighting > windmills, even less so nowadays than in the past - but I really think > we're making a painful mistake for virtually no gain, and I'm pretty sure > I'm not alone in thinking that. Ultimately, nothing in the RFC is new > compared to what we knew back in 1998 when we decided to have short open > tags. There are no new developments that make it more relevant today than > it was back then - if anything, XML is a lot less important today than it > was back then (when it was all the rage). And unlike 1998, the cost > assocaited with deprecating it now is tremendous. So even if we can argue > whether we took the right decision 20 years ago - there's really no new > grounds to reopen that decision today. > The problem is if we don't address it now it will be even more complicated when PHP 9 rolls around and then again. I still believe these short tags are a legacy oddity that should be removed. Because what prevent me from then re-openning the vote again if the vote >> then fails? >> > > Nothing really, other than common courtesy. > I was even hoping that the RFC will be withdrawn given the number of nays > from core devs, but that's of course something that is up to you. > In all honesty I didn't check who votes for what as IMHO everybody is entitled to their opinion. > What happens if the deprecation vote fails but not the removal? >> > Would this imply changing how it is deprecated which is literally the >> topic of the >> other thread without any more voting which I'm totally open to how it is >> changed? >> >> I don't even mind still having a compile error in PHP 8 when it sees the >> token >> as I said before I don't really care that much about the timeline. >> > > I think the real question this RFC raises is whether we want to deprecate > There are several valid options: > - Do nothing (which probably gets my vote) > - Deprecate it in 7.4, and remove it in 8.0 > - Deprecate it in 7.4, and error out over it in 8.0 > - Deprecate it in 8.0, and figure out what we want to do with it as we > gear towards 9.0 (which would give us time to gauge the feedback before > taking decisions - something that won't really be possible with 7.4/8.0 > given the short timelines) > > What I don't really think is a possibility is removing it (one way or > another) in 8.0 without first deprecating it in 7.4 (which again, is what I > found a bit confusing about the vote options). > > I would consider restructuring the questions in a different way than they > currently are and restart the vote: > > Primary Question - Deprecate short open tags yes/no (requires 2/3 > majority) > Secondary Question - which version 7.4/8.0 (simple majority) > Secondary Question - what to do when we remove it - silent removal, error, > something else? (simple majority) > > Thanks, > > Zeev > The problem I have with putting this again to a vote is that it feels revote until the outcomes is convenient to me. And going with this logic I feel I could say let's redo a vote to deprecate the var keywword as the last vote was 3 years ago and maybe opinions have changed. It just end in more resentment IMHO. On Sun, 28 Apr 2019 at 21:46, Stanislav Malyshev wrote: > Hi! > > On 4/28/19 4:52 AM, Benjamin Morel wrote: > >> I don't even mind still having a compile error in PHP 8 when it sees the > > token > > I thought one of the arguments for the whole enterprise was to enable > obviously won't work with this solution. And the "parser simplification" > claimed by RFC would also not happen, I imagine, since there's still two > separate tokens. So we are already out of at least half the reasons > original RFC has claimed... > -- > Stas Malyshev > smalyshev@gmail.com Oh good to have you onboard for the initial RFC and remove it with PHP 8. I suppose the discussion is closed then in this case. :) Best regards George P. Banyard --000000000000494ba305879d0f3d--