starting new job...
→ running command: cd /etc/byggsteg/job-clone/maak/trunk && sudo guix time-machine --channels=channels.scm -- shell -f guix.scm -- maak test
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 100.0%
substitute:
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 50.0%
looking for substitutes on 'https://ci.guix.gnu.org'... 100.0%
substitute:
substitute: looking for substitutes on 'https://ci.guix.gnu.org'... 0.0%
The following derivation will be built:
/gnu/store/kj75scrpmp3qwcc9cxn1ybbbc59cyx8y-maak-dev.drv
0.2 MB will be downloaded
.
building /gnu/store/kj75scrpmp3qwcc9cxn1ybbbc59cyx8y-maak-dev.drv...
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 100.0%
8% ▕█████▌ ▏
15% ▕███████████▏ ▏
23% ▕████████████████▊ ▏
31% ▕██████████████████████▍ ▏
38% ▕████████████████████████████ ▏
46% ▕█████████████████████████████████▋ ▏
54% ▕███████████████████████████████████████▎ ▏
62% ▕████████████████████████████████████████████▉ ▏
69% ▕██████████████████████████████████████████████████▌ ▏
77% ▕████████████████████████████████████████████████████████▏ ▏
85% ▕█████████████████████████████████████████████████████████████▊ ▏
92% ▕███████████████████████████████████████████████████████████████████▍ ▏
100% ▕█████████████████████████████████████████████████████████████████████████▏
100% ▕█████████████████████████████████████████████████████████████████████████▏substitute:
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 1.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 2.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 3.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 4.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 5.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 7.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 8.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 9.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 10.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 11.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 12.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 14.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 15.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 16.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 17.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 18.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 20.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 21.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 22.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 23.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 24.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 25.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 27.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 28.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 29.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 30.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 31.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 32.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 34.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 35.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 36.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 37.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 38.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 40.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 41.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 42.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 43.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 44.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 45.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 47.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 48.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 49.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 50.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 51.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 52.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 54.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 55.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 56.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 57.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 58.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 60.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 61.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 62.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 63.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 64.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 65.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 67.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 68.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 69.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 70.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 71.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 72.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 74.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 75.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 76.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 77.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 78.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 80.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 81.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 82.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 83.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 84.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 85.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 87.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 88.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 89.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 90.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 91.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 92.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 94.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 95.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 96.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 97.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 98.8%
10.3 MB will be downloaded
.
looking for substitutes on 'https://bordeaux.guix.gnu.org'... 100.0%
substitute:
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 14.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 28.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 42.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 57.1%
looking for substitutes on 'https://bordeaux.guix.gnu.org'... 71.4%
looking for substitutes on 'https://bordeaux.guix.gnu.org'... 85.7%
4.1 MB will be downloaded
.
looking for substitutes on 'https://bordeaux.guix.gnu.org'... 100.0%
substitute:
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.0%
substitute: looking for substitutes on 'https://ci.guix.gnu.org'... 100.0%
substitute:
substitute: looking for substitutes on 'https://ci.guix.gnu.org'... 0.0%
The following derivation will be built:
/gnu/store/qjrhn8zk23iadhk421lbx3i4ddr6blwb-profile.drv
0.1 MB will be downloaded
..
building CA certificate bundle...
listing Emacs sub-directories...
building fonts directory...
building directory of Info manuals...
building profile with 1 package...
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 100.0%
substitute:
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 1.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 1.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 1.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 1.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 2.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 2.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 2.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 3.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 3.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 3.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 4.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 4.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 4.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 5.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 5.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 5.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 6.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 6.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 6.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 7.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 7.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 7.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 8.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 8.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 8.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 9.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 9.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 9.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 10.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 10.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 10.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 10.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 11.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 11.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 11.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 12.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 12.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 12.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 13.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 13.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 13.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 14.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 14.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 14.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 15.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 15.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 15.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 16.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 16.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 16.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 17.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 17.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 17.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 18.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 18.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 18.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 19.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 19.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 19.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 19.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 20.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 20.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 20.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 21.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 21.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 21.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 22.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 22.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 22.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 23.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 23.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 23.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 24.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 24.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 24.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 25.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 25.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 25.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 26.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 26.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 26.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 27.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 27.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 27.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 28.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 28.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 28.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 28.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 29.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 29.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 29.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 30.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 30.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 30.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 31.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 31.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 31.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 32.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 32.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 32.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 33.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 33.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 33.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 34.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 34.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 34.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 35.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 35.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 35.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 36.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 36.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 36.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 37.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 37.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 37.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 37.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 38.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 38.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 38.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 39.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 39.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 39.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 40.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 40.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 40.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 41.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 41.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 41.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 42.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 42.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 42.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 43.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 43.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 43.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 44.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 44.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 44.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 45.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 45.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 45.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 46.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 46.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 46.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 46.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 47.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 47.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 47.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 48.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 48.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 48.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 49.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 49.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 49.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 50.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 50.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 50.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 51.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 51.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 51.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 52.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 52.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 52.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 53.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 53.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 53.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 54.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 54.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 54.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 55.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 55.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 55.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 55.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 56.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 56.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 56.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 57.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 57.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 57.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 58.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 58.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 58.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 59.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 59.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 59.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 60.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 60.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 60.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 61.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 61.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 61.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 62.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 62.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 62.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 63.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 63.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 63.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 64.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 64.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 64.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 65.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 65.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 65.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 65.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 66.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 66.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 66.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 67.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 67.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 67.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 68.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 68.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 68.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 69.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 69.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 69.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 70.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 70.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 70.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 71.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 71.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 71.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 72.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 72.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 72.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 73.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 73.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 73.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 74.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 74.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 74.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 74.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 75.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 75.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 75.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 76.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 76.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 76.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 77.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 77.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 77.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 78.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 78.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 78.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 79.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 79.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 79.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 80.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 80.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 80.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 81.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 81.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 81.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 82.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 82.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 82.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 83.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 83.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 83.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 83.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 84.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 84.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 84.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 85.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 85.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 85.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 86.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 86.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 86.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 87.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 87.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 87.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 88.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 88.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 88.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 89.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 89.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 89.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 90.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 90.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 90.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 91.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 91.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 91.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 92.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 92.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 92.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 92.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 93.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 93.6%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 93.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 94.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 94.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 94.9%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 95.2%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 95.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 95.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 96.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 96.5%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 96.8%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 97.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 97.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 97.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 98.1%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 98.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 98.7%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 99.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 99.4%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 99.7%
16.8 MB will be downloaded
..
.
.
.
..
..
.
.
.
..
..
..
.
..
.
..
..
.
..
.
..
.
.
..
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 100.0%
substitute:
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.0%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 33.3%
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 66.7%
2.6 MB will be downloaded
.
looking for substitutes on 'https://bordeaux.guix.gnu.org'... 100.0%
substitute:
substitute: looking for substitutes on 'https://bordeaux.guix.gnu.org'... 0.0%
0.3 MB will be downloaded
..
scanning directories for unit tests...
scanning present working directory for unit tests...
shuffled the files with seed 617052707 (replay with VERITAS_SEED=617052707)
found unit tests: (errors.scm net.scm guix.scm git.scm cli.scm niri.scm container.scm shell.scm elevation.scm commands.scm tasks.scm docstrings.scm dsl.scm archive.scm integration.scm)
running unit tests from file: errors.scm, entrypoint: spec
+----------------------------------------------+
[📑 suite] Messages of caught errors
[🧪 test] an error message is reported as it stands✅ got: boom
[🧪 test] an unbound variable is named✅ got: Unbound variable: no-such-binding
[🧪 test] a primitive failure explains itself✅ got: expecting pair
[🧪 test] a primitive failure is not named by the procedure✅ got: #f
[🧪 test] a missing module is named the way Guile names it✅ got: no code for module (no such module)
[🧪 test] the irritants of a user error are shown✅ got: custom a b
[🧪 test] a template that cannot be filled is shown as it stands✅ got: thrown ~S here
+----------------------------------------------+
[📑 suite] Reporting to the user
[🧪 test] a maak error is labelled✅ got: maak: error:
[🧪 test] a maak error prints its message✅ got: Unknown task: nope
[🧪 test] a maak error prints its hint✅ got: hint: Available tasks: build, test
[🧪 test] a maak error prints no backtrace✅ got: #f
[🧪 test] a maak error without a hint prints its message✅ got: nope
[🧪 test] a maak error without a hint prints no hint✅ got: #f
[🧪 test] an unexpected error prints what went wrong✅ got: boom
[🧪 test] an unexpected error points at the debug switch✅ got: MAAK_DEBUG=1
[🧪 test] an unexpected error prints no backtrace✅ got: #f
[🧪 test] a missing module names the module✅ got: no code for module (no such module)
[🧪 test] a missing module points at the load path switch✅ got: -L/--load-path
[🧪 test] a missing module names the load path variable✅ got: MAAK_LOAD_PATH
[🧪 test] an unbound variable is named✅ got: no-such-binding
[🧪 test] an unbound variable says where it is not bound✅ got: is not bound here
[🧪 test] an unbound variable explains the import rule✅ got: resolve-moduleℹ️ info - ran 2 tasks in: 0 seconds, 3933 microseconds
running unit tests from file: net.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-net-both-7010'
removed '/tmp/maak-test-net-both-7010/curl'
removed '/tmp/maak-test-net-both-7010/wget'
removed directory '/tmp/maak-test-net-both-7010'
mkdir: created directory '/tmp/maak-test-net-wget-only-7010'
removed '/tmp/maak-test-net-wget-only-7010/wget'
removed directory '/tmp/maak-test-net-wget-only-7010'
mkdir: created directory '/tmp/maak-test-net-empty-path-7010'
removed directory '/tmp/maak-test-net-empty-path-7010'
mkdir: created directory '/tmp/maak-test-net-preferred-7010'
removed '/tmp/maak-test-net-preferred-7010/curl'
removed directory '/tmp/maak-test-net-preferred-7010'
mkdir: created directory '/tmp/maak-test-net-empty-preference-7010'
removed '/tmp/maak-test-net-empty-preference-7010/wget'
removed directory '/tmp/maak-test-net-empty-preference-7010'
mkdir: created directory '/tmp/maak-test-net-available-7010'
removed '/tmp/maak-test-net-available-7010/wget'
removed directory '/tmp/maak-test-net-available-7010'
mkdir: created directory '/tmp/maak-test-net-unavailable-7010'
removed directory '/tmp/maak-test-net-unavailable-7010'
+----------------------------------------------+
[📑 suite] Fetch command detection
[🧪 test] curl is preferred when both are installed✅ got: curl
[🧪 test] wget is the fallback when curl is missing✅ got: wget
[🧪 test] curl is the fallback when nothing is installed✅ got: curl
[🧪 test] an explicit preference wins✅ got: wget
[🧪 test] an empty preference is ignored✅ got: wget
[🧪 test] the default fetch command is a non-empty string✅ got: #t
[🧪 test] fetch-available? looks for the chosen program✅ got: #t
[🧪 test] fetch-available? is false for a missing program✅ got: #f
+----------------------------------------------+
[📑 suite] curl commands
[🧪 test] the generic builder is just curl and its arguments✅ got: (curl --version)
[🧪 test] the generic runner prints its command✅ got: curl --version
[🧪 test] curl-output returns nothing in a dry run✅ got:
[🧪 test] a get has task-safe defaults✅ got: (curl --location --fail --silent --show-error --compressed https://example.org/file)
[🧪 test] a get carries every option in a stable order✅ got: (curl --location --fail --silent --show-error --compressed --output out.bin --output-dir dist --create-dirs --continue-at - --header X-A: 1 --header X-B: 2 --user me:secret --user-agent maak-test --max-time 30 --retry 3 --insecure --cookie cookies.txt --cookie-jar jar.txt --http1.1 https://example.org/file)
[🧪 test] a head request is a HEAD without the body✅ got: (curl --location --fail --silent --show-error --compressed --head https://example.org/file)
[🧪 test] a status request discards the body and prints only the code✅ got: (curl --location --silent --compressed --output /dev/null --write-out %{http_code} https://example.org/file)
[🧪 test] a status in a dry run has no code to answer✅ got: #f
[🧪 test] a JSON post sends --json✅ got: (curl --location --fail --silent --show-error --compressed --request POST --json {"ok":true} https://example.org/api)
[🧪 test] a data post sends --data✅ got: (curl --location --fail --silent --show-error --compressed --request POST --data a=1&b=2 https://example.org/api)
[🧪 test] a file post sends --data-binary with an @ path✅ got: (curl --location --fail --silent --show-error --compressed --request POST --data-binary @body.json https://example.org/api)
[🧪 test] a form post sends each field✅ got: (curl --location --fail --silent --show-error --compressed --request POST --form a=1 --form b=2 https://example.org/api)
[🧪 test] a post can use another method, or imply it✅ got: (curl --location --fail --silent --show-error --compressed --request PATCH --data x https://example.org/api)✅ got: #f
[🧪 test] a download without an output keeps the remote name✅ got: (curl --location --fail --silent --show-error --compressed --create-dirs --remote-name https://example.org/file)
[🧪 test] a download can name a file and resume it✅ got: (curl --location --fail --silent --show-error --compressed --output file --output-dir dist --create-dirs --continue-at - https://example.org/file)
[🧪 test] an upload is a PUT with --upload-file✅ got: (curl --location --fail --silent --show-error --compressed --request PUT --upload-file artifact.bin https://example.org/artifact.bin)
[🧪 test] text names the URL after the common options✅ got: (curl --location --fail --silent --show-error --compressed https://example.org/file)
[🧪 test] text returns nothing in a dry run✅ got:
[🧪 test] an empty URL is refused✅ success catching error: %exception: (#<&maak-error message: "curl-text expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)✅ success catching error: %exception: (#<&maak-error message: "curl-download expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)✅ success catching error: %exception: (#<&maak-error message: "curl-get expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)✅ success catching error: %exception: (#<&maak-error message: "curl-upload expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)✅ success catching error: %exception: (#<&maak-error message: "curl-status expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)
[🧪 test] a header list must be a list of strings✅ success catching error: %exception: (#<&maak-error message: "curl expects #:headers to be a list of strings, got \"X: 1\"" hint: "Write the values as separate strings, for example (list \"a\" \"b\").">)✅ success catching error: %exception: (#<&maak-error message: "curl expects #:headers to be a list of strings, got (1)" hint: "Write the values as separate strings, for example (list \"a\" \"b\").">)
[🧪 test] a timeout must be a non-negative integer✅ success catching error: %exception: (#<&maak-error message: "curl expects #:timeout to be a non-negative integer, got \"30\"" hint: "Write a non-negative integer, such as 30 or 3.">)✅ success catching error: %exception: (#<&maak-error message: "curl expects #:timeout to be a non-negative integer, got -1" hint: "Write a non-negative integer, such as 30 or 3.">)
[🧪 test] a post without a body is refused✅ success catching error: %exception: (#<&maak-error message: "curl-post expects a body: data, json, data-file or form" hint: "Write (curl-post url #:json \"{\\\"ok\\\":true}\").">)
[🧪 test] an upload without a file is refused✅ success catching error: %exception: (#<&maak-error message: "curl-upload expects the file to upload" hint: "Write (curl-upload url \"artifact.tar.gz\").">)
[🧪 test] a generic call refuses arguments that are not strings✅ success catching error: %exception: (#<&maak-error message: "curl expects #:arguments to be a list of strings, got (\"--version\" 3)" hint: "Write the values as separate strings, for example (list \"a\" \"b\").">)
+----------------------------------------------+
[📑 suite] wget commands
[🧪 test] the generic builder is just wget and its arguments✅ got: (wget --version)
[🧪 test] the generic runner prints its command✅ got: wget --version
[🧪 test] wget-output returns nothing in a dry run✅ got:
[🧪 test] a bare download is wget and the URL✅ got: (wget https://example.org/file)
[🧪 test] a download carries every option in a stable order✅ got: (wget --quiet --continue --output-document file --directory-prefix dist --timestamping --no-clobber --header X-A: 1 --user me --password secret --timeout 10 --tries 2 --user-agent maak-test --no-check-certificate https://example.org/file)
[🧪 test] a mirror stays under the URL by default✅ got: (wget --recursive --no-parent --no-host-directories https://example.org/docs)
[🧪 test] a mirror can take the whole page and cut path components✅ got: (wget --quiet --directory-prefix site --recursive --no-parent --page-requisites --convert-links --cut-dirs=2 --no-host-directories https://example.org/docs)
[🧪 test] a text fetch writes the body to standard output✅ got: (wget --quiet --output-document=- https://example.org/file)
[🧪 test] text returns nothing in a dry run✅ got:
[🧪 test] an empty URL is refused✅ success catching error: %exception: (#<&maak-error message: "wget-mirror expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)✅ success catching error: %exception: (#<&maak-error message: "wget-text expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)✅ success catching error: %exception: (#<&maak-error message: "wget-download expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)
[🧪 test] a header list must be a list of strings✅ success catching error: %exception: (#<&maak-error message: "wget expects #:headers to be a list of strings, got (\"X: 1\" 2)" hint: "Write the values as separate strings, for example (list \"a\" \"b\").">)
[🧪 test] a timeout and a try count must be non-negative integers✅ success catching error: %exception: (#<&maak-error message: "wget expects #:timeout to be a non-negative integer, got -1" hint: "Write a non-negative integer, such as 30 or 3.">)✅ success catching error: %exception: (#<&maak-error message: "wget expects #:tries to be a non-negative integer, got \"3\"" hint: "Write a non-negative integer, such as 30 or 3.">)
[🧪 test] a generic call refuses arguments that are not strings✅ success catching error: %exception: (#<&maak-error message: "wget expects #:arguments to be a list of strings, got (\"--version\" 3)" hint: "Write the values as separate strings, for example (list \"a\" \"b\").">)
+----------------------------------------------+
[📑 suite] Choosing a downloader
[🧪 test] download uses curl by default✅ got: curl --location --fail --silent --show-error --compressed --output file --create-dirs https://example.org/file
[🧪 test] download can use wget✅ got: wget --quiet --output-document file https://example.org/file
[🧪 test] download reads the fetch-command parameter✅ got: wget --quiet --output-document file https://example.org/file
[🧪 test] download turns a user and password into curl's --user✅ got: --user me:secret
[🧪 test] download passes wget's user and password separately✅ got: --user me --password secret
[🧪 test] a password without a user is refused✅ success catching error: %exception: (#<&maak-error message: "download expects a user when a password is given" hint: "Pass #:user too, or put the credentials in the URL.">)
[🧪 test] an unknown downloader is refused✅ success catching error: %exception: (#<&maak-error message: "download expects curl or wget, got \"fetch\"" hint: "Set MAAK_FETCH to curl or wget.">)
[🧪 test] download refuses an empty URL✅ success catching error: %exception: (#<&maak-error message: "download expects a URL" hint: "Write (curl-get \"https://example.org/file\").">)ℹ️ info - ran 4 tasks in: 0 seconds, 15072 microseconds
running unit tests from file: guix.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-guix-7010'
removed '/tmp/maak-test-guix-7010/channels.scm'
removed directory '/tmp/maak-test-guix-7010'
mkdir: created directory '/tmp/maak-test-guix-7010'
removed '/tmp/maak-test-guix-7010/channels.scm'
removed directory '/tmp/maak-test-guix-7010'
mkdir: created directory '/tmp/maak-test-guix-7010'
removed '/tmp/maak-test-guix-7010/guix'
removed directory '/tmp/maak-test-guix-7010'
mkdir: created directory '/tmp/maak-test-guix-7010'
removed '/tmp/maak-test-guix-7010/guix'
removed directory '/tmp/maak-test-guix-7010'
mkdir: created directory '/tmp/maak-test-guix-7010'
removed '/tmp/maak-test-guix-7010/channels.scm'
removed directory '/tmp/maak-test-guix-7010'
+----------------------------------------------+
[📑 suite] Guix values
[🧪 test] guix-available? answers with a boolean✅ got: #t
[🧪 test] a missing channels file is named in the error✅ got: #t
[🧪 test] a package name cannot be empty✅ got: #t
[🧪 test] a pinned revision has to be a commit✅ got: #t
[🧪 test] guix-program refuses arguments that are not a list✅ success catching error: %exception: (#<&maak-error message: "guix-program expects its arguments as a list of strings" hint: "Write (guix-program \"hello\" '(--version)).">)
[🧪 test] a query without Guix says how to get it✅ got: #t
[🧪 test] guix-channels reads the pins of a channels file✅ got: 40
[🧪 test] a query removes the file it ran✅ got: #t
[🧪 test] a failed query keeps the file it ran, and names it✅ got: #t
[🧪 test] a dry run prints the query instead of asking Guix✅ got: #tℹ️ info - ran 1 tasks in: 0 seconds, 1247 microseconds
running unit tests from file: git.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-git-init-7010'
removed '/tmp/maak-test-git-init-7010/.git/description'
removed '/tmp/maak-test-git-init-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-init-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-init-7010/.git/hooks'
removed '/tmp/maak-test-git-init-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-init-7010/.git/info'
removed directory '/tmp/maak-test-git-init-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-init-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-init-7010/.git/refs'
removed '/tmp/maak-test-git-init-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-init-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-init-7010/.git/objects/info'
removed directory '/tmp/maak-test-git-init-7010/.git/objects'
removed '/tmp/maak-test-git-init-7010/.git/config'
removed directory '/tmp/maak-test-git-init-7010/.git'
removed directory '/tmp/maak-test-git-init-7010'
mkdir: created directory '/tmp/maak-test-git-add-7010'
removed '/tmp/maak-test-git-add-7010/.git/description'
removed '/tmp/maak-test-git-add-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-add-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-add-7010/.git/hooks'
removed '/tmp/maak-test-git-add-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-add-7010/.git/info'
removed directory '/tmp/maak-test-git-add-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-add-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-add-7010/.git/refs'
removed '/tmp/maak-test-git-add-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-add-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-add-7010/.git/objects/info'
removed '/tmp/maak-test-git-add-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-add-7010/.git/objects/43'
removed directory '/tmp/maak-test-git-add-7010/.git/objects'
removed '/tmp/maak-test-git-add-7010/.git/config'
removed '/tmp/maak-test-git-add-7010/.git/index'
removed directory '/tmp/maak-test-git-add-7010/.git'
removed '/tmp/maak-test-git-add-7010/a.txt'
removed directory '/tmp/maak-test-git-add-7010'
mkdir: created directory '/tmp/maak-test-git-commit-7010'
[trunk (root-commit) 190e5b4] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-commit-7010/.git/description'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-commit-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-commit-7010/.git/hooks'
removed '/tmp/maak-test-git-commit-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-commit-7010/.git/info'
removed '/tmp/maak-test-git-commit-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-commit-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-commit-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-commit-7010/.git/refs'
removed '/tmp/maak-test-git-commit-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-commit-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-commit-7010/.git/objects/info'
removed '/tmp/maak-test-git-commit-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-commit-7010/.git/objects/43'
removed '/tmp/maak-test-git-commit-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-commit-7010/.git/objects/07'
removed '/tmp/maak-test-git-commit-7010/.git/objects/19/0e5b4c4b8da13e7f2966b2ad8ce78f9ed502b0'
removed directory '/tmp/maak-test-git-commit-7010/.git/objects/19'
removed directory '/tmp/maak-test-git-commit-7010/.git/objects'
removed '/tmp/maak-test-git-commit-7010/.git/config'
removed '/tmp/maak-test-git-commit-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-commit-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-commit-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-commit-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-commit-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-commit-7010/.git/logs'
removed '/tmp/maak-test-git-commit-7010/.git/index'
removed directory '/tmp/maak-test-git-commit-7010/.git'
removed '/tmp/maak-test-git-commit-7010/a.txt'
removed directory '/tmp/maak-test-git-commit-7010'
mkdir: created directory '/tmp/maak-test-git-revision-7010'
[trunk (root-commit) 190e5b4] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-revision-7010/.git/description'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-revision-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-revision-7010/.git/hooks'
removed '/tmp/maak-test-git-revision-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-revision-7010/.git/info'
removed '/tmp/maak-test-git-revision-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-revision-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-revision-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-revision-7010/.git/refs'
removed '/tmp/maak-test-git-revision-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-revision-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-revision-7010/.git/objects/info'
removed '/tmp/maak-test-git-revision-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-revision-7010/.git/objects/43'
removed '/tmp/maak-test-git-revision-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-revision-7010/.git/objects/07'
removed '/tmp/maak-test-git-revision-7010/.git/objects/19/0e5b4c4b8da13e7f2966b2ad8ce78f9ed502b0'
removed directory '/tmp/maak-test-git-revision-7010/.git/objects/19'
removed directory '/tmp/maak-test-git-revision-7010/.git/objects'
removed '/tmp/maak-test-git-revision-7010/.git/config'
removed '/tmp/maak-test-git-revision-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-revision-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-revision-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-revision-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-revision-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-revision-7010/.git/logs'
removed '/tmp/maak-test-git-revision-7010/.git/index'
removed directory '/tmp/maak-test-git-revision-7010/.git'
removed '/tmp/maak-test-git-revision-7010/a.txt'
removed directory '/tmp/maak-test-git-revision-7010'
mkdir: created directory '/tmp/maak-test-git-dirty-7010'
[trunk (root-commit) 190e5b4] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-dirty-7010/.git/description'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-dirty-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-dirty-7010/.git/hooks'
removed '/tmp/maak-test-git-dirty-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-dirty-7010/.git/info'
removed '/tmp/maak-test-git-dirty-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-dirty-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-dirty-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-dirty-7010/.git/refs'
removed '/tmp/maak-test-git-dirty-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-dirty-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-dirty-7010/.git/objects/info'
removed '/tmp/maak-test-git-dirty-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-dirty-7010/.git/objects/43'
removed '/tmp/maak-test-git-dirty-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-dirty-7010/.git/objects/07'
removed '/tmp/maak-test-git-dirty-7010/.git/objects/19/0e5b4c4b8da13e7f2966b2ad8ce78f9ed502b0'
removed directory '/tmp/maak-test-git-dirty-7010/.git/objects/19'
removed directory '/tmp/maak-test-git-dirty-7010/.git/objects'
removed '/tmp/maak-test-git-dirty-7010/.git/config'
removed '/tmp/maak-test-git-dirty-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-dirty-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-dirty-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-dirty-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-dirty-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-dirty-7010/.git/logs'
removed '/tmp/maak-test-git-dirty-7010/.git/index'
removed directory '/tmp/maak-test-git-dirty-7010/.git'
removed '/tmp/maak-test-git-dirty-7010/a.txt'
removed directory '/tmp/maak-test-git-dirty-7010'
mkdir: created directory '/tmp/maak-test-git-clean-7010'
[trunk (root-commit) 190e5b4] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-clean-7010/.git/description'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-clean-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-clean-7010/.git/hooks'
removed '/tmp/maak-test-git-clean-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-clean-7010/.git/info'
removed '/tmp/maak-test-git-clean-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-clean-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-clean-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-clean-7010/.git/refs'
removed '/tmp/maak-test-git-clean-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-clean-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-clean-7010/.git/objects/info'
removed '/tmp/maak-test-git-clean-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-clean-7010/.git/objects/43'
removed '/tmp/maak-test-git-clean-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-clean-7010/.git/objects/07'
removed '/tmp/maak-test-git-clean-7010/.git/objects/19/0e5b4c4b8da13e7f2966b2ad8ce78f9ed502b0'
removed directory '/tmp/maak-test-git-clean-7010/.git/objects/19'
removed directory '/tmp/maak-test-git-clean-7010/.git/objects'
removed '/tmp/maak-test-git-clean-7010/.git/config'
removed '/tmp/maak-test-git-clean-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-clean-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-clean-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-clean-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-clean-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-clean-7010/.git/logs'
removed '/tmp/maak-test-git-clean-7010/.git/index'
removed directory '/tmp/maak-test-git-clean-7010/.git'
removed '/tmp/maak-test-git-clean-7010/a.txt'
removed directory '/tmp/maak-test-git-clean-7010'
mkdir: created directory '/tmp/maak-test-git-tag-7010'
[trunk (root-commit) 190e5b4] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-tag-7010/.git/description'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-tag-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-tag-7010/.git/hooks'
removed '/tmp/maak-test-git-tag-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-tag-7010/.git/info'
removed '/tmp/maak-test-git-tag-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-tag-7010/.git/refs/heads'
removed '/tmp/maak-test-git-tag-7010/.git/refs/tags/v1'
removed directory '/tmp/maak-test-git-tag-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-tag-7010/.git/refs'
removed '/tmp/maak-test-git-tag-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-tag-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-tag-7010/.git/objects/info'
removed '/tmp/maak-test-git-tag-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-tag-7010/.git/objects/43'
removed '/tmp/maak-test-git-tag-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-tag-7010/.git/objects/07'
removed '/tmp/maak-test-git-tag-7010/.git/objects/19/0e5b4c4b8da13e7f2966b2ad8ce78f9ed502b0'
removed directory '/tmp/maak-test-git-tag-7010/.git/objects/19'
removed '/tmp/maak-test-git-tag-7010/.git/objects/dc/74a4e9fedc1e0655f61bd859afdbba17ee5742'
removed directory '/tmp/maak-test-git-tag-7010/.git/objects/dc'
removed directory '/tmp/maak-test-git-tag-7010/.git/objects'
removed '/tmp/maak-test-git-tag-7010/.git/config'
removed '/tmp/maak-test-git-tag-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-tag-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-tag-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-tag-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-tag-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-tag-7010/.git/logs'
removed '/tmp/maak-test-git-tag-7010/.git/index'
removed directory '/tmp/maak-test-git-tag-7010/.git'
removed '/tmp/maak-test-git-tag-7010/a.txt'
removed directory '/tmp/maak-test-git-tag-7010'
mkdir: created directory '/tmp/maak-test-git-describe-7010'
[trunk (root-commit) 190e5b4] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-describe-7010/.git/description'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-describe-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-describe-7010/.git/hooks'
removed '/tmp/maak-test-git-describe-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-describe-7010/.git/info'
removed '/tmp/maak-test-git-describe-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-describe-7010/.git/refs/heads'
removed '/tmp/maak-test-git-describe-7010/.git/refs/tags/v2'
removed directory '/tmp/maak-test-git-describe-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-describe-7010/.git/refs'
removed '/tmp/maak-test-git-describe-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-describe-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-describe-7010/.git/objects/info'
removed '/tmp/maak-test-git-describe-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-describe-7010/.git/objects/43'
removed '/tmp/maak-test-git-describe-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-describe-7010/.git/objects/07'
removed '/tmp/maak-test-git-describe-7010/.git/objects/19/0e5b4c4b8da13e7f2966b2ad8ce78f9ed502b0'
removed directory '/tmp/maak-test-git-describe-7010/.git/objects/19'
removed directory '/tmp/maak-test-git-describe-7010/.git/objects'
removed '/tmp/maak-test-git-describe-7010/.git/config'
removed '/tmp/maak-test-git-describe-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-describe-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-describe-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-describe-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-describe-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-describe-7010/.git/logs'
removed '/tmp/maak-test-git-describe-7010/.git/index'
removed directory '/tmp/maak-test-git-describe-7010/.git'
removed '/tmp/maak-test-git-describe-7010/a.txt'
removed directory '/tmp/maak-test-git-describe-7010'
mkdir: created directory '/tmp/maak-test-git-switch-7010'
[trunk (root-commit) 190e5b4] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
Switched to branch 'feature'
removed '/tmp/maak-test-git-switch-7010/.git/description'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-switch-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-switch-7010/.git/hooks'
removed '/tmp/maak-test-git-switch-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-switch-7010/.git/info'
removed '/tmp/maak-test-git-switch-7010/.git/refs/heads/trunk'
removed '/tmp/maak-test-git-switch-7010/.git/refs/heads/feature'
removed directory '/tmp/maak-test-git-switch-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-switch-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-switch-7010/.git/refs'
removed directory '/tmp/maak-test-git-switch-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-switch-7010/.git/objects/info'
removed '/tmp/maak-test-git-switch-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-switch-7010/.git/objects/43'
removed '/tmp/maak-test-git-switch-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-switch-7010/.git/objects/07'
removed '/tmp/maak-test-git-switch-7010/.git/objects/19/0e5b4c4b8da13e7f2966b2ad8ce78f9ed502b0'
removed directory '/tmp/maak-test-git-switch-7010/.git/objects/19'
removed directory '/tmp/maak-test-git-switch-7010/.git/objects'
removed '/tmp/maak-test-git-switch-7010/.git/config'
removed '/tmp/maak-test-git-switch-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-switch-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-switch-7010/.git/logs/refs/heads/trunk'
removed '/tmp/maak-test-git-switch-7010/.git/logs/refs/heads/feature'
removed directory '/tmp/maak-test-git-switch-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-switch-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-switch-7010/.git/logs'
removed '/tmp/maak-test-git-switch-7010/.git/index'
removed '/tmp/maak-test-git-switch-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-switch-7010/.git'
removed '/tmp/maak-test-git-switch-7010/a.txt'
removed directory '/tmp/maak-test-git-switch-7010'
mkdir: created directory '/tmp/maak-test-git-detached-7010'
[trunk (root-commit) cbd3c52] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
HEAD is now at cbd3c52 first
removed '/tmp/maak-test-git-detached-7010/.git/description'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-detached-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-detached-7010/.git/hooks'
removed '/tmp/maak-test-git-detached-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-detached-7010/.git/info'
removed '/tmp/maak-test-git-detached-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-detached-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-detached-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-detached-7010/.git/refs'
removed directory '/tmp/maak-test-git-detached-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-detached-7010/.git/objects/info'
removed '/tmp/maak-test-git-detached-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-detached-7010/.git/objects/43'
removed '/tmp/maak-test-git-detached-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-detached-7010/.git/objects/07'
removed '/tmp/maak-test-git-detached-7010/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-detached-7010/.git/objects/cb'
removed directory '/tmp/maak-test-git-detached-7010/.git/objects'
removed '/tmp/maak-test-git-detached-7010/.git/config'
removed '/tmp/maak-test-git-detached-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-detached-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-detached-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-detached-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-detached-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-detached-7010/.git/logs'
removed '/tmp/maak-test-git-detached-7010/.git/index'
removed '/tmp/maak-test-git-detached-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-detached-7010/.git'
removed '/tmp/maak-test-git-detached-7010/a.txt'
removed directory '/tmp/maak-test-git-detached-7010'
mkdir: created directory '/tmp/maak-test-git-remote-7010'
removed '/tmp/maak-test-git-remote-7010/.git/description'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-remote-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-remote-7010/.git/hooks'
removed '/tmp/maak-test-git-remote-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-remote-7010/.git/info'
removed directory '/tmp/maak-test-git-remote-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-remote-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-remote-7010/.git/refs'
removed '/tmp/maak-test-git-remote-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-remote-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-remote-7010/.git/objects/info'
removed directory '/tmp/maak-test-git-remote-7010/.git/objects'
removed '/tmp/maak-test-git-remote-7010/.git/config'
removed directory '/tmp/maak-test-git-remote-7010/.git'
removed directory '/tmp/maak-test-git-remote-7010'
mkdir: created directory '/tmp/maak-test-git-remotes-7010'
removed '/tmp/maak-test-git-remotes-7010/.git/description'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-remotes-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-remotes-7010/.git/hooks'
removed '/tmp/maak-test-git-remotes-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-remotes-7010/.git/info'
removed directory '/tmp/maak-test-git-remotes-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-remotes-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-remotes-7010/.git/refs'
removed '/tmp/maak-test-git-remotes-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-remotes-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-remotes-7010/.git/objects/info'
removed directory '/tmp/maak-test-git-remotes-7010/.git/objects'
removed '/tmp/maak-test-git-remotes-7010/.git/config'
removed directory '/tmp/maak-test-git-remotes-7010/.git'
removed directory '/tmp/maak-test-git-remotes-7010'
mkdir: created directory '/tmp/maak-test-git-diff-7010'
[trunk (root-commit) cbd3c52] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-diff-7010/.git/description'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-diff-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-diff-7010/.git/hooks'
removed '/tmp/maak-test-git-diff-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-diff-7010/.git/info'
removed '/tmp/maak-test-git-diff-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-diff-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-diff-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-diff-7010/.git/refs'
removed '/tmp/maak-test-git-diff-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-diff-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-diff-7010/.git/objects/info'
removed '/tmp/maak-test-git-diff-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-diff-7010/.git/objects/43'
removed '/tmp/maak-test-git-diff-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-diff-7010/.git/objects/07'
removed '/tmp/maak-test-git-diff-7010/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-diff-7010/.git/objects/cb'
removed directory '/tmp/maak-test-git-diff-7010/.git/objects'
removed '/tmp/maak-test-git-diff-7010/.git/config'
removed '/tmp/maak-test-git-diff-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-diff-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-diff-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-diff-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-diff-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-diff-7010/.git/logs'
removed '/tmp/maak-test-git-diff-7010/.git/index'
removed directory '/tmp/maak-test-git-diff-7010/.git'
removed '/tmp/maak-test-git-diff-7010/a.txt'
removed directory '/tmp/maak-test-git-diff-7010'
mkdir: created directory '/tmp/maak-test-git-stash-7010'
[trunk (root-commit) cbd3c52] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
Saved working directory and index state WIP on trunk: cbd3c52 first
On branch trunk
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: a.txt
no changes added to commit (use "git add" and/or "git commit -a")
Dropped refs/stash@{0} (7d0a5807ae8fd26c3e75351ae06880b7d7e7772e)
removed '/tmp/maak-test-git-stash-7010/.git/description'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-stash-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-stash-7010/.git/hooks'
removed '/tmp/maak-test-git-stash-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-stash-7010/.git/info'
removed '/tmp/maak-test-git-stash-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-stash-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-stash-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-stash-7010/.git/refs'
removed '/tmp/maak-test-git-stash-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/info'
removed '/tmp/maak-test-git-stash-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/43'
removed '/tmp/maak-test-git-stash-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/07'
removed '/tmp/maak-test-git-stash-7010/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/cb'
removed '/tmp/maak-test-git-stash-7010/.git/objects/f3/bacef85c14d48b3cfc172774d31d74a896eec7'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/f3'
removed '/tmp/maak-test-git-stash-7010/.git/objects/64/c5e5885a4b06010b3a0c20edb7900dd0311025'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/64'
removed '/tmp/maak-test-git-stash-7010/.git/objects/aa/d2fe6de7e85e540a89abff48edc7e6e61584b6'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/aa'
removed '/tmp/maak-test-git-stash-7010/.git/objects/7d/0a5807ae8fd26c3e75351ae06880b7d7e7772e'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects/7d'
removed directory '/tmp/maak-test-git-stash-7010/.git/objects'
removed '/tmp/maak-test-git-stash-7010/.git/config'
removed '/tmp/maak-test-git-stash-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-stash-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-stash-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-stash-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-stash-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-stash-7010/.git/logs'
removed '/tmp/maak-test-git-stash-7010/.git/ORIG_HEAD'
removed '/tmp/maak-test-git-stash-7010/.git/AUTO_MERGE'
removed '/tmp/maak-test-git-stash-7010/.git/index'
removed directory '/tmp/maak-test-git-stash-7010/.git'
removed '/tmp/maak-test-git-stash-7010/a.txt'
removed directory '/tmp/maak-test-git-stash-7010'
mkdir: created directory '/tmp/maak-test-git-clean-file-7010'
[trunk (root-commit) cbd3c52] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
Removing junk.txt
removed '/tmp/maak-test-git-clean-file-7010/.git/description'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-clean-file-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/hooks'
removed '/tmp/maak-test-git-clean-file-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/info'
removed '/tmp/maak-test-git-clean-file-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/refs'
removed '/tmp/maak-test-git-clean-file-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/objects/info'
removed '/tmp/maak-test-git-clean-file-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/objects/43'
removed '/tmp/maak-test-git-clean-file-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/objects/07'
removed '/tmp/maak-test-git-clean-file-7010/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/objects/cb'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/objects'
removed '/tmp/maak-test-git-clean-file-7010/.git/config'
removed '/tmp/maak-test-git-clean-file-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-clean-file-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-clean-file-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-clean-file-7010/.git/logs'
removed '/tmp/maak-test-git-clean-file-7010/.git/index'
removed directory '/tmp/maak-test-git-clean-file-7010/.git'
removed '/tmp/maak-test-git-clean-file-7010/a.txt'
removed directory '/tmp/maak-test-git-clean-file-7010'
mkdir: created directory '/tmp/maak-test-git-output-7010'
[trunk (root-commit) cbd3c52] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-output-7010/.git/description'
removed '/tmp/maak-test-git-output-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-output-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-output-7010/.git/hooks'
removed '/tmp/maak-test-git-output-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-output-7010/.git/info'
removed '/tmp/maak-test-git-output-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-output-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-output-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-output-7010/.git/refs'
removed '/tmp/maak-test-git-output-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-output-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-output-7010/.git/objects/info'
removed '/tmp/maak-test-git-output-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-output-7010/.git/objects/43'
removed '/tmp/maak-test-git-output-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-output-7010/.git/objects/07'
removed '/tmp/maak-test-git-output-7010/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-output-7010/.git/objects/cb'
removed directory '/tmp/maak-test-git-output-7010/.git/objects'
removed '/tmp/maak-test-git-output-7010/.git/config'
removed '/tmp/maak-test-git-output-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-output-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-output-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-output-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-output-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-output-7010/.git/logs'
removed '/tmp/maak-test-git-output-7010/.git/index'
removed directory '/tmp/maak-test-git-output-7010/.git'
removed '/tmp/maak-test-git-output-7010/a.txt'
removed directory '/tmp/maak-test-git-output-7010'
mkdir: created directory '/tmp/maak-test-git-failure-7010'
fatal: Needed a single revision
removed '/tmp/maak-test-git-failure-7010/.git/description'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-failure-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-failure-7010/.git/hooks'
removed '/tmp/maak-test-git-failure-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-failure-7010/.git/info'
removed directory '/tmp/maak-test-git-failure-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-failure-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-failure-7010/.git/refs'
removed '/tmp/maak-test-git-failure-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-failure-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-failure-7010/.git/objects/info'
removed directory '/tmp/maak-test-git-failure-7010/.git/objects'
removed '/tmp/maak-test-git-failure-7010/.git/config'
removed directory '/tmp/maak-test-git-failure-7010/.git'
removed directory '/tmp/maak-test-git-failure-7010'
mkdir: created directory '/tmp/maak-test-git-archive-tar-7010'
mkdir: created directory '/tmp/maak-test-git-archive-out-7010'
[trunk (root-commit) cbd3c52] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-archive-tar-7010/.git/description'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-archive-tar-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/hooks'
removed '/tmp/maak-test-git-archive-tar-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/info'
removed '/tmp/maak-test-git-archive-tar-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/refs'
removed '/tmp/maak-test-git-archive-tar-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/objects/info'
removed '/tmp/maak-test-git-archive-tar-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/objects/43'
removed '/tmp/maak-test-git-archive-tar-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/objects/07'
removed '/tmp/maak-test-git-archive-tar-7010/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/objects/cb'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/objects'
removed '/tmp/maak-test-git-archive-tar-7010/.git/config'
removed '/tmp/maak-test-git-archive-tar-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-archive-tar-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-archive-tar-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git/logs'
removed '/tmp/maak-test-git-archive-tar-7010/.git/index'
removed directory '/tmp/maak-test-git-archive-tar-7010/.git'
removed '/tmp/maak-test-git-archive-tar-7010/a.txt'
removed directory '/tmp/maak-test-git-archive-tar-7010'
removed '/tmp/maak-test-git-archive-out-7010/p.tar.gz'
removed directory '/tmp/maak-test-git-archive-out-7010'
mkdir: created directory '/tmp/maak-test-git-archive-zip-7010'
mkdir: created directory '/tmp/maak-test-git-archive-zip-out-7010'
[trunk (root-commit) cbd3c52] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
removed '/tmp/maak-test-git-archive-zip-7010/.git/description'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-archive-zip-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/hooks'
removed '/tmp/maak-test-git-archive-zip-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/info'
removed '/tmp/maak-test-git-archive-zip-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/refs'
removed '/tmp/maak-test-git-archive-zip-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/objects/info'
removed '/tmp/maak-test-git-archive-zip-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/objects/43'
removed '/tmp/maak-test-git-archive-zip-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/objects/07'
removed '/tmp/maak-test-git-archive-zip-7010/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/objects/cb'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/objects'
removed '/tmp/maak-test-git-archive-zip-7010/.git/config'
removed '/tmp/maak-test-git-archive-zip-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-archive-zip-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-archive-zip-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git/logs'
removed '/tmp/maak-test-git-archive-zip-7010/.git/index'
removed directory '/tmp/maak-test-git-archive-zip-7010/.git'
removed '/tmp/maak-test-git-archive-zip-7010/a.txt'
removed directory '/tmp/maak-test-git-archive-zip-7010'
removed '/tmp/maak-test-git-archive-zip-out-7010/p.zip'
removed directory '/tmp/maak-test-git-archive-zip-out-7010'
mkdir: created directory '/tmp/maak-test-git-clone-source-7010'
mkdir: created directory '/tmp/maak-test-git-clone-parent-7010'
[trunk (root-commit) cbd3c52] first
1 file changed, 1 insertion(+)
create mode 100644 a.txt
Cloning into '/tmp/maak-test-git-clone-parent-7010/target'...
done.
removed '/tmp/maak-test-git-clone-source-7010/.git/description'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-clone-source-7010/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/hooks'
removed '/tmp/maak-test-git-clone-source-7010/.git/info/exclude'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/info'
removed '/tmp/maak-test-git-clone-source-7010/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/refs/heads'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/refs/tags'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/refs'
removed '/tmp/maak-test-git-clone-source-7010/.git/HEAD'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/objects/pack'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/objects/info'
removed '/tmp/maak-test-git-clone-source-7010/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/objects/43'
removed '/tmp/maak-test-git-clone-source-7010/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/objects/07'
removed '/tmp/maak-test-git-clone-source-7010/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/objects/cb'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/objects'
removed '/tmp/maak-test-git-clone-source-7010/.git/config'
removed '/tmp/maak-test-git-clone-source-7010/.git/COMMIT_EDITMSG'
removed '/tmp/maak-test-git-clone-source-7010/.git/logs/HEAD'
removed '/tmp/maak-test-git-clone-source-7010/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/logs/refs'
removed directory '/tmp/maak-test-git-clone-source-7010/.git/logs'
removed '/tmp/maak-test-git-clone-source-7010/.git/index'
removed directory '/tmp/maak-test-git-clone-source-7010/.git'
removed '/tmp/maak-test-git-clone-source-7010/a.txt'
removed directory '/tmp/maak-test-git-clone-source-7010'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/description'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/applypatch-msg.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/commit-msg.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/fsmonitor-watchman.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/post-update.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/pre-applypatch.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/pre-commit.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/pre-merge-commit.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/pre-push.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/pre-rebase.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/pre-receive.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/prepare-commit-msg.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/push-to-checkout.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/sendemail-validate.sample'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks/update.sample'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/hooks'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/info/exclude'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/info'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/objects/pack'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/objects/info'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/objects/43/dd47ea691c90a5fa7827892c70241913351963'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/objects/43'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/objects/07/74631921416916f52abe96497a247055976283'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/objects/07'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/objects/cb/d3c52ad41838a8ed932972bf6cbf7c0046f65c'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/objects/cb'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/objects'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/refs/heads/trunk'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/refs/heads'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/refs/tags'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/refs/remotes/origin/HEAD'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/refs/remotes/origin'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/refs/remotes'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/refs'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/packed-refs'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/logs/refs/remotes/origin/HEAD'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/logs/refs/remotes/origin'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/logs/refs/remotes'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/logs/refs/heads/trunk'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/logs/refs/heads'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/logs/refs'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/logs/HEAD'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git/logs'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/HEAD'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/config'
removed '/tmp/maak-test-git-clone-parent-7010/target/.git/index'
removed directory '/tmp/maak-test-git-clone-parent-7010/target/.git'
removed '/tmp/maak-test-git-clone-parent-7010/target/a.txt'
removed directory '/tmp/maak-test-git-clone-parent-7010/target'
removed directory '/tmp/maak-test-git-clone-parent-7010'
+----------------------------------------------+
[📑 suite] Git argument lists
[🧪 test] git-argv names the checkout with -C✅ got: (git -C /tmp/repo status)
[🧪 test] git-argv defaults to the current directory✅ got: (git -C . status)
[🧪 test] a clone puts the destination last✅ got: git clone --branch main --depth 1 https://example.org/p.git vendor/p
[🧪 test] a bare clone asks for --bare✅ got: git clone --bare ../other
[🧪 test] switching can create the branch✅ got: git -C . switch -c feature
[🧪 test] a commit keeps its message as one argument✅ got: git -C . commit --all -m
[🧪 test] a commit can amend an empty tree✅ got: commit --all --amend --allow-empty -m
[🧪 test] an annotated tag passes its message✅ got: git -C . tag --annotate -m
[🧪 test] log has its usual default shape✅ got: git -C . log --oneline --graph --decorate -n 20
[🧪 test] log passes explicit arguments through✅ got: git -C . log --oneline --graph --decorate -5 --all
[🧪 test] the subcommand wrappers reach git✅ got: (git -C . rebase --interactive HEAD~2)
[🧪 test] a remote is added with its own subcommand✅ got: git -C . remote add origin url
[🧪 test] an archive names format, prefix and output✅ got: git -C . archive --format=zip --prefix=p/ -o /tmp/p.zip v1.0
[🧪 test] an empty commit message is refused✅ success catching error: %exception: (#<&maak-error message: "git-commit expects a commit message" hint: "Write (git-commit \"feat: add the report\").">)
[🧪 test] an empty archive name is refused✅ success catching error: %exception: (#<&maak-error message: "git-archive expects the archive file to write" hint: "Write (git-archive \"project-1.0.tar.gz\" #:prefix \"project-1.0/\").">)
[🧪 test] an empty branch name is refused✅ success catching error: %exception: (#<&maak-error message: "git-switch expects a branch name" hint: "Write (git-switch \"trunk\").">)
[🧪 test] an empty clone URL is refused✅ success catching error: %exception: (#<&maak-error message: "git-clone expects the URL of the repository to clone" hint: "Write (git-clone \"https://example.org/project.git\").">)
+----------------------------------------------+
[📑 suite] Git repositories
[🧪 test] git-init creates a repository✅ got: #t
[🧪 test] git-add stages an untracked file✅ got: A a.txt
[🧪 test] git-commit records the tree, and the branch reads back✅ got: trunk
[🧪 test] git-current-revision is a full hash✅ got: 40
[🧪 test] git-dirty? notices a modified file✅ got: #t
[🧪 test] git-dirty? is false after a commit✅ got: #f
[🧪 test] git-tag and git-tags agree✅ got: (v1)
[🧪 test] git-describe-tag finds the release tag✅ got: v2
[🧪 test] a branch can be created and switched to✅ got: feature
[🧪 test] a detached HEAD answers with its revision✅ got: 40
[🧪 test] a remote can be added and read back✅ got: https://example.org/p.git
[🧪 test] git-remotes lists what was added✅ got: (origin)
[🧪 test] git-diff reports a modified file when failures are allowed✅ got: #f
[🧪 test] a stash can be made and popped✅ got: #t
[🧪 test] git-clean removes an untracked file✅ got: #t
[🧪 test] git-output reads a value rather than printing it✅ got: trunk
[🧪 test] a failed command raises unless failure is allowed✅ got: #f
[🧪 test] git-archive-tar writes the tracked files✅ got: p/a.txt
[🧪 test] git-archive-zip writes the tracked files✅ got: p/a.txt
[🧪 test] git-clone copies a repository✅ got: #tℹ️ info - ran 2 tasks in: 0 seconds, 3174 microseconds
running unit tests from file: cli.scm, entrypoint: spec
+----------------------------------------------+
[📑 suite] Command line switches
[🧪 test] the environment switch understands the usual negatives✅ got: #f✅ got: #t✅ got: #t✅ got: #f✅ got: #f✅ got: #f✅ got: #f
[🧪 test] the banner is on unless something turns it off✅ got: #t✅ got: #t✅ got: #f
[🧪 test] MAAK_NO_BANNER turns the banner off and --banner wins over it✅ got: #f✅ got: #f✅ got: #t
[🧪 test] environment files come from the flag, the environment, or the file✅ got: (test/maak/fixtures/.env)✅ got: ()✅ got: (one.env two.env)✅ got: (a.env b.env)
+----------------------------------------------+
[📑 suite] Banner and listing
[🧪 test] the banner greets and names the Maak file✅ got: the infinitely extensible✅ got: 0✅ got: test/maak/fixtures/cli.scm✅ got: ok-task-ran
[🧪 test] --no-banner keeps the task output✅ got: #f✅ got: ok-task-ran✅ got: 0✅ got: #f
[🧪 test] MAAK_NO_BANNER is honoured by the run, not only by the switch✅ got: 0✅ got: #f
[🧪 test] --list shows every task with its docstring✅ got: boom: Fail the way a task is supposed to fail.✅ got: 0✅ got: ok: Print a line and succeed.
+----------------------------------------------+
[📑 suite] A task that fails
[🧪 test] a task error prints one line with its hint and no backtrace✅ got: #f✅ got: maak: error: no artefact for cli-test✅ got: hint: Run `maak ok' first.✅ got: 1✅ got: #f
[🧪 test] an unknown task lists the tasks that do exist✅ got: Available tasks: boom, ok✅ got: Unknown task: nope✅ got: 1
+----------------------------------------------+
[📑 suite] Environment files at the command line
[🧪 test] --env-file is read before the tasks run✅ got: 0✅ got: TAG=from-env-file
[🧪 test] MAAK_ENV_FILE is read when no flag is given✅ got: TAG=from-env-file
[🧪 test] a .env beside the Maak file is read by default✅ got: DEFAULT=from-default-env
[🧪 test] --no-env-file reads nothing at all✅ got: DEFAULT=unset
[🧪 test] the environment beats the file for a name it already has✅ got: TAG=from-the-environment
+----------------------------------------------+
[📑 suite] Several tasks in one run
[🧪 test] a failure stops the tasks after it by default✅ got: first-pass-ran✅ got: 1✅ got: no artefact for second-fail✅ got: #f
[🧪 test] --keep-going runs the tasks after a failure and fails at the end✅ got: last-pass-ran✅ got: maak: error (task second-fail):✅ got: 2 tasks failed: second-fail, third-fail✅ got: first-pass-ran✅ got: 1✅ got: (task third-fail):✅ got: no artefact for second-fail
[🧪 test] --ignore-errors keeps going and still exits 0✅ got: 0✅ got: last-pass-ran✅ got: maak: warning: 1 task failed and --ignore-errors was given: second-fail✅ got: no artefact for second-fail
+----------------------------------------------+
[📑 suite] Changing directory before anything else
[🧪 test] --directory reads the Maak file of the directory it entered✅ got: 0✅ got: subdir-marker-ran✅ got: Entering directory
[🧪 test] a directory that is not there is an error, not a silent fallback✅ got: 1✅ got: no such directory: no/such/directory✅ got: #t✅ got: #t
[🧪 test] the directory entered is reported by default✅ got: #t
[🧪 test] --no-print-directory leaves the report out✅ got: #f
[🧪 test] --quiet asks for silence as well✅ got: #f
[🧪 test] --no-print-directory runs the same task without the line✅ got: subdir-marker-ran✅ got: #f✅ got: 0
+----------------------------------------------+
[📑 suite] The arguments a run passes on
[🧪 test] the words after `--' reach the task that was named✅ got: args=one,two
[🧪 test] a task that takes no arguments is handed none✅ got: 0
[🧪 test] the arity failure is still the one Guile raised✅ got: Wrong number of arguments
[🧪 test] a word that names a task is pointed out as an argument✅ got: `beta' names a task of this Maak file
[🧪 test] the hint spells out the run that was probably meant✅ got: To run several tasks, name them in one comma separated list (`maak alpha,beta') or one word each after `--' (`maak -- alpha beta')
[🧪 test] a word that names no task leaves the arity error alone✅ got: #f
[🧪 test] the hint is printed where a run keeps going as well✅ got: `beta' names a task of this Maak fileℹ️ info - ran 7 tasks in: 0 seconds, 9691 microseconds
running unit tests from file: niri.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-niri-niri-available-7010'
removed '/tmp/maak-test-niri-niri-available-7010/niri'
removed directory '/tmp/maak-test-niri-niri-available-7010'
mkdir: created directory '/tmp/maak-test-niri-niri-unavailable-7010'
removed directory '/tmp/maak-test-niri-niri-unavailable-7010'
+----------------------------------------------+
[📑 suite] niri argument lists
[🧪 test] the program and subcommand come first✅ got: (niri msg outputs)
[🧪 test] JSON is a flag of msg, before the subcommand✅ got: (niri msg --json windows)
[🧪 test] an action is its own subcommand✅ got: (niri msg action close-window)
[🧪 test] an output names the output before the action✅ got: (niri msg output DP-1 mode 1920x1080@60)
[🧪 test] the generic runner prints the command✅ got: niri msg action close-window
[🧪 test] capture returns nothing in a dry run✅ got:
+----------------------------------------------+
[📑 suite] niri queries
[🧪 test] every query reaches its subcommand✅ got: (niri msg version niri msg outputs niri msg workspaces niri msg windows niri msg layers niri msg keyboard-layouts niri msg focused-output niri msg focused-window niri msg pick-window niri msg pick-color niri msg overview-state niri msg casts niri msg request-error)
[🧪 test] a query can ask for JSON✅ got: niri msg --json workspaces
[🧪 test] niri-available? finds niri on PATH✅ got: #t
[🧪 test] niri-available? is false when niri is not on PATH✅ got: #f
+----------------------------------------------+
[📑 suite] niri actions
[🧪 test] the argument-free actions are plain subcommands✅ got: (niri msg action close-window niri msg action fullscreen-window niri msg action toggle-windowed-fullscreen niri msg action toggle-overview niri msg action focus-workspace-previous niri msg action focus-window-previous niri msg action screenshot niri msg action screenshot-screen niri msg action screenshot-window niri msg action power-off-monitors niri msg action power-on-monitors niri msg action unset-workspace-name)
[🧪 test] a workspace can be focused by reference✅ got: niri msg action focus-workspace 2
[🧪 test] a workspace name stays one argument✅ got: niri msg action focus-workspace 'my space'
[🧪 test] a column and a window take their index✅ got: (niri msg action focus-column 1 niri msg action focus-window 42)
[🧪 test] a monitor is named as it is✅ got: niri msg action focus-monitor DP-1
[🧪 test] moving a window carries its id and focus decision✅ got: niri msg action move-window-to-workspace --window-id 7 --focus false 3
[🧪 test] moving a column names the workspace✅ got: niri msg action move-column-to-workspace 4
[🧪 test] windows and columns move to a monitor✅ got: (niri msg action move-window-to-monitor HDMI-A-1 niri msg action move-column-to-monitor HDMI-A-1)
[🧪 test] width changes carry their optional id✅ got: (niri msg action set-window-width --id 5 +10% niri msg action set-column-width 50%)
[🧪 test] a workspace can be named and unnamed✅ got: niri msg action set-workspace-name web
[🧪 test] spawn separates niri's flags from the program✅ got: niri msg action spawn -- foot -e htop
[🧪 test] spawn-sh keeps the line for the shell✅ got: niri msg action spawn-sh -- 'echo hi'
[🧪 test] quit skips the confirmation by default✅ got: niri msg action quit --skip-confirmation
[🧪 test] spawn refuses an empty program list✅ success catching error: %exception: (#<&maak-error message: "niri-spawn expects a non-empty list of strings, starting with the program" hint: "Write (niri-spawn (list \"foot\")).">)
[🧪 test] spawn refuses arguments that are not strings✅ success catching error: %exception: (#<&maak-error message: "niri-spawn expects a non-empty list of strings, starting with the program" hint: "Write (niri-spawn (list \"foot\")).">)
+----------------------------------------------+
[📑 suite] niri outputs
[🧪 test] turning an output on and off✅ got: (niri msg output DP-1 on niri msg output DP-1 off)
[🧪 test] an output mode is passed through✅ got: niri msg output DP-1 mode 1920x1080@60
[🧪 test] scale, transform and position reach the right actions✅ got: (niri msg output DP-1 scale 1.5 niri msg output DP-1 transform 90 niri msg output DP-1 position 0 1080)ℹ️ info - ran 4 tasks in: 0 seconds, 2869 microseconds
running unit tests from file: container.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-container-empty-path-7010'
removed directory '/tmp/maak-test-container-empty-path-7010'
mkdir: created directory '/tmp/maak-test-container-docker-only-7010'
removed '/tmp/maak-test-container-docker-only-7010/docker'
removed directory '/tmp/maak-test-container-docker-only-7010'
mkdir: created directory '/tmp/maak-test-container-both-7010'
removed '/tmp/maak-test-container-both-7010/docker'
removed '/tmp/maak-test-container-both-7010/podman'
removed directory '/tmp/maak-test-container-both-7010'
mkdir: created directory '/tmp/maak-test-container-preferred-7010'
removed '/tmp/maak-test-container-preferred-7010/podman'
removed directory '/tmp/maak-test-container-preferred-7010'
mkdir: created directory '/tmp/maak-test-container-empty-preference-7010'
removed '/tmp/maak-test-container-empty-preference-7010/docker'
removed directory '/tmp/maak-test-container-empty-preference-7010'
mkdir: created directory '/tmp/maak-test-container-podman-compose-7010'
removed '/tmp/maak-test-container-podman-compose-7010/podman-compose'
removed directory '/tmp/maak-test-container-podman-compose-7010'
mkdir: created directory '/tmp/maak-test-container-podman-compose-fallback-7010'
removed directory '/tmp/maak-test-container-podman-compose-fallback-7010'
mkdir: created directory '/tmp/maak-test-container-available-7010'
removed '/tmp/maak-test-container-available-7010/podman'
removed directory '/tmp/maak-test-container-available-7010'
mkdir: created directory '/tmp/maak-test-container-unavailable-7010'
removed directory '/tmp/maak-test-container-unavailable-7010'
mkdir: created directory '/tmp/maak-test-container-compose-available-7010'
removed '/tmp/maak-test-container-compose-available-7010/podman-compose'
removed directory '/tmp/maak-test-container-compose-available-7010'
mkdir: created directory '/tmp/maak-test-container-compose-unavailable-7010'
removed directory '/tmp/maak-test-container-compose-unavailable-7010'
+----------------------------------------------+
[📑 suite] Container engine detection
[🧪 test] an empty search path falls back to podman✅ got: podman
[🧪 test] docker is found when podman is not✅ got: docker
[🧪 test] podman wins when both are installed✅ got: podman
[🧪 test] an explicit preference wins✅ got: docker
[🧪 test] an empty preference is ignored✅ got: docker
[🧪 test] docker compose is the docker program plus its subcommand✅ got: (docker compose)
[🧪 test] podman-compose is preferred for podman✅ got: (podman-compose)
[🧪 test] podman compose is the fallback✅ got: (podman compose)
[🧪 test] a compose preference is split into words✅ got: (podman-compose --ansi never)
[🧪 test] a compose preference splits on any whitespace✅ got: (podman-compose --ansi never)
[🧪 test] the default engine is a non-empty string✅ got: #t
[🧪 test] container-available? looks on PATH✅ got: #t
[🧪 test] container-available? is false for a missing engine✅ got: #f
[🧪 test] compose-available? looks for the first word✅ got: #t
[🧪 test] compose-available? is false for a missing program✅ got: #f
[🧪 test] an empty engine is refused✅ success catching error: %exception: (#<&maak-error message: "container engine must be a non-empty string, got \"\"" hint: "Set MAAK_CONTAINER_ENGINE to podman or docker.">)
+----------------------------------------------+
[📑 suite] Container commands
[🧪 test] the engine is the first word✅ got: (docker ps --all)
[🧪 test] run carries every option in a stable order✅ got: (podman run --detach --rm --interactive --tty --privileged --name db --workdir /app --entrypoint /bin/sh --network host --user 1000 --platform linux/amd64 --pull always --env A=1 --publish 8080:80 --volume v:/data --mount type=bind --label role=db postgres postgres -c x)
[🧪 test] run removes the container by default✅ got: (podman run --rm alpine)
[🧪 test] build carries tags, files, args and labels✅ got: (docker build --tag p:dev --file Containerfile --target runtime --platform linux/arm64 --network host --no-cache --pull --quiet --build-arg VERSION=1 --label a=b .)
[🧪 test] ps can include stopped containers✅ got: (podman ps --all)
[🧪 test] images passes extra arguments through✅ got: (docker images --quiet)
[🧪 test] stop names every container✅ got: (podman stop a b)
[🧪 test] rm forces and removes volumes✅ got: (podman rm --force --volumes db)
[🧪 test] exec passes environment and user✅ got: (docker exec --interactive --tty --workdir /app --user postgres --env PGPASSWORD=x db psql -c select 1)
[🧪 test] logs can follow, tail and filter by time✅ got: (podman logs --follow --tail 50 --since 1h db)
[🧪 test] pull is a plain subcommand✅ got: (docker pull img)
[🧪 test] push is a plain subcommand✅ got: (docker push img)
[🧪 test] tag names the source and the new name✅ got: (docker tag a b)
[🧪 test] inspect can format a field✅ got: (podman inspect --format {{.State.Status}} --type container db)
[🧪 test] the generic runner prints the engine command✅ got: docker volume ls
[🧪 test] capture returns nothing in a dry run✅ got:
[🧪 test] an empty image is refused✅ success catching error: %exception: (#<&maak-error message: "container-run expects the image to run" hint: "Write (container-run image #:command (list program argument)).">)
[🧪 test] an empty context is refused✅ success catching error: %exception: (#<&maak-error message: "container-build expects a build context" hint: "Write (container-build build-context #:tag image-name).">)
+----------------------------------------------+
[📑 suite] Compose commands
[🧪 test] global options come before the subcommand✅ got: (docker compose --file compose.yml --project-name p --env-file .env --profile dev ps)
[🧪 test] up detaches, builds and waits✅ got: (podman-compose up --detach --build --force-recreate --remove-orphans --wait web)
[🧪 test] up can avoid starting the services✅ got: (docker compose up --detach --remove-orphans --no-start)
[🧪 test] down can remove volumes and images✅ got: (docker compose down --volumes --remove-orphans --rmi all --timeout 10 db)
[🧪 test] build passes no-cache and pull✅ got: (docker compose build --no-cache --pull web)
[🧪 test] logs can follow and drop colour✅ got: (docker compose logs --follow --tail 20 --no-color web)
[🧪 test] ps can list everything and format it✅ got: (docker compose ps --all --format json web)
[🧪 test] exec allocates no terminal by default✅ got: (docker compose exec -T --user root web id)
[🧪 test] exec can allocate a terminal when asked✅ got: (docker compose exec --tty --index 2 web sh)
[🧪 test] tty wins over the default -T✅ got: (docker compose exec --tty web sh)
[🧪 test] run uses a one-off container✅ got: (docker compose run --rm --no-deps --workdir /app --user root web make)
[🧪 test] pull and restart take service names✅ got: (docker compose pull --ignore-pull-failures web)✅ got: (docker compose restart --timeout 5 web)
[🧪 test] config can validate without printing✅ got: (docker compose config -q --services)
[🧪 test] the generic runner prints the compose command✅ got: docker compose --file compose.yml top
[🧪 test] capture returns nothing in a dry run✅ got:
[🧪 test] an empty program is refused✅ success catching error: %exception: (#<&maak-error message: "compose expects a non-empty program list" hint: "Set MAAK_COMPOSE, or use container-compose-command.">)ℹ️ info - ran 3 tasks in: 0 seconds, 12066 microseconds
running unit tests from file: shell.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-files-7010'
removed '/tmp/maak-test-files-7010/a.txt'
removed directory '/tmp/maak-test-files-7010'
mkdir: created directory '/tmp/maak-test-parents-7010'
mkdir: created directory '/tmp/maak-test-parents-7010/deep'
mkdir: created directory '/tmp/maak-test-parents-7010/deep/nested'
removed '/tmp/maak-test-parents-7010/deep/nested/a.txt'
removed directory '/tmp/maak-test-parents-7010/deep/nested'
removed directory '/tmp/maak-test-parents-7010/deep'
removed directory '/tmp/maak-test-parents-7010'
mkdir: created directory '/tmp/maak-test-append-7010'
removed '/tmp/maak-test-append-7010/a.txt'
removed directory '/tmp/maak-test-append-7010'
mkdir: created directory '/tmp/maak-test-missing-7010'
mkdir: created directory '/tmp/maak-test-touch-7010'
removed '/tmp/maak-test-touch-7010/touched'
removed directory '/tmp/maak-test-touch-7010'
mkdir: created directory '/tmp/maak-test-spaces-7010'
mkdir: created directory '/tmp/maak-test-spaces-7010/a b'
removed directory '/tmp/maak-test-spaces-7010/a b'
removed directory '/tmp/maak-test-spaces-7010'
mkdir: created directory '/tmp/maak-test-touch-space-7010'
removed '/tmp/maak-test-touch-space-7010/a b.txt'
removed directory '/tmp/maak-test-touch-space-7010'
mkdir: created directory '/tmp/maak-test-cp-space-7010'
removed '/tmp/maak-test-cp-space-7010/a b.txt'
removed '/tmp/maak-test-cp-space-7010/c d.txt'
removed directory '/tmp/maak-test-cp-space-7010'
mkdir: created directory '/tmp/maak-test-mv-space-7010'
renamed '/tmp/maak-test-mv-space-7010/a b.txt' -> '/tmp/maak-test-mv-space-7010/c d.txt'
removed '/tmp/maak-test-mv-space-7010/c d.txt'
removed directory '/tmp/maak-test-mv-space-7010'
mkdir: created directory '/tmp/maak-test-ln-space-7010'
removed '/tmp/maak-test-ln-space-7010/a b.txt'
removed '/tmp/maak-test-ln-space-7010/c d.txt'
removed directory '/tmp/maak-test-ln-space-7010'
mkdir: created directory '/tmp/maak-test-chmod-space-7010'
removed '/tmp/maak-test-chmod-space-7010/a b.sh'
removed directory '/tmp/maak-test-chmod-space-7010'
mkdir: created directory '/tmp/maak-test-rm-space-7010'
mkdir: created directory '/tmp/maak-test-rm-space-7010/a b'
removed directory '/tmp/maak-test-rm-space-7010/a b'
removed directory '/tmp/maak-test-rm-space-7010'
mkdir: created directory '/tmp/maak-test-expand-rm-7010'
removed '/tmp/maak-test-expand-rm-7010/a b.txt'
removed '/tmp/maak-test-expand-rm-7010/c.txt'
removed '/tmp/maak-test-expand-rm-7010/keep.log'
removed directory '/tmp/maak-test-expand-rm-7010'
mkdir: created directory '/tmp/maak-test-expand-cp-7010'
mkdir: created directory '/tmp/maak-test-expand-cp-7010/dest'
removed '/tmp/maak-test-expand-cp-7010/a b.txt'
removed '/tmp/maak-test-expand-cp-7010/c.txt'
removed '/tmp/maak-test-expand-cp-7010/dest/a b.txt'
removed '/tmp/maak-test-expand-cp-7010/dest/c.txt'
removed directory '/tmp/maak-test-expand-cp-7010/dest'
removed directory '/tmp/maak-test-expand-cp-7010'
mkdir: created directory '/tmp/maak-test-expand-chmod-7010'
removed '/tmp/maak-test-expand-chmod-7010/a.txt'
removed '/tmp/maak-test-expand-chmod-7010/b.txt'
removed directory '/tmp/maak-test-expand-chmod-7010'
+----------------------------------------------+
[📑 suite] Shell quoting and lookup
[🧪 test] shell-quote wraps in single quotes✅ got: 'a b'✅ got: ''
[🧪 test] shell-quote escapes embedded single quotes✅ got: 'it'\''s'
[🧪 test] which finds a program that exists✅ got: #t
[🧪 test] which returns #f for a missing program✅ got: #f
[🧪 test] command-exists? mirrors which✅ got: #t✅ got: #f
[🧪 test] require-command returns the path it found✅ got: #t
[🧪 test] require-command raises for a missing program✅ success catching error: %exception: (#<&maak-error message: "required command not found on PATH: definitely-not-a-real-command-maak-test" hint: "Install `definitely-not-a-real-command-maak-test', or add it to PATH.">)
+----------------------------------------------+
[📑 suite] File helpers
[🧪 test] write-file then read-file round-trips✅ got: hello
[🧪 test] write-file creates parent directories✅ got: deep
[🧪 test] write-file appends when asked✅ got: onetwo
[🧪 test] read-file returns its default for a missing file✅ got: fallback
[🧪 test] read-file of a missing file is #f without a default✅ got: #f
[🧪 test] touch creates a file✅ got: #t
[🧪 test] with-directory changes the directory✅ got: #t
[🧪 test] with-directory restores the directory✅ got: /etc/byggsteg/job-clone/maak/trunk
+----------------------------------------------+
[📑 suite] Capturing output
[🧪 test] capture returns the output of a successful command✅ got: fine
[🧪 test] capture raises when the command fails✅ success catching error: %exception: (#<&maak-error message: "command failed (exit code 3): exit 3" hint: "Fix the command above, or run `maak --dry-run' to inspect it first.">)
[🧪 test] capture keeps partial output only when allowed to fail✅ got: partial
[🧪 test] capture includes standard error when asked✅ got: oops
+----------------------------------------------+
[📑 suite] File helpers keep paths with spaces whole
[🧪 test] mkdir-p creates one directory, not a directory per word✅ got: #t
[🧪 test] touch creates a file whose name has a space✅ got: #t
[🧪 test] cp copies paths whose names have spaces✅ got: #t
[🧪 test] mv moves paths whose names have spaces✅ got: #t
[🧪 test] ln-s links a path whose name has a space✅ got: #t
[🧪 test] chmod-file changes the mode of a path with a space✅ got: 448
[🧪 test] delete-file-recursively removes a directory with a space✅ got: #t
+----------------------------------------------+
[📑 suite] Shell expansion when asked for
[🧪 test] delete-file-recursively expands a wildcard when asked✅ got: #t
[🧪 test] cp expands a wildcard when asked✅ got: #t
[🧪 test] chmod-file expands a wildcard when asked✅ got: (384 384)
+----------------------------------------------+
[📑 suite] Environment helpers
[🧪 test] home-dir and tmp-dir return strings✅ got: #t✅ got: #t
[🧪 test] env-set! then env-get round-trips✅ got: value
[🧪 test] env-unset! removes the variable✅ got: #f
[🧪 test] env-get falls back to its default✅ got: default
[🧪 test] with-env sets and restores the variable✅ got: inner✅ got: #f
[🧪 test] with-env restores an existing value✅ got: outer
[🧪 test] with-env-vars sets every pair✅ got: (1 2)
+----------------------------------------------+
[📑 suite] Environment files
[🧪 test] the assignments are read in the order they are written✅ got: ((CI . 1) (MAAK_SMOKE . hello) (MAAK_SMOKE_QUOTED . quoted value) (SINGLE . single quoted) (EMPTY . ) (DATABASE_URL . postgres://localhost/dev?sslmode=disable) (INDENTED . spaced))
[🧪 test] environment files skip lines without an =✅ got: #f
[🧪 test] environment files skip comments✅ got: #f
[🧪 test] a file that does not exist has no assignments✅ got: ()
[🧪 test] loading sets the names and reports them✅ got: hello✅ got: (CI MAAK_SMOKE MAAK_SMOKE_QUOTED SINGLE EMPTY DATABASE_URL INDENTED)✅ got: quoted value
[🧪 test] the environment keeps a name it already has✅ got: from-the-environment
[🧪 test] overriding is possible when asked for✅ got: hello
[🧪 test] loading a file that is not there changes nothing✅ got: ()ℹ️ info - ran 7 tasks in: 0 seconds, 18714 microseconds
running unit tests from file: elevation.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-elevation-fallback-7010'
removed directory '/tmp/maak-test-elevation-fallback-7010'
mkdir: created directory '/tmp/maak-test-elevation-doas-7010'
removed '/tmp/maak-test-elevation-doas-7010/doas'
removed directory '/tmp/maak-test-elevation-doas-7010'
mkdir: created directory '/tmp/maak-test-elevation-both-7010'
removed '/tmp/maak-test-elevation-both-7010/doas'
removed '/tmp/maak-test-elevation-both-7010/sudo'
removed directory '/tmp/maak-test-elevation-both-7010'
mkdir: created directory '/tmp/maak-test-elevation-preferred-7010'
removed '/tmp/maak-test-elevation-preferred-7010/doas'
removed directory '/tmp/maak-test-elevation-preferred-7010'
mkdir: created directory '/tmp/maak-test-elevation-not-executable-7010'
removed '/tmp/maak-test-elevation-not-executable-7010/doas'
removed directory '/tmp/maak-test-elevation-not-executable-7010'
+----------------------------------------------+
[📑 suite] Choosing the escalation command
[🧪 test] sudo is the fallback✅ got: sudo
[🧪 test] doas is chosen when it is installed✅ got: doas
[🧪 test] doas wins over sudo when both are installed✅ got: doas
[🧪 test] an explicit preference wins✅ got: my-escalator
[🧪 test] a file that is not executable is not a command✅ got: sudo
[🧪 test] the default is a non-empty string✅ got: #t
+----------------------------------------------+
[📑 suite] Using the escalation command
[🧪 test] dollar puts the chosen command first✅ got: doas echo hi
[🧪 test] dollar keeps the decoration order✅ got: doas env A=1 echo hi >/dev/null 2>&1
[🧪 test] run puts the chosen command in its argv✅ got: doas env A=1 echo hi
[🧪 test] a pipeline stage uses the chosen command✅ got: doas env A=1 true
[🧪 test] the escalation command may carry options✅ got: doas -n echo hi
[🧪 test] options may be separated by any whitespace✅ got: doas -n echo hi
[🧪 test] an empty escalation command turns the request off✅ got: echo hi
[🧪 test] an empty escalation command runs for real too✅ got: #t
[🧪 test] decorate-command is the single place the choice is applied✅ got: doas env A=1 true
[🧪 test] without the request nothing is added✅ got: trueℹ️ info - ran 2 tasks in: 0 seconds, 1487 microseconds
running unit tests from file: commands.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-i18n-7010'
mkdir: created directory '/tmp/maak-test-i18n-7010/sources'
Executing: sleep 3
Executing: sleep 3
+----------------------------------------------+
[📑 suite] Guix command construction
[🧪 test] guix-shell lists its packages✅ got: guix shell guile coreutils -- echo hi
[🧪 test] guix-shell can be pure and use a manifest✅ got: guix shell --pure -m manifest.scm -- maak test
[🧪 test] guix-container isolates with a container✅ got: guix shell --container -m manifest.scm --network -S /home/joe -- echo hi
[🧪 test] guix-pack builds a docker image✅ got: guix pack --file=guix.scm --format=docker --image-tag=maak -S /bin=bin bash
+----------------------------------------------+
[📑 suite] Nix command construction
[🧪 test] nix-shell runs the command it is given✅ got: --run 'echo hi'
[🧪 test] nix-shell passes packages✅ got: --packages python3
[🧪 test] nix-shell names itself✅ got: nix-shell
[🧪 test] nix-shell can be pure✅ got: --pure
[🧪 test] nix-shell can be file based✅ got: --file shell.nix
[🧪 test] nix-develop runs a flake's shell✅ got: nix develop . --command make test
[🧪 test] nix-build builds a file✅ got: nix-build default.nix
[🧪 test] nix-flake-build selects an attribute✅ got: nix build .#packages.x86_64-linux.maak
[🧪 test] nix-flake-check checks all systems✅ got: nix flake check --all-systems .
[🧪 test] nix-run runs an app of a flake✅ got: nix run .#maak -- --version
+----------------------------------------------+
[📑 suite] i18n helpers
[🧪 test] the catalogue paths follow the gettext layout✅ got: po/nl_NL/LC_MESSAGES✅ got: po/nl_NL/LC_MESSAGES/maak.mo✅ got: po/maak.pot✅ got: po/nl_NL/LC_MESSAGES/messages.po
[🧪 test] the directory and its trailing slash are handled✅ got: sys/i18n/locale/translate.pot✅ got: sys/i18n/locale/nl_NL/LC_MESSAGES
[🧪 test] source globs keep the directories that exist✅ got: (src/*.scm)
[🧪 test] source globs skip directories that do not exist✅ got: #f
[🧪 test] i18n-compile builds a msgfmt command✅ got: msgfmt -v -o po/nl_NL/LC_MESSAGES/messages.mo
[🧪 test] i18n-compile names the catalogue it compiles✅ got: po/nl_NL/LC_MESSAGES/messages.po
[🧪 test] i18n-merge builds a msgmerge command✅ got: msgmerge -U
[🧪 test] i18n-init builds a msginit command✅ got: msginit -l nl_NL.UTF8
[🧪 test] i18n-init asks for no translator✅ got: --no-translator
[🧪 test] a first extraction runs xgettext✅ got: xgettext
[🧪 test] a first extraction knows it is reading Scheme✅ got: --language=Scheme
[🧪 test] a first extraction collects the translated strings✅ got: --keyword=G_
[🧪 test] the first extraction does not join an existing template✅ got: #f
[🧪 test] i18n-language is a language✅ got: #t
[🧪 test] i18n-language strips the encoding✅ got: #f
[🧪 test] i18n-language strips the modifier✅ got: #f
+----------------------------------------------+
[📑 suite] Command decorations
[🧪 test] an environment is handed over through env✅ got: env A=1 B=2 make✅ got: env CI=1 make✅ got: env ONLY=1 make
[🧪 test] the decorations come in the order a shell would want✅ got: sudo env CI=1 systemctl daemon-reload >/dev/null 2>&1
[🧪 test] a backgrounded command is started, not waited for✅ got: make -j &
[🧪 test] an allowed failure still runs the command it was given✅ got: make failing-target
[🧪 test] an allowed failure is not turned into a `|| true' shell✅ got: #f
[🧪 test] the Guix shells forward the decorations✅ got: env A=1 guix time-machine --channels=channels.scm -- shell -f guix.scm✅ got: env CI=1 guix shell -m manifest.scm -- maak test✅ got: env A=1 guix time-machine --channels=channels.scm -- guix build hello✅ got: env A=1 guix time-machine --channels=channels.scm -- shell -m manifest.scm✅ got: env A=1 guix shell -f guix.scm -- x
[🧪 test] a container and a pack forward the decorations✅ got: env CI=1 guix shell --container -m manifest.scm -- maak test >/dev/null 2>&1✅ got: env A=1 guix pack --file=guix.scm
[🧪 test] the Nix helpers forward the decorations✅ got: env NIX=1 nix-shell --packages gcc --run 'make test'✅ got: env A=1 nix flake check .✅ got: env A=1 nix develop . --command make
[🧪 test] the shells honour the join separator they are given✅ got: a && b
+----------------------------------------------+
[📑 suite] Running decorated commands
[🧪 test] a failing command stops a task✅ success catching error: %exception: (#<&maak-error message: "command failed (exit code 3): exit 3" hint: "Fix the command above, or run `maak --dry-run' to inspect it first.">)✅ success catching error: %exception: (#<&maak-error message: "command failed (exit code 1): false" hint: "Fix the command above, or run `maak --dry-run' to inspect it first.">)
[🧪 test] a failure that is allowed is reported, not raised✅ got: #t✅ got: #f✅ got: #f
[🧪 test] a backgrounded command reports a job with a pid✅ got: #t
[🧪 test] a backgrounded command is not waited for✅ got: #t
[🧪 test] a discarded command still runs✅ got: #t
[🧪 test] #:env reaches the command itself✅ got: from-dollar
[🧪 test] #:env reaches one command, not the whole task✅ got: #fℹ️ info - ran 5 tasks in: 0 seconds, 17387 microseconds
running unit tests from file: tasks.scm, entrypoint: spec
+----------------------------------------------+
[📑 suite] Task resolution
[🧪 test] exports restrict the visible tasks✅ got: (alpha beta)
[🧪 test] non-exported procedures are hidden✅ got: #f
[🧪 test] a module without exports is open season✅ got: (one two)
[🧪 test] available-task-names returns a list✅ got: #t
[🧪 test] available-task-names returns strings✅ got: #t
[🧪 test] available-task-names is sorted✅ got: (alpha beta boom echo-args first-pass last-pass ok report-default report-env second-fail sub-marker third-fail)
+----------------------------------------------+
[📑 suite] Unknown task errors
[🧪 test] an unknown task names itself✅ got: Unknown task: nope
[🧪 test] a missing default gets its own message✅ got: Could not find a `default' task in this Maak file.
[🧪 test] the error carries a hint✅ got: #t
[🧪 test] the hint says something✅ got: #t
[🧪 test] run-task raises for a task that does not exist✅ success catching error: %exception: (#<&maak-error message: "Unknown task: definitely-missing-task" hint: "Available tasks: alpha, beta, boom, echo-args, first-pass, last-pass, ok, report-default, report-env, second-fail, sub-marker, third-fail">)
[🧪 test] run-tasks raises for a task that does not exist✅ success catching error: %exception: (#<&maak-error message: "Unknown task: definitely-missing-task" hint: "Available tasks: alpha, beta, boom, echo-args, first-pass, last-pass, ok, report-default, report-env, second-fail, sub-marker, third-fail">)
[🧪 test] run-tasks of nothing is a no-op✅ got: #t
+----------------------------------------------+
[📑 suite] Docstring layout is exported
[🧪 test] format-task-doc is available from (maak maak)✅ got: (t: one line)✅ got: #t
[🧪 test] available-task-names is available from (maak maak)✅ got: #tℹ️ info - ran 3 tasks in: 0 seconds, 1648 microseconds
running unit tests from file: docstrings.scm, entrypoint: spec
+----------------------------------------------+
[📑 suite] Task docstring layout
[🧪 test] a single line stays inline✅ got: (build: Compile the project.)
[🧪 test] two lines align the continuation✅ got: (t: first second)
[🧪 test] one paragraph keeps every line aligned under the name✅ got: (t: first second third fourth)
[🧪 test] a paragraph break starts a block under the name✅ got: (t: first second third)
[🧪 test] a wrapped paragraph aligns with the widest name✅ got: (collect-artefacts: Gather the build output. The result is a tarball.)
[🧪 test] an indented multi-line docstring keeps its alignment✅ got: (t: first second)
[🧪 test] a block keeps its blank lines blank✅ got: (t: a b c)
[🧪 test] a docstring with no documentation prints the name only✅ got: (t:)✅ got: (t:)✅ got: (t:)
[🧪 test] source indentation is removed before laying out✅ got: (t: first second)
[🧪 test] the margin follows the length of the name✅ got: (longname: a b)
[🧪 test] blank lines inside a block are not padded✅ got: (t: a b)
[🧪 test] the name is emphasised with ANSI escapes✅ got: #tℹ️ info - ran 1 tasks in: 0 seconds, 914 microseconds
running unit tests from file: dsl.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-processes-7010'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/out.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/stage-env.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/pipeline-env.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/override.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/printed.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
ONE
TWO
removed '/tmp/maak-test-processes-7010/teed.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/teed.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/printed.txt'
removed '/tmp/maak-test-processes-7010/kept.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
[DRY-RUN]: printf 'x'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/keep.log'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/*.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010/sub'
removed '/tmp/maak-test-processes-7010/sub/a.txt'
removed directory '/tmp/maak-test-processes-7010/sub'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/keep.txt'
removed directory '/tmp/maak-test-processes-7010'
mkdir: created directory '/tmp/maak-test-processes-7010'
removed '/tmp/maak-test-processes-7010/a.txt'
removed '/tmp/maak-test-processes-7010/keep.log'
removed directory '/tmp/maak-test-processes-7010'
+----------------------------------------------+
[📑 suite] Pretty multiline strings
[🧪 test] dedent removes the common indentation✅ got: hello✅ got: a b
[🧪 test] dedent drops surrounding blank lines✅ got: ab
[🧪 test] dedent keeps interior blank lines✅ got: ab
[🧪 test] dedent expands tabs✅ got: ab
[🧪 test] dedent of a single word is the word✅ got: word
[🧪 test] indent adds spaces to every line✅ got: a b
[🧪 test] indent can leave the first line flush✅ got: a b
[🧪 test] the text macro joins and dedents its lines✅ got: xy✅ got: ab
[🧪 test] string-lines splits on newlines✅ got: (a b)
[🧪 test] unlines joins with newlines✅ got: ab
[🧪 test] unwords joins with spaces✅ got: a b
[🧪 test] blank-line? recognises whitespace✅ got: #f✅ got: #t✅ got: #t
[🧪 test] leading-whitespace-count counts spaces and tabs✅ got: 3✅ got: 0✅ got: 2
+----------------------------------------------+
[📑 suite] Load paths
[🧪 test] split-load-path splits on colons✅ got: (a b)
[🧪 test] split-load-path drops empty entries✅ got: (a b)
[🧪 test] split-load-path handles the empty cases✅ got: ()✅ got: ()
[🧪 test] with-load-path adds the directories✅ got: #t
[🧪 test] with-load-path restores the load path✅ got: #f
[🧪 test] with-load-path restores the load path after an error✅ success catching error: misc-error: (#f deliberate failure () #f)✅ got: #f
[🧪 test] add-load-path! records the directory✅ got: /tmp/maak-test-add✅ got: #t✅ got: #t
[🧪 test] add-load-paths! adds every directory✅ got: #t✅ got: #t
+----------------------------------------------+
[📑 suite] Maak errors
[🧪 test] make-maak-error builds a typed error✅ got: #f✅ got: #t✅ got: hint✅ got: message
[🧪 test] raise-maak-error raises a catchable maak error✅ got: boom
[🧪 test] raise-maak-error carries its hint✅ got: try this
[🧪 test] find-maak-error returns #f for a foreign error✅ got: #f
[🧪 test] raise-maak-error is catchable with assert-error✅ success catching error: %exception: (#<&maak-error message: "nope" hint: #f>)
+----------------------------------------------+
[📑 suite] Programs, arguments and jobs
[🧪 test] run returns #t when the program exits with 0✅ got: #t
[🧪 test] run keeps a space inside one argument✅ got: #t
[🧪 test] run returns #f when a failure is allowed✅ got: #f
[🧪 test] run raises when a command fails✅ success catching error: %exception: (#<&maak-error message: "command failed (exit code 3): sh -c 'exit 3'" hint: "Fix the command above, or run `maak --dry-run' to inspect it first.">)
[🧪 test] run refuses an empty argument list✅ success catching error: %exception: (#<&maak-error message: "run expects a non-empty list of strings, starting with the program" hint: "Write (run (list \"mkdir\" \"-p\" dir)) instead of one long command.">)
[🧪 test] run refuses an argument that is not a string✅ success catching error: %exception: (#<&maak-error message: "run expects a non-empty list of strings, starting with the program" hint: "Write (run (list \"mkdir\" \"-p\" dir)) instead of one long command.">)
[🧪 test] a dry run does not start the program✅ got: #f
[🧪 test] an async run returns a job with a pid✅ got: #t
[🧪 test] wait-job is #t for a successful job✅ got: #t
[🧪 test] wait-job is #f for a failing job✅ got: #f
[🧪 test] job-exit-code reports the exit code✅ got: 4
[🧪 test] a job can be waited on twice✅ got: #t
[🧪 test] job-done? does not wait for a running job✅ got: #f
[🧪 test] job-done? is true once the job has finished✅ got: #t
[🧪 test] a background shell command is a job too✅ got: #t
[🧪 test] job-command keeps the command as written✅ got: sh -c 'exit 0'
+----------------------------------------------+
[📑 suite] Pipelines and shell expansion
[🧪 test] a pipeline feeds each stage into the next✅ got: hello
[🧪 test] a failing stage fails the whole pipeline✅ got: #f
[🧪 test] a pipeline raises when a stage fails✅ success catching error: %exception: (#<&maak-error message: "pipeline failed: stage 1 (false) exited with code 1" hint: "Fix the failing stage above, or run `maak --dry-run' to inspect the pipeline first.">)
[🧪 test] a pipeline with no stages is refused✅ success catching error: %exception: (#<&maak-error message: "run-pipeline expects a non-empty list of stages: argument lists or (stage ...) forms" hint: "Write (run-pipeline (list (list \"cat\" file) (stage (list \"grep\" pattern) #:env '(\"LC_ALL=C\")))).">)
[🧪 test] a pipeline with an empty stage is refused✅ success catching error: %exception: (#<&maak-error message: "run-pipeline expects a non-empty list of stages: argument lists or (stage ...) forms" hint: "Write (run-pipeline (list (list \"cat\" file) (stage (list \"grep\" pattern) #:env '(\"LC_ALL=C\")))).">)
[🧪 test] a dry run does not start the pipeline✅ got: #f
[🧪 test] a stage whose program is missing fails the pipeline✅ got: #f
[🧪 test] a stage takes environment variables of its own✅ got: stage
[🧪 test] a pipeline gives its environment to every stage✅ got: shared
[🧪 test] a stage's environment wins over the pipeline's✅ got: stage
[🧪 test] a dry run shows a stage's environment and sudo✅ got: #t
[🧪 test] a captured pipeline returns what every stage wrote✅ got: (onetwo ONETWO)
[🧪 test] a capture of more than a pipeful loses nothing✅ got: 20000
[🧪 test] a captured pipeline prints nothing itself✅ got:
[🧪 test] a capture leaves no temporary file behind✅ got: #f
[🧪 test] a captured pipeline reports the stages that failed✅ got: #f
[🧪 test] a stage's tee file keeps what the stage wrote✅ got: onetwo
[🧪 test] the stage after a tee reads the same bytes✅ got: one
[🧪 test] a tee on the last stage prints what it keeps✅ got: hello
[🧪 test] a tee that cannot be written is refused before the pipeline✅ success catching error: %exception: (#<&maak-error message: "stage 1 (printf 'x\n') cannot record its output to /tmp/maak-test-processes-7010/missing/log.txt: No such file or directory: \"/tmp/maak-test-processes-7010/missing/log.txt\"" hint: "Point #:tee at a file the task may write, or drop it and read the pipeline's output another way.">)
[🧪 test] a stage refuses a tee that is not a file name✅ success catching error: %exception: (#<&maak-error message: "stage expects #:tee to name a file, got 42" hint: "Write (stage (list \"grep\" pattern) #:tee \"clean.txt\").">)
[🧪 test] a background pipeline cannot capture its output✅ success catching error: %exception: (#<&maak-error message: "a background pipeline cannot capture its output" hint: "Wait for the job and capture a foreground pipeline, or give the stage a file with (stage argv #:tee file).">)
[🧪 test] a dry run shows the tee a stage writes to✅ got: #t
[🧪 test] a dry run of a captured pipeline returns an empty result✅ got: ()
[🧪 test] a stage refuses an empty argument list✅ success catching error: %exception: (#<&maak-error message: "stage expects a non-empty list of strings, starting with the program" hint: "Write (stage (list \"grep\" pattern) #:env '(\"LC_ALL=C\")).">)
[🧪 test] a pipeline refuses a stage that is not an argument list✅ success catching error: %exception: (#<&maak-error message: "run-pipeline expects a non-empty list of stages: argument lists or (stage ...) forms" hint: "Write (run-pipeline (list (list \"cat\" file) (stage (list \"grep\" pattern) #:env '(\"LC_ALL=C\")))).">)
[🧪 test] an async pipeline returns a job✅ got: #t
[🧪 test] a failing async pipeline fails its job✅ got: #f
[🧪 test] run expands a wildcard when asked to✅ got: #t
[🧪 test] run takes a wildcard literally without the opt-in✅ got: #t
+----------------------------------------------+
[📑 suite] File helpers
[🧪 test] rm-rf removes a directory and its contents✅ got: #t
[🧪 test] rm-rf is a dry run under dry-run?✅ got: #t
[🧪 test] rm-rf expands a wildcard when asked to✅ got: #tℹ️ info - ran 6 tasks in: 0 seconds, 19249 microseconds
running unit tests from file: archive.scm, entrypoint: spec
mkdir: created directory '/tmp/maak-test-archive-tar-create-7010'
removed '/tmp/maak-test-archive-tar-create-7010/a.txt'
removed '/tmp/maak-test-archive-tar-create-7010/b.txt'
removed '/tmp/maak-test-archive-tar-create-7010/p.tar.gz'
removed directory '/tmp/maak-test-archive-tar-create-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-exclude-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-exclude-7010/tree'
removed '/tmp/maak-test-archive-tar-exclude-7010/tree/a.txt'
removed '/tmp/maak-test-archive-tar-exclude-7010/tree/b.log'
removed directory '/tmp/maak-test-archive-tar-exclude-7010/tree'
removed '/tmp/maak-test-archive-tar-exclude-7010/p.tar.gz'
removed directory '/tmp/maak-test-archive-tar-exclude-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-tree-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-tree-7010/tree'
removed '/tmp/maak-test-archive-tar-tree-7010/tree/a.txt'
removed directory '/tmp/maak-test-archive-tar-tree-7010/tree'
removed '/tmp/maak-test-archive-tar-tree-7010/p.tar.gz'
removed directory '/tmp/maak-test-archive-tar-tree-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-outside-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-outside-7010/tree'
removed '/tmp/maak-test-archive-tar-outside-7010/tree/a.txt'
removed directory '/tmp/maak-test-archive-tar-outside-7010/tree'
removed '/tmp/maak-test-archive-tar-outside-7010/p.tar.gz'
removed directory '/tmp/maak-test-archive-tar-outside-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-extract-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-extract-7010/out'
removed '/tmp/maak-test-archive-tar-extract-7010/a.txt'
removed '/tmp/maak-test-archive-tar-extract-7010/p.tar.gz'
removed '/tmp/maak-test-archive-tar-extract-7010/out/a.txt'
removed directory '/tmp/maak-test-archive-tar-extract-7010/out'
removed directory '/tmp/maak-test-archive-tar-extract-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-strip-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-strip-7010/p'
mkdir: created directory '/tmp/maak-test-archive-tar-strip-7010/out'
removed '/tmp/maak-test-archive-tar-strip-7010/p/a.txt'
removed directory '/tmp/maak-test-archive-tar-strip-7010/p'
removed '/tmp/maak-test-archive-tar-strip-7010/p.tar.gz'
removed '/tmp/maak-test-archive-tar-strip-7010/out/a.txt'
removed directory '/tmp/maak-test-archive-tar-strip-7010/out'
removed directory '/tmp/maak-test-archive-tar-strip-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-xz-7010'
removed '/tmp/maak-test-archive-tar-xz-7010/a.txt'
removed '/tmp/maak-test-archive-tar-xz-7010/p.tar.xz'
removed directory '/tmp/maak-test-archive-tar-xz-7010'
mkdir: created directory '/tmp/maak-test-archive-tar-list-7010'
a.txt
removed '/tmp/maak-test-archive-tar-list-7010/a.txt'
removed '/tmp/maak-test-archive-tar-list-7010/p.tar.gz'
removed directory '/tmp/maak-test-archive-tar-list-7010'
mkdir: created directory '/tmp/maak-test-archive-zip-create-7010'
adding: a.txt (stored 0%)
removed '/tmp/maak-test-archive-zip-create-7010/a.txt'
removed '/tmp/maak-test-archive-zip-create-7010/p.zip'
removed directory '/tmp/maak-test-archive-zip-create-7010'
mkdir: created directory '/tmp/maak-test-archive-zip-extract-7010'
adding: a.txt (stored 0%)
mkdir: created directory '/tmp/maak-test-archive-zip-extract-7010/out'
Archive: /tmp/maak-test-archive-zip-extract-7010/p.zip
extracting: /tmp/maak-test-archive-zip-extract-7010/out/a.txt
removed '/tmp/maak-test-archive-zip-extract-7010/a.txt'
removed '/tmp/maak-test-archive-zip-extract-7010/p.zip'
removed '/tmp/maak-test-archive-zip-extract-7010/out/a.txt'
removed directory '/tmp/maak-test-archive-zip-extract-7010/out'
removed directory '/tmp/maak-test-archive-zip-extract-7010'
mkdir: created directory '/tmp/maak-test-archive-zip-exclude-7010'
adding: a.txt (stored 0%)
removed '/tmp/maak-test-archive-zip-exclude-7010/a.txt'
removed '/tmp/maak-test-archive-zip-exclude-7010/b.log'
removed '/tmp/maak-test-archive-zip-exclude-7010/p.zip'
removed directory '/tmp/maak-test-archive-zip-exclude-7010'
mkdir: created directory '/tmp/maak-test-archive-zip-recursive-7010'
mkdir: created directory '/tmp/maak-test-archive-zip-recursive-7010/src'
adding: src/ (stored 0%)
adding: src/a.txt (stored 0%)
removed '/tmp/maak-test-archive-zip-recursive-7010/src/a.txt'
removed directory '/tmp/maak-test-archive-zip-recursive-7010/src'
removed '/tmp/maak-test-archive-zip-recursive-7010/p.zip'
removed directory '/tmp/maak-test-archive-zip-recursive-7010'
mkdir: created directory '/tmp/maak-test-archive-zip-list-7010'
adding: a.txt (stored 0%)
Archive: /tmp/maak-test-archive-zip-list-7010/p.zip
Length Date Time Name
--------- ---------- ----- ----
3 11-04-2026 23:12 a.txt
--------- -------
3 1 file
removed '/tmp/maak-test-archive-zip-list-7010/a.txt'
removed '/tmp/maak-test-archive-zip-list-7010/p.zip'
removed directory '/tmp/maak-test-archive-zip-list-7010'
+----------------------------------------------+
[📑 suite] Archive argument lists
[🧪 test] a .tar.gz name selects gzip✅ got: (tar -c -z -f p.tar.gz src)
[🧪 test] a .tar.xz name selects xz✅ got: (tar -c -J -f p.tar.xz src)
[🧪 test] a .tar name selects no compression✅ got: (tar -c -f p.tar src)
[🧪 test] a .tar.zst name selects zstd✅ got: (tar -c --zstd -f p.tar.zst src)
[🧪 test] the short extension names select their compressor✅ got: ((tar -c -z -f p.tgz src) (tar -c -j -f p.tbz2 src) (tar -c -J -f p.txz src) (tar -c --zstd -f p.tzst src))
[🧪 test] a compression symbol is accepted too✅ got: (-z)
[🧪 test] an explicit compression wins over the extension✅ got: (tar -c -j -f p.tar.gz src)
[🧪 test] gzip is accepted by name and by alias✅ got: (-z)
[🧪 test] bzip2 is accepted by name and by alias✅ got: (-j)
[🧪 test] xz has a single spelling✅ got: (-J)
[🧪 test] zstd is accepted by name and by alias✅ got: (--zstd)
[🧪 test] no compression is the empty flag list✅ got: ()
[🧪 test] an unknown compression is refused✅ success catching error: %exception: (#<&maak-error message: "unknown tar compression: rar" hint: "Use one of: none, gz, bz2, xz, zstd.">)
[🧪 test] tar options precede the files✅ got: (tar -c -z -v -f p.tar.gz -C src --exclude=*.o .)
[🧪 test] tar extraction names the tree and the strip count✅ got: (tar -x -f p.tar.gz -C out --strip-components=1)
[🧪 test] tar extraction is verbose when asked✅ got: (tar -x -v -f p.tar.gz)
[🧪 test] tar extraction refuses a negative strip count✅ success catching error: %exception: (#<&maak-error message: "tar-extract expects #:strip-components to be a non-negative integer, got -1" hint: "Use 0 to keep the archive's paths, or 1 to drop its top-level directory.">)
[🧪 test] tar listing is a separate argv✅ got: (tar -t -f p.tar.gz)
[🧪 test] zip passes exclude patterns after the files✅ got: (zip -r p.zip src -x *.o *.go)
[🧪 test] zip can store bare names and be quiet✅ got: (zip -q -r -j p.zip a.txt)
[🧪 test] zip extraction defaults to overwriting✅ got: (unzip -o p.zip -d out)
[🧪 test] zip extraction can keep existing files✅ got: (unzip -n p.zip)
[🧪 test] zip listing is its own argv✅ got: (unzip -l p.zip)
[🧪 test] an empty tar name is refused✅ success catching error: %exception: (#<&maak-error message: "tar-create expects the archive file to write" hint: "Write (tar-create \"project-1.0.tar.gz\" (list \"src\" \"README.org\")).">)
[🧪 test] an empty zip name is refused✅ success catching error: %exception: (#<&maak-error message: "zip-create expects the archive file to write" hint: "Write (zip-create \"project-1.0.zip\" (list \"src\" \"README.org\")).">)
[🧪 test] an empty file list is refused by tar✅ success catching error: %exception: (#<&maak-error message: "tar-create expects at least one file to put in the archive" hint: "Name the paths to pack, as in (list \"src\" \"README.org\").">)
[🧪 test] an empty file list is refused by zip✅ success catching error: %exception: (#<&maak-error message: "zip-create expects at least one file to put in the archive" hint: "Name the paths to pack, as in (list \"src\" \"README.org\").">)
[🧪 test] a dry run prints the command it would run✅ got: tar -c -z -f /tmp/maak-test-dry.tar.gz src
+----------------------------------------------+
[📑 suite] Real tar archives
[🧪 test] a created tarball lists its files✅ got: a.txt
[🧪 test] an excluded file is not in the tarball✅ got: a.txt
[🧪 test] packing a tree does not fail on the tarball being written✅ got: #t
[🧪 test] the tarball lands in the task directory, not the packed tree✅ got: (#t #f)
[🧪 test] a tarball can be extracted✅ got: hello
[🧪 test] a strip count removes the top-level directory✅ got: deep
[🧪 test] an xz tarball round-trips✅ got: a.txt
[🧪 test] tar-list succeeds on a real archive✅ got: #t
+----------------------------------------------+
[📑 suite] Real zip archives
[🧪 test] a created zip lists its files✅ got: a.txt
[🧪 test] a zip can be extracted✅ got: hello
[🧪 test] an excluded file is not in the zip✅ got: #f
[🧪 test] a directory tree is added recursively✅ got: src/a.txt
[🧪 test] zip-list succeeds on a real archive✅ got: #tℹ️ info - ran 3 tasks in: 0 seconds, 16165 microseconds
running unit tests from file: integration.scm, entrypoint: spec
+----------------------------------------------+
[📑 suite] The launcher as a process
[🧪 test] this checkout's Maak file loads through the launcher beside it✅ got: 0
[🧪 test] the listing names a task only this checkout's Maak file defines✅ got: (0 #t)
[🧪 test] the help text is read from the resources the launcher ships beside itself✅ got: (0 #t)
[🧪 test] the version banner is printed and the run succeeds✅ got: (0 #t)
[🧪 test] a task of a named Maak file runs and reports its own output✅ got: (0 #t #t)
[🧪 test] a failing task exits non-zero and leaves its message on standard error✅ got: (1 #t #f)
[🧪 test] a task the Maak file does not define is refused, and the run says which exist✅ got: (1 #t)
[🧪 test] -C enters the directory before the Maak file is looked for✅ got: (0 #t)
[🧪 test] a failure stops the tasks after it✅ got: (1 #f)
[🧪 test] --keep-going runs the rest and still exits non-zero✅ got: (1 #t)
[🧪 test] -j runs the tasks named and prints their output in that order✅ got: (0 #t #t #t)
[🧪 test] -j with a failing task exits non-zero and says which task failed✅ got: (1 #t #t)
[🧪 test] -j 1 runs the tasks one after another and still succeeds✅ got: (0 #t #t)
[🧪 test] a job count that is not a positive number is refused✅ got: (1 #t)
[🧪 test] several tasks named one word each after a `--' all run✅ got: (0 #t #t)
[🧪 test] a comma separated list names the same run✅ got: (0 #t #t)
[🧪 test] the words after a task name are its arguments✅ got: (0 #t)
[🧪 test] a `--' sets the arguments apart and reads exactly the same✅ got: (0 #t)
[🧪 test] an argument that looks like an option stays an argument✅ got: (0 #t)
[🧪 test] a second bare word is an argument, never a second task✅ got: (0 #t #f)
[🧪 test] -t names the tasks, so the other words are their arguments✅ got: (0 #t)
[🧪 test] --tasks names several tasks, the way the library reads them✅ got: (0 #t #t)
[🧪 test] a word that names a task, passed as an argument, is pointed out✅ got: (1 #t #t)
[🧪 test] a `--' ends the options, so a late one is read as a task✅ got: (1 #t)
[🧪 test] a directory with no Maak file is refused rather than run✅ got: (1 #t)ℹ️ info - ran 1 tasks in: 0 seconds, 1692 microseconds
finished running tests
--------------------------------------------------------------
Maak 0.12.0: the infinitely extensible command runner
Loading tasks from Maak file: /etc/byggsteg/job-clone/maak/trunk/maak.scm
Executing Maak tasks: test
--------------------------------------------------------------
=> Running Maak task: test
Run the project's unit test suite with Veritas.
The specs live under test/veritas/unit and are located by the Veritas runner,
which needs both the library sources and the test tree on the load path.
Executing: guix shell -m manifest.scm -- env VERITAS_TEST_MODULE=veritas VERITAS_TEST_TOP_DIR=test VERITAS_TEST_TYPE=unit VERITAS_RUN_BENCHMARKS=false guile -L ./src -L ./test -c '(exit ((@ (veritas runner) run-tests)))'
→ running command: cd /etc/byggsteg/job-clone/maak/trunk && sudo guix time-machine --channels=channels.scm -- shell -f guix.scm -- maak deploy
--------------------------------------------------------------
Maak 0.12.0: the infinitely extensible command runner
Loading tasks from Maak file: /etc/byggsteg/job-clone/maak/trunk/maak.scm
Executing Maak tasks: deploy
--------------------------------------------------------------
=> Running Maak task: deploy
Generate documentation for the project and publish to web directory.
API documentation saved to doc/api
index.texi:2431: warning: @end should only appear at the beginning of a line
index.texi:8120: warning: @end should only appear at the beginning of a line
index.texi: warning: must specify a title with a title command or @top
Executing: guix shell -m manifest.scm -- documenta api ./src/maak && texi2any -v --html --css-ref=https://jointhefreeworld.org/static/css/jointhefreeworld.css -o index_html ./doc/api/index.texi
renamed './index_html' -> './doc/api-dist'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/API.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005farchive.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fcontainer.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fdsl.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fgit.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fguix.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fi18n.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fmaak.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fmain.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fnet.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fniri.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fnix.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fshell.html'
removed '/srv/http/jointhefreeworld.org/api-docs/maak/maak_005fversion.html'
removed directory '/srv/http/jointhefreeworld.org/api-docs/maak'
renamed 'doc/api-dist' -> '/srv/http/jointhefreeworld.org/api-docs/maak'
removed 'doc/api/index.texi'
removed directory 'doc/api'
removed directory 'doc'