[pypy-svn] pypy default: better recognize that this is not a released version of PyPy
hpk42
commits-noreply at bitbucket.org
Mon Jan 17 18:15:52 CET 2011
Author: holger krekel <holger at merlinux.eu>
Branch:
Changeset: r40793:a90000edb419
Date: 2011-01-17 17:09 +0100
http://bitbucket.org/pypy/pypy/changeset/a90000edb419/
Log: better recognize that this is not a released version of PyPy bump
version shown on interactive session and generally enhance prompt
and sys.version if the version tag is not "final" -
diff --git a/pypy/module/sys/test/test_version.py b/pypy/module/sys/test/test_version.py
--- a/pypy/module/sys/test/test_version.py
+++ b/pypy/module/sys/test/test_version.py
@@ -3,3 +3,12 @@
import sys
assert ("MSC v." in sys.version or
"GCC " in sys.version)
+
+def test_get_version(space, monkeypatch):
+ from pypy.module.sys import version
+ monkeypatch.setattr(version, 'PYPY_VERSION', (2,5,0, "final", 1))
+ res = space.unwrap(version.get_version(space))
+ assert "[PyPy 2.5.0]" in res
+ monkeypatch.setattr(version, 'PYPY_VERSION', (2,6,3, "alpha", 5))
+ res = space.unwrap(version.get_version(space))
+ assert "[PyPy 2.6.3-alpha5]" in res
diff --git a/pypy/module/sys/version.py b/pypy/module/sys/version.py
--- a/pypy/module/sys/version.py
+++ b/pypy/module/sys/version.py
@@ -9,7 +9,7 @@
CPYTHON_VERSION = (2, 7, 0, "final", 42) #XXX # sync patchlevel.h
CPYTHON_API_VERSION = 1013 #XXX # sync with include/modsupport.h
-PYPY_VERSION = (1, 4, 1, "beta", 0) #XXX # sync patchlevel.h
+PYPY_VERSION = (1, 5, 0, "alpha", 0) #XXX # sync patchlevel.h
if platform.name == 'msvc':
COMPILER_INFO = 'MSC v.%d 32 bit' % (platform.version * 10 + 600)
@@ -44,16 +44,17 @@
return space.wrap(CPYTHON_VERSION)
def get_version(space):
- return space.wrap("%d.%d.%d (%s, %s, %s)\n[PyPy %d.%d.%d%s]" % (
+ ver = "%d.%d.%d" % (PYPY_VERSION[0], PYPY_VERSION[1], PYPY_VERSION[2])
+ if PYPY_VERSION[3] != "final":
+ ver = ver + "-%s%d" %(PYPY_VERSION[3], PYPY_VERSION[4])
+ return space.wrap("%d.%d.%d (%s, %s, %s)\n[PyPy %s%s]" % (
CPYTHON_VERSION[0],
CPYTHON_VERSION[1],
CPYTHON_VERSION[2],
hg_universal_id(),
date,
time,
- PYPY_VERSION[0],
- PYPY_VERSION[1],
- PYPY_VERSION[2],
+ ver,
compiler_version()))
def get_winver(space):
diff --git a/pypy/interpreter/interactive.py b/pypy/interpreter/interactive.py
--- a/pypy/interpreter/interactive.py
+++ b/pypy/interpreter/interactive.py
@@ -29,7 +29,7 @@
namespace_keys = self.space.unwrap(w_res)
w_res = self.space.call_method(self.space.builtin.getdict(), "keys")
builtin_keys = self.space.unwrap(w_res)
-
+
matches = []
n = len(text)
@@ -71,8 +71,8 @@
def get_class_members(self, w_clz):
s = self.space
words = self.get_words(w_clz)
- try:
- w_bases = s.getattr(w_clz, s.wrap("__bases__"))
+ try:
+ w_bases = s.getattr(w_clz, s.wrap("__bases__"))
bases_w = s.fixedview(w_bases)
except error.OperationError:
@@ -114,7 +114,7 @@
try:
readline.read_history_file()
except IOError:
- pass # guess it doesn't exit
+ pass # guess it doesn't exit
import atexit
atexit.register(readline.write_history_file)
@@ -126,10 +126,13 @@
# sys.version, self.__class__.__name__,
# self.space.__class__.__name__)
w_sys = self.space.sys
- major, minor, micro, _, _ = self.space.unwrap(self.space.sys.get('pypy_version_info'))
+ major, minor, micro, tag, rev = self.space.unwrap(self.space.sys.get('pypy_version_info'))
elapsed = time.time() - self.space._starttime
- banner = "PyPy %d.%d.%d in %r on top of Python %s (startuptime: %.2f secs)" % (
- major, minor, micro, self.space, sys.version.split()[0], elapsed)
+ version = "%d.%d.%d" % (major, minor, micro)
+ if tag != "final":
+ version += "-%s%d" %(tag, rev)
+ banner = "PyPy %s in %r on top of Python %s (startuptime: %.2f secs)" % (
+ version, self.space, sys.version.split()[0], elapsed)
code.InteractiveConsole.interact(self, banner)
def raw_input(self, prompt=""):
@@ -215,12 +218,12 @@
if self.tracelevel > 0 and tracelevel == 0:
s.reset_trace()
print "Tracing disabled"
-
+
if self.tracelevel == 0 and tracelevel > 0:
trace.create_trace_space(s)
self.space.unsettrace()
print "Tracing enabled"
-
+
self.tracelevel = tracelevel
More information about the Pypy-commit
mailing list