A longstanding task for the GIMP has been porting the core graphics code from the ancient implementation (dating back to version 1.2
) to GEGL
. Progress has been hampered by the amount of code relying on details of the implementation of image data: tiles are directly accessed instead of linear buffers, and changing that detail would break the entire core and all plugins. A few weeks ago, two GIMP hackers got together to do some general hacking, and inadvertedly ported the core graphics code to GEGL
. They work around the mismatch between GEGL buffers and GIMP tiles by implementing a storage backend for GEGL using the legacy GIMP tiles; to their surprise things Just Worked (tm), and their code branch
will become the 2.9 development series once 2.8
is released. With this, 2.10 will finally feature higher bit depth images, additional color spaces (CMYK for one), and hardware accelerated image operations
. There's still work to be done: to take advantage of the new features, plugins need to be ported to access GEGL buffers instead of GIMP tiles, but the conversion work is straightforward and current plugins will continue working as well as they do now in the meantime.