Do you know roughly how much test coverage ble.sh has? That is, is it closer to 10%, 50%, or 80%?
There are (almost) no tests for ble.sh. My feeling is that only 5-10% is covered by the tests for the vim mode but I'm not sure actually.
I imagine you spend a lot of time debugging so I'd be interested in feedback (or patches) on devtools features.
The most time consuming part is to find the way to reproduce the buggy behavior. When I encounter some strange behavior in interactive session, sometimes the behavior cannot be easily reproduced. But I don't know what is the good way to deal with such problems.
The second time consuming part is to identify the bottleneck. Shell scripts are generally slow so it is very important to find the bottleneck for optimization of the scripts. I want the feature of profiling, i.e., measure the time of each function. I sometimes try to measure the time by embedding some codes in shell scripts, but the measuring logic itself consumes the time so that it is hard to measure the actual time. We need some native mechanism (i.e., not shell scripts) for profiling.
Another annoying thing in debugging interactive sessions is that the error messages from Bash and the output of ble.sh are both output to the terminal, so they overwrite each other. So I need to redirect the error messages or debugging messages to a file or a different TTY.
Also if one can set some breaking points, it will be useful for debugging the scripts.
Edit: Also, a native support for coverage measurement is useful. For example, coverage analysis using the output of set -x is tricky and not so reliable.
Originally posted by @akinomyoga in #653 (comment)
There are (almost) no tests for
ble.sh. My feeling is that only 5-10% is covered by the tests for the vim mode but I'm not sure actually.The most time consuming part is to find the way to reproduce the buggy behavior. When I encounter some strange behavior in interactive session, sometimes the behavior cannot be easily reproduced. But I don't know what is the good way to deal with such problems.
The second time consuming part is to identify the bottleneck. Shell scripts are generally slow so it is very important to find the bottleneck for optimization of the scripts. I want the feature of profiling, i.e., measure the time of each function. I sometimes try to measure the time by embedding some codes in shell scripts, but the measuring logic itself consumes the time so that it is hard to measure the actual time. We need some native mechanism (i.e., not shell scripts) for profiling.
Another annoying thing in debugging interactive sessions is that the error messages from Bash and the output of
ble.share both output to the terminal, so they overwrite each other. So I need to redirect the error messages or debugging messages to a file or a different TTY.Also if one can set some breaking points, it will be useful for debugging the scripts.
Edit: Also, a native support for coverage measurement is useful. For example, coverage analysis using the output of
set -xis tricky and not so reliable.Originally posted by @akinomyoga in #653 (comment)