about summary refs log tree commit diff
path: root/users/Profpatsch/writers
diff options
context:
space:
mode:
authorProfpatsch <mail@profpatsch.de>2021-01-01T23·14+0100
committerProfpatsch <mail@profpatsch.de>2021-01-03T16·12+0000
commitbaab2ce35901ca581e157a1640105e7f166060d1 (patch)
tree447c7c5618df36e1fa106b571e96d4e44ef5f9f7 /users/Profpatsch/writers
parentb046c774937d09e1a0562945c4d2011f14626c51 (diff)
fix(Profpatsch/writers): ignore the most annoying flake errors r/2054
Change-Id: I3b8f51ff0dcdd842811e2fd9876cd4925c64f135
Reviewed-on: https://cl.tvl.fyi/c/depot/+/2314
Tested-by: BuildkiteCI
Reviewed-by: Profpatsch <mail@profpatsch.de>
Diffstat (limited to 'users/Profpatsch/writers')
-rw-r--r--users/Profpatsch/writers/default.nix25
1 files changed, 22 insertions, 3 deletions
diff --git a/users/Profpatsch/writers/default.nix b/users/Profpatsch/writers/default.nix
index 6a76636389..9863f0fae0 100644
--- a/users/Profpatsch/writers/default.nix
+++ b/users/Profpatsch/writers/default.nix
@@ -1,17 +1,36 @@
-{ depot, pkgs, ... }:
+{ depot, pkgs, lib, ... }:
 let
   bins = depot.nix.getBins pkgs.coreutils ["printf" "mkdir" "cat"];
 
   inherit (depot.nix.yants) defun struct restrict attrs list string drv any;
 
-  FlakeError = restrict "flake error" (s: builtins.substring 0 1 s == "E") string;
+  FlakeError =
+    restrict
+      "flake error"
+      (s: lib.any (prefix: (builtins.substring 0 1 s) == prefix)
+          [ "E" "W" ])
+      string;
   Libraries = defun [ (attrs any) (list drv) ];
   python3 = name: {
     libraries ? (_: []),
     flakeIgnore ? []
   }: pkgs.writers.writePython3 name {
     libraries = Libraries libraries pkgs.python3Packages;
-    flakeIgnore = list FlakeError flakeIgnore;
+    flakeIgnore =
+      let ignoreTheseErrors = [
+        # whitespace after {
+        "E201"
+        # whitespace before }
+        "E202"
+        # fuck 4-space indentation
+        "E121" "E111"
+        # who cares about blank lines …
+        # … at end of files
+        "W391"
+        # … between functions
+        "E302" "E305"
+      ];
+      in list FlakeError (ignoreTheseErrors ++ flakeIgnore);
   };
 
   # TODO: add the same flake check as the pyhon3 writer