Commit graph libervia-backend/sat
Author SHA1 Message Date
Goffi
ef702b8a75 we are in dev version again 2019-03-02 18:43:09 +01:00
Goffi
14699b8e8d 0.7.0a4 release 2019-03-01 19:45:26 +01:00
Goffi
8ae596600d core (disco): added missing disco extensions when generating the cap hash. 2019-03-01 19:28:11 +01:00
Goffi
cf914b58eb plugin XEP-0045: fixed item-not-found exception when creating a room:
MAM was checked on the room itself, this patch changes it by checking the MUC service instead.
2019-03-01 17:32:15 +01:00
Goffi
079d04f6ca plugin XEP-0045: fixed message type filtering when getting last stanza_id to retrieve history with MAM 2019-03-01 16:17:00 +01:00
Goffi
309e5eebb9 tools(common/date_utils): fixed order on year first + set default date for date_parse 2019-03-01 15:35:55 +01:00
Goffi
c6d26678ae plugin XEP-0384: removed _purgeOldData temporary hack, it should not be useful anymore 2019-03-01 12:17:34 +01:00
Goffi
fe2e5dd8ce plugin XEP-0045: cache presences if they are received before the room is fully joined:
presences are then replayed (only the last one) once the room is fully joined.
2019-03-01 12:16:57 +01:00
Goffi
6b0847d6aa plugin OTR: ignore messages from sender without resource or from own jid 2019-03-01 12:13:55 +01:00
Goffi
6033a0a0cb core: renamed presenceReceived to presence_reveiced + use "client" as first arguments instead of "profile" 2019-03-01 12:12:50 +01:00
Goffi
c90e0a7e6a bridge (pb): minor import order change 2019-02-28 18:57:28 +01:00
Goffi
e8e8881016 plugin XEP-0384: better bundle handling + misc improvments
- public bundles are now retrieved only when needed (i.e. on MissingBundleException when encrypting a message)
- a feedback is given to user when a message is received but it has not been encrypted for our device
- fixed feedback on decryption error if message come from an other device of the client (i.e. it's a carbon copy)
- setBundle if called in a "finally" if republish_bundle is set after decrypting a message
2019-02-28 18:57:26 +01:00
Goffi
fc007dae38 plugin XEP-0280: priority and "sent" fixes:
- carbon prioriy must be bigger than ones of encryption plugins, because the carbon copied messages must be unwrapped to be decrypted, this patch fixes it
- "sent" carbon elements was only stored and notified to frontends, it is now unwrapped and injected in normal traffic, this way other plugin can manage it, in particular encrypted elements can be decrypted
2019-02-28 18:57:06 +01:00
Goffi
409118f255 plugin XEP-0045: fixed issue with deepcopy by using new xml_tools.elementCopy method 2019-02-28 18:57:04 +01:00
Goffi
82bb99f88c core (xml_tools): new elementCopy method to shallow copy a domish.Element 2019-02-28 18:57:00 +01:00
Goffi
208dc38433 core: we are in dev version again 2019-02-28 18:56:48 +01:00
Goffi
a56c9dd845 plugin OTR: do profile session init in profileConnecting, so it is done before receiving any stanza 2019-02-25 08:07:00 +01:00
Goffi
f40b43dca5 plugin OTR: disabled menu as the new generic encryption menu allows to start/stop OTR or display the trust UI. 2019-02-24 14:12:06 +01:00
Goffi
d8f6620d00 core: added a base menu allowing to set encryption session or show the trust management UI. 2019-02-24 14:11:08 +01:00
Goffi
2e4f4069c5 core (patches): partially fixed jid caching:
jid caching in Twisted use a dict (__internJIDs) which associate a jid as string to its jid.JID instance.
But this caching doesn't handle mutability of the objects, resulting wrong jid returned when a modification is done (e.g. if resource is changed).
This is a temporary workaround until the patch is proposed and merged upstream.

note: this is a partial fix because the caching is also leaking memory (cf. https://twistedmatrix.com/trac/ticket/5122)
2019-02-24 14:09:44 +01:00
Goffi
512ae0b91e plugin XEP-0277: blog items data are now entirely serialised before going to bridge:
So far, and for historical reasons, blog items data where serialised using a unicode: unicode dict, which was causing trouble for many types of values (timestamps, booleans, lists).
This patch changes it by serialising the whole items before going to bridge, and deserialising it when going back. This way, complex data can be used easily in items.
This impact psEvent and serItemsData* methods which are renamed transItemsData* because there are not always serialising anymore (a new argument "serialise" allows to specify it).
When editing a blog post in jp, metadata are now more easy to manipulate, specially lists like tags.
2019-02-23 18:59:00 +01:00
Goffi
fc3598e660 plugin XEP-0060: added purgeNode/psNodePurge method to remove all items from a node 2019-02-15 22:13:43 +01:00
Goffi
d1e3821e5a plugin XEP-0060: added sendItems/psItemsSend method to publish several items at once 2019-02-15 22:13:20 +01:00
Goffi
bdbee15da9 0.7.0a3 release 2019-02-06 09:10:27 +01:00
Goffi
5827849863 tools (common): fixed dateutil.parser import 2019-02-02 01:12:54 +01:00
Goffi
f537241232 plugin XEP-0198: don't use hooks on components 2019-02-02 01:05:25 +01:00
Goffi
2a5ea36101 plugin XEP-0198: fixed typo resulting in a crash on resume 2019-01-26 20:08:33 +01:00
Goffi
198db6c2ca plugin XEP-0045: fixed crash when <delay> is used at an unexpected time. 2019-01-26 20:07:45 +01:00
Goffi
8a59034935 plugin mr mercurial, tools(common/utils): moved command protocol to a new module 2019-01-25 09:06:29 +01:00
Goffi
51cd3ce52a core (findByFeatures): fixed services discovery 2019-01-20 18:20:55 +01:00
Goffi
d159b9fb49 memory (sqlite): optimizations
indexes were missing on foreign keys for "message", "subject" and "thread" tables, seriously impacting performances.
In addition to those indexes, two indexes have been added to speed ordering by timestamp on "history", and one on "files" table.
history.rowid is not used anymore as there is an index on (profile_id, received_timestamp) which will speed up the query.
Primary keys order has been changed to use automatic index in most common cases (filtering by profile_id then namespace).
2019-01-19 22:49:32 +01:00
Goffi
8f9235e661 plugin text syntaxes: handle empty content in cleanXHTML + don't use self-closing tags for non-void elements. 2019-01-19 11:39:02 +01:00
Goffi
9cfbbce2d1 merge_requests: use XHTML for body 2019-01-19 11:39:02 +01:00
Goffi
b385a19b75 plugin pubsub schema: handle XHTML fields 2019-01-19 11:39:02 +01:00
Goffi
37ea73b19f frontends, jp, templates: added XHTMLBox widget:
for jp, the XHTML is rendered for now using markdown.
2019-01-19 11:39:02 +01:00
Goffi
87871fabca core (XMLUI): new XHTMLBox widget:
XHTMLBox is a textbox specialised in XHTML, i.e. it renders the XHTML when in read_only, and it allows to edit it.
The XHTML is cleaned by default, the cleaning is done by Text Syntaxes plugin (actually there is a cleaning method which can be set by any plugin, but Text Syntaxes is the one which does it).
2019-01-19 11:39:02 +01:00
Goffi
db0b00557a plugin text syntaxes: cleanStyle is an independent method, cleanXHTML is now blocking (no need to launch thread for that) 2019-01-19 11:39:02 +01:00
Goffi
f1c0eca9ab plugin text syntaxes: changed import name to TEXT_SYNTAX (better with underscore for autocompletion) 2019-01-19 11:39:02 +01:00
Goffi
e2ab5e33c8 core, XEP-0315: move XML element handling to sat_tmp:
XML Element is now implemented in sat_tmp, so it can be available also for SàT Pubsub.
The XEP-0315 is thus not needed anymore and have been removed, XEP-0315 namespace has been added to base disco features.
Use the new install() function of sat_tmp to do the patching.
2019-01-16 09:18:16 +01:00
Goffi
7e9ebc84a7 plugin pubsub admin: pubsub administrator first draft:
This experimental protocol allows to publish items where publishers can be specified.
2019-01-15 08:51:54 +01:00
Goffi
9ad46b42f2 plugin pubsub schema: code formatting minor update 2019-01-12 16:50:13 +01:00
Goffi
7e0038ba13 plugin XEP-0315: implementation of Data Forms XML Element 2019-01-12 15:01:20 +01:00
Goffi
8e338bf913 date update 2019-01-12 12:25:31 +01:00
Goffi
6f4c7bd950 tools (common/data_objects): moved BlogItems._parseMetadata to a parsePubSubMetadata function, so it can be used in a more generic way 2019-01-11 21:38:20 +01:00
Goffi
173e192526 plugin XEP-0060: set a 30s timeout on items get 2019-01-11 19:49:01 +01:00
Goffi
180b4790bf core (disco): client.disco.requestInfo failure are re-raised:
so far, requestInfo failure where logged as a warning, and an empty disco was returned.
This prevented the requesting entity to know about the error, so now the error is logged and re-raised.
CancelError are converted to TimeoutError (requestInfo is only cancelled on timeout).
An empty disco is still cached in case of failure, to avoid re-waiting for the entity on next request.
2019-01-11 19:48:20 +01:00
Goffi
c5a17cc9ef core: findByFeatures speed improvments:
- DeferredList are used instead of waiting for each disco individually
- a Timeout of 10 s is set for jids, to avoid waiting for minutes when some entity is unreachable (which leads to terrible user experience while waiting for a discovery page)
2019-01-11 19:44:46 +01:00
Goffi
d88d2a7d8f tools (common/data_objects): metadata parsing in BlogItems:
metadata are parsed to deserialise some well known values like rsm index and count, and some properties have been added to have easier access.
A "complete" property (or item in metadata) is set to True if we are on the last page, False if we are not, or None if we don't have enough data to know if we are on the last page or not.
2019-01-11 16:35:13 +01:00
Goffi
7a9ee35cfc misc: replaced all "dummy" by the more conventional and readable "__" ("_" being used for gettext) 2019-01-11 11:13:15 +01:00
Goffi
8f7196aafb XEP-0059: max value check:
check that max is not negative, this is to spot the accidental use of C.NO_LIMIT for max
2019-01-11 09:48:19 +01:00