diff --git a/source/compat.txt b/source/compat.txt index cd214f1fc380e5f696cd3233297bb9fe744fbcd1_c291cmNlL2NvbXBhdC50eHQ=..5817cdaba36c00ccf03cf4eae9faec8aa448853a_c291cmNlL2NvbXBhdC50eHQ= 100644 --- a/source/compat.txt +++ b/source/compat.txt @@ -8,7 +8,7 @@ already accepted in the main python in newer versions). It supports most of the commonly used Python `standard library modules`_; details below. -PyPy has alpha-level support for the `CPython C API`_, however, as of 1.3 +PyPy has alpha-level support for the `CPython C API`_, however, as of 1.4 release this feature is not yet complete. Most libraries will require a bit of effort to work, but there are known success stories. Check out PyPy blog for updates. diff --git a/source/download.txt b/source/download.txt index cd214f1fc380e5f696cd3233297bb9fe744fbcd1_c291cmNlL2Rvd25sb2FkLnR4dA==..5817cdaba36c00ccf03cf4eae9faec8aa448853a_c291cmNlL2Rvd25sb2FkLnR4dA== 100644 --- a/source/download.txt +++ b/source/download.txt @@ -6,11 +6,11 @@ Download ============================================================ -Here are the various binaries of **PyPy 1.3** that we provide for x86 Linux, -Mac OS/X or Windows. This release improves over 1.2 in terms of stability -of the JIT. +Here are the various binaries of **PyPy 1.4** that we provide for x86 Linux, +Mac OS/X or Windows. This release improves over 1.3 in terms of speed, +memory usage and stability. .. class:: download_menu * Download @@ -12,13 +12,12 @@ .. class:: download_menu * Download - * `With a JIT Compiler`_ **(recommended!)** - * `With no JIT Compiler`_ + * `Default (with a JIT Compiler)`_ * `Sandboxed version`_ * `Stackless version`_ * `Installing`_ (optional) * `Building from source`_ @@ -19,12 +18,12 @@ * `Sandboxed version`_ * `Stackless version`_ * `Installing`_ (optional) * `Building from source`_ -.. _`With a JIT Compiler`: +.. _`Default (with a JIT Compiler)`: "JIT Compiler" version ------------------------------- These binaries include a Just-in-Time compiler. They only work on @@ -26,9 +25,8 @@ "JIT Compiler" version ------------------------------- These binaries include a Just-in-Time compiler. They only work on -**32-bit** `x86 (IA-32)`_ CPUs that have the SSE2_ instruction set (most of -them do, nowadays), as well as on any `x86-64`_ machine in the 32-bit -compatibility mode. +CPUs that have the SSE2_ instruction set (most of +them do, nowadays). @@ -34,5 +32,7 @@ -* `Linux binary`__ -* `Mac OS/X binary`__ -* `Windows binary`__ +* `Linux binary (32bit)`__ +* `Linux binary (64bit)`__ +* `Mac OS/X binary (32bit)`__ +* `Mac OS/X binary (64bit)`__ +* `Windows binary (32bit)`__ @@ -38,8 +38,10 @@ -.. __: http://pypy.org/download/pypy-1.3-linux.tar.bz2 -.. __: http://pypy.org/download/pypy-1.3-osx.tar.bz2 -.. __: http://pypy.org/download/pypy-1.3-win32.zip +.. __: http://pypy.org/download/pypy-1.4-linux.tar.bz2 +.. __: http://pypy.org/download/pypy-1.4-linux64.tar.bz2 +.. __: http://pypy.org/download/pypy-1.4-osx.tar.bz2 +.. __: http://pypy.org/download/pypy-1.4-osx64.tar.bz2 +.. __: http://pypy.org/download/pypy-1.4-win32.zip If your CPU is really old, it may not have SSE2. In this case, you need to translate_ yourself with the option ``--jit-backend=x86-without-sse2``. @@ -42,49 +44,7 @@ If your CPU is really old, it may not have SSE2. In this case, you need to translate_ yourself with the option ``--jit-backend=x86-without-sse2``. -If your CPU is a 64-bit machine and you want to translate_ a 32-bit -version of PyPy yourself, `here are hints`_. - -If you want to help us with implementing the 64-bit JIT backend, -`contact us`_! - - -.. _`With no JIT Compiler`: -.. _`no jit version.`: - -"No JIT" version -------------------------------- - -**WARNING!** Unless you really want to try this out, we recommend the JIT -version. - -This version still has a few advantages over the JIT Compiler version. -Notably, for Python programs that require large amounts of memory (at -least a few hundred MBs), the following version of ``pypy-nojit`` runs them -by requiring generally 1.5x or 2x less memory than CPython. These -binaries work on 32-bit `x86 (IA-32)`_ CPUs as well as `x86-64`_ CPUs -in the 32-bit compatibility mode. - -* `Linux binary`__ -* `Mac OS/X binary`__ -* `Linux 64bit binary`__ -* `Windows binary`__ - -.. __: http://pypy.org/download/pypy-1.3-linux-nojit.tar.bz2 -.. __: http://pypy.org/download/pypy-1.3-osx-nojit.tar.bz2 -.. __: http://pypy.org/download/pypy-1.3-linux64-nojit.tar.bz2 -.. __: http://pypy.org/download/pypy-1.3-win32-nojit.zip - -If your CPU is a 64-bit machine and you want to translate_ a 32-bit -version of PyPy yourself, `here are hints`_. - -If you want to help us with finishing the implementation of the native -64-bit version (there are a few known issues, like missing code in -`ctypes`_ to implement calls to C functions), `contact us`_. In general -this version will more or less translate_ anywhere. - - .. _`Sandboxed version`: "Sandbox" version @@ -105,12 +65,7 @@ complicated, this reduce a bit the level of confidence we can put in the result. -If your CPU is a 64-bit machine and you want to translate_ a 32-bit -version of PyPy yourself, `here are hints`_. - -The Windows and the native 64-bit versions both need testing and careful -reviewing; `contact us`_! - +The Windows need testing and careful reviewing; `contact us`_! .. _`Stackless version`: @@ -124,8 +79,8 @@ * `Linux binary`__ * `Windows binary`__ -.. __: http://pypy.org/download/pypy-1.3-linux-stackless.tar.bz2 -.. __: http://pypy.org/download/pypy-1.3-win32-stackless.zip +.. __: http://pypy.org/download/pypy-1.4-linux-stackless.tar.bz2 +.. __: http://pypy.org/download/pypy-1.4-win32-stackless.zip It is not possible right now to combine Stackless features with the JIT. @@ -134,7 +89,6 @@ For the native 64-bit version, see the issues of the `no jit version.`_. - Installing ------------------------------- @@ -143,8 +97,8 @@ installed by manually moving the files:: /usr/bin/pypy # or pypy-nojit etc. - /usr/share/pypy-1.3/lib-python/* - /usr/share/pypy-1.3/pypy/* + /usr/share/pypy-1.4/lib-python/* + /usr/share/pypy-1.4/pypy/* You can also install it to ``/usr/local/bin`` and ``/usr/local/share``. @@ -157,6 +111,6 @@ 1. Get the source code. The following packages contain the source at the same revision as the above binaries (these are svn exports): - * `pypy-1.3-src.tar.bz2`__ (sources, Unix line endings) - * `pypy-1.3-src.zip`__ (sources, Windows line endings) + * `pypy-1.4-src.tar.bz2`__ (sources, Unix line endings) + * `pypy-1.4-src.zip`__ (sources, Windows line endings) @@ -162,6 +116,6 @@ - .. __: http://pypy.org/download/pypy-1.3-src.tar.bz2 - .. __: http://pypy.org/download/pypy-1.3-src.zip + .. __: http://pypy.org/download/pypy-1.4-src.tar.bz2 + .. __: http://pypy.org/download/pypy-1.4-src.zip Or you can checkout the current trunk using Subversion_ (the trunk usually works and is of course more up-to-date):: @@ -195,54 +149,6 @@ finish the translation, and 1.3 GB of RAM on a 32-bit system. (Do not start a translation on a machine with 1GB or less!) - -.. _`here are hints`: - -Note on building a 32-bit version on 64-bit systems -+++++++++++++++++++++++++++++++++++++++++++++++++++ - -To build 32-bit versions of ``pypy-c`` you need to run ``translate.py`` -in a 32-bit version of Python, and to make sure that the C compiler it -uses is also 32-bit. You can check the first condition with:: - - $ python - Python 2.6.2 (...) - >>> import sys - >>> sys.maxint - -This prints 9223372036854775807 in 64-bit versions and 2147483647 in -32-bit versions. Moreover, if your Python is 32-bit but your C compiler -is 64-bit, you will get ``AssertionError: Mixed configuration of the -word size of the machine`` when running ``translate.py.`` - -**On Linux,** the recommended way is to install and run in a fully -32-bit chroot (e.g. with the ``schroot`` Ubuntu package). The -alternative has issues about building some extension modules, but if you -want to try it, first compile yourself a 32-bit Python, e.g.:: - - # on Ubuntu Linux, you need at least: - apt-get install libc6-dev-i386 ia32-libs lib32z1-dev lib32ncurses5-dev - - cd Python-2.6.4 - CC="gcc -m32" LDFLAGS="-L/lib32 -L/usr/lib32 \ - -Wl,-rpath,/lib32 -Wl,-rpath,/usr/lib32" \ - ./configure - make - -And then run ``translate.py`` as follows:: - - cd pypy/translator/goal - CC="gcc -m32" /path/to/32bit/python translate.py ... - - -**On Mac OS/X,** the easiest is to systematically use Python 2.5 when -working with PyPy. Indeed, the standard Python 2.5 runs in 32-bit mode. -(XXX how to run the compiler in 32-bit mode??) - -**On Windows,** the only known way is to install a 32-bit Python -manually. (XXX how to run the compiler in 32-bit mode??) - - .. _`x86 (IA-32)`: http://en.wikipedia.org/wiki/IA-32 .. _`x86-64`: http://en.wikipedia.org/wiki/X86-64 .. _SSE2: http://en.wikipedia.org/wiki/SSE2