From bf092bd84a394b5a5004fc05ac975924739ca0a5 Mon Sep 17 00:00:00 2001 From: nightwing Date: Thu, 14 Dec 2017 15:09:10 +0400 Subject: [PATCH] update unused variable check to match new format of eslint --- .../worker/eslint_worker.js | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/plugins/c9.ide.language.javascript.eslint/worker/eslint_worker.js b/plugins/c9.ide.language.javascript.eslint/worker/eslint_worker.js index ec211ff8..6ba2a99d 100644 --- a/plugins/c9.ide.language.javascript.eslint/worker/eslint_worker.js +++ b/plugins/c9.ide.language.javascript.eslint/worker/eslint_worker.js @@ -203,8 +203,15 @@ handler.analyzeSync = function(value, ast, path) { if (isJson && level !== "error") return; - if (m.message.match(/'([^']*)' is defined but never used/)) { - var target = RegExp.$1; + // convert to 0 based offsets + m.column--; + m.line--; + m.endLine--; + m.endColumn--; + + if (m.message.match(/but never used/)) { + var line = doc.getLine(m.line); + var target = line.slice(m.column, m.endColumn) if (target.toUpperCase() === target && target.toLowerCase() !== target) return; // ignore unused constants if (target === "h") @@ -215,12 +222,8 @@ handler.analyzeSync = function(value, ast, path) { if (m.ruleId && m.ruleId.match(/space|spacing/) && m.severity === 1) level = "info"; - // work around column offset bug - m.column--; - m.line--; - var ec; - if (m.message.match(/is not defined|was used before it was defined|is already declared|is already defined|unexpected identifier|defined but never used/i)) { + if (m.message.match(/is not defined|was used before it was defined|is already declared|is already defined|unexpected identifier|but never used/i)) { var line = doc.getLine(m.line); var id = workerUtil.getFollowingIdentifier(line, m.column); if (m.message.match(/is already defined/) && line.match("for \\(var " + id))