[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [Fedora-packaging] PHP packaging policy notes



On 7/8/06, Enrico Scholz <enrico scholz informatik tu-chemnitz de> wrote:
chris stone gmail com ("Christopher Stone") writes:

> pear packages have a line in the spec file of the form:
> Provides: php-pear(Foo) = %{version}-%{release}
>
> This provides the upstream software version, not the package version.
> This is what we use on our requires line.  So for example we do not
> have:
> Requires: php-pear >= ..  we have:
> Requires: php-pear(PEAR) >= ...

Such virtual provides are ok but you should keep in mind, that there is
no ordering during installation; e.g. it is undefined whether

| %package -n module
| Provides: php-pear(MODULE) = 1.0

or

| %package -n module-ng
| Provides: php-pear(MODULE) = 2.0

will be installed by

| Requires: php-pear(MODULE) >= 1.0

(because of the shortest-package-name-wins rule, 'module' will be the
candidate for 'rpm')

This should never happen, there are some cases where you may want a
stable and an alpha version in which case you would Provide
php-pear(MODULE-alpha).

See:
http://tkmame.retrogames.com/fedora-extras/php-pear-PHPUnit2.spec
http://tkmame.retrogames.com/fedora-extras/php-pear-PHPUnit2-alpha.spec

I think something like this should be mentioned in the guidelines.

In other cases the pear module name itself changes, for example:
PHPUnit (php4) and PHPUnit2 (php5)


When you enforce such declarations for php-pear packages; should not
every (non-pear) package have similar Provides:? Or, what would make
php-pear an exception here? Have php-pear modules such an unstable API
that missing version information would cause problems with a significant
amount of packages?

Yes, the pear libraries are still relatively new, and many many pear
modules are under active development.  There are quite a few which are
widely used and still not even out of alpha development stage yet.


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]