viewing logs
job failed
kracht
- time taken
- 4 seconds
- started at
- Fri Aug 29 09:24:40 2025
- updated at
- Fri Aug 29 09:24:44 2025
- log uuid
9fbd0b8a-82cd-4a3f-86bd-633aa592c5dc
inspect the job's lambda expression
(lambda()
`((task . ("maak-test" "maak-deploy"))
(project . "kracht")
(branch-name . "trunk")
(clone-url . "https://codeberg.org/jjba23/kracht.git")
(env . ((VERITAS_REPORTER . monotone-reporter)))))
starting new job...
-> running command: cd /etc/byggsteg/job-clone/kracht/trunk && git reset --hard && git pull
HEAD is now at 4b726c4 ??? feature: Add more re-exports and add flatten-list
From https://codeberg.org/jjba23/kracht
4b726c4..4951a6f trunk -> origin/trunk
* [new tag] v0.2.12 -> v0.2.12
Updating 4b726c4..4951a6f
Fast-forward
README.org | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
-> running command: cd /etc/byggsteg/job-clone/kracht/trunk && uname -a
Linux wolk-jjba 6.15.9-gnu #1 SMP PREEMPT_DYNAMIC 1 x86_64 GNU/Linux
-> running command: cd /etc/byggsteg/job-clone/kracht/trunk && git log --name-status HEAD^..HEAD
commit 4951a6f7a48895ff5d0c0a89cfc327b15fb1368f
Author: Josep Bigorra <jjbigorra@gmail.com>
Date: Fri Aug 29 09:24:43 2025 +0200
???? docs: README
M README.org
-> running command: cd /etc/byggsteg/job-clone/kracht/trunk && maak test
scanning directories for unit tests...
scanning present working directory for unit tests...
found unit tests: (prelude-spec.scm)
running unit tests from file: prelude-spec.scm, entrypoint: spec
1 + 1 = 2 and 2 + 2 = 4
[INFO] 3 + 3 = 6 and 4 + 4 = 8
[INFO] 5 + 5 = 10 and 6 + 6 = 12
[ERROR] fake message: something totally expected
warning! could not decode pair (): wrong-type-arg: (car Wrong type argument in position 1 (expecting pair): ~S (()) (()))
warning! could not decode pair (key-only): wrong-type-arg: (car Wrong type argument in position 1 (expecting pair): ~S (()) (()))
warning! could not decode pair (key1): wrong-type-arg: (car Wrong type argument in position 1 (expecting pair): ~S (()) (()))
warning! could not decode pair (key2): wrong-type-arg: (car Wrong type argument in position 1 (expecting pair): ~S (()) (()))
warning! could not decode pair (b): wrong-type-arg: (car Wrong type argument in position 1 (expecting pair): ~S (()) (()))
------------------------------------------
[suite] Another test suite
[test] html-escape tests
[assert] String with multiple occurrences
[pass] expect: He said, "It's a beautiful day!", got: He said, "It's a beautiful day!"
[assert] Single quote
[pass] expect: ', got: '
[assert] Mix of quotes
[pass] expect: He's a "guy"., got: He's a "guy".
[assert] Double quote
[pass] expect: ", got: "
[assert] Accented O
[pass] expect: Ó, got: Ó
[assert] Accented u
[pass] expect: ú, got: ú
[assert] Accented I
[pass] expect: Í, got: Í
[assert] Multiple accents
[pass] expect: Árvore é bonita, got: Árvore é bonita
[assert] Accented o
[pass] expect: ó, got: ó
[assert] Accented U
[pass] expect: Ú, got: Ú
[assert] N-tilde
[pass] expect: ñ, got: ñ
[assert] Empty string
[pass] expect: , got:
[assert] Accented i
[pass] expect: í, got: í
[assert] Example sentence escaped
[pass] expect: Ólá, múndo! Isto é um teste., got: Ólá, múndo! Isto é um teste.
[assert] C-cedilla
[pass] expect: ç, got: ç
[assert] Accented E
[pass] expect: É, got: É
[assert] String with no special characters
[pass] expect: Hello, World!, got: Hello, World!
[test] sha tests
[assert] get-short-commit-sha works as expected
[pass] expect: #t, got: #t
[test] html-unescape tests
[assert] Example sentence unescaped
[pass] expect: ?l?, m?ndo! Isto ? um teste., got: ?l?, m?ndo! Isto ? um teste.
[assert] Mix of entities
[pass] expect: He's a "guy"., got: He's a "guy".
[assert] C-cedilla entity
[pass] expect: ?, got: ?
[assert] Empty string
[pass] expect: , got:
[assert] Single apos entity
[pass] expect: ', got: '
[assert] Single quot entity
[pass] expect: ", got: "
[assert] Multiple entity occurrences
[pass] expect: It's a "quote"., got: It's a "quote".
[assert] Accented A entity
[pass] expect: ?, got: ?
[assert] Accented a entity
[pass] expect: ?, got: ?
[assert] String with no entities
[pass] expect: Hello, World!, got: Hello, World!
[test] Round-trip tests
[assert] Unescape then escape (for chars in alist)
[pass] expect: 'áéíóú", got: 'áéíóú"
[assert] Example sentence
[pass] expect: Ol?, m?ndo! Isto ? um teste., got: Ol?, m?ndo! Isto ? um teste.
[assert] Escape then unescape
[pass] expect: Hello, it's a "test" with ?????., got: Hello, it's a "test" with ?????.
[assert] Unescape then escape (assuming valid entities)
[pass] expect: <div>'test'</div>, got: <div>'test'</div>
[test] log tests
[assert] log behaves as expected
[pass] expect: #t, got: #t
[assert] log-info behaves as expected
[pass] expect: #t, got: #t
[assert] log-error behaves as expected
[pass] expect: #t, got: #t
[assert] log-message behaves as expected
[pass] expect: #t, got: #t
------------------------------------------
[suite] Prelude test suite
[test] alist-from-url-encoded-body
[assert] duplicate keys
[pass] expect: ((item . apple) (item . orange)), got: ((item . apple) (item . orange))
[assert] mixed valid and malformed pairs
[pass] expect: ((a . 1) (b . ) (c . 3)), got: ((a . 1) (b . ) (c . 3))
[assert] ampersand character (%26)
[pass] expect: ((data . one&two)), got: ((data . one&two))
[assert] comma character (%2C)
[pass] expect: ((list . a,b,c)), got: ((list . a,b,c))
[assert] dollar sign character (%24)
[pass] expect: ((amount . $100)), got: ((amount . $100))
[assert] backslash character (%5C)
[pass] expect: ((winpath . C:\Users\)), got: ((winpath . C:\Users\))
[assert] slash character (%2F)
[pass] expect: ((path . /usr/local)), got: ((path . /usr/local))
[assert] semicolon character (%3B)
[pass] expect: ((cookie . id;user)), got: ((cookie . id;user))
[assert] curly braces characters (%7B, %7D)
[pass] expect: ((json . {data})), got: ((json . {data}))
[assert] empty key and empty value
[pass] expect: (), got: ()
[assert] single key value pair
[pass] expect: ((name . John Doe)), got: ((name . John Doe))
[assert] parentheses characters (%28, %29)
[pass] expect: ((func . f(x))), got: ((func . f(x)))
[assert] keys and values with special characters (URL-encoded)
[pass] expect: ((param_1 . value with spaces) (param/2 . another_value!)), got: ((param_1 . value with spaces) (param/2 . another_value!))
[assert] square brackets characters (%5B, %5D)
[pass] expect: ((array . [1,2])), got: ((array . [1,2]))
[assert] equals sign character (%3D)
[pass] expect: ((equation . x=y)), got: ((equation . x=y))
[assert] colon character (%3A)
[pass] expect: ((protocol . http:)), got: ((protocol . http:))
[assert] single key, no equals sign
[pass] expect: ((key-only . )), got: ((key-only . ))
[assert] empty body
[pass] expect: (), got: ()
[assert] exclamation mark character (%21)
[pass] expect: ((warning . danger!)), got: ((warning . danger!))
[assert] hash/pound sign character (%23)
[pass] expect: ((tag . #important)), got: ((tag . #important))
[assert] value with no key (unlikely but possible from split)
[pass] expect: (( . value)), got: (( . value))
[assert] at symbol character (%40)
[pass] expect: ((email . test@example.com)), got: ((email . test@example.com))
[assert] key with no value
[pass] expect: ((key . )), got: ((key . ))
[assert] unicode characters (e.g., '?' - %C3%A9 in UTF-8)
[pass] expect: ((name . fianc?)), got: ((name . fianc?))
[assert] multiple encoded characters in one value
[pass] expect: ((complex . a&b=c?d e)), got: ((complex . a&b=c?d e))
[assert] multiple keys, no equals sign
[pass] expect: ((key1 . ) (key2 . )), got: ((key1 . ) (key2 . ))
[assert] plus sign (%2B) - often used for space, but distinct from actual '+'
[pass] expect: ((code . a+b)), got: ((code . a+b))
[assert] space character (%20)
[pass] expect: ((message . hello world)), got: ((message . hello world))
[assert] question mark character (%3F)
[pass] expect: ((query . what?)), got: ((query . what?))
[assert] multiple key-value pairs
[pass] expect: ((name . Jane Doe) (age . 30)), got: ((name . Jane Doe) (age . 30))
[test] empty-string? tests
[assert] empty-string? with empty string
[pass] expect: #t, got: #t
[assert] empty-string? with non-empty string
[pass] expect: #f, got: #f
[assert] empty-string? with whitespace
[pass] expect: #f, got: #f
[test] string-drop tests
[assert] string-drop-first-last-line single line
[pass] expect: , got:
[assert] string-drop-first-last two chars
[pass] expect: ab, got: ab
[assert] string-drop-first-last single char
[pass] expect: a, got: a
[assert] string-drop-first-last normal case
[pass] expect: ell, got: ell
[assert] string-drop-first-last-line empty input
[pass] expect: , got:
[assert] string-drop-first-last empty string
[pass] expect: , got:
[assert] string-drop-first-last-line normal case
[pass] expect: middle line, got: middle line
[assert] string-drop-first-last-line two lines
[pass] expect: , got:
[test] non-empty-string? tests
[assert] non-empty-string? with #t
[pass] expect: #t, got: #t
[assert] non-empty-string? with #f
[pass] expect: #f, got: #f
[assert] non-empty-string? with non-empty string
[pass] expect: #t, got: #t
[assert] non-empty-string? with empty string
[pass] expect: #f, got: #f
[assert] non-empty-string? with whitespace
[pass] expect: #t, got: #t
[test] assoc-ref-or-empty-str tests
[assert] key is first element
[pass] expect: value, got: value
[assert] key not found
[pass] expect: , got:
[assert] key found - string value
[pass] expect: hello, got: hello
[assert] key found - non-string value
[pass] expect: 2, got: 2
[assert] empty alist
[pass] expect: , got:
[assert] key is last element
[pass] expect: value, got: value
[info] ran 2 tasks in: 1 seconds, -986361 microseconds
finished running tests
;;; note: source file ./src/kracht/prelude.scm
;;; newer than compiled /gnu/store/3hf3hs4cj4347gkhj7xr9vbpkc7hpp89-profile/lib/guile/3.0/site-ccache/kracht/prelude.go
;;; found fresh local cache at /root/.cache/guile/ccache/3.0-LE-8-4.7/etc/byggsteg/job-clone/kracht/trunk/src/kracht/prelude.scm.go
WARNING: (veritas unit prelude-spec): `log-info' imported from both (veritas veritas) and (kracht prelude)
WARNING: (veritas unit prelude-spec): `log-error' imported from both (veritas veritas) and (kracht prelude)
[1m[INFO][2025-08-29 09:24:43+0200] Start loading tasks from file: /etc/byggsteg/job-clone/kracht/trunk/maak.scm[0m
[1m[INFO][2025-08-29 09:24:43+0200] Start executing user tasks: (test)[0m
[1m[INFO][2025-08-29 09:24:43+0200] Start task: test
[0m
[1m[INFO][2025-08-29 09:24:43+0200] Calling procedure: test[0m
[1m[INFO][2025-08-29 09:24:43+0200] Run project's tests.[0m
-> running command: cd /etc/byggsteg/job-clone/kracht/trunk && sudo maak deploy
'doc/api/index.texi' is verwijderd
map 'doc/api' is verwijderd
map 'doc' is verwijderd
API documentation saved to doc/api
index.texi:58: @xref verwijst naar niet-bestaande pagina 'Processes'
Backtrace:
In ice-9/boot-9.scm:
1762:12 8 (with-exception-handler _ _ #:unwind? _ #:unwind-for-type _)
In unknown file:
7 (apply-smob/0 #<thunk 7f80448ba2a0>)
In ice-9/boot-9.scm:
731:2 6 (call-with-prompt _ _ #<procedure default-prompt-handler (k proc)>)
In ice-9/eval.scm:
619:8 5 (_ #(#(#<directory (guile-user) 7f80448bfc80>)))
In ice-9/command-line.scm:
186:19 4 (_ #<input: custom-port 7f80448a5380>)
In unknown file:
3 (eval ((@ (maak main) main)) #<directory (guile-user) 7f80448bfc80>)
In srfi/srfi-1.scm:
750:9 2 (for-each #<procedure run-task (task)> (deploy))
In /etc/byggsteg/job-clone/kracht/trunk/maak.scm:
52:2 1 (deploy)
In /gnu/store/v9p34kw2qsvzbqcnpz7gsha8jb3zfn7k-profile/share/guile/site/3.0/maak/maak.scm:
89:12 0 ($ _ #:verbose? _ #:join _)
/gnu/store/v9p34kw2qsvzbqcnpz7gsha8jb3zfn7k-profile/share/guile/site/3.0/maak/maak.scm:89:12: In procedure $:
Non-zero exit code when running!
Command: guix shell -m manifest.scm -- documenta api ./src/kracht && texi2any -v --html --css-ref=https://jointhefreeworld.org/static/css/jointhefreeworld.css ./doc/api/index.texi
Exit code: 1
[1m[INFO][2025-08-29 09:24:44+0200] Start loading tasks from file: /etc/byggsteg/job-clone/kracht/trunk/maak.scm[0m
[1m[INFO][2025-08-29 09:24:44+0200] Start executing user tasks: (deploy)[0m
[1m[INFO][2025-08-29 09:24:44+0200] Start task: deploy
[0m
[1m[INFO][2025-08-29 09:24:44+0200] Calling procedure: deploy[0m
[1m[INFO][2025-08-29 09:24:44+0200] Generate documentation for the project and publish to web directory.[0m