Bug 220820 - python-twisted-* conflicts with python-twisted
python-twisted-* conflicts with python-twisted
Status: CLOSED NEXTRELEASE
Product: Fedora
Classification: Fedora
Component: python-twisted-core (Show other bugs)
6
All Linux
medium Severity medium
: ---
: ---
Assigned To: Thomas Vander Stichele
Fedora Extras Quality Assurance
:
Depends On:
Blocks: FE7Target
  Show dependency treegraph
 
Reported: 2006-12-27 10:10 EST by Christopher Stone
Modified: 2007-11-30 17:11 EST (History)
4 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2007-01-24 19:30:20 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Christopher Stone 2006-12-27 10:10:21 EST
Attempting to install python-twisted-core on FC6 with python-twisted already
installed fails and results in many conflicts messages.

python-twisted-core should obsolte python-twisted.

See: http://fedoraproject.org/wiki/PackagingDrafts/ProvidesObsoletes
Comment 1 Thomas Vander Stichele 2006-12-27 10:50:11 EST
These are two separate packages.

There will be a python-twisted umbrella package when all the packages that it
should pull in are in extras.

For now, the situation is fine as is.  In any case, python-twisted-core does not
provide what is in the current python-twisted and should not obsolete it.
Comment 2 Michael Schwendt 2007-01-03 05:48:45 EST
This is unacceptable for Fedora 6 IMO. There are lots of physical
file conflicts in the packages. More than 2000 files conflict without
an explicit "Conflicts" or "Obsoletes". Please consider packaging this
properly as confusing conflicts during installation are among the worst
things that can happen to our users.

python-twisted-names - 0.3.0-3.fc6.i386
  => Package conflicts with: python-twisted - 1.3.0-7.fc6.i386

python-twisted-web - 0.6.0-4.fc6.i386
  => Package conflicts with: python-twisted - 1.3.0-7.fc6.i386

python-twisted-conch - 0.7.0-4.fc6.i386
  => Package conflicts with: python-twisted - 1.3.0-7.fc6.i386

python-twisted - 1.3.0-7.fc6.i386
  => Package conflicts with: python-twisted-names - 0.3.0-3.fc6.i386
  => Package conflicts with: python-twisted-conch - 0.7.0-4.fc6.i386
  => Package conflicts with: python-twisted-web - 0.6.0-4.fc6.i386
  => Package conflicts with: python-twisted-core - 2.4.0-6.fc6.i386

python-twisted-core - 2.4.0-6.fc6.i386
  => Package conflicts with: python-twisted - 1.3.0-7.fc6.i386
Comment 3 Thomas Vander Stichele 2007-01-03 06:28:30 EST
Please read https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=208169,
starting from comment 19, were this was discussed.

Can you tell me exactly what the end user problem is ? In comment 1, it was an
explicit attempt at doing something wrong - installing python-twisted-core when
python-twisted is already installed.

I can't conflict: or obsolete: python-twisted, since there will be a new
umbrella package as soon as all the other packages are siphoned through extras.
Comment 4 Paul Howarth 2007-01-03 06:46:04 EST
Thomas, perhaps you could create the review ticket for the new python-twisted
umbrella package, so that the relationship between the old and new packages is
visible to everyone?

There should be nothing in the repos that depends on python-twisted-* (apart
from other python-twisted-* packages) until the new python-twisted package
appears, at which point there will be a clean upgrade path. That's why I'm
holding off on a upgrade for bittorrent (which will require
python-twisted-{core,web}) until then.
Comment 5 Michael Schwendt 2007-01-03 07:01:25 EST
The linked bug 208169 does not comment on any conflicts.

The problem is the premature release of an incomplete set of
*conflicting* packages into a stable branch of Fedora.

It is not possible to install the packages in parallel. The
availability of non-obvious file conflicts can result in further
conflicts in new packages which are added to the distribution,
because it is not obvious that the incomplete set of new
python-twisted-* packages conflicts with the old python-twisted
that is also available for FC-5 and older.

It is, for instance, impossible to install python-twisted-web and
then install any package that has a dependency on python-twisted.
You have published packages that MUST NOT be used by users or
packagers. Instead of using "development" as the playing ground,
the breakage was added also to FC-6.
Comment 6 Thomas Vander Stichele 2007-01-03 10:18:00 EST
I am not sure the strong wording you use is helping anyone understand the
problem better.

This upgrade is a hard thing to pull through extras because one package was
split up into ten, and they each take their own time to get reviewed.

As is being explained in other comments, nothing will be pulling in these
separate packages until the whole set is in, so unless a user specifically
requests to get a conflicting set of updates, he won't get a conflicting set. 
So unless I am missing something I do not yet see a real "breakage".

This is merely a temporary phase that will be resolved as soon as the next three
packages are approved, at which point we can finish the umbrella package.

If you think this is not OK, please explain why, and please provide a possible
solution that makes sense.  I am merely trying to follow the collective advice
of all reviewers and commenters.
Comment 7 Paul Howarth 2007-01-03 10:25:34 EST
I think Michael's point is that the non-devel branches should not have been
built until the whole package set was ready, thus preventing the opportunity for
people using existing stable releases to shoot themselves in the foot.

Anyway, now that the problem is already here, we just need to push along with
the submission and review of the remaining packages so that the problem can be
fixed.
Comment 8 Christopher Stone 2007-01-03 10:57:05 EST
What remaining packages need to be reviewed??  There is no tracker bug at all
for this.  I tried making a tracker bug here:
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=171543

Which only shows two packages that are not closed, and both of those packages
have been reviewed.  So what is there left to do?!?!

Why is there no tracker bug?  Why is there no upgrade to python-twisted umbrella
bug?
Comment 9 Paul Howarth 2007-01-03 11:22:47 EST
(In reply to comment #8)
> What remaining packages need to be reviewed??  There is no tracker bug at all
> for this.  I tried making a tracker bug here:
> https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=171543
> 
> Which only shows two packages that are not closed, and both of those packages
> have been reviewed.  So what is there left to do?!?!
> 
> Why is there no tracker bug?  Why is there no upgrade to python-twisted umbrella
> bug?

Bug #171543 *is* that bug, but submissions for python-twisted-lore,
python-twisted-mail, python-twisted-news, and python-twisted haven't been made
yet (I believe Thomas has the packages ready so there's nothing really holidng
up these submissions) and hence dependencies on them haven't been added to Bug
#171543.
Comment 10 Christopher Stone 2007-01-03 11:30:47 EST
I see, well I feel party responsible for some of the packages being in FC6
because I needed core and web.  Personally I don't see that much of a problem
with it, but perhaps a Conflicts could easily be added to the specs until all
the twisted packages are complete.
Comment 11 Michael Schwendt 2007-01-03 11:32:34 EST
Re: comment 6

It is a fact that the packages conflict without any explicit
"Conflicts" tag in them.

It was wrong to close this ticket because the conflict is not
resolved yet.

Without in-depth knowledge that this set of packages is incomplete
and must not be used yet, both users and packagers can run into the
conflicts during package installation, during preparation of a
package upgrade, and during inclusion of a new package.

Even a simple full installation of all python packages will break
in the same way. And this in a stable Fedora release!

It was suggested on 23 May 2006 already that an upgrade would
preferably add all packages at once.


Re: comment 7

Correct. Devel ought to be the first target and testbed for [partial]
upgrades like this.
Comment 12 Christopher Stone 2007-01-03 12:13:53 EST
(In reply to comment #6)
> If you think this is not OK, please explain why, and please provide a possible
> solution that makes sense.  I am merely trying to follow the collective advice
> of all reviewers and commenters.

This is probably how I would have handled it.  First make all package spec files
and file them in bugzilla all at the same time.  Then make a bug for the
umbrella package and have the others block this one.  Then make another bug for
porting over to FC6 and block it against the umbrella bug.  You can then close
out each of the sub package bugs as they are reviewed and approved in devel. 
Then once they are all approved in devel you can do the umbrealla bug and get
that approved and close that bug.  Then finally you work on the FC6 bug and do
it all at once and close that.

That's just how I would have done it.

There probably wont be much problems with the packages in FC6 as long as we add
a Conflicts line in the spec files until the umbrella package is in.  Some users
 might have a problem installing two packages (one that depends on the old
twisted and one that depends on the new twisted).  I plan on building
poker-network on FC6 very soon now which depends on the new twisted so this is a
possibility.

Again this is only temporary, but the quicker the other packages get submitted
and reviewed the better IMO.
Comment 13 Paul Howarth 2007-01-03 12:35:04 EST
(In reply to comment #12)
> There probably wont be much problems with the packages in FC6 as long as we add
> a Conflicts line in the spec files until the umbrella package is in.

There is no need to do this as Michael pointed out in Comment #11; the packages
already conflict. It would be effort better spent on getting the remaining
packages through.

> Some users
> might have a problem installing two packages (one that depends on the old
> twisted and one that depends on the new twisted).  I plan on building
> poker-network on FC6 very soon now which depends on the new twisted so this is a
> possibility.

Please don't do this until the new python-twisted package is available.
Currently there is no reason for anyone to try installing the new
python-twisted-* packages and hence no reason why anyone would see the current
conflict. Please don't exacerbate the problem by building a package requiring
any of the new packages until they are all ready.

> Again this is only temporary, but the quicker the other packages get submitted
> and reviewed the better IMO.

Agreed.
Comment 14 Christopher Stone 2007-01-03 12:46:10 EST
(In reply to comment #13)
> (In reply to comment #12)
> > Some users
> > might have a problem installing two packages (one that depends on the old
> > twisted and one that depends on the new twisted).  I plan on building
> > poker-network on FC6 very soon now which depends on the new twisted so this is a
> > possibility.
> 
> Please don't do this until the new python-twisted package is available.
> Currently there is no reason for anyone to try installing the new
> python-twisted-* packages and hence no reason why anyone would see the current
> conflict. Please don't exacerbate the problem by building a package requiring
> any of the new packages until they are all ready.

Okay, Ive reblocked poker-network against bug #171543
Comment 15 Thomas Vander Stichele 2007-01-03 13:34:23 EST
I understand Michael's point, my personal preference was also to first push only
to -devel, but as you can see in the other bug, I did a poll, I had 5 replies,
and 3 are for pushing to FC-6 and two against.

As I said before, I follow the directions my commenters/reviewers give me
because that is the only way to get things done in Extras.

Likewise, I am trying to figure out if there is an actual practical
non-theoretical problem that users run into.  wrt. comment 11 from Michael:

"""Even a simple full installation of all python packages will break
in the same way. And this in a stable Fedora release!"""

With all due respect, this does not qualify as a practical problem.  Does anyone
actually do a full installation of all python packages ? If so, how and why ?

So I am open to suggestions on practical things that could be done to solve
practical problems.

Wrt. to some other comments that all specs should have been filed as once, in
practice that doesn't work very well.  If you look at how long some of these
bugs have been open and how long it can take to get reviews done and packages
approved, you will note that various changes to the packages involved that need
to be repeated in all 10 (!) of them, you can see why it is wasting a lot of
time to submit a spec that cannot be approved yet because dependencies are not
in yet.
Comment 16 Thorsten Leemhuis 2007-01-03 13:39:46 EST
Ohh what a (hard to follow) mess. I talked to spot; the packaging committee will
put http://www.fedoraproject.org/wiki/PackagingDrafts/Conflicts high on its todo
list for the next meeting and hopefully will approve it or a  slight variant.
That should avoid that we get more stupid conflicts into the repo.

Can the parties involved into the python-twisted stuff please try to sort the
mess out so it works painlessly for our users again as soon as possible?
Comment 17 Thomas Vander Stichele 2007-01-03 14:09:26 EST
All remaining packages are submitted.

FWIW, is there any real user for which it doesn't work painlessly ? I have the
feeling a big deal is being made out of this while in reality there is only one
package using python-twisted in extras, and a user would have to do something
pretty unusual to actually be in a problem.

Compared to all the other ways that a yum upgrade can be broken (one unsigned
package blocks every security update) this one seems like it doesn't warrant the
drama.
Comment 18 Michael Schwendt 2007-01-03 14:33:30 EST
> while in reality there is only one
> package using python-twisted in extras,

Count again. There are more. And a few wait for the new 
python-twisted-* packages already.

> a big deal is being made out of this

Not beyond reopening this bug report and requesting that conflicts
like this ought to be avoided.
Comment 19 Kevin Fenzi 2007-01-03 14:41:44 EST
In reply to comment #18, I get: 
repoquery -qa --whatrequires python-twisted
Excluding Packages in global exclude list
Finished
python-cvstoys-0:1.0.10-5.fc6.noarch
buildbot-0:0.7.4-2.fc6.noarch
pyicq-t-0:0.8-1.fc6.noarch
pyicq-t-0:0.7-5.fc6.noarch
flumotion-0:0.2.1-3.fc6.i386

So at least all of these will need to be rebuilt with python-twisted-core and
whatever new subpackage they need.
Comment 20 Paul Howarth 2007-01-03 15:48:45 EST
(In reply to comment #19)
> In reply to comment #18, I get: 
> repoquery -qa --whatrequires python-twisted
> Excluding Packages in global exclude list
> Finished
> python-cvstoys-0:1.0.10-5.fc6.noarch
> buildbot-0:0.7.4-2.fc6.noarch
> pyicq-t-0:0.8-1.fc6.noarch
> pyicq-t-0:0.7-5.fc6.noarch
> flumotion-0:0.2.1-3.fc6.i386
> 
> So at least all of these will need to be rebuilt with python-twisted-core and
> whatever new subpackage they need.

In the fullness of time, yes. Until that happens, their dependency on
python-twisted will pull in the new umbrella package (what that's finally done)
and that will pull in all of the subpackages, which should make for a smooth
transition for users of those packages.
Comment 21 Christopher Stone 2007-01-24 19:30:20 EST
Closing bug, if there is any reason why this bug should not be closed, please
re-open explaining why or add a dependency.

Note You need to log in before you can comment on or make changes to this bug.