In this post, we are looking back at 2018 and then forward to outline future work on GIMP, GEGL, and babl.
Version 2.10 release and point releases¶
In April, we released the much anticipated version 2.10, featuring updated user interface, high bit depth support, multi-threading, linear color space workflow, revamped color management, new transformation tools, and many more changes, as outlined in the release notes.
Given that the next big update, v3.0, is likely far ahead, we now also allow new features in the stable series (2.10.2, 2.10.4 etc.). Which means, you don’t have to wait years for new features anymore. Instead, we make a new release every 1-2 months, and it usually comes with many bugfixes as well as some new stuff.
Nightscape, by Filip Bulovic, CC BY-SA 4.0
Among the new features in 2.10 updates this year:
So what have we been busy with after releasing 2.10?
Refactoring. Most work is happening in the main development branch leading up to version 3.0. GIMP 3.0 will be relying on GTK3, a much newer version of the toolkit. And we want to arrive to working on non-destructive editing with a much leaner code base. This means a lot still needs to change. The majority of changes here was contributed by GIMP maintainer Michael Natterer.
Usability. There have been numerous fixes to address various usability issues in GIMP. We eliminated duplicated file type selector in the exporting dialog, added an explanation for why a file might not be entirely readable in older versions of GIMP, and fixed quite a few other things.
Smart colorization. This major new feature greatly simplifies filling inked sketches with color, where areas are not completely closed. It was added by Jehan Pagès, with contributions from Ell, and will be available in GIMP 2.10.10.
Smart colorization demo
Extension management. ZeMarmot project has started implementing extension management within GIMP, which will allow to search, install, uninstall and update extensions directly within GIMP. An extension is meant to be any data already installable (manually currently) in GIMP, such as plug-ins, icons, brushes, and more.
Performance and async jobs. There are several attack vectors towards subpar performance of GIMP. Ell fixed some of the big issues by introducing async operations like lazy loading of fonts (which effectively fixed the long startup times for GIMP on Windows), and then moved all parallel processing in multiple threads over to GEGL. Both Ell and Øyvind Kolås contributed to improving performance of downscaling with bilinear and bicubic samplers and other aspects of GEGL and babl.
Space invasion. GIMP used to have the sRGB color space hardcoded into all processing. This couldn’t work for everyone, and we introduced some changes to support any RGB color spaces in 2.10. Space invasion is the next step towards that goal. The ‘master’ git branch of GIMP now allows taking an image that’s originally in e.g. ProPhotoRGB, processing it in a different color space (e.g. CIE LAB), and the resulted image will be in ProPhotoRGB again, with all color data correctly mapped to the original space / ICC profile. This isn’t yet polished and thus not read for prime-time use. Most of the workContinue reading