Re: [Dar-libdar_api] more stability on libdar API
For full, incremental, compressed and encrypted backups or archives
Brought to you by:
edrusb
|
From: Denis C. <dar...@fr...> - 2007-05-24 19:48:59
|
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hello, CVS is up to date with new API. Tutorial has also been updated. Regards, Denis. Denis Corbin wrote: > Hello Johnathan, Hello Thomas, > > Thanks for your feedback. I have thus started moving archive's options > in several classes. It is not yet in CVS as it is not yet completed, but > seen the impact on the command-line tools, as Thomas said, it already > greatly improved readability! > > Kind Regards, > Denis. > > Denis Corbin wrote: >> Hi, > >> For almost each added feature, I have to add new parameter(s) to the >> archive class's constructors or methods. This is annoying for all >> software that rely on libdar (dar command line programs, kdar, etc.). > >> This break ascendant compatibility at each major release, which implies >> some work for each libdar dependent software. > >> I would like you to get your feedback about the following idea to solve >> this problem: > >> The idea is very simple, replace the plethora of *optional* arguments >> found in constructor and archive::op_* methods by a single one which type >> is a class, class which name would be isolate_option, create_option, >> extract_option, and so on. > >> All theses class would have a default constructor (with no argument), >> along with a list of methods to set the different options (slicing, >> encryption, compression, etc.). then, as new feature get added, a new >> method of in theses option classes would be added. Not using this new >> method would only let libdar behaves with default value for this new option. > >> Old software would continue to work with new libdar API and less work >> would have to be done for libdar dependent software. Using a new feature >> by libdar dependent programs could be done asynchronously from libdar's >> release, this brings more freedom for anyone around libdar's API. > >> Thanks in advance for feedback, > >> Regards, >> Denis. > -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iD8DBQFGVewgpC5CI8gYGlIRAlLCAJ93UxgnSbyDngS4aZAtYgp6ou6rkwCfaJcp 8WmzYJNu6c0r9yXp+ubLjpk= =5jP9 -----END PGP SIGNATURE----- |