[IPython-dev] About IPython and bzr

Alexander Belchenko bialix at ukr.net
Mon Mar 10 03:49:17 EDT 2008


Ville M. Vainio пишет:
> On Mon, Mar 10, 2008 at 8:57 AM, Alexander Belchenko <bialix at ukr.net> wrote:
> 
>>  I have special plugin win32symlinks that provide support for fake symlinks on Windows.
>>  At least checkout of branch with symlinks is possible without a hassle.
>>  It works for me very well.
> 
> Any reason why this is not in core? I did notice that there is a
> plugin available, but having to resort to a plugin when such a "core"
> functionality is at stake makes me feel a bit uneasy. Is it not stable
> yet, or not the "final answer"? Is there a danger it will botch
> history or merging?

No, only because of performance penalty. `bzr status` will pay extra time
on additional stat call for every file. It costs about 15% overhead
on NTFS filesystem and about 80% on FAT32.

For merging fake symlinks approach into bzr core I need to rewrite
standard os.listdir function to allow return not only file names,
but stat info too. This should improve overall performance of walking
across working tree even without fake symlinks support.

So I'd like to call my plugin as "not final answer".

> I still think we should at least try to avoid symlinks in bzr for a
> while more, until a definite solution settles down. And besides, if
> the symlink is the "right answer", it should be in an area that is not
> needed on Windows; obviously, even if you were able to check out the
> symlink, it would never actually work in win32.

I'm not familiar with svn solution for symlinks on Windows, but my
fake symlinks is not real symlinks, so you should not use it for pointing
to some python package and expect that python import will work fine.

But I follow symlinks format from Cygwin so at least it should appear
as "real" symlinks in Cygwin environment. Details of this format could
be found in plugin source.



More information about the IPython-dev mailing list