Closed andrewheusser closed 7 years ago
If we run in 3.4 now, what fails?
haven't tested it fully yet, but most of our code is already compatible with both. PPCA is not compatible with python3, so we'll have to figure out how to handle that.
For now we could have PPCA not install if using Python 3, and then check for Python 3 in reduce.py. e.g. Reduced functionality, but most things would work.
This wasn't too bad after all. I'm done making the code compatible with 3, but want to run some tests to make sure. PPCA is only 1 script, so instead of using as a package, I could just include it in our externals folder. It doesn't seem like its being maintained anymore... Alternatively, I could submit a PR to the PPCA repo with python 3 upgrades (they are very minimal).
I'd submit a pull request to PPCA (it'd be nice). In the mean time, assuming their license allows us to do so, let's copy the single script into our code base and remove it from requirements.txt.
👍 apache open source license, i think we are good
Are we set with this?
The python 3 support is done, just need to merge in the branch, and add it into travis. In that branch, I also moved the PPCA code into _externals, and modified the code for python3 support. I posted an issue on the PPCA repo about a PR, but haven't heard back yet so I might just submit it because its finished: https://github.com/allentran/pca-magic/issues/3
I think support for python 3 would be considered a 'major' add, so possibly incrementing to 0.2.0?
would also be good to add support for matplotlib 2.0, so maybe release both together in 0.2.0..
Let's close this issue, update the readme, and push to pip now that we have Python 3.x support. We can open a new issue for matplotlib...
Another question: should we be using Python 3 as a lab? Not sure why we have been using 2.7...
👍 yea, I think it would be a good idea to move sooner than later. Any new software we should develop in python 3, and I think its easy to make it backwards compatible with some built in packages.
closing...please re-open if there are remaining issues to address
this will be essential moving forward. looking into the best way to support both 2.7 and 3.4+