Hi,
Is there some specific distro or platform that sets the oldest GTK+ version Geany needs to support? I had a conversation with Enrico on IRC some time back and he explained that Geany supports older GTK+ versions so that "enterprise" and similar distros which have really old packages are able to still able to compile/run it.
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
In case it's of any interest to anyone, I just did some searching around and here are some distro and GTK+ versions I could find:
RHEL 5 - GTK+ 2.10 RHEL 6 - GTK+ 2.18 Fedora 8 - GTK+ 2.12 Fedora 10 - GTK+ 2.14 Fedora 11 - GTK+ 2.16 Fedora 12 - GTK+ 2.18 Fedora 13 - GTK+ 2.20 Debian Lenny - GTK+ 2.12 Debian Lenny (backports) - GTK+ 2.18 or GTK+ 2.20 Debian Squeeze - GTK+ 2.20 Ubuntu Hardy - 2.12 Ubuntu Lucid - 2.20
Cheers, Matthew Brush
On 26 September 2011 18:21, Matthew Brush mbrush@codebrainz.ca wrote:
Hi,
Is there some specific distro or platform that sets the oldest GTK+ version Geany needs to support? I had a conversation with Enrico on IRC some time back and he explained that Geany supports older GTK+ versions so that "enterprise" and similar distros which have really old packages are able to still able to compile/run it.
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
In case it's of any interest to anyone, I just did some searching around and here are some distro and GTK+ versions I could find:
RHEL 5 - GTK+ 2.10 RHEL 6 - GTK+ 2.18 Fedora 8 - GTK+ 2.12 Fedora 10 - GTK+ 2.14 Fedora 11 - GTK+ 2.16 Fedora 12 - GTK+ 2.18 Fedora 13 - GTK+ 2.20 Debian Lenny - GTK+ 2.12 Debian Lenny (backports) - GTK+ 2.18 or GTK+ 2.20 Debian Squeeze - GTK+ 2.20 Ubuntu Hardy - 2.12 Ubuntu Lucid - 2.20
Well, the question is when do we stop supporting an OS for new versions of Geany. Old versions can of course continue if someone wants to backport bugfixes.
RHEL support is defined here https://access.redhat.com/support/policy/updates/errata/
This appears to be the longest support period I could find. They support new versions for the first four years for paid support and I don't see that it is reasonable to expect a community project to do better. That means that RHEL 5 runs out about now, so the allowed version of GTK jumps to 2.18.
But... Windows GTK has been seriously broken since 2.18, something that is rumored to have been fixed at 2.24!! So the last good windows version was 2.16. We would need to support that until a working 2.24 can be packaged with Geany.
Cheers Lex
Cheers, Matthew Brush _______________________________________________ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
On Mon, 26 Sep 2011 01:21:59 -0700, Matthew wrote:
Hi,
Is there some specific distro or platform that sets the oldest GTK+ version Geany needs to support? I had a conversation with Enrico on IRC some time back and he explained that Geany supports older GTK+ versions so that "enterprise" and similar distros which have really old packages are able to still able to compile/run it.
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
I don't know anything as specific as you probably want to hear, sadly. It's just that it raises up from time to time when users tell on what old systems they compile Geany.
Since we recently bumped the GTK requirements to 2.12 for the upcoming release, do we need to discuss this already again? Yeah, newer versions are cooler but is it necessary or just cooler?
Regards, Enrico
On 11-10-01 03:05 AM, Enrico Tröger wrote:
On Mon, 26 Sep 2011 01:21:59 -0700, Matthew wrote:
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
I don't know anything as specific as you probably want to hear, sadly. It's just that it raises up from time to time when users tell on what old systems they compile Geany.
It seems to me like this group of users would be very small and require that they are: - Enterprise/LTS users running a GUI - And who are willing to install unsupported software. - And whos distro doesn't backport newer libraries. - And who are developers, can compile Geany but can't compile GTK+. - And who are not satisfied with existing supported Geany packages.
I would just be curious to know how many (or what percentage of) users fall into this group.
Since we recently bumped the GTK requirements to 2.12 for the upcoming release, do we need to discuss this already again? Yeah, newer versions are cooler but is it necessary or just cooler?
It's not so much about "cool" as it is about using improved versions of the libraries. Lots of good stuff has been added since 2.12 (ie. in the last 4+ years of active development).
Just one example would be the GtkBuilder stuff which would not really be "cool", but it would make it easier to unglue some of the business logic from the GUI stuff and make fixing/developing Geany easier. Another example could be the use of GtkInfoBar, whether and where it might be useful is another discussion.
What's more, some existing #if'd code could be fixed to be used proper, again making Geany easier to fix/maintain (assuming there's some existing #if'd code blocks...I think I saw some).
Another reason, is to make it easier for people to help get Geany able to build with GTK+ 3 eventually, which probably many more users will care about in the somewhat near future than supporting extremely old versions of GTK+ 2. It would also help to attract new developers to Geany if they didn't have to "go back in time" to see what was the way to do GTK+ things 4+ years ago. No one likes writing deprecated code :)
IMO, Geany releases should keep up to date with the versions of libraries of mainstream distros (Debian, Ubuntu, Fedora, Etc.). It's not like the older versions of Geany for older GTK+ versions are going to be any less usable over time.
Of course this is just my $0.02 cents as some who has had many good ideas for improvements to Geany that have been stopped with needing to support ancient GTK+/GLib versions.
Sorry for the long email.
Cheers, Matthew Brush
On Sat, 01 Oct 2011 04:44:06 -0700, Matthew wrote:
On 11-10-01 03:05 AM, Enrico Tröger wrote:
On Mon, 26 Sep 2011 01:21:59 -0700, Matthew wrote:
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
I don't know anything as specific as you probably want to hear, sadly. It's just that it raises up from time to time when users tell on what old systems they compile Geany.
It seems to me like this group of users would be very small and require that they are:
- Enterprise/LTS users running a GUI
- And who are willing to install unsupported software.
- And whos distro doesn't backport newer libraries.
- And who are developers, can compile Geany but can't compile GTK+.
- And who are not satisfied with existing supported Geany packages.
I would just be curious to know how many (or what percentage of) users fall into this group.
I can't tell any discrete numbers, it's just here and then users tell about this. But most probably the amount of users using such old systems is way less than those who use much newer systems with e.g. GTK3.
Just one example would be the GtkBuilder stuff which would not really be "cool", but it would make it easier to unglue some of the business logic from the GUI stuff and make fixing/developing Geany easier. Another example could be the use of GtkInfoBar, whether and where it might be useful is another discussion.
What's more, some existing #if'd code could be fixed to be used proper, again making Geany easier to fix/maintain (assuming there's some existing #if'd code blocks...I think I saw some).
Another reason, is to make it easier for people to help get Geany able to build with GTK+ 3 eventually, which probably many more users will care about in the somewhat near future than supporting extremely old versions of GTK+ 2. It would also help to attract new developers to Geany if they didn't have to "go back in time" to see what was the way to do GTK+ things 4+ years ago. No one likes writing deprecated code :)
Ok, when talking about going towards GTK3 and maybe even GtkInfoBar, it obviously makes sense to bump the GTK requirements and that is completely reasonable. I just don't like 'let's bump just because it's newer then'. If there is a good reason, it's completely ok. If not, we would just annoy users sticked to an older system.
Regards, Enrico
On Sat, Oct 1, 2011 at 13:44, Matthew Brush mbrush@codebrainz.ca wrote:
On 11-10-01 03:05 AM, Enrico Tröger wrote:
On Mon, 26 Sep 2011 01:21:59 -0700, Matthew wrote:
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
I don't know anything as specific as you probably want to hear, sadly. It's just that it raises up from time to time when users tell on what old systems they compile Geany.
It seems to me like this group of users would be very small and require that they are: - Enterprise/LTS users running a GUI - And who are willing to install unsupported software. - And whos distro doesn't backport newer libraries. - And who are developers, can compile Geany but can't compile GTK+. - And who are not satisfied with existing supported Geany packages.
I would just be curious to know how many (or what percentage of) users fall into this group.
I belong to this group (at work where we use SLES 9 with GTK 2.4) except that I compile GTK to run Geany. As a rule, I use old versions of programs for about everything except Geany. Because of chain of dependencies, you'd have to compile almost the whole desktop in order to make the program running. With Geany I'm really happy it has GTK dependency only so relatively little has to be compiled - pkgconfig, freetype, fontconfig, glib, pixman, cairo, pango, atk, gtk. Yes, I call it relatively little because things get much worse for other software.
Conclusion: people on enterprise linuxes don't expect to be able to run the latest software because ABIs and APIs change very frequently for various libraries and you can be almost sure that you'll have to recompile lots of system libraries in order to get the particular application running.
Since we recently bumped the GTK requirements to 2.12 for the upcoming release, do we need to discuss this already again? Yeah, newer versions are cooler but is it necessary or just cooler?
It's not so much about "cool" as it is about using improved versions of the libraries. Lots of good stuff has been added since 2.12 (ie. in the last 4+ years of active development).
Just one example would be the GtkBuilder stuff which would not really be "cool", but it would make it easier to unglue some of the business logic from the GUI stuff and make fixing/developing Geany easier. Another example could be the use of GtkInfoBar, whether and where it might be useful is another discussion.
What's more, some existing #if'd code could be fixed to be used proper, again making Geany easier to fix/maintain (assuming there's some existing #if'd code blocks...I think I saw some).
Another reason, is to make it easier for people to help get Geany able to build with GTK+ 3 eventually, which probably many more users will care about in the somewhat near future than supporting extremely old versions of GTK+ 2. It would also help to attract new developers to Geany if they didn't have to "go back in time" to see what was the way to do GTK+ things 4+ years ago. No one likes writing deprecated code :)
IMO, Geany releases should keep up to date with the versions of libraries of mainstream distros (Debian, Ubuntu, Fedora, Etc.). It's not like the older versions of Geany for older GTK+ versions are going to be any less usable over time.
Of course this is just my $0.02 cents as some who has had many good ideas for improvements to Geany that have been stopped with needing to support ancient GTK+/GLib versions.
In general I'm happy Geany is rather conservative about its dependencies however in moments like this, where old development tools stop being supported and more and more linux distributions are moving to GTK 3, I think the dependency bump is the better option. Otherwise it would mean that no work on GTK 3 support could be done in the following year(s). Moreover, if the next version of Geany will be released in say one year, the support of old systems should be about the same as now (with half-year release cycle 2.12 is one year from 2.16).
Cheers,
Jiri
To summarise, everyone appears to be in furious agreement :)
Now 0.21 is out, Matthew, whats the oldest version where all the things used in the current Geany are supported, 2.16 or 2.18.
And can you and Nick test with windows to decide which version we package with Geany. I don't have a full list of what is wrong on windows but some things that have been reported as wrong like drag and drop are currently irrelevant to Geany and some like themes are not essential.
Newer versions to support big new ideas can be discussed separately from there :)
Cheers Lex
On 1 October 2011 13:44, Matthew Brush mbrush@codebrainz.ca wrote:
It seems to me like this group of users would be very small and require that they are: - Enterprise/LTS users running a GUI - And who are willing to install unsupported software.
That may be the case more often than one might thinnk it is... Think of all the people who have neither a choice in OS nor root access to their machine. I work at a university, where this is commonly the case.
- And whos distro doesn't backport newer libraries. - And who are developers, can compile Geany but can't compile GTK+.
Compiling Geany is easy, compiling GTK is another order of magnitude. I might be able to compile GTK, but I certainly do not want to. I think I tried once, escaped dependency hell without injuries but then decided that two GTK installation one one machine suck.
- And who are not satisfied with existing supported Geany packages.
Again, as a user on say RHEL, you might not even have a precompiled Geany package available.
I would just be curious to know how many (or what percentage of) users fall into this group.
I do, unfortunately.
So, in conclusion: I think GTK 2.18 (RHEL 6) seems reasonable.
Cheers
Alex
On 11-10-04 05:36 AM, Alexander Eberspächer wrote:
On 1 October 2011 13:44, Matthew Brushmbrush@codebrainz.ca wrote:
It seems to me like this group of users would be very small and require that they are:
- Enterprise/LTS users running a GUI
- And who are willing to install unsupported software.
That may be the case more often than one might thinnk it is... Think of all the people who have neither a choice in OS nor root access to their machine. I work at a university, where this is commonly the case.
Keep in mind that previous versions of Geany will always still be there, and AFAIK there aren't any majour flaws in them, nor is there a great loss of functionality compared to the latest release.
- And whos distro doesn't backport newer libraries.
- And who are developers, can compile Geany but can't compile GTK+.
Compiling Geany is easy, compiling GTK is another order of magnitude. I might be able to compile GTK, but I certainly do not want to. I think I tried once, escaped dependency hell without injuries but then decided that two GTK installation one one machine suck.
I won't pretend that compiling GTK+ isn't somewhat of a pain, but it's quite well documented and the dependencies aren't *that* bad. If you've done it correctly, it shouldn't matter that you have two GTK+ installations on one machine since it should only use the one in your home directory. I have 4 or 5 different installed versions of the GTK+ stack installed on my system that I use for testing.
- And who are not satisfied with existing supported Geany packages.
Again, as a user on say RHEL, you might not even have a precompiled Geany package available.
It seems from a quick search there are some available though I'm not sure what versions.
I would just be curious to know how many (or what percentage of) users fall into this group.
I do, unfortunately.
So, in conclusion: I think GTK 2.18 (RHEL 6) seems reasonable.
Yeah, 2.18 seems to be about right all things considered.
Cheers, Matthew Brush
On 10/04/2011 07:12 PM, Matthew Brush wrote:
Yeah, 2.18 seems to be about right all things considered.
Can someone explain (in one or two sentences) why GTK versions around 2.18 or so are much worse than more recent ones? I haven't really done anything using GTK yet, however, I am interested.
Thanks and take care
Alex Eberspächer
On 11-10-05 12:15 AM, Alexander Eberspächer wrote:
On 10/04/2011 07:12 PM, Matthew Brush wrote:
Yeah, 2.18 seems to be about right all things considered.
Can someone explain (in one or two sentences) why GTK versions around 2.18 or so are much worse than more recent ones? I haven't really done anything using GTK yet, however, I am interested.
Hi,
I don't know, in general, if the older libraries are "worse"[1], but there have been discussions recently around some things that require functionality in more recent versions (ex. GtkBuilder will need 2.16, lots of accessor functions were added between 2.12 and 2.18 which will make eventually supporting Gtk3 easier, some new widgets become available in later versions and so on).
Cheers, Matthew Brush
[1] but I would assume that 4+ years of active development would have brought lots of bug fixes and optimizations.
Hi Alex,
There is no problem (that I'm aware of) with any versions on Linux, except of course new features were added over time. Since everyone wants to use the shiny new things, they want a newer version.
Also as newer features replaced older ones, some of the tools (glade) discontinued support for the older features making it hard to continue to use older versions.
But on windows, as I understand it, GTK 2.16 is ok, but something(s) that was changed in 2.18 and broke stuff on windows, I'm not sure exactly what.
There are not many contributors to GTK for windows so it took a long time for the problems to be fixed (assuming they are) so it isn't until about 2.24 that the general consensus on the gtk ML seemed to be that it was ok.
And of course GTK3 is a new non-backward compatible version that is "a whole 'nother ball game"
Cheers Lex
On 5 October 2011 18:15, Alexander Eberspächer alex.eberspaecher@gmail.com wrote:
On 10/04/2011 07:12 PM, Matthew Brush wrote:
Yeah, 2.18 seems to be about right all things considered.
Can someone explain (in one or two sentences) why GTK versions around 2.18 or so are much worse than more recent ones? I haven't really done anything using GTK yet, however, I am interested.
Thanks and take care
Alex Eberspächer _______________________________________________ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
Le 05/10/2011 09:30, Lex Trotman a écrit :
Hi Alex,
There is no problem (that I'm aware of) with any versions on Linux, except of course new features were added over time. Since everyone wants to use the shiny new things, they want a newer version.
Also as newer features replaced older ones, some of the tools (glade) discontinued support for the older features making it hard to continue to use older versions.
True. Glade 3.10 is a real $!#!@@$$## that don't even work for GTK2 anymore :@
But on windows, as I understand it, GTK 2.16 is ok, but something(s) that was changed in 2.18 and broke stuff on windows, I'm not sure exactly what.
Client-side windows.
There are not many contributors to GTK for windows so it took a long time for the problems to be fixed (assuming they are) so it isn't until about 2.24 that the general consensus on the gtk ML seemed to be that it was ok.
AFAIK yeah, with 2.24 GTK works all fine again on Windows. This said, I found many app working just find with 2.22, and I think 2.18 too. Actually I'd better say that >= 2.16 && < 2.24 had *some* problems, not that they were completely broken.
Cheers, Colomban
On 6 October 2011 09:58, Colomban Wendling lists.ban@herbesfolles.org wrote:
Le 05/10/2011 09:30, Lex Trotman a écrit :
Hi Alex,
There is no problem (that I'm aware of) with any versions on Linux, except of course new features were added over time. Since everyone wants to use the shiny new things, they want a newer version.
Also as newer features replaced older ones, some of the tools (glade) discontinued support for the older features making it hard to continue to use older versions.
True. Glade 3.10 is a real $!#!@@$$## that don't even work for GTK2 anymore :@
+1 </rant> :)
But on windows, as I understand it, GTK 2.16 is ok, but something(s) that was changed in 2.18 and broke stuff on windows, I'm not sure exactly what.
Client-side windows.
There are not many contributors to GTK for windows so it took a long time for the problems to be fixed (assuming they are) so it isn't until about 2.24 that the general consensus on the gtk ML seemed to be that it was ok.
AFAIK yeah, with 2.24 GTK works all fine again on Windows. This said, I found many app working just find with 2.22, and I think 2.18 too. Actually I'd better say that >= 2.16 && < 2.24 had *some* problems, not that they were completely broken.
Yes, thats probably a better way of putting it.
Whether the problems affect a particular program probably depends on how aggressively it used GTK features. And things like themes being broken won't actually stop the app working.
Things like DND were still being fixed very recently IIUC, but for example that wouldn't affect Geany, since its not DND enabled.
Cheers Lex
Cheers, Colomban _______________________________________________ Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
2011/10/1 Enrico Tröger enrico.troeger@uvena.de:
On Mon, 26 Sep 2011 01:21:59 -0700, Matthew wrote:
Hi,
Is there some specific distro or platform that sets the oldest GTK+ version Geany needs to support? I had a conversation with Enrico on IRC some time back and he explained that Geany supports older GTK+ versions so that "enterprise" and similar distros which have really old packages are able to still able to compile/run it.
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
I don't know anything as specific as you probably want to hear, sadly. It's just that it raises up from time to time when users tell on what old systems they compile Geany.
Since we recently bumped the GTK requirements to 2.12 for the upcoming release, do we need to discuss this already again? Yeah, newer versions are cooler but is it necessary or just cooler?
Hey Enrico,
Couple of comments.
You are right, there doesn't need to be a defined policy apart from not gratuitously dropping support for old versions.
But we also need to be able to support Geany on new systems. I will use two issues as examples:
1. Being able to support new GTK versions, eg gtk3, how many #ifs are going to be needed to support both (as well as Glade version support)
2. And tools. Glade 2 is no longer available for new machines and already needs a patch to compile, and last week I couldn't compile it even with the patch on a very new machine. As Matthew has found when he looked at moving Geany to more recent Glade versions, the GTK2 version is going to have to jump further to allow this change.
What I am trying to illustrate is that it is not just how old but also how new a system we support, and the effort needed to do that.
Cheers Lex
Regards, Enrico
-- Get my GPG key from http://www.uvena.de/pub.asc
Geany-devel mailing list Geany-devel@uvena.de https://lists.uvena.de/cgi-bin/mailman/listinfo/geany-devel
On Sun, 2 Oct 2011 11:39:17 +1100, Lex wrote:
2011/10/1 Enrico Tröger enrico.troeger@uvena.de:
On Mon, 26 Sep 2011 01:21:59 -0700, Matthew wrote:
Hi,
Is there some specific distro or platform that sets the oldest GTK+ version Geany needs to support? I had a conversation with Enrico on IRC some time back and he explained that Geany supports older GTK+ versions so that "enterprise" and similar distros which have really old packages are able to still able to compile/run it.
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
I don't know anything as specific as you probably want to hear, sadly. It's just that it raises up from time to time when users tell on what old systems they compile Geany.
Since we recently bumped the GTK requirements to 2.12 for the upcoming release, do we need to discuss this already again? Yeah, newer versions are cooler but is it necessary or just cooler?
Hey Enrico,
Couple of comments.
You are right, there doesn't need to be a defined policy apart from not gratuitously dropping support for old versions.
But we also need to be able to support Geany on new systems. I will use two issues as examples:
- Being able to support new GTK versions, eg gtk3, how many #ifs are
going to be needed to support both (as well as Glade version support)
- And tools. Glade 2 is no longer available for new machines and
already needs a patch to compile, and last week I couldn't compile it even with the patch on a very new machine. As Matthew has found when he looked at moving Geany to more recent Glade versions, the GTK2 version is going to have to jump further to allow this change.
What I am trying to illustrate is that it is not just how old but also how new a system we support, and the effort needed to do that.
Yep, I mostly completely agree with this and just said so as well in the thread in reply to Matthew. It's just that there should be some reasoning in bumping and GTK3 definetely is one, IMO.
Regards, Enrico
On 26 September 2011 10:21, Matthew Brush mbrush@codebrainz.ca wrote:
So I was just curious *specifically* what distro(s) and version(s) sets the oldest version of GTK+ that Geany should support?
I think RHEL in a more or less current version sets a reasonable benchmark. We have used RHEL 5 (in fact, CentOS 5) until recently. Now, we are on Scientific Linux 6.1. Furthermore, I know many people on LTS Ubuntu (that would make GTK 2.12 (Ubuntu Hardy's version) the benchmark).
Take care
Alex