Bug 37962 - papyon does not handle NOT after remote invitation request
Summary: papyon does not handle NOT after remote invitation request
Status: NEW
Alias: None
Product: papyon
Classification: Unclassified
Component: general (show other bugs)
Version: git master
Hardware: All All
: medium normal
Assignee: papyon-bugs
QA Contact:
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 38336
  Show dependency treegraph
 
Reported: 2011-06-05 15:05 UTC by jerico
Modified: 2011-09-06 10:00 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments

Comment 1 Louis-Francis Ratté-Boulianne 2011-06-06 07:19:45 UTC
Thanks for the patch, it will be part of next papyon release
Comment 2 jerico 2011-06-12 12:22:13 UTC
Louis, please do not yet merge this in. I further investigated the MSNP sharp implementation. What is actually required after the NOT event is an address book/membership delta sync and not a check for pending contacts. Otherwise it is possible that the "pending contacts" event will be fired twice if we also get an incoming ADL and we may not get the id for the new contact. The fact that I do not always get an ADL for invitations (aka new REVERSE membership) must have to do with something else.

I already adapted the sync to handle the NOT command and solve issues I had with missing contact ids (see recent commits in my fork) but I'd rather test this a little before we merge it into the mainline. It also doesn't correctly trigger change events, yet. Maybe you want to comment?

I'm also not sure, yet, whether my address book sync actually captures all changes. I have a problem with invitations because the contact is in hidden state after the invitation. I also regularly get a "Hidden Contact with Same PUID Already Exists" or "Dynamic item already exists" exception when trying to add contacts that existed, were deleted and then re-invited.

This problem existed in MSNP sharp (see <http://code.google.com/p/msnp-sharp/issues/detail?id=249>) and has been solved there. I'll go on porting changes from there until it works for me. I'll just need quite a bit of time because I'm new to the MSN protocol. Comment is welcome, of course.
Comment 3 jerico 2011-06-13 22:28:59 UTC
Here a yet untested, partial port of MSNP-sharp's address book/memberships synchronization:

<https://github.com/jerico-dev/papyon/commit/51ddd80f5edd470d816a6518d2101c2dda31347b>

It'd be great if someone could give it a quick review for fundamental problems before I invest a lot of time in testing.
Comment 4 Riccardo (c10ud) 2011-06-14 01:58:01 UTC
once it reaches git master i will be happy to provide many many emesene testers

2011/6/14  <bugzilla-daemon@freedesktop.org>:
> https://bugs.freedesktop.org/show_bug.cgi?id=37962
>
> --- Comment #3 from jerico <jerico.dev@gmail.com> 2011-06-13 22:28:59 PDT ---
> Here a yet untested, partial port of MSNP-sharp's address book/memberships
> synchronization:
>
> <https://github.com/jerico-dev/papyon/commit/51ddd80f5edd470d816a6518d2101c2dda31347b>
>
> It'd be great if someone could give it a quick review for fundamental problems
> before I invest a lot of time in testing.
>
> --
> Configure bugmail: https://bugs.freedesktop.org/userprefs.cgi?tab=email
> ------- You are receiving this mail because: -------
> You are the assignee for the bug.
> _______________________________________________
> papyon-bugs mailing list
> papyon-bugs@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/papyon-bugs
>
Comment 5 jerico 2011-06-20 12:18:17 UTC
The topic branch <https://github.com/jerico-dev/papyon/tree/37962-address-book-sync-after-NOT> contains a version of this change I tested stand-alone and with telepathy-butterfly. I replaced the on_pending_contacts event by on_pending_contact for better consistency with other events as telepathy-butterfly doesn't use that event anyway. If you need backwards compat for other apps then it will be easy to add a (deprecated) on_pending_contacts event that emulates the prior event. I don't need (nor want) this for my application, though.

As far as I'm concerned this is ready for a broader public now. I'm happy to fix bugs quickly that are related to this change. Feel free to close this bug as it fits your workflow.
Comment 6 Riccardo (c10ud) 2011-09-01 03:00:17 UTC
i'd like to merge this change too, can i just pull from your papyon master in github? i think you merged this branch and the other one, right?
Comment 7 jerico 2011-09-06 10:00:16 UTC
Sorry for taking so long to respond. I've been traveling...

You can merge from master but this will include other changes I did which are not relevant to this bug report. If you want to test the fix to this bug report separately you can merge from the topic branch.

The changes I did for #37962 need quite a bit of testing as they are relatively far-reaching. I'm using the change with telepathy-butterfly since a while now without problems but that's probably not systematic enough a test for a broad release.

I maintained both, master and topic branches, up-to-date so you can choose to merge whatever you like. I didn't open up bug reports for all changes I did to master (e.g. whitespace changes) but I hope that my commit comments help understand the changes.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.