Open dfellis opened 2 months ago
I think this may be why the tests are failing. It's setting up a build directory that is not the CWD, while the files are using relative paths. I need to see how to get the directory they're actually being put in vs where make test
is getting invoked.
Still something funky with Windows. I'll need to dust off my VM.
Hmm... There was another error that I didn't notice before. https://github.com/uber/h3/actions/runs/9521371842/job/26248637576?pr=846#step:7:301
Let me see if I can figure that out.
So that last failure was legit, and was a copy-paste error when I set up arg parsing in one of the new subcommands.
I have no idea what black magic the GNU libc is doing under the hood to get that casting to work "correctly" on Linux.
This adds all of the hierarchical subcommands. Everything was easy until I reached
compactCells
anduncompactCells
.I am not happy with the way the flexible parser ended up in a soup of looping constructs, but I couldn't figure out any way that wasn't worse in some ways (eg, using
goto
and labels). I also couldn't figure out how handle a completely undelimited input file without copying the characters to a temporary string since you can have more than 15 hex characters in a 64-bit integer, so it would want to slurp up follow-on characters. We can simplify a bit if you think an undelimited deluge of hex characters is not a reasonable input format we should handle.I also didn't DRY the huge similarities between the two functions. I am willing to do that, but only after we agree on how the string parsing logic should look like.