mam: Send “fin complete” only when appropriate
Also simplify how we did the whole “limit + 1”
And fix one bad interpretation of the XEP for the case where the query has
no after or before restriction.
Use jid.bare() instead of manual concatenation
Use the Date to find a next page in RSM, not the id
This way, it works, whatever the order of insertion in the database was.
Use a different Date data type
PLEASE backup your database before testing this commit, and report any
In postgresql, we use timestamp with timezone.
In sqlite3 we use REAL (the date is expressed as julianday)
This requires a migration of the muclogline_ table:
In postgresql it’s pretty simple, we convert all the integer into timestamps
With sqlite3, we actually rename the table, create the new one with the
correct type, then copy everything to the new table, with a conversion
function for the Date_ column, and then we delete the old table.
Send the stanza-id for messages received by other users
Properly handle force-join presences by sending everything in return
Pass an IrcClient* to send_muc_leave instead of doing an other search
Add a nick field in the IRC server configuration form
Don’t reflect an empty id if it was not included
Instead, generate a uuid for that message
Reflect message IDs in channel MUCs
Add a <item/> node in the presence of a leaving participant
Remove the virtual channel feature altogether
Use the same function for both history orders
Always return the oldest matching messages from MAM, even if no date is set
Merge branch 'postgresql' into 'master'
Add postgresql support
See merge request louiz/biboumi!18
Run some of the ci tests against a postgresql docker container