-
Notifications
You must be signed in to change notification settings - Fork 59
Python 2/3 compatibility in Python code, streamline install doc, implement continuous integration, vastly simplify install #312
Conversation
scivision
commented
Jun 21, 2017
•
edited
Loading
edited
- C code still uses obsolete calls to Python lib, that is blocker for Python 3.
- removed some syntax errors in code
This is awesome. I've spent time looking through all the edits and I don't see a single thing that will break our code. I will perform some code tests in the coming days. I encourage the other developers to do the same! |
It would be lovely to get this incorporated before our next release. Have any tests been developed? |
If tests haven't been developed in time, at least the non-risky stuff like setup.py being made nice etc. could be done. |
@asreimer is writing up and working outside of superDARN at the moment, so probably not. The next release is scheduled for AGU. Dividing this up to separate the setup.py changes and python 2/3 changes is probably the best way to go. |
It's nice if pull requests have separate functions, but this is so straight forward (by that I mean reading the changes, I don't see any cryptic modifications to the code) that it seems like it might just be extra work at this point and delay it further than already has been. I did some testing back in June/July, but didn't post. I'll try to have a look at this on the weekend. I'm sorry about my absence. I've been monitoring though. The issue isn't that I'm working outside SuperDARN. The issue is that I'm writing my thesis (which is a sponge on my free time). It's also not an issue of developing tests to get this merged. People should test their own code on this branch. Until we get unit testing merged in, we have no standard testing. So I suggest people just test the branch, same as we do for other pull requests. Yes, usually a pull request comes with specific code to run, but this pull request touches everything, so we need to test everything. |
Ok, I resolved all the conflicts. I don't have time right now to post the testing code, but I will later this weekend. There's no reason for people not to test this code now that I fixed the conflicts :) Here's how you can get a branch set up to test the code:
And then you should start testing everything you can. Running setup.py, running all the unit tests that are hardcoded in at the end of files, running your own code, etc. I'll post the results of my own testing later this weekend. VERY strongly suggest NO other pull requests are merged before this. Resolving merge conflicts because we let a pull request go stagnant is annoying. I take the blame on this one since I fell off the planet for a few months. |
Another choice is that this pull request is broken up into smaller pull requests. I.e. low risk, easy to test (streamlined setup.py) vs. those that go deep into the code. |
Anything I can do to get this ready for AGU? |
It seems as though testing on this has been slow, as it has been on much of anything davitpy. I've already created the 0.8 release branch and pull request (#327) that is set to merge in on Wednesday. |
alright probably also it's just too big a pull request addressing multiple topics. Will try to catch up with the group next week. |
Quick update from me. Today I finish the draft of my thesis. After Christmas, I will finally have time to contribute again. Testing this is going to be pretty easy. It doesn't have to be any different than any of our other testing. Since we don't have unit testing, that's the best we can do... I suggest:
If we get 2 or 3 people doing this and then merge it immediately after the 0.8 release, we can fix any other little bugs along the way before the next release. I've read all the changes in this pull request. I would be surprised if this breaks anything. |
Closing this to do in several small pull requests. Thanks for your helpful input! |