ejabberd 17.04
Less than a month after previous release, ejabberd 17.04 is out with bug-fixes and new features: Redis and SQL backends can now be used to store some RAM tables, the same way Mnesia is doing.
This release fixes few regressions from previous refactor. If you have troubles using PEP or using external modules with ejabberd 17.03, upgrade to 17.04 should fix everything.
Refactor efforts are still in progress. If you’re a developer, consider ‘jlib’ module as obsolete and do call common helpers (like type convertors) from the new ‘misc’ module instead.
Improvements
Admin
- Add more examples on config template
- Generate ejabberd lib dir when not available in code server
- Set default prefix to /usr/local
- Start supervisors after ext_mod
- Don’t log warning on successful ping reply
- New muc_register_nick command
Core
- Deprecate jlib.erl in favor of misc.erl
- Add support for file-based queues
- ejabberd_sm: Fix routing of headline and groupchat messages
- Fix c2s connection close on demand
- Improve overloaded S2S queue processing
Databases
- Improve Redis related code
- Add Redis pool support
- Improve logging of Redis errors
- Add Redis and SQL as mod_proxy65 RAM backends
- Add Redis and SQL as mod_carboncopy RAM backends
- Add Redis and SQL as mod_bosh RAM backends
- Add Redis and SQL as router RAM backends
- Add SQL as mod_muc RAM backend
- Remove obsolete Pubsub mnesia migration calls
Miscellany
- ejabberd_http: Expand @VERSION@ in custom headers
- ejabberd_http: Add “custom_headers” option
- mod_client_state: Queue stanzas of each full JID
- mod_http_upload: Don’t add “Server” header line
- Pubsub: Refactor pubsub’s get_last_items
- Pubsub: Fix PEP issues
Feedback
As usual, the release is tagged in the Git source code repository on Github.
The source package and binary installers are available at ejabberd XMPP & MQTT server download page.
If you suspect that you’ve found a bug, please search or fill a bug report on Github.