0.00 s
$ /nix/store/9ypz3flqsrl5xl495mm8h645gadjsxi1-coreutils-9.11/bin/timeout --kill-after=15s 7200s /nix/store/23zk8sgzamrbmj1fday15szf7f2279s8-nix-2.34.7/bin/nix --extra-experimental-features nix-command --extra-experimental-features flakes --log-format internal-json build --no-link --print-out-paths git+https://github.com/NorfairKing/hopinion?ref=test-file-rules&rev=665217f6066ab9de229c107cc27063a879407ba8&shallow=1#checks.x86_64-linux.e2e-added-rule-is-run --print-build-logs
0.07 s
fetching Git repository 'https://github.com/NorfairKing/hopinion'
0.68 s
remote: Enumerating objects: 456, done.
0.69 s
remote: Counting objects: 0% (1/456)
remote: Counting objects: 1% (5/456)
remote: Counting objects: 2% (10/456)
remote: Counting objects: 3% (14/456)
remote: Counting objects: 4% (19/456)
remote: Counting objects: 5% (23/456)
remote: Counting objects: 6% (28/456)
remote: Counting objects: 7% (32/456)
remote: Counting objects: 8% (37/456)
remote: Counting objects: 9% (42/456)
remote: Counting objects: 10% (46/456)
remote: Counting objects: 11% (51/456)
remote: Counting objects: 12% (55/456)
remote: Counting objects: 13% (60/456)
remote: Counting objects: 14% (64/456)
remote: Counting objects: 15% (69/456)
remote: Counting objects: 16% (73/456)
remote: Counting objects: 17% (78/456)
remote: Counting objects: 18% (83/456)
remote: Counting objects: 19% (87/456)
remote: Counting objects: 20% (92/456)
remote: Counting objects: 21% (96/456)
remote: Counting objects: 22% (101/456)
remote: Counting objects: 23% (105/456)
remote: Counting objects: 24% (110/456)
remote: Counting objects: 25% (114/456)
remote: Counting objects: 26% (119/456)
remote: Counting objects: 27% (124/456)
remote: Counting objects: 28% (128/456)
remote: Counting objects: 29% (133/456)
remote: Counting objects: 30% (137/456)
remote: Counting objects: 31% (142/456)
remote: Counting objects: 32% (146/456)
remote: Counting objects: 33% (151/456)
remote: Counting objects: 34% (156/456)
remote: Counting objects: 35% (160/456)
remote: Counting objects: 36% (165/456)
remote: Counting objects: 37% (169/456)
remote: Counting objects: 38% (174/456)
remote: Counting objects: 39% (178/456)
remote: Counting objects: 40% (183/456)
remote: Counting objects: 41% (187/456)
remote: Counting objects: 42% (192/456)
remote: Counting objects: 43% (197/456)
remote: Counting objects: 44% (201/456)
remote: Counting objects: 45% (206/456)
remote: Counting objects: 46% (210/456)
remote: Counting objects: 47% (215/456)
remote: Counting objects: 48% (219/456)
remote: Counting objects: 49% (224/456)
remote: Counting objects: 50% (228/456)
remote: Counting objects: 51% (233/456)
remote: Counting objects: 52% (238/456)
remote: Counting objects: 53% (242/456)
remote: Counting objects: 54% (247/456)
remote: Counting objects: 55% (251/456)
remote: Counting objects: 56% (256/456)
remote: Counting objects: 57% (260/456)
remote: Counting objects: 58% (265/456)
remote: Counting objects: 59% (270/456)
remote: Counting objects: 60% (274/456)
remote: Counting objects: 61% (279/456)
remote: Counting objects: 62% (283/456)
remote: Counting objects: 63% (288/456)
remote: Counting objects: 64% (292/456)
remote: Counting objects: 65% (297/456)
remote: Counting objects: 66% (301/456)
remote: Counting objects: 67% (306/456)
remote: Counting objects: 68% (311/456)
remote: Counting objects: 69% (315/456)
remote: Counting objects: 70% (320/456)
remote: Counting objects: 71% (324/456)
remote: Counting objects: 72% (329/456)
remote: Counting objects: 73% (333/456)
remote: Counting objects: 74% (338/456)
remote: Counting objects: 75% (342/456)
remote: Counting objects: 76% (347/456)
remote: Counting objects: 77% (352/456)
remote: Counting objects: 78% (356/456)
remote: Counting objects: 79% (361/456)
remote: Counting objects: 80% (365/456)
remote: Counting objects: 81% (370/456)
remote: Counting objects: 82% (374/456)
remote: Counting objects: 83% (379/456)
remote: Counting objects: 84% (384/456)
remote: Counting objects: 85% (388/456)
remote: Counting objects: 86% (393/456)
remote: Counting objects: 87% (397/456)
remote: Counting objects: 88% (402/456)
remote: Counting objects: 89% (406/456)
remote: Counting objects: 90% (411/456)
remote: Counting objects: 91% (415/456)
remote: Counting objects: 92% (420/456)
remote: Counting objects: 93% (425/456)
remote: Counting objects: 94% (429/456)
remote: Counting objects: 95% (434/456)
remote: Counting objects: 96% (438/456)
remote: Counting objects: 97% (443/456)
remote: Counting objects: 98% (447/456)
remote: Counting objects: 99% (452/456)
remote: Counting objects: 100% (456/456)
remote: Counting objects: 100% (456/456), done.
0.70 s
remote: Compressing objects: 0% (1/330)
remote: Compressing objects: 1% (4/330)
remote: Compressing objects: 2% (7/330)
remote: Compressing objects: 3% (10/330)
remote: Compressing objects: 4% (14/330)
remote: Compressing objects: 5% (17/330)
remote: Compressing objects: 6% (20/330)
remote: Compressing objects: 7% (24/330)
remote: Compressing objects: 8% (27/330)
remote: Compressing objects: 9% (30/330)
remote: Compressing objects: 10% (33/330)
remote: Compressing objects: 11% (37/330)
remote: Compressing objects: 12% (40/330)
remote: Compressing objects: 13% (43/330)
remote: Compressing objects: 14% (47/330)
remote: Compressing objects: 15% (50/330)
remote: Compressing objects: 16% (53/330)
remote: Compressing objects: 17% (57/330)
remote: Compressing objects: 18% (60/330)
remote: Compressing objects: 19% (63/330)
remote: Compressing objects: 20% (66/330)
remote: Compressing objects: 21% (70/330)
remote: Compressing objects: 22% (73/330)
remote: Compressing objects: 23% (76/330)
remote: Compressing objects: 24% (80/330)
remote: Compressing objects: 25% (83/330)
remote: Compressing objects: 26% (86/330)
remote: Compressing objects: 27% (90/330)
remote: Compressing objects: 28% (93/330)
remote: Compressing objects: 29% (96/330)
remote: Compressing objects: 30% (99/330)
remote: Compressing objects: 31% (103/330)
remote: Compressing objects: 32% (106/330)
remote: Compressing objects: 33% (109/330)
remote: Compressing objects: 34% (113/330)
remote: Compressing objects: 35% (116/330)
remote: Compressing objects: 36% (119/330)
remote: Compressing objects: 37% (123/330)
remote: Compressing objects: 38% (126/330)
remote: Compressing objects: 39% (129/330)
remote: Compressing objects: 40% (132/330)
remote: Compressing objects: 41% (136/330)
remote: Compressing objects: 42% (139/330)
remote: Compressing objects: 43% (142/330)
remote: Compressing objects: 44% (146/330)
remote: Compressing objects: 45% (149/330)
remote: Compressing objects: 46% (152/330)
remote: Compressing objects: 47% (156/330)
remote: Compressing objects: 48% (159/330)
remote: Compressing objects: 49% (162/330)
remote: Compressing objects: 50% (165/330)
remote: Compressing objects: 51% (169/330)
remote: Compressing objects: 52% (172/330)
remote: Compressing objects: 53% (175/330)
remote: Compressing objects: 54% (179/330)
remote: Compressing objects: 55% (182/330)
remote: Compressing objects: 56% (185/330)
remote: Compressing objects: 57% (189/330)
remote: Compressing objects: 58% (192/330)
remote: Compressing objects: 59% (195/330)
remote: Compressing objects: 60% (198/330)
remote: Compressing objects: 61% (202/330)
remote: Compressing objects: 62% (205/330)
remote: Compressing objects: 63% (208/330)
remote: Compressing objects: 64% (212/330)
remote: Compressing objects: 65% (215/330)
remote: Compressing objects: 66% (218/330)
remote: Compressing objects: 67% (222/330)
remote: Compressing objects: 68% (225/330)
remote: Compressing objects: 69% (228/330)
remote: Compressing objects: 70% (231/330)
remote: Compressing objects: 71% (235/330)
remote: Compressing objects: 72% (238/330)
remote: Compressing objects: 73% (241/330)
remote: Compressing objects: 74% (245/330)
remote: Compressing objects: 75% (248/330)
remote: Compressing objects: 76% (251/330)
remote: Compressing objects: 77% (255/330)
remote: Compressing objects: 78% (258/330)
remote: Compressing objects: 79% (261/330)
remote: Compressing objects: 80% (264/330)
remote: Compressing objects: 81% (268/330)
remote: Compressing objects: 82% (271/330)
remote: Compressing objects: 83% (274/330)
remote: Compressing objects: 84% (278/330)
remote: Compressing objects: 85% (281/330)
remote: Compressing objects: 86% (284/330)
remote: Compressing objects: 87% (288/330)
remote: Compressing objects: 88% (291/330)
remote: Compressing objects: 89% (294/330)
remote: Compressing objects: 90% (297/330)
remote: Compressing objects: 91% (301/330)
remote: Compressing objects: 92% (304/330)
remote: Compressing objects: 93% (307/330)
remote: Compressing objects: 94% (311/330)
remote: Compressing objects: 95% (314/330)
remote: Compressing objects: 96% (317/330)
remote: Compressing objects: 97% (321/330)
remote: Compressing objects: 98% (324/330)
remote: Compressing objects: 99% (327/330)
remote: Compressing objects: 100% (330/330)
remote: Compressing objects: 100% (330/330), done.
0.72 s
Receiving objects: 0% (1/456)
Receiving objects: 1% (5/456)
Receiving objects: 2% (10/456)
Receiving objects: 3% (14/456)
Receiving objects: 4% (19/456)
Receiving objects: 5% (23/456)
Receiving objects: 6% (28/456)
Receiving objects: 7% (32/456)
Receiving objects: 8% (37/456)
Receiving objects: 9% (42/456)
Receiving objects: 10% (46/456)
Receiving objects: 11% (51/456)
Receiving objects: 12% (55/456)
Receiving objects: 13% (60/456)
Receiving objects: 14% (64/456)
Receiving objects: 15% (69/456)
Receiving objects: 16% (73/456)
Receiving objects: 17% (78/456)
Receiving objects: 18% (83/456)
Receiving objects: 19% (87/456)
Receiving objects: 20% (92/456)
Receiving objects: 21% (96/456)
Receiving objects: 22% (101/456)
Receiving objects: 23% (105/456)
Receiving objects: 24% (110/456)
Receiving objects: 25% (114/456)
Receiving objects: 26% (119/456)
Receiving objects: 27% (124/456)
Receiving objects: 28% (128/456)
Receiving objects: 29% (133/456)
Receiving objects: 30% (137/456)
Receiving objects: 31% (142/456)
Receiving objects: 32% (146/456)
Receiving objects: 33% (151/456)
Receiving objects: 34% (156/456)
Receiving objects: 35% (160/456)
Receiving objects: 36% (165/456)
Receiving objects: 37% (169/456)
Receiving objects: 38% (174/456)
Receiving objects: 39% (178/456)
Receiving objects: 40% (183/456)
Receiving objects: 41% (187/456)
Receiving objects: 42% (192/456)
Receiving objects: 43% (197/456)
Receiving objects: 44% (201/456)
Receiving objects: 45% (206/456)
Receiving objects: 46% (210/456)
Receiving objects: 47% (215/456)
Receiving objects: 48% (219/456)
Receiving objects: 49% (224/456)
Receiving objects: 50% (228/456)
Receiving objects: 51% (233/456)
Receiving objects: 52% (238/456)
Receiving objects: 53% (242/456)
Receiving objects: 54% (247/456)
Receiving objects: 55% (251/456)
Receiving objects: 56% (256/456)
Receiving objects: 57% (260/456)
Receiving objects: 58% (265/456)
Receiving objects: 59% (270/456)
Receiving objects: 60% (274/456)
Receiving objects: 61% (279/456)
Receiving objects: 62% (283/456)
Receiving objects: 63% (288/456)
Receiving objects: 64% (292/456)
Receiving objects: 65% (297/456)
Receiving objects: 66% (301/456)
Receiving objects: 67% (306/456)
Receiving objects: 68% (311/456)
Receiving objects: 69% (315/456)
Receiving objects: 70% (320/456)
Receiving objects: 71% (324/456)
Receiving objects: 72% (329/456)
Receiving objects: 73% (333/456)
Receiving objects: 74% (338/456)
Receiving objects: 75% (342/456)
Receiving objects: 76% (347/456)
Receiving objects: 77% (352/456)
Receiving objects: 78% (356/456)
Receiving objects: 79% (361/456)
Receiving objects: 80% (365/456)
Receiving objects: 81% (370/456)
Receiving objects: 82% (374/456)
Receiving objects: 83% (379/456)
Receiving objects: 84% (384/456)
Receiving objects: 85% (388/456)
Receiving objects: 86% (393/456)
Receiving objects: 87% (397/456)
Receiving objects: 88% (402/456)
Receiving objects: 89% (406/456)
Receiving objects: 90% (411/456)
Receiving objects: 91% (415/456)
Receiving objects: 92% (420/456)
Receiving objects: 93% (425/456)
Receiving objects: 94% (429/456)
Receiving objects: 95% (434/456)
Receiving objects: 96% (438/456)
Receiving objects: 97% (443/456)
Receiving objects: 98% (447/456)
Receiving objects: 99% (452/456)
remote: Total 456 (delta 62), reused 386 (delta 55), pack-reused 0 (from 0)
0.72 s
Receiving objects: 100% (456/456)
Receiving objects: 100% (456/456), 243.56 KiB | 13.53 MiB/s, done.
0.73 s
Resolving deltas: 0% (0/62)
Resolving deltas: 1% (1/62)
Resolving deltas: 4% (3/62)
Resolving deltas: 6% (4/62)
Resolving deltas: 9% (6/62)
Resolving deltas: 11% (7/62)
Resolving deltas: 12% (8/62)
Resolving deltas: 14% (9/62)
Resolving deltas: 16% (10/62)
Resolving deltas: 19% (12/62)
Resolving deltas: 20% (13/62)
Resolving deltas: 24% (15/62)
Resolving deltas: 25% (16/62)
Resolving deltas: 27% (17/62)
Resolving deltas: 29% (18/62)
Resolving deltas: 30% (19/62)
Resolving deltas: 33% (21/62)
Resolving deltas: 35% (22/62)
Resolving deltas: 37% (23/62)
Resolving deltas: 40% (25/62)
Resolving deltas: 41% (26/62)
Resolving deltas: 45% (28/62)
Resolving deltas: 46% (29/62)
Resolving deltas: 50% (31/62)
Resolving deltas: 51% (32/62)
Resolving deltas: 53% (33/62)
Resolving deltas: 54% (34/62)
Resolving deltas: 56% (35/62)
Resolving deltas: 58% (36/62)
Resolving deltas: 59% (37/62)
Resolving deltas: 62% (39/62)
Resolving deltas: 64% (40/62)
Resolving deltas: 66% (41/62)
Resolving deltas: 67% (42/62)
Resolving deltas: 69% (43/62)
Resolving deltas: 70% (44/62)
Resolving deltas: 72% (45/62)
Resolving deltas: 75% (47/62)
Resolving deltas: 77% (48/62)
Resolving deltas: 79% (49/62)
Resolving deltas: 80% (50/62)
Resolving deltas: 82% (51/62)
Resolving deltas: 87% (54/62)
Resolving deltas: 90% (56/62)
Resolving deltas: 91% (57/62)
Resolving deltas: 93% (58/62)
Resolving deltas: 95% (59/62)
Resolving deltas: 96% (60/62)
Resolving deltas: 98% (61/62)
Resolving deltas: 100% (62/62)
Resolving deltas: 100% (62/62), done.
0.79 s
From https://github.com/NorfairKing/hopinion
0.79 s
* branch 665217f6066ab9de229c107cc27063a879407ba8 -> FETCH_HEAD
0.87 s
1.00 s
Downloading cached source from https://cache.staging.nix-ci.com
8.82 s
Downloaded cached source (187.2 MiB) in 7.8s
8.82 s
Progress: 1 of 1 downloaded from cache
16.10 s
16.11 s
Downloading cached update-autotools-gnu-config-scripts-hook from https://cache.staging.nix-ci.com
16.11 s
Downloading cached libidn2 from https://cache.staging.nix-ci.com
16.40 s
Downloaded cached update-autotools-gnu-config-scripts-hook (968 B) in 288ms
16.40 s
Progress: 0 of 13 built, 1 of 48 downloaded from cache (1 downloading)
16.57 s
Downloaded cached libidn2 (368 KiB) in 462ms
16.57 s
Progress: 0 of 13 built, 2 of 48 downloaded from cache
16.58 s
Downloading cached glibc-2.42 from https://cache.staging.nix-ci.com
17.48 s
Downloaded cached glibc-2.42 (29 MiB) in 908ms
17.48 s
Progress: 0 of 13 built, 3 of 48 downloaded from cache
17.48 s
Downloading cached attr from https://cache.staging.nix-ci.com
17.48 s
Downloading cached bash from https://cache.staging.nix-ci.com
17.48 s
Downloading cached brotli-1.2.0-lib from https://cache.staging.nix-ci.com
17.48 s
Downloading cached bzip2 from https://cache.staging.nix-ci.com
17.48 s
Downloaded cached bzip2 in 0ms
17.48 s
Downloading cached ed from https://cache.staging.nix-ci.com
17.48 s
Downloaded cached ed in 0ms
17.48 s
Downloading cached gawk from https://cache.staging.nix-ci.com
17.48 s
Downloading cached gcc-15.2.0-lib from https://cache.staging.nix-ci.com
17.48 s
Downloading cached gnumake from https://cache.staging.nix-ci.com
17.48 s
Downloading cached gnused from https://cache.staging.nix-ci.com
17.48 s
Downloading cached json-c from https://cache.staging.nix-ci.com
17.48 s
Downloading cached keyutils-1.6.3-lib from https://cache.staging.nix-ci.com
17.48 s
Downloaded cached json-c in 0ms
17.49 s
Downloaded cached keyutils-1.6.3-lib in 0ms
17.49 s
Downloading cached libffi from https://cache.staging.nix-ci.com
17.49 s
Downloaded cached libffi in 0ms
17.49 s
Downloading cached libpsl from https://cache.staging.nix-ci.com
17.49 s
Downloaded cached libpsl in 0ms
17.49 s
Downloading cached ncurses from https://cache.staging.nix-ci.com
17.49 s
Downloading cached nghttp2-1.67.1-lib from https://cache.staging.nix-ci.com
17.49 s
Downloaded cached nghttp2-1.67.1-lib in 0ms
17.49 s
Downloading cached nghttp3 from https://cache.staging.nix-ci.com
17.49 s
Downloaded cached nghttp3 in 0ms
17.49 s
Progress: 0 of 13 built, 4 of 48 downloaded from cache (15 downloading)
17.49 s
Progress: 0 of 13 built, 5 of 48 downloaded from cache (14 downloading)
17.49 s
Progress: 0 of 13 built, 6 of 48 downloaded from cache (13 downloading)
17.49 s
Progress: 0 of 13 built, 7 of 48 downloaded from cache (12 downloading)
17.49 s
Progress: 0 of 13 built, 8 of 48 downloaded from cache (11 downloading)
17.49 s
Progress: 0 of 13 built, 9 of 48 downloaded from cache (10 downloading)
17.49 s
Progress: 0 of 13 built, 10 of 48 downloaded from cache (9 downloading)
17.49 s
Downloading cached openssl from https://cache.staging.nix-ci.com
17.49 s
Downloading cached pcre2 from https://cache.staging.nix-ci.com
17.49 s
Downloading cached xz from https://cache.staging.nix-ci.com
17.49 s
Downloading cached zlib from https://cache.staging.nix-ci.com
17.49 s
Downloading cached bzip2-1.0.8-bin from https://cache.staging.nix-ci.com
17.49 s
Downloading cached patch from https://cache.staging.nix-ci.com
17.49 s
Progress: 0 of 13 built, 11 of 48 downloaded from cache (14 downloading)
18.01 s
Downloaded cached zlib (129 KiB) in 524ms
18.01 s
Progress: 0 of 13 built, 12 of 48 downloaded from cache (13 downloading)
18.01 s
Downloading cached file from https://cache.staging.nix-ci.com
18.01 s
Downloading cached sqlite from https://cache.staging.nix-ci.com
18.25 s
Downloaded cached xz (837 KiB) in 764ms
18.25 s
Progress: 0 of 13 built, 13 of 48 downloaded from cache (14 downloading)
18.25 s
Downloading cached xz-5.8.2-bin from https://cache.staging.nix-ci.com
18.25 s
Downloaded cached xz-5.8.2-bin in 0ms
18.30 s
Downloaded cached attr (90 KiB) in 814ms
18.30 s
Progress: 0 of 13 built, 14 of 48 downloaded from cache (14 downloading)
18.30 s
Progress: 0 of 13 built, 15 of 48 downloaded from cache (13 downloading)
18.30 s
Downloaded cached brotli-1.2.0-lib (961 KiB) in 815ms
18.30 s
Progress: 0 of 13 built, 16 of 48 downloaded from cache (13 downloading)
18.30 s
Downloading cached acl from https://cache.staging.nix-ci.com
18.30 s
Downloaded cached acl in 0ms
18.45 s
Progress: 0 of 13 built, 17 of 48 downloaded from cache (12 downloading)
18.46 s
Downloading cached gnutar from https://cache.staging.nix-ci.com
18.49 s
Downloaded cached bzip2-1.0.8-bin (67 KiB) in 1.0s
18.49 s
Progress: 0 of 13 built, 18 of 48 downloaded from cache (12 downloading)
18.50 s
Downloaded cached patch (208 KiB) in 1.0s
18.50 s
Progress: 0 of 13 built, 19 of 48 downloaded from cache (11 downloading)
18.50 s
Downloaded cached gnused (718 KiB) in 1.0s
18.50 s
Progress: 0 of 13 built, 20 of 48 downloaded from cache (10 downloading)
18.51 s
Downloaded cached gnumake (1.5 MiB) in 1.0s
18.59 s
Progress: 0 of 13 built, 21 of 48 downloaded from cache (9 downloading)
18.59 s
Downloaded cached bash (1.8 MiB) in 1.1s
18.59 s
Downloaded cached pcre2 (2 MiB) in 1.1s
18.59 s
Downloaded cached file (8.3 MiB) in 581ms
18.59 s
Downloaded cached gawk (2.9 MiB) in 1.1s
18.59 s
Progress: 0 of 13 built, 22 of 48 downloaded from cache (8 downloading)
18.59 s
Downloaded cached gcc-15.2.0-lib (9.8 MiB) in 1.1s
18.59 s
Downloaded cached sqlite (5.6 MiB) in 581ms
18.59 s
Downloading cached gzip from https://cache.staging.nix-ci.com
18.59 s
Downloaded cached gzip in 0ms
18.59 s
Progress: 0 of 12 built, 23 of 48 downloaded from cache (8 downloading)
18.69 s
Downloaded cached openssl (8.9 MiB) in 1.2s
18.69 s
Progress: 0 of 12 built, 24 of 48 downloaded from cache (7 downloading)
18.69 s
Progress: 0 of 12 built, 25 of 48 downloaded from cache (6 downloading)
18.69 s
Progress: 0 of 12 built, 26 of 48 downloaded from cache (5 downloading)
18.69 s
Progress: 0 of 12 built, 27 of 48 downloaded from cache (4 downloading)
18.69 s
Progress: 0 of 12 built, 28 of 48 downloaded from cache (3 downloading)
18.69 s
Downloading cached gmp-with-cxx from https://cache.staging.nix-ci.com
18.69 s
Downloading cached gnugrep from https://cache.staging.nix-ci.com
18.69 s
Downloaded cached gmp-with-cxx in 0ms
18.69 s
Downloaded cached gnugrep in 0ms
18.69 s
Downloading cached zstd from https://cache.staging.nix-ci.com
18.69 s
Downloading cached numactl from https://cache.staging.nix-ci.com
18.69 s
Downloaded cached zstd in 0ms
18.69 s
Downloading cached patchelf from https://cache.staging.nix-ci.com
18.69 s
Downloaded cached patchelf in 0ms
18.69 s
Progress: 0 of 12 built, 29 of 48 downloaded from cache (8 downloading)
18.69 s
Downloaded cached numactl in 0ms
18.69 s
Progress: 0 of 12 built, 30 of 48 downloaded from cache (7 downloading)
18.69 s
Progress: 0 of 12 built, 31 of 48 downloaded from cache (6 downloading)
18.69 s
Downloading cached krb5-1.22.1-lib from https://cache.staging.nix-ci.com
18.69 s
Downloading cached libssh2 from https://cache.staging.nix-ci.com
18.69 s
Downloading cached ngtcp2 from https://cache.staging.nix-ci.com
18.69 s
Downloaded cached libssh2 in 0ms
18.69 s
Downloaded cached ngtcp2 in 0ms
18.69 s
Progress: 0 of 12 built, 32 of 48 downloaded from cache (8 downloading)
18.69 s
Progress: 0 of 12 built, 33 of 48 downloaded from cache (7 downloading)
18.69 s
Progress: 0 of 12 built, 34 of 48 downloaded from cache (6 downloading)
18.69 s
Progress: 0 of 12 built, 35 of 48 downloaded from cache (5 downloading)
18.69 s
Progress: 0 of 12 built, 36 of 48 downloaded from cache (4 downloading)
18.87 s
Downloading cached gmp-with-cxx from https://cache.staging.nix-ci.com
18.87 s
Downloaded cached gmp-with-cxx in 0ms
18.87 s
Progress: 0 of 12 built, 37 of 48 downloaded from cache (3 downloading)
18.87 s
Downloading cached coreutils from https://cache.staging.nix-ci.com
18.91 s
Downloaded cached gnutar (2.7 MiB) in 455ms
18.91 s
Progress: 0 of 12 built, 38 of 48 downloaded from cache (3 downloading)
18.94 s
Downloaded cached krb5-1.22.1-lib (2.8 MiB) in 246ms
18.95 s
Progress: 0 of 12 built, 39 of 48 downloaded from cache (2 downloading)
18.95 s
Downloading cached curl from https://cache.staging.nix-ci.com
19.10 s
Downloaded cached coreutils (1.6 MiB) in 226ms
19.10 s
Progress: 0 of 12 built, 40 of 48 downloaded from cache (2 downloading)
19.10 s
Downloading cached diffutils from https://cache.staging.nix-ci.com
19.11 s
Downloading cached findutils from https://cache.staging.nix-ci.com
19.18 s
Downloaded cached curl (1.1 MiB) in 230ms
19.18 s
Progress: 0 of 12 built, 41 of 48 downloaded from cache (3 downloading)
19.19 s
Downloading cached elfutils from https://cache.staging.nix-ci.com
19.31 s
Downloaded cached ncurses (3.7 MiB) in 1.8s
19.31 s
Progress: 0 of 12 built, 42 of 48 downloaded from cache (3 downloading)
19.41 s
Downloaded cached elfutils (4 MiB) in 222ms
19.41 s
Progress: 0 of 12 built, 43 of 48 downloaded from cache (2 downloading)
19.41 s
Downloading cached hopinion from https://cache.staging.nix-ci.com
19.41 s
Downloading cached hopinion-gen from https://cache.staging.nix-ci.com
19.47 s
Downloaded cached findutils (1.7 MiB) in 363ms
19.47 s
Progress: 0 of 12 built, 44 of 48 downloaded from cache (3 downloading)
19.49 s
Downloaded cached diffutils (1.5 MiB) in 397ms
19.49 s
Progress: 0 of 12 built, 45 of 48 downloaded from cache (2 downloading)
19.49 s
Downloading cached stdenv-linux from https://cache.staging.nix-ci.com
19.49 s
Downloaded cached stdenv-linux in 0ms
19.49 s
Progress: 0 of 12 built, 46 of 48 downloaded from cache (2 downloading)
20.79 s
Downloaded cached hopinion-gen (31.9 MiB) in 1.3s
20.79 s
Progress: 0 of 11 built, 47 of 48 downloaded from cache (1 downloading)
20.89 s
Building /nix/store/3flydvqkmqv6bihlx17x7cnjsaybph2n-lonely-hopinion.drv
20.92 s
Building /nix/store/hfp3y3zsf0aqmpp4bxrgjxdl3r2qk3kv-thing-gen-hopinion.drv
20.95 s
Building /nix/store/99fvmdx72pb3b1d51zsl6jj6dxrhj475-thing-hopinion.drv
20.98 s
[lonely-hopinion] [error HsGenValidInGenPackage] : A GenValid instance outside a -gen package.
20.98 s
[lonely-hopinion] ╭──▶ lonely/src/Lonely.hs@8:1-8:25
20.98 s
[lonely-hopinion] │
20.98 s
[lonely-hopinion] 8 │ i n s t a n c e G e n V a l i d O r p h a n
20.98 s
[lonely-hopinion] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
20.98 s
[lonely-hopinion] • ╰╸ A GenValid instance in a package's own library gets compiled into the executable. Move it to the matching -gen package.
20.98 s
[lonely-hopinion] •
20.98 s
[lonely-hopinion] │ Note: A generator is test code, and an instance in the library is linked into everything that depends on the library, so the shipped executable carries QuickCheck and the generators with it. The -gen package exists so that dependency stops at the test suite, which is also what keeps a generator free to be as slow or as elaborate as the property needs.
20.98 s
[lonely-hopinion] │ Hint: To suppress, write this directly above line 8 of lonely/src/Lonely.hs, and say why: -- [allow:HsGenValidInGenPackage] <reason>
20.98 s
[lonely-hopinion] ─────╯
21.06 s
[lonely-hopinion:post-build] Uploading to the NixCI staging cache: /nix/store/63n17iz6m55ak2lwzk5my4rgaq42ycdj-lonely-hopinion
21.10 s
[lonely-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
21.11 s
[lonely-hopinion:post-build] copying 1 paths...
21.11 s
[lonely-hopinion:post-build] copying path '/nix/store/63n17iz6m55ak2lwzk5my4rgaq42ycdj-lonely-hopinion' to 'https://cache.staging.nix-ci.com'...
21.39 s
[lonely-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
21.94 s
Downloaded cached hopinion (31.9 MiB) in 2.5s
27.62 s
[lonely-hopinion:post-build] copying 0 paths...
27.65 s
Uploaded lonely-hopinion in 6.6s
27.65 s
Progress: 1 of 11 built (2 building), 47 of 48 downloaded from cache (1 downloading)
27.65 s
Built lonely-hopinion in 6.7s
27.67 s
Progress: 1 of 10 built (2 building), 48 of 48 downloaded from cache
27.69 s
[thing-gen-hopinion:post-build] Uploading to the NixCI staging cache: /nix/store/jrk896ms30bccqf67mb7984wljaq1d0a-thing-gen-hopinion
27.72 s
[thing-gen-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
27.73 s
[thing-gen-hopinion:post-build] copying 1 paths...
27.73 s
[thing-gen-hopinion:post-build] copying path '/nix/store/jrk896ms30bccqf67mb7984wljaq1d0a-thing-gen-hopinion' to 'https://cache.staging.nix-ci.com'...
28.15 s
[thing-gen-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
28.41 s
[thing-gen-hopinion:post-build] copying 0 paths...
28.44 s
Uploaded thing-gen-hopinion in 763ms
28.44 s
Progress: 2 of 11 built (1 building), 48 of 48 downloaded from cache
28.44 s
Built thing-gen-hopinion in 7.5s
28.44 s
[thing-hopinion] [error CommentBareTodo] : A bare TODO. Reference an issue or a URL, or do it.
28.44 s
[thing-hopinion] ╭──▶ thing/src/Thing.hs@3:1-3:58
28.44 s
[thing-hopinion] │
28.44 s
[thing-hopinion] 3 │ - - T O D O a b a r e m a r k e r , w h i c h i s t h e m o d u l e - l e v e l f i n d i n g .
28.44 s
[thing-hopinion] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
28.44 s
[thing-hopinion] • ╰╸ A TODO needs an issue reference or a URL saying where the follow-up is tracked.
28.44 s
[thing-hopinion] •
28.44 s
[thing-hopinion] │ Note: A TODO nothing points at is a note nobody is holding. It reads like a plan, so the next reader assumes it is one, and it goes stale in place because nothing brings it back up. A reference makes it findable from wherever the work is actually tracked; doing it makes the note unnecessary. If it is neither tracked nor worth doing, the honest version is a comment that says what is missing and what would make it worth doing.
28.44 s
[thing-hopinion] │ Hint: To suppress, write this directly above line 4 of thing/src/Thing.hs, and say why: -- [allow:CommentBareTodo] <reason>
28.44 s
[thing-hopinion] ─────╯
28.44 s
[thing-hopinion]
28.44 s
[thing-hopinion] [error HsGenValidInGenPackage] : A GenValid instance outside a -gen package.
28.44 s
[thing-hopinion] ╭──▶ thing/src/Thing.hs@9:1-9:25
28.44 s
[thing-hopinion] │
28.44 s
[thing-hopinion] 9 │ i n s t a n c e G e n V a l i d W i d g e t
28.44 s
[thing-hopinion] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
28.44 s
[thing-hopinion] • ╰╸ A GenValid instance in a package's own library gets compiled into the executable. Move it to the matching -gen package.
28.44 s
[thing-hopinion] •
28.54 s
Building /nix/store/pydzfparv6i9vjr5s4h6189fm4820hkm-lonely-hopinion.drv
28.56 s
Building /nix/store/8dkgwagc81f68i0rsv3nyk54p2vx9msa-thing-gen-hopinion.drv
28.56 s
[thing-hopinion] │ Note: A generator is test code, and an instance in the library is linked into everything that depends on the library, so the shipped executable carries QuickCheck and the generators with it. The -gen package exists so that dependency stops at the test suite, which is also what keeps a generator free to be as slow or as elaborate as the property needs.
28.56 s
[thing-hopinion] │ Hint: To suppress, write this directly above line 9 of thing/src/Thing.hs, and say why: -- [allow:HsGenValidInGenPackage] <reason>
28.56 s
[thing-hopinion] ─────╯
28.56 s
[thing-hopinion]
28.56 s
[thing-hopinion] [error ExampleNoShouting] : A comment in capitals.
28.56 s
[thing-hopinion] ╭──▶ thing/src/Thing.hs@16:1-16:42
28.56 s
[thing-hopinion] │
28.56 s
[thing-hopinion] 16 │ - - S H O U T I N G , W H I C H N O S H I P P E D R U L E M I N D S .
28.56 s
[thing-hopinion] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
28.56 s
[thing-hopinion] • ╰╸ A comment in this repository is not written in capitals.
28.56 s
[thing-hopinion] •
28.56 s
[thing-hopinion] │ Note: There is no standard about this and there does not need to be. It is here to be a rule that hopinion does not ship, so that a repository adding one of its own can be watched doing it.
28.56 s
[thing-hopinion] │ Hint: To suppress, write this directly above line 17 of thing/src/Thing.hs, and say why: -- [allow:ExampleNoShouting] <reason>
28.56 s
[thing-hopinion] ─────╯
28.64 s
[thing-hopinion:post-build] Uploading to the NixCI staging cache: /nix/store/g9hlpys7f68nifmf2ns2lxzrs89fprvg-thing-hopinion
28.68 s
[thing-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
28.69 s
[thing-hopinion:post-build] copying 1 paths...
28.69 s
[thing-hopinion:post-build] copying path '/nix/store/g9hlpys7f68nifmf2ns2lxzrs89fprvg-thing-hopinion' to 'https://cache.staging.nix-ci.com'...
28.98 s
[thing-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
29.18 s
[thing-hopinion:post-build] copying 0 paths...
29.20 s
Uploaded thing-hopinion in 576ms
29.20 s
Progress: 3 of 9 built (2 building), 48 of 48 downloaded from cache
29.20 s
Built thing-hopinion in 8.2s
29.24 s
Building /nix/store/jjnly7ybfcx6xdgdn72yrsmrb01n8gis-hopinion-project.drv
29.24 s
[lonely-hopinion] [error HsGenValidInGenPackage] : A GenValid instance outside a -gen package.
29.24 s
[lonely-hopinion] ╭──▶ lonely/src/Lonely.hs@8:1-8:25
29.24 s
[lonely-hopinion] │
29.24 s
[lonely-hopinion] 8 │ i n s t a n c e G e n V a l i d O r p h a n
29.24 s
[lonely-hopinion] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
29.24 s
[lonely-hopinion] • ╰╸ A GenValid instance in a package's own library gets compiled into the executable. Move it to the matching -gen package.
29.24 s
[lonely-hopinion] •
29.24 s
[lonely-hopinion] │ Note: A generator is test code, and an instance in the library is linked into everything that depends on the library, so the shipped executable carries QuickCheck and the generators with it. The -gen package exists so that dependency stops at the test suite, which is also what keeps a generator free to be as slow or as elaborate as the property needs.
29.24 s
[lonely-hopinion] │ Hint: To suppress, write this directly above line 8 of lonely/src/Lonely.hs, and say why: -- [allow:HsGenValidInGenPackage] <reason>
29.24 s
[lonely-hopinion] ─────╯
29.26 s
[thing-gen-hopinion:post-build] Uploading to the NixCI staging cache: /nix/store/lh34vmgw6sfhixkwx7h4pa7xx6j1gpy0-thing-gen-hopinion
29.31 s
[thing-gen-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
29.32 s
[thing-gen-hopinion:post-build] copying 1 paths...
29.32 s
[thing-gen-hopinion:post-build] copying path '/nix/store/lh34vmgw6sfhixkwx7h4pa7xx6j1gpy0-thing-gen-hopinion' to 'https://cache.staging.nix-ci.com'...
29.59 s
[thing-gen-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
29.90 s
[thing-gen-hopinion:post-build] copying 0 paths...
29.92 s
Uploaded thing-gen-hopinion in 669ms
29.92 s
Progress: 4 of 9 built (2 building), 48 of 48 downloaded from cache
29.92 s
Built thing-gen-hopinion in 1.3s
29.92 s
[hopinion-project] [error HsGenValidInGenPackage] : A GenValid instance outside a -gen package.
29.92 s
[hopinion-project] ╭──▶ lonely/src/Lonely.hs@8:1-8:25
29.92 s
[hopinion-project] │
29.92 s
[hopinion-project] 8 │ i n s t a n c e G e n V a l i d O r p h a n
29.92 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
29.92 s
[hopinion-project] • ╰╸ A GenValid instance in a package's own library gets compiled into the executable. Move it to the matching -gen package.
29.92 s
[hopinion-project] •
29.92 s
[hopinion-project] │ Note: A generator is test code, and an instance in the library is linked into everything that depends on the library, so the shipped executable carries QuickCheck and the generators with it. The -gen package exists so that dependency stops at the test suite, which is also what keeps a generator free to be as slow or as elaborate as the property needs.
29.92 s
[hopinion-project] │ Hint: To suppress, write this directly above line 8 of lonely/src/Lonely.hs, and say why: -- [allow:HsGenValidInGenPackage] <reason>
29.92 s
[hopinion-project] ─────╯
29.92 s
[hopinion-project]
29.92 s
[hopinion-project] [error TestGenValidSpecPerGenValid] : No genValidSpec @Orphan anywhere, and there is no lonely-gen for it to be written in.
29.92 s
[hopinion-project] ╭──▶ lonely/src/Lonely.hs@8:1-8:25
29.92 s
[hopinion-project] │
29.92 s
[hopinion-project] 8 │ i n s t a n c e G e n V a l i d O r p h a n
29.92 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
29.92 s
[hopinion-project] • ╰╸ A GenValid instance creates an obligation: genValidSpec @T must be called in the test suite of that package's gen package.
29.92 s
[hopinion-project] •
29.92 s
[hopinion-project] │ Note: A generator nothing runs is a generator nobody has checked. genValid can produce values the type's own Validity instance rejects, and shrinkValid can shrink to them, and every property built on it inherits that quietly: the failures it reports are about values the code was never meant to see. genValidSpec asserts exactly the two things the instance promises, and it is one line. The spec belongs to the package that declares the instance, because a spec written next door disappears the day that other package stops mentioning the type.
29.92 s
[hopinion-project] │ Hint: To suppress, write this directly above line 8 of lonely/src/Lonely.hs, and say why: -- [allow:TestGenValidSpecPerGenValid] <reason>
29.92 s
[hopinion-project] ─────╯
29.92 s
[hopinion-project]
29.92 s
[hopinion-project] [error CommentBareTodo] : A bare TODO. Reference an issue or a URL, or do it.
29.92 s
[hopinion-project] ╭──▶ thing/src/Thing.hs@3:1-3:58
29.92 s
[hopinion-project] │
30.04 s
[lonely-hopinion:post-build] Uploading to the NixCI staging cache: /nix/store/dv7vwxz73m61da9qfrf13ars4qqg1m7n-lonely-hopinion
30.08 s
[lonely-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
30.09 s
[lonely-hopinion:post-build] copying 1 paths...
30.09 s
[lonely-hopinion:post-build] copying path '/nix/store/dv7vwxz73m61da9qfrf13ars4qqg1m7n-lonely-hopinion' to 'https://cache.staging.nix-ci.com'...
30.35 s
[lonely-hopinion:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
30.57 s
[lonely-hopinion:post-build] copying 0 paths...
30.59 s
Uploaded lonely-hopinion in 562ms
30.59 s
Progress: 5 of 9 built (1 building), 48 of 48 downloaded from cache
30.59 s
Built lonely-hopinion in 2.0s
30.63 s
Building /nix/store/56lyq7z2xk5lqv0cdj7xlx2awmk9vgc7-hopinion-project.drv
30.63 s
[hopinion-project] 3 │ - - T O D O a b a r e m a r k e r , w h i c h i s t h e m o d u l e - l e v e l f i n d i n g .
30.63 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
30.63 s
[hopinion-project] • ╰╸ A TODO needs an issue reference or a URL saying where the follow-up is tracked.
30.63 s
[hopinion-project] •
30.63 s
[hopinion-project] │ Note: A TODO nothing points at is a note nobody is holding. It reads like a plan, so the next reader assumes it is one, and it goes stale in place because nothing brings it back up. A reference makes it findable from wherever the work is actually tracked; doing it makes the note unnecessary. If it is neither tracked nor worth doing, the honest version is a comment that says what is missing and what would make it worth doing.
30.63 s
[hopinion-project] │ Hint: To suppress, write this directly above line 4 of thing/src/Thing.hs, and say why: -- [allow:CommentBareTodo] <reason>
30.63 s
[hopinion-project] ─────╯
30.63 s
[hopinion-project]
30.63 s
[hopinion-project] [error HsGenValidInGenPackage] : A GenValid instance outside a -gen package.
30.63 s
[hopinion-project] ╭──▶ thing/src/Thing.hs@9:1-9:25
30.63 s
[hopinion-project] │
30.63 s
[hopinion-project] 9 │ i n s t a n c e G e n V a l i d W i d g e t
30.63 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
30.63 s
[hopinion-project] • ╰╸ A GenValid instance in a package's own library gets compiled into the executable. Move it to the matching -gen package.
30.63 s
[hopinion-project] •
30.63 s
[hopinion-project] │ Note: A generator is test code, and an instance in the library is linked into everything that depends on the library, so the shipped executable carries QuickCheck and the generators with it. The -gen package exists so that dependency stops at the test suite, which is also what keeps a generator free to be as slow or as elaborate as the property needs.
30.63 s
[hopinion-project] │ Hint: To suppress, write this directly above line 9 of thing/src/Thing.hs, and say why: -- [allow:HsGenValidInGenPackage] <reason>
30.63 s
[hopinion-project] ─────╯
30.63 s
[hopinion-project]
30.63 s
[hopinion-project] [error TestGenValidSpecPerGenValid] : No genValidSpec @Widget anywhere in thing-gen's test suite.
30.63 s
[hopinion-project] ╭──▶ thing/src/Thing.hs@9:1-9:25
30.63 s
[hopinion-project] │
30.63 s
[hopinion-project] 9 │ i n s t a n c e G e n V a l i d W i d g e t
30.63 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
30.63 s
[hopinion-project] • ╰╸ A GenValid instance creates an obligation: genValidSpec @T must be called in the test suite of that package's gen package.
30.63 s
[hopinion-project] •
30.63 s
[hopinion-project] │ Note: A generator nothing runs is a generator nobody has checked. genValid can produce values the type's own Validity instance rejects, and shrinkValid can shrink to them, and every property built on it inherits that quietly: the failures it reports are about values the code was never meant to see. genValidSpec asserts exactly the two things the instance promises, and it is one line. The spec belongs to the package that declares the instance, because a spec written next door disappears the day that other package stops mentioning the type.
30.63 s
[hopinion-project] │ Hint: To suppress, write this directly above line 9 of thing/src/Thing.hs, and say why: -- [allow:TestGenValidSpecPerGenValid] <reason>
30.63 s
[hopinion-project] ─────╯
30.63 s
[hopinion-project]
30.63 s
[hopinion-project] [error ExampleNoShouting] : A comment in capitals.
30.63 s
[hopinion-project] ╭──▶ thing/src/Thing.hs@16:1-16:42
30.63 s
[hopinion-project] │
30.63 s
[hopinion-project] 16 │ - - S H O U T I N G , W H I C H N O S H I P P E D R U L E M I N D S .
30.63 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
30.63 s
[hopinion-project] • ╰╸ A comment in this repository is not written in capitals.
30.63 s
[hopinion-project] •
30.63 s
[hopinion-project] │ Note: There is no standard about this and there does not need to be. It is here to be a rule that hopinion does not ship, so that a repository adding one of its own can be watched doing it.
30.63 s
[hopinion-project] │ Hint: To suppress, write this directly above line 17 of thing/src/Thing.hs, and say why: -- [allow:ExampleNoShouting] <reason>
30.63 s
[hopinion-project] ─────╯
30.65 s
[hopinion-project:post-build] Uploading to the NixCI staging cache: /nix/store/dr4nxz0kxn5p7jmk4s80dsir4lh2lp82-hopinion-project
30.70 s
[hopinion-project:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
30.83 s
[hopinion-project:post-build] copying 1 paths...
30.83 s
[hopinion-project:post-build] copying path '/nix/store/dr4nxz0kxn5p7jmk4s80dsir4lh2lp82-hopinion-project' to 'https://cache.staging.nix-ci.com'...
31.10 s
[hopinion-project:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
31.32 s
[hopinion-project:post-build] copying 0 paths...
31.34 s
Uploaded hopinion-project in 703ms
31.34 s
Progress: 6 of 9 built (1 building), 48 of 48 downloaded from cache
31.34 s
Built hopinion-project in 2.0s
31.36 s
[hopinion-project] [error HsGenValidInGenPackage] : A GenValid instance outside a -gen package.
31.36 s
[hopinion-project] ╭──▶ lonely/src/Lonely.hs@8:1-8:25
31.36 s
[hopinion-project] │
31.36 s
[hopinion-project] 8 │ i n s t a n c e G e n V a l i d O r p h a n
31.36 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
31.36 s
[hopinion-project] • ╰╸ A GenValid instance in a package's own library gets compiled into the executable. Move it to the matching -gen package.
31.36 s
[hopinion-project] •
31.36 s
[hopinion-project] │ Note: A generator is test code, and an instance in the library is linked into everything that depends on the library, so the shipped executable carries QuickCheck and the generators with it. The -gen package exists so that dependency stops at the test suite, which is also what keeps a generator free to be as slow or as elaborate as the property needs.
31.36 s
[hopinion-project] │ Hint: To suppress, write this directly above line 8 of lonely/src/Lonely.hs, and say why: -- [allow:HsGenValidInGenPackage] <reason>
31.36 s
[hopinion-project] ─────╯
31.36 s
[hopinion-project]
31.36 s
[hopinion-project] [error TestGenValidSpecPerGenValid] : No genValidSpec @Orphan anywhere, and there is no lonely-gen for it to be written in.
31.36 s
[hopinion-project] ╭──▶ lonely/src/Lonely.hs@8:1-8:25
31.36 s
[hopinion-project] │
31.36 s
[hopinion-project] 8 │ i n s t a n c e G e n V a l i d O r p h a n
31.36 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
31.36 s
[hopinion-project] • ╰╸ A GenValid instance creates an obligation: genValidSpec @T must be called in the test suite of that package's gen package.
31.36 s
[hopinion-project] •
31.36 s
[hopinion-project] │ Note: A generator nothing runs is a generator nobody has checked. genValid can produce values the type's own Validity instance rejects, and shrinkValid can shrink to them, and every property built on it inherits that quietly: the failures it reports are about values the code was never meant to see. genValidSpec asserts exactly the two things the instance promises, and it is one line. The spec belongs to the package that declares the instance, because a spec written next door disappears the day that other package stops mentioning the type.
31.36 s
[hopinion-project] │ Hint: To suppress, write this directly above line 8 of lonely/src/Lonely.hs, and say why: -- [allow:TestGenValidSpecPerGenValid] <reason>
31.36 s
[hopinion-project] ─────╯
31.36 s
[hopinion-project]
31.36 s
[hopinion-project] [error CommentBareTodo] : A bare TODO. Reference an issue or a URL, or do it.
31.36 s
[hopinion-project] ╭──▶ thing/src/Thing.hs@3:1-3:58
31.36 s
[hopinion-project] │
31.36 s
[hopinion-project] 3 │ - - T O D O a b a r e m a r k e r , w h i c h i s t h e m o d u l e - l e v e l f i n d i n g .
31.36 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
31.36 s
[hopinion-project] • ╰╸ A TODO needs an issue reference or a URL saying where the follow-up is tracked.
31.36 s
[hopinion-project] •
31.36 s
[hopinion-project] │ Note: A TODO nothing points at is a note nobody is holding. It reads like a plan, so the next reader assumes it is one, and it goes stale in place because nothing brings it back up. A reference makes it findable from wherever the work is actually tracked; doing it makes the note unnecessary. If it is neither tracked nor worth doing, the honest version is a comment that says what is missing and what would make it worth doing.
31.36 s
[hopinion-project] │ Hint: To suppress, write this directly above line 4 of thing/src/Thing.hs, and say why: -- [allow:CommentBareTodo] <reason>
31.36 s
[hopinion-project] ─────╯
31.36 s
[hopinion-project]
31.36 s
[hopinion-project] [error HsGenValidInGenPackage] : A GenValid instance outside a -gen package.
31.36 s
[hopinion-project] ╭──▶ thing/src/Thing.hs@9:1-9:25
31.36 s
[hopinion-project] │
31.36 s
[hopinion-project] 9 │ i n s t a n c e G e n V a l i d W i d g e t
31.36 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
31.36 s
[hopinion-project] • ╰╸ A GenValid instance in a package's own library gets compiled into the executable. Move it to the matching -gen package.
31.36 s
[hopinion-project] •
31.36 s
[hopinion-project] │ Note: A generator is test code, and an instance in the library is linked into everything that depends on the library, so the shipped executable carries QuickCheck and the generators with it. The -gen package exists so that dependency stops at the test suite, which is also what keeps a generator free to be as slow or as elaborate as the property needs.
31.36 s
[hopinion-project] │ Hint: To suppress, write this directly above line 9 of thing/src/Thing.hs, and say why: -- [allow:HsGenValidInGenPackage] <reason>
31.36 s
[hopinion-project] ─────╯
31.36 s
[hopinion-project]
31.36 s
[hopinion-project] [error TestGenValidSpecPerGenValid] : No genValidSpec @Widget anywhere in thing-gen's test suite.
31.36 s
[hopinion-project] ╭──▶ thing/src/Thing.hs@9:1-9:25
31.36 s
[hopinion-project] │
31.36 s
[hopinion-project] 9 │ i n s t a n c e G e n V a l i d W i d g e t
31.36 s
[hopinion-project] • ┬ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─
31.36 s
[hopinion-project] • ╰╸ A GenValid instance creates an obligation: genValidSpec @T must be called in the test suite of that package's gen package.
31.36 s
[hopinion-project] •
31.36 s
[hopinion-project] │ Note: A generator nothing runs is a generator nobody has checked. genValid can produce values the type's own Validity instance rejects, and shrinkValid can shrink to them, and every property built on it inherits that quietly: the failures it reports are about values the code was never meant to see. genValidSpec asserts exactly the two things the instance promises, and it is one line. The spec belongs to the package that declares the instance, because a spec written next door disappears the day that other package stops mentioning the type.
31.36 s
[hopinion-project] │ Hint: To suppress, write this directly above line 9 of thing/src/Thing.hs, and say why: -- [allow:TestGenValidSpecPerGenValid] <reason>
31.36 s
[hopinion-project] ─────╯
31.38 s
[hopinion-project:post-build] Uploading to the NixCI staging cache: /nix/store/2lry0wr2kdkn23fa36szl02y7qg9w4s8-hopinion-project
31.42 s
[hopinion-project:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
31.50 s
[hopinion-project:post-build] copying 1 paths...
31.50 s
[hopinion-project:post-build] copying path '/nix/store/2lry0wr2kdkn23fa36szl02y7qg9w4s8-hopinion-project' to 'https://cache.staging.nix-ci.com'...
31.81 s
[hopinion-project:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
32.00 s
[hopinion-project:post-build] copying 0 paths...
32.03 s
Uploaded hopinion-project in 666ms
32.03 s
Progress: 7 of 9 built, 48 of 48 downloaded from cache
32.03 s
Built hopinion-project in 1.4s
32.06 s
Building /nix/store/kwafi6wjv6iyabm90bryv9hy8b0djy48-e2e-added-rule-is-run.drv
32.11 s
[e2e-added-rule-is-run:post-build] Uploading to the NixCI staging cache: /nix/store/8f8b6qiiwf1yan524jrlg97ajq2nabv3-e2e-added-rule-is-run
32.15 s
[e2e-added-rule-is-run:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
32.16 s
[e2e-added-rule-is-run:post-build] copying 1 paths...
32.16 s
[e2e-added-rule-is-run:post-build] copying path '/nix/store/8f8b6qiiwf1yan524jrlg97ajq2nabv3-e2e-added-rule-is-run' to 'https://cache.staging.nix-ci.com'...
32.44 s
[e2e-added-rule-is-run:post-build] warning: 'warn-short-path-literals' is deprecated, use 'lint-short-path-literals = ignore' instead
32.67 s
[e2e-added-rule-is-run:post-build] copying 0 paths...
32.69 s
Uploaded e2e-added-rule-is-run in 598ms
32.69 s
Progress: 8 of 9 built, 48 of 48 downloaded from cache
32.69 s
Built e2e-added-rule-is-run in 637ms
32.69 s
Progress: 9 of 9 built, 48 of 48 downloaded from cache
32.69 s
/nix/store/8f8b6qiiwf1yan524jrlg97ajq2nabv3-e2e-added-rule-is-run
32.76 s
Build succeeded.