The previous posts were about the
Gtk-rs libraries and issues we encountered. We decided to change the theme a bit by adding posts about
Gtk-rs’ most valuable fortune: its contributors. I’ll start myself and tell you my story inside the
Story of imperio
At first, the
Gtk-rs organization didn’t exist. This was a project to provide
GTK+ bindings for
Rust, started by jeremyletang. I joined him to speed up the development.
At the time,
Rust wasn’t even at its first stable version and breaking changes happened quite often. So beside working on the library itself, we had to make sure it still built with the current
Rust version. As the project continued to grow, it became more and more difficult to add new features and update the project’s code at the same time (the biggest issue was updating all of the old signals system).
At the beginnings, I mostly worked on adding new objects and structures to provide as much content as I could. It helped me understand the structure of this project quietly. Then, I created new macros to make the creation of new structures which inherit from
Rust 1.0 release
The 1.0 release of
Rust finally came out. Now I guess all of you must be thinking: “nice! Now you don’t have to update your code anymore, so no more problems!”. Well, this brought a new issue: some features we used in our project weren’t available on the
stable channel. So we had to keep an “actual” version with missing functionalities to allow people with stable versions of
Rust to use
gtk. It was (at least for me!) a big fight between adding new stuff and finding a workaround to keep stable
Around that time, we created new repositories to split out other library bindings (
pango) and then, I published their crates on crates.io. The little
gtk project (which wasn’t little anymore at all) just made a very big step by becoming available via Rust’s native packaging system, a single dependency line in
Cargo.toml away! It was for me a way to “officialize” our project.
Gtk-rs organization was created shortly after this (it was called
Around this time jeremyletang left the project and I became the only one in charge of the project. I finished my work on
gdk bindings and started to add the biggest missing part of this project: documentation!
As the time passed, gkoz joined me and we created (unnofficialy) the core team for
Gtk-rs (congrats to him \o/). He started a big refactoring of all the code structure. We decided then to create a website to let the users of
Gtk-rs follow changes (and breaking changes) more easily. For some reasons detailed in a previous post, the organization’s name was changed from
To conclude this post, I must say that I never thought I would take the leadership of this project and that I would get the help of such amazing people (contributors and users!). For me it was a way to learn a new part of
Rust and I hope I’ll be able to continue contributing to it a lot in the future!