Sharing VCS-related code across KDE apps [Was: Fwd: Re: KDE/kdebase/apps/dolphin/src]

Matt Rogers mattr at kde.org
Sun Aug 2 01:38:29 UTC 2009


On Saturday 01 August 2009 08:02:55 pm Andreas Pakulat wrote:
> On 01.08.09 21:15:10, Peter Penz wrote:
> > Hi Andreas,
> >
> > I'm forwarding you the mail, as it seems it did not appear at kdevelop-
> > devel at kdevelop.org as I'm not subscribed.
>
> Yeah, the list is moderated for non-subscribers and unfortunately one of
> the two moderators is currently on vacation and the other one is burried
> deeply in work (as it seems). /me needs to talk Amilcar into giving him
> admin rights on the website+list....
>

Sorry, I never saw the moderation mail come through.


> > I've subscribed myself now to
> > kdevelop-devel, but I think if we continue to discuss the topics we
> > should start a new thread with a better subject :-)
>
> Well a subject can be easily changed, I've done that now and Cc'ed Aaron
> again...
>
> From: Peter Penz <peter.penz at gmx.at>
> To: "Aaron J. Seigo" <aseigo at kde.org>,
>  Faure David <faure at kde.org>
> Subject: Re: KDE/kdebase/apps/dolphin/src
> Cc: kdevelop-devel at kdevelop.org
>
> > On Saturday, 1. August 2009 03:50:57 Aaron J. Seigo wrote:
> > > this really, really looks like the kind of thing that would benefit
> > > from usage of kdevplatform. there's really no point, in my mind, of
> > > rewriting vcs code over and over again in every app that would benefit
> > > from it.
> > >
> > > there seem to be technical obstacles to that, however.
> >
> > I agree that this should be not part of an application and rewritten
> > again if there is a quite similar code there already. The code below is
> > just a proof of concept an my plan was to provide a base-API in
> > kdebase/lib/konq and to move the plugin into implementations into
> > kdesdk/revisioncontrol (see
> > http://lists.kde.org/?l=kfm-devel&m=124855492527006&w=2 for details).
>
> Hmm, I guess I missed that mail somehow...
>
> > I was not aware about kdevplatform/plugins/filemanager-stuff... :-/
>
> Well that stuff really is just a thin wrapper around KDirOperator and
> not so much what this is all about.
>
> > Hmm... The plugin base class for integrating a revision control system
> > into any kind of QAbstractItemView is quite trivial and currently part of
> > Dolphin:
> >
> > http://websvn.kde.org/trunk/KDE/kdebase/apps/dolphin/src/revisioncontrolo
> >bserver.h?view=markup
>
> Thats nice already, the emblem-stuff is something which I haven't yet
> looked at integrating (not only for the filemanager, but also for
> project views and the editor-tabs in kdevelop).
>
> > Would it be possible that someone from the kdevelop team might have a
> > short look into
> > http://lists.kde.org/?l=kfm-devel&m=124855492527006&w=2 (description of
> > plugin interface) to check whether it is possible to move the
> > vcs-specific codebases into separate plugins (like Andreas mentions in
> > the other mail)?
>
> Unfortunately thats not enough for us. The really interesting stuff
> regarding VCS in KDevelop/KDevPlatform is in
>
> kdevplatform/vcs/*
>
> and related plugins are in
>
> kevplatform/plugins/subversion
> kevplatform/plugins/git
> kevplatform/plugins/mercurial
>
> As KDevelop wants other plugins to have full access to the VCS API we
> need a bit more than the API of your current revisioncontrol plugin.
> However I'm pretty sure that the actual implementation of at least the
> subversion plugin can easily be moved out - based on the interfaces and
> classes in the kdevplatform/vcs library.
>
> There might not be a need to extract all the interfaces, I guess for
> most apps its enough to have the IBasicVC interface which basically
> provides access to local working copies/clones of a repository. So the
> shared interface would be something based on IBasicVC, but each plugin
> would also expose a plugin-specific public API such that
> KDevelop/KDevPlatform can implement its complete VCS-API based on that.
>
> Thoughts, Opinions?
>
> Andreas

-- 
Matt
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: This is a digitally signed message part.
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20090801/245c9dd9/attachment.sig>


More information about the KDevelop-devel mailing list