Commit 32308666 authored by louiz’'s avatar louiz’

Little fix to the rst formatting in INSTALL and CHANGELOG files

parent 8409e50c
Version 7.0 Version 7.0
=========== ===========
- Support PostgreSQL as a database backend. See below for migration tips. - Support PostgreSQL as a database backend. See below for migration tips.
- Add a workaround for a bug in botan < 2.4 where session resumption - Add a workaround for a bug in botan < 2.4 where session resumption
would sometime result in a TLS decode error would sometime result in a TLS decode error
- Add a <x xmlns="…muc#user"/> node in our private MUC messages, to help - Add a <x xmlns="…muc#user"/> node in our private MUC messages, to help
clients distinguish between MUC and non-MUC messages. clients distinguish between MUC and non-MUC messages.
- Fix the identd outgoing responses: \r\n was missing, and some clients - Fix the identd outgoing responses: `\\r\\n` was missing, and some clients
would ignore our messages entirely. would ignore our messages entirely.
- Fix the iq result sent at the end of a MAM response. Some clients (e.g. - Fix the iq result sent at the end of a MAM response. Some clients (e.g.
gajim) would throw an error as a result. gajim) would throw an error as a result.
Sqlite3 to PostgreSQL migration Sqlite3 to PostgreSQL migration
------------------------------- -------------------------------
...@@ -17,192 +17,192 @@ Sqlite3 to PostgreSQL migration ...@@ -17,192 +17,192 @@ Sqlite3 to PostgreSQL migration
If you used biboumi with the sqlite3 database backend and you want to If you used biboumi with the sqlite3 database backend and you want to
start using postgresql instead, follow these simple steps: start using postgresql instead, follow these simple steps:
- Make sure your Sqlite3 database has the correct format by running at - Make sure your Sqlite3 database has the correct format by running at
least biboumi version 6.0 against this database. Indeed: biboumi can least biboumi version 6.0 against this database. Indeed: biboumi can
upgrade your database scheme by itself automatically when it starts, but upgrade your database scheme by itself automatically when it starts, but
the migration process can only migrate from the latest known schema, the migration process can only migrate from the latest known schema,
which is the one in version 6.x and 7.x. If you are migrating from which is the one in version 6.x and 7.x. If you are migrating from
version 6.x or 7.x, you have nothing to do. version 6.x or 7.x, you have nothing to do.
- Start biboumi (at least version 7.0) with db_name configured to use - Start biboumi (at least version 7.0) with db_name configured to use
your postgresql database: this will create an empty database, create all your postgresql database: this will create an empty database, create all
the tables with all the rights columns, ready to be filled. the tables with all the rights columns, ready to be filled.
- Backup your database if you value it. The migration process will not - Backup your database if you value it. The migration process will not
write anything into it, so it your data should theorically be kept write anything into it, so it your data should theorically be kept
intact, but we never know. intact, but we never know.
- Run the dump script found in biboumi’s sources: - Run the dump script found in biboumi’s sources:
`<scripts/dump_sqlite3.sh>`_. Its first and only argument must be the path `<scripts/dump_sqlite3.sh>`_. Its first and only argument must be the path
to your sqlite3 database. For example run `./scripts/dump_sqlite3.sh to your sqlite3 database. For example run `./scripts/dump_sqlite3.sh
/var/lib/biboumi/biboumi.sqlite`. This will create, in your current /var/lib/biboumi/biboumi.sqlite`. This will create, in your current
directory, some sqlite files that contain instructions to be fed into directory, some sqlite files that contain instructions to be fed into
postgresql. postgresql.
- Import all the ouput files thusly created into your PostgreSQL, with - Import all the ouput files thusly created into your PostgreSQL, with
something like this: `psql postgresql://user@password/biboumi < *.sql`. something like this: `psql postgresql://user@password/biboumi < *.sql`.
This takes a few minutes if your database is huge (if it contains many This takes a few minutes if your database is huge (if it contains many
archived messages). archived messages).
Version 6.1 - 2017-10-04 Version 6.1 - 2017-10-04
======================== ========================
- Fix compilation with botan 2.3 - Fix compilation with botan 2.3
- Fix compilation with very old distributions (such as debian wheezy or - Fix compilation with very old distributions (such as debian wheezy or
centos 6) that ship antique softwares (sqlite3 < 3.7.14) centos 6) that ship antique softwares (sqlite3 < 3.7.14)
Version 6.0 - 2017-09-17 Version 6.0 - 2017-09-17
======================== ========================
- The LiteSQL dependency was removed. Only libsqlite3 is now necessary - The LiteSQL dependency was removed. Only libsqlite3 is now necessary
to work with the database. to work with the database.
- Some JIDs can be added into users’ rosters. The component JID tells if - Some JIDs can be added into users’ rosters. The component JID tells if
biboumi is started or not, and the IRC-server JIDs tell if the user is biboumi is started or not, and the IRC-server JIDs tell if the user is
currently connected to that server. currently connected to that server.
- The RecordHistory option can now also be configured for each IRC channel, - The RecordHistory option can now also be configured for each IRC channel,
individually. individually.
- Add a global option to make all channels persistent. - Add a global option to make all channels persistent.
- The persistent_by_default configuration option has been added, this - The persistent_by_default configuration option has been added, this
lets the administrator decide whether or not the rooms should be lets the administrator decide whether or not the rooms should be
persistent or not by default, for all users. persistent or not by default, for all users.
- Status code='332' is sent with the unavailable presences when biboumi is - Status code='332' is sent with the unavailable presences when biboumi is
being shutdown or the connection to the IRC server is cut unexpectedly. being shutdown or the connection to the IRC server is cut unexpectedly.
- Support for botan version 1.11.x has been dropped, only version 2.x is - Support for botan version 1.11.x has been dropped, only version 2.x is
supported. supported.
- Invitations can now be sent to any JID, not only JIDs served by the biboumi - Invitations can now be sent to any JID, not only JIDs served by the biboumi
instance itself. instance itself.
- The history limits sent by the client when they request to join a - The history limits sent by the client when they request to join a
channel is now supported. channel is now supported.
Version 5.0 - 2017-05-24 Version 5.0 - 2017-05-24
======================== ========================
- An identd server has been added. - An identd server has been added.
- Add a **persistent** option for channels. When a channel is configured - Add a **persistent** option for channels. When a channel is configured
as persistent, when the user leaves the room, biboumi stays idle and keeps as persistent, when the user leaves the room, biboumi stays idle and keeps
saving the received messages in the archive, instead of leaving the channel saving the received messages in the archive, instead of leaving the channel
entirely. When the user re-joins the room later, biboumi sends the message entirely. When the user re-joins the room later, biboumi sends the message
history to her/him. This feature can be used to make biboumi behave like history to her/him. This feature can be used to make biboumi behave like
an IRC bouncer. an IRC bouncer.
- Use the udns library instead of c-ares, for asynchronous DNS resolution. - Use the udns library instead of c-ares, for asynchronous DNS resolution.
It’s still fully optional. It’s still fully optional.
- Update MAM implementation to version 6.0 (namespace mam:2) - Update MAM implementation to version 6.0 (namespace mam:2)
- If the client doesn’t specify any limit in its MAM and channel list request, - If the client doesn’t specify any limit in its MAM and channel list request,
the results returned by biboumi contain at most 100 messages, instead of the results returned by biboumi contain at most 100 messages, instead of
the potentially huge complete result. the potentially huge complete result.
- Multiline topics are now properly handled - Multiline topics are now properly handled
- Configuration options can be overridden by values found in the process env. - Configuration options can be overridden by values found in the process env.
- Botan’s TLS policies can be customized by the administrator, for each - Botan’s TLS policies can be customized by the administrator, for each
IRC server, with simple text files. IRC server, with simple text files.
- The IRC channel configuration form is now also available using the MUC - The IRC channel configuration form is now also available using the MUC
configuration, in addition to the ad-hoc command. configuration, in addition to the ad-hoc command.
- Notices starting with [#channel] are considered as welcome messages coming - Notices starting with [#channel] are considered as welcome messages coming
from that channel, instead of private messages. from that channel, instead of private messages.
Version 4.3 - 2017-05-02 Version 4.3 - 2017-05-02
======================== ========================
- Fix a segmentation fault that occured when trying to connect to an IRC - Fix a segmentation fault that occured when trying to connect to an IRC
server without any port configured. server without any port configured.
Version 4.2 - 2017-04-26 Version 4.2 - 2017-04-26
======================== ========================
- Fix a build issue when LiteSQL is absent from the system - Fix a build issue when LiteSQL is absent from the system
Version 4.1 - 2017-03-21 Version 4.1 - 2017-03-21
======================== ========================
- Works with botan 2.x, as well as botan 1.11.x - Works with botan 2.x, as well as botan 1.11.x
Version 4.0 - 2016-11-09 Version 4.0 - 2016-11-09
======================== ========================
- The separator between the IRC nickname and the IRC server is now '%' - The separator between the IRC nickname and the IRC server is now '%'
instead of '!'. This makes things simpler (only one separator to instead of '!'. This makes things simpler (only one separator to
remember). The distinction between a JID referring to a channel and a JID remember). The distinction between a JID referring to a channel and a JID
refering to a nickname is based on the first character (# or & by refering to a nickname is based on the first character (# or & by
default, but this can be customized by the server with the ISUPPORT default, but this can be customized by the server with the ISUPPORT
extension). extension).
- Handle channel invitations in both directions. - Handle channel invitations in both directions.
- Add support for `JID escaping <.http://www.xmpp.org/extensions/xep-0106.html>`. - Add support for `JID escaping <.http://www.xmpp.org/extensions/xep-0106.html>`.
- Save all channel messages into the database, with an ad-hoc option to - Save all channel messages into the database, with an ad-hoc option to
disable this feature. disable this feature.
- When joining a room, biboumi sends an history of the most recents messages - When joining a room, biboumi sends an history of the most recents messages
found in the database. found in the database.
- Channel history can be retrieved using Message Archive Management. - Channel history can be retrieved using Message Archive Management.
- Result Set Management can be used to request only parts of the IRC channel - Result Set Management can be used to request only parts of the IRC channel
list. list.
Version 3.0 - 2016-08-03 Version 3.0 - 2016-08-03
======================== ========================
- Support multiple-nick sessions: a user can join an IRC channel behind - Support multiple-nick sessions: a user can join an IRC channel behind
one single nick, using multiple different clients, at the same time (as one single nick, using multiple different clients, at the same time (as
long as each client is using the same bare JID). long as each client is using the same bare JID).
- Database support for persistant per-user per-server configuration. Add - Database support for persistant per-user per-server configuration. Add
`LiteSQL <https://dev.louiz.org/projects/litesql>` as an optional `LiteSQL <https://dev.louiz.org/projects/litesql>` as an optional
dependency. dependency.
- Add ad-hoc commands that lets each user configure various things - Add ad-hoc commands that lets each user configure various things
- Support an after-connect command that will be sent to the server - Support an after-connect command that will be sent to the server
just after the user gets connected to it. just after the user gets connected to it.
- Support the sending of a PASS command. - Support the sending of a PASS command.
- Lets the users configure their username and realname, if the - Lets the users configure their username and realname, if the
realname_customization is set to true. realname_customization is set to true.
- The remote TLS certificates are checked against the system’s trusted - The remote TLS certificates are checked against the system’s trusted
CAs, unless the user used the configuration option that ignores these CAs, unless the user used the configuration option that ignores these
checks. checks.
- Lets the user set a sha-1 hash to identify a server certificate that - Lets the user set a sha-1 hash to identify a server certificate that
should always be trusted. should always be trusted.
- Add an outgoing_bind option. - Add an outgoing_bind option.
- Add an ad-hoc command to forcefully disconnect a user from one or - Add an ad-hoc command to forcefully disconnect a user from one or
more servers. more servers.
- Let the user configure the incoming encoding of an IRC server (the - Let the user configure the incoming encoding of an IRC server (the
default behaviour remains unchanged: check if it’s valid utf-8 and if default behaviour remains unchanged: check if it’s valid utf-8 and if
not, decode as latin-1). not, decode as latin-1).
- Support `multi-prefix <http://ircv3.net/specs/extensions/multi-prefix-3.1.html>`. - Support `multi-prefix <http://ircv3.net/specs/extensions/multi-prefix-3.1.html>`.
- And of course, many bufixes. - And of course, many bufixes.
- Run unit tests and a test suite, build the RPM and check many things - Run unit tests and a test suite, build the RPM and check many things
automatically using gitlab-ci. automatically using gitlab-ci.
Version 2.0 - 2015-05-29 Version 2.0 - 2015-05-29
======================== ========================
- List channels on an IRC server through an XMPP disco items request - List channels on an IRC server through an XMPP disco items request
- Let the user send any arbitrary raw IRC command by sending a - Let the user send any arbitrary raw IRC command by sending a
message to the IRC server’s JID. message to the IRC server’s JID.
- By default, look for the configuration file as per the XDG - By default, look for the configuration file as per the XDG
basedir spec. basedir spec.
- Support PING requests in all directions. - Support PING requests in all directions.
- Improve the way we forward received NOTICEs by remembering to - Improve the way we forward received NOTICEs by remembering to
which users we previously sent a private message. This improves the which users we previously sent a private message. This improves the
user experience when talking to NickServ. user experience when talking to NickServ.
- Support joining key-protected channels - Support joining key-protected channels
- Setting a participant's role/affiliation now results in a change of IRC - Setting a participant's role/affiliation now results in a change of IRC
mode, instead of being ignored. Setting Toto's affiliation to admin is mode, instead of being ignored. Setting Toto's affiliation to admin is
now equivalent to “/mode +o Toto” now equivalent to “/mode +o Toto”
- Fix the reconnection to the XMPP server to try every 2 seconds - Fix the reconnection to the XMPP server to try every 2 seconds
instead of immediately. This avoid hogging resources for nothing instead of immediately. This avoid hogging resources for nothing
- Asynchronously resolve domain names by optionally using the DNS - Asynchronously resolve domain names by optionally using the DNS
library c-ares. library c-ares.
- Add a reload add-hoc command, to reload biboumi's configuration - Add a reload add-hoc command, to reload biboumi's configuration
- Add a fixed_irc_server option. With this option enabled, - Add a fixed_irc_server option. With this option enabled,
biboumi can only connect to the one single IRC server configured biboumi can only connect to the one single IRC server configured
Version 1.1 - 2014-07-16 Version 1.1 - 2014-07-16
======================== ========================
- Fix a segmentation fault when connecting to an IRC server using IPv6 - Fix a segmentation fault when connecting to an IRC server using IPv6
Version 1.0 - 2014-07-12 Version 1.0 - 2014-07-12
======================== ========================
- First stable release. - First stable release.
- Mostly complete MUC to IRC, and IRC to MUC support - Mostly complete MUC to IRC, and IRC to MUC support
- Complete handling of private messages - Complete handling of private messages
- Full IRC modes support: setting any IRC mode, and receiving notifications - Full IRC modes support: setting any IRC mode, and receiving notifications
for every mode change for every mode change
- Verbose connection status notifications - Verbose connection status notifications
- Conversion from IRC formatting to XHTML-im - Conversion from IRC formatting to XHTML-im
- Ad-hoc commands support - Ad-hoc commands support
- Basic TLS support: auto-accepts all certificates, no cipher - Basic TLS support: auto-accepts all certificates, no cipher
configuration, no way to force usage of TLS (it is used only if configuration, no way to force usage of TLS (it is used only if
available, clear connection is automatically used as a fallback) available, clear connection is automatically used as a fallback)
- IPv6 support - IPv6 support
...@@ -32,9 +32,7 @@ libiconv_ ...@@ -32,9 +32,7 @@ libiconv_
libuuid_ libuuid_
Generate unique IDs Generate unique IDs
sqlite3_ sqlite3_ or libpq_
or
libpq_
Provides a way to store various options and messages archives in a Provides a way to store various options and messages archives in a
database. Each user of the gateway can store their own values (for database. Each user of the gateway can store their own values (for
example their prefered port, or their IRC password). Without this example their prefered port, or their IRC password). Without this
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment