Re: [RFC] build IDs proposal

From: Date: Thu, 15 Jan 2009 09:26:12 +0000
Subject: Re: [RFC] build IDs proposal
References: 1  Groups: php.internals 
Request: Send a blank email to internals+get-42631@lists.php.net to get a copy of this message
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

« previous php.internals (#42631) next »