REMINDER: Final review of VCS interfaces

dukju ahn dukjuahn at gmail.com
Wed May 23 07:51:47 UTC 2007


2007/5/22, Matthew Woehlke <mw_triad at users.sourceforge.net>:
> The VCS interfaces are looking good, and we would like to start moving
> over to them next week (5/28). If you have not already, please review
> them and comment if you see any problems, things that look wrong, things
> you don't understand, things that might not work with your favorite VCS,
> etc.

1.
from the comment on IBasicVC--
"revisions can contain a date in format parseable by QDate"
Why don't we use QDateTime instead of just QDate?
It can handle time information also.

2.
Why do we return VcsJob as a value? Should it be a pointer?

3.
virtual VcsJob IBasicVcs::status( const KUrl::List& localLocations,
                     RecursionMode recursion ) = 0;

Is this an ASync method or blocking method? I guess it would be blocking
because it fetches information from local-locations.
Then we need IBrowsableVcs::status( QString, RecursionMode ) also. And
it should be non-blocking. Its associated signals should be defined too.

4.
In case of svn, there is "svn info" It displays useful informations belows.
Why don't we add showInfo() on both IBasic and IBrowsable and
display information dialog box?

kdev at debian:~/ktrunk/kdevelop$ svn info
Path: .
URL: https://dukjuahn@svn.kde.org/home/kde/trunk/KDE/kdevelop
Repository Root: https://dukjuahn@svn.kde.org/home/kde
Repository UUID: 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Revision: 667398
Node Kind: directory
Schedule: normal
Last Changed Author: wongk
Last Changed Rev: 667180
Last Changed Date: 2007-05-21 23:34:55 -0400 (Mon, 21 May 2007)

5.
This is my question. Who would be the user of these interfaces?
Good guests would be repository browser, status displayer.
BTW, if the user invokes context-menu somewhere, who will
reimplement IPlugin::requestContextMenuActions()? Will there any
VcsManager or controller that manages every loaded VCS plugins and
creates action for ctxmenu? Or ctx-menu is left for each plugins?


>
> Also ranges were dropped from VcsRevision, so
> please check if there are any functions that should be able to handle
> ranges that currently do not take both start and end revisions.

I found one thing --
logview should take revision range, both IBasicVC and IBrowsableVC




More information about the KDevelop-devel mailing list