naftaliharris / tauthon

Fork of Python 2.7 with new syntax, builtins, and libraries backported from Python 3.
Other
669 stars 42 forks source link

Tauthon

CI

Tauthon is a backwards-compatible fork of the Python 2.7.18 interpreter with new syntax, builtins, and libraries backported from Python 3.x. Python code and C-extensions targeting Python 2.7 or below are expected to run unmodified on Tauthon and produce the same output. But with Tauthon, that code can now use some of the new features from Python 3.x.

Virtualenv support is provided by an external plugin: virtualenv-tauthon.

What's new in Tauthon

Building and Installation

Linux:

$ ./configure
$ make

OSX:

$ brew install openssl xz
$ CPPFLAGS="-I$(brew --prefix openssl)/include" LDFLAGS="-L$(brew --prefix openssl)/lib" MACOSX_DEPLOYMENT_TARGET=10.6 ./configure
$ make

You can then run Tauthon with ./tauthon or ./tauthon.exe.

Install with

$ make install

Backwards-incompatibilities

There are a small handful of backwards incompatibilities introduced by Tauthon. Triggering these involves checking the Python version, introspection of Python internals (including the AST), or depending on errors being raised from nonexistent new features.

License

Tauthon is licensed under the Python Software License, (see the LICENSE file for details). This is not an official Python release; see PEP 404.