Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:101775 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 71752 invoked from network); 5 Feb 2018 14:40:01 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 5 Feb 2018 14:40:01 -0000 Authentication-Results: pb1.pair.com smtp.mail=tendoaki@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=tendoaki@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.161.193 as permitted sender) X-PHP-List-Original-Sender: tendoaki@gmail.com X-Host-Fingerprint: 209.85.161.193 mail-yw0-f193.google.com Received: from [209.85.161.193] ([209.85.161.193:39310] helo=mail-yw0-f193.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 13/BD-49805-0CC687A5 for ; Mon, 05 Feb 2018 09:40:00 -0500 Received: by mail-yw0-f193.google.com with SMTP id v196so18487738ywc.6 for ; Mon, 05 Feb 2018 06:40:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=GGX2Iw9OCTPC30WZpa7fZ/ohUXGugxXLw2bFP/M9goY=; b=BqDkuIYKOEM0XU/sVKzXOi9xnL6ecOBR2WfCJnfI7cry0ypHqc3R5PJbmWsjGoh9Ob qUCKIU5D9uRDLtfVsUtXfiYNu6Awqy3uC4lu+f99f9KPoIZGw25qGk9gKImLK+GxU13L gZZ9ioRoAvfEkMqc09wf4XLVqQHn5X4BZJ5gEkZTzw6BJkQGZwzqUQ97oRl9JlOyi+Mz c/2aizIz2PFANp8dp3ah3WFdHalP7FZeATPvNJwZBlZ2t3RAncrZMBXJMtNdN1vYIOx+ 5oxmbYNufFbIeGBXFQhM+kobxrASvNIUyYB4gix2DkGWZA8Z/3jtkvQVbIlp/93pIHVl crnw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=GGX2Iw9OCTPC30WZpa7fZ/ohUXGugxXLw2bFP/M9goY=; b=ei6YHI0KbfB2rN0FNzsCbnbFCWzhUQSD+BcHGgnh50qT7tcuaShX3ZmOC55RgslH0F beqkk81LzaHIEQny4T3fEiqUDJQ3o0NbsOJ5hefhyyx8S6f0cln/t1k/0yR+oWVHxakY Dj2niopgyzOPhdYLbUFiO3hFnqjpd6cGzX2qBT0sTNhVbNwIGlIOjc4oKCvKoesH6dVq ytqDiL72p5cexnagdzwFBGlnzzaa4sU2FxbnsPAspH+NPxGTIUM56BB+NY3XwDeq9LFV 8ZJPeFRITYvGmCyK3/iMouZHcUvki9hpqp17OrTRk3zxQzOGPAy14RZuCgJT4HX8/5uU /Vfg== X-Gm-Message-State: AKwxytf7o4AFk6rXkcRiLYkBRf45za0ABqQbULdDX+vdozyOZcxg9s1c GDrdz0dqoMq0m9MSDjJgk2Plghn2P7D3dyw8FZw= X-Google-Smtp-Source: AH8x226mU/twdrCezK24SeDPYlr83z3YBYnk9HTb3/Sblj6dYP1yNsfcznW0FJI8q6pLPLOuAO1kwEEjnwz8wGm4BWY= X-Received: by 10.13.202.20 with SMTP id m20mr32124854ywd.81.1517841597697; Mon, 05 Feb 2018 06:39:57 -0800 (PST) MIME-Version: 1.0 Received: by 10.37.206.137 with HTTP; Mon, 5 Feb 2018 06:39:57 -0800 (PST) In-Reply-To: References: <07d9e3a0-d516-aa77-4818-ce8b02e8dd08@gmail.com> <79b192e6-a6bd-bd13-6bd4-b56011a5eac2@gmx.de> Date: Mon, 5 Feb 2018 08:39:57 -0600 Message-ID: To: Marco Pivetta Cc: PHP Internals Content-Type: multipart/alternative; boundary="001a114f0cfe4192180564780933" Subject: Re: [PHP-DEV] [RFC][DISCUSSION] Deprecation of fallback to root scope From: tendoaki@gmail.com (Michael Morris) --001a114f0cfe4192180564780933 Content-Type: text/plain; charset="UTF-8" On Mon, Feb 5, 2018 at 8:33 AM, Marco Pivetta wrote: > > On Mon, Feb 5, 2018 at 3:28 PM, Michael Morris wrote: > >> The problem is that behavior has been around so long that any attempt to >> change it would incur a massive amount of changes. Using the E_STRICT >> notice level instead of E_DEPRECATED has been floated as one fix for this, >> but this doesn't change the fact that major applications and frameworks, >> such as Drupal, pride themselves in being able to pass all tests even with >> E_STRICT enabled. The maintainers of these projects would be annoyed to >> say >> the least to need to fix thousands of lines of code to get back to that >> point, and downstream projects such as Drupal could end up waiting years >> for all their upstream libraries to get their act together. >> > > Much like any upgrade requiring patches for full compliance with newer > PHP versions, it needs work. > > The typical workflow is: > > * add PHP.NEXT to the CI setup > * run everything through the tests again, figure out how much has broken > * fix it > > In this case, we even *already* have *multiple* tools that automatically > fix this problem in one shot. > > Since the two issues are somewhat tied, why not bind them to a >> configuration flag following the pattern that was used to ultimately >> remove >> register_globals functionality from the language? At this point let it be >> known that when constant/function overloaders hit a php.ini config option >> will be added to turn them on -- and turning them on will turn global >> scoping for functions off. >> > > Argh > > Agreed, but you can't just pull the rug out from under people. It's painful, but it's better to let people opt in to such a major change than to "break" their code. > > > Marco Pivetta > > http://twitter.com/Ocramius > > http://ocramius.github.com/ > > --001a114f0cfe4192180564780933--