Biboumi 5.0

Biboumi 5.0 was just released.

You can download it on the official website, and view the full changelog.

New features

Identd server

Biboumi now provides an identd server.

Refer to the documentation to learn more.

Update MAM to version 0.6

With every message forwarded to the XMPP user, biboumi now includes the archive ID (if the message was effectively archived). This way, the clients can track the ID of the last received message, and they can retrieve the archive from this point, using a MAM request.

Persistent channels

In the previous versions, it was possible to join a unique channel from multiple clients using one single nick. It was thus possible to retrieve the missing messages from a channel, as long as at least one of the user’s clients was always connected in that channel.

It is now possible to tell biboumi to stay connected to one or more channels, even when the last resources leaves the associated room. This effectively makes biboumi act as a bouncer, and IRC is now mobile friendly!

For example, once a channel (let’s say #c++-basic%chat.freenode.net@biboumi.example.com) has been made persistent using an ad-hoc command, you can join it using the Conversations client and retrieve all the messages that you missed while you were absent. And every time you lose the connectivity (which is frequent on mobile networks), you can always catch up with the conversation.

UDNS library

The c-ares library has been replaced by UDNS. It’s still optional and only makes biboumi more responsive when a domain name is being resolved, but using UDNS instead of c-ares makes the code simpler and easier to maintain, and that dependency is also easily available on a high number platforms.

Botan’s policies configuration

Botan, the library used for TLS, uses a strict policy by default (for example it doesn’t let you connect to a server that doesn’t provide OCSP informations). This causes problems to connect to a few popular servers.

With biboumi 5.0, it’s now possible to write a custom policy for each IRC server, allowing to work-around some issues, without having to disable TLS or the certificate check entirely. See the documentation on the TLS configuration for more details.

Docker image

Biboumi can now be deployed easily using the official docker image. The image is based on alpine (to save a few MB of disk space), and it can work with a dockerized XMPP server or your existing XMPP server already running directly on the host. It includes, of course, all the optional dependencies (botan, litesql…), so you can have the best biboumi experience possible.