Serenity Operating System
at portability 26 lines 944 B view raw view rendered
1# Python 3.6 Port 2 3This port is highly experimental. Python binary can be started with `python3`, but many 4functionality is expected to not work. 5 6## Why this version is used 7 8Python 2.7 will not be supported in future, see e.g. [pythonclock.org]([https://link](https://pythonclock.org/)). 9Python 3 is a good candidate for porting. Until Python 3.6 it is easily possible to disable 10multi-threading API via `--without-threads` option. This is needed until SerenityOS provides the 11pthread APIs. 12 13## How to improve 14 15Run the Python test suite via `python3 -m test` to see what fails and start working on that. 16If functionality in LibC/LibM/Kernel/... is updated, recompile Python with `./package.sh build`. 17 18## Known limitations 19 20* No locale support, default locale encoding set to utf-8 21 22* Instead of `/dev/urandom`, `/dev/random` is being used 23 24* No multi-threading 25 26* time module not working due to missing time related functions in LibC/Kernel