DEV Community

Cover image for GSoC Week 9
Chiemezuo
Chiemezuo

Posted on

GSoC Week 9

Compared to the previous weeks, this week had little "excitement", but I was particularly grateful for that. Sometimes, stability beats excitement, because one can only keep on for so long. Let's dive right in.

Weekly Check-in

My mentors and I went through the previous week's work. My tasks from the last week were mostly successful, so there was positive news on my end. I also had to open up to my mentors that given the situation of things, the stretch goal of using AI to generate alt text was looking less feasible. They understood, but we agreed to discuss more about it in the coming week.

We particularly talked about pending tasks that were stalling the completion of the PRs. I drafted a work outline of how I planned to approach completing the changes provided I did not encounter any esoteric Wagtail internals that would require special assistance. Storm mentioned his holiday starting in the coming week, so I mentioned that I'd work a bit faster so I could make the most out of his current availability before the holiday time comes.

Thibaud and I agreed to bi-weekly (twice a week) sessions where we could address bottlenecks and blockers. His own holiday would be starting on the 1st of August, and he promised to dedicate some of his time to helping me out, especially in the would-be absence of my primary mentor Storm.

Finally, the weekly check-in ended with my mentors notifying me about an internship post I would have to make towards the end of GSoC. Storm told me I would probably receive the official email soon, but he wanted to give me a heads-up so I could brace myself for it.

Challenges

I faced some really tough challenges trying to render a custom form template for my new block. Of course, I eventually had to reach out to Wagtail's lead dev for help towards the end of the week because I was hitting a brick wall. He was kind enough to give me some history about Wagtail, and why a certain development choice they made interfered with the default process I was trying to account for. He also gave me something to look at, and some helpful snippets of patch code I could write for this. This did work, but led me to another challenge which I would move to the following week, as it was already the weekend, and I had spent so much time trying to fix things.

That was the most challenging problem I faced, as everything else I was to do felt very familiar.

What I Learned

Among my technical tasks for the week, I had to update the bakeryDemo examples to use the new Block as the Wagtail standard. This then prompted me to read the contributing docs for the bakerydemo project, and consequently, it prompted me to look deeper into Django fixtures. It's on my list of things to read, and I just might write about what I've learned from it.

Exploring the form template for the ImageBlock also exposed me to the crafty way Wagtail mixes a bit of server-side rendering with client-side rendering, and by extension, the Telepath.js library. That was/is a part of Wagtail I had barely ever touched, so my curiosity got the better of me.

Finally, I had to move the release notes because these new features would no longer be candidates for version 6.2. I tweaked them and temporarily moved them to a Google Doc, to be shared when it's time to make the changes.

As a side fun fact, I think I'm gradually getting the hang of the versioning systems.

Thank you once again for reading this far.

Till next time.
Cheers 🥂

Top comments (0)