From 153a110a1dbf1f4a9b03b66085c4eb3f50d5d88b Mon Sep 17 00:00:00 2001 From: Mike Croucher Date: Sun, 1 Mar 2015 10:25:52 +0000 Subject: [PATCH] Updated README.m to refelect recent Py3 work --- README.md | 29 +++++++++++------------------ 1 file changed, 11 insertions(+), 18 deletions(-) diff --git a/README.md b/README.md index 98613ce5..a28bc827 100644 --- a/README.md +++ b/README.md @@ -10,6 +10,16 @@ A Gaussian processes framework in Python. Continuous integration status: ![CI status](https://travis-ci.org/SheffieldML/GPy.png) +### Moving to Python 3 +Work is underway to make GPy run on Python 3. + +* Python 2.x compatibility is currently broken in this fork +* Running the 'dict' fixer from 2to3 caused more problems than it fixed! Trying to figure out why. +* The test suite runs but with fewer tests for some reason -- not sure why yet. +* Many tests in the suite fail! Don't even think about using this fork for production use +* All weave functions not covered by the test suite are simply commented out. Can add equivalents later as test functions become available +* Examples that required optimised versions of functions for speed reasons would be valued + ### Citation @Misc{gpy2014, @@ -109,24 +119,7 @@ Run nosetests from the root directory of the repository: or from within IPython import GPy; GPy.tests() - -### Moving to Python 3 -Work is underway to make GPy run on Python 3. We are not there yet! Changes performed so far have retained compatibility with Python 2.6 and above. - -Work done so far: - -* Used 2to3 to fix relative imports -* Used 2to3 to convert print from statement to function. Some advanced uses of print meant that this could not be done in a way that retained compatibility with old versions of Python. The oldest version of Python that is supported by this version is 2.6 due to the required future imports. -* Used 2to3 to convert exceptions to Python 3 friendly versions. There are a few oustanding string exceptions to take care of that 2to3 doesn't handle. Will need to do these manually -* Handled the different imports required for ConfigParser/configparser in Py2/Py3 -* In utils/linalg.py: - * Commented out the function cholupdate(L, x) since it doesn't appear to be used. Its definitely not in the tests.s - * Put the import for scipy.weave in a try/except block so that it will gracefully fail in Py3 -* Fixed a couple of urllib2 issues - had to be done mannual since 2to3 didn't help - - - - + ## Funding Acknowledgements