[rfc] why bzr raise error when pipe closed too early?

Alexander Belchenko bialix at ukr.net
Sun Jun 11 16:48:04 BST 2006


When I run command 'bzr log' on branch that has big history and redirect
output via pipe to 'less' or 'more' pager, and if I break viewing output
before I see all history, then on win32 I very often got error:

bzr: ERROR: exceptions.IOError: [Errno 22] Invalid argument
   at E:\work\Python\bzr\devel\bzr.dev\bzrlib\commands.py line 701
   in run_bzr_catch_errors

I see that in function run_bzr_catch_errors() explicitly checked for
IOError with errno==32 (errno.EPIPE). But as you can see on windows I've
got IOError with errno==22 (errno.EINVAL). I don't know is it intended
behaviour or not, but probably bzr don't need to show this error because
this error is harmless and pointless. Only strange and non-informative
for users.

May be bzr should suppress this error report?

--
Alexander





More information about the bazaar mailing list