Implement AxographIO module with tests#550
Implement AxographIO module with tests#550JuliaSprenger merged 2 commits intoNeuralEnsemble:masterfrom will-hart:axograph_rawio
Conversation
|
Hello @will-hart! Thanks for updating the PR.
Comment last updated on September 17, 2018 at 22:08 Hours UTC |
|
@will-hart: thank you very much for this PR.
|
|
Yes, I've had some trouble signing up to I'm not sure about the code coverage reducing - have I messed up the tests somehow? |
|
@will-hart I took the liberty to manually activate your GIN account. Feel free to sign in. Cheers |
|
Thanks @cgars PR for the test files: https://web.gin.g-node.org/NeuralEnsemble/ephy_testing_data/pulls/3. |
|
The axographio tests are currently not running on circle ci due to the missing axograph installation. This PR https://github.com/will-hart/python-neo/pull/1 should fix this. @will-hart: can you give it a try? |
|
As the current maintainer of axographio, I'm excited by this and am eager to see it in the next release of Neo. Currently two tests are failing for both ci/circleci: test-2.7 and ci/circleci: test-3.6:
I'd like to help, but it's not clear to me that either of these relate to |
|
Hi @jpgill86, I agree it's a bit weird these seemingly unrelated tests fail by adding axographio to the requirements. I suspect there are additional changes in other package versions coming with it and thus failing these tests, but I haven't had time to look into this. It's on my todo list, but I can't promise anything. |
|
I discovered |
|
Done, thanks for taking a look at the PR! |
|
I think PR will-hart#3 should resolve these failing tests. Looking forward to seeing AxographIO in a Neo release! |
|
Great, ci/circleci: test-2.7 and ci/circleci: test-3.6 are passing when once they were failing, but now continuous-integration/travis-ci/pr is failing when once it was passing! The problem seems to be isolated to the Python 3.5 build in TravisCI. I can't imagine what might be going on, but I'll take another look. |
|
The issue appears to depend on which version of NumPy is installed and doesn't actually depend on the Python version. I've only done some spot testing, but it seems that the older NumPy 1.14.5 does not fail these tests, but the newer NumPy 1.15.0 does. This is true even if I install Neo from upstream master instead of from this topic branch, so it seems to have nothing to do with axographio. Here's a minimal reproduction of one of the tests currently failing for this PR: On my machine, if I create fresh environments in Anaconda and install NumPy 1.14.5 and Neo from upstream master, this code runs fine. If NumPy 1.15.0 is install, the assertion fails. This is the case regardless of whether the Anaconda environment is Python 3.6, 3.5, or 2.7. For some reason that I haven't been able to discover yet, the older NumPy version 1.14.5 was selected and installed automatically when I used Unfortunately, the TravisCI build logs do not show which version of NumPy is installed, so I can't check my hypothesis right now. Since this appears to have nothing to do with axographio or the change made in the latest merger in this PR, I'm not sure why this wasn't a problem before but is now, nor why upsteam master is currently passing tests. |
|
I've characterized the problem I described above in a new issue: #556 This seems to be an issue either with Neo's master branch or with NumPy, but not with this PR nor with axographio. |
|
The problem with continuous integration described above and in #556 is now resolved and a fix has been merged into master. @will-hart, if you rebase these changes onto master, CI tests should pass, and hopefully AxographIO can be merged too. |
|
@jpgill86 great, thanks. It might be a few days but I'll rebase as soon as I can. |
|
OK, finally got around to rebasing today... and it looks like CircleCI is now failing with a bunch of warnings and deprecation messages. |
|
Hmm, looks like the commits you previously merged from will-hart#1, will-hart#2, and will-hart#3 were discarded. Can you merge them in again? |
|
Oh yeah of course, I must have forgotten to pull the changes locally. My excuse is I'm a bit sleep deprived at the minute as we've just welcomed a new arrive into our family :). I'll sort it out now. |
|
Congratulations @will-hart, that sounds like happy news! I'm beginning to suspect this PR is cursed! After I fixed a bug in the axographio package that was causing some tests to fail here, we uncovered a new set of broken tests that had nothing to do with this PR and which popped up because Travis CI changed their default build settings within a narrow window of time. After about a month, we fixed the bugs in Neo and finally had those tests working in Travis CI again. You rebased this PR onto the latest commit in master, which was created just one day earlier and which passed its tests, and amazingly the tests are failing here again! I've started to characterize the new issue here: #568. Once again, the cause appears to be outside of this PR and, once again, it probably has to do with Circle CI changing their default build settings within that one-day window! Hopefully the new issue can be fixed soon, you can rebase again, tests will finally pass, and we can merge AxographIO into master, haha. 🤞 |
|
I'm not sure how much more of this emotional roller coaster I can take!!! 😄 OK, I'll wait for the go ahead to rebase again. |
|
@will-hart The tests are fixed in master now, if you rebase now they should hopefully pass. |
|
Tests are broken again. See #572. @will-hart, don't rebase yet. |
|
OK, tests are passing on master again. @will-hart, can you rebase once more? Quick, before something breaks again! 🤣 |
@JuliaSprenger will-hart/python-neo#1 @jpgill86 will-hart/python-neo#2 will-hart/python-neo#3
|
@will-hart @JuliaSprenger @bjoern1001001 Tests are passing! Ready to merge! |
|
Congratualtions, finallly everything works. Thanks for staying with this PR for so long! |
|
Vous êtes des champions!! |
This PR proposes an IO class for reading from AXGX and AXGD files using
axographio. It provides an alternative toStimfitIOfor importing axograph files which may be a bit easier to get up and running, particularly on Windows.