Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:52690 Return-Path: Mailing-List: contact internals-help@lists.php.net; run by ezmlm Delivered-To: mailing list internals@lists.php.net Received: (qmail 63416 invoked from network); 1 Jun 2011 17:02:48 -0000 Received: from unknown (HELO lists.php.net) (127.0.0.1) by localhost with SMTP; 1 Jun 2011 17:02:48 -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; domainkeys=bad Received-SPF: pass (pb1.pair.com: domain gmail.com designates 74.125.82.54 as permitted sender) DomainKey-Status: bad X-DomainKeys: Ecelerity dk_validate implementing draft-delany-domainkeys-base-01 X-PHP-List-Original-Sender: pierre.php@gmail.com X-Host-Fingerprint: 74.125.82.54 mail-ww0-f54.google.com Received: from [74.125.82.54] ([74.125.82.54:62918] helo=mail-ww0-f54.google.com) by pb1.pair.com (ecelerity 2.1.1.9-wez r(12769M)) with ESMTP id CF/2B-32367-4B076ED4 for ; Wed, 01 Jun 2011 13:02:45 -0400 Received: by wwd20 with SMTP id 20so6349wwd.11 for ; Wed, 01 Jun 2011 10:02:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=C/Vyyo1yX5hgi0v6uGCMCS28IUm3eQFoWol/Lxy3sUc=; b=kEel0Mcthbfe9Q1HG4zoMP1IsTOqb+EjYzbnGA4lF3hIOe7sH0SFO0UyhuK3JYC5B7 GaKQQxBojEz1KR1RjnF0VZXTotQLMray96JWBiBBm6nF8wkMLlbql3Q9/s5hKEI2QsmD lt6i7YDM8KvpUga3E4L7RRzBaHN2flxxHSdvg= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; b=lgmsCzzX16IGlm7/iNbQHeg5fx/28zg78UcqD/7+OGx5LohGuELQlIynwzoFuWCYLU Lk6p1H1z0kviRsKqJUMW04sO7zIPeM1yu0WtwWdsWxVLHEopWJe5jMzApZBUvGyjZbUp rSW/fO4HeSLjabEH3bmxSncgGNe8NvPjYE8lo= MIME-Version: 1.0 Received: by 10.216.236.208 with SMTP id w58mr5006223weq.62.1306947760875; Wed, 01 Jun 2011 10:02:40 -0700 (PDT) Received: by 10.216.253.168 with HTTP; Wed, 1 Jun 2011 10:02:40 -0700 (PDT) In-Reply-To: <4DE66D07.2060105@zend.com> References: <4DE61D77.7040506@zend.com> <4DE66D07.2060105@zend.com> Date: Wed, 1 Jun 2011 19:02:40 +0200 Message-ID: To: Dmitry Stogov Cc: John Crenshaw , PHP internals Content-Type: text/plain; charset=ISO-8859-1 Subject: Re: [PHP-DEV] Final version, RFC release process From: pierre.php@gmail.com (Pierre Joye) On Wed, Jun 1, 2011 at 6:47 PM, Dmitry Stogov wrote: > Before now each major (5.y+1) release introduced API changes. > We just couldn't introduce literal tables, interned strings, etc without API > changes. > > However such API breaks where invisible for user-land and most extensions, > they required a lot of changes in O+, APC, xdebug, etc. > > But, in case we freeze the API we just won't be able to add many future > improvements. Userland BC must be kept between x.y and x.y+1, that's the primary goal of this section. PHP userland is only about API compatibility and how PHP behaves. However, what you refer to is about internals API. We can (and did a lot) break ABI between x.y and x.y+1 and should really avoid breaking API (read: signatures, source compatibility) if possible. To make it more clear, here are some good explanations about API and ABI: http://stackoverflow.com/questions/3784389/difference-between-api-and-abi http://en.wikipedia.org/wiki/Application_binary_interface http://en.wikipedia.org/wiki/Application_programming_interface -- Pierre @pierrejoye | http://blog.thepimp.net | http://www.libgd.org