From c112077ac29080ca2b478bfc0ce8d79dfbc55a1c Mon Sep 17 00:00:00 2001 From: Christian Klaussner Date: Sun, 18 Aug 2019 16:38:16 +0200 Subject: [PATCH] Convert ANSI escape codes to HTML on error page --- meteor | 2 +- scripts/dev-bundle-tool-package.js | 3 ++- tools/runners/run-proxy.js | 21 ++------------------- 3 files changed, 5 insertions(+), 21 deletions(-) diff --git a/meteor b/meteor index 19c08c64e6..35a2f4f036 100755 --- a/meteor +++ b/meteor @@ -1,6 +1,6 @@ #!/usr/bin/env bash -BUNDLE_VERSION=8.16.2.2 +BUNDLE_VERSION=8.16.2.3 # OS Check. Put here because here is where we download the precompiled # bundles that are arch specific. diff --git a/scripts/dev-bundle-tool-package.js b/scripts/dev-bundle-tool-package.js index 50c7682a79..f5ae64e391 100644 --- a/scripts/dev-bundle-tool-package.js +++ b/scripts/dev-bundle-tool-package.js @@ -60,7 +60,8 @@ var packageJson = { // version constraint imposed by optimism/package.json. optimism: "0.11.3", "@wry/context": "0.4.4", - 'lru-cache': '4.1.3' + 'lru-cache': '4.1.3', + "anser": "1.4.8" } }; diff --git a/tools/runners/run-proxy.js b/tools/runners/run-proxy.js index 1be4d33dd6..10e416708b 100644 --- a/tools/runners/run-proxy.js +++ b/tools/runners/run-proxy.js @@ -1,3 +1,4 @@ +var Anser = require("anser"); var _ = require('underscore'); var runLog = require('./run-log.js'); @@ -251,7 +252,7 @@ function showErrorPage(res) {
`);
 
       _.each(runLog.getLog(), function (item) {
-        res.write(escapeEntities(item.message) + "\n");
+        res.write(Anser.ansiToHtml(Anser.escapeForHtml(item.message)) + "\n");
       });
 
       res.write(`
@@ -261,22 +262,4 @@ function showErrorPage(res) { res.end(); } -// Copied from packages/blaze/preamble.js -function escapeEntities(str) { - const escapeMap = { - "<": "<", - ">": ">", - '"': """, - "'": "'", - "`": "`", /* IE allows backtick-delimited attributes?? */ - "&": "&" - }; - - const escapeChar = function(c) { - return escapeMap[c]; - }; - - return str.replace(/[&<>"'`]/g, escapeChar); -} - exports.Proxy = Proxy;