This is a known problem with some FTP servers. Basically, instead of returning the empty list when there are no files in a directory, they instead raise a 550 error. The problem is that they strings are not generally helpful as they vary wildly based on the ftp server, and 550 can mean a lot of things. For example:
550 Permission denied http://support.ipswitch.com/kb/WS-20000817-DM02.htm
versus
550 No such file http://support.ipswitch.com/kb/WS-20010403-DM01.htm
According to the second link 550 is supposed to be a permission error. And it is a bit rude of them to treat "no files in directory" as a permission problem.
Do you know the FTP server which is on "rhonwyn"?
A while back we encountered this with a 450 error. We have this code in "bzrlib/transport/ftp/__init__.py"
except ftplib.error_temp, e:
# xs4all's ftp server raises a 450 temp error when listing an empty
# directory. Check for that and just return an empty list in that
# case. See bug #215522
if str(e).lower().startswith('450 no files found'):
mutter('FTP Server returned "%s" for nlst.'
' Assuming it means empty directory', str(e))
return []
raise
So either
a) You have a permission issue on that directory or
b) It is given a bogus error rather than just saying there isn't anything ther.
I'm also really surprised that .bzr/branch/lock is failing. As we never have a cause (that *I* know of) to list that directory. We *do* a list on .bzr/repository/obsolete_packs which is where this came up in the past.
This is a known problem with some FTP servers. Basically, instead of returning the empty list when there are no files in a directory, they instead raise a 550 error. The problem is that they strings are not generally helpful as they vary wildly based on the ftp server, and 550 can mean a lot of things. For example: support. ipswitch. com/kb/ WS-20000817- DM02.htm support. ipswitch. com/kb/ WS-20010403- DM01.htm
550 Permission denied
http://
versus
550 No such file
http://
According to the second link 550 is supposed to be a permission error. And it is a bit rude of them to treat "no files in directory" as a permission problem.
Do you know the FTP server which is on "rhonwyn"?
A while back we encountered this with a 450 error. We have this code in "bzrlib/ transport/ ftp/__init_ _.py" lower() .startswith( '450 no files found'):
str(e) )
except ftplib.error_temp, e:
# xs4all's ftp server raises a 450 temp error when listing an empty
# directory. Check for that and just return an empty list in that
# case. See bug #215522
if str(e).
mutter('FTP Server returned "%s" for nlst.'
' Assuming it means empty directory',
return []
raise
So either
a) You have a permission issue on that directory or
b) It is given a bogus error rather than just saying there isn't anything ther.
I'm also really surprised that .bzr/branch/lock is failing. As we never have a cause (that *I* know of) to list that directory. We *do* a list on .bzr/repository /obsolete_ packs which is where this came up in the past.