Removing some functionality from custommakefile support
jens.dagerbo at gmail.com
Mon Jul 23 10:39:44 UTC 2007
On 7/23/07, Andreas Pakulat <apaku at gmx.de> wrote:
> On 22.07.07 18:55:23, Alexander Neundorf wrote:
> > On Sunday 22 July 2007 11:26, Andreas Pakulat wrote:
> > > On 22.07.07 10:33:34, Alexander Neundorf wrote:
> > > > On Saturday 21 July 2007 18:52, Andreas Pakulat wrote:
> > > > > Hi,
> > > > >
> > > > > I'm "pissed off" enough now to discuss this: I'd like to remove the
> > > > > automatic updating of custommakefile projects. There's a dirwatcher in
> > > > > place that watches all subdirectories of a project for changes. Each
> > > > > time a change happens there are certain things done
> > > > >
> > > > > a) for each source file in that dir a stat is done to check for its
> > > > > existence (using QFileInfo::exists()), if it doesn't exist its
> > > > > afterwards removed from the filelist and also from the blacklist
> > > >
> > > > I also noticed probably the same and I think too it's not ideal.
> > > > When doing rm myfile.cpp; cvs up myfile.cpp to restore a file to the
> > > > original cvs state kdevelop notices that it doesn't exist anymore,
> > > > removes it from its internal list of project files and doesn't seem to
> > > > add it again, which has the effect that Quick open project files works
> > > > worse the longer kdevelop is running (in days).
> > >
> > > Well, thats what Add new files to project is for. The custom makefile
> > I think you misunderstood. I have a file which is part of the project, then
> > delete it and get it again from cvs. Then kdevelop will have removed it from
> > the project files for this session.
> Right, because it removes files automatically when they're removed from
> disk. However it also monitors the directories for newly added files and
> keeps a list of those. However its not sensible to automatically add
> these to the project list so there's a menu option which presents you
> with any "new" files (i.e. files that weren't in the projectlist when
> kdevelop started or were removed and re-added) and you can select which
> ones to add to the project and which don't get added.
> The problem is that the dirwatching and the amount of code afterwards
> (because from the dir watching I don't get more information than: hey
> there happened something in here) is pretty expensive. So thats what
> will be removed, which of course will "fix" your problem as the file
> won't get removed unless you close and re-open the project after
> removing and before cvs up.
I'm all for removing the automatic updating. It was a nice idea but it
seems to have created more problems than it's worth. There are enough
cases where this will break down badly that removing it is probably
the best option for now.
More information about the KDevelop-devel