Releases: oracle/graalpython
Graal Python - GraalVM Community Edition 1.0 RC14
This is a Python 3 implementation on top of GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting. The main focus of development right now is to get NumPy, SciPy, and related libraries working.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
Changes in RC14:
- Mark a subset of the Graal Python launcher options as "stable". All other options are subject to change and need to be unlocked explicitly on the commandline.
- Automatically install pip when creating a venv. The socket and ssl libraries are still not functional, so pip can only install from local sources or wheels.
- Update the standard library to Python 3.7.0 from 3.6.5.
- Support the -I flag to ignore the user environment and not add the working directory to sys.path
- Fix an error preventing usage of the memtracer tool. If an object raised an exception in it's
__repr__
method, it would abort the execution. - Fix issues around not being able to modify function defaults, keyword defaults, or re-defining a function with a different closure.
- Fix continuation prompt in the interactive Python shell when an incomplete statement was typed. Before it raised and ignored a SyntaxError.
- Fix frame restarting of Python functions in the Chrome debugger. Before, functions with closures would have their cells accidentally cleared.
Graal Python - GraalVM Community Edition 1.0 RC13
This is a Python 3 implementation on top of GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting. The main focus of development right now is to get NumPy, SciPy, and related libraries working.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
Changes in RC13:
- Support marshal.dumps and marshal.loads for code objects and some other built-in objects
- Fix installation of NumPy in a venv
- Initial support for module mmap
- Support debugging with workspace files in the Chrome debugger
- Support the PEP 553 breakpoint() message
- Support running weak reference callbacks and signals on the main thread
Graal Python - GraalVM Community Edition 1.0 RC12
This is a Python 3 implementation on top of GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting. The main focus of development right now is to get NumPy, SciPy, and related libraries working.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
Changes in RC12:
- Support the
__class__
variable in the class scope - Support module-level docstrings
- Initial support for the venv standard-library tool
- Initial support for the built-in _bz2 module
- Initial support for the pandas package
- Initial support for OSError subclasses based on the errno of the exception
- Fix bytearray inplace add to return the same object
- Fix access to standard Python methods (
__repr__
,__str__
,__len__
and the like) for foreign objects
Graal Python - GraalVM Community Edition 1.0 RC11
Graal.Python is a Python 3 implementation for GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting. The main focus of development right now is to get NumPy, SciPy, and related libraries working.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
Changes in RC11:
- Add the
ginstall
custom module to install known packages such as NumPy and setuptools usinggraalpython -m ginstall
- Add support for the
yield from
syntax - Add more built-in methods to the
time
module - Add support for the standard
zipfile
module - Add the built-in
_cvs
module - Improve performance of various C API operations
- Improve performance of
os.scandir
and functions that build on it (such asglob
) - Fix various performance regressions introduced in RC10
- Fix
[]
access with non-integer keys for array-like polyglot objects - Fix the implementation of standard streams so they are cooked, buffered streams
- Fix reporting that we have a TTY console in a conservative way if we are run through the Python launcher
- Remove exposure of internal languages through
polyglot.eval
Graal Python - GraalVM Community Edition 1.0 RC10
Graal.Python is a Python 3 implementation for GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
Changes in RC10:
- Improve performance of C API upcalls
- Improve performance of classmethods, staticmethods,
globals()
, andlocals()
- Improve performance of various string and bytes operations
- Initial support for the
_thread
builtin module (actual multi-threading is still disabled, the API defaults to a dummy implementation) - Implement the
zipimporter
module - Support assignment to
object.__class__
- Use the new Truffle filesystem API to get/set the current working directory
- Attempt our best to report side-effects in KEY_INFO
- The KEYS message now responds with attributes and methods, never dict keys
- Support the
input
builtin - Add DEBUG launcher options for performance debugging
- Ensure context isolation for file descriptors and child PIDs
- Fix passing custom locals and globals through
exec
andeval
- Fixes to builtin
help
Graal Python - GraalVM Community Edition 1.0 RC9
Graal.Python is a Python 3 implementation for GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
Changes:
- Support help in the builtin Python shell
- Add readline to enable history and autocompletion in the Python shell
- Add support for the -q, -E, -s, and -S Python launcher flags
- Improve display of foreign array-like objects
- Improve support for string and bytes regular expressions using our TRegex engine
- Support loading site-packages installed with easy_install
- Initial support for the binascii module
Graal Python - GraalVM Community Edition 1.0 RC8
Graal.Python is a Python 3 implementation for GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
New features in RC8:
- Support help in the builtin Python shell
- Add readline to enable history and autocompletion in the Python shell
- Improve display of foreign array-like objects
Graal Python - GraalVM Community Edition 1.0 RC7
Graal.Python is a Python 3 implementation for GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
Changes since RC6:
- Added support for the re.split builtin.
- Enhanced the java interop builtin module with introspection utility methods.
- Using https://www.graalvm.org/truffle/javadoc/com/oracle/truffle/api/TruffleLogger.html for messages output in verbose mode.
- Changes in C extension interface to reduce overhead.
Graal Python - GraalVM Community Edition 1.0 RC6
Graal.Python is a Python 3 implementation for GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/
Changes since RC5:
- Support regular expression patterns built from bytes by using CPython's sre module as a fallback engine to our own
- Support LLVM 5+ for C extension modules
- Introduce native sequence storage so that e.g. Python bytes exposed to C can be mutated
- Introduce lazy string concatenation to significantly speed up benchmarks where strings are concatenated repeatedly
- C-API improvements to support more scikit-learn code
- Fix our distinction between builtin functions, functions, and methods to make the classes for builtin functions equivalent to CPython
- Improve set, frozenset, and dict support
- Attach Python exceptions as cause to ImportErrors raised for C extension modules
- Update standard library to CPython 3.6.5
- Support more code object attributes
- Support constant type ids for objects that are interned on CPython
- Add collections.deque
- Document how to contribute
- Improve efficiency of generators
- Enable re-use of ASTs in multiple Contexts in the same Engine
Graal Python - GraalVM Community Edition 1.0 RC5
Graal.Python is a Python 3 implementation for GraalVM. Currently, it is in the early stages of development and as such, it is not ready for any serious applications beyond simple use cases and scripting.
The Python language components can be installed in GraalVM using the gu utility.
More information is available on the GraalVM website: http://www.graalvm.org/docs/reference-manual/languages/python/