chore: update poetry.lock
feat: use URIs for adhoc command nodes
As requested by edhelas, to provide themed icons.
docs: mention raver's docker hub page
feat: option to strip leading emojis in adhoc command names
A request from edhelas, because movim favors themed icons in its UI.
fix: compatibility with postgresql
Alembic:
- does not always create the appropriate enums for postgresql.
- makes altering constraints easier with postgresql, so some of the hacks we
introduced for sqlite unnamed constraints (which we should not have had in
the first place, but…) are now unnecessary.
test: un-hardcode avatar hash and size in one test case
Without this change, the test fails on Fedora with python3.12. It is unclear
why, but the change guarantees that the stanza value matches whatever PIL
does on the platform the test is run on, which is reasonable.
fix: "title" before "instructions" in data forms
Most clients will automatically re-order that, but movim needs it,
probably because php and JS are not a real programming languages.
fix: remove bogus unique constraints on room table, for good
fix: remove group from DB after IBR remove
fix: remove group from DB after leave group command
fix: correction of messages with attachments
For compatibility with most XMPP clients, we follow the 1 message = 1
attachment rule. In this context, corrections of "a single legacy that became
several XMPP messages" are tricky to handle and mostly broken.
As a workaround, this commit treats correction of such messages by first
retracting them, then sending new ones.
Fixes: https://todo.sr.ht/~nicoco/slidgram/28
refactor: inheritance between ContentMessageMixin and AttachmentMixin
This makes more sense this way.
fix: use specific XMPPError raised in update_info()
If LegacyMUC.update_info() or LegacyContact.update_info()
raises a specific XMPPError, raise it directly instead
of turning it into a generic "internal-server-error".
test: improve console output
With this change, pytest should only output the logs
of the failed tests, which should makes them easier
to parse for our mortal brains in case of failure(s).
References: https://todo.sr.ht/~nicoco/slidge/212