From 685d579472018c968e785d7d49ec7f84f7438e97 Mon Sep 17 00:00:00 2001 From: Lukas Eipert Date: Fri, 21 Sep 2018 18:26:48 +0200 Subject: Danger check for ignored eslint rules We disabled a lot of eslint rules on a per-file basis. This checks touched files for those and reminds you to re-enable the rules and fix them. --- danger/eslint/Dangerfile | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 danger/eslint/Dangerfile (limited to 'danger') diff --git a/danger/eslint/Dangerfile b/danger/eslint/Dangerfile new file mode 100644 index 00000000000..f78488cfd0a --- /dev/null +++ b/danger/eslint/Dangerfile @@ -0,0 +1,29 @@ +# frozen_string_literal: true + +def get_eslint_files(files) + files.select do |file| + file.end_with?('.js', '.vue') && + File.read(file).include?('/* eslint-disable') + end +end + +eslint_candidates = get_eslint_files(git.added_files + git.modified_files) + +return if eslint_candidates.empty? + +warn 'This merge request changed files with disabled eslint rules. Please consider fixing them.' + +markdown(<<~MARKDOWN) + ## Disabled eslint rules + + The following files have disabled `eslint` rules. Please consider fixing them: + + * #{eslint_candidates.map { |path| "`#{path}`" }.join("\n* ")} + + Run the following command for more details + + ``` + node_modules/.bin/eslint --report-unused-disable-directives --no-inline-config \\ + #{eslint_candidates.map { |path| " '#{path}'" }.join(" \\\n")} + ``` +MARKDOWN -- cgit v1.2.3