Closed
Description
At the moment we send progress start messages as soon as we can, and updates whenever we get them.
This means that:
- We send progress messages even for extremely short-lived operations
- We send very frequent progress updates in some cases
We could potentially handle this generically: only send progress messages after a fixed interval has passed (should be configurable). In particular, if the operation terminates before we hit the first interval, we could send nothing.
This would let people declare most handlers to support progress and automatically get nice behaviour where progress is shown only if it takes a noticeable amount of time.