Lele Gaifax wrote:

> > Fri Mar 27 23:40:12 CET 2009  [email protected]
> >   * bzr-prevent-PathsNotVersionedError
> >   This prevents a PathsNotVersionedError exception when using cvs =>
> > bzr and it tries to remove files which had been removed in the
> > previous commit already. I have the full log available - which you
> > probably want to see. I think this should get catched/handled not in
> > the target implementation, but more central - but I have not enough
> > knowledge of the tailor source and this works for my case.
> >
> > hunk ./vcpx/repository/bzr.py 393
> >          if entries:
> >              entries = [normpath(entry) for entry in entries]
> >
> > +        # Filter out unversioned files (to prevent
> > PathsNotVersionedError) +        if entries:
> > +            self._working_tree.lock_write()
> > +            try:
> > +                entries = [name for name in entries if name not in
> > self._working_tree.filter_unversioned_files(entries)] +           
> > finally:
> > +                self._working_tree.unlock()
> > +
> >          self._working_tree.commit(logmessage, committer=author,
> >                                    specific_files=entries,
> >                                   
> > verbose=self.repository.projectref().verbose,
>
> This seems wrong to me, but OTOH I haven't checked
> filter_unversioned_files() so I'm not sure: in the way it's written,
> that function gets called once for each name in entries, passing it
> the same (unchanged!) list every time.
>
> Could you please check if the following works?

Well, I've thought Python would not evaluate the list each time.

Anyway, your improvement makes sense, but I fear that the patch
is wrong still: it appears to filter out files that just have
been deleted/removed?!

I'm not sure, but that just happened during a sync (note that the removal of 
_zip_archives.class.php has not been 
committed):
13:40:07 [I] Applying pending upstream changesets
13:40:07 [I] Changeset #1
13:40:07 [I] Changeset "2009-04-08 11:33:55 by tblue246"
13:40:07 [I] Log message: Renaming file _zip_archives.class.php back to 
_zip_archives.php to prevent inclusion into 
the autogenerated __autoload() list (when it gets regenerated).
13:40:11 [I] /home/lp-cron/var/tailor/b2evo/cvs $ cvs -f -d 
:pserver:[email protected]:/cvsroot/evocms -q update -d -P 
-r 1.2 
blogs/inc/_ext/_zip_archives.class.php
13:40:12 [I] [Ok]
13:40:12 [I] /home/lp-cron/var/tailor/b2evo/cvs $ cvs -f -d 
:pserver:[email protected]:/cvsroot/evocms -q update -d -P 
-r 1.5 blogs/inc/_ext/_zip_archives.php
13:40:14 [I] [Ok]
13:40:14 [I] /home/lp-cron/var/tailor/b2evo/cvs $ cvs -f -d 
:pserver:[email protected]:/cvsroot/evocms -q update -d -P 
-r 1.14 
blogs/inc/_core/_class5.funcs.php
13:40:15 [I] [Ok]
13:40:15 [I] /home/lp-cron/var/tailor/b2evo/cvs $ cvs -f -d 
:pserver:[email protected]:/cvsroot/evocms -q update -d -P 
-r 1.27 blogs/inc/files/files.ctrl.php
13:40:17 [I] [Ok]
13:40:17 [I] $ rsync --archive --exclude CVS --exclude .bzr 
/home/lp-cron/var/tailor/b2evo/cvs/ /home/lp-
cron/var/tailor/b2evo/bzr
13:40:19 [I] [Ok]
13:40:19 [I] Removing blogs/inc/_ext/_zip_archives.class.php...
13:40:19 [I] removed blogs/inc/_ext/_zip_archives.class.php
13:40:19 [I] Committing u'[b2evolution @ 2009-04-08 11:33:55 by tblue246]'...
13:40:19 [I] Committing to: /home/lp-cron/var/tailor/b2evo/bzr/
13:40:20 [I] modified blogs/inc/_core/_class5.funcs.php
13:40:20 [I] added blogs/inc/_ext/_zip_archives.php
13:40:20 [I] modified blogs/inc/files/files.ctrl.php
13:40:20 [I] deleted blogs/inc/_ext/_zip_archives.php
13:40:20 [I] Committed revision 7037.

I'm not sure, if the patch is really the problem here (have not investigated
yet), but it really looks like that.

> Also, does it really need to be a write lock?

Yes, IIRC something complained about using a write lock, but that might
have been before changing code.
This needs to get checked with the final patch.

Do you have any idea what may be going on here?
Is a removed file (before committing it) in filter_unversioned_files?

I will check this / investigate in the next days, but it would be
great if somebody would have some answer(s) already.. :)


Thanks,
Daniel

-- 
http://daniel.hahler.de/

Attachment: signature.asc
Description: This is a digitally signed message part.

_______________________________________________
Tailor mailing list
[email protected]
http://lists.zooko.com/mailman/listinfo/tailor

Reply via email to