As I’ve been asked by different people about data from older releases of
GTK+, after the previous article on Who Wrote GTK+ 3.18, I ran the
git-dm script on every release and generated some more data:
|Release||Lines added||Lines removed||Delta||Changesets||Contributors|
Here you can see the history of the GTK releases, since 2.0.
These numbers are to be taken with a truckload of salt, especially the ones from the 2.x era. During the early 2.x cycle, releases did not follow the GNOME timed release schedule; instead, they were done whenever needed:
Starting with 2.14, we settled to the same cycle as GNOME, as it made releasing GNOME and packaging GTK+ on your favourite distribution a lot easier.
This disparity in the length of the development cycles explains why the 2.12 and 2.14 cycles, which lasted a year, represent an anomaly in terms of contributors (148 and 140, respectively) and in terms of absolute lines changed.
The reduced activity between 2.20 and 2.24.0 is easily attributable to the fact that people were working hard on the 2.90 branch that would become 3.0.
In general, once you adjust by release time, it’s easy to see that the number of contributors is pretty much stable at around 90:
Another interesting data point would be to look at the ecosystem of companies spawned around GTK+ and GNOME, and how it has changed over the years — but that’s part of a larger discussion that would probably take more than a couple of blog posts to unpack.
I guess the larger point is that GTK+ is definitely not dying; it’s pretty much being worked on by the same amount of people — which includes long timers as well as newcomers — as it was during the 2.x cycle.
Both 2.0 and 3.0 are not wholly accurate; I used, as a starting point for the changeset period, the previous released branch point; for GTK+ 2.0, I started from the
GTK_1_3_1tag, whereas for GTK+ 3.0 I used the
2.90.0tag. There are commits preceding both tags, but not enough to skew the results. ↩
glib gtk development gnome who makes gnome