Bug 455284 - olive-gtk gives KeyError when Using Log Button
Summary: olive-gtk gives KeyError when Using Log Button
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: bzr-gtk
Version: 8
Hardware: i386
OS: Linux
low
medium
Target Milestone: ---
Assignee: Toshio Ernie Kuratomi
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2008-07-14 17:15 UTC by Rehan Khan
Modified: 2008-11-19 22:36 UTC (History)
2 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2008-11-19 22:36:39 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Rehan Khan 2008-07-14 17:15:14 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.8.1.15) Gecko/20080702 Fedora/2.0.0.15-1.fc8 Firefox/2.0.0.15

Description of problem:
Some odd behaviour when installing olive and/or nautilus-bzr. If I install Nautilus-bzr (adds dependancy of bzr-gtk 0.94) and then I try and install olive I get the error :

17:57:06 : Package Queue:
17:57:06 :  Packages to install
17:57:06 :  ---> olive - 0.91.0-2.fc8.i386 
17:57:06 : Preparing for install/remove/update
17:57:06 : --> Preparing for install
17:57:06 : Package bzr-gtk - 0.94.0-2.fc8.i386 already installed and latest version
17:57:11 : Error in Dependency Resolution
17:57:11 : Success - empty transaction

If I install olive and run olive-gtk from a commandline and try and look at a log of a bzr branch I get:

[root@localhost mirrorlist-channel]# olive-gtk
Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/gtk/branchview/treeview.py", line 292, in populate
    self.mainline_only)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/gtk/branchview/linegraph.py", line 62, in linegraph
    for ghost_child in graph_children[ghost]:
KeyError: '-'

If I run it from the icon and try and look at the log of a branch the app becomes unresponsive on the log screen.

If I use Smart Package Manager to install olive (no nautilus-bzr) then it installs bzr-gtk 0.91 and olive works fine. If I then install nautilus-bzr, bzr-gtk gets upgraded and olive breaks again.

I guess this might just be an issue of olive needing to be updated to gtk-bzr 0.94 and any dependancies corrected.



Version-Release number of selected component (if applicable):
bzr-gtk 0.94.0-2

How reproducible:
Always


Steps to Reproduce:
As above

Actual Results:


Expected Results:
Olive and nautilus co-exist happily with bzr-gtk 0.94

Additional info:

Comment 1 Toshio Ernie Kuratomi 2008-07-14 21:01:26 UTC
Olive is now Provided and Obsoleted by the bzr-gtk package so attempting to
force both olive-0.91 and the latest bzr-gtk-0.94+ in together is going to only
yield errors.

If you are unable to run olive-gtk when you have bzr-gtk-0.94 installed and do
not have an olive package installed then there could be problems.

Comment 2 Rehan Khan 2008-07-14 22:53:07 UTC
ah, ok. The bug search came up with this :
https://bugzilla.redhat.com/show_bug.cgi?id=237023
so I thought they should be different packages.

I wasn't trying to force them to co-exist, I was trying to resolve the issue
where if I browse to a bzr directory and click on log the log dialog does not
display any data. If I run olive-gtk from a console, clicking on log drops this
traceback on the console:

Traceback (most recent call last):
  File
"/usr/lib/python2.5/site-packages/bzrlib/plugins/gtk/branchview/treeview.py",
line 292, in populate
    self.mainline_only)
  File
"/usr/lib/python2.5/site-packages/bzrlib/plugins/gtk/branchview/linegraph.py",
line 62, in linegraph
    for ghost_child in graph_children[ghost]:
KeyError: '-'

This is with bzr-gtk 0.94 with no separate olive package installed.

The olive 0.91 package was able to to populate the log dialog with the history
of revisions.

Perhaps I need to reboot to properly get rid of the old olive package. I will
post back the next time I reboot.

Not sure if a closed bug will notify you so I will reopen it.

Thanks

Comment 3 Toshio Ernie Kuratomi 2008-07-15 03:03:03 UTC
Fix committed.  Waiting for builds to finish.

Comment 4 Fedora Update System 2008-07-15 05:19:41 UTC
bzr-gtk-0.94.0-4.fc9 has been submitted as an update for Fedora 9

Comment 5 Fedora Update System 2008-07-15 05:20:25 UTC
bzr-gtk-0.94.0-4.fc8 has been submitted as an update for Fedora 8

Comment 6 Toshio Ernie Kuratomi 2008-07-15 05:22:59 UTC
If you'd like to try out this fix before it goes out to the world, you can
download it from the build link on this page in the update system:

https://admin.fedoraproject.org/updates/F9/pending/bzr-gtk-0.94.0-4.fc9

Comment 7 Rehan Khan 2008-07-15 09:24:14 UTC
Thanks Toshio the log function works really well. Actually Olive is much more
responsive (snappy?) from a ui perspective, log is pretty much instantaneous
when before it took a couple of seconds.

I seem to have stumbled on a couple of other bugs:

1) If I do a <menu> -> branch -> Get and I fill in lp:smart (for example)
clicking the open folder button next to the revision box produces this traceback:

Traceback (most recent call last):
  File
"/usr/lib/python2.5/site-packages/bzrlib/plugins/gtk/branchview/treeview.py",
line 292, in populate
    self.mainline_only)
  File
"/usr/lib/python2.5/site-packages/bzrlib/plugins/gtk/branchview/linegraph.py",
line 50, in linegraph
    for (revid, parent_revids) in graph.iter_ancestry(start_revs):
  File "/usr/lib/python2.5/site-packages/bzrlib/graph.py", line 438, in
iter_ancestry
    pending = set(revision_ids)
TypeError: list objects are unhashable

This also happens if I do a checkout. Getting the branch or checkout then
produces a float division error dialog with no traceback on the console leaving
a tiny progress window which can only be closed from right clicking the window
in the panel and selecting close.

2) If I have an existing branch and do a pull either I get the same float
division error as above or it says pull ok but leaves the same tiny progress bar
window.

cheers

Comment 8 Toshio Ernie Kuratomi 2008-07-16 15:48:37 UTC
#1 is a bug that's at least partially dependent on the patch introduced here. 
I'm not seeing where the bad value is being introduced in the first place,
though.  Have to search further.

#2 seems unrelated.  It's probably best to report upstream to get someone
working on the issue.  You can open a bug here to track upstream's progress and
I can backport when upstream has fixed it:

https://bugs.launchpad.net/bzr-gtk

Comment 9 Fedora Update System 2008-07-17 14:14:31 UTC
bzr-gtk-0.94.0-4.fc8 has been pushed to the Fedora 8 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update bzr-gtk'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/F8/FEDORA-2008-6493

Comment 10 Rehan Khan 2008-07-24 10:38:46 UTC
I posted this upstream (https://bugs.launchpad.net/bugs/249253). It appears 
that these bugs are fixed in trunk/0.95.

Cheers

Comment 11 Toshio Ernie Kuratomi 2008-07-24 18:22:06 UTC
Thanks.  I've looked at the diff between trunk and 0.94.0.  Unfortunately, it
looks like the progressbar changes are pretty far reaching and invasive.  So I
don't think I'll be solving the problem with the tiny progress window.

The good news is that I discovered that upstream now has a different fix for the
log error in trunk. With that fix applied all the tracebacks go away.  So the
problems with olive will just be cosmetic, not missing functionality.

Making a new build now.

Comment 12 Fedora Update System 2008-07-24 19:43:29 UTC
bzr-gtk-0.94.0-5.fc8 has been submitted as an update for Fedora 8

Comment 13 Fedora Update System 2008-07-24 19:44:49 UTC
bzr-gtk-0.94.0-5.fc9 has been submitted as an update for Fedora 9

Comment 14 Fedora Update System 2008-08-07 23:49:57 UTC
bzr-gtk-0.94.0-5.fc8 has been pushed to the Fedora 8 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 15 Fedora Update System 2008-08-07 23:55:59 UTC
bzr-gtk-0.94.0-5.fc9 has been pushed to the Fedora 9 stable repository.  If problems still persist, please make note of it in this bug report.


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