[python-quantumclient] Add conflict with python-quantum 2012.1 since site-packages/quantum is no longer provided.

Robert Kukura rkukura at redhat.com
Mon Jun 18 14:27:56 UTC 2012

[I'm adding the fedora cloud list to this thread to solicit feedback on
whether the Conflicts statement I've added to the latest rawhide
python-quantumclient spec file is justified. I agree with Alan that
Requires is preferred in general over Conflicts, but I'm not seeing how
Requires could be used to resolve the issue. As background, note that
the 2012.1 release of python-quantum had a dependency on the some
"common" code that was provided by the 2012.1 release of
python-quantumclient. This dependency did not exist in the 2011.3
releases of these packages and will no longer exist in the 2012.2
releases, so therefore I've asserted that the 2012.2 version (and
higher) version of python-quantumclient conflicts with the 2012.1
version python-quantum to prevent upgrading python-quantumclient from
breaking python-quantum.]

On 06/18/2012 07:31 AM, Alan Pevec wrote:
>> +# The essex release of python-quantum dependend on
>> +# python-quantumclient to provide %%{python_sitelib}/quantum, which is
>> +# no longer provided. Users will have to upgrade both simultaneously.
>> +Conflicts:  python-quantum = 2012.1
> It is preferred to use Requires instead of Conflicts
> http://fedoraproject.org/wiki/Packaging:Conflicts

Alan, thanks very much for looking at this. If there is a better
approach, I will fix this.

I think the conflict is the only workable solution in this case. I'm
trying to prevent an upgrade of python-quantumclient from essex (2012.1)
to folsom (2012.2) from breaking an existing installation of essex
python-quantum (2012.1). I can't go back and add "Requires
python-quantumclient = 2012.1" to the python-quantum 2012.1 package,
since there is no guarantee people would upgrade their essex
installation of python-quantum before trying to upgrade to folsom

I think this usage is justified under the clause: "Keep in mind that
implicit conflicts are NEVER acceptable. If your package conflicts with
another package, then you must either resolve the conflict, or mark it
with Conflicts:." The implicit conflict does exist, since the upgrade of
python-quantumclient to 2012.2 would remove stuff the 2012.1 version of
python-quantum depends on.

> What about this: folsom version of python-quantum should have
> Requires: python-quantumclient >= 2012.2
> and here in python-quantumclient Requires: python-quantum >= 2012.2
> ?

The whole point of the upstream change was to decouple python-quantum
and python-quantumclient. In folsom, neither depends on the other
upstream, so I'd strongly prefer not to have either folsom fedora
package require the other.

Any other ideas? I did include an explanation in the spec file as
required by the packaging guidelines when the conflicts is used. Or is
this OK?



> Alan

More information about the cloud mailing list