REMINDER: Final review of VCS interfaces

Andreas Pakulat apaku at gmx.de
Thu May 24 17:44:37 UTC 2007


On 24.05.07 12:21:20, Matthew Woehlke wrote:
> Robert Gruber wrote:
> > *) CVS offers some more options that are not common and will 
> >    therefore not be part of the interface (i think!?)
> >    E.g. when adding binary file, an additional option needs to 
> >    be passed to "cvs add". That's why KDev3 offers two separat 
> >    menu entries for adding files.
> >    How will such "extensions" be handled? Will CvsPlugin need to 
> >    implement a second interface, let's say ICvs, that provides 
> >    an overloaded add() method?
> >    "cvs add" is not the only such thing, a lot of cvs actions 
> >    allow additional options.
> 
> Where extra options are important, overloads can be provided in ICvsVC. 
> Properties are so VCS-specific I hesitate to do anything in IBasicVC. 
> Maybe add() could have at least an isBinary flag? (Non-supporting VCS's 
> can ignore it). Maybe also hasExecPermission?

IMHO no, this should be handled by the plugin when adding the file.

> > *) Why is CvsJob not derived from KJob?
> > 
> > *) I'm not really sure what's the difference between diff() 
> >    and showDiff() and the other show*() methods. 
> >    Will the show*() methods popup a dialog showing the diff,
> >    the log and so on? If so, why do they return VcsJob?
> 
> foo() returns machine-parsable information, showFoo() displays a GUI. 
> The job is (I assume) so that you know when the dialog is closed, if the 
> method failed, etc.

IMHO no job is needed. The gui can tell the user if it failed.

Andreas

-- 
You may be gone tomorrow, but that doesn't mean that you weren't here today.




More information about the KDevelop-devel mailing list