[ejabberd] ejabberd 16.03: Experimental MIX support, LDAP, SQL and Riak improvements

Mickaël Rémond mremond at process-one.net
Wed Mar 30 19:33:33 MSK 2016

Hello all,

We have made it one more time: ejabberd development keeps on its steady
pace and we are energised by the growing momentum. Thank you all for your
feedback and contributions for that release.

This new ejabberd release contains many many bugfixes, internal
improvements, but also, as usual, some new features.

We are very excited by the experimental support for Mediated Information
eXchange (MIX) we have added in ejabberd 16.03. This is the future of Multi
User Chat for XMPP. While still rough, you can already give it a try and
help improve the specification. You can learn more from our previous blog
post: Experimental MIX Support for Group Conversations added to ejabberd:

We have also started improvements of various third-party backends such a
Microsoft SQL Server and LDAP. This is the beginning of a process to
improve support of those backend, so please, bare with us and keep us
posted on your results.

# Changes

## Protocols

- mod_mix: Experimental support for MIX (XEP-0369)
- mod_http_upload: Add support for XEP-0363 v0.2

## Core

- Use SASL PLAIN authzid as client identity if auth module permits it
- Make auto generated resources shorter
- Start ezlib only if required, as it’s optional
- Make it possible to get virtual host of a registered route

## LDAP improvements

- Fix issue getting shared roster
- Do not call to deprected/undefined functions from mod_shared_roster_ldap
- Proper naming for LDAP test function for shared roster

## SQL databases support

- New parse transform for SQL queries, use prepare/execute calls with
- Support for run-time SQL queries selection depending on DBMS version
- In SQL files create Users table with SCRAM support by default
- Do not auto append IP suffix to usernames
- Fix some LIMIT related problems with MSSQL
- Update Microsoft SQL Server schema

## Riak
- Add support for Riak authentication
- Fix is_connected/0 function
- Keep alive Riak connections by default

## API and Commands

- Add support for ReST admin commands that are only restricted by source
IP. This is key for easy integration with other backend using ReST API.
- Fix add_commands and remove_commands options
- Pass noauth when auth isn’t provided
- Improve ban_account command to work with other DBs than Mnesia
- Escape quoting node name for ejabberdctl ping
- Bare JID in ‘from’ of Roster Push (RFC 6121 section 2.1.6) in
- Fix result type of “connected_users_info” command
- New command delete_mnesia deletes all tables that can be exported. This
is useful after you have migrated to another backend, like SQL.

## PubSub

- Unregister route at the very end
- Define PubSub node configuration per route/host explicitly
- Fix config fetch and pubsub disco after host/serverhost cleanup

## Admin and build chain

- Update OTP release to use R17.5 and drop release 17.1
- Compile ejabberd_config early to stop undefined behaviour warnings
- Fix start via systemd
- Fixed type specifications for ‘rebar doc’
- Specify lacking nodename in ejabberdctl

## Dependencies

- Update p1_pgsql to 1.1.0: This add support for prepared statements.
- Uptate fast_yaml to 1.0.3: This improves the error reporting on syntax
errors in Yaml configuration file.
- Use the v0.2 release of luerl instead of a commit.

## Test framework

- Add Coveralls support
- Add ability to run the ejabberd test suite in a modular way. You can now
run the test suite, even if you only have a a single backend locally.

## Other

- mod_mam: Don’t store watchdog notifications in MAM archives
- mod_multicast: Fix Addresses element which lacked others local
- mod_offline: Mark get_queue_length obsolete, and use
- Update Gallician translation

Thank you all !

Mickaël Rémond
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.jabber.ru/pipermail/ejabberd/attachments/20160330/7462e1fd/attachment.html>

More information about the ejabberd mailing list