Skip to main content

Docs and Marty and the Moving Around of Code and Tests

Since the last post, I worked on the moving-the-code task. Me, Nabil and Alasdair got on a call to discuss what should go where and I ended up creating a scraper_utils.py file to complement the scraper.py file. The other options were moving the functions to .util.net or inside the scraper.py file but outside the Scraper class. After I moved the tests as well, I wrote new tests, increased test coverage and renamed some functions which were previously named in the JavaScript-style CamelCase.

Across the Summer of Code

I spent the most part of my time since last blog-post working on the failing tests. The most complex client to fix and the most complex client in general, the GOES Client, needed to be changed a bit. The problem that arose there was mainly because of how we earlier had the liberty of parsing out any variable given down in the pattern since that string would never be used to act as a url but since we also want it to do the job of the baseurl, we can’t have any to-be-determined value in the base parts.

Wild Wild Tests

Fool-Proofing the Rewrite After the last post, I mostly kept working on fixing the other failing tests and rewriting the tests to go with the newer pattern. Not All Failing Tests are Built Same I managed to take care of them in a couple of days, except the sunpy/net/tests/test_scraper.py::testFilesRange_sameDirectory_local which proved to be a tough one to figure out. After discussing it a bit, I was able to figure it out, the error was caused because of a very unique flow of things which I think would be interesting to mention.

Scraper Things

Most of the week was spent rewriting the Scraper functions to go with the new parse-pattern and then looking for edge cases in the new implementations, fixing bugs and updating tests. {{Catching up}} In the scraper, while trying to merge baseurl (an strftime formatted pattern i.e. %Y%m etc) and pattern (parse formatted pattern i.e. {year:4d}{month:2d} etc), I faced two choices, we could either: Make the input all parse-style formatted. generate the datetime-compatible string from here wherever it is required, however the problem i was running into here is parse-stuff like {year:2d} will collide with {instrument} like placeholders on which we mean to call .

Into the Summer of Code

I had my end-semester exams during the Community Bonding Period and the real-early part of the Coding Period. However, my mentors were super-accomodating. I spent a few days on plans with friends before bidding goodbye for the summers, travelling home and relaxing a bit. The Talk This was also the time when IIT BHU reached out to me for a talk as part of a collab between their Astronomy and Open-Source clubs about Astronomy in tech and OSS.

Getting Selected As A GSoC student at SunPy

What is The Google Summer of Code? It is a program by Google for promoting students to contribute to open-source communities. It is also a G R E A T opportunity for us to work on projects with such big impact. I’m so glad I came to know about it. I loved that I could get this opportunity to work with people involved in developing software that is used by many.

Why I like Random Access Memories so much.

Why I like Random Access Memories so much. before i start you may have seen the length of this post. it’s incomplete. like as in i’ve just copy-pasted the rough-incomplete-pointers-at-the-end incomplete. you may ask why that is, it’s because it’s RAM’s 10th anniversary today which’ll end in exactly 5 mins in my timezone, i want to get this out before that happens. what’s random access memories? it’s a p cool album from Daft Punk, it’s very nice.

march-end

What I’m doing these days. (or more accurately how Watchmen is giving me an artificial crisis) Been obsessed with Watchmen. The original Graphic Novel and the show. I feel weird about the show. Almost like it changes my perception and the safe model I had of Watchmen universe until I saw it. Kind of like how everyone felt when they heard about Dr. Manhattan. It’s hard to have to decide how I want to think about the phenomenally earth-shatteringly great universe set up by the original Graphic Novel.

Mentoring a Project in Kharagpur Winter of Code

The Kharagpur Winter of Code is an annual five week long program where students new or unknown to free and open-source software contribute to coding projects registered in the program by experienced mentors or project owners and gain experience in contributing to open source software. All credit to the JOOS (JODC and OSDC) folks for introducing me to the program. I liked what the program was about and had my fingers crossed throughout the year, looking forward to participate when the time came.