On Wednesday 18 May 2005 12:12, Leopold Toetsch wrote: > Juergen Boemmels wrote: > > On Wednesday 18 May 2005 07:52, Leopold Toetsch wrote: > >>I'd say we just drop this test. Whenever you do reasoanble work in the > >>working tree, you got test files, editor swap file and whatnot. > > > > Still it is one of the most often failing tests, because people tend to > > forget to update MANIFEST when adding files to CVS. > > It depends of course on how people organize their work. But I think > there are basically two cases:
More or less there are 3 cases > - manicheck a clean repo In this case no file should be skipped and ignored Ideally make realclean should bring you back to this state. > - manicheck a working copy, where you compile and run tests These are actualy two cases: - compile and run test. Here are extra files should be skipped and ignored, otherwise its an error - develop in the tree. Here extra files are normal > I have both parrot trees, usual work is: > a) "svn up" in the clean tree > b) rsync -au trunk/ leo > c) work and compile in my tree > d) manidiff && copy changed files back to trunk > e) svn ci > > Step d) and e) include some scripts that run a manickeck in the clean > tree. But this sequence doesn't prevent from just forgetting to add a > file to MANIFEST in leo/ :) I do pretty much the same, i use 2 checkouts. To copy changes I use svn diff | cd ../parrot-clean; patch -p0 before a commit I run make test > > Garret Goebel wrote a commitinfo file which warned a commiter if he/she > > forgot to update the MANIFEST. > > perl tools/dev/manicheck.pl in the clean tree does it so does the old version of perl -Ilib t/src/manifest.t but both have the problem, that they walk the tree. This was a problem for the commitinfo. Don't know if its still a problem in SVN. > > I have an updated version of t/src/manifest.t I was about to commit but > > is now conflicting with this latest version. > > What about: > > skip("number 6", 1) if -e parrot$EXE; Then you can skip it always. Even in a clean build there will be a parrot$EXE. It should be checked that MANIFEST.SKIP and svn:ignore are consistent, i.e. that all ignored files are in MANIFEST.SKIP and vice versa. The new checks in t/src/manifest do this, but they drop the orignal check between MANIFEST and svn > leo This little old test gets a lot attention these days boe