docs.ejabberd.im

ejabberd Roadmap


In the Works

  • Nothing to mention here right now

Planned

  • Set as default automatic SQL schema update

    Automatic SQL schema update was included as a beta-testing feature in ejabberd 23.10 (see the feature announcement), and it will become the default

  • 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

2023

2022

  • 22.10

    • Improved MIX support
    • Improved SQL reconnection Mechanism
    • Better burst traffix handling
  • 22.05

    • Improved MQTT, MUC and ConverseJS integration
    • New installers and container image
    • Support for Erlang/OTP 25

2021

2020

2019

  • 19.09

    • Significant improvements in ACME support: ACME v2
    • Erlang/OTP 19.3 is required
  • 19.08

    • New JWT (JSON Web Token) authentication
    • New configuration validator, yconf
    • Improved MUC scalability
    • Removed Riak support
  • 19.05

    • MQTT over WebSocket
    • Improved MucSub
    • Erlang/OTP 19.1 is required
  • 19.02

    • MQTT Support
    • MIX improvements

2018

  • 18.12

    • XML Compression in message archive storage
    • PROXY protocol support versions 1 and 2
    • MUC Self-Ping server optimisation (XEP-0410)
    • Bookmarks Conversion (XEP-0411)
  • 18.09

    • Default configuration file simplification
    • Improved logging
    • OpenSSL 1.1.1 support
    • Modular ejabberd core
  • 18.06

    • Stop ejabberd initialization on invalid/unknown options
    • Support SASL PLAIN
    • Drop support of mod_irc
  • 18.04

  • 18.03

    • New SQL schemas with server_host
  • 18.01

2017

  • 17.12

    • SNI (Server Name Indication) for inbound connections
    • Rewrite ejabberd system monitor
    • Support PubSub v1.14 and OMEMO
  • 17.11

    • ACME Support
    • Introduce ‘certfiles’ global option
    • PubSub improved, and SQL storage
  • 17.09

    • New mod_avatar
    • SRV for XMPP over TLS
  • 17.08

    • XEP-0357: Push Notifications
    • Modular cluster with cluster_backend
  • 17.07

  • 17.06

    • New Caching system
    • Extended Riak support
    • Certificate manager
  • 17.04

  • 17.03

    • Modular code
    • Dynamic configuration reload
    • mod_blockstrangers for spam protection
    • S2S dialback
  • 17.01

    • PostgreSQL SSL support

2016

  • 16.12

    • New BOSH module
    • New Commands API permissions framework
    • XMPP packet handling using dedicated xmpp erlang library
    • New ejaberd/mix Docker container
  • 16.09

    • Support for Elixir configuration file
    • XEP-0355 Namespace Delegation
    • XEP-0356 Privileged Entity
  • 16.08

    • New MUC/Sub
    • Improved Elixir support
    • Major clean-up and improvement on OAuth ReST API
  • 16.06

    • New ACL (Access Control List) infrastructure
  • 16.04

  • 16.03

  • 16.02

    • 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
  • 16.01

2015

2014

  • 14.12

    • New mod_client_state with XEP-0352: Client State Indication
    • New mod_fail2ban
  • 14.07

    • SIP Outbound (RFC 5626)
  • 14.05

    • 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

2012

  • 2.1.11
    • Added ODBC support for several modules

2011

  • 2.1.10

  • 2.1.9

    • New SASL SCRAM-SHA-1 authentication mechanism

2010

  • 2.1.6

    • 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

  • 2.1.5

  • 2.1.4

    • Full support for XEP-0115 Entity Capabilities v1.5
  • 2.1.2

2009

2007

2006

  • 1.1.2 (announcement)

    • LDAP improvements
    • Microsoft SQL supported
    • New Windows installer
  • 1.1.1 (announcement)

    • Erlang/OTP R9C-2 required
  • 1.1.0 (announcement)

    • JEP-0050: Ad-Hoc Commands
    • JEP-0138: Stream Compression
    • JEP-0175: SASL anonymous
    • Native MySQL support
    • MUC improvement: Chatroom logging

2005

  • 1.0.0 (announcement)

    • 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
  • 0.9.8 (announcement)

    • Enhanced virtual hosting
    • Enhanced PubSub
  • 0.9.1 (announcement)

  • 0.9 (announcement)

    • 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

  • 0.7.5

    • 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
  • 0.7

    • 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

2002

  • 18th November, first commit to CVS

  • 16th November, first erlang modules written