Age | Commit message (Collapse) | Author | |
---|---|---|---|
2018-04-13 | Refactor that fixes a compilation issue in Release mode | louiz’ | |
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-11 | Use a different Date data type | louiz’ | |
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-03-18 | Reflect message IDs in channel MUCs | louiz’ | |
fix #3283 | |||
2018-03-18 | Use a transaction around the DELETE + INSERT of the after_connection_commands | louiz’ | |
Otherwise we can imagine that two clients changing this value at the same time would mix things up. ref #3275 | |||
2018-03-18 | Allow the execution of multiple commands after the IRC connection | louiz’ | |
fix #3275 | |||
2018-02-16 | Sort archive messages by date (and only then by id) | louiz’ | |
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-13 | Support the <before/> element in MAM requests | louiz’ | |
2018-02-13 | Use the same function for both history orders | louiz’ | |
2018-02-10 | Handle the “after” RSM value to page through results | louiz’ | |
2018-02-10 | Always return the oldest matching messages from MAM, even if no date is set | louiz’ | |
2017-12-16 | db_name also accepts postgres:// scheme for PostgreSQL connections | louiz’ | |
2017-12-02 | Handle postgresql and sqlite3 libs properly | louiz’ | |
Do not fail to compile when one of them is missing but the other one is not. Raise an error when trying to open a database with the missing library. see #3237 | |||
2017-12-02 | Actually free the database on Database::close() | Jonas Wielicki | |
.release() returns the pointer and releases ownership *without* destruction. | |||
2017-12-02 | Support for full postgresql URIs | Jonas Wielicki | |
(cf. https://www.postgresql.org/docs/9.4/static/libpq-connect.html#LIBPQ-CONNSTRING) | |||
2017-12-02 | Add postgresql support | louiz’ | |
2017-09-21 | compat: revert to using sqlite's close() function for compat with older distros. | Romain DEP. | |
close_v2(), in use before this commit, was introduced as part of sqlite 3.7.14 (2012-09-03), and is as such incompatible with debian wheezy (3.7.13) and centos6 (3.6.20). FTR, Wheezy will be supported until May 2018, and centos6, until November 2020. | |||
2017-09-09 | Add the persistent_by_default configuration option | louiz’ | |
fix #3293 | |||
2017-08-26 | Add an index for the muc_log_line table | louiz’ | |
This immensely speeds up the archive select queries. fix #3292 | |||
2017-08-26 | Cache the encoding_in database value, to avoid doing a query for each message | louiz’ | |
2017-08-19 | Fix a sqlite3 leak when the database fails to open | louiz’ | |
2017-08-19 | Display the correct error message when we fail to open the sqlite3 db | louiz’ | |
fix #3290 | |||
2017-07-16 | Use a db roster to manage biboumi’s presence with the contacts | louiz’ | |
2017-06-23 | Move a few functions from select_query to query | louiz’ | |
2017-06-22 | Set the database pointer to nullptr after a close | louiz’ | |
2017-06-21 | Re-implement correctly the handling of failure to open the database | louiz’ | |
If we can’t open it at startup, we exit. If we can’t open it on reload, we keep the previously-opened database. This way, we’re assured to always have a valid and open database available. | |||
2017-06-16 | At startup, upgrade all database tables by adding missing columns | louiz’ | |
2017-06-14 | Implement our own database ORM, and update the whole code to use it | louiz’ | |
Entirely replace LiteSQL fix #3271 | |||
2017-03-30 | Add the archive ID to messages when they are sent to users | louiz’ | |
This makes us compatible with mam 6.0 fix #3249 | |||
2017-03-29 | Remove two sneaky log_debug | louiz’ | |
2016-12-10 | Properly convert the data into a number of seconds by using duration_cast | louiz’ | |
2016-09-29 | Look for uuid/uuid.h instead of just uuid.h | louiz’ | |
Avoids a conflict between /usr/include/uuid.h and /usr/local/include/uuid/uuid.h on freebsd | |||
2016-09-04 | MAM results can be filtered by start and end dates | louiz’ | |
2016-08-28 | Respond to MAM requests on a channel JID | louiz’ | |
At the moment, result-set-management is not implemented, the whole history (well, at most 1024 messages) is returned. | |||
2016-08-23 | If the maxHistoryLength is negative, make it 0 | louiz’ | |
Instead of doing a broken SQL request that returns weird lines | |||
2016-08-22 | When joining a channel, send the most recent history found in the database | louiz’ | |
2016-08-22 | When saving the logs, the date must be in seconds, not nanoseconds | louiz’ | |
2016-08-22 | Add a global configure ad-hoc command, with max history length | louiz’ | |
2016-08-21 | Add get_first_non_empty and use it into Database to simplify a little bit | louiz’ | |
2016-08-12 | Save received and sent messages into the database | louiz’ | |
2016-07-12 | Properly catch and handle database errors | louiz’ | |
Do not use a singleton for the database. fix #3203 | |||
2016-01-04 | Add a ChannelOptions table in the DB | Florent Le Coz | |
And a way to retrieve its values, defaulting on the ServerOptions for unset values. | |||
2015-10-29 | Remove a write to std::cout from Database’s constructor | Florent Le Coz | |
2015-10-24 | Only compile database.cpp if configured with litesql | Florent Le Coz | |
2015-09-18 | Introduce an optional Database module | Florent Le Coz | |
Uses litesql |