These tests require that fixed_irc_server is set, and will fail if
another test sets them.
This may not have been a problem before, but since the catch2 update CI
has encountered issues running these tests randomly, as the order of
which tests are ran in is now random.
since fedora does not package botan3 yet, we would be stuck with a
non-TLS biboumi which cannot run the e2e tests as well as provide no
security whatsoever.
On IRC it is confusing when an XMPP user "corrects" a message, but on
the other side a new message is sent. To prevent spam and confusion, do
not allow message corrections at all, and instead return an error if
attempted.
Fixes: #3436Fixes: #3480
RFC 2812 specifies in §1.3 that “Channels names are strings (beginning
with a '&', '#', '+' or '!' character) of length up to fifty (50)
characters.”
We previously only allowed the first two prefix characters, or any other
one if the server overrides the list with ISUPPORT.
The botan dependency has introduced a number of breaking changes with
version 3, a couple of which impact biboumi as well
This patch makes biboumi compatible with botan 3 and drops support for
botan 2 at the same time
As a consequence of the botan dependency update, C++ version has to be
upgraded to C++ 20
https://botan.randombit.net/handbook/migration_guide.html
This reverts commit 248e25c22f.
In preparation for the botan 3 update `IrcClient` must be made into a
`shared_ptr`, which will then allow us to pass a `shared_ptr` of
callbacks to `Botan::TLS::Client`
While cmake does need all of biboumi's dependencies to generate
documentation, there is an existing Makefile which does not. So we can
save some time by not downloading as many dependencies
To fully automate deployment of documentation pages to codeberg pages a
woodpecker CI file containing the build instruction is made.
This needs to install all of biboumi's dependencies as to work with
cmake, then generate the makefiles, and finally the actual documentation
as HTML.
Once that's done, push everything to a `pages` branch.