Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

show pending status right after deletion job enqueued #955

Merged
merged 1 commit into from Mar 19, 2020
Merged

Conversation

sssoleileraaa
Copy link
Contributor

@sssoleileraaa sssoleileraaa commented Mar 19, 2020

Description

Fixes #951

Checklist

If these changes modify code paths involving cryptography, the opening of files in VMs or network (via the RPC service) traffic, Qubes testing in the staging environment is required. For fine tuning of the graphical user interface, testing in any environment in Qubes is required. Please check as applicable:

  • I have tested these changes in the appropriate Qubes environment
  • I do not have an appropriate Qubes OS workstation set up (the reviewer will need to test these changes)
  • These changes should not need testing in Qubes

@redshiftzero
Copy link
Contributor

nice, this does resolve #951 - can you elaborate on how it resolves #929?

@eloquence eloquence moved this from In Development to Under Review in SecureDrop Team Board Mar 19, 2020
@sssoleileraaa
Copy link
Contributor Author

I was just unable to repro #929 after many attempts. Not the best strategy but thinking about it more, I think what was happening was that the "Select a source screen" would appear after we removed the source item from the source list before we got to delete_conversation which deletes the conversation wrapper with the "Deleting" text. Not sure why I don't see this anymore so we can keep it open. Have you been able to repro?

@redshiftzero
Copy link
Contributor

I was not able to repro on master (see #929 (comment)) but we should ensure regardless of being able to reproduce that it's not possible for both views to display at the same time (by inspecting the logic is fine). I'll copy your comment there and then we can figure out in that issue if this is indeed resolved.

@@ -761,7 +761,7 @@ def on_delete_source_success(self, source_uuid: str) -> None:
"""
Rely on sync to delete the source locally so we know for sure it was deleted
"""
self.source_deleted.emit(source_uuid)
pass

def on_delete_source_failure(self, e: Exception) -> None:
if not isinstance(e, (RequestTimeoutError, ServerConnectionError)):
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I just realized that here in the source deletion failure callback we should really be setting the source widget back to its non-pending state (since the job won't get added back to the queue, and so is not pending), this can be another ticket since this is an issue on master. Since it's a rare/unexpected case I don't consider it a release blocker, but still, worth resolving.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

ah, yes, if the deletion fails due to an error other than a timeout then we should set it back to non-pending. good find!

@redshiftzero redshiftzero merged commit 4020c51 into master Mar 19, 2020
SecureDrop Team Board automation moved this from Under Review to Done Mar 19, 2020
@redshiftzero redshiftzero deleted the fix-951 branch March 19, 2020 23:51
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
No open projects
Development

Successfully merging this pull request may close these issues.

pending status begins showing after the deletion completes
2 participants