Commit Graph
100 Commits
Author SHA1 Message Date
louiz’ 4bd7b6981b Refactor that fixes a compilation issue in Release mode
Some template specialization were not found, because they were not declared
at the point they were used.

We moved things around, things are less inter-dependant, and also now it
works.
2018-04-13 23:35:06 +02:00
louiz’ de8267fa3f Fix a build warning when compiling without postgres or sqlite 2018-04-11 00:45:29 +02:00
louiz’ 857c7d3972 Use a different Date data type
PLEASE backup your database before testing this commit, and report any
migration issue.

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.

fix #3343
2018-04-11 00:25:18 +02:00
louiz’ 0cd848e532 Send the stanza-id for messages received by other users
fix #3347
2018-03-31 02:10:39 +02:00
louiz’ 99c364892a Fix the e2e test broken by previous commit 2018-03-26 22:34:48 +02:00
louiz’ 2fe06ffab7 build:archlinux is way too slow, run it only manually
(that is, from time to time, hope I won’t forget)
2018-03-23 21:22:53 +01:00
louiz’ d81a9456ac Change the nick of the joining user AFTER sending all the join stuff
fix #3305
2018-03-23 21:18:52 +01:00
louiz’ e2fc3cf68e Properly handle force-join presences by sending everything in return
fix #3305
2018-03-23 16:16:30 +01:00
louiz’ cdace80758 Check that db.prepare worked before using the returned statement 2018-03-23 15:54:36 +01:00
louiz’ faa33c1a71 Pass an IrcClient* to send_muc_leave instead of doing an other search 2018-03-22 20:44:30 +01:00
louiz’ 9ce0166777 Add a missing pointer check 2018-03-19 20:16:01 +01:00
louiz’ 619c991a69 Add a nick field in the IRC server configuration form
fix #3317
2018-03-19 20:15:44 +01:00
louiz’ d7427fc9ca Re-connect to postgresql when the connection is lost
fix #3336
2018-03-19 00:16:16 +01:00
louiz’ 8f74d4dd40 Update the changelog with this latest feature 2018-03-18 19:42:11 +01:00
louiz’ 1320dc6db4 Don’t reflect an empty id if it was not included
Instead, generate a uuid for that message
2018-03-18 19:41:52 +01:00
louiz’ 0de282a177 Advertise the muc#stable_id feature on disco#info results
From XEP 0045:
“Note: the requirement to reflect the 'id' attribute was added in version
1.31 of this XEP. Servers following the new specification SHOULD advertise
that with a disco info feature of 'http://jabber.org/protocol/muc#stable_id'
on both the service domain and on individual MUCs, so that clients can check
for support.”
2018-03-18 19:37:41 +01:00
louiz’ 9500bfd4cc Reflect message IDs in channel MUCs
fix #3283
2018-03-18 19:33:07 +01:00
louiz’ 68e1480075 Add a multiline_message e2e test 2018-03-18 13:55:35 +01:00
louiz’ 5af0a8040c Use a transaction around the DELETE + INSERT of the after_connection_commands
Otherwise we can imagine that two clients changing this value at the same
time would mix things up.

ref #3275
2018-03-18 02:54:34 +01:00
louiz’ c8e96fc31b Add some missing include 2018-03-18 02:35:07 +01:00
louiz’ 577984faf2 Allow the execution of multiple commands after the IRC connection
fix #3275
2018-03-18 02:31:18 +01:00
louiz’ ad7aa5b709 Use Catch2’s single_include/ directory 2018-03-18 02:12:25 +01:00
louiz’ 86f275e111 Revert "C++17"
This reverts commit 3f088e7b3a.
2018-03-17 17:28:49 +01:00
louiz’ 03714c6ceb Revert "Use std::optional<bool> instead of OptionalBool"
This reverts commit ba879a882e.
2018-03-17 17:28:47 +01:00
louiz’ d0e3c71b91 Revert "Use if constexpr to make things a lot more readable"
This reverts commit d62ca9f879.
2018-03-17 17:28:41 +01:00
louiz’ d62ca9f879 Use if constexpr to make things a lot more readable 2018-03-16 01:13:50 +01:00
louiz’ ba879a882e Use std::optional<bool> instead of OptionalBool 2018-03-16 01:13:50 +01:00
louiz’ 3f088e7b3a C++17 2018-03-16 01:13:50 +01:00
louiz’ 9b17a96187 Add a few \n in the e2e error messages 2018-03-12 01:34:24 +01:00
louiz’ 06438fe8ec Remove an unused function 2018-03-12 01:34:10 +01:00
louiz’ 8fa050abb2 Little doc typo 2018-03-12 01:12:49 +01:00
louiz’ b4a01758b0 And this one (hostname -> address)
ref #3273
2018-03-12 01:10:54 +01:00
louiz’ b3b90139db Rename a few “hostname” into “address”, regarding last commit
ref #3273
2018-03-12 01:06:15 +01:00
louiz’ bb476f4a0d Allow to override the addresses used to connect to an IRC network
fix #3273
2018-03-12 01:00:17 +01:00
louiz’ 9e4a3e2b05 Fix the INSERT query for types that don’t have any Id column 2018-03-12 00:17:03 +01:00
louiz’ bb596582bd Add a <item/> node in the presence of a leaving participant
fix #3339
2018-03-12 00:13:59 +01:00
louiz’ 158d743bf5 Remove the virtual channel feature altogether 2018-03-12 00:13:59 +01:00
louiz’ 8503d1f683 Actually display the error message from postgresql when a query failed 2018-02-16 00:58:49 +01:00
louiz’ b175084300 Log the warn/error messages coming from libpq in a correct format 2018-02-16 00:57:49 +01:00
louiz’ d3e07eee13 Sort archive messages by date (and only then by id)
fix #3337

Because apparently the IDs are not always incrementing. We still use them to
know the order of two messages that were received at the same second (in
this case, the ID will always be incrementing).
2018-02-16 00:56:07 +01:00
louiz’ dbb86bcc12 Fix the actual_bind versions for integrals 2018-02-15 16:54:54 +01:00
louiz’ 505deda176 Fix a memory leak when psql connection fails 2018-02-14 23:25:12 +01:00
louiz’ 4a2a280d76 Support the <before/> element in MAM requests 2018-02-13 03:51:03 +01:00
louiz’ 50d3c4a0b2 Do not forget an early return, to return the correct item-not-found error 2018-02-13 03:39:13 +01:00
louiz’ fd7c365288 Use the same function for both history orders 2018-02-13 03:10:00 +01:00
louiz’ fd9c713938 Fix a few warnings 2018-02-11 23:39:42 +01:00
louiz’ d705541435 Send a item-not-found error when the “after” value is not in the archive 2018-02-11 23:29:58 +01:00
louiz’ 0280343ced Handle the “after” RSM value to page through results 2018-02-10 19:51:59 +01:00
louiz’ ce1b6583e8 e2e test that the last uuid is the same as the “last” value in the iq result 2018-02-10 19:24:12 +01:00
louiz’ 99389eefba Always return the oldest matching messages from MAM, even if no date is set 2018-02-10 17:47:42 +01:00
louiz’ e0d1a0b44a Add a check for GCC’s and Clang’s minimal versions 2018-02-05 12:27:52 +01:00
louiz’ 1ebd8a2321 Fix conversion warnings on 32 bits 2018-02-04 16:58:04 +01:00
louiz’ d7cf736adb Fix argument types in declaration of send_history_message 2018-02-04 11:02:56 +01:00
louiz’ 369da19d41 Remove the debug logs from previous commit 2018-01-30 09:16:12 +01:00
louiz’ 58fd689166 Add a ifndef USE_DATABASE guard around send_history_message 2018-01-30 09:14:26 +01:00
louiz’ cb83178894 Add the complete='true' attribute only when appropriate 2018-01-30 09:07:21 +01:00
louiz’ 17f2cb5c93 Do not forget the complete='true' attribute in MAM’s result iq 2018-01-29 21:11:20 +01:00
louiz’ 7403c397ed Correctly include the database header 2018-01-28 14:20:21 +01:00
louiz’ 442f46c4ac And an other conversion warning 2018-01-28 14:15:34 +01:00
louiz’ 9bf81a2c04 This should fix the int conversion warning on 32bits arch 2018-01-28 14:10:14 +01:00
louiz’ 6e7ee320bc ci: Add Werror and Wno-psabi compiler flags 2018-01-26 01:40:26 +01:00
louiz’ ca95f89753 Add a archlinux-armv7l build 2018-01-26 01:40:26 +01:00
louiz’ e0265c81be ci: remove some useless template, directly define the jobs 2018-01-26 01:07:03 +01:00
louiz’ a209e77fc2 Rename a few CI things to a useful names 2018-01-26 00:35:32 +01:00
louiz’ 6dca27f08d Only support gcc >= 5.0 from now on 2018-01-25 02:22:19 +01:00
louiz’ e267512ad4 Restore the is_one_of variable template 2018-01-25 02:22:19 +01:00
louiz’ 3f85137265 Merge tag '7.2' 2018-01-25 02:10:17 +01:00
louiz’ 97c8e2fed3 Release version 7.2 2018-01-25 02:05:26 +01:00
louiz’ 2a2808ac62 Merge branch '3332-version-7-x-should-work-with-gcc-4-9-as-stated-in-install-file' into 'v7'
Compile with gcc 4.9

See merge request louiz/biboumi!22
2018-01-25 02:02:45 +01:00
louiz’ 33a5f1355d Remove a variable template usage
Because it’s only supported in gcc>=5.0
2018-01-25 01:22:35 +01:00
louiz’ de73a728f2 Merge tag '7.1' 2018-01-22 21:06:43 +01:00
louiz’ 23e51e814f Release version 7.1 2018-01-22 21:01:50 +01:00
louiz’ 06271729e3 Fix a crash happening when a user cancels a non-existing ad-hoc session 2018-01-22 20:57:34 +01:00
louiz’ 24b4a09d47 By the way, start version 8.0 2018-01-22 18:05:57 +01:00
louiz’ b6b4cc1b1a Remove the now useless .codecov.yml file 2018-01-18 19:37:53 +01:00
louiz’ f371d9ca46 xep-0106 escape the JIDs listed in a disco#items server query
fix #3325
2018-01-18 19:34:56 +01:00
louiz’ 6e1af8b082 Release version 7.0 2018-01-17 21:14:44 +01:00
louiz’ 5c75cd104f By the way, we were on version 7.0~dev 2018-01-17 21:10:35 +01:00
louiz’ 520711023f Use our botan gh#1276 workaround only for botan < 2.4
fix #3320
2018-01-17 20:59:38 +01:00
louiz’ 1bb3e2e7da Clarify a few things about the dependencies 2018-01-17 20:41:17 +01:00
louiz’ 7e64a2e361 Add a DEBUG_SQL_QUERIES to log info about the executed SQL queries
fix #3324
2018-01-14 21:46:49 +01:00
louiz’ 3cd6490236 Remove all the ugly database debug 2018-01-14 21:44:22 +01:00
louiz’ b4b9828de5 Follow log_level even when using journald output
fix #3328
2018-01-12 20:08:15 +01:00
louiz’ 34d6c2bce1 Don’t use codecov anymore 2018-01-12 05:41:54 +01:00
louiz’ 7c8a7176d1 Only use sd_journal_* if we really are outputing to journald
We check that the device and inode numbers are actually the same as the
JOURNAL_STREAM value, instead of just checking that the value exists.

This fixes the logger unit tests
2018-01-12 04:03:36 +01:00
louiz’ 25423ffd43 Merge branch 'patch-1' into 'master'
Change max line length to more conservative constants

See merge request louiz/biboumi!21
2018-01-10 16:10:43 +01:00
louiz’ 70ecb0f0d4 Also tabs 2018-01-02 03:17:05 +01:00
louiz’ 3230866683 Little fix to the rst formatting in INSTALL and CHANGELOG files 2018-01-02 03:13:16 +01:00
louiz’ 8409e50c1a Fix a subtle iid parsing error in the adhoc code 2017-12-27 19:36:36 +01:00
louiz’ 2d9f516d1d Don’t answer to some requests towards MUC participants
These requests are only meant to be received by the room itself. The
participant must answer with not-implemented instead.

fix #3323
2017-12-27 19:23:28 +01:00
louiz’ e4122880b5 Add a documentation to explain how to migrate from sqlite3 to postgresl
fix #3319
2017-12-27 18:53:08 +01:00
louiz’ bb2dd2b693 Update the changelogs for 7.0 2017-12-27 18:04:12 +01:00
louiz’ 131ef9946f Include the <fin><set><first/><last/></></> nodes in the MAM iq result
fix #3322
2017-12-26 20:21:18 +01:00
louiz’ 37340e593f Add a <x muc#user> node on outgoing private MUC messages
See https://xmpp.org/extensions/xep-0045.html#privatemessage

fix #3321
2017-12-26 19:52:41 +01:00
louiz’ 286aa58c7b Remove a warning (unused argument) 2017-12-17 15:21:40 +01:00
louiz’ 044a1a0c8c Use a specific (0.4.2) pyasn1 version in the debian Dockerfile 2017-12-16 20:36:15 +01:00
louiz’ ac0f96a5f4 Little update on the INSTALL.rst database doc 2017-12-16 20:35:53 +01:00
louiz’ 8713f015b1 Remove the ci deploy stop 2017-12-16 20:35:39 +01:00
louiz’ 2c4016a489 Merge branch 'postgresql' into 'master'
Add postgresql support

Closes #3237

See merge request louiz/biboumi!18
2017-12-16 16:32:32 +01:00
louiz’ b1f850b639 Update the docker images to enable postgresql, and document them 2017-12-16 16:23:07 +01:00