Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:124203 X-Original-To: internals@lists.php.net Delivered-To: internals@lists.php.net Received: from php-smtp4.php.net (php-smtp4.php.net [45.112.84.5]) by qa.php.net (Postfix) with ESMTPS id 9B3B81A009C for ; Wed, 3 Jul 2024 17:15:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=php.net; s=mail; t=1720027038; bh=F6Uxw8awjpBy82Fq0XYJWXHSOwwtmYtA2ZAzt9ctEgE=; h=References:In-Reply-To:From:Date:Subject:To:From; b=SrMQKAEjCVJrBTl4MGyA9w3kgq9aQ5vNRvvJdtiM2hTVh4msSbEn6h1A+OC4lzu1Y Ns3HcXpbFULP+D/1voUZI7hameHy95sp7rPC1Z+f3h0LAKWFlZX0uZPZfcoP05ICPh fezQTcSPN8FwGyANQQQv2Aj7DI7N0GnyQ/ktj4Qm1YeEhGjHY3d4KILVeH4QPKSYQU u4wINqvJ7wdF7nfTq90lUVgEki3ZiE8ggUjSPWIKaEBbdffUhCITUce0dXz7rZCHu8 LTohsTnqeUOBC2aTt/HTyF7DZqT6tJAVZngUpbDv8pFOT/wtDInwLdB3q6cdG6InZb jkjKRcW+qB5OA== Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id C0C0D180588 for ; Wed, 3 Jul 2024 17:17:17 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 4.0.0 (2022-12-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=0.6 required=5.0 tests=BAYES_50,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,DMARC_PASS,FREEMAIL_FROM, HTML_MESSAGE,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=4.0.0 X-Spam-Virus: Error (Cannot connect to unix socket '/var/run/clamav/clamd.ctl': connect: Connection refused) X-Envelope-From: Received: from mail-qv1-f44.google.com (mail-qv1-f44.google.com [209.85.219.44]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Wed, 3 Jul 2024 17:17:17 +0000 (UTC) Received: by mail-qv1-f44.google.com with SMTP id 6a1803df08f44-6b5da2730efso9920756d6.2 for ; Wed, 03 Jul 2024 10:15:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1720026955; x=1720631755; darn=lists.php.net; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :from:to:cc:subject:date:message-id:reply-to; bh=+oGvuFbJAykbRQ60C9u/yyDA3zTvJnxwlyQIAZsWBDc=; b=NZ5nYHc5wX7z6KQQZ7tD7oC1+qgKdCJT9INW65RkjOVzMqMBefb/OEVsQxyr8p/SEu 5eaRdo5bUY1fL8+SZtNiGOIkBN/rOADNDlNATiXJwT/C2yvmt65eUh+0NZZond54OFJa 2AdrM7CUnQ9zUsw5FDDkXzgyRSpQT8u3vAICtWRHBAZt1pFXYtmAiUM/5qsO8r7Vqds9 v9gmINI2j5mZ6E8TQI1EuoEOnnd5GwNfiEOLgjcSAHv/p9txbUpNW2oCa7dHI9TYRjK7 Ldi78mDb/sgMuW9/zWaS0KfDlclhtB5pHeL1qQfFQZtuZEvguHwDoyEi1O9I6hy3SgU2 cPEg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720026955; x=1720631755; h=to:subject:message-id:date:from:in-reply-to:references:mime-version :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=+oGvuFbJAykbRQ60C9u/yyDA3zTvJnxwlyQIAZsWBDc=; b=tQ8fSYtxkCVLAbCgMXlAXUV9qMHPM3Ls3xU7N+QT7JSwz2GZUBZvrBm7opojzosscW Rl5RArBIe/pav1pCR2Xg6iWJ2hpgnQYNsOEmJEXp5hqkvj1aA/1xx/OrOrL3tV4mC1wa U6QPFCicirVnPJ7AZGOJpXSMMt9EgpJecwZcCcbVM3V4jYEeLF3k7NQIbULEgjVQ5VP3 mV3tvcWD5LaKb0JWInkdO9NA+peMfURh7gHJVVDUy67iDNnY5Cw7ezqfh+6f3PHsrCJG vnu03XpyBj+NIZkZucT/lI0n546/7wzNzVLNTW2Slx081fbBHuwSl/91WKmXCqNdNUjm 2Mlg== X-Gm-Message-State: AOJu0Yxe/fDeVbMfK/C/quyYB0wb7V4M1NX+1sthsiwHdfAwkNSqWm9i yv5k56DcSY8+Zju0z+3RjasdV190hAT3JBhqe0VdSa9I+FkF2NiEtKVmXjjTzERAbQEmCuXRks2 ZDkBK8mswVoGiB6Sxci1KlxqUCJHXHjGc X-Google-Smtp-Source: AGHT+IH57vMkErZSMSBahsJCJB5Qmv5ZqjmNF1PlzzLbi1SUJWi00+VJbqRLSQ8+02s5mYwc64y/9QxkMxCA9S/m6uE= X-Received: by 2002:a05:6214:410d:b0:6b5:a4f6:daa2 with SMTP id 6a1803df08f44-6b5b70a39bfmr147549386d6.17.1720026954716; Wed, 03 Jul 2024 10:15:54 -0700 (PDT) Precedence: bulk list-help: list-post: List-Id: internals.lists.php.net MIME-Version: 1.0 References: <09559430-4477-4516-8D78-6F4071E1AA6C@newclarity.net> <0182F3D6-F464-477F-9029-A2D0A8B50C71@koalephant.com> <1AFD7AAE-8BEA-460D-88A8-15BB3D30A775@koalephant.com> In-Reply-To: Date: Wed, 3 Jul 2024 13:15:43 -0400 Message-ID: Subject: Re: [PHP-DEV] Iteration III: Packages (was Re: [PHP-DEV] [Initial Feedback] PHP User Modules - An Adaptation of ES6 from JavaScript) To: PHP internals Content-Type: multipart/alternative; boundary="000000000000a3e036061c5afb2c" From: tendoaki@gmail.com (Michael Morris) --000000000000a3e036061c5afb2c Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Wed, Jul 3, 2024 at 12:52=E2=80=AFPM Matthew Weier O'Phinney < mweierophinney@gmail.com> wrote: > > > I'm following the packaging threads closely, and the one thing I've faile= d > to see a solid argument for is _what problems_ the current approach of > using namespaced code doesn't address. > Running multiple versions of the same code. Say you're writing an extension for Drupal and you want to use a nifty new feature of the newly released Twig 4. Under the current system you're outta luck until the Drupal project moves to 4, and that might take awhile, ESPECIALLY if 4 has BC breaks. You can monkey type the twig files with something like the brianhenryie/strauss package for WordPress, programmatically changing the namespace declaration of every file in the package to something of your choosing, but that feels a bit hackish at best. --000000000000a3e036061c5afb2c Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Wed, Jul 3, 2024 at 12:52=E2=80=AF= PM Matthew Weier O'Phinney <mweierophinney@gmail.com> wrote:


I'm following the packaging threads closely, and the one th= ing I've failed to see a solid argument for is _what problems_ the curr= ent approach of using namespaced code doesn't address.

Running multiple versions of the same code.=C2=A0 Sa= y you're writing an extension for Drupal and you want to use a nifty ne= w feature of the newly released Twig 4.=C2=A0 Under the current system you&= #39;re outta luck until the Drupal project moves to 4, and that might take = awhile, ESPECIALLY if 4 has BC breaks.

You can mon= key type the twig files with something like the=C2=A0brianhenryie/strauss p= ackage for WordPress, programmatically changing the namespace declaration o= f every file in the package to something of your choosing, but that feels a= bit hackish at best.

--000000000000a3e036061c5afb2c--