summaryrefslogtreecommitdiff
path: root/poezio
AgeCommit message (Collapse)Author
2020-04-12plugins: Add refs to dependencies on pluginsMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-12plugins: don't access property on uninitialized pluginMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-11plugins: Add dependencies supportMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-06xep_0196: Use correct tag local name (thanks ivucica)Maxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-05/correct: send new-style LMCMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-05TextBuffer: add note about LMC compatMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-05modify_message: change variable nameMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-05Read newer LMC rulesMaxime “pep” Buquet
Version 1.1.0 of Last Message Correction (0308) added clarifications that break the way poezio handles corrections. Instead of linking corrections to the previous correction/message as we were doing, we are now required to link all corrections to the original messages. Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-04Merge branch 'sync-fixes' into 'master'Maxime Buquet
only auto-reconnect if not already reconnecting, needs slixmpp!37 See merge request poezio/poezio!78
2020-04-04Actually skip whitespace ping logging (thanks Ge0rG)Maxime “pep” Buquet
Fixes what 9da6f5328c714f6bdcbc89cb038e10116ab0bed6 intended to do. Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-04-04only auto-reconnect if not already reconnecting, needs slixmpp!37Georg Lukas
2020-04-03Show textual presence error if availableKim Alvefur
If there's a human-readable explanation of the error, it should be there.
2020-03-31plugin_manager: log on every Exception that caused plugin loading to failMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-03-31Merge branch 'skip-whitespace-ping-log' into 'master'Maxime Buquet
Skip whitespace ping logging See merge request poezio/poezio!75
2020-03-31Skip whitespace ping loggingMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-03-29cElementTree has been deprecated since Python 3.3 and removed in Python 3.9.Karthikeyan Singaravelan
2020-03-29affiliations: correctly refresh windowMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-03-29Fix #2280: Allow /affiliation to list all affiliationsMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-03-29Fix 'disconnected' event handler order for /quitGeorg Lukas
2020-03-29display a delayed reconnect info, needs slixmpp!35Georg Lukas
2020-03-25poezio/plugin_manager: add debug when loading pluginMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-02-17plugins: Allow entry_points to be registeredMaxime “pep” Buquet
It's currently impractical to use out-of-tree plugins that want to be distributed via distribution channels. Poezio now looks for every entry point registered in the `poezio_plugins` entry group, and will use the first matching module with the specified name. This also helps specifically for the OMEMO plugin that has a conflicting name (omemo / omemo) with the backend library. Thanks jonas for pointing this out. Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-02-07mam: disco before query only if groupchatMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-02-04load, unload: prevent Traceback when not enough parameters are specifiedMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-12Disco#info barejid instead of domain only on carbonsMaxime “pep” Buquet
There is no apparent reason why a disco#info should be done on the domain Jid rather than the bare Jid. MUCs advertize their MUC-y-ness on the bare Jid. This will also fix cases like chat@dino.im which is a MUC component itself (whereas dino.im is a user host), and biboumi components that serves a mic of MUCs and (IRC) users. Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-12is_known_muc_pm: search into more than MucTabMaxime “pep” Buquet
Use new `by_jid` API to search for any tab containing the barejid, and then look at the type of Tab. Move the Tab search at the top of the checks so that we stop searching if we already have done all this work for previous stanzas. Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-12Some more typing for is_known_muc_pmMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-12Prevent Traceback when receiving MUC-PM carbons under some conditionsMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-11plugin_e2ee: Remove debug logging of encrypted messagesMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-11plugin_e2ee: prevent empty JID from being passed to pluginMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-01BasePlugin: Remove debug loggingMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2020-01-01E2EE MUC supportMaxime “pep” Buquet
This change transmits the original JID of the sender (in decrypt) or receiver(s) (in encrypt). Handling of MUC is not complete. It is possible that some participants have access to realjids while others don't (e.g., moderators in semi-anon MUCs). The code currently doesn't handle this and this will cause at least two issues: - Sending an encrypted message in a semi-anon MUC would reveal the sender's identity (public key) - Recipients wouldn't be able to decrypt this message as they don't have access to the sender's realjid. Unless they already have the bundle available and then they could associate the public key with a jid (another privacy issue/defeating the point of semi-anon rooms). TODO: Fix this ^ Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-31Allow encryption in normal messagesMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-31E2EEPlugin: Mute some lint warnings because of metaclassMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-31Tabs: add by_jid search method for tabs who have a jid attrMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-30Add TODO in plugin_e2ee _decryptMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-28Disable a pylint error on a line (due to __getattr__ override)mathieui
2019-12-27omemo: remove unnecessary newline in docstringMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27omemo: prevent traceback when no JID is specified in non-supported tabMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27omemo: use dedicated method to check if encryption is enabledMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27omemo: use jid property instead of name on chat tabMaxime “pep” Buquet
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2019-12-27omemo: fix show_fingerprints (JID instead of str)mathieui
2019-12-27omemo: add an api in plugin_e2ee to get the fingerprint(s) of a jidmathieui
2019-12-27omemo: fix an indent error and make mypy happymathieui
2019-12-27omemo: fix some errors / feedback in trust settingmathieui
2019-12-27omemo: fix the type of the supported tab tyoesmathieui
2019-12-27omemo: add supported_tab_types and trust_states plugin attributesmathieui
- supported tab types is a list of tabs this plugin should be active in (only chattabs) - trust_states is a dict[str → set] containing only two keys: accepted and rejected, whose values are the internal plugin states that should allow encryption and the ones that should not
2019-12-27omemo: add a wrapper around _encrypt() to handle user feedbackmathieui
(yes, another one)
2019-12-27omemo: fix indentation of one linemathieui
2019-12-27omemo: add missing typing importmathieui