Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:80249 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 38749 invoked from network); 7 Jan 2015 10:19:00 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 7 Jan 2015 10:19:00 -0000 Authentication-Results: pb1.pair.com smtp.mail=pierre.php@gmail.com; spf=pass; sender-id=pass Authentication-Results: pb1.pair.com header.from=pierre.php@gmail.com; sender-id=pass Received-SPF: pass (pb1.pair.com: domain gmail.com designates 209.85.192.48 as permitted sender) X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 209.85.192.48 mail-qg0-f48.google.com Received: from [209.85.192.48] ([209.85.192.48:64598] helo=mail-qg0-f48.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id BF/62-17382-3180DA45 for ; Wed, 07 Jan 2015 05:19:00 -0500 Received: by mail-qg0-f48.google.com with SMTP id j5so660070qga.35 for ; Wed, 07 Jan 2015 02:18:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=cv5ES88FiymZN6ErzPyqkaFABNtuqfuNKTruAjWEbw0=; b=s2WL2qHTUzkFdO79rairpjudhb2NpyIM0Wr+CW9I5Er6gBtCpAYCbMzIavBcP8B5FY MyoYuNTHK7uk1KTMUlIjWqGDBvKX1bLdHC3VnJFOIxBLcomOmouhOtl6lJEIyQ7I4DOk /AEDV4/zL/Dnz+acCj/EdhjPuRFJlPedJR+tqxQY1AIs3BKscX/MOhX61qBXjYo9HSxB qIvve9LApnZEFw3wDiGs/VO6s2Abb1OpAUXeIz7UH1e2xgmxQhhmMZM30CIMSGaiOZ8C Swi1/bER2me2iKn+DDIBgvAkJsjD7BbYQKTLH0rtooghDmsiD/Ckndftzq2QGdPx/2Dl crnw== MIME-Version: 1.0 X-Received: by 10.140.92.33 with SMTP id a30mr3064156qge.30.1420625937591; Wed, 07 Jan 2015 02:18:57 -0800 (PST) Received: by 10.140.22.106 with HTTP; Wed, 7 Jan 2015 02:18:57 -0800 (PST) Received: by 10.140.22.106 with HTTP; Wed, 7 Jan 2015 02:18:57 -0800 (PST) In-Reply-To: References: <54AAF98B.4020709@gmail.com> <001b01d029bb$fa687fc0$ef397f40$@tekwire.net> Date: Wed, 7 Jan 2015 02:18:57 -0800 Message-ID: To: Derick Rethans Cc: PHP internals , Sara Golemon , Stanislav Malyshev , =?UTF-8?Q?Fran=C3=A7ois_Laupretre?= , Benjamin Eberlei Content-Type: multipart/alternative; boundary=001a1139c2fc5e744e050c0d4087 Subject: RE: [PHP-DEV] [RFC] Extension Prepend Files From: pierre.php@gmail.com (Pierre Joye) --001a1139c2fc5e744e050c0d4087 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hi, On Jan 7, 2015 5:02 PM, "Derick Rethans" wrote: > > On Tue, 6 Jan 2015, Fran=C3=A7ois Laupretre wrote: > > > > De : Pierre Joye [mailto:pierre.php@gmail.com] > > > > > 2. We have no easy way to actually release and deploy adhoc scripts, > > > used by a given extension > > > > > > For 2., it is one of the thing I can imagine implementing in pickle. > > > Or even better add it a s part of the build scripts and macros. Eithe= r > > > will work, even for binary install on windows f.e.. I would really > > > like to define a clear location relative to the extension directory. > > > This location will be used by this new feature, if implemented. I als= o > > > think that it should be either part of the current prepend setting, b= y > > > default and system only, or another setting. What I really consider a= s > > > a bad practice is any kind of bundling scripts in the extensions, tha= t > > > will be a real pain to maintain and it opens some unknown can of > > > worms. Distros may also prefer to have that script outside the > > > extension, easier for cherry picks update when necessary (f.e. > > > security fixes). > > > > I am sorry to say that but, with all due respect, I have a totally opposite opinion. > > > > IMHO, this PHP code (and any other data we want to embed) is an > > integral part of the extension. A compiled extension is a consistent > > piece of code, it is contained in a single file and should not be > > split to separate files. > > That's very much the case. One extension, one "install". It doesn't > matter whether some of the extension is written in C, and other parts in > PHP. HHVM is *all* about this. Making use of C where you need it, and > otherwise just write the simpler *but integral* border functionality in > PHP for faster maintenance and development. It is not correct nor relevant to compare hhvm extension development with this case. With hhvm it ends up with an actual native extension while here it is proposed to bundled script that will be executed at runtime like any other script, except that nothing can be done with them, not even disable them if not required (like using its own glue codes). Even zephir provides easy way to develop extension and again, it ends up with native code. The more arguments being brought in this thread the more I am convinced that we are trying to tackle the wrong problems. --001a1139c2fc5e744e050c0d4087--