System Requirements ------------------- Python Runtime ++++++++++++++ **NOTE:** Only Python 3 is supported. **Python 2.7 is no longer supported.** Use a ``1.x.y`` version of ``hebi-py`` for Python 2.7 support. Since this API uses ctypes, only CPython (the reference implementation of Python) is offically supported. PyPy3 (Version 7.1.0 or newer) support is in its alpha stage. Platform Support ++++++++++++++++ Windows, MacOS and Linux are the currently supported platforms. This API determines the correct binary to load at runtime, and if you attempt to run it on an unsupported platform, it will raise an Exception. For Windows, x86 and x64 Python runtimes are supported. ARM and ARM64 runtimes are in the works with no promise or roadmaps set. **NOTE:** It is recommended to run the ``x64`` Python runtime on Windows, as the C API binary is better optimized for 64 bit environments. Linux +++++ For Linux, 64 bit x86 and ARM platforms are supported. The 64 bit `x86` platform, ``x86_64``, is the only supported `x86` platform supported moving forward. **NOTE:** If you require a 32 bit `x86` build (`i.e.`, ``i686``), you must revert to a ``hebi-py`` version of ``1.0.0`` or earlier. Note that for 32 bit ARM, only the ``armhf`` ABI is supported. This is the newer (as opposed to ``armel``) 32 bit ABI. ``armel`` will not be supported. To determine on which ABI your 32 bit ARM powered Linux distro runs, ``uname -p`` may help. However, unless you are running on an old embedded development board, or a microcontroller like an Arduino, there is a good chance that you are using an `armhf` compatible device. For 64 bit ARM, only the ``aarch64`` ABI is supported. The ``aarch32`` is incompatible. However, most Linux distros use the ``aarch64`` ABI.