Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:109960 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 55671 invoked from network); 2 May 2020 08:49:18 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 2 May 2020 08:49:18 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 5252B1804C4 for ; Sat, 2 May 2020 00:23:26 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-1.6 required=5.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,HTML_MESSAGE,RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_NONE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-yb1-f169.google.com (mail-yb1-f169.google.com [209.85.219.169]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sat, 2 May 2020 00:23:25 -0700 (PDT) Received: by mail-yb1-f169.google.com with SMTP id q206so5015276ybg.1 for ; Sat, 02 May 2020 00:23:25 -0700 (PDT) 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=qHXC/f6QatUgkoixcRIUuX2VgPwCZ1kexQOJa7m00+c=; b=DXK2RpKMu6pBweFMbyFhQGcWhspo/o03lUK4/8ssSRWjGiPk7rhzBWWvwnwfqrekks XDvg2nzZuxxgEQPjUzUmnnYMYQ5ETTDwZ8iCq8KvMUWpXXEdiAS0EZfGJH5KhUMDpK1w Uk4eGmd5ErTB3x5+JPKc3kSvy3VHiJN0AJKlvSlySF+4w/acIArA5eGAz06GadlpNkGe S+4xvYL6hgZygxqRKaneKg8CJ17on3AckYe4H5enQyZUHWNKlUwUmnZgOsEW5RZHKGRg yFPJCVQAdz/QCMvsJ1axhhbH4/aW5D5QKXWLbSBkq62mIOS1rzoUav10VbSBHgrbMvtO 3A/Q== X-Gm-Message-State: AGi0PubOdYrshyXlSRCg907q9H+ad2jSpsf6iiz8MxNcwmCsT14rwTe9 tqRb2HJ3Hqqvjscx4KwiG/RZkO2ve06XeSyDzg3AVA== X-Google-Smtp-Source: APiQypKZWVxdLpTONZEnsUiuLCeepsf1sFl2KlapvJkf5sCnG7s/IYAfo8JRSVxlv1yhT2qpjSRT34Of34Fcg1BSSFE= X-Received: by 2002:a25:d156:: with SMTP id i83mr12609888ybg.449.1588404205040; Sat, 02 May 2020 00:23:25 -0700 (PDT) MIME-Version: 1.0 References: <4063585.LhOdPkFbeG@mcmic-probook> In-Reply-To: Date: Sat, 2 May 2020 00:23:14 -0700 Message-ID: To: Benas IML Cc: Chase Peeler , =?UTF-8?Q?C=C3=B4me_Chilliet?= , PHP Internals List Content-Type: multipart/alternative; boundary="00000000000066cc8505a4a52c7b" Subject: Re: [PHP-DEV] Renaming PhpAttribute to Attribute From: davey@php.net (Davey Shafik) --00000000000066cc8505a4a52c7b Content-Type: text/plain; charset="UTF-8" On Wed, Apr 29, 2020 at 08:24 Benas IML wrote: > Hello, > > > Again, your assumption that just about everyone uses namespaced classes > > doesn't take into account closed source projects. I don't care if it's a > major > > release or not - BC breaks should always be avoided without a major > benefit > > With an introduction of any new language construct, function, class or > constant, we don't know whether it affects closed source projects and we > can't. > So using your own logic, you can't assume that closed source projects use > `Attribute` either. > > Another key term to take into consideration from my email is "in such cases > isn't the first priority". That doesn't mean it doesn't matter, so please > don't > change my words as you please. Since PHP has global namespace reserved, > things > like implementation details matter much more **in such cases**. > > > str_contains adds functionality to PHP. We aren't debating whether to add > > attribute functionality to PHP, but what to call it. As such, this > argument is > > an invalid comparison. > > What I meant by `str_contains()` was its name. There were multiple PHP > projects > that offered a global helper function called `str_contains()`. As such, > introduction of this function was also a name clash for them. > > > As I said above, I'm ambivalent about this particular issue. However, I > get > > nervous when I start to see the "Who cares if it breaks stuff" or "Well, > they > > shouldn't be doing it that way, so screw them" arguments pop up. While > the > > chances of a BC break might be minimal using "Attribute" - I don't think > that > > PhpAttribute is an undue burden in an attempt to avoid such instances, > nor is > > it logically inconsistent with other Php* named classes. > > Well then you shouldn't take everything so "harshly" and as a debate. There > are > no "arguments" here, I am simply expressing my own opinion. > > As for naming inconsistencies, Rowan addressed that already. > > Best regards, > Benas Seliuginas. Hi all, IMO, the onus of proof should be on those wishing to introduce a change that has a potential conflict, not those trying to prevent one. I believe that using the PHP namespace is the right way to go, and look forward to seeing code like this in the future: > class Foo { } - Davey --00000000000066cc8505a4a52c7b--