I should have said that I'm also packaging the php/php53 foo/bar dependencies.
So maybe I just forgot some "Conflicts" tags (my bad).
Taking a look at it...


On Thu, Sep 6, 2012 at 1:30 PM, Michael Schwendt <mschwendt@gmail.com> wrote:
On Thu, 6 Sep 2012 13:03:07 +0200, indent man wrote:

> > Make the dependencies more specific.
> >
> > Add dependencies on package names and/or specific versions. Use RPM to
> > examine the package's current "Requires" (both the automatically added
> > ones as well as manually added ones) and the PHP package's "Provides".
> >
> > If multiple packages provide the same thing, Yum assumes that either one
> > can be used to resolve a dependency.
> >
>
> Ok, I hoped yum would not to choose conflicting providers.
> Since it does,

It doesn't. And it cannot know that a package that provides "php(foo)"
isn't sufficient for a simple dependency on "php(foo)". How would it
know about a version requirement without any such version in the
dependency?

The terminology with regard to "conflicts" is different, btw. Packages
conflict only if there are explicit "Conflicts:" tags in them, or if they
contain conflicting files in the same path (aka "implicit conflict").

Assumably, the two php(foo) providers can be installed in parallel even.
So, they don't conflict. It's really just that you need to be more
specific about which version of php(foo) to install/depend on.

> I suppose I'd better provide 2 separate packages for my app
> with explicit dependencies.

Of course! There is no way to guess which version of PHP you need.
That version must be specified in the dependencies wherever it matters.

--
Fedora release 17 (Beefy Miracle) - Linux 3.5.3-1.fc17.x86_64
loadavg: 0.08 0.25 0.29