Time flies ! Now I have reached to middle of my outreachy internship. This blog post will throw some light on my journey till now .
Initially when I applied for outreachy I proposed this timeline .
- May 30 - June 13 => replace gtk+-3.0 with gtk4 library and fix all build error which comes while doing so .( 2 weeks)
- June 14 - June 27 => Fix runtime errors ( 2 weeks)
- June 27 - july 18 => Replace libhandy with libadwaita and rewrite needed ui files and fix error which come in doing so ( 3 weeks )
- July 18 - August 1 => Improve custom stlyes to make app work better with dark theme ( 2 weeks)
- August 1 - August 15 => Make app follow Gnome HIG guidelines . (2 weeks)
- August 15 - August 26 => It is the time which I have kept as empty to adjust my timeline above in case I need to .
I think the timeline was fine . But fixing errors is not that easy as I thought back then specially the run time errors . For fixing these I usually have to go through code , run the development version of application then edit the code and so on .
And in this cycle I also have to occasionally consult the documentation of different libraries getting used in the project .
We have changed a bit timeline and the new timeline looks like so
- July 18 - August 1 -> Debug and fix gtk4 branch issues
- August 1 - August 15 -> Clean the MR code and improve the code quality
- August 15 - August 26 -> Document the current gtk4 branch problems and what's left and start a discussion with the community (users, translators and designers) about UI improvements
I have never ported any application from gtk3 to gtk4 before so I wasn't much confident whether I will be able to complete my project or not , how much time I will need ... So I started coding on my end a bit before the outreachy timeline . Therefore , right now I am nearly on my timeline . I have changed the gtk library version from 3 to 4 and also some other libraries with which gtk4 wasn't compatible with. The application can be successfully compiled now ( so all compile time / build time errors have been rectified 😊 but still there are some run time issues and errors ) .
I removed some functionalities while porting the application ( not the primary functionalities ) as well as there is a lot of code has to be clean .
In simple words application is now in workable state but not in a complete working state .