- cache now manage different kind of data (instead of only avatar)
- PeristentBinaryDict is used to keep cache (because we now store a dict, not just strings)
- CACHED_DATA is a set of data kept in cache (only nick and avatar so far)
- a signal update flag is put on "nick"
- data in cache are reset if they are not present in cache (this avoid to keep the old value)
- avatars_cache is now managing cache load per profile
- use of new profileConnecting method to load persistent data, this prevent to have presence_available trigger called before cache data is loaded
- better management of avatars already in cache (prevent decoding avatars when it is already in cache)
- fixed a confusion between full jid and bare jid, resulting in always requesting VCard
- check of cache data loading before starting
- stored cache are restored for all jid, not only ones in roster
- client jid cache is correctly saved/restored
- minor other fixes
This plugin still need some work, but this patch fixes (hopefully) the major issues
/!\ not finished, everything is still instable !
- bridge: DBus bridge has been modified to allow blocking call to be called in the same way as asynchronous calls
- bridge: calls with a callback and no errback are now possible, default errback log the error
- constants: removed hack to manage presence without OrderedDict, as an OrderedDict like class has been implemented in Libervia
- core: getLastResource has been removed and replaced by getMainResource (there is a global better management of resources)
- various style improvments: use of constants when possible, fixed variable overlaps, import of module instead of direct class import
- frontends: printInfo and printMessage methods in (Quick)Chat are more generic (use of extra instead of timestamp)
- frontends: bridge creation and option parsing (command line arguments) are now specified by the frontend in QuickApp __init__
- frontends: ProfileManager manage a more complete plug sequence (some stuff formerly manage in contact_list have moved to ProfileManager)
- quick_frontend (quick_widgets): QuickWidgetsManager is now iterable (all widgets are then returned), or can return an iterator on a specific class (return all widgets of this class) with getWidgets
- frontends: tools.jid can now be used in Pyjamas, with some care
- frontends (XMLUI): profile is now managed
- core (memory): big improvment on entities cache management (and specially resource management)
- core (params/exceptions): added PermissionError
- various fixes and improvments, check diff for more details
- updated methods to no use anymore methods deprecated in Wokkel
- use of full jid when it make sense instead of bare jid
- getContacts, updateContact and delContact are now asynchronous