ejabberd v21.04 Release Notes

  • API Commands:

    • add_rosteritem/...: Add argument guards to roster commands
    • 👉 get_user_subscriptions: New command for MUC/Sub
    • remove_mam_for_user_with_peer: Fix when removing room archive
    • send_message: Fix bug introduced in ejabberd 21.01
    • set_vcard: Return modules errors

    🏗 Build and setup:

    • 👍 Allow ejabberd to be compatible as a dependency for an Erlang project using rebar3
    • CAPTCHA: New question/answer-based CAPTCHA script
    • 🔧 --enable-lua: new configure option for luerl instead of --enable-tools
    • ✂ Remove support for HiPE, it was experimental and Erlang/OTP 24 removes it
    • ⚡️ Update sql_query record to handle the Erlang/OTP 24 compiler reports
    • ⚡️ Updated dependencies to fix Dialyzer warnings

    Miscellaneous:

    • ⚡️ CAPTCHA: Update FORM_TYPE from captcha to register
    • LDAP: fix eldap certificate verification
    • MySQL: Fix for "specified key was too long"
    • ⚡️ Translations: updated the Esperanto, Greek, and Japanese translations
    • Websocket: Fix PONG responses

    Modules:

    • mod_block_strangers: If stanza is type error, allow it passing
    • mod_caps: Don't request roster when not needed
    • mod_caps: Skip reading roster in one more case
    • 🚚 mod_mam: Remove queryid from MAM fin element
    • mod_mqtt: When deregistering XMPP account, close its MQTT sessions
    • mod_muc: Take in account subscriber's affiliation when checking access to moderated room
    • mod_muc: Use monitors to track online and hard-killed rooms
    • 🚚 mod_muc: When occupant is banned, remove his subscriptions too
    • mod_privacy: Make fetching roster lazy
    • mod_pubsub: Don't fail on PEP unsubscribe
    • mod_pubsub: Fix gen_pubsub_node:get_state return value
    • mod_vcard: Obtain and provide photo type in vCard LDAP