[Toybox] Tracked down the microsoft github test failures du jour.

Rob Landley rob at landley.net
Tue Jul 25 09:56:54 PDT 2023


They changed the filesystem to something that doesn't track sparse files at 4k
page granularity, so the tar tests are failing. I need to change the "breaks on
macos" test to a "breaks on filesystems that don't track sparse files" test.

Also, various things are producing "EOF detected" error messages in pipelines,
which they weren't for me on my laptop but eh? I squelched it in bzcat, but
there's also a "broken pipe" from "yes", and now I'm wondering if there should
maybe be something more systemic? (To clarify: these are spurious messages to
stderr, the tests still passed because they weren't run with -o PIPEFAIL.)

In general, unexpected EOF on stdout probably isn't a reportable error. It's
"exit with nonzero" error, but not "produce an error message" error? The problem
is, "on stdout" isn't really easy to detect in the reporting plumbing. I'm
pondering just having perror_msg() set toys.exitval but not output the message
when the error is "broken pipe"?

Not sure what the best fix is here...

Rob

P.S. The "no such file or directory" output in pwd from diff is due to cd ..
traversing differently than cd -P .. and is easy enough to fix, but I don't want
to rely on the test NOT having changed directory? I mean, it can if it wants to,
it should reset back properly, so I want to do a better fix than that. Also,
diff should capture stderr so that counts as a failure, albeit of the
should-never-happen variety...


More information about the Toybox mailing list