GIMP 2.10 released
Six years and several unstable releases since 2.8.0, GIMP 2.10 is out in the wild for the general public.
Release highlights include features that users have been asking the team all along:
- Processing with 16/32-bit per color channel precision, integer or float;
- Optional linear RGB workflow;
- 15 new blending modes, including Pass-Through;
- Color management rewritten and now a core feature, all color widgets are now color managed, ICC v3 profiles supported;
- CIE LCH and CIE LAB color models now used in a few tools;
- Performance improvements for some filters thanks to multi-threading;
- New Unified Transform (rotating, scaling, perspective etc. in one go), Handle Transform, and Warp Transform (think Photoshop’s Liquify) tools;
- Gradient tool now allows on-canvas editing;
- Digital painting improved with threaded painting, canvas rotation and flipping, new MyPaint Brush tool, symmetry painting;
- Exif, XMP, IPTC, DICOM metadata viewing and editing;
- Newly added support for WebP, OpenEXR, RGBE, HGT;
- Improved support for TIFF, PNG, PSD, PDF, FITS;
- Pre-processing of raw digital photos with darktable or RawTherapee at your preferences (more processors can be plugged);
- Over 80 GEGL-based filters with on-canvas preview, including custom split before/after preview.
Having written most of the release notes for 2.10, I don’t particularly intend to do a full review here (yes, it’s my disclaimer that I’m affiliated and thus biased). Instead here is something I’d like to share regarding ongoing development of GIMP and future plans.
Is GIMP dead, stalled, or picking up pace?
Over the past few years, I’ve heard these and other ideas quite a few times. Pat David recently covered that (among other things) in his famous talk at SCaLE:
Essentially, since a couple of years, the workload has shifted from Michael Natterer (who, at some point, did ca. 80% of the work) towards other contributors. These days, Michael, Jehan (Pagès), and Ell do about the same amount of commits — 25%, 25%, and 24% respectively, per OpenHub’s data for sliding 12 months — although one might successfully argue that this is a stupid metric.
In terms of focus, Michael does most of the under-the-hood work and some user-visible stuff, Jehan does mostly bugfixing and adds painting-related features, and Ell does all of that and he makes impressive contributions to GEGL.
On the backend side of things, Øyvind Kolås is very active with GEGL and babl, and he gets a lot of help from Debarshi Rey (GNOME Photos) and Thomas Manni. Thomas, in particular, was instrumental in getting as many GIMP filters ported to GEGL as possible. If you’ve been waiting for Shadows-Highlights to become available in GIMP, Thomas is the one you should be thanking.
All in all, the development pace has been about the same throughout all of 2.10 development cycle. The difference that made people think GIMP was first stalling and is now picking up pace is simple: more frequent releases. Let’s have a look:
- May 2012: 2.8.0 released. GEGL port for tiles management in future 2.10 announced.
- 3.5 years later: GIMP 2.9.2 released, that’s the first unstable version.
- 8 months later: GIMP 2.9.4.
- 13 months later: GIMP 2.9.6.
- 4 months later: GIMP 2.9.8.
- 3 months later: GIMP 2.10.0 Release Candidate 1.
- 1 months later: GIMP 2.10.0 Release Candidate 2.
It appears that developing major new features in branches wasn’t sufficient. Hence a new solution.
Relaxing development/release policy
During Libre Graphics Meeting 2017, the team decided to relax the policy and start introducing new features to stable versions, where it’s technically feasible, starting with 2.10. That way, most work would be done on the main development branch (master), and new features would be backported to the 2.10 branch when it’s possible.
One particular reason for that is the upcoming work on completing the GTK+3 port. Simply put, nobody knows how much time this is going to take, just like nobody knew how much time the GEGL port would take. If I wanted to scare you, I could say that we might be looking at another five or six years long development cycle. But noone really knows.
That’s why it’s important to keep giving users new exciting stuff, while “boring” work on internals is ongoing.
What kind of new stuff? Again, it depends. E.g. there is a certain interest and even some preliminary work to add mipmaps support to improve performance for resources-hungry operations. There are more painting-related optimizations to be done. Or there could be something completely unexpected. Completing the N-Point Transform tool maybe? I’d love that!
Which leads us to the next point.
Development priorities
People have been rightfully wondering, how much time it’s going to take the team to implement the most desired feature: non-destructive editing. Even if we are looking at a couple of years leading up to 3.0, there would be at least a year or two to complete 3.2 (but, again, nobody really knows).
And then the CMYK/spot colors support is in the Future section of the roadmap. So is the autoexpansion of layer boundaries… And the list goes on. So there’s this idea that priorities should be swapped.
The problem with this is that GTK+2 currently used for UI of GIMP 2.10 is barely maintained. While the GIMP team doesn’t like everything they see in GTK+3 (oh, some of the IRC conversations!), the newer version is vastly superior in almost every aspect.
But here is some good news: priorities do in fact change based on activity of developers, if the foundation for new features is ready.
Case in point: the Unified Transform tool was originally in the Future section too. Then Mikael Magnusson arrived and just did the work. So now you can enjoy doing all of your rotating, scaling etc. in one go.
And that’s where relaxing the release policy come in handy again. It’s difficult to engage new developers when their work is likely to see the light of day as a stable release in an unknown period of time. It’s a lot easier to do that when you have regular stable releases with new features.
Is this going to work? We’ll just have to wait and see.
In the meantime, you can support the work of Jehan Pagès and Øyvind Kolås on both GIMP and GEGL on either Patreon or Liberapay. This page on GIMP.org lists all available options.
And the last revelation: I have both Patreon and Liberapay campaigns too, but frankly, I spend so much time on GIMP that I’m not even sure that my work on LGW is something you would be rewarding me for. Tell me!
Patreon subscribers get early access to my posts. If you are feeling generous, you can also make a one-time donation on BuyMeACoffee.