Updated README.m to refelect recent Py3 work

This commit is contained in:
Mike Croucher 2015-03-01 10:25:52 +00:00
parent 34103ca37c
commit 153a110a1d

View file

@ -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