[pypy-commit] pypy numpy-back-to-applevel: merged default

alex_gaynor noreply at buildbot.pypy.org
Fri Jan 27 20:16:54 CET 2012


Author: Alex Gaynor <alex.gaynor at gmail.com>
Branch: numpy-back-to-applevel
Changeset: r51861:4ecd878caff2
Date: 2012-01-27 13:28 -0500
http://bitbucket.org/pypy/pypy/changeset/4ecd878caff2/

Log:	merged default

diff --git a/pypy/module/micronumpy/interp_dtype.py b/pypy/module/micronumpy/interp_dtype.py
--- a/pypy/module/micronumpy/interp_dtype.py
+++ b/pypy/module/micronumpy/interp_dtype.py
@@ -90,11 +90,8 @@
         return space.newtuple([])
 
     def eq(self, space, w_other):
-        if space.is_w(self, w_other):
-            return True
-        if space.isinstance_w(w_other, space.w_str):
-            return self.name == space.str_w(w_other)
-        return False
+        w_other = space.call_function(space.gettypefor(W_Dtype), w_other)
+        return space.is_w(self, w_other)
 
     def descr_eq(self, space, w_other):
         return space.wrap(self.eq(space, w_other))
diff --git a/pypy/module/micronumpy/test/test_dtypes.py b/pypy/module/micronumpy/test/test_dtypes.py
--- a/pypy/module/micronumpy/test/test_dtypes.py
+++ b/pypy/module/micronumpy/test/test_dtypes.py
@@ -9,14 +9,19 @@
         assert d.num == 0
         assert d.kind == 'b'
         assert dtype('int8').num == 1
-        assert dtype('int8') == 'int8'
-        assert 'int8' == dtype('int8')
-        assert dtype('int8') != 3
         assert dtype(d) is d
         assert dtype(None) is dtype(float)
         assert dtype('int8').name == 'int8'
         raises(TypeError, dtype, 1042)
 
+    def test_dtype_eq(self):
+        from _numpypy import dtype
+
+        assert dtype("int8") == "int8"
+        assert "int8" == dtype("int8")
+        raises(TypeError, lambda: dtype("int8") == 3)
+        assert dtype(bool) == bool
+
     def test_dtype_with_types(self):
         from _numpypy import dtype
 
diff --git a/pypy/module/micronumpy/tool/numready/main.py b/pypy/module/micronumpy/tool/numready/main.py
--- a/pypy/module/micronumpy/tool/numready/main.py
+++ b/pypy/module/micronumpy/tool/numready/main.py
@@ -73,9 +73,8 @@
     for line in lines:
         kind, name = line.split(" : ", 1)
         subitems = None
-        if kind == KINDS["TYPE"]:
-            if name in ['ndarray', 'dtype']:
-                subitems = find_numpy_items(python, modname, name)
+        if kind == KINDS["TYPE"] and name in SPECIAL_NAMES and attr is None:
+            subitems = find_numpy_items(python, modname, name)
         items.add(Item(name, kind, subitems))
     return items
 
@@ -89,15 +88,20 @@
                 l[i].append(lst[k * lgt + i])
     return l
 
+SPECIAL_NAMES = ["ndarray", "dtype", "generic"]
+
 def main(argv):
     cpy_items = find_numpy_items("/usr/bin/python")
     pypy_items = find_numpy_items(argv[1], "numpypy")
     all_items = []
 
-    msg = '%d/%d names, %d/%d ndarray attributes, %d/%d dtype attributes' % (
-        len(pypy_items), len(cpy_items), len(pypy_items['ndarray'].subitems),
-        len(cpy_items['ndarray'].subitems), len(pypy_items['dtype'].subitems),
-        len(cpy_items['dtype'].subitems))
+    msg = "{:d}/{:d} names".format(len(pypy_items), len(cpy_items))
+    msg += ", ".join(
+        "{:d}/{:d} {} attributes".format(
+            len(pypy_items[name].subitems), len(cpy_items[name].subitems), name
+        )
+        for name in SPECIAL_NAMES
+    )
     for item in cpy_items:
         pypy_exists = item in pypy_items
         if item.subitems:
@@ -114,6 +118,6 @@
         with open(argv[2], 'w') as f:
             f.write(html.encode("utf-8"))
     else:
-        with tempfile.NamedTemporaryFile(delete=False) as f:
+        with tempfile.NamedTemporaryFile(delete=False, suffix=".html") as f:
             f.write(html.encode("utf-8"))
         print "Saved in: %s" % f.name
diff --git a/pypy/rlib/objectmodel.py b/pypy/rlib/objectmodel.py
--- a/pypy/rlib/objectmodel.py
+++ b/pypy/rlib/objectmodel.py
@@ -130,7 +130,7 @@
         if self is other:
             return 0
         else:
-            raise TypeError("Symbolics can not be compared! (%r, %r)"
+            raise TypeError("Symbolics cannot be compared! (%r, %r)"
                             % (self, other))
 
     def __hash__(self):
diff --git a/pypy/rpython/lltypesystem/llmemory.py b/pypy/rpython/lltypesystem/llmemory.py
--- a/pypy/rpython/lltypesystem/llmemory.py
+++ b/pypy/rpython/lltypesystem/llmemory.py
@@ -32,7 +32,8 @@
             self.known_nonneg()):
             return True
         else:
-            raise TypeError("Symbolics can not be compared!")
+            raise TypeError("Symbolics cannot be compared! (%r, %r)"
+                            % (self, other))
 
     def __lt__(self, other):
         return not self.__ge__(other)
diff --git a/pypy/translator/goal/targetnopstandalone.py b/pypy/translator/goal/targetnopstandalone.py
--- a/pypy/translator/goal/targetnopstandalone.py
+++ b/pypy/translator/goal/targetnopstandalone.py
@@ -7,10 +7,8 @@
 actually implementing argv of the executable.
 """
 
-import os, sys
-
-def debug(msg): 
-    os.write(2, "debug: " + msg + '\n')
+def debug(msg):
+    print "debug:", msg
 
 # __________  Entry point  __________
 


More information about the pypy-commit mailing list