==> Building on aurorus ==> Checking for remote environment... ==> Syncing package to remote host... sending incremental file list ./ .SRCINFO 616 100% 0.00kB/s 0:00:00 616 100% 0.00kB/s 0:00:00 (xfr#1, to-chk=6/8) .nvchecker.toml 85 100% 83.01kB/s 0:00:00 85 100% 83.01kB/s 0:00:00 (xfr#2, to-chk=5/8) PKGBUILD 911 100% 889.65kB/s 0:00:00 911 100% 889.65kB/s 0:00:00 (xfr#3, to-chk=4/8) trurl-0.16.1-1.log 453 100% 442.38kB/s 0:00:00 453 100% 442.38kB/s 0:00:00 (xfr#4, to-chk=3/8) keys/ keys/pgp/ keys/pgp/27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2.asc 700 41% 683.59kB/s 0:00:00 1,680 100% 1.60MB/s 0:00:00 (xfr#5, to-chk=0/8) sent 1,619 bytes received 172 bytes 1,194.00 bytes/sec total size is 3,486 speedup is 1.95 ==> Ensuring required PGP keys are present...  -> Checking for 27EDEAF22F3ABCEB50DB9A125CC908FDB71E12C2... ==> Patching arch to riscv64... ==> Running pkgctl build --arch riscv64 on remote host... ==> WARNING: invalid architecture: riscv64 ==> Updating pacman database cache [?25l:: Synchronizing package databases... core downloading... extra downloading... multilib downloading... [?25h==> Building trurl  -> repo: extra  -> arch: riscv64  -> worker: felix-1 ==> Building trurl for [extra] (riscv64) ]3008;start=436f77bd2f1d4c8eaf23b2b7ce3dbcf5;user=root;hostname=aurorus.felixc.at;machineid=01ca1404c26b4b3a80152fb4f25f4ca7;bootid=cf91ff848a9a4b3197c9dfca4e49107e;pid=716099;comm=systemd-nspawn;container=arch-nspawn-716099;type=container\]11;?\]2;🔵 Container arch-nspawn-716099 on aurorus.felixc.at\[?25l:: Synchronizing package databases... core downloading... extra downloading... :: Starting full system upgrade... there is nothing to do [?25h[!p]104[?7h]3008;end=436f77bd2f1d4c8eaf23b2b7ce3dbcf5\==> Building in chroot for [extra] (riscv64)... ==> Synchronizing chroot copy [/var/lib/archbuild/extra-riscv64/root] -> [felix-1]...done ==> Making package: trurl 0.16.1-1 (Tue Jan 27 06:09:31 2026) ==> Retrieving sources...  -> Downloading trurl-0.16.1.tar.gz... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 100 64088 100 64088 0 0 32554 0 0:00:01 0:00:01 --:--:-- 176550  -> Downloading trurl-0.16.1.tar.gz.asc... % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- --:--:-- --:--:-- 0 0 0 0 0 0 0 0 0 --:--:-- 0:00:01 --:--:-- 0 100 488 100 488 0 0 283 0 0:00:01 0:00:01 --:--:-- 1426 ==> Validating source files with sha256sums... trurl-0.16.1.tar.gz ... Passed trurl-0.16.1.tar.gz.asc ... Skipped ==> Verifying source file signatures with gpg... trurl-0.16.1.tar.gz ... Passed ]3008;start=50ed9fa8e9b449329eaf31b46948dbdf;user=root;hostname=aurorus.felixc.at;machineid=01ca1404c26b4b3a80152fb4f25f4ca7;bootid=cf91ff848a9a4b3197c9dfca4e49107e;pid=717665;comm=systemd-nspawn;container=arch-nspawn-717665;type=container\]11;?\]2;🔵 Container arch-nspawn-717665 on aurorus.felixc.at\==> Making package: trurl 0.16.1-1 (Tue Jan 27 06:10:05 2026) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Installing missing dependencies... [?25lresolving dependencies... looking for conflicting packages... Package (5) New Version Net Change core/debuginfod 0.194-1 0.37 MiB core/libmicrohttpd 1.0.2-1 0.57 MiB core/mpdecimal 4.0.1-1 0.31 MiB core/python 3.14.2-2 132.78 MiB extra/valgrind 3.25.1-3 40.52 MiB Total Installed Size: 174.55 MiB :: Proceed with installation? [Y/n] checking keyring... checking package integrity... loading package files... checking for file conflicts... :: Processing package changes... installing mpdecimal... installing python... Optional dependencies for python python-setuptools: for building Python packages using tooling that is usually bundled with Python python-pip: for installing Python packages using tooling that is usually bundled with Python python-pipx: for installing Python software not packaged on Arch Linux sqlite: for a default database integration [installed] xz: for lzma [installed] tk: for tkinter installing libmicrohttpd... installing debuginfod... Optional dependencies for debuginfod elfutils=0.194: for translations installing valgrind... Optional dependencies for valgrind python: cg_* scripts [installed] :: Running post-transaction hooks... (1/2) Arming ConditionNeedsUpdate... (2/2) Updating the info directory file... [?25h==> Retrieving sources...  -> Found trurl-0.16.1.tar.gz  -> Found trurl-0.16.1.tar.gz.asc ==> WARNING: Skipping all source file integrity checks. ==> Extracting sources...  -> Extracting trurl-0.16.1.tar.gz with bsdtar ==> Starting build()... cc -march=rv64gc -mabi=lp64d -O2 -pipe -fno-plt -fexceptions -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=format-security -fstack-clash-protection -fno-omit-frame-pointer -g -ffile-prefix-map=/build/trurl/src=/usr/src/debug/trurl -flto=auto $(curl-config --cflags) -W -Wall -Wshadow -pedantic -Wconversion -Wmissing-prototypes -Wwrite-strings -Wsign-compare -Wno-sign-conversion -Werror -g -c -o trurl.o trurl.c cc -Wl,-O1 -Wl,--sort-common -Wl,--as-needed -Wl,-z,relro -Wl,-z,now -flto=auto trurl.o -o trurl $(curl-config --libs) ==> Starting check()... 49: failed --url https://curl.se/hello --set user=:hej: --- stdout --- expected: 'https://%3ahej%3a@curl.se/hello\n' got: 'https://%3Ahej%3A@curl.se/hello\n' --- stderr --- expected: '' got: '' --- returncode --- expected: 0 got: 0 128: failed -s 'path=\\' -g '{path}\n{:path}' localhost --- stdout --- expected: '/\\\\\n/%5c%5c\n' got: '/\\\\\n/%5C%5C\n' --- returncode --- expected: 0 got: 0 --- stderr --- expected: '' got: '' 129: failed -s 'path=\\' --json localhost --- stdout --- expected: [{'url': 'http://localhost/%5c%5c', 'parts': {'scheme': 'http', 'host': 'localhost', 'path': '/\\\\'}}] got: [{'url': 'http://localhost/%5C%5C', 'parts': {'scheme': 'http', 'host': 'localhost', 'path': '/\\\\'}}] --- returncode --- expected: 0 got: 0 --- stderr --- expected: '' got: '' 130: failed -s 'path=\\' -g '{path}\n{:path}' --urlencode localhost --- stdout --- expected: '/%5c%5c\n/%5c%5c\n' got: '/%5C%5C\n/%5C%5C\n' --- returncode --- expected: 0 got: 0 --- stderr --- expected: '' got: '' 131: failed -s 'path=abc\\' -s 'query:=a&b&a%26b' --urlencode --json localhost --- stdout --- expected: [{'url': 'http://localhost/abc%5c%5c?a&b&a%26b', 'parts': {'scheme': 'http', 'host': 'localhost', 'path': '/abc%5c%5c', 'query': 'a&b&a%26b'}, 'params': [{'key': 'a', 'value': ''}, {'key': 'b', 'value': ''}, {'key': 'a&b', 'value': ''}]}] got: [{'url': 'http://localhost/abc%5C%5C?a&b&a%26b', 'parts': {'scheme': 'http', 'host': 'localhost', 'path': '/abc%5C%5C', 'query': 'a&b&a%26b'}, 'params': [{'key': 'a', 'value': ''}, {'key': 'b', 'value': ''}, {'key': 'a&b', 'value': ''}]}] --- returncode --- expected: 0 got: 0 --- stderr --- expected: '' got: '' 1: passed example.com 2: passed http://example.com 3: passed https://example.com 4: passed hp://example.com 5: passed 6: passed ftp.example.com 7: passed https://example.com/../moo 8: passed https://example.com/.././moo 9: passed https://example.com/test/../moo 10: passed localhost --append path=moo 11: passed localhost -a path=moo 12: passed --set host=moo --set scheme=http 13: passed -shost=moo -sscheme=http 14: passed --set=host=moo --set=scheme=http 15: passed -s host=moo -s scheme=http 16: passed --set host=moo --set scheme=https --set port=999 17: passed --set host=moo --set scheme=ftps --set path=/hello 18: passed --url https://curl.se --set host=example.com 19: passed --set host=example.com --set scheme=ftp 20: passed --url https://curl.se/we/are.html --redirect here.html 21: passed --url https://curl.se/we/../are.html --set port=8080 22: passed imap://curl.se:22/ -s port=143 23: passed --keep-port https://curl.se:22/ -s port=443 24: passed --keep-port https://curl.se:22/ -s port=443 --get '{url}' 25: passed --url https://curl.se/we/are.html --get '{path}' 26: passed --url https://curl.se/we/are.html '-g{path}' 27: passed --default-port --url imap://curl.se/we/are.html --get '{port}' 28: passed --url https://curl.se/we/are.html --get '{scheme}' 29: passed --url https://curl.se/we/are.html --get '{:scheme}' 30: passed --url https://curl.se:55/we/are.html --get '{url:port}' 31: passed --url https://curl.se/%2e%61%13 --get '{:path}' 32: passed --url 'https://curl.se?%2e%61%13' --get '{:query}' 33: passed --url 'https://curl.se/#%2e%61%13' --get '{:fragment}' 34: passed --url 'https://example.com/#%2e%61%13%Fa' 35: passed --url https://hello@curl.se/we/are.html --get '{user}' 36: passed --url https://hello:secret@curl.se/we/are.html --get '{password}' 37: passed --url 'imap://hello:secret;crazy@curl.se/we/are.html' --get '{options}' 38: passed --url https://curl.se/we/are.html --get '{host}' 39: passed --url https://10.1/we/are.html --get '{host}' 40: passed --url 'https://[fe80::0000:20c:29ff:fe9c:409b]:8080/we/are.html' --get '{host}' 41: passed --url 'https://[fe80::0000:20c:29ff:fe9c:409b%euth0]:8080/we/are.html' --get '{zoneid}' 42: passed --url 'https://[fe80::0000:20c:29ff:fe9c:409b%eth0]:8080/we/are.html' --get '{zoneid}' 43: passed --url 'https://curl.se/we/are.html?user=many#more' --get '{query}' 44: passed --url 'https://curl.se/we/are.html?user=many#more' --get '{fragment}' 45: passed --url imap://curl.se/we/are.html -g '{default:port}' 46: passed --url https://curl.se/hello --append path=you 47: passed --url https://curl.se/hello --append 'path=you index.html' 48: passed --url 'https://curl.se?name=hello' --append query=search=string 50: passed --url https://curl.se/hello --set user=hej --set password=secret 51: passed --url https://curl.se/hello --set query:=user=me 52: passed --url https://curl.se/hello --set query=user=me 53: passed --url https://curl.se/hello --set 'fragment= hello' 54: passed --url https://curl.se/hello --set fragment:=%20hello 55: passed localhost --append query=hello=foo 56: passed localhost -a query=hello=foo 57: passed 'https://example.com?search=hello&utm_source=tracker' --trim 'query=utm_*' 58: passed 'https://example.com?search=hello&utm_source=tracker' --qtrim 'utm_*' 59: passed 'https://example.com?search=hello&utm_source=tracker&more=data' --trim 'query=utm_*' 60: passed 'https://example.com?search=hello&utm_source=tracker&more=data' --qtrim 'utm_*' 61: passed 'https://example.com?search=hello&more=data' --qtrim 'utm_*' 62: passed 'https://example.com?utm_source=tracker' --trim 'query=utm_*' 63: passed 'https://example.com?search=hello&utm_source=tracker&more=data' --qtrim utm_source 64: passed 'https://example.com?search=hello&utm_source=tracker&more=data' --qtrim utm_source --qtrim more --qtrim search 65: passed --accept-space --url 'gopher://localhost/ with space' 66: passed --accept-space --url 'https://localhost/?with space' 67: passed https://daniel@curl.se:22/ -s port= -s user= 68: passed 'https://example.com?moo&search=hello' --qtrim search 69: passed 'https://example.com?search=hello&moo' --qtrim search 70: passed 'https://example.com?search=hello' --qtrim search --append query=moo 71: passed --keep-port https://hello:443/foo 72: passed --keep-port ftp://hello:21/foo 73: passed https://hello:443/foo -s scheme=ftp 74: passed --keep-port ftp://hello:443/foo -s scheme=https 75: passed 'https://example.com?utm_source=tra%20cker&address%20=home&here=now&thisthen' -g '{query:utm_source}' 76: passed 'https://example.com?utm_source=tra%20cker&address%20=home&here=now&thisthen' -g '{:query:utm_source}' 77: passed 'https://example.com?utm_source=tra%20cker&address%20=home&here=now&thisthen' -g '{:query:utm_}' 78: passed 'https://example.com?utm_source=tra%20cker&address%20=home&here=now&thisthen' -g '{:query:UTM_SOURCE}' 79: passed 'https://example.com?utm_source=tracker&monkey=123' --sort-query 80: passed 'https://example.com?a=b&c=d&' --sort-query 81: passed 'https://example.com?a=b&c=d&' --sort-query --trim query=a 82: passed example.com:29 --set port= 83: passed --url HTTPS://example.com 84: passed --url https://EXAMPLE.com 85: passed --url https://example.com/FOO/BAR 86: passed --url '[2001:0db8:0000:0000:0000:ff00:0042:8329]' 87: passed 'https://example.com?utm=tra%20cker:address%20=home:here=now:thisthen' --sort-query --query-separator : 88: passed 'foo?a=bCd=eCe=f' --query-separator C --trim query=d 89: passed localhost -g '{scheme} {host' 90: passed localhost -g '[scheme] [host' 91: passed localhost -g '\{{scheme}\[' 92: passed localhost -g '\\[' 93: passed 'https://u:s@foo?moo' -g '[scheme][user][password][query]' 94: passed 'hej?a=b&a=c&a=d&b=a' -g '{query-all:a}' 95: passed 'https://curl.se?name=mr%00smith' --get '{query:name}' 96: passed --keep-port https://curl.se --iterate 'port=80 81 443' 97: passed https://curl.se --iterate 'port=81 443' --iterate 'scheme=sftp moo' 98: passed https://curl.se --iterate 'port=81 443' --iterate 'scheme=sftp moo' --iterate 'port=2 1' 99: passed https://curl.se -s host=localhost --iterate 'port=22 23' 100: passed hello@localhost --iterate 'host=one two' -g '{host} {user}' 101: passed 'https://example.com?utm=tra%20cker&address%20=home&here=now&thisthen' --json 102: passed 'ftp://smith:secret@example.com:33/path?search=me#where' --json 103: passed example.com --json 104: passed example.com other.com --json 105: passed localhost --iterate 'host=one two' --json 106: passed --json -s scheme=irc -s host=curl.se 107: passed --json -s host=curl.se 108: passed --verify --json ftp://example.org '' git://curl.se/ 109: passed -s scheme=imap 110: passed -g '{query:}' 'http://localhost/?=bar' 111: passed --json 'https://curl.se/?&&&' 112: passed --json --trim 'query=f*' 'localhost?foo&bar=ar' 113: passed 'https://example.com?search=hello&utm_source=tracker&utm_block&testing' --trim 'query=utm_*' --json 114: passed 'https://räksmörgås.se' -g '{default:puny:url}' 115: passed 'https://räksmörgås.se' -g '{puny:url}' 116: passed 'https://räksmörgås.se' -g '{puny:host}' 117: passed 'imap://user:password;crazy@[ff00::1234%hello]:1234/path?a=b&c=d#fragment' --json 118: passed imap://example.com/ --get 'port: {port}, default:port: {default:port}' 119: passed http://example.com:8080/ --get 'port: {port}, default:port: {default:port}' 120: passed localhost -s host=foo --iterate 'host=bar baz' 121: passed emanuele6://curl.se/trurl '' https://example.org 122: passed --verify --no-guess-scheme hello 123: passed --verify -f testfiles/test0000.txt 124: passed -f testfiles/test0001.txt 125: passed --no-guess-scheme foo hi https://example.org hey git://curl.se 126: passed -f testfiles/test0002.txt --json 127: passed --accept-space -s 'query:=x=10&x=2 3' localhost 132: passed -s scheme:=http -s host:=localhost -s path:=/ABC%5C%5C -s 'query:=a&b&a%26b' 133: passed -g '{query:b}\t{query-all:a}\n{:query:b}\t{:query-all:a}' 'https://example.org/foo?a=1&b=%23&a=%26#hello' 134: passed --urlencode -g '{query:b}\t{query-all:a}\n{:query:b}\t{:query-all:a}' 'https://example.org/foo?a=1&b=%23&a=%26#hello' 135: passed -a query=c=moo --sort-query 'https://example.org/foo?x=hi#rye' 136: passed --qtrim a -a query=a=ciao -a query=b=salve 'https://example.org/foo?a=hi&b=hello&x=y' 137: passed 'http://example.com/?q=mr%00smith' --json --urlencode 138: passed 'http://example.com/?q=mr%00sm%00ith' --json --urlencode 139: passed 'http://example.com/?q=mr%00%00%00smith' --json --urlencode 140: passed --url 'https://curl.se/we/are.html?*=moo&user=many#more' --qtrim '\*' 141: passed --url http://xn--rksmrgs-5wao1o/ --as-idn 142: passed --url http://xn--rksmrgs-5wao1o/ -g '{idn:host}' 143: passed --url http://xn-----/ --as-idn --quiet 144: passed --url http://xn-----/ --as-idn 145: passed --verify -f testfiles/test0000.txt --quiet 146: passed --curl --verify foo://bar 147: passed 'http://test.org/?key=val' --replace key=foo 148: passed 'http://test.org/?that=thing&key=val' --replace key=foo 149: passed 'http://test.org/?that=thing&key' --replace key=foo 150: passed 'http://test.org/?that=thing&key=foo' --replace key 151: passed 'https://example.com?a=123&b=321&b=987' --replace b=foo 152: passed 'example.org/?quest=best' --replace quest=%00 --json --urlencode 153: passed example.com --replace 154: passed 'http://test.org/?that=thing' --force-replace key=foo 155: passed 'http://test.org/?that=thing' --replace-append key=foo 156: passed '0?00%000000000000000000000=0000000000' 157: passed --json '0?0%000000000000000000000000000000000' --urlencode 158: passed --json '0?0%000000000000000000000000000000000=000%0000000000' --urlencode 159: passed example.com --set 'host=[::1]' 160: passed example.com:88 --set 'port?=99' 161: passed example.com --set 'port?=99' 162: passed example.com --append query=add --iterate 'scheme=http ftp' 163: passed example.com --append path=add --iterate 'scheme=http ftp' 164: passed example.com --append path=add --append path=two 165: passed 'https://curl.se?name=mr%00smith' --get '{query}' 166: passed 'https://curl.se?name=mr%00smith' --get '{strict:query}' 167: passed example.com --set 'scheme?=https' 168: passed ftp://example.com --set 'scheme?=https' 169: passed http://example.org/%18 --json 170: passed http://example.org/%18 --json --urlencode 171: passed https://example.com/one/t%61o/%2F%42/ 172: passed https://example.com/one/t%61o/%2F%42/ --append path=%61 173: passed 'https://ex%61mple.com/h%61s/?wh%61t' 174: passed https://example.com/ --get '{must:query}' 175: passed 'https://example.com/?' --get '{must:query}' 176: passed https://example.com/ --get '{must:fragment}' 177: passed http://example.org/%18 --get '{path}' 178: passed 'http://example.org/?a=&b=1' 179: passed 'http://example.org/?a=1&b=' 180: passed 'http://example.org/?a=1&b=&c=2' 181: passed 'http://example.org/?a=1&b=&c=2' --json 182: passed 'http://example.org/?=1&b=2&c=&=3' 183: passed 'http://example.com/?a=%5D' 184: passed 'http://example.com/?a=%5D&b=%5D' 185: passed 'sftp://us%65r:pwd;giraffe@odd' 186: passed 'imap://us%65r:pwd;gir%41ffe@odd' 187: passed 'sftp://us%65r:pwd;giraffe@odd' --get '[password]' 188: passed 'sftp://us%65r:pwd;giraffe@odd' --get '[:password]' 189: passed --url 'http://åäö/' --punycode -s port=21 190: passed sftp://odd --set port=144 --set port=145 191: passed sftp://odd --get '[port]' --get '{port}' 192: passed url -f testfiles/test0000.txt -f testfiles/test0000.txt 193: passed --url 194: passed url --set 195: passed url --redirect 196: passed url --get 197: passed url --replace 198: passed url --replace-append 199: passed url --append 200: passed url --query-separator ''"'"''"'"'' 201: passed url --query-separator aa 202: passed url --json --get '{port}' 203: passed url --get '{port}' --json 204: passed 'e?e&&' 205: passed 'e?e&' 206: passed 'e?e&&&&&&&&&&&&&&&&&&&&&' 207: passed 'e?e&&&&&&&&&&a&&&&&&&&&&&' Finished: Failed! - Failed: 5, Passed: 202, Skipped: 0, Total: 207 make: *** [Makefile:76: test] Error 1 ==> ERROR: A failure occurred in check().  Aborting... [!p]104[?7h]3008;end=50ed9fa8e9b449329eaf31b46948dbdf\==> ERROR: Build failed, check /var/lib/archbuild/extra-riscv64/felix-1/build [?25h[?25h[?25hreceiving incremental file list trurl-0.16.1-1-riscv64-build.log trurl-0.16.1-1-riscv64-check.log sent 62 bytes received 3,775 bytes 1,534.80 bytes/sec total size is 14,423 speedup is 3.76