[MERGE] Cleanup and test Lock objects

Wouter van Heyst larstiq at larstiq.dyndns.org
Wed Mar 14 21:41:07 GMT 2007

On Wed, Mar 14, 2007 at 08:11:11PM +0200, Alexander Belchenko wrote:
> John Arbash Meinel пишет:
> > Alexander Belchenko wrote:
> \>> One more thing.
> >> Usually I have pywin32 installed, and ctypes too.
> >> It will be great if we have the way to test both implementations
> >> in one selftest run, without manual hiding/renaming/uninstalling pywin32.
> >> What you think about?
> >>
> >> May be we can do in similar way as with different http transports,
> >> and test each available lock implementation by explicit name.
> >> In this case (IIUC) each lock implementation should have their
> >> unique name for direct access from test code.
> > 
> > Well, they do have explicit names, but I realize they aren't always
> > enabled. I can refactor it a bit more so we end up with a list of
> > possible lock classes.
> > 
> > Either that, or we drop the pywin32 one entirely, and just make it a
> > strict dependency on ctypes. Then we only have 2 lock objects. ctypes
> > for win32, and fcntl everywhere else (including cygwin).
> I think we need to drop pywin32 sooner or later.
> Because Robert starts process of including C-extensions in bzr codebase
> it have sense to write win32 locks handling as C-extension,
> and keep ctypes variant as pure python implementation.

I guess that makes sense. Jelmer currently has the start of a
tortoisebzr using pywin32 COM, I'm not sure how hard it is to do that
with ctypes instead? 

> Dropping pywin32 has good side effect: it's means that Python 2.5 has
> all major libraries for bzr inside. I remember Wouter and Vincent ask me
> about minimal windows environment. If we drop pywin32 then minimal
> windows environment to run and test bzr will be very simple: only Python 2.5.

Ooh, that's nice.

Wouter van Heyst

More information about the bazaar mailing list