- Save reference to contact in a dict instead of iterating the whole model
- Sort roster only once after all contacts have been added to the roster
- Speed up get_gc_contact()
Fixes#9334
Add method that sequentially works the steps we have to do
before sending first presence
- Move Delimiter into own module
- Move Metacontacts into own module
- Groupchats promote a vcard hash with presence
Refactoring:
- Dont delete groupchat contacts if they are maximized from the roster
- Roster and GroupchatControl use the same contact object
This adds a method that returns only a contact if there is an exact match,
instead of a contact where only the barejid matches.
We need this when we update the Caps of a contact.
- Add support for Pubsub Avatars
- Dont poll for vCard Updates, only use XEP-0153
- Dont cache vCards
- Store the avatar SHA of roster contacts in the DB
- Store the current SHA of each contact in the Contacts Object
- Move some code into the ConnectionVcard Class