diff --git a/CHANGELOG.md b/CHANGELOG.md index 2c425b4b1..28cb46b14 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,10 @@ Sometimes the changelog has notes (not comprehensive) acknowledging people's wor ### v1.11.32 +**v1.11.32.2** *(2016-05-04)* - [[Firefox](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.32.2/builds/4chan-X-noupdate.user.js "Firefox version")] [[Chromium](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.32.2/builds/4chan-X-noupdate.crx "Chromium version")] +- Support /s4s/ fortune text and new /qst/ BBCode tags in posts fetched from archive. +- Improve crash reports. + **v1.11.32.1** *(2016-05-01)* - [[Firefox](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.32.1/builds/4chan-X-noupdate.user.js "Firefox version")] [[Chromium](https://raw.githubusercontent.com/ccd0/4chan-x/1.11.32.1/builds/4chan-X-noupdate.crx "Chromium version")] - Support embedding of .ogg files as either video or audio, as appropriate, and add embedding for .oga files. diff --git a/builds/4chan-X-beta.crx b/builds/4chan-X-beta.crx index a59d78d60..7be90b582 100644 Binary files a/builds/4chan-X-beta.crx and b/builds/4chan-X-beta.crx differ diff --git a/builds/4chan-X-beta.meta.js b/builds/4chan-X-beta.meta.js index 47e1e0a5c..d85a70745 100644 --- a/builds/4chan-X-beta.meta.js +++ b/builds/4chan-X-beta.meta.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X beta -// @version 1.11.32.1 +// @version 1.11.32.2 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X diff --git a/builds/4chan-X-beta.user.js b/builds/4chan-X-beta.user.js index 8472e7dd3..6ed0f7169 100644 --- a/builds/4chan-X-beta.user.js +++ b/builds/4chan-X-beta.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X beta -// @version 1.11.32.1 +// @version 1.11.32.2 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -134,7 +134,7 @@ docSet = function() { }; g = { - VERSION: '1.11.32.1', + VERSION: '1.11.32.2', NAMESPACE: '4chan X.', boards: {} }; @@ -4787,7 +4787,7 @@ Callbacks = (function() { }; Callbacks.prototype.execute = function(node, keys) { - var err, errors, i, len, name, ref; + var err, errors, i, len, name, ref, ref1, ref2; if (keys == null) { keys = this.keys; } @@ -4804,7 +4804,8 @@ Callbacks = (function() { } errors.push({ message: ['"', name, '" crashed on node ', this.type, ' No.', node.ID, ' (', node.board, ').'].join(''), - error: err + error: err, + html: (ref1 = node.nodes) != null ? (ref2 = ref1.root) != null ? ref2.outerHTML : void 0 : void 0 }); } } @@ -5250,7 +5251,7 @@ Fetcher = (function() { }; Fetcher.prototype.parseArchivedPost = function(data, url, archive) { - var board, comment, greentext, i, j, key, o, post, ref, ref1, text, text2, thread, val; + var board, comment, greentext, i, j, key, o, post, ref, ref1, tag, text, text2, thread, val; if (post = g.posts[this.boardID + "." + this.postID]) { this.insert(post); return; @@ -5265,14 +5266,19 @@ Fetcher = (function() { this.root.textContent = data.error; return; } - comment = (data.comment || '').split(/(\n|\[\/?(?:b|spoiler|code|moot|banned)\])/); + comment = (data.comment || '').split(/(\n|\[\/?(?:b|spoiler|code|moot|banned|fortune(?: color="#\w+")?|i|red|green|blue)\])/); comment = (function() { var k, len, results; results = []; for (i = k = 0, len = comment.length; k < len; i = ++k) { text = comment[i]; if (i % 2 === 1) { - results.push(this.archiveTags[text]); + tag = this.archiveTags[text.replace(/\ .*\]/, ']')]; + if (typeof tag === 'function') { + results.push(tag(text)); + } else { + results.push(tag); + } } else { greentext = text[0] === '>'; text = text.replace(/(\[\/?[a-z]+):lit(\])/g, '$1$2'); @@ -5403,6 +5409,38 @@ Fetcher = (function() { }, '[/banned]': { innerHTML: "" + }, + '[fortune]': function(text) { + return { + innerHTML: "" + }; + }, + '[/fortune]': { + innerHTML: "" + }, + '[i]': { + innerHTML: "" + }, + '[/i]': { + innerHTML: "" + }, + '[red]': { + innerHTML: "" + }, + '[/red]': { + innerHTML: "" + }, + '[green]': { + innerHTML: "" + }, + '[/green]': { + innerHTML: "" + }, + '[blue]': { + innerHTML: "" + }, + '[/blue]': { + innerHTML: "" } }; @@ -22657,8 +22695,13 @@ Main = (function() { title += " (+" + (errors.length - 1) + " other errors)"; } details = "[Please describe the steps needed to reproduce this error.]\n\nScript: 4chan X ccd0 v" + g.VERSION + " " + $.platform + "\nUser agent: " + navigator.userAgent + "\nURL: " + location.href + "\n\n" + data.error + "\n" + (((ref = data.error.stack) != null ? ref.replace(data.error.toString(), '').trim() : void 0) || ''); + if (data.html) { + details += "\n\n" + data.html; + } details = details.replace(/file:\/{3}.+\//g, ''); + details = details.trim(); url = "https://gitreports.com/issue/ccd0/4chan-x?issue_title=" + (encodeURIComponent(title)) + "&details=" + (encodeURIComponent(details)); + url = url.slice(0, 8200); return { innerHTML: " [report]" }; diff --git a/builds/4chan-X-noupdate.crx b/builds/4chan-X-noupdate.crx index 6f8268ea5..eee054f3e 100644 Binary files a/builds/4chan-X-noupdate.crx and b/builds/4chan-X-noupdate.crx differ diff --git a/builds/4chan-X-noupdate.user.js b/builds/4chan-X-noupdate.user.js index 3f510b426..43f8152fd 100644 --- a/builds/4chan-X-noupdate.user.js +++ b/builds/4chan-X-noupdate.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X -// @version 1.11.32.1 +// @version 1.11.32.2 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -134,7 +134,7 @@ docSet = function() { }; g = { - VERSION: '1.11.32.1', + VERSION: '1.11.32.2', NAMESPACE: '4chan X.', boards: {} }; @@ -4787,7 +4787,7 @@ Callbacks = (function() { }; Callbacks.prototype.execute = function(node, keys) { - var err, errors, i, len, name, ref; + var err, errors, i, len, name, ref, ref1, ref2; if (keys == null) { keys = this.keys; } @@ -4804,7 +4804,8 @@ Callbacks = (function() { } errors.push({ message: ['"', name, '" crashed on node ', this.type, ' No.', node.ID, ' (', node.board, ').'].join(''), - error: err + error: err, + html: (ref1 = node.nodes) != null ? (ref2 = ref1.root) != null ? ref2.outerHTML : void 0 : void 0 }); } } @@ -5250,7 +5251,7 @@ Fetcher = (function() { }; Fetcher.prototype.parseArchivedPost = function(data, url, archive) { - var board, comment, greentext, i, j, key, o, post, ref, ref1, text, text2, thread, val; + var board, comment, greentext, i, j, key, o, post, ref, ref1, tag, text, text2, thread, val; if (post = g.posts[this.boardID + "." + this.postID]) { this.insert(post); return; @@ -5265,14 +5266,19 @@ Fetcher = (function() { this.root.textContent = data.error; return; } - comment = (data.comment || '').split(/(\n|\[\/?(?:b|spoiler|code|moot|banned)\])/); + comment = (data.comment || '').split(/(\n|\[\/?(?:b|spoiler|code|moot|banned|fortune(?: color="#\w+")?|i|red|green|blue)\])/); comment = (function() { var k, len, results; results = []; for (i = k = 0, len = comment.length; k < len; i = ++k) { text = comment[i]; if (i % 2 === 1) { - results.push(this.archiveTags[text]); + tag = this.archiveTags[text.replace(/\ .*\]/, ']')]; + if (typeof tag === 'function') { + results.push(tag(text)); + } else { + results.push(tag); + } } else { greentext = text[0] === '>'; text = text.replace(/(\[\/?[a-z]+):lit(\])/g, '$1$2'); @@ -5403,6 +5409,38 @@ Fetcher = (function() { }, '[/banned]': { innerHTML: "" + }, + '[fortune]': function(text) { + return { + innerHTML: "" + }; + }, + '[/fortune]': { + innerHTML: "" + }, + '[i]': { + innerHTML: "" + }, + '[/i]': { + innerHTML: "" + }, + '[red]': { + innerHTML: "" + }, + '[/red]': { + innerHTML: "" + }, + '[green]': { + innerHTML: "" + }, + '[/green]': { + innerHTML: "" + }, + '[blue]': { + innerHTML: "" + }, + '[/blue]': { + innerHTML: "" } }; @@ -22657,8 +22695,13 @@ Main = (function() { title += " (+" + (errors.length - 1) + " other errors)"; } details = "[Please describe the steps needed to reproduce this error.]\n\nScript: 4chan X ccd0 v" + g.VERSION + " " + $.platform + "\nUser agent: " + navigator.userAgent + "\nURL: " + location.href + "\n\n" + data.error + "\n" + (((ref = data.error.stack) != null ? ref.replace(data.error.toString(), '').trim() : void 0) || ''); + if (data.html) { + details += "\n\n" + data.html; + } details = details.replace(/file:\/{3}.+\//g, ''); + details = details.trim(); url = "https://gitreports.com/issue/ccd0/4chan-x?issue_title=" + (encodeURIComponent(title)) + "&details=" + (encodeURIComponent(details)); + url = url.slice(0, 8200); return { innerHTML: " [report]" }; diff --git a/builds/4chan-X.crx b/builds/4chan-X.crx index 7ab2cdf2f..89548cedc 100644 Binary files a/builds/4chan-X.crx and b/builds/4chan-X.crx differ diff --git a/builds/4chan-X.meta.js b/builds/4chan-X.meta.js index b05bfc69d..aba8b2999 100644 --- a/builds/4chan-X.meta.js +++ b/builds/4chan-X.meta.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X -// @version 1.11.32.1 +// @version 1.11.32.2 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X diff --git a/builds/4chan-X.user.js b/builds/4chan-X.user.js index 541c1c090..76a1d3d45 100644 --- a/builds/4chan-X.user.js +++ b/builds/4chan-X.user.js @@ -1,6 +1,6 @@ // ==UserScript== // @name 4chan X -// @version 1.11.32.1 +// @version 1.11.32.2 // @minGMVer 1.14 // @minFFVer 26 // @namespace 4chan-X @@ -134,7 +134,7 @@ docSet = function() { }; g = { - VERSION: '1.11.32.1', + VERSION: '1.11.32.2', NAMESPACE: '4chan X.', boards: {} }; @@ -4787,7 +4787,7 @@ Callbacks = (function() { }; Callbacks.prototype.execute = function(node, keys) { - var err, errors, i, len, name, ref; + var err, errors, i, len, name, ref, ref1, ref2; if (keys == null) { keys = this.keys; } @@ -4804,7 +4804,8 @@ Callbacks = (function() { } errors.push({ message: ['"', name, '" crashed on node ', this.type, ' No.', node.ID, ' (', node.board, ').'].join(''), - error: err + error: err, + html: (ref1 = node.nodes) != null ? (ref2 = ref1.root) != null ? ref2.outerHTML : void 0 : void 0 }); } } @@ -5250,7 +5251,7 @@ Fetcher = (function() { }; Fetcher.prototype.parseArchivedPost = function(data, url, archive) { - var board, comment, greentext, i, j, key, o, post, ref, ref1, text, text2, thread, val; + var board, comment, greentext, i, j, key, o, post, ref, ref1, tag, text, text2, thread, val; if (post = g.posts[this.boardID + "." + this.postID]) { this.insert(post); return; @@ -5265,14 +5266,19 @@ Fetcher = (function() { this.root.textContent = data.error; return; } - comment = (data.comment || '').split(/(\n|\[\/?(?:b|spoiler|code|moot|banned)\])/); + comment = (data.comment || '').split(/(\n|\[\/?(?:b|spoiler|code|moot|banned|fortune(?: color="#\w+")?|i|red|green|blue)\])/); comment = (function() { var k, len, results; results = []; for (i = k = 0, len = comment.length; k < len; i = ++k) { text = comment[i]; if (i % 2 === 1) { - results.push(this.archiveTags[text]); + tag = this.archiveTags[text.replace(/\ .*\]/, ']')]; + if (typeof tag === 'function') { + results.push(tag(text)); + } else { + results.push(tag); + } } else { greentext = text[0] === '>'; text = text.replace(/(\[\/?[a-z]+):lit(\])/g, '$1$2'); @@ -5403,6 +5409,38 @@ Fetcher = (function() { }, '[/banned]': { innerHTML: "" + }, + '[fortune]': function(text) { + return { + innerHTML: "" + }; + }, + '[/fortune]': { + innerHTML: "" + }, + '[i]': { + innerHTML: "" + }, + '[/i]': { + innerHTML: "" + }, + '[red]': { + innerHTML: "" + }, + '[/red]': { + innerHTML: "" + }, + '[green]': { + innerHTML: "" + }, + '[/green]': { + innerHTML: "" + }, + '[blue]': { + innerHTML: "" + }, + '[/blue]': { + innerHTML: "" } }; @@ -22657,8 +22695,13 @@ Main = (function() { title += " (+" + (errors.length - 1) + " other errors)"; } details = "[Please describe the steps needed to reproduce this error.]\n\nScript: 4chan X ccd0 v" + g.VERSION + " " + $.platform + "\nUser agent: " + navigator.userAgent + "\nURL: " + location.href + "\n\n" + data.error + "\n" + (((ref = data.error.stack) != null ? ref.replace(data.error.toString(), '').trim() : void 0) || ''); + if (data.html) { + details += "\n\n" + data.html; + } details = details.replace(/file:\/{3}.+\//g, ''); + details = details.trim(); url = "https://gitreports.com/issue/ccd0/4chan-x?issue_title=" + (encodeURIComponent(title)) + "&details=" + (encodeURIComponent(details)); + url = url.slice(0, 8200); return { innerHTML: " [report]" }; diff --git a/builds/4chan-X.zip b/builds/4chan-X.zip index 599277bc8..7ea3eb960 100644 Binary files a/builds/4chan-X.zip and b/builds/4chan-X.zip differ diff --git a/builds/updates-beta.xml b/builds/updates-beta.xml index 639eb746a..a3d198808 100644 --- a/builds/updates-beta.xml +++ b/builds/updates-beta.xml @@ -1,7 +1,7 @@ - + diff --git a/builds/updates.xml b/builds/updates.xml index c078ef9e1..064de4897 100644 --- a/builds/updates.xml +++ b/builds/updates.xml @@ -1,7 +1,7 @@ - + diff --git a/version.json b/version.json index 6d2efc744..8d93b2659 100644 --- a/version.json +++ b/version.json @@ -1,4 +1,4 @@ { - "version": "1.11.32.1", - "date": "2016-05-01T00:18:29.034Z" + "version": "1.11.32.2", + "date": "2016-05-04T21:26:47.510Z" } \ No newline at end of file