Rebase to 1.5 (rhbz#701121)
Update patches: patch 0: pypy-1.4-config.patch -> pypy-1.5-config.patch patch 4: pypy-1.4.1-more-readable-c-code.patch -> pypy-1.5-more-readable-c-code.patch Remove references to *.inl files, no longer present Add the following tests to the skip list: test_audioop, test_capi, test_distutils, test_gc, test_gdb, test_generators, test_getargs2, test_hotshot, test_io, test_multiprocessing, test_posix, test_readline, test_scope, test_strop, test_structmembers, test_subprocess, test_symtable, test_sys_settrace, test_tempfile, test_thread, test_uuid, test_zipimport_support Add a couple of text files to the payload (TODO, stdlib-version.txt)
This commit is contained in:
parent
3ca83f1944
commit
169de85aca
1
.gitignore
vendored
1
.gitignore
vendored
@ -1 +1,2 @@
|
|||||||
/pypy-1.4.1-src.tar.bz2
|
/pypy-1.4.1-src.tar.bz2
|
||||||
|
/pypy-1.5-src.tar.bz2
|
||||||
|
@ -1,9 +1,10 @@
|
|||||||
Index: pypy-1.4/pypy/translator/platform/linux.py
|
diff -up pypy-1.5-src/pypy/translator/platform/linux.py.configure-fedora pypy-1.5-src/pypy/translator/platform/linux.py
|
||||||
===================================================================
|
--- pypy-1.5-src/pypy/translator/platform/linux.py.configure-fedora 2011-04-30 10:18:50.000000000 -0400
|
||||||
--- pypy-1.4.orig/pypy/translator/platform/linux.py
|
+++ pypy-1.5-src/pypy/translator/platform/linux.py 2011-04-30 18:59:24.041160978 -0400
|
||||||
+++ pypy-1.4/pypy/translator/platform/linux.py
|
@@ -1,13 +1,18 @@
|
||||||
@@ -3,17 +3,22 @@ import py, os
|
"""Support for Linux."""
|
||||||
from pypy.translator.platform import _run_subprocess
|
-
|
||||||
|
+import os
|
||||||
from pypy.translator.platform.posix import BasePosix
|
from pypy.translator.platform.posix import BasePosix
|
||||||
|
|
||||||
+CFLAGS = ['-O3', '-pthread', '-fomit-frame-pointer',
|
+CFLAGS = ['-O3', '-pthread', '-fomit-frame-pointer',
|
||||||
@ -22,16 +23,10 @@ Index: pypy-1.4/pypy/translator/platform/linux.py
|
|||||||
standalone_only = ()
|
standalone_only = ()
|
||||||
shared_only = ('-fPIC',)
|
shared_only = ('-fPIC',)
|
||||||
so_ext = 'so'
|
so_ext = 'so'
|
||||||
so_prefixes = ('lib', '')
|
@@ -29,9 +34,10 @@ class Linux(BaseLinux):
|
||||||
-
|
|
||||||
+
|
|
||||||
def _args_for_shared(self, args):
|
|
||||||
return ['-shared'] + args
|
|
||||||
|
|
||||||
@@ -29,9 +34,10 @@ class BaseLinux(BasePosix):
|
|
||||||
class Linux(BaseLinux):
|
|
||||||
shared_only = () # it seems that on 32-bit linux, compiling with -fPIC
|
shared_only = () # it seems that on 32-bit linux, compiling with -fPIC
|
||||||
# gives assembler that asmgcc is not happy about.
|
# gives assembler that asmgcc is not happy about.
|
||||||
|
|
||||||
- def library_dirs_for_libffi_a(self):
|
- def library_dirs_for_libffi_a(self):
|
||||||
- # places where we need to look for libffi.a
|
- # places where we need to look for libffi.a
|
||||||
- return self.library_dirs_for_libffi() + ['/usr/lib']
|
- return self.library_dirs_for_libffi() + ['/usr/lib']
|
@ -1,7 +1,7 @@
|
|||||||
diff -r cd083843b67a pypy/interpreter/pycode.py
|
diff -up pypy-1.5-src/pypy/interpreter/pycode.py.more-readable-c-code pypy-1.5-src/pypy/interpreter/pycode.py
|
||||||
--- a/pypy/interpreter/pycode.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/interpreter/pycode.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/interpreter/pycode.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/interpreter/pycode.py 2011-05-02 14:28:33.942161002 -0400
|
||||||
@@ -14,6 +14,7 @@
|
@@ -13,6 +13,7 @@ from pypy.interpreter.gateway import Non
|
||||||
from pypy.interpreter.astcompiler.consts import (CO_OPTIMIZED,
|
from pypy.interpreter.astcompiler.consts import (CO_OPTIMIZED,
|
||||||
CO_OPTIMIZED, CO_NEWLOCALS, CO_VARARGS, CO_VARKEYWORDS, CO_NESTED,
|
CO_OPTIMIZED, CO_NEWLOCALS, CO_VARARGS, CO_VARKEYWORDS, CO_NESTED,
|
||||||
CO_GENERATOR, CO_CONTAINSGLOBALS)
|
CO_GENERATOR, CO_CONTAINSGLOBALS)
|
||||||
@ -9,7 +9,7 @@ diff -r cd083843b67a pypy/interpreter/pycode.py
|
|||||||
from pypy.rlib.rarithmetic import intmask
|
from pypy.rlib.rarithmetic import intmask
|
||||||
from pypy.rlib.debug import make_sure_not_resized
|
from pypy.rlib.debug import make_sure_not_resized
|
||||||
from pypy.rlib import jit
|
from pypy.rlib import jit
|
||||||
@@ -81,6 +82,7 @@
|
@@ -80,6 +81,7 @@ class PyCode(eval.Code):
|
||||||
self.hidden_applevel = hidden_applevel
|
self.hidden_applevel = hidden_applevel
|
||||||
self.magic = magic
|
self.magic = magic
|
||||||
self._signature = cpython_code_signature(self)
|
self._signature = cpython_code_signature(self)
|
||||||
@ -17,10 +17,10 @@ diff -r cd083843b67a pypy/interpreter/pycode.py
|
|||||||
self._initialize()
|
self._initialize()
|
||||||
|
|
||||||
def _initialize(self):
|
def _initialize(self):
|
||||||
@@ -403,3 +405,25 @@
|
@@ -396,3 +398,23 @@ class PyCode(eval.Code):
|
||||||
|
|
||||||
def repr(self, space):
|
def repr(self, space):
|
||||||
return space.wrap(self.get_repr())
|
return space.wrap(self.get_repr())
|
||||||
repr.unwrap_spec = ['self', ObjSpace]
|
|
||||||
+
|
+
|
||||||
+ def get_linenum_for_offset(self, offset):
|
+ def get_linenum_for_offset(self, offset):
|
||||||
+ # Given a bytecode offset, return a 1-based index into the lines of the
|
+ # Given a bytecode offset, return a 1-based index into the lines of the
|
||||||
@ -41,12 +41,10 @@ diff -r cd083843b67a pypy/interpreter/pycode.py
|
|||||||
+ # raise an IOError)
|
+ # raise an IOError)
|
||||||
+ self._ensure_source()
|
+ self._ensure_source()
|
||||||
+ return self._cached_source[linenum - 1]
|
+ return self._cached_source[linenum - 1]
|
||||||
+
|
diff -up pypy-1.5-src/pypy/objspace/flow/model.py.more-readable-c-code pypy-1.5-src/pypy/objspace/flow/model.py
|
||||||
+
|
--- pypy-1.5-src/pypy/objspace/flow/model.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
diff -r cd083843b67a pypy/objspace/flow/model.py
|
+++ pypy-1.5-src/pypy/objspace/flow/model.py 2011-05-02 14:28:33.942161002 -0400
|
||||||
--- a/pypy/objspace/flow/model.py Mon Dec 20 17:17:45 2010 +0100
|
@@ -31,6 +31,120 @@ from pypy.tool.identity_dict import iden
|
||||||
+++ b/pypy/objspace/flow/model.py Wed Jan 05 16:14:35 2011 -0500
|
|
||||||
@@ -31,6 +31,120 @@
|
|
||||||
|
|
||||||
__metaclass__ = type
|
__metaclass__ = type
|
||||||
|
|
||||||
@ -167,7 +165,7 @@ diff -r cd083843b67a pypy/objspace/flow/model.py
|
|||||||
|
|
||||||
class FunctionGraph(object):
|
class FunctionGraph(object):
|
||||||
__slots__ = ['startblock', 'returnblock', 'exceptblock', '__dict__']
|
__slots__ = ['startblock', 'returnblock', 'exceptblock', '__dict__']
|
||||||
@@ -94,6 +208,21 @@
|
@@ -94,6 +208,21 @@ class FunctionGraph(object):
|
||||||
seen[block] = True
|
seen[block] = True
|
||||||
stack += block.exits[::-1]
|
stack += block.exits[::-1]
|
||||||
|
|
||||||
@ -189,7 +187,7 @@ diff -r cd083843b67a pypy/objspace/flow/model.py
|
|||||||
def iterlinks(self):
|
def iterlinks(self):
|
||||||
block = self.startblock
|
block = self.startblock
|
||||||
seen = {block: True}
|
seen = {block: True}
|
||||||
@@ -183,14 +312,14 @@
|
@@ -183,14 +312,14 @@ class Block(object):
|
||||||
self.exits = [] # list of Link(s)
|
self.exits = [] # list of Link(s)
|
||||||
|
|
||||||
def at(self):
|
def at(self):
|
||||||
@ -207,7 +205,7 @@ diff -r cd083843b67a pypy/objspace/flow/model.py
|
|||||||
else:
|
else:
|
||||||
if (not self.exits) and len(self.inputargs) == 1:
|
if (not self.exits) and len(self.inputargs) == 1:
|
||||||
txt = "return block"
|
txt = "return block"
|
||||||
@@ -245,6 +374,21 @@
|
@@ -245,6 +374,21 @@ class Block(object):
|
||||||
from pypy.translator.tool.graphpage import try_show
|
from pypy.translator.tool.graphpage import try_show
|
||||||
try_show(self)
|
try_show(self)
|
||||||
|
|
||||||
@ -229,7 +227,7 @@ diff -r cd083843b67a pypy/objspace/flow/model.py
|
|||||||
|
|
||||||
class Variable(object):
|
class Variable(object):
|
||||||
__slots__ = ["_name", "_nr", "concretetype"]
|
__slots__ = ["_name", "_nr", "concretetype"]
|
||||||
@@ -331,13 +475,15 @@
|
@@ -331,13 +475,15 @@ class WrapException(Exception):
|
||||||
|
|
||||||
|
|
||||||
class SpaceOperation(object):
|
class SpaceOperation(object):
|
||||||
@ -248,7 +246,7 @@ diff -r cd083843b67a pypy/objspace/flow/model.py
|
|||||||
|
|
||||||
def __eq__(self, other):
|
def __eq__(self, other):
|
||||||
return (self.__class__ is other.__class__ and
|
return (self.__class__ is other.__class__ and
|
||||||
@@ -352,8 +498,9 @@
|
@@ -352,8 +498,9 @@ class SpaceOperation(object):
|
||||||
return hash((self.opname,tuple(self.args),self.result))
|
return hash((self.opname,tuple(self.args),self.result))
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
@ -260,7 +258,7 @@ diff -r cd083843b67a pypy/objspace/flow/model.py
|
|||||||
|
|
||||||
class Atom(object):
|
class Atom(object):
|
||||||
def __init__(self, name):
|
def __init__(self, name):
|
||||||
@@ -448,8 +595,7 @@
|
@@ -427,8 +574,7 @@ def copygraph(graph, shallow=False, varm
|
||||||
for op in oplist:
|
for op in oplist:
|
||||||
copyop = SpaceOperation(op.opname,
|
copyop = SpaceOperation(op.opname,
|
||||||
[copyvar(v) for v in op.args],
|
[copyvar(v) for v in op.args],
|
||||||
@ -270,10 +268,10 @@ diff -r cd083843b67a pypy/objspace/flow/model.py
|
|||||||
result.append(copyop)
|
result.append(copyop)
|
||||||
return result
|
return result
|
||||||
newblock.operations = copyoplist(block.operations)
|
newblock.operations = copyoplist(block.operations)
|
||||||
diff -r cd083843b67a pypy/objspace/flow/objspace.py
|
diff -up pypy-1.5-src/pypy/objspace/flow/objspace.py.more-readable-c-code pypy-1.5-src/pypy/objspace/flow/objspace.py
|
||||||
--- a/pypy/objspace/flow/objspace.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/objspace/flow/objspace.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/objspace/flow/objspace.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/objspace/flow/objspace.py 2011-05-02 14:28:33.943161001 -0400
|
||||||
@@ -310,7 +310,9 @@
|
@@ -313,7 +313,9 @@ class FlowObjSpace(ObjSpace):
|
||||||
def do_operation(self, name, *args_w):
|
def do_operation(self, name, *args_w):
|
||||||
spaceop = SpaceOperation(name, args_w, Variable())
|
spaceop = SpaceOperation(name, args_w, Variable())
|
||||||
if hasattr(self, 'executioncontext'): # not here during bootstrapping
|
if hasattr(self, 'executioncontext'): # not here during bootstrapping
|
||||||
@ -284,10 +282,10 @@ diff -r cd083843b67a pypy/objspace/flow/objspace.py
|
|||||||
self.executioncontext.recorder.append(spaceop)
|
self.executioncontext.recorder.append(spaceop)
|
||||||
return spaceop.result
|
return spaceop.result
|
||||||
|
|
||||||
diff -r cd083843b67a pypy/objspace/flow/test/test_model.py
|
diff -up pypy-1.5-src/pypy/objspace/flow/test/test_model.py.more-readable-c-code pypy-1.5-src/pypy/objspace/flow/test/test_model.py
|
||||||
--- a/pypy/objspace/flow/test/test_model.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/objspace/flow/test/test_model.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/objspace/flow/test/test_model.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/objspace/flow/test/test_model.py 2011-05-02 14:28:33.943161001 -0400
|
||||||
@@ -132,3 +132,25 @@
|
@@ -119,3 +119,25 @@ def test_variable():
|
||||||
assert v2.renamed
|
assert v2.renamed
|
||||||
assert v2.name.startswith("foobar_") and v2.name != v.name
|
assert v2.name.startswith("foobar_") and v2.name != v.name
|
||||||
assert v2.name.split('_', 1)[1].isdigit()
|
assert v2.name.split('_', 1)[1].isdigit()
|
||||||
@ -313,10 +311,10 @@ diff -r cd083843b67a pypy/objspace/flow/test/test_model.py
|
|||||||
+ assert cmp(oplocA, oplocB) < 0
|
+ assert cmp(oplocA, oplocB) < 0
|
||||||
+ assert cmp(oplocB, oplocA) > 0
|
+ assert cmp(oplocB, oplocA) > 0
|
||||||
+
|
+
|
||||||
diff -r cd083843b67a pypy/rpython/rtyper.py
|
diff -up pypy-1.5-src/pypy/rpython/rtyper.py.more-readable-c-code pypy-1.5-src/pypy/rpython/rtyper.py
|
||||||
--- a/pypy/rpython/rtyper.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/rpython/rtyper.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/rpython/rtyper.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/rpython/rtyper.py 2011-05-02 14:28:33.943161001 -0400
|
||||||
@@ -800,7 +800,7 @@
|
@@ -800,7 +800,7 @@ class HighLevelOp(object):
|
||||||
return vars
|
return vars
|
||||||
|
|
||||||
def genop(self, opname, args_v, resulttype=None):
|
def genop(self, opname, args_v, resulttype=None):
|
||||||
@ -325,7 +323,7 @@ diff -r cd083843b67a pypy/rpython/rtyper.py
|
|||||||
|
|
||||||
def gendirectcall(self, ll_function, *args_v):
|
def gendirectcall(self, ll_function, *args_v):
|
||||||
return self.llops.gendirectcall(ll_function, *args_v)
|
return self.llops.gendirectcall(ll_function, *args_v)
|
||||||
@@ -935,7 +935,7 @@
|
@@ -935,7 +935,7 @@ class LowLevelOpList(list):
|
||||||
v.concretetype))
|
v.concretetype))
|
||||||
return v
|
return v
|
||||||
|
|
||||||
@ -334,7 +332,7 @@ diff -r cd083843b67a pypy/rpython/rtyper.py
|
|||||||
try:
|
try:
|
||||||
for v in args_v:
|
for v in args_v:
|
||||||
v.concretetype
|
v.concretetype
|
||||||
@@ -944,7 +944,7 @@
|
@@ -944,7 +944,7 @@ class LowLevelOpList(list):
|
||||||
" and pass its result to genop(),"
|
" and pass its result to genop(),"
|
||||||
" never hop.args_v directly.")
|
" never hop.args_v directly.")
|
||||||
vresult = Variable()
|
vresult = Variable()
|
||||||
@ -343,18 +341,18 @@ diff -r cd083843b67a pypy/rpython/rtyper.py
|
|||||||
if resulttype is None:
|
if resulttype is None:
|
||||||
vresult.concretetype = Void
|
vresult.concretetype = Void
|
||||||
return None
|
return None
|
||||||
diff -r cd083843b67a pypy/translator/backendopt/inline.py
|
diff -up pypy-1.5-src/pypy/translator/backendopt/inline.py.more-readable-c-code pypy-1.5-src/pypy/translator/backendopt/inline.py
|
||||||
--- a/pypy/translator/backendopt/inline.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/translator/backendopt/inline.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/translator/backendopt/inline.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/translator/backendopt/inline.py 2011-05-02 14:32:26.975161005 -0400
|
||||||
@@ -4,6 +4,7 @@
|
@@ -4,6 +4,7 @@ from pypy.translator.simplify import get
|
||||||
from pypy.translator.unsimplify import copyvar
|
from pypy.translator.unsimplify import copyvar
|
||||||
from pypy.objspace.flow.model import Variable, Constant, Block, Link
|
from pypy.objspace.flow.model import Variable, Constant, Block, Link
|
||||||
from pypy.objspace.flow.model import SpaceOperation, c_last_exception
|
from pypy.objspace.flow.model import SpaceOperation, c_last_exception
|
||||||
+from pypy.objspace.flow.model import OperationLoc
|
+from pypy.objspace.flow.model import OperationLoc
|
||||||
from pypy.objspace.flow.model import FunctionGraph
|
from pypy.objspace.flow.model import FunctionGraph
|
||||||
from pypy.objspace.flow.model import traverse, mkentrymap, checkgraph
|
from pypy.objspace.flow.model import mkentrymap, checkgraph
|
||||||
from pypy.annotation import model as annmodel
|
from pypy.annotation import model as annmodel
|
||||||
@@ -231,6 +232,7 @@
|
@@ -231,6 +232,7 @@ class BaseInliner(object):
|
||||||
self.varmap = {}
|
self.varmap = {}
|
||||||
self._copied_blocks = {}
|
self._copied_blocks = {}
|
||||||
self.op = block.operations[index_operation]
|
self.op = block.operations[index_operation]
|
||||||
@ -362,7 +360,7 @@ diff -r cd083843b67a pypy/translator/backendopt/inline.py
|
|||||||
self.graph_to_inline = self.get_graph_from_op(self.op)
|
self.graph_to_inline = self.get_graph_from_op(self.op)
|
||||||
self.exception_guarded = False
|
self.exception_guarded = False
|
||||||
if (block.exitswitch == c_last_exception and
|
if (block.exitswitch == c_last_exception and
|
||||||
@@ -297,7 +299,9 @@
|
@@ -290,7 +292,9 @@ class BaseInliner(object):
|
||||||
|
|
||||||
def copy_operation(self, op):
|
def copy_operation(self, op):
|
||||||
args = [self.get_new_name(arg) for arg in op.args]
|
args = [self.get_new_name(arg) for arg in op.args]
|
||||||
@ -373,9 +371,9 @@ diff -r cd083843b67a pypy/translator/backendopt/inline.py
|
|||||||
return result
|
return result
|
||||||
|
|
||||||
def copy_block(self, block):
|
def copy_block(self, block):
|
||||||
diff -r cd083843b67a pypy/translator/c/funcgen.py
|
diff -up pypy-1.5-src/pypy/translator/c/funcgen.py.more-readable-c-code pypy-1.5-src/pypy/translator/c/funcgen.py
|
||||||
--- a/pypy/translator/c/funcgen.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/translator/c/funcgen.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/translator/c/funcgen.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/translator/c/funcgen.py 2011-05-02 14:28:33.944161001 -0400
|
||||||
@@ -1,4 +1,6 @@
|
@@ -1,4 +1,6 @@
|
||||||
import sys
|
import sys
|
||||||
+import inspect
|
+import inspect
|
||||||
@ -383,7 +381,7 @@ diff -r cd083843b67a pypy/translator/c/funcgen.py
|
|||||||
from pypy.translator.c.support import USESLOTS # set to False if necessary while refactoring
|
from pypy.translator.c.support import USESLOTS # set to False if necessary while refactoring
|
||||||
from pypy.translator.c.support import cdecl
|
from pypy.translator.c.support import cdecl
|
||||||
from pypy.translator.c.support import llvalue_from_constant, gen_assignments
|
from pypy.translator.c.support import llvalue_from_constant, gen_assignments
|
||||||
@@ -22,6 +24,38 @@
|
@@ -22,6 +24,38 @@ LOCALVAR = 'l_%s'
|
||||||
|
|
||||||
KEEP_INLINED_GRAPHS = False
|
KEEP_INLINED_GRAPHS = False
|
||||||
|
|
||||||
@ -422,7 +420,7 @@ diff -r cd083843b67a pypy/translator/c/funcgen.py
|
|||||||
class FunctionCodeGenerator(object):
|
class FunctionCodeGenerator(object):
|
||||||
"""
|
"""
|
||||||
Collects information about a function which we have to generate
|
Collects information about a function which we have to generate
|
||||||
@@ -210,14 +244,57 @@
|
@@ -210,14 +244,57 @@ class FunctionCodeGenerator(object):
|
||||||
|
|
||||||
def cfunction_body(self):
|
def cfunction_body(self):
|
||||||
graph = self.graph
|
graph = self.graph
|
||||||
@ -483,7 +481,7 @@ diff -r cd083843b67a pypy/translator/c/funcgen.py
|
|||||||
for line in self.gen_op(op):
|
for line in self.gen_op(op):
|
||||||
yield line
|
yield line
|
||||||
if len(block.exits) == 0:
|
if len(block.exits) == 0:
|
||||||
@@ -310,7 +387,7 @@
|
@@ -309,7 +386,7 @@ class FunctionCodeGenerator(object):
|
||||||
assignments.append((a2typename, dest, src))
|
assignments.append((a2typename, dest, src))
|
||||||
for line in gen_assignments(assignments):
|
for line in gen_assignments(assignments):
|
||||||
yield line
|
yield line
|
||||||
@ -492,16 +490,16 @@ diff -r cd083843b67a pypy/translator/c/funcgen.py
|
|||||||
if link.target in self.innerloops:
|
if link.target in self.innerloops:
|
||||||
loop = self.innerloops[link.target]
|
loop = self.innerloops[link.target]
|
||||||
if link is loop.links[-1]: # link that ends a loop
|
if link is loop.links[-1]: # link that ends a loop
|
||||||
diff -r cd083843b67a pypy/translator/c/test/test_genc.py
|
diff -up pypy-1.5-src/pypy/translator/c/test/test_genc.py.more-readable-c-code pypy-1.5-src/pypy/translator/c/test/test_genc.py
|
||||||
--- a/pypy/translator/c/test/test_genc.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/translator/c/test/test_genc.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/translator/c/test/test_genc.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/translator/c/test/test_genc.py 2011-05-02 14:28:33.945161001 -0400
|
||||||
@@ -1,4 +1,5 @@
|
@@ -1,4 +1,5 @@
|
||||||
import autopath, sys, os, py
|
import autopath, sys, os, py
|
||||||
+import re
|
+import re
|
||||||
from pypy.rpython.lltypesystem.lltype import *
|
from pypy.rpython.lltypesystem.lltype import *
|
||||||
from pypy.annotation import model as annmodel
|
from pypy.annotation import model as annmodel
|
||||||
from pypy.translator.translator import TranslationContext
|
from pypy.translator.translator import TranslationContext
|
||||||
@@ -498,3 +499,130 @@
|
@@ -515,3 +516,130 @@ def test_inhibit_tail_call():
|
||||||
else:
|
else:
|
||||||
assert 0, "the call was not found in the C source"
|
assert 0, "the call was not found in the C source"
|
||||||
assert 'PYPY_INHIBIT_TAIL_CALL();' in lines[i+1]
|
assert 'PYPY_INHIBIT_TAIL_CALL();' in lines[i+1]
|
||||||
@ -632,10 +630,10 @@ diff -r cd083843b67a pypy/translator/c/test/test_genc.py
|
|||||||
+ assert 'Here is a ' in c_fn_src
|
+ assert 'Here is a ' in c_fn_src
|
||||||
+ assert 'style comment within an RPython docstring' in c_fn_src
|
+ assert 'style comment within an RPython docstring' in c_fn_src
|
||||||
+
|
+
|
||||||
diff -r cd083843b67a pypy/translator/driver.py
|
diff -up pypy-1.5-src/pypy/translator/driver.py.more-readable-c-code pypy-1.5-src/pypy/translator/driver.py
|
||||||
--- a/pypy/translator/driver.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/translator/driver.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/translator/driver.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/translator/driver.py 2011-05-02 14:28:33.945161001 -0400
|
||||||
@@ -539,6 +539,7 @@
|
@@ -536,6 +536,7 @@ class TranslationDriver(SimpleTaskEngine
|
||||||
dstname = self.compute_exe_name() + '.staticdata.info'
|
dstname = self.compute_exe_name() + '.staticdata.info'
|
||||||
shutil.copy(str(fname), str(dstname))
|
shutil.copy(str(fname), str(dstname))
|
||||||
self.log.info('Static data info written to %s' % dstname)
|
self.log.info('Static data info written to %s' % dstname)
|
||||||
@ -643,12 +641,12 @@ diff -r cd083843b67a pypy/translator/driver.py
|
|||||||
|
|
||||||
#
|
#
|
||||||
task_source_c = taskdef(task_source_c, ['database_c'], "Generating c source")
|
task_source_c = taskdef(task_source_c, ['database_c'], "Generating c source")
|
||||||
diff -r cd083843b67a pypy/translator/gensupp.py
|
diff -up pypy-1.5-src/pypy/translator/gensupp.py.more-readable-c-code pypy-1.5-src/pypy/translator/gensupp.py
|
||||||
--- a/pypy/translator/gensupp.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/translator/gensupp.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/translator/gensupp.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/translator/gensupp.py 2011-05-02 14:33:31.026161001 -0400
|
||||||
@@ -16,8 +16,8 @@
|
@@ -14,8 +14,8 @@ def ordered_blocks(graph):
|
||||||
def visit(block):
|
allblocks = []
|
||||||
if isinstance(block, Block):
|
for block in graph.iterblocks():
|
||||||
# first we order by offset in the code string
|
# first we order by offset in the code string
|
||||||
- if block.operations:
|
- if block.operations:
|
||||||
- ofs = block.operations[0].offset
|
- ofs = block.operations[0].offset
|
||||||
@ -657,10 +655,10 @@ diff -r cd083843b67a pypy/translator/gensupp.py
|
|||||||
else:
|
else:
|
||||||
ofs = sys.maxint
|
ofs = sys.maxint
|
||||||
# then we order by input variable name or value
|
# then we order by input variable name or value
|
||||||
diff -r cd083843b67a pypy/translator/interactive.py
|
diff -up pypy-1.5-src/pypy/translator/interactive.py.more-readable-c-code pypy-1.5-src/pypy/translator/interactive.py
|
||||||
--- a/pypy/translator/interactive.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/translator/interactive.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/translator/interactive.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/translator/interactive.py 2011-05-02 14:28:33.946161001 -0400
|
||||||
@@ -138,7 +138,7 @@
|
@@ -138,7 +138,7 @@ class Translation(object):
|
||||||
def source_c(self, argtypes=None, **kwds):
|
def source_c(self, argtypes=None, **kwds):
|
||||||
self.update_options(argtypes, kwds)
|
self.update_options(argtypes, kwds)
|
||||||
self.ensure_backend('c')
|
self.ensure_backend('c')
|
||||||
@ -669,10 +667,10 @@ diff -r cd083843b67a pypy/translator/interactive.py
|
|||||||
|
|
||||||
def source_cl(self, argtypes=None, **kwds):
|
def source_cl(self, argtypes=None, **kwds):
|
||||||
self.update_options(argtypes, kwds)
|
self.update_options(argtypes, kwds)
|
||||||
diff -r cd083843b67a pypy/translator/llsupport/wrapper.py
|
diff -up pypy-1.5-src/pypy/translator/llsupport/wrapper.py.more-readable-c-code pypy-1.5-src/pypy/translator/llsupport/wrapper.py
|
||||||
--- a/pypy/translator/llsupport/wrapper.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/translator/llsupport/wrapper.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/translator/llsupport/wrapper.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/translator/llsupport/wrapper.py 2011-05-02 14:28:33.946161001 -0400
|
||||||
@@ -59,6 +59,8 @@
|
@@ -59,6 +59,8 @@ def new_wrapper(func, translator, newnam
|
||||||
# "return result"
|
# "return result"
|
||||||
block = Block(wrapper_inputargs)
|
block = Block(wrapper_inputargs)
|
||||||
wgraph = FunctionGraph('pyfn_' + (newname or func.func_name), block)
|
wgraph = FunctionGraph('pyfn_' + (newname or func.func_name), block)
|
||||||
@ -681,10 +679,10 @@ diff -r cd083843b67a pypy/translator/llsupport/wrapper.py
|
|||||||
translator.update_call_graph(wgraph, graph, object())
|
translator.update_call_graph(wgraph, graph, object())
|
||||||
translator.graphs.append(wgraph)
|
translator.graphs.append(wgraph)
|
||||||
block.operations[:] = newops
|
block.operations[:] = newops
|
||||||
diff -r cd083843b67a pypy/translator/simplify.py
|
diff -up pypy-1.5-src/pypy/translator/simplify.py.more-readable-c-code pypy-1.5-src/pypy/translator/simplify.py
|
||||||
--- a/pypy/translator/simplify.py Mon Dec 20 17:17:45 2010 +0100
|
--- pypy-1.5-src/pypy/translator/simplify.py.more-readable-c-code 2011-04-30 10:18:50.000000000 -0400
|
||||||
+++ b/pypy/translator/simplify.py Wed Jan 05 16:14:35 2011 -0500
|
+++ pypy-1.5-src/pypy/translator/simplify.py 2011-05-02 14:28:33.952161001 -0400
|
||||||
@@ -294,7 +294,7 @@
|
@@ -298,7 +298,7 @@ def join_blocks(graph):
|
||||||
return renaming.get(v, v)
|
return renaming.get(v, v)
|
||||||
def rename_op(op):
|
def rename_op(op):
|
||||||
args = [rename(a) for a in op.args]
|
args = [rename(a) for a in op.args]
|
312
pypy.spec
312
pypy.spec
@ -1,6 +1,6 @@
|
|||||||
Name: pypy
|
Name: pypy
|
||||||
Version: 1.4.1
|
Version: 1.5
|
||||||
Release: 10%{?dist}
|
Release: 1%{?dist}
|
||||||
Summary: Python implementation with a Just-In-Time compiler
|
Summary: Python implementation with a Just-In-Time compiler
|
||||||
|
|
||||||
Group: Development/Languages
|
Group: Development/Languages
|
||||||
@ -105,7 +105,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|||||||
%global verbose_logs 0
|
%global verbose_logs 0
|
||||||
|
|
||||||
%global pypyprefix %{_libdir}/pypy-%{version}
|
%global pypyprefix %{_libdir}/pypy-%{version}
|
||||||
%global pylibver 2.5.2
|
%global pylibver 2.7
|
||||||
|
|
||||||
# We refer to this subdir of the source tree in a few places during the build:
|
# We refer to this subdir of the source tree in a few places during the build:
|
||||||
%global goal_dir pypy/translator/goal
|
%global goal_dir pypy/translator/goal
|
||||||
@ -120,7 +120,7 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
|||||||
Source0: http://pypy.org/download/pypy-%{version}-src.tar.bz2
|
Source0: http://pypy.org/download/pypy-%{version}-src.tar.bz2
|
||||||
|
|
||||||
# Edit a translator file for linux in order to configure our cflags and dynamic libffi
|
# Edit a translator file for linux in order to configure our cflags and dynamic libffi
|
||||||
Patch0: pypy-1.4-config.patch
|
Patch0: pypy-1.5-config.patch
|
||||||
|
|
||||||
# By default, if built at a tty, the translation process renders a Mandelbrot
|
# By default, if built at a tty, the translation process renders a Mandelbrot
|
||||||
# set to indicate progress.
|
# set to indicate progress.
|
||||||
@ -150,7 +150,7 @@ Patch3: pypy-1.4.1-add-LIBRARY_INSTALLATION_PATH.patch
|
|||||||
# http://codespeak.net/pipermail/pypy-dev/2010q4/006532.html
|
# http://codespeak.net/pipermail/pypy-dev/2010q4/006532.html
|
||||||
# TODO: get this into the upstream bug tracker, and finish inlining
|
# TODO: get this into the upstream bug tracker, and finish inlining
|
||||||
# support (rhbz#666963)
|
# support (rhbz#666963)
|
||||||
Patch4: pypy-1.4.1-more-readable-c-code.patch
|
Patch4: pypy-1.5-more-readable-c-code.patch
|
||||||
|
|
||||||
|
|
||||||
# Build-time requirements:
|
# Build-time requirements:
|
||||||
@ -584,7 +584,7 @@ mkdir -p %{buildroot}/%{pypyprefix}/site-packages
|
|||||||
# interface going forward, so let's just mimic upstream for now.
|
# interface going forward, so let's just mimic upstream for now.
|
||||||
%global pypy_include_dir %{pypyprefix}/include
|
%global pypy_include_dir %{pypyprefix}/include
|
||||||
mkdir -p %{buildroot}/%{pypy_include_dir}
|
mkdir -p %{buildroot}/%{pypy_include_dir}
|
||||||
cp include/*.h include/*.inl %{buildroot}/%{pypy_include_dir}
|
cp include/*.h %{buildroot}/%{pypy_include_dir}
|
||||||
|
|
||||||
|
|
||||||
# Capture the RPython source code files from the build within the debuginfo
|
# Capture the RPython source code files from the build within the debuginfo
|
||||||
@ -698,6 +698,25 @@ CheckPyPy() {
|
|||||||
# seems to hang on this test, within test_line_terminator
|
# seems to hang on this test, within test_line_terminator
|
||||||
SkipTest test_asynchat
|
SkipTest test_asynchat
|
||||||
|
|
||||||
|
# test_audioop:
|
||||||
|
# test test_audioop crashed -- <type 'exceptions.ImportError'>: No module named audioop
|
||||||
|
# Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/regrtest.py", line 874, in runtest_inner
|
||||||
|
# the_package = __import__(abstest, globals(), locals(), [])
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_audioop.py", line 1, in <module>
|
||||||
|
# import audioop
|
||||||
|
# ImportError: No module named audioop
|
||||||
|
SkipTest test_audioop
|
||||||
|
|
||||||
|
# test_capi:
|
||||||
|
# RPython traceback:
|
||||||
|
# RPython traceback:
|
||||||
|
# File "implement.c", line 243013, in _PyObject_New
|
||||||
|
# File "implement_1.c", line 31707, in _PyObject_NewVar
|
||||||
|
# File "implement.c", line 217060, in from_ref
|
||||||
|
# Fatal RPython error: AssertionError
|
||||||
|
SkipTest test_capi
|
||||||
|
|
||||||
# test_compiler:
|
# test_compiler:
|
||||||
# 4 errors out of 13:
|
# 4 errors out of 13:
|
||||||
# testSourceCodeEncodingsError
|
# testSourceCodeEncodingsError
|
||||||
@ -710,10 +729,102 @@ CheckPyPy() {
|
|||||||
# failures=17, errors=20, out of 132 tests
|
# failures=17, errors=20, out of 132 tests
|
||||||
SkipTest test_ctypes
|
SkipTest test_ctypes
|
||||||
|
|
||||||
|
# test_distutils:
|
||||||
|
# Warning -- os.environ was modified by test_distutils
|
||||||
|
# test test_distutils failed -- multiple errors occurred; run in verbose mode for details
|
||||||
|
SkipTest test_distutils
|
||||||
|
|
||||||
# test_frozen:
|
# test_frozen:
|
||||||
# TestFailed: import __hello__ failed:No module named __hello__
|
# TestFailed: import __hello__ failed:No module named __hello__
|
||||||
SkipTest test_frozen
|
SkipTest test_frozen
|
||||||
|
|
||||||
|
# test_gc:
|
||||||
|
# test test_gc crashed -- <type 'exceptions.AttributeError'>: 'module' object has no attribute 'get_debug'
|
||||||
|
SkipTest test_gc
|
||||||
|
|
||||||
|
# test_gdb:
|
||||||
|
# test test_gdb crashed -- <type 'exceptions.KeyError'>: 'PY_CFLAGS'
|
||||||
|
SkipTest test_gdb
|
||||||
|
|
||||||
|
# test_generators:
|
||||||
|
# **********************************************************************
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_generators.py", line ?, in test.test_generators.__test__.coroutine
|
||||||
|
# Failed example:
|
||||||
|
# del g; gc_collect()
|
||||||
|
# Expected:
|
||||||
|
# exiting
|
||||||
|
# Got nothing
|
||||||
|
# **********************************************************************
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_generators.py", line ?, in test.test_generators.__test__.coroutine
|
||||||
|
# Failed example:
|
||||||
|
# del g; gc_collect()
|
||||||
|
# Expected:
|
||||||
|
# exiting
|
||||||
|
# Got nothing
|
||||||
|
# **********************************************************************
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_generators.py", line ?, in test.test_generators.__test__.coroutine
|
||||||
|
# Failed example:
|
||||||
|
# del g; gc_collect()
|
||||||
|
# Expected:
|
||||||
|
# finally
|
||||||
|
# Got nothing
|
||||||
|
# **********************************************************************
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_generators.py", line ?, in test.test_generators.__test__.coroutine
|
||||||
|
# Failed example:
|
||||||
|
# sys.stderr.getvalue().startswith(
|
||||||
|
# "Exception RuntimeError: 'generator ignored GeneratorExit' in "
|
||||||
|
# )
|
||||||
|
# Expected:
|
||||||
|
# True
|
||||||
|
# Got:
|
||||||
|
# False
|
||||||
|
# **********************************************************************
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_generators.py", line ?, in test.test_generators.__test__.refleaks
|
||||||
|
# Failed example:
|
||||||
|
# try:
|
||||||
|
# sys.stderr = StringIO.StringIO()
|
||||||
|
# class Leaker:
|
||||||
|
# def __del__(self):
|
||||||
|
# raise RuntimeError
|
||||||
|
# l = Leaker()
|
||||||
|
# del l
|
||||||
|
# gc_collect()
|
||||||
|
# err = sys.stderr.getvalue().strip()
|
||||||
|
# err.startswith(
|
||||||
|
# "Exception RuntimeError: RuntimeError() in "
|
||||||
|
# )
|
||||||
|
# err.endswith("> ignored")
|
||||||
|
# len(err.splitlines())
|
||||||
|
# finally:
|
||||||
|
# sys.stderr = old
|
||||||
|
# Expected:
|
||||||
|
# True
|
||||||
|
# True
|
||||||
|
# 1
|
||||||
|
# Got:
|
||||||
|
# False
|
||||||
|
# False
|
||||||
|
# 0
|
||||||
|
# **********************************************************************
|
||||||
|
# 2 items had failures:
|
||||||
|
# 4 of 107 in test.test_generators.__test__.coroutine
|
||||||
|
# 1 of 11 in test.test_generators.__test__.refleaks
|
||||||
|
# ***Test Failed*** 5 failures.
|
||||||
|
# test test_generators failed -- 5 of 294 doctests failed
|
||||||
|
SkipTest test_generators
|
||||||
|
|
||||||
|
# test_getargs2:
|
||||||
|
# test test_getargs2 failed -- multiple errors occurred; run in verbose mode for details
|
||||||
|
SkipTest test_getargs2
|
||||||
|
|
||||||
|
# test_hotshot:
|
||||||
|
# test test_hotshot crashed -- <type 'exceptions.ImportError'>: No module named _hotshot
|
||||||
|
SkipTest test_hotshot
|
||||||
|
|
||||||
|
# test_io:
|
||||||
|
# test test_io failed -- multiple errors occurred; run in verbose mode for details
|
||||||
|
SkipTest test_io
|
||||||
|
|
||||||
# test_ioctl:
|
# test_ioctl:
|
||||||
# Failing in Koji with dist-f15 with:
|
# Failing in Koji with dist-f15 with:
|
||||||
# ======================================================================
|
# ======================================================================
|
||||||
@ -737,6 +848,23 @@ CheckPyPy() {
|
|||||||
# 24 failures out of 25, apparently all due to TypeError
|
# 24 failures out of 25, apparently all due to TypeError
|
||||||
SkipTest test_iterlen
|
SkipTest test_iterlen
|
||||||
|
|
||||||
|
# test_multiprocessing:
|
||||||
|
# test test_multiprocessing failed -- multiple errors occurred; run in verbose mode for details
|
||||||
|
SkipTest test_multiprocessing
|
||||||
|
|
||||||
|
# test_module:
|
||||||
|
# test test_module failed -- Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_module.py", line 81, in test_clear_dict_in_ref_cycle
|
||||||
|
# self.assertEqual(destroyed, [1])
|
||||||
|
# AssertionError: Lists differ: [] != [1]
|
||||||
|
# Second list contains 1 additional elements.
|
||||||
|
# First extra element 0:
|
||||||
|
# 1
|
||||||
|
# - []
|
||||||
|
# + [1]
|
||||||
|
# ? +
|
||||||
|
SkipTest test_module
|
||||||
|
|
||||||
# test_parser:
|
# test_parser:
|
||||||
# 12 failures out of 15
|
# 12 failures out of 15
|
||||||
SkipTest test_parser
|
SkipTest test_parser
|
||||||
@ -746,6 +874,44 @@ CheckPyPy() {
|
|||||||
# test test_platform failed -- errors occurred in test.test_platform.PlatformTest
|
# test test_platform failed -- errors occurred in test.test_platform.PlatformTest
|
||||||
SkipTest test_platform
|
SkipTest test_platform
|
||||||
|
|
||||||
|
# test_posix:
|
||||||
|
# test test_posix failed -- Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_posix.py", line 361, in test_getcwd_long_pathnames
|
||||||
|
# _create_and_do_getcwd(dirname)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_posix.py", line 351, in _create_and_do_getcwd
|
||||||
|
# _create_and_do_getcwd(dirname, current_path_length + len(dirname) + 1)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_posix.py", line 351, in _create_and_do_getcwd
|
||||||
|
# _create_and_do_getcwd(dirname, current_path_length + len(dirname) + 1)
|
||||||
|
# [...repeats...]
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_posix.py", line 351, in _create_and_do_getcwd
|
||||||
|
# _create_and_do_getcwd(dirname, current_path_length + len(dirname) + 1)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_posix.py", line 356, in _create_and_do_getcwd
|
||||||
|
# self.assertEqual(e.errno, expected_errno)
|
||||||
|
# AssertionError: 36 != 34
|
||||||
|
SkipTest test_posix
|
||||||
|
|
||||||
|
# test_readline:
|
||||||
|
# test test_readline failed -- Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_readline.py", line 16, in testHistoryUpdates
|
||||||
|
# readline.clear_history()
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib_pypy/pyrepl/readline.py", line 277, in clear_history
|
||||||
|
# del self.get_reader().history[:]
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib_pypy/pyrepl/readline.py", line 186, in get_reader
|
||||||
|
# console = UnixConsole(self.f_in, self.f_out, encoding=ENCODING)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib_pypy/pyrepl/unix_console.py", line 103, in __init__
|
||||||
|
# self._clear = _my_getstr("clear")
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib_pypy/pyrepl/unix_console.py", line 45, in _my_getstr
|
||||||
|
# "terminal doesn't have the required '%s' capability"%cap
|
||||||
|
# InvalidTerminal: terminal doesn't have the required 'clear' capability
|
||||||
|
SkipTest test_readline
|
||||||
|
|
||||||
|
# test_scope:
|
||||||
|
# test test_scope failed -- Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_scope.py", line 437, in testLeaks
|
||||||
|
# self.assertEqual(Foo.count, 0)
|
||||||
|
# AssertionError: 100 != 0
|
||||||
|
SkipTest test_scope
|
||||||
|
|
||||||
# test_socket:
|
# test_socket:
|
||||||
# testSockName can fail in Koji with:
|
# testSockName can fail in Koji with:
|
||||||
# my_ip_addr = socket.gethostbyname(socket.gethostname())
|
# my_ip_addr = socket.gethostbyname(socket.gethostname())
|
||||||
@ -761,10 +927,138 @@ CheckPyPy() {
|
|||||||
# ProgrammingError: Incomplete statement ''
|
# ProgrammingError: Incomplete statement ''
|
||||||
SkipTest test_sqlite
|
SkipTest test_sqlite
|
||||||
|
|
||||||
|
# test_strop:
|
||||||
|
# test test_strop crashed -- <type 'exceptions.ImportError'>: No module named strop
|
||||||
|
SkipTest test_strop
|
||||||
|
|
||||||
|
# test_structmembers:
|
||||||
|
# test test_structmembers failed -- multiple errors occurred; run in verbose mode for details
|
||||||
|
SkipTest test_structmembers
|
||||||
|
|
||||||
|
# test_subprocess:
|
||||||
|
# debug: WARNING: library path not found, using compiled-in sys.path and sys.prefix will be unset
|
||||||
|
# 'import site' failed
|
||||||
|
# .
|
||||||
|
# this bit of output is from a test of stdout in a different process ...
|
||||||
|
# /builddir/build/BUILD/pypy-1.5-src/lib_pypy/ctypes_support.py:26: RuntimeWarning: C function without declared arguments called
|
||||||
|
# return standard_c_lib.__errno_location()
|
||||||
|
# debug: WARNING: library path not found, using compiled-in sys.path and sys.prefix will be unset
|
||||||
|
# 'import site' failed
|
||||||
|
# .
|
||||||
|
# this bit of output is from a test of stdout in a different process ...
|
||||||
|
# test test_subprocess failed -- multiple errors occurred; run in verbose mode for details
|
||||||
|
SkipTest test_subprocess
|
||||||
|
|
||||||
|
# test_symtable:
|
||||||
|
# test test_symtable crashed -- <type 'exceptions.ImportError'>: No module named _symtable
|
||||||
|
SkipTest test_symtable
|
||||||
|
|
||||||
|
# test_sys_settrace:
|
||||||
|
# test test_sys_settrace failed -- Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_sys_settrace.py", line 334, in test_13_genexp
|
||||||
|
# self.run_test(generator_example)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_sys_settrace.py", line 280, in run_test
|
||||||
|
# self.run_and_compare(func, func.events)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_sys_settrace.py", line 277, in run_and_compare
|
||||||
|
# tracer.events, events)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/test/test_sys_settrace.py", line 269, in compare_events
|
||||||
|
# [str(x) for x in events])))
|
||||||
|
# AssertionError: events did not match expectation:
|
||||||
|
# (0, 'call')
|
||||||
|
# (2, 'line')
|
||||||
|
# (-6, 'call')
|
||||||
|
# (-5, 'line')
|
||||||
|
# (-4, 'line')
|
||||||
|
# (-4, 'return')
|
||||||
|
# - (-4, 'call')
|
||||||
|
# - (-4, 'exception')
|
||||||
|
# - (-1, 'line')
|
||||||
|
# - (-1, 'return')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (6, 'line')
|
||||||
|
# (5, 'line')
|
||||||
|
# (5, 'return')
|
||||||
|
SkipTest test_sys_settrace
|
||||||
|
|
||||||
|
# test_tempfile:
|
||||||
|
# test test_tempfile failed -- multiple errors occurred; run in verbose mode for details
|
||||||
|
SkipTest test_tempfile
|
||||||
|
|
||||||
|
# test_thread
|
||||||
|
# Koji build appears to hang here
|
||||||
|
SkipTest test_thread
|
||||||
|
|
||||||
# test_traceback:
|
# test_traceback:
|
||||||
# works when run standalone; failures seen when run as part of a suite
|
# works when run standalone; failures seen when run as part of a suite
|
||||||
SkipTest test_traceback
|
SkipTest test_traceback
|
||||||
|
|
||||||
|
# test_uuid:
|
||||||
|
# ======================================================================
|
||||||
|
# ERROR: test_ifconfig_getnode (test.test_uuid.TestUUID)
|
||||||
|
# ----------------------------------------------------------------------
|
||||||
|
# Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_uuid.py", line 306, in test_ifconfig_getnode
|
||||||
|
# node = uuid._ifconfig_getnode()
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/uuid.py", line 326, in _ifconfig_getnode
|
||||||
|
# ip_addr = socket.gethostbyname(socket.gethostname())
|
||||||
|
# gaierror: [Errno -3] Temporary failure in name resolution
|
||||||
|
# ----------------------------------------------------------------------
|
||||||
|
# Ran 14 tests in 0.369s
|
||||||
|
# FAILED (errors=1)
|
||||||
|
SkipTest test_uuid
|
||||||
|
|
||||||
|
# test_zipimport_support:
|
||||||
|
# ======================================================================
|
||||||
|
# ERROR: test_doctest_main_issue4197 (test.test_zipimport_support.ZipSupportTests)
|
||||||
|
# ----------------------------------------------------------------------
|
||||||
|
# Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_zipimport_support.py", line 194, in test_doctest_main_issue4197
|
||||||
|
# exit_code, data = run_python(script_name)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/script_helper.py", line 80, in run_python
|
||||||
|
# p = spawn_python(*args, **kwargs)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/script_helper.py", line 66, in spawn_python
|
||||||
|
# **kwargs)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/subprocess.py", line 672, in __init__
|
||||||
|
# errread, errwrite)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/subprocess.py", line 1206, in _execute_child
|
||||||
|
# raise child_exception
|
||||||
|
# OSError: [Errno 13] Permission denied
|
||||||
|
# ======================================================================
|
||||||
|
# ERROR: test_pdb_issue4201 (test.test_zipimport_support.ZipSupportTests)
|
||||||
|
# ----------------------------------------------------------------------
|
||||||
|
# Traceback (most recent call last):
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/test_zipimport_support.py", line 221, in test_pdb_issue4201
|
||||||
|
# p = spawn_python(script_name)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/2.7/test/script_helper.py", line 66, in spawn_python
|
||||||
|
# **kwargs)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/subprocess.py", line 672, in __init__
|
||||||
|
# errread, errwrite)
|
||||||
|
# File "/builddir/build/BUILD/pypy-1.5-src/lib-python/modified-2.7/subprocess.py", line 1206, in _execute_child
|
||||||
|
# raise child_exception
|
||||||
|
# OSError: [Errno 13] Permission denied
|
||||||
|
# ----------------------------------------------------------------------
|
||||||
|
# Ran 4 tests in 0.726s
|
||||||
|
# FAILED (errors=2)
|
||||||
|
SkipTest test_zipimport_support
|
||||||
|
|
||||||
# test_zlib:
|
# test_zlib:
|
||||||
# failure seen in Koji, not sure of reason why:
|
# failure seen in Koji, not sure of reason why:
|
||||||
# test test_zlib failed -- Traceback (most recent call last):
|
# test test_zlib failed -- Traceback (most recent call last):
|
||||||
@ -832,6 +1126,8 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
|
|
||||||
%dir %{pypyprefix}
|
%dir %{pypyprefix}
|
||||||
%dir %{pypyprefix}/lib-python
|
%dir %{pypyprefix}/lib-python
|
||||||
|
%{pypyprefix}/lib-python/TODO
|
||||||
|
%{pypyprefix}/lib-python/stdlib-version.txt
|
||||||
%{pypyprefix}/lib-python/%{pylibver}/
|
%{pypyprefix}/lib-python/%{pylibver}/
|
||||||
%{pypyprefix}/lib-python/modified-%{pylibver}/
|
%{pypyprefix}/lib-python/modified-%{pylibver}/
|
||||||
%{pypyprefix}/lib-python/conftest.py*
|
%{pypyprefix}/lib-python/conftest.py*
|
||||||
@ -847,7 +1143,6 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
%defattr(-,root,root,-)
|
%defattr(-,root,root,-)
|
||||||
%dir %{pypy_include_dir}
|
%dir %{pypy_include_dir}
|
||||||
%{pypy_include_dir}/*.h
|
%{pypy_include_dir}/*.h
|
||||||
%{pypy_include_dir}/*.inl
|
|
||||||
|
|
||||||
%if 0%{with_stackless}
|
%if 0%{with_stackless}
|
||||||
%files stackless
|
%files stackless
|
||||||
@ -858,6 +1153,9 @@ rm -rf $RPM_BUILD_ROOT
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Mon May 2 2011 David Malcolm <dmalcolm@redhat.com> - 1.5-1
|
||||||
|
- 1.5
|
||||||
|
|
||||||
* Wed Apr 20 2011 David Malcolm <dmalcolm@redhat.com> - 1.4.1-10
|
* Wed Apr 20 2011 David Malcolm <dmalcolm@redhat.com> - 1.4.1-10
|
||||||
- build a /usr/bin/pypy (but without the JIT compiler) on architectures that
|
- build a /usr/bin/pypy (but without the JIT compiler) on architectures that
|
||||||
don't support the JIT, so that they do at least have something that runs
|
don't support the JIT, so that they do at least have something that runs
|
||||||
|
Loading…
Reference in New Issue
Block a user