What's the status of Python 2.6 support?

Vincent Ladeuil v.ladeuil+lp at free.fr
Thu Jan 15 10:35:59 GMT 2009


>>>>> "jam" == John Arbash Meinel <john at arbash-meinel.com> writes:

    jam> Vincent Ladeuil wrote:
    >> Sorry for the delay, the diagnostic regarding the ftp failures
    >> was a bit tough.
    >> 
    >> So basically, there three kind of failures in your report:
    >> 
    >> - ftp related ones,
    >> 
    >> - encoding related ones,
    >> 
    >> - test_diff_kind_change one.
    >> 
    >> I can't reproduce the encoding related ones and I wonder if your
    >> setup is unusual there, I'd suspect some unusual locale... or
    >> some strange formatting for your /private volume (doubtly).
    >> 
    >> The ftp related ones are messy: there is a bug either in medusa
    >> or in python-2.6 asynchat.py (which medusa uses). Tracking the
    >> root cause is a bit too much work for me right now (I end up
    >> understanding that some Unicode strings are wrongly processed as
    >> if they were lists, but that's really deep in medusa/asynchat and
    >> isolating that is not trivial). Anyway, the outcome will be either:
    >> 
    >> - find a workaround in our test ftp server (requirements: python,
    >> multi-platform, can be run without being root),
    >> 
    >> - replace medusa by another ftp server (medusa hasn't been
    >> updated for years, so the fact that it's not compatible with
    >> python-2.6 is not a big surprise),
    >> 
    >> - inhibit medusa use when running 2.6.
    >> 
    >> I'd like feedback before going further.


    jam> IMO, it just depends on how hard it is to do. We use
    jam> medusa for testing because it was easy to do so. And so
    jam> far it has been reasonably easy to extend to fit what we
    jam> need.

Thanks for confirming that.

    jam> If it is a matter of monkey-patching 1 function in
    jam> medusa to get it to work, then we can do it.

It doesn't seem so.

    jam> If it is re-writing all of medusa to get something
    jam> functional, then I think we are okay punting for now.

That's not *that* extreme either.

    jam> I certainly would like to ensure that our FTP support
    jam> works on python2.6,

It is. 

The bug is in the test server, not in the client, but of course
having test failures not only make the above "It is" appears a
bit optimistic but any degradation in the future will not be
noticed.

I need to work again on my local_test_server plugin to be able to
test new potential ftp test servers more effectively though.

My last attempt failed because the ftp servers I tried require to
be run as root and that doesn't fit our test framework model
where we access the file both locally via the file system and
remotely via the transport.

I should mention I identified http://code.google.com/p/pyftpdlib/
as a potential replacement for medusa but I have yet to test
it...

It seems to support the right platforms (Windows, UNIX, OSx), is
written in python, etc.

Looking at
http://pyftpdlib.googlecode.com/svn/trunk/pyftpdlib/ftpserver.py
it seems that it shares roughly the same design as medusa so it
may suffer from the same bug, but at least it seems to be
actively supported...

  Vincent



More information about the bazaar mailing list