Latest release

Version 3.0.0 - 2017-03-05

@jcbrand jcbrand released this Mar 5, 2017 · 25 commits to master since this release

  • Breaking changes:

    • Plugins must now be whitelisted. See the whitelisted_plugins setting.
    • Callbacks for converse.on now no longer receive an event object as first parameter.
    • The API has been split into public and private parts.
      The private API methods are now only available to plugins.
      For more info, read developer API and the plugin_development documentation.
    • To prevent confusion the private, closured object, only
      available to plugins, has been renamed from converse to _converse.
      The public API is accessible via a global converse object.
    • The keepalive and roster_groups options are now set to true by default.
    • Templates are no longer stored as attributes on the _converse object. If you need a particular template, use require to load it.
  • Bugfix. After bookmarking a room for which a nickname is required, return to the nickname form. [jcbrand]

  • Show the chat states of room occupants. [jcbrand]

  • The no-jQuery build has been renamed from converse.nojquery.js to converse-no-jquery.js to fit the convention used for other build names. [jcbrand]

  • 50 is the new default archived_messages_page_size [jcbrand]

  • Better support for delayed delivery of presence stanzas (XEP-0203). [jcbrand]

  • The chat room description is now shown in the heading, not the subject. [jcbrand]

  • Chat room features are shown in the sidebar. [jcbrand]

  • Hide the chat room invite widget if the room is not open or if the room is members-only and the user is not the owner. [jcbrand]

  • Created a new non-core plugin converse-muc-embedded which embeds a single chat room into a page. An example can be found at [jcbrand]

  • Use lodash instead of underscore.js [jcbrand]

  • Case insensitive matching of moderation commands. [jcbrand]

  • Add /subject as alias to /topic [jcbrand]

  • message_carbons, play_sounds and allow_chat_pending_contacts now default to true [jcbrand]

  • Improved roster filter UX. [jcbrand]

  • Render the login form again upon authfail. [jcbrand]

  • New promises API: waitUntil [jcbrand]

  • New configuration setting: show_chatstate_notifications [jcbrand]

  • New configuration setting: whitelisted_plugins [jcbrand]

  • New configuration setting: blacklisted_plugins [jcbrand]

  • The API now no longer returns wrapped chatboxes (or rooms) but instead a Backbone.View object. This means the API of the returned object has changed. You're still able to do everything from before but now also much more. [jcbrand]

  • Allow JIDs not on the roster to be invited to a chat room. [jcbrand]

  • Bugfix. TypeError: this.sendConfiguration(...).then is not a function when
    an instant room is created. [jcbrand]

  • Ensure consistent behavior from show_controlbox_by_default [jcbrand]

  • #365 Show join/leave messages for chat rooms.
    New configuration setting: muc_show_join_leave

  • #366 Show the chat room occupant's JID in the tooltip (if you're allowed to see it). [jcbrand]

  • #610, #785 Add presence priority handling [w3host, jcbrand]

  • #620 auto_away shouldn't change the user's status if it's set to dnd. [jcbrand]

  • #694 The notification_option wasn't being used consistently. [jcbrand]

  • #745 New config option priority [jcbrand]

  • #770 Allow setting contact attrs on [Ape]

  • #790 MAM retrieval broken [jcbrand]


Version 2.0.6 - 2017-02-13

@jcbrand jcbrand released this Feb 13, 2017 · 233 commits to master since this release

  • Escape user-generated input to prevent JS-injection attacks. (Thanks to SamWhited) [jcbrand]
  • #486 Honor existing mam user configuration [throwaway42]
  • #749 /me will show your contact's name in the sent field [jcbrand]
  • #774 Browser language (fr-fr or fr) is not detected by default [jcbrand]
  • #775 Anonymous login form is a text field instead of a push button [jcbrand]


Version 1.0.7 - 2017-02-01

@jcbrand jcbrand released this Feb 1, 2017 · 462 commits to master since this release

Please note: this is a bugfix release on the 1.0.x branch. The 2.0.x branch is newer.

  • Prevent message forging via carbons. (Thanks to ge0rg) [jcbrand]


Version 2.0.5 - 2017-02-01

@jcbrand jcbrand released this Feb 1, 2017 · 233 commits to master since this release

  • #743, #751, #753 Update to Strophe 1.2.12. SASL-EXTERNAL now has reduced priority, so it won't
    be prioritized above other auth mechanisms. [jcbrand]
  • #755: create composer.json to add this project in [fabiomontefuscolo]
  • #758: Bugfix. Render all resize drag handles for ChatRoomView. [LeoYReyes]
  • #762 Allow chatting with users not in your roster. [Ape, jcbrand]
  • Bugfix. Cancel button shown while registration form is being fetched wasn't working
    properly. [jcbrand]
  • Bugfix. Login form wasn't rendered after logging out (when auto_reconnect is true). [jcbrand]
  • Bugfix. Properly disconnect upon "host-unknown" error. [jcbrand]
  • Bugfix. Minimized chats weren't removed when logging out. [jcbrand]
  • Prevent message forging via carbons. (Thanks to ge0rg) [jcbrand]


Version 2.0.4 - 2016-12-13

@jcbrand jcbrand released this Dec 13, 2016 · 255 commits to master since this release

  • #737: Bugfix. Translations weren't being applied. [jcbrand]
  • Fetch room info and store it on the room model.
    For context, see: [jcbrand]
  • Bugfix. Switching from bookmarks form to config form shows only the spinner. [jcbrand]
  • Bugfix. Other room occupants sometimes not shown when reloading the page. [jcbrand]
  • Bugfix. Due to changes in converse-core the controlbox wasn't aware anymore of
    disconnection or reconnection events. [jcbrand]
  • Optimize fetching of MAM messages (in some cases happened on each page load). [jcbrand]
  • Fix empty controlbox toggle after disconnect. [jcbrand]
  • When inviting someone to a members-only room, first add them to the member
    list. [jcbrand]
  • New configuration setting muc_disable_moderator_commands [jcbrand]


Version 2.0.3 - 2016-11-30

@jcbrand jcbrand released this Nov 30, 2016 · 300 commits to master since this release

  • #735 Room configuration button not visible. [jcbrand]
  • CSS fix for fadeIn animation. [jcbrand]


Version 2.0.2 - 2016-11-30

@jcbrand jcbrand released this Nov 30, 2016 · 303 commits to master since this release

  • #721 keepalive not working with anonymous authentication [jcbrand]
  • #723 Bugfix: Arrays in configuration settings were ignored. [jcbrand]
  • #734 Bugfix. ignored the muc_nickname_from_jid setting. [jcbrand]
  • Enable new rooms to be configured automatically, with a default config, via
    For details, refer to the relevant documentation [jcbrand]
  • Bugfix: Chatboxes aren't closed when logging out. [jcbrand]
  • Bugfix: Trying to save data on the ControlBox model before ChatBoxes
    collection has its browserStorage configured.
    Causes Error: A "url" property or function must be specified. [jcbrand]
  • Don't open the controlbox on contact requests. [jcbrand]
  • Bugfix: Reconnection fails when original connection was never established. [jcbrand]
  • If a credentials_url is provided, then keep on attempting to reconnect when connection is down. [jcbrand]
  • Remove (undocumented) callback config parameter for converse.initialize.
    Instead, converse.initialize returns a promise which will resolve once
    initialization is complete. [jcbrand]
  • New event 'reconnecting' [jcbrand]
  • New configuration setting allow_bookmarks [jcbrand]
  • The API method will no longer maximize rooms that are minimized (unless maximize: true is passed in). [jcbrand]


Version 2.0.1 - 2016-11-07

@jcbrand jcbrand released this Nov 7, 2016 · 334 commits to master since this release

  • #203 New configuration setting muc_domain [jcbrand]
  • #705 White content after submitting password on chatrooms [jcbrand]
  • #712 Controlbox clicks stop responding after auto-reconnect [jcbrand]
  • Removed shared state between tests. All tests are now isolated. [jcbrand]
  • Allow the context (i.e. this value) to be passed in when registering event
    listeners with converse.listen.on and converse.listen.once. [jcbrand]
  • New event 'rosterContactsFetched' [jcbrand]
  • New event 'rosterGroupsFetched' [jcbrand]
  • HTML templates are now loaded in the respective modules/plugins. [jcbrand]
  • Start improving Content-Security-Policy compatibility by removing inline CSS. [mathiasertl]
  • Add support for XEP-0048, chat room bookmarks [jcbrand]
  • New configuration setting connection_options [jcbrand]


Version 2.0.0 - 2016-09-16

@jcbrand jcbrand released this Sep 16, 2016 · 437 commits to master since this release

  • #656 Online users count not shown initially [amanzur]
  • #674 Polish translation updated [ser]
  • Backwards incompatible change: the _super attribute in plugins is now named __super__. [jcbrand]
  • Continuously attempt to resurrect dead connections when auto_reconnect is true. [jcbrand]
  • Update the 'rooms' API to allow user to pass in room attributes. [jcbrand]
  • Add new configuration setting message_storage [jcbrand]
  • Hardcode the storage for roster contacts and chatroom occupants to sessionStorage. [jcbrand]
  • Fixed wrong chat state value, should be chat, not chatty.
    See RFC 3921. [jcbrand]
  • Adds support for SASL-EXTERNAL. [jcbrand]


Version 1.0.6 - 2016-08-12

@jcbrand jcbrand released this Aug 12, 2016 · 462 commits to master since this release

  • #632 Offline and Logout states do not properly update once users start
    chatting. [chrisuehlinger, jcband]
  • #674 Polish translation updated to the current master. [ser]
  • #677 Chatbox does not open after close. [jcbrand]
  • The behavior of converse.chats.get has changed. If the chat box is not
    already open, then undefined will be returned. [jcbrand]
  • Typing (i.e. chat state) notifications are now also sent out from MUC rooms. [jcbrand]
  • ChatRoomView.onChatRoomMessageSubmitted has been renamed to
    onMessageSubmitted, to make it the same as the method on ChatBoxView. [jcbrand]
  • New config option muc_nickname_from_jid [jcbrand]
  • New config option muc_instant_rooms [jcbrand]