Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:42631 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 62197 invoked from network); 15 Jan 2009 09:26:19 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 15 Jan 2009 09:26:19 -0000 Authentication-Results: pb1.pair.com header.from=mls@pooteeweet.org; sender-id=unknown Authentication-Results: pb1.pair.com smtp.mail=mls@pooteeweet.org; spf=permerror; sender-id=unknown Received-SPF: error (pb1.pair.com: domain pooteeweet.org from 88.198.8.16 cause and error) X-PHP-List-Original-Sender: mls@pooteeweet.org X-Host-Fingerprint: 88.198.8.16 bigtime.backendmedia.com Linux 2.6 Received: from [88.198.8.16] ([88.198.8.16:39483] helo=bigtime.backendmedia.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id 2F/7C-34613-A310F694 for ; Thu, 15 Jan 2009 04:26:18 -0500 Received: from localhost (unknown [127.0.0.1]) by bigtime.backendmedia.com (Postfix) with ESMTP id 0A40B414405D; Thu, 15 Jan 2009 09:28:17 +0000 (UTC) X-Virus-Scanned: amavisd-new at backendmedia.com Received: from bigtime.backendmedia.com ([127.0.0.1]) by localhost (bigtime.backendmedia.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 1sEtb5XzUVG2; Thu, 15 Jan 2009 10:28:16 +0100 (CET) Received: from [192.168.80.161] (unknown [195.226.16.50]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: mls@pooteeweet.org) by bigtime.backendmedia.com (Postfix) with ESMTP id 57E82414405C; Thu, 15 Jan 2009 10:28:15 +0100 (CET) Cc: 'PHP Internals' Message-ID: <96543B06-4582-4BC3-A6AE-8EAC8CF9B277@pooteeweet.org> To: Stanislav Malyshev In-Reply-To: <496E65B2.1070106@zend.com> Content-Type: text/plain; charset=US-ASCII; format=flowed; delsp=yes Content-Transfer-Encoding: 7bit Mime-Version: 1.0 (Apple Message framework v930.3) Date: Thu, 15 Jan 2009 10:26:12 +0100 References: <496E65B2.1070106@zend.com> X-Mailer: Apple Mail (2.930.3) Subject: Re: [PHP-DEV] [RFC] build IDs proposal From: mls@pooteeweet.org (Lukas Kahwe Smith) On 14.01.2009, at 23:22, Stanislav Malyshev wrote: > Hi! > > As many of you know, one can build PHP engine in a number of ways > which are binary-incompatible - debug/no debug, thread-safe/not > thread safe, etc. Also, for windows we have now anther dimension - > we could build with VC6, VC8, VC9, etc. Loading modules built with > another, binary incompatible version, could lead to crashes and > malfunctions, thus Zend extension and PHP extension loaders check > these options, stored in special structure, to match module ones > with engine ones. > Now the problem is that when we need to add dimensions, we will have > to change structures and maybe even edit some extensions, and as we > have more dimensions it becomes less manageable and more "hackish". > > I think that it would be better if we adopted more clean and > scalable solution for that. I propose having one string build ID, > which would look something like: "API20071006,NTS,Debug,VC8" and > would be rquired to match exactly in the engine and the module. This > should be relatively easy to generate when compiling. > Pro: > 1. Easy, robust and scalable way to match current and any future > build flavors > 2. You can easily create "private" build flavors when testing binary- > incompatible changes > 3. Build data is in readable form even inside binary, so binaries > could be automatically checked by Unix tools. > Contra: > 1. Well, it's change :) seems to me like we need this and since its quickly doable, lets do it for beta1, right now .. freeze seems to be happening next monday regards, Lukas