Commit Graph
58 Commits
Author SHA1 Message Date
louiz’ 61de6b1dac Revert "Use a different Date data type"
This reverts commit 857c7d3972.
2018-04-24 20:25:40 +02:00
louiz’ e4f111accb Remove two unused (julianday) functions 2018-04-13 23:37: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’ 9500bfd4cc Reflect message IDs in channel MUCs
fix #3283
2018-03-18 19:33:07 +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’ ba879a882e Use std::optional<bool> instead of OptionalBool 2018-03-16 01:13:50 +01:00
louiz’ 1ebd8a2321 Fix conversion warnings on 32 bits 2018-02-04 16:58:04 +01:00
louiz’ e267512ad4 Restore the is_one_of variable template 2018-01-25 02:22:19 +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’ 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’ 0168b96b79 Add postgresql support 2017-12-02 20:08:47 +01:00
louiz’ ffb402f0ad Drop support for botan < 2.0
fix #3274
2017-07-20 21:22:58 +02:00
louiz’ 4d55a120d8 Re-implement correctly the handling of failure to open the database
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-21 17:41:03 +02:00
louiz’ e75d7ad8ea Add a Record History option in the Channel configuration form
fix #3269
2017-06-16 10:48:54 +02:00
louiz’ 40db183e37 Using OptionalBool, add RecordHistoryOptional col into IrcChannelOptions table
ref #3269
2017-06-16 09:54:36 +02:00
louiz’ 8d1d822edf Explicitely close the Database before re-opening it 2017-06-14 00:19:15 +02:00
louiz’ 50cadf3dac Implement our own database ORM, and update the whole code to use it
Entirely replace LiteSQL

fix #3271
2017-06-14 00:19:15 +02:00
louiz’ 19ed2e7f5f Fix the datetime parsing to handle optional fractions of seconds
fix #3266
2017-05-23 11:46:14 +02:00
louiz’ 7b3e0e0cf3 Make botan’s policy configurable from a file
fix #3244
2017-04-30 15:14:54 +02:00
louiz’ 3238404753 Avoid adding more that one “XMPP reconnection” timed event at the same time
Fix a semblance of infinite and busy loop, that could occur if biboumi’s
poller is woken up multiple times while the XMPP server is not reachable.
2017-04-17 14:47:21 +02:00
louiz’ 68d6b82940 Properly handle multiline topics
fix #3254
2017-04-09 23:05:32 +02:00
louiz’ 8a912ea3a3 Apply a few clang-tidy cppcoreguidelines-* fixes 2017-04-07 11:10:51 +02:00
louiz’ ccb4ee098f Apply all the clang-tidy misc-* fixes 2017-04-07 18:53:12 +02:00
louiz’ 5402a256d1 Apply all the clang-tidy modernize-* fixes 2017-04-07 18:45:24 +02:00
louiz’ 1a09c965eb Remove two sneaky log_debug 2017-03-29 23:32:43 +02:00
louiz’ 28a537a90a Make things work with botan < 1.11.34 2017-03-14 21:47:09 +01:00
louiz’ 0ab40dc1ab Refactoring louloulibs and cmake
Use OBJECT libraries
Remove the louloulibs directory
Write FOUND variables in the cache
2017-03-14 21:45:23 +01:00
louiz’ e13d3fdf4d Move get_first_non_empty to louloulibs/utils 2016-08-22 21:29:22 +02:00
louiz’ 992fa93895 Add get_first_non_empty and use it into Database to simplify a little bit 2016-08-21 01:51:52 +02:00
louiz’ 24824a5015 In reload.cpp, only build the database things if litesql is used 2016-07-18 09:53:15 +02:00
louiz’ 9fb2e116c4 Move reload.*pp from louloulibs to src 2016-07-12 01:15:34 +02:00
louiz’ 81f8f45b37 Replace all include guards by #pragma once
It’s $CURRENT_YEAR
2016-07-04 17:53:53 +02:00
Florent Le Coz d600a2843f Remove all the libs that are now in louloulibs 2015-02-27 12:26:48 +01:00
Florent Le Coz c307df85c8 Do not handle the "%" char in a special way, in the fixed_server mode
Also fix some doc
2015-02-25 19:05:04 +01:00
Florent Le Coz 2df0ebf2df Add support for a fixed_irc_server configuration
This option lets the administrator choose a specific IRC server, and only
that server can be used with this biboumi instance.

In this mode, JIDs to use are changed like this:

- #chan%irc.example.com@biboumi.example.com      -> #chan@biboumi.example.com
- user!irc.example.com@biboumi.example.com       -> user!@biboumi.example.com
- #chan%irc.example.com@biboumi.example.com/Nick -> #chan@biboumi.example.com/Nick
- %irc.example.com@biboumi.example.com           -> no equivalent
- irc.example.com@biboumi.example.com            -> no equivalent
2015-02-25 18:35:30 +01:00
Florent Le Coz 7115aa3b7f Add a reload add-hoc command 2015-02-24 16:28:30 +01:00
Florent Le Coz 51c28a2dbb Fix the include guard of revstr.hpp 2015-01-26 21:12:40 +01:00
Florent Le Coz 720e31a511 Fix a few issues reported by static analyzers 2014-12-17 13:37:57 +01:00
Florent Le Coz c20bdd6879 Add utils::revstr 2014-11-12 08:13:02 +01:00
Florent Le Coz 48ed47207c Add missing <string> include in timed_events.hpp
fix #2552
2014-06-28 18:38:50 +02:00
Florent Le Coz 5c9d2c23ba TimedEventsManager is now a singleton 2014-05-30 15:51:43 +02:00
Florent Le Coz 5cca518c2d Timed events can have a name, and can be canceled based on their name 2014-05-30 15:42:01 +02:00
Florent Le Coz 5999e6e0c3 Introduce the timed events 2014-05-28 17:31:28 +02:00
Florent Le Coz 594bac1e84 Remove binary.hpp and use the c++14 feature 0b 2014-04-28 19:44:09 +02:00
Florent Le Coz c6059e5a21 Upgrade to C++14 2014-04-28 18:46:25 +02:00
Florent Le Coz d1c6d64546 Add missing stdexcept includes 2014-01-13 20:19:10 +01:00
Florent Le Coz 48b4f7b83f Remove cryptopp dependency, directly include a simple sha1 implementation 2014-01-13 20:11:36 +01:00
Florent Le Coz 3960e4d5af Functions to provide xml-valid strings
By removing invalid chars, see http://www.w3.org/TR/xml/#charsets
2013-12-15 00:34:13 +01:00
Florent Le Coz cb718def0c Put utils::tolower definition in its own cpp file 2013-12-08 18:02:24 +01:00
Florent Le Coz 1151c26c36 Channel names are case insensitive
But some servers (epiknet for example) send channel names with an uppercase
2013-11-28 02:14:42 +01:00