From: Arfrever F. T. A. <arf...@gm...> - 2011-07-05 15:43:32
|
This ignored exception occurs only with Python 3 (even without '> /dev/null'). I use Docutils trunk r7071. $ touch test.rst $ rst2html.py-2.7 test.rst > /dev/null $ rst2html.py-3.2 test.rst > /dev/null Exception ValueError: 'I/O operation on closed file.' in <_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'> ignored -- Arfrever Frehtes Taifersar Arahesis |
From: Guenter M. <mi...@us...> - 2011-07-06 07:43:24
|
On 2011-07-05, Arfrever Frehtes Taifersar Arahesis wrote: > [-- Type: text/plain, Encoding: quoted-printable --] > This ignored exception occurs only with Python 3 (even without '> /dev/null'). > I use Docutils trunk r7071. > $ touch test.rst $ rst2html.py-2.7 test.rst > /dev/null $ > rst2html.py-3.2 test.rst > /dev/null Exception ValueError: 'I/O > operation on closed file.' in <_io.TextIOWrapper name='<stdout>' > mode='w' encoding='UTF-8'> ignored Can you run rst2html.py-3.2 test.rst --traceback > /dev/null and report the traceback, please. Günter |
From: Arfrever F. T. A. <arf...@gm...> - 2011-07-06 16:45:50
|
2011-07-06 09:12:36 Guenter Milde napisał(a): > On 2011-07-05, Arfrever Frehtes Taifersar Arahesis wrote: > > > [-- Type: text/plain, Encoding: quoted-printable --] > > > This ignored exception occurs only with Python 3 (even without '> /dev/null'). > > I use Docutils trunk r7071. > > > $ touch test.rst $ rst2html.py-2.7 test.rst > /dev/null $ > > rst2html.py-3.2 test.rst > /dev/null Exception ValueError: 'I/O > > operation on closed file.' in <_io.TextIOWrapper name='<stdout>' > > mode='w' encoding='UTF-8'> ignored > > Can you run > > rst2html.py-3.2 test.rst --traceback > /dev/null > > and report the traceback, please. Unfortunately this command doesn't print any traceback. The output is the same as without --traceback option. The traceback is also not shown when stdout is not redirected to /dev/null. -- Arfrever Frehtes Taifersar Arahesis |
From: Guenter M. <mi...@us...> - 2011-07-06 19:10:59
|
On 2011-07-06, Arfrever Frehtes Taifersar Arahesis wrote: > [-- Type: text/plain, Encoding: quoted-printable --] > 2011-07-06 09:12:36 Guenter Milde napisał(a): >> On 2011-07-05, Arfrever Frehtes Taifersar Arahesis wrote: >> > [-- Type: text/plain, Encoding: quoted-printable --] >> > This ignored exception occurs only with Python 3 (even without '> >> > /dev/null'). I use Docutils trunk r7071. >> > $ touch test.rst $ rst2html.py-2.7 test.rst > /dev/null $ >> > rst2html.py-3.2 test.rst > /dev/null Exception ValueError: 'I/O >> > operation on closed file.' in <_io.TextIOWrapper name='<stdout>' >> > mode='w' encoding='UTF-8'> ignored >> Can you ... >> report the traceback, please. > Unfortunately this command doesn't print any traceback. The output is > the same as without --traceback option. The traceback is also not shown > when stdout is not redirected to /dev/null. Hm, hard to track down without. Seems like something is closing the stdout stream. When did you first realize this problem? Is there an older SVN revision that works? (Maybe it is related to the new "save" error reporting. IO in a program that shall work with Python 2.3 ... 3.2 is a nightmare!) Does it work with Python 3.1? Do you see the expected output on stdout when it is not redirected? What is missing (if anything)? Sorry for so many questions, Günter |
From: Arfrever F. T. A. <arf...@gm...> - 2011-07-06 21:15:51
|
2011-07-06 21:10:32 Guenter Milde napisał(a): > On 2011-07-06, Arfrever Frehtes Taifersar Arahesis wrote: > > > [-- Type: text/plain, Encoding: quoted-printable --] > > > 2011-07-06 09:12:36 Guenter Milde napisał(a): > >> On 2011-07-05, Arfrever Frehtes Taifersar Arahesis wrote: > > >> > [-- Type: text/plain, Encoding: quoted-printable --] > > >> > This ignored exception occurs only with Python 3 (even without '> > >> > /dev/null'). I use Docutils trunk r7071. > > >> > $ touch test.rst $ rst2html.py-2.7 test.rst > /dev/null $ > >> > rst2html.py-3.2 test.rst > /dev/null Exception ValueError: 'I/O > >> > operation on closed file.' in <_io.TextIOWrapper name='<stdout>' > >> > mode='w' encoding='UTF-8'> ignored > > >> Can you > ... > >> report the traceback, please. > > > Unfortunately this command doesn't print any traceback. The output is > > the same as without --traceback option. The traceback is also not shown > > when stdout is not redirected to /dev/null. > > Hm, hard to track down without. Seems like something is closing the stdout > stream. Apparently docutils.io.FileOutput.close() closes sys.stdout: def close(self): self.destination.close() self.opened = False self.destination == sys.stdout > When did you first realize this problem? Yesterday. Previously rst2html.py with Python 3 was failing with AttributeError in docutils.core.Publisher.process_command_line(). > Does it work with Python 3.1? The output with Python 3.1 is identical as with Python 3.2. > Do you see the expected output on stdout when it is not redirected? Yes. -- Arfrever Frehtes Taifersar Arahesis |
From: Arfrever F. T. A. <arf...@gm...> - 2011-07-06 22:33:18
|
2011-07-06 23:15:39 Arfrever Frehtes Taifersar Arahesis napisał(a): > The output with Python 3.1 is identical as with Python 3.2. Actually there is small difference: $ python3.1 -c 'import sys; sys.stdout.close()' Exception ValueError: 'I/O operation on closed file.' in <_io.TextIOWrapper name='<stdout>' encoding='UTF-8'> ignored $ python3.2 -c 'import sys; sys.stdout.close()' Exception ValueError: 'I/O operation on closed file.' in <_io.TextIOWrapper name='<stdout>' mode='w' encoding='UTF-8'> ignored -- Arfrever Frehtes Taifersar Arahesis |
From: Guenter M. <mi...@us...> - 2011-07-07 07:04:12
|
On 2011-07-06, Arfrever Frehtes Taifersar Arahesis wrote: > 2011-07-06 21:10:32 Guenter Milde napisał(a): >> On 2011-07-06, Arfrever Frehtes Taifersar Arahesis wrote: >> > 2011-07-06 09:12:36 Guenter Milde napisał(a): >> >> On 2011-07-05, Arfrever Frehtes Taifersar Arahesis wrote: >> >> > This ignored exception occurs only with Python 3 (even without '> >> >> > /dev/null'). I use Docutils trunk r7071. >> >> > $ touch test.rst $ rst2html.py-2.7 test.rst > /dev/null $ >> >> > rst2html.py-3.2 test.rst > /dev/null Exception ValueError: 'I/O >> >> > operation on closed file.' in <_io.TextIOWrapper name='<stdout>' >> >> > mode='w' encoding='UTF-8'> ignored > Apparently docutils.io.FileOutput.close() closes sys.stdout: > def close(self): > self.destination.close() > self.opened = False > self.destination == sys.stdout This should normally not be called if self.destination is sys.stdout, however, I could reproduce the error. I added an ``if`` so that docutils.io classes never close sys.std(in|out|err). Does this help? Günter |
From: Arfrever F. T. A. <arf...@gm...> - 2011-07-07 16:09:11
|
2011-07-07 09:03:42 Guenter Milde napisał(a): > On 2011-07-06, Arfrever Frehtes Taifersar Arahesis wrote: > > 2011-07-06 21:10:32 Guenter Milde napisał(a): > >> On 2011-07-06, Arfrever Frehtes Taifersar Arahesis wrote: > >> > 2011-07-06 09:12:36 Guenter Milde napisał(a): > >> >> On 2011-07-05, Arfrever Frehtes Taifersar Arahesis wrote: > > >> >> > This ignored exception occurs only with Python 3 (even without '> > >> >> > /dev/null'). I use Docutils trunk r7071. > > >> >> > $ touch test.rst $ rst2html.py-2.7 test.rst > /dev/null $ > >> >> > rst2html.py-3.2 test.rst > /dev/null Exception ValueError: 'I/O > >> >> > operation on closed file.' in <_io.TextIOWrapper name='<stdout>' > >> >> > mode='w' encoding='UTF-8'> ignored > > > > > Apparently docutils.io.FileOutput.close() closes sys.stdout: > > def close(self): > > self.destination.close() > > self.opened = False > > > self.destination == sys.stdout > > This should normally not be called if self.destination is sys.stdout, > however, I could reproduce the error. > > I added an ``if`` so that docutils.io classes never close sys.std(in|out|err). > > Does this help? Yes. Thanks. -- Arfrever Frehtes Taifersar Arahesis |