Commit graph

1,465 commits

Author SHA1 Message Date
Goffi
a667873b99 plugin XEP-0059: fixed bad disco handling 2015-08-18 09:01:18 +02:00
souliane
9295bba396 setup: wx is not more a dependency since wix has been deprecated 2015-08-20 10:22:46 +02:00
souliane
71f0f14b36 plugin OTR: fixes a couple of typos 2014-09-03 20:55:54 +02:00
Goffi
1170edc400 quick_frontend: minor fixes 2015-08-16 01:01:34 +02:00
Goffi
b747c1b733 quick_frontend (constants, quick_app, quick_contact_list): blogging refactoring (not finished):
- adaptation to backend modifications
    - moved common blogging parts from Libervia to quick frontend
    - QuickApp use a MB_HANDLE class variable to indicated if blogging is managed by the frontend (and avoid waste of resources if not)
    - comments are now managed inside parent entry, as a result a tree of comments is now possible
    - Entry.level indicate where in the tree we are (-1 mean parent QuickBlog, 0 mean main item, more means comment)
    - items + comments are requested in 1 shot, and RTDeferred are used to avoid blocking while waiting for them
    - in QuickBlog, id2entries allow to get Entry from it's item id, and node2entries allow to get Entry(ies) hosting a comments node
    - QuickBlog.new_message_target tell where a new message will be sent by default
2015-08-16 01:00:54 +02:00
Goffi
0f10526746 core: getProfileName no raise ProfileUnknownError + minor doc fixes 2015-08-16 00:41:58 +02:00
Goffi
b7409e0488 plugins xep-0060, xep-0163, xep-0277, groupblog: bloging improvments (huge patch, sorry):
/!\ not everything is working yet, and specially groupblogs are broken /!\
    - renamed bridge api to use prefixed methods (e.g. psSubscribeToMany instead of subscribeToMany in PubSub)
    - (xep-0060): try to find a default PubSub service, and put it in client.pubsub_service
    - (xep-0060): extra dictionary can be used in bridge method for RSM and other options
    - (xep-0060): XEP_0060.addManagedNode and XEP_0060.removeManagedNode allow to easily catch notifications for a specific node
    - (xep-0060): retractItem manage "notify" attribute
    - (xep-0060): new signal psEvent will be used to transmit notifications to frontends
    - (xep-0060, constants): added a bunch of useful constants
    - (xep-0163): removed personalEvent in favor of psEvent
    - (xep-0163): addPEPEvent now filter non PEP events for in_callback
    - (xep-0277): use of new XEP-0060 plugin's addManagedNode
    - (xep-0277): fixed author handling for incoming blogs: author is the human readable name, author_jid it jid, and author_jid_verified is set to True is the jid is checked
    - (xep-0277): reworked data2entry with Twisted instead of feed, item_id can now be specified, <content/> is changed to  <title/> if there is only content
    - (xep-0277): comments are now managed here (core removed from groupblog)
    - (xep-0277): (comments) node is created if needed, default pubsub service is used if available, else PEP
    - (xep-0277): retract is managed
2015-08-16 00:39:44 +02:00
Goffi
f32b006d54 plugin text-syntaxes: minor variable renaming 2015-08-16 00:06:59 +02:00
Goffi
4eef249eb4 tmp(pubsub): added retract "notify" attribute management 2015-08-16 00:06:12 +02:00
Goffi
7cbcc26d7d xml_tools: minor attribute renaming 2015-08-15 22:27:39 +02:00
Goffi
32592acdf5 tmp (wokkel.rsm): use of super instead of direct call in PubSubRequest 2015-08-15 22:24:40 +02:00
Goffi
1e21730bfe plugin XEP-0277: added mBGetFromManyWithComments to have items + comments in one method call 2015-08-15 22:24:38 +02:00
Goffi
45c81e068b plugin XEP-0277: better parsing of atom:author element + item2mbdata minor reorganisation for better readability 2015-08-15 22:22:36 +02:00
Goffi
c3e34047b2 plugin xep-0060,xep-0277: added getFromMany using new RTDeferredSession mechanism 2015-08-15 22:22:34 +02:00
Goffi
7e83aaedb3 plugins xep-0060, xep-0277: added methods to serialise getItems result (before bridge transmission):
serItemsData is used for normal callbacks, and serItemsDataD for callbacks which return deferred. These methods simplifly the code by making the re-use of getItems more easy.
2015-08-15 22:20:56 +02:00
Goffi
2b20bff614 plugins xep-0277, groupblog: added subscriteToMany to replace massiveSubscribeGroupBlogs + added SatRosterProtocol.getJidsSet 2015-08-15 22:20:43 +02:00
Goffi
d4008f22ec plugin XEP-0060: use of new RTDeferredSession to subscribe many nodes at once + subscribeToMany can now subscribe on separate services 2015-08-15 22:13:27 +02:00
Goffi
975e4ac51f core: new tools.sat_defer module, and implementation of RTDeferredSessions:
The real-time deferred session is a class which manage session of several deferreds at once (pretty much like a DeferredList), with the ability to get intermediate results.
2015-08-15 22:13:27 +02:00
Goffi
0a22619026 core (memory): Sessions fixes:
- avoid memory leak with forgotten _purgeSession in case of conflict: an exception is now raised instead
    - _purgeSession now cancel the timer if it was not done before
    - KeyError in profileGet is now explicitly raised throught a failure.Failure
    - use iterator to iterate session in ProfileSessions
2015-08-15 22:13:27 +02:00
Goffi
fd3e9ce044 plugins xep-0060, xep-0277: code simplification/cleaning/fix:
- plugin xep-0060: moved rsm data to a more general metadata dict, which will contain all data relative to the node/items set. RSM metadata are prefixed with "rsm_"
    - plugin xep-0060: minor docstring fixes
    - plugin xep-0060: removed cache to simplify code base
    - fixed broken getLastMicroblogs
    - added _getLastMicroblogs as wrapper to getLastMicroblogs, for bridge
    - removed lxml dependecy for this plugin, use native twisted instead
    - several improvments/fixes in item2mbdata
2015-08-15 22:13:27 +02:00
souliane
eaaa5e2164 tools (config): when reading a list or dict from the config file, ignore spaces immediately following the delimiter 2015-07-22 11:42:37 +02:00
souliane
7c4bed58c5 tools (xml_tools): better PEP-8 compliance 2015-07-21 15:36:40 +02:00
souliane
d2c822fb95 add PyOpenSSL to the dependency list 2015-07-21 11:56:53 +02:00
souliane
252bf6bef3 quick_frontend: display over whole alerts counter 2015-07-20 10:23:58 +02:00
souliane
042e19b812 quick_frontend (quick_chat): QuickChat._get_nick returns "" instead of None for message from the MUC 2015-07-14 16:49:29 +02:00
souliane
3595d2656b plugin misc_groupblog: pubsub response do not fail when target server doesn't handle RSM 2015-07-14 16:44:15 +02:00
souliane
204c7fdc48 tmp (wokkel): pubsub response do not fail when target server doesn't handle RSM 2015-07-14 16:41:59 +02:00
souliane
a2962a1000 add tests for sat.tmp.wokkel 2015-07-14 15:22:02 +02:00
souliane
6f8e97860a plugin XEP-0054: fixes bug introduced by changeset 1255 (38fb8823cee8) 2015-07-14 12:57:07 +02:00
souliane
9062b2da02 quick_frontend: add a couple of TODOs 2015-07-13 13:33:54 +02:00
souliane
640537662a bridge, quick_frontend: the JID that is assigned by the server can differ from the one we asked for (resource) 2015-06-10 18:04:43 +02:00
souliane
e10070f923 primitivus: fix setting the presence and status 2015-06-10 09:18:34 +02:00
souliane
fdad3cf3c9 plugin misc_account: change the message sent by email after an account creation 2015-06-06 17:01:22 +02:00
Goffi
f51848a0ad tmp (rsm): better use of domish.Element.elements() + minor fixes 2015-05-27 19:12:38 +02:00
Goffi
becb178deb core (xmpp): added log message when a an entity without presence subscription is removed from roster 2015-05-27 19:12:38 +02:00
Goffi
2602e4efbb quick frontends (contact list): cache is not cleared anymore on QuickContactList.fill, avoiding the accidental removal of cached values like avatars 2015-05-27 19:08:16 +02:00
Goffi
3c6a708966 quick_frontend (quick_app): properly fixed roster loss:
commit 6adf1b0be609 which was causing issues in Libervia or when a profile was already connected
2015-05-22 22:31:37 +02:00
souliane
f978524b22 display the resource in the chat dialog when printing a private MUC message 2015-04-24 16:10:46 +02:00
souliane
f78804cce5 core (xmpp): update the cache for a contact group when a contact is removed from it 2015-04-24 14:57:09 +02:00
souliane
2273421745 core (xmpp): RosterItem.jid is deprecated in Wokkel 0.7.1, use RosterItem.entity instead 2015-04-24 14:54:24 +02:00
Goffi
af3ec67047 core (tests): fixed bad use of reserved name 2015-04-23 15:16:06 +02:00
Goffi
0ad78c5072 core (tests): test fixes 2015-04-23 14:19:43 +02:00
Goffi
13ed04b83d plugin groupblog, tmp (mam, rsm): some style improvments/fixes:
- renamed variables nammed after reserved word/module
    - removed class variables which are not needed
    - removed external parenthesis from asserts
    - in mam.MAMPrefs, removed default value for default argument, as None can't be used
    - (groupblog) extended docstring for DeferredItems and DeferredItemsFromMany
2015-04-23 13:35:21 +02:00
Goffi
526ca6a272 tmp (wokkel): licenses fixes:
the licenses headers were wrong, it was fixed: original work from Adrien Cossa is directly under AGPL v3 (with his agreement), work derivated from Wokkel is sublicensed to AGPL v3 as allowed by the original license, to stay consistent with the rest of the code base.
    Theses files (and only these ones) can be relicensed again to fill Wokkel license if Ralph plan to merge them upstream...
2015-04-23 10:57:40 +02:00
Goffi
899c503255 plugins xep-0277: some methods reordering to make the plugin more readable 2015-04-23 10:25:47 +02:00
Goffi
9a3fd0c2b3 plugins groupblog, xep-0060: first pass of simplification 2015-04-22 20:21:55 +02:00
Goffi
59d21b93d1 plugins (groupblog, xep-0277) + tmp(rsm): improved style:
- removed external parenthesis in assertions
    - added blank line after first line of docstrings
    - replaced "__" prefixes by "_"
    - renamed variabled named after the reserverd word "max" to "max_"
2015-04-22 18:30:28 +02:00
souliane
4c25ec71ba quick_frontend: ask for the roster in connectedHandler instead of in ProfileManager, because we need it also when reconnecting after a disconnection whithout restarting the frontend 2015-04-20 16:46:17 +02:00
souliane
41b549f7ae core, plugin XEP-0045, frontends: change frontend method "setStatusOnline" for "setPresenceStatus":
- remove parameter "online" (can be guess from "presence" value)
    - process "statuses" dict in quick_frontend, so this method can get a simple unicode "status"
    - add C.PRESENCE_STATUSES_DEFAULT to define the key to use for fallback status
2015-04-20 16:39:38 +02:00
Goffi
e4cb7f59d3 core (disco): fixed bad indentation in _discoInfos (used by bridge) 2015-04-18 00:27:39 +02:00