Week 14 Review

TedLawson
Published: 09/05/2023

Accomplishments:

This week, I worked with my mentor and other project contributors to finalize a design for the profile sidebar. Additionally, I identified 3 bugs while testing Vorta this week. For each bug I discovered, I filed a bug report outlining the issue which included a brief description, a video screen capture of the bug, steps to reproduce, as well as relevant environment variables and log outputs. I also created PR's for each of these bugs that address the issues discovered and corrects them. Here are the bugs I discovered while testing, and the PR's I created to address them:

1. The archive tab has buttons for "mount" "delete" "rename" etc, and when background actions are occurring these buttons get disabled. These actions are also available in a context menu when a user right-clicks on an archive. I discovered that the archive buttons and the context menu buttons are not disabled in sync, meaning that sometimes actions are left available in the context menu when they should be disabled due to a background operation in progress. This could lead to issues such as operations being queued for archives that have since been modified or deleted, and causes failures. To address this, I bound the toggle state of the archive tab buttons to those of the context menu buttons, such that they will always be enabled or disabled in sync. This PR can be found here: https://github.com/borgbase/vorta/pull/1793

2. Similar to the previous issue, I found that the new "in-line rename" feature is left available even during a background operation. If a user renamed an archive during a background operation, it leads to visual bugs where, in some cases, all archives get deleted. In other cases, all archives get renamed to the newly entered name. To address this issue, I added a check in the method that handles the in-line renaming to only function when the rename button is enabled. This adds consistency to the rename behavior, and avoids the visual bugs that could be caused. My PR for this issue can be found here: https://github.com/borgbase/vorta/pull/1791

3. One final issue I discovered while testing had to do with the SSH Key combobox. I was testing the "add ssh key" feature when I discovered newly added keys were not populating in the box until after Vorta restarts. I found this had to do with the 'add ssh key' dialogue box not closing when the user clicks 'generate'. Instead, the box stays open to inform the user the key has been generated, and then the user has to click 'cancel' to close the box. To fix this issue, and make the behavior similar to other interactions with the SSH options, I added functionality that lets the 'add ssh key' box close after the user generates a new key, and displays the success or failure text in a message box, similar to success and failure message when the user copied ssh keys to clip board. This PR can be found here: https://github.com/borgbase/vorta/pull/1802

Challenges:

This week I faced interface design challenges. Having spent most of my time in the test suite, I am less familiar with how to implement UI changes that integrate well with the rest of the application. YF-projects had good advice for me: 

1. Recognizable patterns repeated throughout the application usually improve the UX

2. Try to avoid cluttering the inference 

His advice helped me decide how to order the buttons/context menu actions in the archive tab. He and Manu also offered advice on the profile sidebar, and we now have a good idea of what it will look like such that I can get started on that project.

The week ahead:

This week I am going to focus my time on the profile sidebar project. My goal is to get the profile sidebar GUI elements created, and the old sidebar elements removed. From there, I will begin working on adding functionality to the elements.

DJDT

Versions

Time

Settings from gsoc.settings

Headers

Request

SQL queries from 1 connection

Static files (2312 found, 3 used)

Templates (11 rendered)

Cache calls from 1 backend

Signals

Log messages