divi's Blog

Week 2

divi
Published: 06/12/2023

What did I do this week

I merged my first PR this week! With this, my first GSoC project has been completed, there is some documentation that I need to add for this feature to the Borgmatic docs, and I'm planning to do that this week. My plan was to complete this task in 2 weeks and I've been successful in doing that. I worked on writing tests for this PR, and getting the final thing reviewed by witten. Things are comparatively a liiiitle slow on the Vorta side, but I'll (try to) get 3 of my PRs merged this week out of the 5 tasks I'm doing as part of my first Vorta project. 

Did I get stuck somewhere

Yup, writing tests for my Borgmatic feature was difficult initially, but witten trusted me and gave me just enough hints so I could take complete ownership of the task and finish it myself! I was really happy to get it merged, thanks to his inputs. Also got a pretty good quote from him I'm gonna remember when I write tests next time:


Tests should be about defining and enforcing the contract that a unit under test has with its caller. If a part of the contract isn't defined in the tests, then it's not part of the contract.

What's next

I'll get my 2 open Vorta PRs merged and might get a 3rd one merged too. For the last 2, I'll do them next week, I have some code for one of them ready right now, just need to refactor and update it a bit. For Borgmatic, I'll start working on my second project today and might get a PR in by the end of this week. The plan to complete everything except "Exclude GUI..." in June itself is still on! 

 

View Blog Post

Week 1

divi
Published: 06/05/2023

What did I do this week

As I mentioned in my last blog, this week I was focused on completing my first project, "Bootstrap a restore from nothing" for Borgmatic. I had a timeframe of 2 weeks in mind for the project, and I am on the right track currently. The PR only needs a few minor changes and I need to write tests to cover my additions, I hope to get it merged this week.

I also started work on my 2nd project - Improve the Archive tab for Vorta, I broke it down into 5 tasks, and created a PR for the 1st one - https://github.com/borgbase/vorta/pull/1723.
This is a ~50 hour project according to my mentors, I should be able to complete it in 1-2 weeks. I'll try to complete these 5 tasks as soon as possible so that I have time for the "Exclude GUI..." project. Once that gets completed in time, I can keep improving the archive tab if needed.

Did I get stuck somewhere

No.

What's Next

In the coming week, I plan to complete my first project, "Bootstrap a Borgmatic restore from nothing" after writing tests for my changes and getting them merged.

I also plan to work on a few of the tasks listed in Vorta#1723, and start playing around with Borgmatic code for my 3rd project, "Restore a Database to another database name/hostname".

I plan to leave around 5-6 weeks for my last project, "Exclude GUI for Vorta", since I might need more help from my mentors with that one.

View Blog Post

Week 0

divi
Published: 06/01/2023

What did I do this week 

I have been getting to know my mentor, Dan (witten), and sharing my ideas with the community during the Community Bonding Period.

I had an introductory call with my mentor early on in the Community Bonding period where we discussed how he can best mentor me and what is expected of me during the GSoC period, we shared our past work experiences  and I was excited to work with him!

I have talked to all other mentors to get a review for my Vorta designs as well.

I shared a design I plan on implementing for the Vorta Exclude GUI here - https://github.com/borgbase/vorta/issues/907

and opened a Draft PR for my second project, Bootstrap command for Borgmatic here - https://github.com/borgmatic-collective/borgmatic/pull/71.

Additionally, I have been working on getting my previous Pull Requests merged.

Did I get stuck somewhere

I was having trouble using argparse for Borgmatic#71, but witten helped me understand how things work and I was able to complete the parsing side of things!

What's Next

Next week, I plan on getting my first GSoC PR merged, for Bootstrapping a restore from nothing. I'll keep improving the feature later if I have more time, but witten and I are satisfied with the current scope of the project too.

Other than that, I'll start working on my second project, restoring a database backup to a different hostname/database name.

 

 

View Blog Post