Bug 276613

Summary: org.freedesktop.Telepathy.Error.NotImplemented: Unfriendly error message when removing contacts via butterfly
Product: [Frameworks and Libraries] telepathy Reporter: Luis Silva <lacsilva>
Component: contactlistAssignee: Telepathy Bugs <kde-telepathy-bugs>
Status: RESOLVED DUPLICATE    
Severity: normal CC: kde, mklapetek
Priority: NOR    
Version: git-latest   
Target Milestone: 0.4.0   
Platform: Ubuntu   
OS: Linux   
Latest Commit: Version Fixed In:

Description Luis Silva 2011-06-27 13:48:42 UTC
Version:           git-latest (using KDE 4.6.4) 
OS:                Linux

I get a popup with the following message when trying to remove and/or block an offline contact from a wlm account on the contact-list app:

org.freedesktop.Telepathy.Error.NotImplemented: Cannot block contacts on this protocol

I also get another popup with the following message.

org.freedesktop.DBus.Python.NotImplementedError: Traceback (most recent call last):
File "/usr/lib/pymodules/python2.7/dbus/service.py", line 702, in _message_cb
retval = candidate_method(self, *args, **keywords)
File "/usr/lib/python2.7/dist-packages/telepathy/_generated/Channel_Interface_Group.py", line 243, in RemoveMe…
raise NotImplementedError
NotImplementedError

Reproducible: Always

Steps to Reproduce:
Delete a contact from a wlm acount.

Actual Results:  
Contact cannot be removed.

Expected Results:  
Contact never shows its face in the c-l again.

OS: Linux (i686) release 2.6.38-10-generic
Compiler: cc
Comment 1 David Edmundson 2011-06-27 13:52:45 UTC
Related: https://bugs.kde.org/show_bug.cgi?id=270666
I'll leave that as a bug to say that removing the contact doesn't work. Which still needs to be fixed.

I'll keep this as a bug report that the error message is horrific.

The error message should be more along the lines of
"Due to an internal error we are unable to remove this contact"
Comment 2 Martin Klapetek 2011-07-17 20:50:08 UTC
It's actually quite impossible to fix this in any sensible way, because for every possible error we would have to create a slot, so we would end up with tens of slots where everyone would just set a correct string. Tp::PendingOperation provides only errorName(), which is just the dbus part, which is moreless useless. 

I guess we could create an error dictionary based on the dbus paths to show some generic info like "Sorry, this method is not implemented", but we won't probably do anything more fancy than that.
Comment 3 Martin Klapetek 2011-10-14 17:25:42 UTC

*** This bug has been marked as a duplicate of bug 282205 ***