View Single Post
Posts: 292 | Thanked: 131 times | Joined on Dec 2009
#91
Originally Posted by jaguilar View Post
By the way, pySafe isn't yet run outside the N900. But the version that I'm working, in Qt, will run in any device/SO that runs Python with Qt.
That is great news! it will be great to be able to run the program on both desktop and N900 and still sync them (however that may be done: rsync, Unison, copy, etc).

May I add another suggestion?

Make it possible to do 3-way comparisons among pySafe databases. This feature should be triggered by the CLI. The 3 files to be compared are: base-file, file1-changed-from-base and file2-changed from base. This feature alone would revolutionize password programs. Here is the typical use case:
  • The user adds some entries to her N900 pySafe db;
  • The user makes some changes to her Desktop version of PySafe, forgetting to first copy the db from the N900;
  • Some days later, the user uses Unison to synchronize many files between N900 and Desktop (example: music, pictures, videos, documents and the pySafe db).
  • Unison notices that the pySafe db was edited on both places and so one version cannot overwrite the other without the user losing data.
  • Because pySafe supports 3-way merge at the command line invocation, Unison calls "pySafe old-base-common.db desktop-db N900-db". Note: old-base-common is the last common version tracked by Unison that was equal on both devices.
  • PySafe now asks for the passwords and displays a side by side comparison of differences between "desktop-db" and "N900-db". it can even merge things automatically, if there are no conflicting changes.
  • The user taps the lists, indicating what changes are kept;
  • PySafe then saves the results as the true merged file.
  • Unison replicates the same new version on both devices
  • The user lives happily forever, knowing that whatever and whenever she changes her pySafe db she will be sure that no changes will be lost.