๐ Bug Fixes =========== - Remove all MAM entries on unregistration (dc1dcf8) - Use a slixmpp.JID and not a str for 2FA validation (bbe0caa) - Do not send quoted fallback for replies with attachments (b706520) - Crash with list-multi fields with no options (6e7b075) - Improve feedback to user on unregistration (16e4fdc) - BREAKING CHANGE! Chat command: allow no selection and items with spaces for list-multi (cebc4bb)
๐ Bug Fixes =========== - Wrong URL in warning message (2da62bd) - Use JID validator in all registration paths (e85bacd) - Use makedirs for creating parent directory too - Catch IqTimeout exceptions as fatal errors
๐ Bug Fixes =========== - Crash on incoming BoB request (91f8ccd) - Use correct JID for presence errors on user nickname change attempt in MUC (d4baceb) - Unregistration when there are participants (49fc781) โ๏ธ Revert ========= - Fix: iq privileges for all namespaces (92ef339)
๐ Features ========== - Option to strip leading emojis in adhoc command names (2145f07) - Use URIs for adhoc command nodes (f0e6183) ๐ Bug Fixes =========== - "title" before "instructions" in data forms (1e07827) - Compatibility with postgresql (84b1a3e) - Remove orphans when removing attachments (63a7986) ๐ Documentation =============== - Mention raver's docker hub page (c326e6e) ๐งช Testing ========= - Un-hardcode avatar hash and size in one test case (ae22032)
๐ Features ========== - Delete group from the DB (1290f18) ๐ Bug Fixes =========== - Entrypoint for `python -m slidge` (23430c6) - Entrypoint in pyproject.toml (9cbf0ac) - Remove unused config option (bb59fdd) - New threads from XMPP (7063fe3) - Legacy networks where MESSAGE_IDS_ARE_THREAD_IDS (443a968) - Not null constraint failed on user un-registration (513b13f) - Unique constraint failed with MARK_ALL_MESSAGES (67405db) - Leave group via adhoc or chat command (df7d9d1) - Destroy locks when exception is thrown (57da953) - Use specific XMPPError raised in update_info() (fea2d18) - Correction of messages with attachments (db2168f) - Data URI of thumbhashes (68b2b64) - Crash on leave group adhoc command (fd97232) - Remove group from DB after leave group command (4f55a90) - Remove group from DB after IBR remove (8bf5be2) - Remove bogus unique constraints on room table, for good (7be925b) - *(mam)* Update instead of adding message with same legacy ID (3780b8c) ๐ Refactor ========== - Inheritance between ContentMessageMixin and AttachmentMixin (ea0aaef) ๐งช Testing ========= - Print stanza on assertion error (8f05c2c) - Improve console output (48e2ff6) - Catch iq timeout on slow platforms (bcf011a)
๐ Features ========== - Handle XMPP BOB/HTML-IM as sticker (5d99b56) ๐ Bug Fixes =========== - Ignore carbon argument when self != contact (b829c92) - Legacy message ID type for message correction in MUCs (632a614) - Parse mentions and link previews only for text messages (31f49b4) - Use typing.Sequence instead of .Collection for search, registration and table results (b599de6) - Carbon retraction not being ignored (3a39ece) ๐ Refactor ========== - Split huge method (6c07727) - Move handle_muc_admin_query to session_dispatcher.py (3b30a43) - Break session_dispatcher.py into several modules (9267a4a) - Merge XMPP presence handlers into single module (5e85fd1) - Merge VCard and VCard-temp handlers (f623056) - Centralise registration-related handler in a single module (f9e1b95) - Move MAM handlers with other XMPP events handlers (504494c) - Move ping handler with other handlers (9c083fb) - Move caps filter in dispatcher (d75169f) - Move search handler in dispatcher (8c60c97) - Move disco handler in dispatcher (219c46b) - Move get_muc_from_stanza to dispatcher module (f653a3a) - Move groupchat error handler in dispatcher module (9d2895a) - Move delivery receipt custom handling to slixfix module (85d30d2) - Rename gateway module to "dispatcher" (74eaeb0) - Harmonise getting slidge session from incoming stanza (b9dc4ed) - Regroup all XMPP message stanza handlers (87960e7) โก Performance ============= - Do not instantiate all contacts when attempting to get a _known_ contact (02511bb) - Load only room names and JIDs for disco#items on the component (7668778) - Ignore MDS events for JIDs not handled by slidge earlier (f5a955a) ๐งช Testing ========= - Cover MARK_ALL_MESSAGES (6576a25) โ๏ธ Miscellaneous Tasks ====================== - Update pre-commit hook (67ddde4)
Update external links for PyPI since XMPP URIs are not allowed
๐ Features ========== - BREAKING CHANGE! Replace blurhash with thumbhash (828478b) - Use XMPP URIs to reply to chat commands (357010c) ๐ Bug Fixes =========== - Legacy module config that depends on dynamic default of core config (a8d06e3) - Remove resource parts from users' JIDs (77d282a) - Decouple avatar SHA and legacy unique ID (30932a8) - Broadcast avatar metadata from contact bare JID on user's available presence (47359fb) - BREAKING CHANGE! Store contact client type in DB (c4a5517) - Unset user avatar hash when they unset their avatar (0a49c75) โก Performance ============= - Less python objects instantiations and SQL queries on user's available presence (9fafcac) - *(sql)* Use join to select participant's contact (3585bea) - Reduce LegacyMUCs instantiation when listing participants (b2fa9b0) - *(sql)* Avoid useless UPDATE on contact instantiation (4700995) ๐จ Styling ========= - Remove duplicated import (c2a352c) โ๏ธ Miscellaneous Tasks ====================== - Update aiohttp (fe75e37) - Fix superduper mock legacy module (a991e29) Build ===== - Add some classifiers and external links for PyPI (84e6eca)
๐ Features ========== - Guess attachment extension when no file name is given (ebb2ba1) ๐ Bug Fixes =========== - Do not broadcast presences of non-friends (d2ff515)
๐ Bug Fixes ============ - Participant_by_contact() for modules that do not use the canonical Contact.update_info() (11ea542)