* Package: dev-python/hgdistver-0.25  * Repository: gentoo  * Maintainer: python@gentoo.org  * USE: abi_x86_64 amd64 elibc_glibc kernel_linux python_targets_python2_7 python_targets_python3_4 test userland_GNU  * FEATURES: preserve-libs sandbox test userpriv usersandbox >>> Unpacking source... >>> Unpacking hgdistver-0.25.tar.gz to /var/tmp/portage/dev-python/hgdistver-0.25/work >>> Source unpacked in /var/tmp/portage/dev-python/hgdistver-0.25/work >>> Preparing source in /var/tmp/portage/dev-python/hgdistver-0.25/work/hgdistver-0.25 ... >>> Source prepared. >>> Configuring source in /var/tmp/portage/dev-python/hgdistver-0.25/work/hgdistver-0.25 ... >>> Source configured. >>> Compiling source in /var/tmp/portage/dev-python/hgdistver-0.25/work/hgdistver-0.25 ... * python2_7: running distutils-r1_run_phase distutils-r1_python_compile /usr/bin/python2.7 setup.py build running build running build_py copying hgdistver.py -> /var/tmp/portage/dev-python/hgdistver-0.25/work/hgdistver-0.25-python2_7/lib warning: build_py: byte-compiling is disabled, skipping. * python3_4: running distutils-r1_run_phase distutils-r1_python_compile /usr/bin/python3.4 setup.py build running build running build_py copying hgdistver.py -> /var/tmp/portage/dev-python/hgdistver-0.25/work/hgdistver-0.25-python3_4/lib warning: build_py: byte-compiling is disabled, skipping. >>> Source compiled. >>> Test phase: dev-python/hgdistver-0.25 * python2_7: running distutils-r1_run_phase python_test ============================= test session starts ============================== platform linux2 -- Python 2.7.10, pytest-2.8.7, py-1.4.30, pluggy-0.3.1 rootdir: /var/tmp/portage/dev-python/hgdistver-0.25/work/hgdistver-0.25, inifile: collected 32 items test_functions.py ..x.....x.....x test_hgdistver.py ........FF....... =================================== FAILURES =================================== ____________________________ test_version_from_git _____________________________ wd = def test_version_from_git(wd): > wd('git init') test_hgdistver.py:99: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ test_hgdistver.py:35: in __call__ do(cmd, str(self.cwd)) hgdistver.py:53: in do out, err, ret = do_ex(cmd, cwd) hgdistver.py:38: in do_ex HGPLAIN='1', /usr/lib64/python2.7/subprocess.py:710: in __init__ errread, errwrite) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , args = ['git', 'init'] executable = 'git', preexec_fn = None, close_fds = False cwd = '/var/tmp/portage/dev-python/hgdistver-0.25/temp/pytest-of-portage/pytest-0/test_version_from_git0' env = {'A': 'hgdistver-0.25.tar.gz', 'ABI': 'amd64', 'ABI_X86': '64', 'ACCEPT_LICENSE': 'MIT', ...} universal_newlines = False, startupinfo = None, creationflags = 0, shell = False to_close = set([8, 12]), p2cread = None, p2cwrite = None, c2pread = 8 c2pwrite = 10, errread = 12, errwrite = 13 def _execute_child(self, args, executable, preexec_fn, close_fds, cwd, env, universal_newlines, startupinfo, creationflags, shell, to_close, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite): """Execute program (POSIX version)""" if isinstance(args, types.StringTypes): args = [args] else: args = list(args) if shell: args = ["/bin/sh", "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] def _close_in_parent(fd): os.close(fd) to_close.remove(fd) # For transferring possible exec failure from child to parent # The first char specifies the exception type: 0 means # OSError, 1 means some other error. errpipe_read, errpipe_write = self.pipe_cloexec() try: try: gc_was_enabled = gc.isenabled() # Disable gc to avoid bug where gc -> file_dealloc -> # write to stderr -> hang. http://bugs.python.org/issue1336 gc.disable() try: self.pid = os.fork() except: if gc_was_enabled: gc.enable() raise self._child_created = True if self.pid == 0: # Child try: # Close parent's pipe ends if p2cwrite is not None: os.close(p2cwrite) if c2pread is not None: os.close(c2pread) if errread is not None: os.close(errread) os.close(errpipe_read) # When duping fds, if there arises a situation # where one of the fds is either 0, 1 or 2, it # is possible that it is overwritten (#12607). if c2pwrite == 0: c2pwrite = os.dup(c2pwrite) if errwrite == 0 or errwrite == 1: errwrite = os.dup(errwrite) # Dup fds for child def _dup2(a, b): # dup2() removes the CLOEXEC flag but # we must do it ourselves if dup2() # would be a no-op (issue #10806). if a == b: self._set_cloexec_flag(a, False) elif a is not None: os.dup2(a, b) _dup2(p2cread, 0) _dup2(c2pwrite, 1) _dup2(errwrite, 2) # Close pipe fds. Make sure we don't close the # same fd more than once, or standard fds. closed = { None } for fd in [p2cread, c2pwrite, errwrite]: if fd not in closed and fd > 2: os.close(fd) closed.add(fd) if cwd is not None: os.chdir(cwd) if preexec_fn: preexec_fn() # Close all other fds, if asked for - after # preexec_fn(), which may open FDs. if close_fds: self._close_fds(but=errpipe_write) if env is None: os.execvp(executable, args) else: os.execvpe(executable, args, env) except: exc_type, exc_value, tb = sys.exc_info() # Save the traceback and attach it to the exception object exc_lines = traceback.format_exception(exc_type, exc_value, tb) exc_value.child_traceback = ''.join(exc_lines) os.write(errpipe_write, pickle.dumps(exc_value)) # This exitcode won't be reported to applications, so it # really doesn't matter what we return. os._exit(255) # Parent if gc_was_enabled: gc.enable() finally: # be sure the FD is closed no matter what os.close(errpipe_write) # Wait for exec to fail or succeed; possibly raising exception # Exception limited to 1M data = _eintr_retry_call(os.read, errpipe_read, 1048576) finally: if p2cread is not None and p2cwrite is not None: _close_in_parent(p2cread) if c2pwrite is not None and c2pread is not None: _close_in_parent(c2pwrite) if errwrite is not None and errread is not None: _close_in_parent(errwrite) # be sure the FD is closed no matter what os.close(errpipe_read) if data != "": try: _eintr_retry_call(os.waitpid, self.pid, 0) except OSError as e: if e.errno != errno.ECHILD: raise child_exception = pickle.loads(data) > raise child_exception E OSError: [Errno 2] No such file or directory /usr/lib64/python2.7/subprocess.py:1335: OSError ----------------------------- Captured stdout call ----------------------------- cmd 'git init' ___________________________ test_version_from_hg_id ____________________________ wd = def test_version_from_hg_id(wd): > wd('hg init') test_hgdistver.py:124: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ test_hgdistver.py:35: in __call__ do(cmd, str(self.cwd)) hgdistver.py:53: in do out, err, ret = do_ex(cmd, cwd) hgdistver.py:38: in do_ex HGPLAIN='1', /usr/lib64/python2.7/subprocess.py:710: in __init__ errread, errwrite) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = , args = ['hg', 'init'] executable = 'hg', preexec_fn = None, close_fds = False cwd = '/var/tmp/portage/dev-python/hgdistver-0.25/temp/pytest-of-portage/pytest-0/test_version_from_hg_id0' env = {'A': 'hgdistver-0.25.tar.gz', 'ABI': 'amd64', 'ABI_X86': '64', 'ACCEPT_LICENSE': 'MIT', ...} universal_newlines = False, startupinfo = None, creationflags = 0, shell = False to_close = set([8, 12]), p2cread = None, p2cwrite = None, c2pread = 8 c2pwrite = 10, errread = 12, errwrite = 13 def _execute_child(self, args, executable, preexec_fn, close_fds, cwd, env, universal_newlines, startupinfo, creationflags, shell, to_close, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite): """Execute program (POSIX version)""" if isinstance(args, types.StringTypes): args = [args] else: args = list(args) if shell: args = ["/bin/sh", "-c"] + args if executable: args[0] = executable if executable is None: executable = args[0] def _close_in_parent(fd): os.close(fd) to_close.remove(fd) # For transferring possible exec failure from child to parent # The first char specifies the exception type: 0 means # OSError, 1 means some other error. errpipe_read, errpipe_write = self.pipe_cloexec() try: try: gc_was_enabled = gc.isenabled() # Disable gc to avoid bug where gc -> file_dealloc -> # write to stderr -> hang. http://bugs.python.org/issue1336 gc.disable() try: self.pid = os.fork() except: if gc_was_enabled: gc.enable() raise self._child_created = True if self.pid == 0: # Child try: # Close parent's pipe ends if p2cwrite is not None: os.close(p2cwrite) if c2pread is not None: os.close(c2pread) if errread is not None: os.close(errread) os.close(errpipe_read) # When duping fds, if there arises a situation # where one of the fds is either 0, 1 or 2, it # is possible that it is overwritten (#12607). if c2pwrite == 0: c2pwrite = os.dup(c2pwrite) if errwrite == 0 or errwrite == 1: errwrite = os.dup(errwrite) # Dup fds for child def _dup2(a, b): # dup2() removes the CLOEXEC flag but # we must do it ourselves if dup2() # would be a no-op (issue #10806). if a == b: self._set_cloexec_flag(a, False) elif a is not None: os.dup2(a, b) _dup2(p2cread, 0) _dup2(c2pwrite, 1) _dup2(errwrite, 2) # Close pipe fds. Make sure we don't close the # same fd more than once, or standard fds. closed = { None } for fd in [p2cread, c2pwrite, errwrite]: if fd not in closed and fd > 2: os.close(fd) closed.add(fd) if cwd is not None: os.chdir(cwd) if preexec_fn: preexec_fn() # Close all other fds, if asked for - after # preexec_fn(), which may open FDs. if close_fds: self._close_fds(but=errpipe_write) if env is None: os.execvp(executable, args) else: os.execvpe(executable, args, env) except: exc_type, exc_value, tb = sys.exc_info() # Save the traceback and attach it to the exception object exc_lines = traceback.format_exception(exc_type, exc_value, tb) exc_value.child_traceback = ''.join(exc_lines) os.write(errpipe_write, pickle.dumps(exc_value)) # This exitcode won't be reported to applications, so it # really doesn't matter what we return. os._exit(255) # Parent if gc_was_enabled: gc.enable() finally: # be sure the FD is closed no matter what os.close(errpipe_write) # Wait for exec to fail or succeed; possibly raising exception # Exception limited to 1M data = _eintr_retry_call(os.read, errpipe_read, 1048576) finally: if p2cread is not None and p2cwrite is not None: _close_in_parent(p2cread) if c2pwrite is not None and c2pread is not None: _close_in_parent(c2pwrite) if errwrite is not None and errread is not None: _close_in_parent(errwrite) # be sure the FD is closed no matter what os.close(errpipe_read) if data != "": try: _eintr_retry_call(os.waitpid, self.pid, 0) except OSError as e: if e.errno != errno.ECHILD: raise child_exception = pickle.loads(data) > raise child_exception E OSError: [Errno 2] No such file or directory /usr/lib64/python2.7/subprocess.py:1335: OSError ----------------------------- Captured stdout call ----------------------------- cmd 'hg init' ================ 2 failed, 27 passed, 3 xfailed in 0.70 seconds ================ * ERROR: dev-python/hgdistver-0.25::gentoo failed (test phase): * Tests failed under python2.7 * * Call stack: * ebuild.sh, line 115: Called src_test * environment, line 3633: Called distutils-r1_src_test * environment, line 959: Called _distutils-r1_run_foreach_impl 'python_test' * environment, line 296: Called python_foreach_impl 'distutils-r1_run_phase' 'python_test' * environment, line 3152: Called multibuild_foreach_variant '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test' * environment, line 2261: Called _multibuild_run '_python_multibuild_wrapper' 'distutils-r1_run_phase' 'python_test' * environment, line 2259: Called _python_multibuild_wrapper 'distutils-r1_run_phase' 'python_test' * environment, line 567: Called distutils-r1_run_phase 'python_test' * environment, line 891: Called python_test * environment, line 3512: Called die * The specific snippet of code: * py.test || die "Tests failed under ${EPYTHON}" * * If you need support, post the output of `emerge --info '=dev-python/hgdistver-0.25::gentoo'`, * the complete build log and the output of `emerge -pqv '=dev-python/hgdistver-0.25::gentoo'`. * The complete build log is located at '/var/tmp/portage/dev-python/hgdistver-0.25/temp/build.log'. * The ebuild environment file is located at '/var/tmp/portage/dev-python/hgdistver-0.25/temp/environment'. * Working directory: '/var/tmp/portage/dev-python/hgdistver-0.25/work/hgdistver-0.25' * S: '/var/tmp/portage/dev-python/hgdistver-0.25/work/hgdistver-0.25'