Appreciation #90
grayswandyr
started this conversation in
General
Replies: 1 comment
|
Please use the latest head, opam update is very long overdue. Hopefully soon! |
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Hi,
my colleagues and myself are currently developing a research prototype and we have started using ppx_minidebug, a little bit in v2 and even more in v3. Thanks for the good work! For years, we have mainly relied upon debug-printing statements. Ppx_minidebug saves us a lot of time since deciding to print some logging data is so easy, in particular with
debug_sexp.We were able to find some bugs quite quickly this way and we almost don't use debug-printing anymore. We still have one use of debug printing, namely printing messages our tool sends to external tools, as it still seems a bit easier to get a complete trace of sent messages (using
[%log]here is still nice and we can almost get the same result withminidebug_view showandgrep). For instance, we can debug-print a trace such as:With ppx_minidebug, we rather do:
The former printing is a bit more readable and asks for less shell wizardry (if we need to do more sophisticated greps/seds), which is useful in this specific use case. But not a big deal.
Another issue we had was with functions returning an option. They didn't print anything if they returned None, due to the default option sexp-printer. This was surprising at first. (Btw, sexplib0 doesn't contain sexp-converters for some types in the OCaml 5.3 stdlib, which is not related to ppx_minidebug per se but has an impact on its use)
We also don't understand everything in the way minidebug_view shows a trace. It sometimes seems the nesting is not right. Also, it's a bit too verbose with '[debug]' and '[value]' strings everywhere and times that are shown by default. We tried to change the configuration of the reporter but we may have misunderstood the documentation because times are still shown in spite of our efforts. Not sure of the effect of scope ids options either. This is what we use:
Also, we often recompile our tool and a change-detection mechanism would be nice in minidebug_view, to propose a refresh of what's displayed.
Finally, we have a recurring bug seemingly related to Notty:
All in all, we don't have big issues and minidebug really helps us a lot, so keep up the good work!
All reactions