[Deja-dup-hackers] Weekly report (May 31 - June 6), suggestions



First week and previous week I sent report only to Michael and David (my GSOC mentors), but we decided that it's better if we publish reports and discussions regarding features on the mailing list itself.

First, the report (also available on https://wiki.ubuntu.com/GSoC/2010/UrbanSkudnik/Progress) , scroll down for RFC:
TIME SPENT: Around 25 hours

HIGHLIGHTS:
Started developing my own Operation for Deja Dup to add an operation that will list files that were in the backup on a certain date so that we will be able to figure out what was deleted.

Started designing actual interface.

Managed to integrate interface that was designed with Glade to our existing code base which should enable gradual migration. At this point I stumbled upon a problem of connecting signals that are emitted by buttons to our code since even when passed proper function names Glade still could not find handler functions. After losing a lot of time I found some help on #vala and managed to figure out that we weren't including gmodule-2.0 and that even though --pkg gmodule-2.0 was added to VALA_CFLAGS it still has to be added to configure.ac (PKG_CHECK_MODULES). This also showed me that our build system is a bit more trickier then I previously thought.

I was also surprised that similar problem occurred with Gee since I was expecting that we were using it's helper functions already.

Started writing documentation.

CONCERNS:
Stumbling upon many more issues that are not of direct link to developing Deja Dup and losing too much precious time on those issues. To avoid this I plan to spend some time debugging but ask for help on #vala or related channel much sooner. Hopefully guys will be as helpful and as friendly as they have been in the past.

WAITING ITEMS: Nope, just myself.

STALLED TASKS: At the moment I am no longer stuck, but was stuck for two or three days (see above).

ACCOMPLISHMENTS:
* Drew first user interface in Glade and connect it to existing code base [1]
 * Got signals working properly
 * Began implementing my own OperationFiles

MINOR TASKS:
* Suggested the use of Valadoc and started to write documentation for functions that I develop or I'm working with.
 * Created first branch with the code I have [2]

ACTIONS FOR FOLLOWING WEEK:
 * Complete as much of backend code as possible for Nautilus plugin.
* Prepare some part of user interface for directory history (suggestions on mailing list)

----

Now, RFC :)

Since I am working on extending Nautilus plugin I would like to get feedback from other users and developers about how to implement various features - for a start, history of the directory or how to restore deleted files from Nautilus itself.

Basic technical features of duplicity that should enable below listed suggestion are collection-status, which lists dates on which backup was made and list-current-files -t N, which lists files that were in directory N time ago and when were those files last changed.

Showing this to users in a simple and easily understandable way is another thing.

For now I designed two suggestions [3], basic distinction between them is that first is file oriented and second one is time oriented.

First is similar to my existing draft [1] - first are show files that were deleted and then changes for each file in directory. With green I marked that the file was selected for restore, yellow is that it was changed and red is that it was deleted (should any coloring be used in actual program is another questions - with lots of files this could give some visual feedback to user. Getting all teletubbies with UI is of course not very useful...).

Second suggestion is that we basically list dates (it would probably be better to only list one date per day for the past week, one date per week for past month and one date per month for anything else) and what kind of changes were made between that point and previous backup point. Not listing changes for every backup should make things a lot faster and a lot more readable.

Both can however have problem if there are a lot of files in the directory, which is a problem that I have no idea how to tackle other than with a search box.

Which suggestion do you prefer? Does anyone have any other ideas or suggestions? Any input is welcome... ;)

Cheers,
Urban

[1] http://dl.dropbox.com/u/1493539/restorefiles.png
[2] https://code.launchpad.net/~urbans/deja-dup/deja-dup.nautilus
[3] http://dl.dropbox.com/u/1493539/dejadup.nautilus.pdf




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]