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.
Is there any module that provides messages logging? (just like unmaintained external mod_logdb)
What kind of logging do you need? mod_mam is not an option for you?
Adding custom tags is described here: https://github.com/processone/xmpp/issues/9
I need to put this info in some visible place instead :)
Also, make sure you have read the new XMPP library documentation: https://github.com/processone/xmpp/blob/master/README.md
If you have question on the new API, please create a github ticket with the question, it’s easy for me to track API/development questions there.
Thanks for the great service..
In older versions of ejabberd I was able to add custom tags to my messages and my user application handled those tags. But in the newer version all my custom tags were being removed by ejabberd server. I was wondering if this version supports custom tags or not?
By custom tags I meant custom fields for messages. for example I would like to have another attribute to my text messages to specify the language.
Test
on the previous versions user2 was able to get exactly the message that user1 had sent but in the newer versions of Ejabberd user2 won’t get custom tags(fields) and they only get:
Test
Thanks..
“If you have troubles using PEP or using external modules with ejabberd 17.03, upgrade to 17.04 should fix everything.”
We actually had problems with ejabberd 17.03 and PEP: OMEMO encryption (that relies on PEP) was not working. But upgrading to ejabberd 17.04 did *not* solve the problem.
Are there still open issues with PEP, or should we look for additional unrelated problems with our setup?
Or should we downgrade to 17.02..?
We are tracking a similar issue here: https://github.com/processone/ejabberd/issues/1669 – the plan is to resolve this by the time we release 17.07 in July. It’s possible a fix will be available by the end of June.
Thank you very much for the confirmation.
So, we have to decide whether we should wait or downgrade. Is there a prior version of ejabberd on which PEP/OMEMO is known to work?
If you choose to downgrade, your best chance is to try ejabberd 17.01, but if you can wait then 17.07 should fix this issue.