New release v3.1.1

-----BEGIN PGP SIGNATURE-----
 
 iQEcBAABAgAGBQJZZoyUAAoJEKA7hNiGb/6kh7YIAOEX1Z5W5SOc5cd7hzAKQYhR
 auiOFPXHa83qbp0TtajJsKNgWzjFcPafaDv7iJuC6l+zrBRNGFvgudBX+bKiaETr
 pyqACoJPZqgpn1RSj2YkyLt4N9pQuL40B6f1n8vT0bXSQ3bWywn2mrIHOOiGsHC+
 xf72Ico4bTIX8tRQ/qStWmctLmBXEsvv8NSH046OS0RVjxUZdAB+1C9JEuM68RNr
 MoTlWLBp5O/p7CA0QQBjrlc8hOXzvaoVyNrS2RTWiIlzo55FQ4h0a0NhSyNlfQjc
 N6m2ulbeHTRQn4vA5ZM4ljVeeboNLgdNh3cNlpi0ZqqQuI3bqovZV3g6HlkK6cI=
 =KzsX
 -----END PGP SIGNATURE-----

Merge tag 'v3.1.1'

New release v3.1.1
This commit is contained in:
JC Brand 2017-07-12 23:06:15 +02:00
commit 1f0fa06ac4
12 changed files with 80 additions and 39 deletions

View File

@ -1,6 +1,13 @@
# Changelog
## 3.1.0 ((2017-07-05))
## 3.1.1 ((2017-07-12))
- Use a patched version of [awesomplete](https://github.com/LeaVerou/awesomplete)
which doesn't render suggestions as HTML (possible XSS attack vector). [jcbrand]
More info here: https://github.com/LeaVerou/awesomplete/pull/17082
## 3.1.0 (2017-07-05)
### API changes
- Deprecate the `updateSettings` method in favour of

View File

@ -13,6 +13,7 @@ PO2JSON ?= ./node_modules/.bin/po2json
RJS ?= ./node_modules/.bin/r.js
SASS ?= ./.bundle/bin/sass
SPHINXBUILD ?= ./bin/sphinx-build
SED ?= sed
SPHINXOPTS =
# Internal variables.
@ -78,16 +79,16 @@ po2json:
.PHONY: release
release:
sed -ri s/Version:\ [0-9]\+\.[0-9]\+\.[0-9]\+/Version:\ $(VERSION)/ src/start.frag
sed -ri s/Project-Id-Version:\ Converse\.js\ [0-9]\+\.[0-9]\+\.[0-9]\+/Project-Id-Version:\ Converse.js\ $(VERSION)/ locale/converse.pot
sed -ri s/\"version\":\ \"[0-9]\+\.[0-9]\+\.[0-9]\+\"/\"version\":\ \"$(VERSION)\"/ bower.json
sed -ri s/\"version\":\ \"[0-9]\+\.[0-9]\+\.[0-9]\+\"/\"version\":\ \"$(VERSION)\"/ package.json
sed -ri s/--package-version=[0-9]\+\.[0-9]\+\.[0-9]\+/--package-version=$(VERSION)/ Makefile
sed -ri s/v[0-9]\+\.[0-9]\+\.[0-9]\+\.zip/v$(VERSION)\.zip/ index.html
sed -ri s/v[0-9]\+\.[0-9]\+\.[0-9]\+\.tar\.gz/v$(VERSION)\.tar\.gz/ index.html
sed -ri s/version\ =\ \'[0-9]\+\.[0-9]\+\.[0-9]\+\'/version\ =\ \'$(VERSION)\'/ docs/source/conf.py
sed -ri s/release\ =\ \'[0-9]\+\.[0-9]\+\.[0-9]\+\'/release\ =\ \'$(VERSION)\'/ docs/source/conf.py
sed -ri "s/(Unreleased)/(`date +%Y-%m-%d`)/" CHANGES.md
$(SED) -ri s/Version:\ [0-9]\+\.[0-9]\+\.[0-9]\+/Version:\ $(VERSION)/ src/start.frag
$(SED) -ri s/Project-Id-Version:\ Converse\.js\ [0-9]\+\.[0-9]\+\.[0-9]\+/Project-Id-Version:\ Converse.js\ $(VERSION)/ locale/converse.pot
$(SED) -ri s/\"version\":\ \"[0-9]\+\.[0-9]\+\.[0-9]\+\"/\"version\":\ \"$(VERSION)\"/ bower.json
$(SED) -ri s/\"version\":\ \"[0-9]\+\.[0-9]\+\.[0-9]\+\"/\"version\":\ \"$(VERSION)\"/ package.json
$(SED) -ri s/--package-version=[0-9]\+\.[0-9]\+\.[0-9]\+/--package-version=$(VERSION)/ Makefile
$(SED) -ri s/v[0-9]\+\.[0-9]\+\.[0-9]\+\.zip/v$(VERSION)\.zip/ index.html
$(SED) -ri s/v[0-9]\+\.[0-9]\+\.[0-9]\+\.tar\.gz/v$(VERSION)\.tar\.gz/ index.html
$(SED) -ri s/version\ =\ \'[0-9]\+\.[0-9]\+\.[0-9]\+\'/version\ =\ \'$(VERSION)\'/ docs/source/conf.py
$(SED) -ri s/release\ =\ \'[0-9]\+\.[0-9]\+\.[0-9]\+\'/release\ =\ \'$(VERSION)\'/ docs/source/conf.py
$(SED) -ri "s/(Unreleased)/`date +%Y-%m-%d`/" CHANGES.md
make pot
make po
make po2json

View File

@ -1,7 +1,7 @@
{
"name": "converse.js",
"description": "Web-based XMPP/Jabber chat client written in javascript",
"version": "3.1.0",
"version": "3.1.1",
"license": "MPL-2.0",
"devDependencies": {},
"dependencies": {},

View File

@ -2,7 +2,7 @@
*
* An XMPP chat client that runs in the browser.
*
* Version: 3.1.0
* Version: 3.1.1
*/
/* jshint ignore:start */
@ -51680,11 +51680,22 @@ _.SORT_BYLENGTH = function (a, b) {
};
_.ITEM = function (text, input) {
var html = input.trim() === "" ? text : text.replace(RegExp($.regExpEscape(input.trim()), "gi"), "<mark>$&</mark>");
return $.create("li", {
innerHTML: html,
"aria-selected": "false"
});
input = input.trim();
var element = document.createElement("li");
element.setAttribute("aria-selected", "false");
var regex = new RegExp("("+input+")", "ig");
var parts = input ? text.split(regex) : [text];
parts.forEach(function (txt) {
if (input && txt.match(regex)) {
var match = document.createElement("mark");
match.textContent = txt;
element.appendChild(match);
} else {
element.appendChild(document.createTextNode(txt));
}
});
return element;
};
_.REPLACE = function (text) {

View File

@ -2,7 +2,7 @@
*
* An XMPP chat client that runs in the browser.
*
* Version: 3.1.0
* Version: 3.1.1
*/
/* jshint ignore:start */

23
dist/converse.js vendored
View File

@ -2,7 +2,7 @@
*
* An XMPP chat client that runs in the browser.
*
* Version: 3.1.0
* Version: 3.1.1
*/
/* jshint ignore:start */
@ -55014,11 +55014,22 @@ _.SORT_BYLENGTH = function (a, b) {
};
_.ITEM = function (text, input) {
var html = input.trim() === "" ? text : text.replace(RegExp($.regExpEscape(input.trim()), "gi"), "<mark>$&</mark>");
return $.create("li", {
innerHTML: html,
"aria-selected": "false"
});
input = input.trim();
var element = document.createElement("li");
element.setAttribute("aria-selected", "false");
var regex = new RegExp("("+input+")", "ig");
var parts = input ? text.split(regex) : [text];
parts.forEach(function (txt) {
if (input && txt.match(regex)) {
var match = document.createElement("mark");
match.textContent = txt;
element.appendChild(match);
} else {
element.appendChild(document.createTextNode(txt));
}
});
return element;
};
_.REPLACE = function (text) {

23
dist/inverse.js vendored
View File

@ -2,7 +2,7 @@
*
* An XMPP chat client that runs in the browser.
*
* Version: 3.1.0
* Version: 3.1.1
*/
/* jshint ignore:start */
@ -55014,11 +55014,22 @@ _.SORT_BYLENGTH = function (a, b) {
};
_.ITEM = function (text, input) {
var html = input.trim() === "" ? text : text.replace(RegExp($.regExpEscape(input.trim()), "gi"), "<mark>$&</mark>");
return $.create("li", {
innerHTML: html,
"aria-selected": "false"
});
input = input.trim();
var element = document.createElement("li");
element.setAttribute("aria-selected", "false");
var regex = new RegExp("("+input+")", "ig");
var parts = input ? text.split(regex) : [text];
parts.forEach(function (txt) {
if (input && txt.match(regex)) {
var match = document.createElement("mark");
match.textContent = txt;
element.appendChild(match);
} else {
element.appendChild(document.createTextNode(txt));
}
});
return element;
};
_.REPLACE = function (text) {

View File

@ -48,9 +48,9 @@ copyright = u'2014, JC Brand'
# built documents.
#
# The short X.Y version.
version = '3.1.0'
version = '3.1.1'
# The full version, including alpha/beta/rc tags.
release = '3.1.0'
release = '3.1.1'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.

View File

@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: Converse.js 3.1.0\n"
"Project-Id-Version: Converse.js 3.1.1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2017-07-05 09:57+0000\n"
"POT-Creation-Date: 2017-07-12 22:49+0200\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"

View File

@ -1,6 +1,6 @@
{
"name": "converse.js",
"version": "3.1.0",
"version": "3.1.1",
"description": "Browser based XMPP instant messaging client",
"main": "main.js",
"directories": {
@ -33,7 +33,7 @@
},
"devDependencies": {
"almond": "~0.3.3",
"awesomplete": "^1.1.1",
"awesomplete-avoid-xss": "^1.1.2",
"backbone": "1.3.3",
"backbone.browserStorage": "0.0.3",
"backbone.overview": "0.0.3",

View File

@ -16,7 +16,7 @@ require.config({
baseUrl: '.',
paths: {
"almond": "node_modules/almond/almond",
"awesomplete": "node_modules/awesomplete/awesomplete",
"awesomplete": "node_modules/awesomplete-avoid-xss/awesomplete",
"backbone": "node_modules/backbone/backbone",
"backbone.noconflict": "src/backbone.noconflict",
"backbone.browserStorage": "node_modules/backbone.browserStorage/backbone.browserStorage",

View File

@ -2,7 +2,7 @@
*
* An XMPP chat client that runs in the browser.
*
* Version: 3.1.0
* Version: 3.1.1
*/
/* jshint ignore:start */