Converse.js v5.0.0 Release Notes

Release Date: 2019-08-08 // over 4 years ago
    • ๐Ÿšš BOSH support has been moved to a plugin.
    • ๐Ÿ‘Œ Support for XEP-0410 to check whether we're still present in a room
    • ๐ŸŽ‰ Initial support for the CredentialsContainer web API
    • ๐Ÿ‘ Allow for synchronous events. When a synchronous event is fired, Converse will wait for all promises returned by the event's handlers to finish before continuing.
    • Properly handle message correction being received before the corrected message
    • ๐Ÿ”ง Groupchat default configuration now supports list-multi fields
    • Bugfix: Don't set muc_domain for roomspanel if locked_muc_domain is true.
    • ๐Ÿ›  Bugfix: Modal auto-closes when you open it for a second time.
    • ๐Ÿ›  Bugfix: Cannot read property 'parentElement' of null in shadow DOM
    • Take roster nickname into consideration when rendering messages and chat headings.
    • Hide the textarea when a user is muted in a groupchat.
    • โช Don't restore a BOSH session without knowing the JID
    • In the /help menu, only show allowed commands
    • ๐Ÿ›  Message deduplication bugfixes and improvements
    • ๐Ÿ”ง Continuously retry (in 2s intervals) to fetch login credentials (via credentials_url) in case of failure
    • Replace moment with DayJS.
    • ๐Ÿ†• New config option auto_focus
    • New config option clear_messages_on_reconnection
    • ๐Ÿ†• New config option enable_smacks
    • ๐Ÿ†• New config option message_limit
    • New config option muc_fetch_members
    • New config option muc_mention_autocomplete_min_chars
    • ๐Ÿ‘‰ New config option muc_show_join_leave_status
    • ๐Ÿ†• New config option singleton By setting this option to false and view_mode to 'embedded', it's now possible to "embed" the full app and not just a single chat. To embed just a single chat, it's now necessary to explicitly set singleton to true.
    • ๐Ÿ”ง Re-add the previously removed config option keepalive
    • ๐Ÿ†• New event: chatBoxBlurred
    • ๐Ÿ†• New event: chatReconnected
    • ๐Ÿ‘ #316: Add support for XEP-0198 Stream Management
    • #1071: x clear cross of same size as text
    • #1142: Up/down arrow shouldn't erase current message
    • #1196: Use alternative connection method upon connfail
    • #1296: embedded view mode shows chatbox-navback arrow in header
    • #1330: Missing room name in MUC invitation popup
    • #1445: Participants list uses big font in embedded mode
    • โšก๏ธ #1455: Avatar in controlbox status-view not updated
    • #1465: When highlighting a roster contact, they're incorrectly shown as online
    • 0๏ธโƒฃ #1476: Support OMEMO on by default for chats via a config variable
    • #1494: Trim whitespace around messages
    • #1495: Mentions should always include a URI attribute
    • #1502: Fatal error when using prebind
    • ๐Ÿšฆ #1524: OMEMO libsignal-protocol.js Invalid signature
    • #1532: Converse reloads on enter pressed in the filter box
    • #1538: Allow adding self as contact
    • ๐Ÿ‘ #1548: Add support for paging through the MAM results when filling in the blanks
    • #1550: Legitimate carbons being blocked due to erroneous forgery check
    • ๐Ÿ”ง #1554: Room auto-configuration broke if the config form contained fields with type fixed
    • #1558: this.get is not a function error when forward_messages is set to true.
    • #1561: Don't call clear on local or session storage
    • #1572: In fullscreen view mode the top is cut off on iOS
    • #1575: MUC invitation autocomplete list doesn't appear
    • ๐ŸŒฒ #1576: Converse gets stuck with spinner when logging out with auto_login set to true
    • #1579: Trim spaces at the beginning and end of a JID (when adding contact)
    • #1585: Upload files by pasting from clipboard
    • #1586: Not possible to kick someone with a space in their nickname
    • #1664: Blacklisting converse-profile makes the control box totally blank

    ๐Ÿ’ฅ Breaking changes

    • ๐Ÿ— The minimum required NodeJS version for making builds is now 8.9.0
    • Rename muc_disable_moderator_commands to muc_disable_slash_commands.
    • _converse.api.archive.query now returns a Promise instead of accepting a callback functions.
    • ๐Ÿ‘ _converse.api.disco.supports now returns a Promise which resolves to a Boolean instead of an Array.
    • ๐Ÿšš The forward_messages config option (which was set to false by default) has been removed. Use message_carbons instead.
    • โœ‚ Remove the keepalive configuration setting. It is now always implicitly true.
    • Remove the expose_rid_and_sid configuration setting.
    • A prebind_url is now mandatory when setting authentication to prebind. It's no longer possible to pass in rid and sid values to `converse.initialize.
    • โœ‚ Removed events statusChanged and statusMessageChanged. Instead, you can listen on the change:status or change:status\_message events on _converse.xmppstatus.
    • #1403: Rename show_chatstate_notifications to show_chat_state_notifications

    API changes

    • _converse.chats.open and _converse.rooms.open now take a force parameter to force maximizing (in overlayed view mode) or bringing a background chat into the foreground (in fullscreen view mode). Previously this was the default behavior.
    • ๐Ÿšš _converse.api.emit has been removed in favor of _converse.api.trigger
    • โšก๏ธ _converse.updateSettings has been removed in favor of _converse.api.settings.update
    • _converse.api.roster.get now returns a promise.
    • ๐Ÿ“„ New API method _converse.api.disco.features.get
    • ๐Ÿ“„ New API method _converse.api.connection.reconnect