]> granicus.if.org Git - python/log
python
14 years ago#8013 follow-up:
Georg Brandl [Sun, 2 Jan 2011 22:33:43 +0000 (22:33 +0000)]
#8013 follow-up:
* In asctime and ctime, properly remove the newline if the year has more than four digits
* Consistent error message for both functions
* Fix the test comments and add a check for the removed newline

14 years agoIssue #8013: Fixed test
Alexander Belopolsky [Sun, 2 Jan 2011 22:16:10 +0000 (22:16 +0000)]
Issue #8013: Fixed test

14 years agoSome nits.
Antoine Pitrou [Sun, 2 Jan 2011 22:12:22 +0000 (22:12 +0000)]
Some nits.

14 years agoAdd a shutdown() call in the server example.
Antoine Pitrou [Sun, 2 Jan 2011 22:09:27 +0000 (22:09 +0000)]
Add a shutdown() call in the server example.

14 years agoClarify behaviour of close() and shutdown() on sockets.
Antoine Pitrou [Sun, 2 Jan 2011 22:06:53 +0000 (22:06 +0000)]
Clarify behaviour of close() and shutdown() on sockets.

14 years agoissue10802: fallback to pipe+fcntl when the pipe2 syscall fails with errno ENOSYS.
Gregory P. Smith [Sun, 2 Jan 2011 20:52:48 +0000 (20:52 +0000)]
issue10802: fallback to pipe+fcntl when the pipe2 syscall fails with errno ENOSYS.

14 years agoIssue #8013: Fixed time.asctime segfault when OS's asctime fails
Alexander Belopolsky [Sun, 2 Jan 2011 20:48:22 +0000 (20:48 +0000)]
Issue #8013: Fixed time.asctime segfault when OS's asctime fails

14 years agoFix bad quoting in r87639. Caught by Arfrever.
Antoine Pitrou [Sun, 2 Jan 2011 20:45:21 +0000 (20:45 +0000)]
Fix bad quoting in r87639. Caught by Arfrever.

14 years agoIssue #10807: Remove base64, bz2, hex, quopri, rot13, uu and zlib codecs from
Victor Stinner [Sun, 2 Jan 2011 19:50:36 +0000 (19:50 +0000)]
Issue #10807: Remove base64, bz2, hex, quopri, rot13, uu and zlib codecs from
the codec aliases. They are still accessible via codecs.lookup().

14 years agoIssue #10475: Don't hardcode compilers for LDSHARED/LDCXXSHARED on NetBSD
Antoine Pitrou [Sun, 2 Jan 2011 19:34:03 +0000 (19:34 +0000)]
Issue #10475: Don't hardcode compilers for LDSHARED/LDCXXSHARED on NetBSD
and DragonFly BSD.  Patch by Nicolas Joly.

14 years agoFix code indentation.
Georg Brandl [Sun, 2 Jan 2011 19:07:51 +0000 (19:07 +0000)]
Fix code indentation.

14 years agoRelax test condition a lot
Antoine Pitrou [Sun, 2 Jan 2011 16:16:09 +0000 (16:16 +0000)]
Relax test condition a lot

14 years ago#1665333: add more docs for optparse.OptionGroup.
Georg Brandl [Sun, 2 Jan 2011 14:23:43 +0000 (14:23 +0000)]
#1665333: add more docs for optparse.OptionGroup.

14 years agoFix doctest to not rely on order of dictionary entries.
Raymond Hettinger [Sun, 2 Jan 2011 08:03:33 +0000 (08:03 +0000)]
Fix doctest to not rely on order of dictionary entries.
Use super() instead of direct references to the dict superclass.

14 years agoFix OrderedDic.pop() to work for subclasses that define __missing__().
Raymond Hettinger [Sat, 1 Jan 2011 23:51:55 +0000 (23:51 +0000)]
Fix OrderedDic.pop() to work for subclasses that define  __missing__().

14 years agoMake it easier to extend OrderedDict without breaking it.
Raymond Hettinger [Sat, 1 Jan 2011 22:38:00 +0000 (22:38 +0000)]
Make it easier to extend OrderedDict without breaking it.

14 years agopost release bump
Gregory P. Smith [Sat, 1 Jan 2011 21:18:46 +0000 (21:18 +0000)]
post release bump

14 years agoupdate copyright to 2011
Benjamin Peterson [Sat, 1 Jan 2011 14:28:31 +0000 (14:28 +0000)]
update copyright to 2011

14 years ago#10801: do not actually extract, just open() the files in the test zipfile.
Georg Brandl [Sat, 1 Jan 2011 10:42:31 +0000 (10:42 +0000)]
#10801: do not actually extract, just open() the files in the test zipfile.

14 years ago#10801: In zipfile, support different encodings for the header and the filenames...
Georg Brandl [Sat, 1 Jan 2011 10:09:32 +0000 (10:09 +0000)]
#10801: In zipfile, support different encodings for the header and the filenames.  Patch by MvL, test by Eli Bendersky.

14 years agoFix issue references.
Georg Brandl [Sat, 1 Jan 2011 10:07:30 +0000 (10:07 +0000)]
Fix issue references.

14 years agoIssue 6285: add NEWS entry for 3.2.
Terry Reedy [Sat, 1 Jan 2011 02:54:11 +0000 (02:54 +0000)]
Issue 6285: add NEWS entry for 3.2.

14 years agoIssue 6285: catch missing IDLE help file.
Terry Reedy [Sat, 1 Jan 2011 02:25:36 +0000 (02:25 +0000)]
Issue 6285: catch missing IDLE help file.

14 years agoTypo.
Raymond Hettinger [Fri, 31 Dec 2010 23:23:06 +0000 (23:23 +0000)]
Typo.

14 years agoFix OrderedDict.setdefault() to work for subclasses that define __missing__().
Raymond Hettinger [Fri, 31 Dec 2010 23:16:17 +0000 (23:16 +0000)]
Fix OrderedDict.setdefault() to work for subclasses that define __missing__().

14 years agoHappy New Year! (CET edition)
Georg Brandl [Fri, 31 Dec 2010 23:00:03 +0000 (23:00 +0000)]
Happy New Year!  (CET edition)

14 years ago#9361: add some tests for calendar.leapdays
R. David Murray [Fri, 31 Dec 2010 19:21:14 +0000 (19:21 +0000)]
#9361: add some tests for calendar.leapdays

Patch by John Chandler.

14 years agoIssue #10788: Changed test_logging setUp logic to provide more information.
Vinay Sajip [Thu, 30 Dec 2010 23:26:50 +0000 (23:26 +0000)]
Issue #10788: Changed test_logging setUp logic to provide more information.

14 years agoUpdate README, remove empty directory.
Georg Brandl [Thu, 30 Dec 2010 22:32:49 +0000 (22:32 +0000)]
Update README, remove empty directory.

14 years agoAdd the missing __main__.py in the turtledemo package. It seems to have been lost...
Georg Brandl [Thu, 30 Dec 2010 22:31:10 +0000 (22:31 +0000)]
Add the missing __main__.py in the turtledemo package.  It seems to have been lost during some mass rename action (r86095).

14 years agoRemove mentions of the Demo directory.
Georg Brandl [Thu, 30 Dec 2010 22:12:40 +0000 (22:12 +0000)]
Remove mentions of the Demo directory.

14 years agoHarmonize docstrings. Move redemo from Tools/scripts to Tools/demo. Add a README...
Georg Brandl [Thu, 30 Dec 2010 22:11:50 +0000 (22:11 +0000)]
Harmonize docstrings.  Move redemo from Tools/scripts to Tools/demo.  Add a README file to Tools/demo.

14 years agoRemove the actual Demo dir.
Georg Brandl [Thu, 30 Dec 2010 21:33:49 +0000 (21:33 +0000)]
Remove the actual Demo dir.

14 years agoMore cleanup: Move some demos into a dedicated Tools/demo dir, move 2to3 demo to...
Georg Brandl [Thu, 30 Dec 2010 21:33:07 +0000 (21:33 +0000)]
More cleanup: Move some demos into a dedicated Tools/demo dir, move 2to3 demo to Tools, and remove all the other Demo content.

14 years agoIssue 10786: unittest.TextTestRunner default stream no longer bound at import time
Michael Foord [Thu, 30 Dec 2010 19:36:29 +0000 (19:36 +0000)]
Issue 10786: unittest.TextTestRunner default stream no longer bound at import time

14 years agoFix NameErrors.
Georg Brandl [Thu, 30 Dec 2010 17:36:17 +0000 (17:36 +0000)]
Fix NameErrors.

14 years agoClean up tools: remove "world" and "framer", move single SSL script to scripts/.
Georg Brandl [Thu, 30 Dec 2010 17:32:22 +0000 (17:32 +0000)]
Clean up tools: remove "world" and "framer", move single SSL script to scripts/.

14 years agoRemove some of the old demos. (Put a few somewhere else.)
Georg Brandl [Thu, 30 Dec 2010 17:22:33 +0000 (17:22 +0000)]
Remove some of the old demos.  (Put a few somewhere else.)

14 years agoBuild and install libpython3.so.
Martin v. Löwis [Thu, 30 Dec 2010 14:55:47 +0000 (14:55 +0000)]
Build and install libpython3.so.

14 years agoIssue #10542: Document that identifiers use XID_Start XID_Continue*.
Martin v. Löwis [Thu, 30 Dec 2010 08:36:37 +0000 (08:36 +0000)]
Issue #10542: Document that identifiers use XID_Start XID_Continue*.

14 years agoFix Issue10793 - hashlib documentation issue on return type of digest
Senthil Kumaran [Thu, 30 Dec 2010 07:07:58 +0000 (07:07 +0000)]
Fix Issue10793 - hashlib documentation issue on return type of digest

14 years agoFix same typo in docs.
R. David Murray [Wed, 29 Dec 2010 19:06:48 +0000 (19:06 +0000)]
Fix same typo in docs.

14 years agoMinor clarification
Terry Reedy [Wed, 29 Dec 2010 19:02:07 +0000 (19:02 +0000)]
Minor clarification

14 years agoFix a comment typo and update another comment to match Python3 reality
R. David Murray [Wed, 29 Dec 2010 16:57:24 +0000 (16:57 +0000)]
Fix a comment typo and update another comment to match Python3 reality

14 years agoFix Issue 10753 - Don't quote ;=, in the PATH_INFO envvar.
Senthil Kumaran [Wed, 29 Dec 2010 06:25:42 +0000 (06:25 +0000)]
Fix Issue 10753 - Don't quote ;=, in the PATH_INFO envvar.

14 years agoIssue #10783: rephrase the changelog (new try)
Victor Stinner [Wed, 29 Dec 2010 02:44:42 +0000 (02:44 +0000)]
Issue #10783: rephrase the changelog (new try)

14 years agoClose stdout, clear ResourceWarning
Brian Curtin [Wed, 29 Dec 2010 02:41:07 +0000 (02:41 +0000)]
Close stdout, clear ResourceWarning

14 years agoFix #9333 on Windows XP, where os.symlink is not a possibility.
Brian Curtin [Wed, 29 Dec 2010 02:04:28 +0000 (02:04 +0000)]
Fix #9333 on Windows XP, where os.symlink is not a possibility.

14 years agoRephrase PyUnicode_CompareWithASCIIString() documentation
Victor Stinner [Tue, 28 Dec 2010 23:39:51 +0000 (23:39 +0000)]
Rephrase PyUnicode_CompareWithASCIIString() documentation

14 years agoIssue #10783: rephrase the changelog (NEWS, What's new)
Victor Stinner [Tue, 28 Dec 2010 23:35:10 +0000 (23:35 +0000)]
Issue #10783: rephrase the changelog (NEWS, What's new)

14 years agoDon't ignore pgen error (on "make Parser/pgen.stamp")
Victor Stinner [Tue, 28 Dec 2010 23:14:17 +0000 (23:14 +0000)]
Don't ignore pgen error (on "make Parser/pgen.stamp")

14 years agoCompile pgenmain.c and printgrammar.c with PGEN defined
Victor Stinner [Tue, 28 Dec 2010 23:05:20 +0000 (23:05 +0000)]
Compile pgenmain.c and printgrammar.c with PGEN defined

14 years agoDoes not install a logging handler. Fixes issue 10626.
Brian Quinlan [Tue, 28 Dec 2010 21:14:34 +0000 (21:14 +0000)]
Does not install a logging handler. Fixes issue 10626.

14 years agoIssue 10738: Fix webbrowser.Opera.raise_opts value.
Terry Reedy [Tue, 28 Dec 2010 19:30:19 +0000 (19:30 +0000)]
Issue 10738: Fix webbrowser.Opera.raise_opts value.

14 years ago#9824: encode , and ; in cookie values so that browsers don't split on them
R. David Murray [Tue, 28 Dec 2010 18:54:13 +0000 (18:54 +0000)]
#9824: encode , and ; in cookie values so that browsers don't split on them

There is a small chance of backward incompatibility here, but only for
non-SimpleCookie applications reading SimpleCookie generated cookies.  Even
then, any such ap is likely to be handling escaped values already, and it would
take a fairly perverse implementation of unescaping to fail to unescape these
newly escaped chars, so the risk seems minimal.

14 years agoAdd sys.flags.quiet attribute for the new -q option, as noted missing by Eric in...
Georg Brandl [Tue, 28 Dec 2010 18:30:18 +0000 (18:30 +0000)]
Add sys.flags.quiet attribute for the new -q option, as noted missing by Eric in #1772833.

14 years agoThis file was obsolted by a number of adjustments to the os.symlink tests
Brian Curtin [Tue, 28 Dec 2010 17:12:43 +0000 (17:12 +0000)]
This file was obsolted by a number of adjustments to the os.symlink tests
on Windows, and is no longer needed by any tests or Lib/test/support.py

14 years agoMinor doc update for #9333. Took out the phrasing about os.symlink not
Brian Curtin [Tue, 28 Dec 2010 17:08:22 +0000 (17:08 +0000)]
Minor doc update for #9333. Took out the phrasing about os.symlink not
existing and mentioned the OSError possibility.

14 years agoFix Issue10759 - html.parser.unescape() fails on HTML entities with incorrect syntax
Senthil Kumaran [Tue, 28 Dec 2010 15:55:16 +0000 (15:55 +0000)]
Fix Issue10759 - html.parser.unescape() fails on HTML entities with incorrect syntax

14 years agoFix #9333. The symlink function is always available now, raising OSError
Brian Curtin [Tue, 28 Dec 2010 14:31:47 +0000 (14:31 +0000)]
Fix #9333. The symlink function is always available now, raising OSError
when the user doesn't hold the symbolic link privilege rather than hiding it.

14 years agoIssue #10783: Fix test_sys, pack('c', ' ') => pack('c', b' ')
Victor Stinner [Tue, 28 Dec 2010 13:33:43 +0000 (13:33 +0000)]
Issue #10783: Fix test_sys, pack('c', ' ') => pack('c', b' ')

14 years agoIssue #10783: struct.pack() doesn't encode implicitly unicode to UTF-8
Victor Stinner [Tue, 28 Dec 2010 13:26:42 +0000 (13:26 +0000)]
Issue #10783: struct.pack() doesn't encode implicitly unicode to UTF-8

 * Replace "bytes" by "bytes object" in struct error messages
 * Document the API change in What's new in Python 3.2
 * Fix test_wave
 * Remove also ugly implicit conversions in test_struct

14 years ago#10609: fix non-working dbm example.
Georg Brandl [Tue, 28 Dec 2010 11:53:25 +0000 (11:53 +0000)]
#10609: fix non-working dbm example.

14 years ago#10739: document that on Windows, socket.makefile() does not make a file that has...
Georg Brandl [Tue, 28 Dec 2010 11:49:41 +0000 (11:49 +0000)]
#10739: document that on Windows, socket.makefile() does not make a file that has a true file descriptor usable where such a thing is expected.

14 years agoRewrap.
Georg Brandl [Tue, 28 Dec 2010 11:48:53 +0000 (11:48 +0000)]
Rewrap.

14 years agoRemove history; adapt a bit more to reST, since this will once be part of the dev...
Georg Brandl [Tue, 28 Dec 2010 11:38:12 +0000 (11:38 +0000)]
Remove history; adapt a bit more to reST, since this will once be part of the dev guide.

14 years ago#10781: clarify that *encoding* is not a parameter for Node objects in general.
Georg Brandl [Tue, 28 Dec 2010 11:15:49 +0000 (11:15 +0000)]
#10781: clarify that *encoding* is not a parameter for Node objects in general.

14 years ago#10742: document readonly attribute of memoryviews.
Georg Brandl [Tue, 28 Dec 2010 11:08:17 +0000 (11:08 +0000)]
#10742: document readonly attribute of memoryviews.

14 years ago#10767: update README in crashers; not all may have a bug entry and/or be fixed.
Georg Brandl [Tue, 28 Dec 2010 11:06:07 +0000 (11:06 +0000)]
#10767: update README in crashers; not all may have a bug entry and/or be fixed.

14 years agoIssue #9738: Fix typo, ASCII-encoding string => ASCII-encoded string
Victor Stinner [Tue, 28 Dec 2010 11:02:46 +0000 (11:02 +0000)]
Issue #9738: Fix typo, ASCII-encoding string => ASCII-encoded string

14 years agoAdd news entry and clarify another.
Georg Brandl [Tue, 28 Dec 2010 11:02:12 +0000 (11:02 +0000)]
Add news entry and clarify another.

14 years ago#10768: fix ScrolledText widget construction, and make the example work from the...
Georg Brandl [Tue, 28 Dec 2010 10:56:20 +0000 (10:56 +0000)]
#10768: fix ScrolledText widget construction, and make the example work from the interactive shell.

14 years ago#10777: fix iteration over dict keys while mutating the dict.
Georg Brandl [Tue, 28 Dec 2010 10:38:33 +0000 (10:38 +0000)]
#10777: fix iteration over dict keys while mutating the dict.

14 years ago#10679: install idle, pydoc, 2to3 scripts with X.Y suffix for make altinstall; create...
Georg Brandl [Tue, 28 Dec 2010 09:51:43 +0000 (09:51 +0000)]
#10679: install idle, pydoc, 2to3 scripts with X.Y suffix for make altinstall; create symlinks for make install.

14 years agoFix advice: call PyType_Ready to fill in ob_type of custom types.
Georg Brandl [Tue, 28 Dec 2010 09:29:19 +0000 (09:29 +0000)]
Fix advice: call PyType_Ready to fill in ob_type of custom types.

14 years agoRemove confusing paragraph -- this is relevant only to advanced users anyway and...
Georg Brandl [Tue, 28 Dec 2010 09:18:24 +0000 (09:18 +0000)]
Remove confusing paragraph -- this is relevant only to advanced users anyway and does not belong into the tutorial.

14 years agoReplace sys.maxint mention by sys.maxsize.
Georg Brandl [Tue, 28 Dec 2010 09:16:12 +0000 (09:16 +0000)]
Replace sys.maxint mention by sys.maxsize.

14 years agoIssue #10780: Remove commas at the end of the argument list
Victor Stinner [Tue, 28 Dec 2010 00:59:03 +0000 (00:59 +0000)]
Issue #10780: Remove commas at the end of the argument list

Forbidden in C, stupid language!

14 years agoIssue #8966: Remove the documentation of ctypes.set_conversion_mode()
Victor Stinner [Tue, 28 Dec 2010 00:59:02 +0000 (00:59 +0000)]
Issue #8966: Remove the documentation of ctypes.set_conversion_mode()

Function removed by r83195.

14 years agoIssue #10780: PyErr_SetFromWindowsErrWithFilename() and
Victor Stinner [Tue, 28 Dec 2010 00:28:21 +0000 (00:28 +0000)]
Issue #10780: PyErr_SetFromWindowsErrWithFilename() and
PyErr_SetExcFromWindowsErrWithFilename() decode the filename from the
filesystem encoding instead of UTF-8.

14 years agoIssue #10778: decoding_fgets() decodes the filename from the filesystem
Victor Stinner [Mon, 27 Dec 2010 20:12:13 +0000 (20:12 +0000)]
Issue #10778: decoding_fgets() decodes the filename from the filesystem
encoding instead of UTF-8.

14 years agoIssue #10779: PyErr_WarnExplicit() decodes the filename from the filesystem
Victor Stinner [Mon, 27 Dec 2010 20:10:36 +0000 (20:10 +0000)]
Issue #10779: PyErr_WarnExplicit() decodes the filename from the filesystem
encoding instead of UTF-8.

14 years ago#7056: runtest and runtest_inner don't use testdir, so drop it from their sigs
R. David Murray [Mon, 27 Dec 2010 20:09:32 +0000 (20:09 +0000)]
#7056: runtest and runtest_inner don't use testdir, so drop it from their sigs

I've only tested regular runs and -j runs.  If I've broken anything
else I'm sure I'll hear about it sooner or later.

14 years agoIssue #10626: test_logging now preserves logger disabled states.
Vinay Sajip [Mon, 27 Dec 2010 18:34:25 +0000 (18:34 +0000)]
Issue #10626: test_logging now preserves logger disabled states.

14 years agoIssue #10626: test_logging now preserves logger disabled states.
Vinay Sajip [Mon, 27 Dec 2010 14:31:52 +0000 (14:31 +0000)]
Issue #10626: test_logging now preserves logger disabled states.

14 years agoIssue #10774: test_logging now removes temp files created during tests.
Vinay Sajip [Mon, 27 Dec 2010 11:18:52 +0000 (11:18 +0000)]
Issue #10774: test_logging now removes temp files created during tests.

14 years agoSkip test that does not raise an error on Windows.
R. David Murray [Mon, 27 Dec 2010 04:31:48 +0000 (04:31 +0000)]
Skip test that does not raise an error on Windows.

I'm assuming that the putative path from the malformed
pth file is simply not found and therefore ignored.

14 years agoIssue #9738: Ooops, fix typos in my previous commit (r87506)
Victor Stinner [Mon, 27 Dec 2010 02:39:20 +0000 (02:39 +0000)]
Issue #9738: Ooops, fix typos in my previous commit (r87506)

14 years agoIssue #9738: Document encodings of AST, compiler, parser and PyRun functions
Victor Stinner [Mon, 27 Dec 2010 01:49:31 +0000 (01:49 +0000)]
Issue #9738: Document encodings of AST, compiler, parser and PyRun functions

14 years agoIssue #9738: document encodings of unicode functions
Victor Stinner [Mon, 27 Dec 2010 01:49:29 +0000 (01:49 +0000)]
Issue #9738: document encodings of unicode functions

14 years agoIssue #9738: Document encodings of error and warning functions
Victor Stinner [Mon, 27 Dec 2010 01:49:26 +0000 (01:49 +0000)]
Issue #9738: Document encodings of error and warning functions

14 years agoEscape file path before searching for it in output via regex
R. David Murray [Mon, 27 Dec 2010 00:03:13 +0000 (00:03 +0000)]
Escape file path before searching for it in output via regex

14 years agoAdded logging documentation cross-references.
Vinay Sajip [Sun, 26 Dec 2010 21:22:33 +0000 (21:22 +0000)]
Added logging documentation cross-references.

14 years ago#5258/#10642: print fn, line, traceback and continue when .pth file is broken
R. David Murray [Sun, 26 Dec 2010 19:54:29 +0000 (19:54 +0000)]
#5258/#10642: print fn, line, traceback and continue when .pth file is broken

If a .pth file contained an error, it could cause a traceback in site.py,
terminating its processing.  In 2.7 and 3.2, the interpreter will then not
start.  Previously, a message would print saying to use -v to get the
traceback.  In either case, the traceback generated for a failed .pth file did
not include the .pth filename, making it difficult to debug the problem.  Now
site.py reports not only the .pth filename but also the line number causing the
error, and just skips the remainder of the file.

14 years agoImproved logging cookbook for logging with multiprocessing.
Vinay Sajip [Sun, 26 Dec 2010 18:47:51 +0000 (18:47 +0000)]
Improved logging cookbook for logging with multiprocessing.

14 years agoFix typo (#10770)
Éric Araujo [Sun, 26 Dec 2010 17:53:27 +0000 (17:53 +0000)]
Fix typo (#10770)

14 years agorevert 87478
Terry Reedy [Sun, 26 Dec 2010 03:48:35 +0000 (03:48 +0000)]
revert 87478

14 years agoRemove unexistent parameter (#3216)
Éric Araujo [Sun, 26 Dec 2010 02:38:05 +0000 (02:38 +0000)]
Remove unexistent parameter (#3216)

14 years agoFix typo spotted by Rodrigo Bernardo Pimentel (#9891)
Éric Araujo [Sun, 26 Dec 2010 02:18:49 +0000 (02:18 +0000)]
Fix typo spotted by Rodrigo Bernardo Pimentel (#9891)

14 years agoIssue #10763: subprocess.communicate() closes stdout and stderr if both are
Victor Stinner [Sat, 25 Dec 2010 22:40:32 +0000 (22:40 +0000)]
Issue #10763: subprocess.communicate() closes stdout and stderr if both are
pipes (bug specific to Windows).

Improve also the unit test: write a portable unit test.