Re: solution for BC breakage
| From: | Klaus Guenther | Date: | Tue, 16 Sep 2003 13:35:36 +0000 |
| Subject: | Re: solution for BC breakage | ||
| References: | 1 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-21561@lists.php.net to get a copy of this message | ||
Greg Beaver <greg@chiaraquartet.net> wrote:
> Hi,
>
> The answer to the problem of BC is to create a new dependency relation
> called majorversion
>
> <dep type="pkg" rel="majorversion"
> version="1">MDB</dep>
>
> This can be coupled with another dependency if a particular minor
> version is needed
>
> <dep type="pkg" rel="majorversion"
> version="1">MDB</dep>
> <dep type="pkg" rel="ge" version="1.5">MDB</dep>
>
> Comments?
Well, it's all fine and good, but what if there is no breakage in the major
version change? I think if we have a BC flag in the package file, we can
trace all the BC breaks and if there is no breakage in the next major version
(due to code rewrite from scratch, etc.), we can just as well install the
next major version, too. I think my solution would be good for < 1.0
versions, too, because you _expect_ BC breakage there. Or what about the
alpha releases of the next major version?
I'm thinking of a release level tag like
<release>
<version>2.4.0</version>
<bc>1.0.0</bc>
...
</version>
Is that a viable solution? It would be especially beneficial when upgrading,
because it could require confirmation (or --force) if the new version breaks
BC.
Klaus