Commit graph

221 commits

Author SHA1 Message Date
Benjamin Peterson
5f78040057 add filename to ENOENT message #4925 2010-11-20 18:07:52 +00:00
Brian Curtin
19a5379c97 Fix a number of ResourceWarnings on Windows due to open pipes. 2010-11-05 17:09:05 +00:00
Brian Curtin
3c6a951cfb Add cleanups to stdout/stderr pipes to remove ResourceWarnings. 2010-11-05 03:58:52 +00:00
Benjamin Peterson
cc221b2411 close some more files 2010-10-31 02:06:21 +00:00
Victor Stinner
f6782ac0b6 test_subprocess: use surrogateescape error handler to write shell scripts
test_args_string() and test_call_string() create shell scripts including the
path to the Python executable: use surrogateescape to encode paths including
surrogate characters.
2010-10-16 23:46:43 +00:00
Victor Stinner
89f3ad10d2 test_subprocess doesn't need to C locale to test os.environb
Improve also the comment to explain why C locale is needed to test os.environ.
2010-10-14 10:43:31 +00:00
Victor Stinner
ebc78d23ef test_subprocess: use C locale to get ascii locale encoding 2010-10-14 10:38:17 +00:00
Victor Stinner
8f6b6b0cc3 Issue #9992: Remove PYTHONFSENCODING environment variable. 2010-10-13 22:02:27 +00:00
Antoine Pitrou
a4024e2dd5 Make _kill_process more robust under Windows too (see issue #8432) 2010-09-24 18:57:01 +00:00
Antoine Pitrou
4a5dd5c576 Merged revisions 84909-84913 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r84909 | antoine.pitrou | 2010-09-20 00:46:05 +0200 (lun., 20 sept. 2010) | 3 lines

  Try to fix test_subprocess on "x86 debian parallel 3.x" buildbot
........
  r84910 | antoine.pitrou | 2010-09-20 01:06:53 +0200 (lun., 20 sept. 2010) | 3 lines

  Try to make signal-sending tests in test_subprocess more robust on slow machines
........
  r84911 | antoine.pitrou | 2010-09-20 01:28:30 +0200 (lun., 20 sept. 2010) | 3 lines

  Make error more explicit in test_finalize_with_trace
........
  r84912 | antoine.pitrou | 2010-09-20 02:12:19 +0200 (lun., 20 sept. 2010) | 3 lines

  Try to fix buildbot failure (#9902)
........
  r84913 | antoine.pitrou | 2010-09-20 03:33:21 +0200 (lun., 20 sept. 2010) | 3 lines

  Try a more robust implementation of _kill_process
........
2010-09-20 11:17:39 +00:00
Antoine Pitrou
3d8580f690 Try a more robust implementation of _kill_process 2010-09-20 01:33:21 +00:00
Antoine Pitrou
84e751a442 Try to fix buildbot failure (#9902) 2010-09-20 00:12:19 +00:00
Antoine Pitrou
fedd481596 Try to make signal-sending tests in test_subprocess more robust on slow machines 2010-09-19 23:06:53 +00:00
Antoine Pitrou
fb8db8f635 Try to fix test_subprocess on "x86 debian parallel 3.x" buildbot 2010-09-19 22:46:05 +00:00
Antoine Pitrou
6fab1f69e2 Merged revisions 84883 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r84883 | antoine.pitrou | 2010-09-19 00:38:48 +0200 (dim., 19 sept. 2010) | 3 lines

  Issue #9895: speed up test_subprocess
........
2010-09-18 22:40:56 +00:00
Antoine Pitrou
8db3027e6a Issue #9895: speed up test_subprocess 2010-09-18 22:38:48 +00:00
Antoine Pitrou
f61045fd15 Merged revisions 84878 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r84878 | antoine.pitrou | 2010-09-18 19:56:02 +0200 (sam., 18 sept. 2010) | 5 lines

  Issue #9894: Do not hardcode ENOENT in test_subprocess.

  (GNU/Hurd is not dead)
........
2010-09-18 18:16:39 +00:00
Antoine Pitrou
679e0f2328 Issue #9894: Do not hardcode ENOENT in test_subprocess.
(GNU/Hurd is not dead)
2010-09-18 17:56:02 +00:00
Brian Curtin
f263c0594c Merged revisions 83983 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r83983 | brian.curtin | 2010-08-13 15:42:57 -0500 (Fri, 13 Aug 2010) | 3 lines

  Fix #9588. Add sys.executable to two shell=True tests.
........
2010-08-13 20:59:27 +00:00
Brian Curtin
d835cf1c84 Fix #9588. Add sys.executable to two shell=True tests. 2010-08-13 20:42:57 +00:00
Tim Golden
595c8d34a3 #2304: fix incorporating Eric Smith's .format suggestion and tested on Ubuntu as well as Windows 2010-08-12 09:45:25 +00:00
Tim Golden
126c2960ca #2304: fix incorporating Eric Smith's .format suggestion and tested on Ubuntu as well as Windows 2010-08-11 14:20:40 +00:00
Benjamin Peterson
a0baf55b2b revert r83831, unix test breakage 2010-08-08 19:17:15 +00:00
Benjamin Peterson
1a0a737b13 revert r83830, breaks tests on unixes 2010-08-08 19:08:44 +00:00
Tim Golden
818afb55c9 Issue #2304: Add additional quotes when using cmd shell on Windows. Original patch from Gabriel Genellina 2010-08-08 16:18:18 +00:00
Tim Golden
e3f76168a9 Issue #2304: Add additional quotes when using cmd shell on Windows. Original patch from Gabriel Genellina 2010-08-08 16:17:48 +00:00
Tim Golden
40b3744efa Issue #3210: Ensure stdio handles are closed if CreateProcess fails 2010-08-06 13:20:12 +00:00
Tim Golden
af5ac3974b Issue #3210: Ensure stdio handles are closed if CreateProcess fails 2010-08-06 13:03:56 +00:00
Antoine Pitrou
62f68ed31f Factor out stripping of interpreter debug output in test.support.strip_python_stderr() 2010-08-04 11:48:56 +00:00
Ronald Oussoren
d7eb3a8d73 Merged revisions 83067 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r83067 | ronald.oussoren | 2010-07-23 10:50:05 +0100 (Fri, 23 Jul 2010) | 8 lines

  Workaround for issue 4047: in some configurations of
  the Crash Reporter on OSX test_subprocess will trigger
  the reporter.

  This patch prints a warning when the Crash Reporter will
  get triggered intentionally, which should avoid confusing
  people.
........
2010-07-23 10:35:20 +00:00
Ronald Oussoren
102d11a6d6 Workaround for issue 4047: in some configurations of
the Crash Reporter on OSX test_subprocess will trigger
the reporter.

This patch prints a warning when the Crash Reporter will
get triggered intentionally, which should avoid confusing
people.
2010-07-23 09:50:05 +00:00
Stefan Krah
8db99c8995 Merged revisions 82971 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r82971 | stefan.krah | 2010-07-19 16:20:53 +0200 (Mon, 19 Jul 2010) | 4 lines

  Issue #9265: Incorrect name passed as arg[0] when shell=True
  and executable specified.
........
2010-07-19 14:39:36 +00:00
Stefan Krah
9542cc6eb5 Issue #9265: Incorrect name passed as arg[0] when shell=True
and executable specified.
2010-07-19 14:20:53 +00:00
Jean-Paul Calderone
2323d20289 Merged revisions 82076 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

................
  r82076 | jean-paul.calderone | 2010-06-18 16:03:54 -0400 (Fri, 18 Jun 2010) | 19 lines

  Merged revisions 82075 via svnmerge from
  svn+ssh://pythondev@svn.python.org/python/trunk

  ........
    r82075 | jean-paul.calderone | 2010-06-18 16:00:17 -0400 (Fri, 18 Jun 2010) | 12 lines

    Revert r60115

    This revision introduced quoting for strings containing | based
    on a misunderstanding of the commonly used quoting rules used
    on Windows.

    | is interpreted by cmd.exe, not by the MS C runtime argv initializer.
    It only needs to be quoted if it is part of an argument passed through
    cmd.exe.

    See issue1300, issue7839, and issue8972.
  ........
................
2010-06-18 20:11:43 +00:00
Jean-Paul Calderone
1ddd4075bf Merged revisions 82075 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r82075 | jean-paul.calderone | 2010-06-18 16:00:17 -0400 (Fri, 18 Jun 2010) | 12 lines

  Revert r60115

  This revision introduced quoting for strings containing | based
  on a misunderstanding of the commonly used quoting rules used
  on Windows.

  | is interpreted by cmd.exe, not by the MS C runtime argv initializer.
  It only needs to be quoted if it is part of an argument passed through
  cmd.exe.

  See issue1300, issue7839, and issue8972.
........
2010-06-18 20:03:54 +00:00
Victor Stinner
86c73bf0fc Issue #8780: Only backport the new test, the fix is not needed
Recorded merge of revisions 81403 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r81403 | victor.stinner | 2010-05-21 22:13:12 +0200 (ven., 21 mai 2010) | 5 lines

  Issue #8780: Fix a regression introduced by r78946 in subprocess on Windows

  Ensure that stdout / stderr is inherited from the parent if stdout=PIPE /
  stderr=PIPE is not used.
........
2010-05-21 20:39:17 +00:00
Victor Stinner
b369358ee4 Issue #8780: Fix a regression introduced by r78946 in subprocess on Windows
Ensure that stdout / stderr is inherited from the parent if stdout=PIPE /
stderr=PIPE is not used.
2010-05-21 20:13:12 +00:00
Victor Stinner
b745a74c99 Issue #8513: os.get_exec_path() supports b'PATH' key and bytes value.
subprocess.Popen() and os._execvpe() support bytes program name. Add
os.supports_bytes_environ flag: True if the native OS type of the environment
is bytes (eg. False on Windows).
2010-05-18 17:17:23 +00:00
Victor Stinner
84ae118006 Issue #8603: Create a bytes version of os.environ for Unix
Create os.environb mapping and os.getenvb() function, os.unsetenv() encodes str
argument to the file system encoding with the surrogateescape error handler
(instead of utf8/strict) and accepts bytes, and posix.environ keys and values
are bytes.
2010-05-06 22:05:07 +00:00
Victor Stinner
097d1b709a test_subprocess: test_undecodable_env() is specific to POSIX system
The bug was introduced by the backport of r80421 (r80494).
2010-04-27 18:29:45 +00:00
Victor Stinner
a27dcb76ee Merged revisions 80421,80424 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/branches/py3k

........
  r80421 | victor.stinner | 2010-04-23 23:41:56 +0200 (ven., 23 avril 2010) | 3 lines

  Issue #8391: os.execvpe() and os.getenv() supports unicode with surrogates and
  bytes strings for environment keys and values
........
  r80424 | victor.stinner | 2010-04-24 00:55:39 +0200 (sam., 24 avril 2010) | 13 lines

  Fix test_undecodable_env of test_subproces for non-ASCII directory

  This test was introduced by r80421 (issue #8391).

  The fix: copy the environment variables instead of starting Python in an empty
  environement. In an empty environment, the locale is C and Python uses ASCII
  for the default file system encoding. The non-ASCII directory will be encoded
  using surrogates, but Python3 is unable to load a module or package with a
  filename using surrogates.

  See issue #8242 for more information about running Python3 with a non-ascii
  directory in an empty environement.
........
2010-04-25 22:39:07 +00:00
Victor Stinner
ce2d24d549 Fix test_undecodable_env of test_subproces for non-ASCII directory
This test was introduced by r80421 (issue #8391).

The fix: copy the environment variables instead of starting Python in an empty
environement. In an empty environment, the locale is C and Python uses ASCII
for the default file system encoding. The non-ASCII directory will be encoded
using surrogates, but Python3 is unable to load a module or package with a
filename using surrogates.

See issue #8242 for more information about running Python3 with a non-ascii
directory in an empty environement.
2010-04-23 22:55:39 +00:00
Victor Stinner
13bb71c38f Issue #8391: os.execvpe() and os.getenv() supports unicode with surrogates and
bytes strings for environment keys and values
2010-04-23 21:41:56 +00:00
Victor Stinner
4d07804660 Issue #8467: Pure Python implementation of subprocess encodes the error message
using surrogatepass error handler to support surrogates in the message
2010-04-23 19:28:32 +00:00
Florent Xicluna
c049d870b5 Merged revisions 79344,79346,79350 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79344 | florent.xicluna | 2010-03-23 15:36:45 +0100 (mar, 23 mar 2010) | 2 lines

  Silence test_subprocess.
........
  r79346 | florent.xicluna | 2010-03-23 16:05:30 +0100 (mar, 23 mar 2010) | 2 lines

  The standard error should be empty when the signal is killed, except on SIGINT.
........
  r79350 | florent.xicluna | 2010-03-23 20:19:16 +0100 (mar, 23 mar 2010) | 2 lines

  The SIGINT signal may happen earlier, during site.py initialization.
........
2010-03-27 22:47:23 +00:00
Gregory P. Smith
32ec9da166 * Fix a refleak when a preexec_fn was supplied (preexec_fn_args_tuple was not
being defref'ed).
* Fixes another potential refleak of a reference to the gc
  module in the unlikely odd case where gc module isenabled or disable calls
  fail.
* Adds a unittest for the above case to verify behavior and lack of leaks.
2010-03-19 16:53:08 +00:00
Gregory P. Smith
fb94c5f1e5 * Replaces the internals of the subprocess module from fork through exec on
POSIX systems with a C extension module.  This is required in order for
  the subprocess module to be made thread safe.

  The pure python implementation is retained so that it can continue to be
  used if for some reason the _posixsubprocess extension module is not
  available.

  The unittest executes tests on both code paths to guarantee compatibility.

* Moves PyLong_FromPid and PyLong_AsPid from posixmodule.c into longobject.h.

Code reviewed by jeffrey.yasskin at http://codereview.appspot.com/223077/show
2010-03-14 06:49:55 +00:00
Florent Xicluna
1d1ab9734a Merged revisions 78833 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78833 | florent.xicluna | 2010-03-11 02:50:48 +0100 (jeu, 11 mar 2010) | 2 lines

  Revert r78830: realpath() should really be applied to sys.executable.
........
2010-03-11 01:53:10 +00:00
Florent Xicluna
ecf021c7c0 Merged revisions 78830 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78830 | florent.xicluna | 2010-03-11 01:56:59 +0100 (jeu, 11 mar 2010) | 3 lines

  Fix the test_subprocess failure when sys.executable is meaningless: '' or a directory.
  It does not fix #7774.
........
2010-03-11 01:00:26 +00:00
Florent Xicluna
4886d246a8 Merged revisions 78736,78759,78761,78767,78788-78789 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78736 | florent.xicluna | 2010-03-06 20:43:41 +0100 (sam, 06 mar 2010) | 2 lines

  Skip test_send_signal, test_kill, test_terminate on win32 platforms, for 2.7a4 release.
........
  r78759 | florent.xicluna | 2010-03-07 13:21:36 +0100 (dim, 07 mar 2010) | 2 lines

  #2777: Enable test_send_signal, test_terminate and test_kill on win32 platforms.
........
  r78761 | florent.xicluna | 2010-03-07 16:27:39 +0100 (dim, 07 mar 2010) | 4 lines

  Do not fail if returncode is 0 on send_signal/kill/terminate, for win32 platforms.
  Do not hide the KeyboardInterrupt on POSIX platforms.
........
  r78767 | florent.xicluna | 2010-03-07 18:12:23 +0100 (dim, 07 mar 2010) | 2 lines

  #2777: Try hard to make Win7 buildbot happy...
........
  r78788 | florent.xicluna | 2010-03-08 11:58:12 +0100 (lun, 08 mar 2010) | 2 lines

  Fix syntax: "rc != None" -> "rc is not None"
........
  r78789 | florent.xicluna | 2010-03-08 11:59:33 +0100 (lun, 08 mar 2010) | 2 lines

  Replace the stderr logging with assertNotEqual(returncode, 0).
........
2010-03-08 13:27:26 +00:00