<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Wed, Nov 30, 2022 at 2:56 PM Rob Landley <<a href="mailto:rob@landley.net">rob@landley.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><br>
<br>
On 11/30/22 15:59, enh wrote:<br>
> <br>
> <br>
> On Wed, Nov 30, 2022 at 1:54 PM Rob Landley <<a href="mailto:rob@landley.net" target="_blank">rob@landley.net</a><br>
> <mailto:<a href="mailto:rob@landley.net" target="_blank">rob@landley.net</a>>> wrote:<br>
> <br>
>     On 11/28/22 12:41, enh via Toybox wrote:<br>
>     > github CI caught a few failures<br>
> <br>
>     Sigh. There's a reason this has been on the todo list for literally years. It's<br>
>     corner cases all the way down and I don't have a mac test environment. (Works on<br>
>     linux not on mac means a libc function is returning something different,<br>
>     possibly because a syscall did, possibly because the VFS did something funky...)<br>
> <br>
>     > (<a href="https://github.com/landley/toybox/actions/runs/3561813808/jobs/5983047254" rel="noreferrer" target="_blank">https://github.com/landley/toybox/actions/runs/3561813808/jobs/5983047254</a><br>
>     <<a href="https://github.com/landley/toybox/actions/runs/3561813808/jobs/5983047254" rel="noreferrer" target="_blank">https://github.com/landley/toybox/actions/runs/3561813808/jobs/5983047254</a>>):<br>
>     ><br>
>     > PASS: realpath -s<br>
>     > ............................................................................<br>
>     > ................................................<br>
>     > realpath: dos/three: Not a directory<br>
> <br>
>     Not a directory? Up top we did:<br>
> <br>
>       mkdir -p one/two/three<br>
>       ln -s ./one uno<br>
>       ln -s one/two dos<br>
> <br>
>     I don't THINK anything's done a cd or filesystem write since then?<br>
>     (one/two/three is a directory and dos points to "one/two"...)<br>
> <br>
>     > FAIL: realpath -s link/..<br>
>     > echo -ne '' |<br>
>     "/Users/runner/work/toybox/toybox/generated/testdir/realpath" -es<br>
>     > dos/three<br>
>     > --- expected 2022-11-28 04:54:16.000000000 +0000<br>
>     > +++ actual 2022-11-28 04:54:16.000000000 +0000<br>
>     > @@ -1 +0,0 @@<br>
>     > -/Users/runner/work/toybox/toybox/generated/testdir/testdir/dos/three<br>
> <br>
>     Debris from that failure...<br>
> <br>
>     > PASS: realpath -s .. eats symlink<br>
>     > PASS: realpath -s .. eats symlink in $PWD<br>
> <br>
>     Neither of those actually looks at the filesystem because -s (don't expand<br>
>     symlinks) so there's potentially a getcwd() prepend then the .. cancellation is<br>
>     entirely string based...<br>
> <br>
>     > FAIL: realpath -es dangling symlink<br>
>     > echo -ne '' |<br>
>     "/Users/runner/work/toybox/toybox/generated/testdir/realpath" -es<br>
>     > dangling 2>/dev/null || echo ok<br>
>     > --- expected 2022-11-28 04:54:16.000000000 +0000<br>
>     > +++ actual 2022-11-28 04:54:16.000000000 +0000<br>
>     > @@ -1 +1 @@<br>
>     > -ok<br>
>     > +/Users/runner/work/toybox/toybox/generated/testdir/testdir/dangling<br>
> <br>
>     Adding -e however checks if the result exists. And the failure here is it<br>
>     SHOULDN'T, but MacOS thinks it DOES. (How do you even...?)<br>
> <br>
>     > PASS: realpath -ms<br>
>     > realpath: one/two/ichi/two/ichi/two: Not a directory<br>
> <br>
>     Our old friend again...<br>
> <br>
>     > FAIL: realpath -es<br>
>     > echo -ne '' |<br>
>     "/Users/runner/work/toybox/toybox/generated/testdir/realpath" -es<br>
>     > one/two/ichi/two/ichi/two<br>
>     > --- expected 2022-11-28 04:54:16.000000000 +0000<br>
>     > +++ actual 2022-11-28 04:54:17.000000000 +0000<br>
>     > @@ -1 +0,0 @@<br>
>     ><br>
>     -/Users/runner/work/toybox/toybox/generated/testdir/testdir/one/two/ichi/two/ichi/two<br>
> <br>
>     Sigh. If I stick printfs into a commit and push to a branch it'll _sometimes_<br>
>     run the tests on the new commit based on github server load, correct?<br>
> <br>
> <br>
> yeah, if it doesn't fire, let me know and i'll run it locally. my latency's poor<br>
> too, but unlike github i'm not one-shot, and will get to it when things are<br>
> quiet again :-)<br>
<br>
Oh no, I can cheat. I can add a period to the README or something and commit on<br>
top of the branch and it'll re-evaluate and should eventually run.<br>
<br>
It's just a pain, and my laptop battery's at 19%...<br>
<br>
>     Lemme finish fixing cp -s first (I.E. the rest of my relative path untangling<br>
>     todo item)...<br>
> <br>
> yeah, no hurry, just explaining in advance why i'm not looking at a<br>
> post-thanksgiving update yet :-)<br>
<br>
I have a half-dozen things ALMOST ready to check in. They're just all fiddly<br>
ones that have accumulated (or I would have checked them in already)...<br></blockquote><div><br></div><div>oh, while we're here, you mentioned "diff is load-bearing" on your blog, but that's not true for _Android_ at least. we haven't been able to switch over yet.</div><div><br></div><div>also, don't waste brain power on worry about passwd on Android ... the _format_ might look familiar, but it's really used for other things (similar to how groups are weird on Android) so no-one's going to be able to use those commands for anything reasonable anyway. i wouldn't worry about anything but debian and friends if i were you!</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
They're all doing the Xeno's implementation thing...<br>
<br>
Rob<br>
</blockquote></div></div>