[GSoC 2021] Google Summer of Code 2021

@ankit Thank You for the Advice ! Working on the list now :slight_smile: I will refer to idea list from now on if I get stuck or In case of delayed response.

Regards :slight_smile:

For CMake you need to pass parameters at the configuration stage:

make -j8

Please notice GDKMM/GTKMM. After that build will fail on deprecated classes.


Hello friends and hello mentors @ice0 @ankit!, newbie here! I have used synfig for quiet sometime for my college projects and would love to contribute to it during GSoC. But seems like all of the project ideas are taken, are they?

@RukshanJS Greetings :slightly_smiling_face: I am also a Synfig contributor just like you. Don’t think like an idea is taken or not. Just make a proposal explaining your approach to a particular project.

Do refer to this discussion to know more about GSoC and you will get most of your doubts cleared.

For Contribution in synfig, I would suggest you to refer to the official synfig-docs, and try solving some good first issues. Don’t forget to fork the repo [^_^]


@ankit @ice0 @rodolforg I really want to start working on the project deprecated gtk classes . Can I already start working on the same ? If I am not selected in gsoc, then I will stop working on the same and the selected contributor will work on the project.

Till that time, kindly allow me to start working on the project idea.

Thanks and regards

I think this is a good idea. You need to make small changes to better understand what needs to be done. It will also help you when you start writing a proposal.

I also want to note that the students application period has already begun and the deadline is April 14.

Students can register and submit their applications to mentor organizations.

1 Like

@ice0 I have already submitted my draft proposals to synfig. They have been reviewed by @ankit ! Feel free to check them out and suggest me changes in them so that I can make them even better and improve them accordingly.

So, I am starting to work on the project itself. I will begin with the class gtk::StockId first and will move further accordingly. Feel free to share some tips that can be useful to me while working on the project.

Happy Learning [^_^]

1 Like

For those who are interested in the idea of replacing ETL classes.

This is a line of code from state_smoothmove.cpp:371.

smart_ptr<OneMoment> wait;if(selected_ducks.size()>20)wait.spawn();

This code uses smart_ptr and it’s spawn() method.
And here are the questions you should answer when you will be work on this project:

  1. What does this code do? (better to check state_smoothmove.cpp to see the whole function code)
  2. Which class from std can be used instead of smart_ptr here?
  3. Which method I will use instead of spawn()? (Please check _smart_ptr.h for details)

Feel free to write your answers here, this will helps other students too.


Student application deadline in few hours

April 13 18:00 UTC

please make sure the final proposal is submitted.

1 Like

@ankit Submitted the final proposals sir :heavy_check_mark: . Nervous yet excited at the same time :slightly_smiling_face::raised_hands:

Thanks and Regards

Unfortunately, I’ve been so swamped with schoolwork that I haven’t been able to do anything outside of it. Since I’ve decided to drop out of GSoC, I feel that @dhairya_bahl or anyone else might appreciate some of the things I’ve found snooping around deprecated Gtk classes:

Gio::ActionGroup and Gio::Action are interfaces, to replace them write a proper class or use Gio::SimpleAction.
Gtk::HScale and Gtk::VScale can be replaced with Gtk::Scale.
Likewise for Gtk::Scrollbar.
UiManager methods are altered in Builder – ex: add_ui_from_string → add_from_string.
Using a standard directory structure is better than Gtk::IconFactory.

I’ve also added the stderr of compiling synfig with disable deprecated for anyone not on Linux.error.zip (10.8 KB)


@rchen10 Thanks for your contribution! I enjoyed reviewing your PR :grinning_face_with_smiling_eyes: you submitted few weeks ago. Hope we’ll have you around again in the near future. I wish you good luck in your current studies.


I was exploring the code of deprecated classes from past few days and trying to understand the use of gtk::action and few other classes as well ! I am really excited to make PRs for the same.

Can I create an issue for the replacing deprecated class project idea as well ? and will start making PRs under that issue.

Or only the selected GSoC participants can work on that project ?

Either way will work fine for me ! No issues :slightly_smiling_face:

Sure. This is a good experience.

1 Like

A reminder to request for the slots in GSoC. Today is the last day. @ice0 @KonstantinDmitriev

Thank you for reminder! Already did.

1 Like

Congratulations @dhairya_bahl :fireworks: welcome on board!
Hope you will have a productive summer this year :smiley:

1 Like

Thank You so much for giving me this opportunity !! :grin::pray: Super excited to start contributing to the project !!

Thanks and Regards [^_^]

1 Like

@ankit @ayesdie @ice0 kindly tell me what next steps do I have to take ! Should I create a forum somewhere or I can ask my doubts over Github ! Do I have to strictly follow my proposal ? kindly tell me about some documentation that I can refer ? so that I can get started as soon as possible.

It would be great if someone can tell me some standard approach that I can follow for every file in ETL [^_^]

Thanks a lot again [^_^]

Congratulations @dhairya_bahl

Wishing you the best for the summer :smiley:

1 Like