]> git.openstreetmap.org Git - rails.git/commitdiff
Move eslint ignore rules to the configuration file
authorTom Hughes <tom@compton.nu>
Sun, 9 Feb 2025 19:35:19 +0000 (19:35 +0000)
committerTom Hughes <tom@compton.nu>
Sun, 9 Feb 2025 19:38:47 +0000 (19:38 +0000)
Instead of having the rake task select which files to check, just
check the whole tree and have eslint ignore third party files and
generated files that we don't control.

config/eslint.js
lib/tasks/eslint.rake

index 90040f7bfae41cdaf6e7deb55f79d4bc29d86e4f..1bf65695b6e24473fc10d250c9ef6356c07794f7 100644 (file)
@@ -6,6 +6,14 @@ const stylisticJs = require("@stylistic/eslint-plugin-js");
 module.exports = [
   js.configs.recommended,
   erb.configs.recommended,
+  {
+    ignores: [
+      "app/assets/javascripts/i18n/",
+      "coverage/assets/",
+      "public/assets/",
+      "vendor/"
+    ]
+  },
   {
     plugins: {
       "@stylistic": stylisticJs
index 27b550e40bd1f00ff0be62f75c43d5c67f4d08a2..17f28a4e9cb4ef134a4ac205690159499ff3b9ad 100644 (file)
@@ -8,18 +8,12 @@ def config_file
   Rails.root.join("config/eslint.js").to_s
 end
 
-def js_files
-  Rails.application.assets.each_file.select do |file|
-    (file.ends_with?(".js") || file.ends_with?(".js.erb")) && !file.match?(%r{/(gems|vendor|i18n|node_modules)/})
-  end
-end
-
 namespace "eslint" do
   task :check => :environment do
-    system(yarn_path, "run", "eslint", "-c", config_file, *js_files) || abort
+    system(yarn_path, "run", "eslint", "-c", config_file, "--no-warn-ignored", Rails.root.to_s) || abort
   end
 
   task :fix => :environment do
-    system(yarn_path, "run", "eslint", "-c", config_file, "--fix", *js_files) || abort
+    system(yarn_path, "run", "eslint", "-c", config_file, "--no-warn-ignored", "--fix", Rails.root.to_s) || abort
   end
 end