Re: Re: RFC::Error Handling Guidelines for PHP5 packages
| From: | Stig S. Bakken | Date: | Tue, 24 Aug 2004 17:30:00 +0000 |
| Subject: | Re: Re: RFC::Error Handling Guidelines for PHP5 packages | ||
| References: | 1 | Groups: | php.pear.dev |
| Request: | Send a blank email to pear-dev+get-32904@lists.php.net to get a copy of this message | ||
On Tue, 24 Aug 2004, Greg Beaver wrote:
> Stig S. Bakken wrote:
>
> > Yes, this is beyond the scope of this RFC, so then my claim is that this
> > RFC is premature.
> >
> > I've suggested to Sergio that we can extend it to include a migration plan
> > _and_ these guidelines, pull this RFC back and then publish a new and
>
> Nice to see you are back in action, Stig.
>
> I do agree that the RFC may be premature, but the truth is that PHP5
> provides exceptions, and people will begin using them in packages.
> Perhaps the guidelines you speak of should simply be:
>
> "you can use php5 features such as exceptions but expect to have to
> rewrite code until the RFC for each code feature stabilizes. As a
> consequence, NO php5-only packages may be more stable than alpha until
> further notice."
Good idea, something like that would at least set the expectations right.
> As per my recent idea of assigning stability levels to RFCs, these 2
> simple sentences will solve all concerns for end-users. It's clear,
> simple and unambiguous in any way. It will make us work harder, but
> that's no different than how we work now (documentation, unit tests, etc.).
>
> I would like to state again, for the record, that Heino Gehlsen's idea
> of spawning a completely separate repository and channel for php5-only
> packages is the *only* reasonable solution to the problem of BC issues
> between php4 and php5.
>
> Package pear::Foo
> pear channel releases:
> version 0.3.5 php4
> version 1.0.0 php4/php5
> version 1.0.1 php4/php5
>
> package pear5::Pear5_Foo
> php5.pear channel releases
> version 0.1.0 php5-only
> version 0.3.0 php5-only
>
> This solution would also allow us to properly prepend a prefix to all
> new pear packages, allowing interoperability with other channels.
I agree, this is a very logical way of dealing with this when we have
channels. The PEAR server can determine which packages should be included
in each server by looking at type="php" dependencies:
php4-only:
<dep type="php" rel="lt" version="5" />
php4/php5:
<!-- no dependency needed -->
php5-only:
<dep type="php" rel="ge" version="5.0" />
- Stig