Improve UX for memray attach and detach commands #841
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.
Users reported confusion when using memray attach with the --duration flag
because the command would exit immediately without any indication that
tracking had started successfully or was still running. This made it
difficult to know if the attach operation worked, and if interrupted,
there was no clear feedback about what would happen to the background
tracking.
Additionally, users would waste time going through the entire attach
process only to discover at the end that their output file already existed,
requiring them to restart with the --force flag.
This change addresses these issues by checking the output file existence
upfront before any injection work begins, and by showing detailed progress
through each phase of the attach and detach operations. Users can now see
exactly which step is in progress, making it easier to diagnose slow or
stuck operations.
For users who want the command to wait until tracking completes, a new
--wait flag is provided that displays a live progress bar showing time
elapsed and remaining. This makes the behavior more predictable while
maintaining backward compatibility for users who expect the command to
return immediately.
Fixes #831
Fixes #701
Issue number of the reported bug or feature request: #
Describe your changes
A clear and concise description of the changes you have made.
Testing performed
Describe the testing you have performed to ensure that the bug has been addressed, or that the new feature works as planned.
Additional context
Add any other context about your contribution here.