Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:101774 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 70330 invoked from network); 5 Feb 2018 14:34:10 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 5 Feb 2018 14:34:10 -0000 Authentication-Results: pb1.pair.com header.from=ocramius@gmail.com; sender-id=pass Authentication-Results: pb1.pair.com smtp.mail=ocramius@gmail.com; spf=pass; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.46 as permitted sender) X-PHP-List-Original-Sender: ocramius@gmail.com X-Host-Fingerprint: 74.125.82.46 mail-wm0-f46.google.com Received: from [74.125.82.46] ([74.125.82.46:33183] helo=mail-wm0-f46.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 62/6D-49805-16B687A5 for ; Mon, 05 Feb 2018 09:34:09 -0500 Received: by mail-wm0-f46.google.com with SMTP id x4-v6so13450752wmc.0 for ; Mon, 05 Feb 2018 06:34:09 -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=ZGg8gnG+Yl1zU05odWtZJ9fSWAZrkP4gM42yPwhEMKg=; b=Cgxlwc192Pvyd0AmrkumFnSxXYOEIHPz+fKLnUlT640d+fJ73WHZTpcTmnXDwEDLr8 1M42P7YXupdpPzNuZsOdqDbB0TIitRJ2g92952ELaBypEb2BFhDheqdI2kdWjFgUNdLC 0y8UIHmNJQk1VuwD9/xy31XmH+81CIwetcyVG1pMl80kiRg0YmqZGOtHVwOnBt3+dnmL Ap2DZpbTa2Kbtx9R6TaSE4ZolEe4/FGvyQ5llKZ51am2hLQet95uW5Tg8vM3x32aB2Zq rI/JI3Qh/GrRRKD7jziLbITcmsy8xGgaMebk+jlhBG0LMT2QlPNxRygSZObN2H3vqu1U K1NA== 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=ZGg8gnG+Yl1zU05odWtZJ9fSWAZrkP4gM42yPwhEMKg=; b=dcZzSVM9s9YTpP3bgp5M/QTSgsTqlBCS+i+TSB2/QtW04MGEo8JY4S8JFFF8Ss4s11 mZmBMT9K/UlEo1FXm5SyNedURNGu7/u7BJEuEbcl/ANwI47FAAHrwCf86y5okC+l0xrc HsgnQy3vSu3oUFfMzNPGRWOu19hJMe2TBjE/fO0j++cC4wFBej5KnKb9HdhWDOBbrEB9 Up8zJy0We5irSQvd83Z6UPJic1ASsi1+74loIzsRb8HltBGERdKXCtGRhFRfRzVM+2mw 1XpepbU20dQ4TKj2mD2s3k9lalTuyl3ByksmNKlyf6mBqB5Rucecf/PVrOiwO1/uHn8O xWPw== X-Gm-Message-State: AKwxytee97CiNYxLjF5w0VkdIlrpSIyrTXRPw3BnzgNOOWoQNNCBYVte MC6G1e0Mn6Y/meCISYHyh+Q9drWl9ID+e3SFbn4= X-Google-Smtp-Source: AH8x227uJiCcoYIOQTWjAzUwIoOzGmSq1vCYjfe084fMOPkMeTSpvMvyTNT3Ey5RXlvWHu03H9MRT6SDPQLHPvqV4xM= X-Received: by 10.28.142.10 with SMTP id q10mr38393702wmd.3.1517841246598; Mon, 05 Feb 2018 06:34:06 -0800 (PST) MIME-Version: 1.0 Received: by 10.223.135.61 with HTTP; Mon, 5 Feb 2018 06:33:46 -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 15:33:46 +0100 Message-ID: To: Michael Morris Cc: PHP Internals Content-Type: multipart/alternative; boundary="001a114436e2543ad4056477f42c" Subject: Re: [PHP-DEV] [RFC][DISCUSSION] Deprecation of fallback to root scope From: ocramius@gmail.com (Marco Pivetta) --001a114436e2543ad4056477f42c Content-Type: text/plain; charset="UTF-8" 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 Marco Pivetta http://twitter.com/Ocramius http://ocramius.github.com/ --001a114436e2543ad4056477f42c--