Skip to content
This repository has been archived by the owner on Nov 21, 2024. It is now read-only.

v1.6.0 - fix escaping, nickname change & websockets support

Compare
Choose a tag to compare
@mweibel mweibel released this 20 Jan 06:07
· 319 commits to master since this release

This new major release brings various bugfixes and new features, tested with 3 betas in the last 2 weeks. It's a combined effort of a lot of Candy users and contributors. Thank you all.

Please note that are some new translation strings. English and German are always up to date but there are untranslated strings in other languages. Please submit pull requests in order to add them. In the future, we think about improving this process (as part of #207).

When upgrading please make sure that you upgrade all the plugins as well.

New features

Nickname change support

  • Changing nicknames is now possible, as well as receiving nickname changes (#2)
  • Using the nickchange plugin, you can enable your users with a friendly toolbar icon to change their nicknames
  • Server-side nick assignments are now also possible, thanks to @PaulSD (#208)

Websocket support

  • With the upgrade to Strophe version 1.1.1, it's possible to connect to a websocket endpoint
  • In order to use websockets, just supply a ws:// or wss:// URL as the first parameter of Candy.init()

Bugfixes & Tweaks

Escaping

Throughout Candy it should be now possible to use rooms and nicknames with non-ASCII chars.

Other

  • Support specifying resource as a config param (#209 / #199, thanks @PaulSD)
  • New event candy:view.connection.status-<STROPHE-STATUS> is triggered when strophe status changes happen. This enables users to e.g. reload the page when a disconnection happens (#202, thanks @lkraav)
  • Update example with more helpful hints (fixes #203 & #211, thanks @lkraav & @michael-dev)
  • Fix nickname conflict label
  • Support jQuery >= 1.9
  • Display error message if autojoin config param is empty
  • Add ARIA label to text field (fixes #182, thanks @jrbl)
  • Linkify subject by default (fixes #196)
  • New Brazilian portuguese translation (fixes #143, thanks @renato)
  • Fix privacy list error dection for Prosody (fixes #200)
  • New event trigger before connecting which enables Plugins to reliably create stanza handlers
  • Remove deprecated event system
  • New CONTRIBUTING.md file to help new contributors
  • Add sourcemap support for candy.bundle.js
  • Fix Candy.Core.log to be able to display the original line number instead of the line number of the log function

Various

Build tool change

We replaced the existing build tool with Grunt. This should make contributing much easier (especially also for windows users). In order to contribute to Candy, please read CONTRIBUTING.md. If you're already familiar with grunt, these are the commands available:

  • grunt watch watches the filesystem for changes, runs jshint on the changed files and if no errors are there, runs concat and uglify to build candy.bundle.js and candy.min.js.
  • grunt jshint runs jshint with our defined rules
  • grunt concat concats source files and library files to candy.bundle.js and libs.bundle.js
  • grunt uglify minifies bundles to candy.min.js and libs.min.js
  • grunt docs regenerates documentation

All grunt tasks should notify you (if supported by the OS you're on) if the task is finished.

As usual, if you discover bugs, open an issue and if you have questions, ask in our mailinglist (no gmail address required to subscribe).