old_contents: """
  Python 2.6 doesn't provide subprocess.check_output or subprocess.check_call
  """
  
  from subprocess import *
  
  try:
      check_output
  except NameError:
      # Copyright (c) 2003-2005 by Peter Astrand <astrand@lysator.liu.se>
      #
      # Licensed to PSF under a Contributor Agreement.
      # See http://www.python.org/2.4/license for licensing details.
  
      def check_output(*popenargs, **kwargs):
          r"""Run command with arguments and return its output as a byte string.
  
          If the exit code was non-zero it raises a CalledProcessError.  The
          CalledProcessError object will have the return code in the returncode
          attribute and output in the output attribute.
  
          The arguments are the same as for the Popen constructor.  Example:
  
          >>> check_output(["ls", "-l", "/dev/null"])
          'crw-rw-rw- 1 root root 1, 3 Oct 18  2007 /dev/null\n'
  
          The stdout argument is not allowed as it is used internally.
          To capture standard error in the result, use stderr=STDOUT.
  
          >>> check_output(["/bin/sh", "-c",
          ...               "ls -l non_existent_file ; exit 0"],
          ...              stderr=STDOUT)
          'ls: non_existent_file: No such file or directory\n'
          """
          if 'stdout' in kwargs:
              raise ValueError('stdout argument not allowed, it will be overridden.')
          process = Popen(stdout=PIPE, *popenargs, **kwargs)
          output, unused_err = process.communicate()
          retcode = process.poll()
          if retcode:
              cmd = kwargs.get("args")
              if cmd is None:
                  cmd = popenargs[0]
              raise CalledProcessError(retcode, cmd, output=output)
          return output
  
      def check_call(*popenargs, **kwargs):
          """Run command with arguments.  Wait for command to complete.  If
          the exit code was zero then return, otherwise raise
          CalledProcessError.  The CalledProcessError object will have the
          return code in the returncode attribute.
  
          The arguments are the same as for the Popen constructor.  Example:
  
          check_call(["ls", "-l"])
          """
          retcode = call(*popenargs, **kwargs)
          if retcode:
              cmd = kwargs.get("args")
              if cmd is None:
                  cmd = popenargs[0]
              raise CalledProcessError(retcode, cmd)
          return 0
  
new_contents: """
  Python 2.6 doesn't provide subprocess.check_output or subprocess.check_call
  """
  
  from subprocess import *
  
  try:
      check_output
  except NameError:
      # Copyright (c) 2003-2005 by Peter Astrand <astrand@lysator.liu.se>
      #
      # Licensed to PSF under a Contributor Agreement.
      # See http://www.python.org/2.4/license for licensing details.
  
      def check_output(*popenargs, **kwargs):
          r"""Run command with arguments and return its output as a byte string.
  
          If the exit code was non-zero it raises a CalledProcessError.  The
          CalledProcessError object will have the return code in the returncode
          attribute and output in the output attribute.
  
          The arguments are the same as for the Popen constructor.  Example:
  
          >>> check_output(["ls", "-l", "/dev/null"])  # doctest:+ELLIPSIS
          'crw-rw-rw- 1 root root 1, 3 ... /dev/null\n'
  
          The stdout argument is not allowed as it is used internally.
          To capture standard error in the result, use stderr=STDOUT.
  
          >>> check_output(["/bin/sh", "-c",
          ...               "ls -l non_existent_file ; exit 0"],
          ...              stderr=STDOUT)  # doctest:+ELLIPSIS
          'ls: ... non_existent_file: No such file or directory\n'
          """
          if 'stdout' in kwargs:
              raise ValueError('stdout argument not allowed, it will be overridden.')
          process = Popen(stdout=PIPE, *popenargs, **kwargs)
          output, unused_err = process.communicate()
          retcode = process.poll()
          if retcode:
              cmd = kwargs.get("args")
              if cmd is None:
                  cmd = popenargs[0]
              raise CalledProcessError(retcode, cmd, output=output)
          return output
  
      def check_call(*popenargs, **kwargs):
          """Run command with arguments.  Wait for command to complete.  If
          the exit code was zero then return, otherwise raise
          CalledProcessError.  The CalledProcessError object will have the
          return code in the returncode attribute.
  
          The arguments are the same as for the Popen constructor.  Example:
  
          check_call(["ls", "-l"])
          """
          retcode = call(*popenargs, **kwargs)
          if retcode:
              cmd = kwargs.get("args")
              if cmd is None:
                  cmd = popenargs[0]
              raise CalledProcessError(retcode, cmd)
          return 0
  
subject: Fix the doctests for subprocess_compat