ejabberd Roadmap¶
In the Works¶
Planned¶
-
Remove support for Rebar2
ejabberd includes many tweaks to support rebar3 and rebar2. By removing support for rebar2, we could simplify rebar.config and other files a lot. But more importantly, dependencies would not need to be updated just because other dependencies are updated: Rebar2 requires exact version numbers to be provided, Rebar3 doesn't require that, and neither does Mix.
Released¶
2024¶
-
- New module mod_s2s_bidi
- New module mod_scram_upgrade
- IQ permission in privileged entities
- PubSub varied fixes
- WebAdmin improvements
-
- Bugfixes and minor improvements
-
- Reworked the ejabberd Docs and moved to MkDocs+Material
- Automatic SQL schema is now enabled by default
- Improved the ejabberd WebAdmin with support to use API commands
- Support for UNIX Socket Domain in MySQL and PostgreSQL
- Support Elixir 1.17 and Erlang/OTP 27.0
-
- Matrix gateway
- RFC 9266 Channel Bindings for TLS 1.3
- XEP-0386: Bind 2
- XEP-0388: Extensible SASL Profile (SASL2)
- XEP-0424: Message Retraction
- XEP-0440: SASL Channel-Binding Type Capability
- XEP-0474: SASL SCRAM Downgrade Protection
- XEP-0480: SASL Upgrade Tasks
- Automatic SQL schema creation and update
- Commands API versioning
- Support Elixir 1.16 and Erlang/OTP 27.0-rc1
2023¶
-
- Support for XEP-0402: PEP Native Bookmarks
- Support for XEP-0421: Occupant Id
- MySQL Performance enhancements
-
mod_mam
support for XEP-0425: Message Moderation- New
mod_muc_rtbl
: Real-Time Block List for MUC rooms - Binaries use Erlang/OTP 25.3, and changes in containers
-
- New
mod_mqtt_bridge
: MQTT bridge
- New
2022¶
-
- Improved MIX support
- Improved SQL reconnection Mechanism
- Better burst traffix handling
-
- Improved MQTT, MUC and ConverseJS integration
- New installers and container image
- Support for Erlang/OTP 25
2021¶
-
- New
mod_conversejs
: built-in ConverseJS web client - Support for MUC Hats extension
- PubSub, MucSub and Multicast improvements
- New
-
- Improved database and caching for shared rosters
- Broader multicast support for MUC
- Improved rebar3 and Elixir support
-
- Full support for Erlang/OTP 24 and rebar3
- New API commands
- New CAPTCHA script
-
- Systemd watchdog support
- STUN improvements
2020¶
-
- Extended SCRAM-SHA support
- Microsoft ODBC Driver support
-
- Support for Unix Domain Sockets
- Erlang/OTP 23 compatibility
-
- New
mod_stun_disco
: support XEP-0215 including Audio/Video calls - Improved MS SQL support
- New
-
- SSL connection to MySQL
- Improved performance of
mod_shared_roster
-
- Improved compatibility with CockroachDB
- Emoji storage in MSSQL
-
- OAuth support for ejabberd's MQTT
- New OTP 22 event logger
- New config parser & validator
2019¶
-
- Significant improvements in ACME support: ACME v2
- Erlang/OTP 19.3 is required
-
- New JWT (JSON Web Token) authentication
- New configuration validator, yconf
- Improved MUC scalability
- Removed Riak support
-
- MQTT over WebSocket
- Improved MucSub
- Erlang/OTP 19.1 is required
-
- MQTT Support
- MIX improvements
2018¶
-
- XML Compression in message archive storage
- PROXY protocol support versions 1 and 2
- MUC Self-Ping server optimisation (XEP-0410)
- Bookmarks Conversion (XEP-0411)
-
- Default configuration file simplification
- Improved logging
- OpenSSL 1.1.1 support
- Modular ejabberd core
-
- Stop ejabberd initialization on invalid/unknown options
- Support SASL PLAIN
- Drop support of mod_irc
-
- New SQL schemas with server_host
2017¶
-
- SNI (Server Name Indication) for inbound connections
- Rewrite ejabberd system monitor
- Support PubSub v1.14 and OMEMO
-
- ACME Support
- Introduce ‘certfiles’ global option
- PubSub improved, and SQL storage
-
- New mod_avatar
- SRV for XMPP over TLS
-
- XEP-0357: Push Notifications
- Modular cluster with cluster_backend
-
- New Caching system
- Extended Riak support
- Certificate manager
-
- Modular code
- Dynamic configuration reload
- mod_blockstrangers for spam protection
- S2S dialback
-
- PostgreSQL SSL support
2016¶
-
- New BOSH module
- New Commands API permissions framework
- XMPP packet handling using dedicated
xmpp
erlang library - New ejaberd/mix Docker container
-
- Support for Elixir configuration file
- XEP-0355 Namespace Delegation
- XEP-0356 Privileged Entity
-
- New MUC/Sub
- Improved Elixir support
- Major clean-up and improvement on OAuth ReST API
-
- New ACL (Access Control List) infrastructure
-
- Experimental support for MIX (Mediated Information eXchange)
- Erlang/OTP 17.5 required
-
- XEP-0013 Flexible Offline Message Retrieval
- Improved Message Archive Management (MAM)
- Published ejabberd on hex.pm
- Faster and more memory efficient XML parsing and TLS encryption.
- Stream compression after SASL
- Migration script from Prosody
2015¶
-
- Improved
join_cluster
andleave_cluster
- Improved
-
- New mod_http_upload with support for XEP-0363 HTTP File Upload
- Added support for Grapherl
-
- OAuth 2.0 delegation framework
- Preliminary OAuth and HTTP based ejabberd API
- X-AUTH2 authentication mechanism
-
- New mod_mam with XEP-0313 Message Archive Management
- Configuration checking on launch
- Added Windows 7/8 installers, RPM and DEB packages
- Document protocol support and version inside each module
-
- Added mod_admin_extra and mod_muc_admin
- Added XEP-0033 Extended Stanza Addressing
- Support to embed ejabberd in an Elixir app
- Erlang/OTP R16B03-1 is required
-
- Added support for WebSocket
- Customizable session backends
- SCRAM support for SQL authentication backend
- Documentation was converted from LaTeX to Markdown and published in docs.ejabberd.im/
-
- Added Elixir support
- New command to reload configuration withour restart
- Bug tracker moves from JIRA to GitHub Issues
-
Revamped ejabberd website, new logo, new development process and bugtracking migrated from JIRA to GitHub
2014¶
-
- New mod_client_state with XEP-0352: Client State Indication
- New mod_fail2ban
-
- SIP Outbound (RFC 5626)
-
- RFC-3261 SIP proxy/registrar
- RFC-5766 TURN: Traversal Using Relays around NAT
- XEP-0198 Stream Management
- XEP-0321 Remote Roster Management
- Several improvements regarding encryption
- New Bash completion script for ejabberdctl
2013¶
-
- New OpenSSL ciphers option in c2s, s2s and s2s_out
- ejabberd_xmlrpc included
-
- ejabberd configuration file in YAML format
- Log files are created using Lager
- Rebar2 is used to manage dependencies
- Erlang/OTP R15 is required
-
- Binarize and indent code
- New versioning scheme
2012¶
- 2.1.11
- Added ODBC support for several modules
2011¶
2010¶
-
- mod_register: New captcha_protected option to require CAPTCHA
- Support PostgreSQL 9.0
-
October: the source code repository and the bug tracker were finally moved to GitHub
-
- Full support for XEP-0115 Entity Capabilities v1.5
2009¶
-
- LDAPS support
- STUN server
- New XEPs supported: XMPP Ping, Roster Versioning, Import/Export Format
- Erlang/OTP R13 is supported
2008¶
-
- New front-end and back-end cluster architecture
- Complete rewrite of the PubSub module
- New Proxy65 file transfer proxy
- BOSH support
- Many more improvements
2007¶
2006¶
-
- LDAP improvements
- Microsoft SQL supported
- New Windows installer
-
- Erlang/OTP R9C-2 required
-
- JEP-0050: Ad-Hoc Commands
- JEP-0138: Stream Compression
- JEP-0175: SASL anonymous
- Native MySQL support
- MUC improvement: Chatroom logging
2005¶
-
- S2S encryption: STARTTLS + SASL_EXTERNAL and STARTTLS + Dialback
- Different certificates can be defined for each virtual host.
- Support for vCard storage in ODBC
- New tool to convert Mnesia to ODBC
- Native PostgreSQL support
-
- Enhanced virtual hosting
- Enhanced PubSub
-
- Added support for virtual hosts
- New mod_shared_roster
- Added PostgreSQL support
-
February: source code moved from SVN to Git, and the bug tracker from Bugzilla to JIRA
-
Beginning of 2005, source code moved from JabberStudio CVS to ProcessOne SVN
2004¶
-
October: website moved from JabberStudio to ejabberd.jabber.ru, and the bug tracker to Jabber.ru’s Bugzilla
-
- Support for STARTTLS with C2S connections
- Support for authentification via external script
- Added module which implement JUD and vCard services using LDAP
- Improvements in web-based administration interface (user creation/removal, roster and offline queue management)
- Support for message expiration (JEP-0023)
- Support for HTTPS in web interface
-
- Support for LDAP authentification
- Support for HTTP Polling
- Support for web-based administration interface
- Added command-line administration utility "ejabberdctl"
- Support for history management in MUC rooms
2003¶
-
16th November, 0.5
- First release
-
January, initial documentation in LaTeX: Ejabberd Installation and Operation Guide
2002¶
-
18th November, first commit to CVS
-
16th November, first erlang modules written