I’m trying to do the Acronym exercise for unison. I’ve got release/M4i locally, and the tests and everything pass. But when I push up, all I get is that the Iteration failed, but nothing about tests.
If I open the exact same file in the website editor, it passes and is fine. Am I missing something?
It’s possible a test runner times out. You could try making a tiny change and rerunning the code. Or it could be something else. It would be helpful to see the exact code and exact error (please use codeblocks ``` and not images) in order to make a more educated guess.
I think it might be that it is timing out. The tests do take a while to run locally.
The weird part is that if I run the tests from the website editor, they pass in time.
Code:
splitter : Char -> Boolean
splitter c =
Boolean.or (Char.ascii.isLetter c) (c Char.== ?')
acronym.abbreviate : Text -> Text
acronym.abbreviate test =
test
|> Text.segmentBy splitter
|> List.map (t -> Text.take 1 t)
|> Text.join ""
|> Text.toUppercase
Nothing too complex. Unless I am misunderstanding some performance implications of unison (highly likely)
Hi @rhuarc! Unison track maintainer here! I did a quick repro test, taking your code and submitting via the CLI. Your code passes through both local testing and shows as passing on the exercism platform. So it’s a bit of a mystery as to why it failed for you . It may be a timeout related issue, as I know that was happening for a few tracks a while back. Sometimes to debug I’ll delete the iteration and re-submit the code again. If there’s a continued failure in the track runner when submitting via the CLI vs through the web, I’d be interested in hearing about it and further debugging with you.
Update: Yeah, something weird is definitely happening and I think it’s Unison-specific.
We’re getting both the test results back but ALSO a timeout. So it looks like the process is working in terms of running the tests, but that the process isn’t exiting cleanly (or instantly). So we kill the machine after ~15s and return an error, but the data has already been written out at that stage, so we persist it.
This seems to happen both in passing and failing cases.
@rlmark Let me know if there’s anything else I can do to help debug.
Oh that is interesting, I’m also reproducing some intermittent failures via the CLI. I’ve taken a passing code sample and submitted via the CLI with some succeeding and some failing. I’ll work with @iHiD on getting some logs!
Thanks for your patience on this @rhuarc, Unison has some interesting features in that the nature of the code is that it’s not “text-based”, so we’ve got an additional little hop to do when ingesting submissions! Hopefully you’ll be able to submit via some combo of the web interface and CLI!