[gedit-list] gedit is unmaintained, some thoughts

From: Sébastien Wilmet <swilmet gnome org>

To: gedit-list gnome org

Subject: [gedit-list] gedit is unmaintained, some thoughts

Date: Sun, 16 Jul 2017 13:06:13 +0200

Hi, gedit is no longer maintained, I've added it to this wiki page: https://wiki.gnome.org/Apps/Unmaintained Any developer interested to take over the maintenance of gedit? Here are my thoughts: I think a high-priority issue is that there are no checks to see if a plugin is compatible with the gedit version. Currently enabling a plugin can make gedit to crash. See my comment on this libpeas feature request: https://bugzilla.gnome.org/show_bug.cgi?id=642694#c15 Once the above is done, what I would do in gedit is to port the core to Tepl (and continuing developing Tepl and making the gedit core features re-usable). See: https://wiki.gnome.org/Projects/Tepl https://wiki.gnome.org/Apps/Gedit/ReusableCode By making the code re-usable and putting it in a library, the code is shared among several applications, which means that it has a greater chance to be better maintained, and during a longer time. Also by developing a library, the code is cleaner, less entangled, better documented, and it's possible to (unit-) test each component individually. Of course it's possible to do that for an application as well, but it's not really how gedit is implemented. Note that I still develop Tepl, so over time it has more and more features. If gedit is not developed during several years, maybe it'll be possible to remove a big amount of code from gedit by porting it to Tepl. By doing so, it'll maybe be difficult to keep the gedit API backward-compatible, hence the need to check if a plugin is compatible. <rant-on-languages> BTW while the gedit core is written in C (with a bit of Objective-C for Mac OS X support), some plugins are written in Vala or Python. If you take over gedit maintenance, you'll need to deal with 4 programming languages (without counting the build system). The Python code is not compiled, so when doing refactorings in gedit core, good luck to port all the plugins (the Python code is also less "greppable" than C). At least with Vala there is a compiler, even if I would not recommend Vala. </rant-on-languages> Also by contributing to gedit (probably for free), you help this guy selling gedit on Mac: https://www.macupdate.com/app/mac/57936/gedit If you read this, please don't buy gedit there, there is a free (but older) version here: http://ftp.gnome.org/pub/GNOME/binaries/mac/gedit/ Still interested? Note that with GTK+ 3 being now stable, gedit will probably still continue to work fine during a long time, even if not perfect. If gedit dies, I think there is a more general lesson for all GTK+ applications: it is important to write more libraries, sharing the code and maintenance among several similar applications. GtkSourceView is still maintained, but gedit has still more code than GtkSourceView. Before I contribute to GtkSourceView, there was 8000 lines of code in gedit for the file loading and saving (just the backend part, not the frontend). Do you seriously think that only gedit needed to load and save files with GtkSourceView? There are other text editors out there… See for example Anjuta (also a big codebase no longer maintained), and now gnome-builder doing the same mistake (developing in its corner a lot of text editor features; do you really think that the Vim mode is useful only to gnome-builder?!). And this applies not just to text editors. How many times the wheel has been reinvented for music players? Photo managers? IRC/chat clients? Showing the wheather? Etc. /me back to Tepl development. -- Sébastien