feat: Show close reason after disconnect & close gracefully #16
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Depends on #15
(I need new iroh APIs.)
Description
Shows a close reason when the connection closes. E.g:
This error message indicates that it's an intentional closing of the connection.
Otherwise it's something like:
This makes it easier to identify how the connection was lost.
Notes & open questions
Additionally, we ideally know if we closed the connection or if that was our peer. That info would be nice (but it's not as clear-cut, technically both could have closed the connection).
Also - using different error codes might be nice, but
Endpoint::close
doesn't support that yet. I'd like to at least separate a close from Ctrl+C with a close from e.g. a panic/Err.Change checklist
[ ] Documentation updates following the style guide, if relevant.[ ] Tests if relevant.