[Week 11] — Fixing the dreaded bug

Yash Sharma
3 min readAug 4, 2019
The joy of fixing a bug is unexplainable!

This blog post deals with the entry of tasks that I did for the 11th week for the project under Google Summer of Code 2019.

Working on the APE14 in astropy plotting

I had been working on the astropy branch, so I had been regularly pushing bug fixes to it, customizing the code, so the new support works for NDCube as well. I had sent a PR for supporting plotting for SlicedLowLevelWCS, but astrofrog the writer of the astropy PR suggested me to shift that into his PR, such that the git history remains elegant. I modified the PR and sent it.

I also had issues with SunPy not supporting APE14 methods in their master branch, so I sent a PR adding one. This was an easy one, so got it merged quite fast.

Merging up the PR176

Well, this PR has been discussed quite a lot of times, such that it deserves a separate blog post about how much effort had gone into it for getting it merged.

I had worked on this PR earlier, so after discussing with Dan about the plan of course of action, I decided to fix the corner case, that was creating the issue. I sent a PR to SunPy, and asked Dan and Cadair to review them. PyAstro was arranged this week, so it was quite hectic for them to do a code review. Somehow, Dan managed to take out time to review both of them, and I was swift enough to make the changes on the go so that the PR gets merged as fast. After some nitpicking and some conceptual errors :P, we finally agreed to a point that the PR was fixing all the bugs that it was intended to do so. This was a huge moment for me, as I was finally able to get it merged, after a lot of traversals. Thanks Dan for taking out the time, as I started to work on the next bug fix, associated with axes_coordinates for plotting.

Planning up for writing the test-cases for gWCS

This was something, that I wanted to discuss with Cadair, for I wanted to divert my mind from plotting and get something else done for NDCube2.0. I had the goal of getting the test-cases covered for NDCube so I thought that why not get it done now, before dealing closing the plotting. My progress is blocked with this PR, so I would like to get this merged before it closes the bug saga for plotting in NDCube. I will then have to merge the master with ape14_rewrite so that seems to be challenging for me.

Potential roadblocks before the project gets completed

This seems to be a rough estimate for me regarding the tasks that I need to cover before the project gets completed —

  • Getting PR189 merged
  • Merging the master with ape14_rewrite.
  • Completing the plotting for NDCubeSequence.
  • Writing tests for gWCS.
  • Writing documentation for the revamped portion of NDCube.

Only the 3rd point is loosely coupled with the rest, as the others can depend on the previous ones to be completed before some work can be done. This seems frustrating, as even though 4 tasks seem to be left, these are quite small ones, which can be completed within a week. I am keeping my fingers crossed because once the 1st one gets merged, I can breeze through the rest of them, so I really hope that Dan reviews the first asap.

Tasks for the next week

My objective would be to complete the testing of gWCS which seems to be loosely coupled with the rest of the objectives. I would also wait on Dan reviewing PR189, so I would really hope that this gets done. If the test-writing turns out to be short, I would then switch to completing the plotting using APE14 for NDCubeSequence.

Link to my previous post

  • [Week 10] — Dan is back! — Link

--

--