[VCS] Merging IAtomic* into IBasic*

Matthew Woehlke mw_triad at users.sourceforge.net
Tue May 15 16:25:11 UTC 2007


Andreas Pakulat wrote:
> On 11.05.07 12:54:14, Matthew Woehlke wrote:
>> Andreas Pakulat wrote:
>>> On 11.05.07 11:00:41, Matthew Woehlke wrote:
>>>>> So there are functions in our interfaces that don't take a repo or local
>>>>> path.
>>>> Right now change() only takes a VcsRevision. That might be the only one, 
>>>> I haven't done an audit yet.
>>> Ok, yeah. I think the revision should take the repo-information
>>> (internally like the repo path for filenumbers)
>> Hmm... at first that makes a lot of sense, but the problem is I can't 
>> think of a way to do change(VcsRevision::Head) this way. Is it better to 
>> require constructing a VcsRevision to require a repo path, or should we 
>> just say that change() needs a repo path?
> 
> Hmm, I think change() should then also take a repo path. We could attach
> the path to the revision itself, but then we'd have duplicate stuff in
> all methods that already take a path and you always have to create new
> VcsRevision objects when you want to work with the same date on a
> different path...

Heh. Ok, let's see... a FileNumber revision still needs a path, but I 
don't think there is a way to construct such a critter (nor do I 
particularly feel that there should be), especially since not all VCS's 
will support FileNumber revisions (e.g. svn won't). The other 
interesting effect is that if change() takes a repository path, I guess 
CVS can actually support it, in which case it can move to IBrowsableVC 
after all. Any objections?

(Sorry for the delay, was visiting maternal relatives, it being Mother's 
Day and all :-).)

-- 
Matthew
People say I'm going insane. I say, "what do you mean, 'going'?".





More information about the KDevelop-devel mailing list