Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:107016 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 54042 invoked from network); 12 Sep 2019 21:53:34 -0000 Received: from unknown (HELO php-smtp3.php.net) (208.43.231.12) by pb1.pair.com with SMTP; 12 Sep 2019 21:53:34 -0000 Received: from php-smtp3.php.net (localhost [127.0.0.1]) by php-smtp3.php.net (Postfix) with ESMTP id 408522C9424 for ; Thu, 12 Sep 2019 12:29:32 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp3.php.net X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS3215 2.6.0.0/16 X-Spam-Virus: No Received: from mail-vs1-xe42.google.com (mail-vs1-xe42.google.com [IPv6:2607:f8b0:4864:20::e42]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by php-smtp3.php.net (Postfix) with ESMTPS for ; Thu, 12 Sep 2019 12:29:31 -0700 (PDT) Received: by mail-vs1-xe42.google.com with SMTP id b11so17035057vsq.2 for ; Thu, 12 Sep 2019 12:29:31 -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=uTcrwTNjOdFVaZPk0Hok6B6Ayj23Vxc8nE5SnnhpaCw=; b=tTHijyr3+vnVqmAav9ForquH/mOA/q7IEiXNLEsZIVjbom28HqB9NAD498sMETl8Ub lsd6Cfuss18PR1+WJ58Hndwi68bwjHxcdUgePQjJaiXg86CVG81Ky2RHJc+ZyMP6L/cr EuUjJhdFIXTzuq8rQ1pEEP4yoKgv0rbbQKl0ztaXs4kgYuMBoZi1a3mz9CTMv6aojQOl gjmNhz7WueLm0slYIUehs/dSb5EY8Tm7RD3GC6HZ/HAomknNWsUSU0HlZnDaRv6wkPWg sL3jQ+J2CpTp23X7yB942YaPKazLz/RW5LsufO8kgkiwJaq+nHqtlNvDs5pR+JChvu4q +CMA== 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=uTcrwTNjOdFVaZPk0Hok6B6Ayj23Vxc8nE5SnnhpaCw=; b=rwpTmKzoEZO01Pk74qbdhUquj44KDhZOXxnSha9ah+VWdGsQ6pzzQx3799b/wBj7pU YvUH1CTHIVzC4BUqdnvTIq/hsHxE1SzxQxLrC7PGy+80o0WKMXHKP2ufLY3H/t+mQlov Ytz/Ptug1mSrXkTqK4pUsSnMS167T8K5knJRUjFgSl8IY5KOWbiX0XbRYWDzK/KW/Hwh E5gg42CYJNs2ZIF/dQX4beVGwXkqebVPqaiJ6fYfAoWl6Qe90yGDCaDrxc9j4UByeBcP FFY1OMJ737fM74bdE8WdaeXA8zYVQpnWRzM2LcXDwpJM82LR/XLuBuSpSgp08FYVJHRN f+qg== X-Gm-Message-State: APjAAAXpM9zEuOvg56sGo+M9Xw2BNxvZSJHtPJ4+4WUfhIEQHDBQ7IWC b4Xxp3Zgtw8cw/zmD5tzmLt7xyMwSzTIHgbQ8l+gvd0pOoni+A== X-Google-Smtp-Source: APXvYqxqygG8s8cqDc2wSaomZJ/2ghdFcInGOUmpDdEYYw+l58G6VN+MgwAdC81FRWK9lEvTzepHqwug6m+Q9hkMFz4= X-Received: by 2002:a67:f9c8:: with SMTP id c8mr1574073vsq.126.1568316571149; Thu, 12 Sep 2019 12:29:31 -0700 (PDT) MIME-Version: 1.0 References: <076701d56978$86020910$92061b30$@php.net> <467be4a0-dd8b-29d2-0b09-a3efd7fad56a@heigl.org> In-Reply-To: Date: Thu, 12 Sep 2019 15:29:19 -0400 Message-ID: To: Olumide Samson Cc: Michael Babker , Internals Content-Type: multipart/alternative; boundary="0000000000001e6f1d0592602850" X-Envelope-From: Subject: Re: [PHP-DEV] Changing fundamental language behaviors From: chasepeeler@gmail.com (Chase Peeler) --0000000000001e6f1d0592602850 Content-Type: text/plain; charset="UTF-8" On Thu, Sep 12, 2019 at 3:17 PM Olumide Samson wrote: > On Thu, Sep 12, 2019 at 8:11 PM Michael Babker > wrote: > > > On Thu, Sep 12, 2019 at 2:06 PM Olumide Samson > > wrote: > > > >> On Thu, Sep 12, 2019 at 8:00 PM Michael Babker < > michael.babker@gmail.com> > >> wrote: > >> > >>> On Thu, Sep 12, 2019 at 1:51 PM Peter Kokot > >>> wrote: > >>> > >>> > Just a dumb idea, since there clearly is a majority in favor of the > >>> > change with these warnings and strictness and all that now... Why not > >>> > making something like an LTS PHP 7.x where all the legacy code would > >>> > work OK as long as practically possible and 8.x+ would be the future > >>> > of what the developers want and not what business wants? One who > won't > >>> > upgrade due to the BC breaks also won't need the new features anyway > >>> > very realistically. > >>> > > >>> > >>> Please don't tie the notion of LTS with the idea that a new major can > >>> break > >>> BC at will or create larger scale breaks because the previous major has > >>> extended support. Sooner or later that will end up back at the ++ idea > >>> and > >>> fragmentation encouraged by the language is a bad idea. > >>> > >> > >> Not sure you are really seeing the goal... > >> > >> Why is LTS not a good idea? > >> > > > > I'm not saying LTS is a bad idea. I'm saying using LTS to justify > > shipping larger scale BC breaks, such as the changes suggested in the > last > > couple of "contentious" RFCs in a major version because "hey, we have a > LTS > > version you can use that until you're ready to deal with the backlog of > BC > > breaks created" is a bad idea. > > > > > > For the record, I happen to agree with as these RFCs would have minimal > > impact on my day-to-day work, but having also been in the role of a > > maintainer of open source libraries and applications I also grasp why > these > > types of changes can be problematic to the ecosystem (both end users of > > those libraries and applications and the maintainers of them) and > wouldn't > > jump the gun to ship them without careful consideration. > > > > Most of these changes wouldn't have been problematic to you if the language > has prevented you from writing what we can now consider bad code, so please > allow the new PHP developer that newly start using PHP to not follow that > your path that will/might hunt him later in the future... > > Many of us don't consider it bad code. I've also always initialized variables when it was required (and many times when it wasn't) even though I wasn't forced to do so. A lot of other people do as well. If it's so important to you, start a program to teach people how you think they should code. > There a notices, warning and errors to inform you that this shouldn't have > been the use case of this feature and you chose to ignore it and now, we > are simplifying things and making those your errors teach you how to write > proper codes in the future, you're objecting.. As has been discussed before, notices are not the same as warnings and errors. Also, if those things are so wonderful, why can't you use them to catch the issues you are complaining you can't catch right now? Again, you are telling me there is something out there which will allow you to force yourself to write "good code" without forcing me to follow the same restrictions. Yet, you still feel it's necessary to not use those tools, and instead modify the entire language so that I am forced to follow what you deem best practices, even if I don't? > Why not just stay in PHP 7.x? > > Because other features that I want to utilize will also be added in PHP 8. Or were you implying you want hitch-free, no-modification upgrade to PHP 8 > from PHP 7.0? > I never said that. Here we go again with the "I guess you are against all BC breaks" nonsense. If BC breaks are required to add new functionality, or, have a very minimal negative impact, then I don't have a problem with them. This is not one of those cases. It changes a fundamental aspect of the language, an aspect that many people actually like, and it doesn't add any new features to the language, nor is it needed to add any new features to the language. > If yes, follow the best practices and not suppress error notices. > > Just My Opinion > -- Chase Peeler chasepeeler@gmail.com --0000000000001e6f1d0592602850--