Author: Philip Jenvey <[email protected]>
Branch: py3k
Changeset: r58874:e23475af7b3a
Date: 2012-11-13 17:37 -0800
http://bitbucket.org/pypy/pypy/changeset/e23475af7b3a/

Log:    add imp.get_tag

diff --git a/pypy/module/imp/__init__.py b/pypy/module/imp/__init__.py
--- a/pypy/module/imp/__init__.py
+++ b/pypy/module/imp/__init__.py
@@ -15,6 +15,7 @@
         'get_suffixes':    'interp_imp.get_suffixes',
 
         'get_magic':       'interp_imp.get_magic',
+        'get_tag':         'interp_imp.get_tag',
         'find_module':     'interp_imp.find_module',
         'load_module':     'interp_imp.load_module',
         'load_source':     'interp_imp.load_source',
diff --git a/pypy/module/imp/interp_imp.py b/pypy/module/imp/interp_imp.py
--- a/pypy/module/imp/interp_imp.py
+++ b/pypy/module/imp/interp_imp.py
@@ -36,6 +36,14 @@
     d = x & 0xff
     return space.wrapbytes(chr(a) + chr(b) + chr(c) + chr(d))
 
+def get_tag(space):
+    """get_tag() -> string
+    Return the magic tag for .pyc or .pyo files."""
+    version_info = space.sys.get('version_info')
+    major = space.int_w(space.getitem(version_info, space.wrap(0)))
+    minor = space.int_w(space.getitem(version_info, space.wrap(1)))
+    return space.wrap('pypy-%d%d' % (major, minor))
+
 def get_file(space, w_file, filename, filemode):
     if space.is_none(w_file):
         try:
diff --git a/pypy/module/imp/test/test_app.py b/pypy/module/imp/test/test_app.py
--- a/pypy/module/imp/test/test_app.py
+++ b/pypy/module/imp/test/test_app.py
@@ -216,3 +216,8 @@
                 except KeyError:
                     pass
             rmtree(dir_name, True)
+
+    def test_get_tag(self):
+        import imp
+        import sys
+        assert imp.get_tag() == 'pypy-%d%d' % sys.version_info[0:2]
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to