GSoC: Phase 1

Vishnunarayan K. I.
Jun 27 · 1 min read

Phase 1 of GSoC is reaching its end and I’m here to talk about the work that’s been done this week(month).

This week was mostly finishing up the remote data manager. After finishing up the data manager, I moved on to using it in some submodules.

One of these was `sunpy.instr.lyra` . Lyra has to download some database files from the internet and these were not cached. So I changed lyra to use the cache which was developed with the remote data manager project. This was harmless and straightforward.

The problem was the unit tests lyra had. These tests had the database files inside the codebase itself. This meant that I had to come up with some way to add the test data files to the cache. This proved to be challenging and I tried out a couple of ways.

I ended up using a method similar to pytest-mock . The files can now be added to the cache using a pytest fixture and tests are happy now.

I also added an example which demonstrate the usage of the remote data manager.

With this the work for the phase 1 of GSoC has been completed.

The PR is now awaiting review from my mentors and others in the community. You can see the PR here.

I will now move on to working on various stuff in parfive, the async, pure-python, multi-file downloader sunpy uses. Parfive is not locked down to sunpy and is one of it’s kind. I urge you to check it out.