Some servers don't store permanently the whole history of MUC with MAM. As a result, an
"item-not-found" stanza error can be received when message id used as reference doesn't exist
anymore on the server.
When this case happens, the history is retrieved in the same way as for a newly joined room
(i.e. last 50 messages are requested).
imageCheck will give a report on image, notably it will tell if it's too big and needs to
be resized before a transfer.
imageResize will create a new image with the requested size and return a path to it.
- fixed use of history_d deferred so MAM history is stored in database as soon as possible
and in right order
- get MAM history with pages of 20 messages instead of 100
- if a message can't be parsed, an error message is logged (with a dump of the stanza),
and the message is ignored, avoiding a crash and the impossibility the join the room at
all
- a new `mucRoomPrepareJoin` signal, containing room jid and profile, is sent when a room
joining is started, this allow better UX as the frontend can show the room immediately,
and lock it with a waiting message until it is fully available. The `mucRoomJoined` is
still sent when the room is fully joined/avaiable, meaning that the frontend can unlock
it and let the user interact with it
launch script was importing a method from memory (fixLocalDir), but memory is importing
twisted.internet.reactor which can result to a ReactorAlreadyInstalledError.
This patch fixes it by moving fixLocalDir to tools/config.
The launch script is now using /usr/bin/env.
if password is not specified on command line, it is now prompted if it is needed to start
a profile session or connect it. The password is prompted with echo disabled, so somebody
seing the computer screen can't see the password.
fix 207
- `background` setting can now be used in sat.conf to indicate if the terminal use a
`dark` or a `light` colour
- if `background` is not set or set to `auto`, the background colour is autodetected
- Jp.get_config (or CommandBase.get_config) method can now be used to retrieve a setting
- a new `utils` module has been added for backend and frontends generic utilities
- per_luminance method calculate the perceived luminance of a colour (is it dark or
light?). This is useful to automatically select the suitable colour in a theme.
- updated patches to handle TLS after implementation in Twisted 19.7.0. A patch is still
needed for Wokkel.
- minimum required version of Twisted is now 19.7.0
D-Bus bridge is now working again, using the new AsyncIO version. To make it work, the
GLib loop is run in a separated thread.
Loops have been moved to the `loops` module.
/!\ this commit is huge. Jp is temporarily not working with `dbus` bridge /!\
This patch implements the port of jp to asyncio, so it is now correctly using the bridge
asynchronously, and it can be used with bridges like `pb`. This also simplify the code,
notably for things which were previously implemented with many callbacks (like pagination
with RSM).
During the process, some behaviours have been modified/fixed, in jp and backends, check
diff for details.