On Thu, 26 Nov 2015, Michael Natterer wrote:


We originally wanted to get this done on GIMP's 20th
birthday last week, but...

Anyway, here is the first development release in the
GIMP 2.9.x series leading to GIMP 2.10.

This is an unstable development preview and might crash
or do whatever. If you try it for work, please save your
images more often.

GIMP 2.9's major new feature is GEGL (, a graph
based image processing framework. The entire old pixel
manipulation core of GIMP has been removed and replaced
by GEGL. Most internal processing is now done at floating
point precision, and images can be kept around at 16-bit
and 32-bit integer and floating point precisions. Many
plug-ins have already been replaced by GEGL operations
and can be previewed live on the canvas.

For a complete list of changes since 2.8.0 please see the
"Changes" section below. We will also post more detailed
news about GIMP 2.9 on soon, stay tuned.

Happy GIMPing,


  GIMP 2.9.2 is available from:

  and from the mirrors listed at:

  Please use the torrent, it distributes
  the download bandwidth across all mirrors:

  The checksum of the tarball is:

  aa8a846a497e3328c5b7d2fd33f5cf63  gimp-2.9.2.tar.bz2

Overview of Changes from GIMP 2.8.0 to GIMP 2.9.2


  The core got completely ported to GEGL, listing all changes involved
  would be too much, therefore we summarize the changes in app/ per
  source subdirectory:

  - Remove these directories, they contained the old pixel
    manipulation functions

  - Remove GimpBaseConfig, add GimpGeglConfig
  - Add config options for new features

  - Add some things that used to live in base/, like the temp-buf,
    boundary and histogram code
  - Port all functions to GEGL and higher bit depths
  - Keep the image around as GEGL graph, all other compositing is gone
  - Add non-destructive drawable filters, but use them only for
  - Implement the floating selection as drawable filter
  - Implement GimpImageMap using drawable filters
  - Move batch processing to gimp-batch.[ch]
  - Run batch commands in an already running GIMP instance
  - Ported almost everything from filenames/FILE/fd to GFile/GIO
  - Be smarter about migrating old user config files
  - Move many object struct members to private structs

  - Support GIO-ported file load/save procs, handle remote files 

  - Add content locking to items to prevent them from being edited
  - Add position locking to items to prevent them from being translated
  - Implement all color management in the core
  - Add an automatic palette of recently used colors
  - Implement metadata handling in the core

  - Now contains utility functions and abstractions to work with
    GEGL more easily
  - Move all operations to the new operations/ directory

  - New directory containing all GIMP-internal GEGL operations
    and their config objects (if any)
  - Add a correct version of the overlay layer mode
  - Add LCH layer modes

  - Port all paint cores to Gegl
  - Add MyPaint brush paint core

  - Add compat procedures that work like the removed plug-ins
  - Use the new GimpValueArray, GValueArray got deprecated

  - Allow plug-ins to access image data at full bit depth
  - Add a compat mode so unported plug-ins always get 8-bit data

  - Port text rendering to GEGL
  - Use HarfBuzz to inspect fonts for creating an example string

  - Add zlib compression to XCF loading/saving


  - Add GUI to handle the new high bit depths and conversion between 
  - Add new action group "filters" which can run arbitrary GEGL ops
  - Add lots of actions invoking GEGL ops that replace removed plug-ins
  - Preview all GEGL ops live on the canvas, using drawable filters
  - Mostly switch from using stock-ids to icon-names
  - Turn all stock icons into named icons and add an icon theme
  - Allow selecting colors from an image's colormap
  - Add "Show in file manager" to everything that has a filename
  - Add an action search dialog to find actions by keyword and execute 
  - Split the save dialog into subclasses for load, save and export
  - Implement various color management dialogs that were in the lcms 
  - Make sure windows appear on the correct monitor
  - Simplify and reduce the actions that modify paint tool behavior
  - Add canvas rotation and flipping
  - Allow zooming to the selection
  - Make the image tab position configurable in single window mode
  - Add separate snapping settings for fullscreen mode
  - Remove bitmaps cursors and only support RGBA cursors
  - Color manage drawable and image thumbnails
  - Add more format string options for the image title
  - Use the external gtkosxapplication package instead of included code
  - Add a generic GimpPopup class and use it instead of duplicating 
  - Make the generated GUI of GEGL ops much better
  - Allow to implement custom GUI for gegl ops, and do that in some  
  - Add GimpDial, GimpPolar and GimpCircle to be used for angle and


  - Add an "experimental playground" for unfinished tools
  - (experimental) Add a tool that paints with MyPaint brushes
  - (experimental) Add an n-point deformation tool
  - (experimental) Add a transform tool with a variable # of handles
  - (experimental) Add a seamless clone tool
  - Add a unified transform tool that allows rotating, scaling,
  - Add a warp tool as replacement for the IWarp plug-in
  - Allow tool dialogs to be embedded on the canvas genrically
  - Add much more options to painting, like the ability to lock
    tool options to brush defaults, and to zoom the brush with the
  - Make the blend tool work interactively in realtime
  - Add undo/redo to many tools (using the normal shortcuts)


  - Deprecate the entire old pixel manipulation API
  - Add API to get a drawable's buffer, the rest can be done with GEGL
  - Add high bit depth support when using the new buffer API
  - Make many enum value names sane and deprecate the old names
  - Many core enums moved here instead of proxying them via PDB
  - Add API to stroke vector outlines, with all core properties
  - Add more context API that affects other procedures
  - Deprecate API with weird names, and add new API with less arguments
  - Add metadata and color management API, utility functions and
  - Split GimpPickButton into per-platform backends and fix it on OS X


  - Remove lots of plug-ins that are now implemented as GEGL ops
  - Remove the lcms plug-in, this is now done in the core/libgimp
  - Remove the metadata plug-ins, this is now done in the core/libgimp
  - Remove the file-uri plug-in, this is now done in the core using GIO
  - Port many file plug-ins to GIO
  - Port many plug-ins that are not strictly filters to GEGL

Source and build system:

  - Don't use INCLUDES in, use AM_CPPFLAGS instead


  - Lots and lots of bug fixes
  - Translation updates


  A Kelday, Adrian Likins, Alexander Larsson, Alexandre Prokoudine,
  Alexia Death, Andrew Worsley, Barak Itkin, Björn Kautler, Chris
  Wilson, Christian Lehmann, Clayton Walker, Daniel Sabo, David
  Gowers, Dov Grobgeld, E.S. Quinn, Ed J, Elle Stone, Hartmut Kuhse,
  Ionutz Borcoman, Jan Lieskovsky, Jehan, Jernej Simončič, Joao
  S. O. Bueno, Johannes Matschke, John Ralls, Jonathan Tait, Jordi
  Mas, João S. O. Bueno, Julien Nabet, Kevin Cozens, Kristian
  Rietveld, Kővágó, Zoltán, Liam Quin, Loren Merritt, Louis Benazet,
  Ludovic Rousseau, Marco Ciampa, Marek Dvoroznak, Mark Schmitz,
  Martijn van Beers, Martin Husemann, Martin Nordholts, Massimo
  Valentini, Matt Giuca, Matthias Wenzel, Michael Henning, Michael
  Muré, Michael Natterer, Michael Schumacher, Mikael Magnusson, Mike
  Gran, Miroslav Talasek, Mukund Sivaraman, Murray Cumming, Nicolas
  Robidoux, Nils Philippsen, Pedro Gimeno Fortea, Petr Kubiznak,
  Philippe Teuwen, Piotr Drąg, Przemysław Gołąb, Richard Allen,
  Richard Hughes, Rickard, Roman Lebedev, Saul Goode, Sebastian
  Pipping, Sebastian Rasmussen, ShadowKyogre, Shlomi Fish,
  SimaMoto,RyōTa, Simon Budig, Simon Lui, Simone Karin Lehmann,
  Srihari, Sven Claussner, Sven Neumann, Thomas Manni, Tobias
  Ellinghaus, Téo Mazars, Ville Pätsi, Ville Skyttä, Ville Sokk,
  Warren Turkal, darkraid1, saul, su-v, Øyvind Kolås


  Albert F, Alexandre Prokoudine, Anders Jonsson, Andika Triwidada,
  André Schutten, Anish A, Aurimas Černius, Balázs Úr, Baurzhan
  Muftakhidinov, Chris Leonard, Christian Kirbach, Cédric Valmary,
  Daniel Mustieles, Daniel Sabo, Daniel Winzen, Dimitris Spingos,
  Duarte Loreto, Dušan Kazik, Enrico Nicoletto, Eulalia, Fran Diéguez,
  Francisco Vila, Gabor Kelemen, Gil Forcada, Hartmut Kuhse, Hleb
  Valoshka, Inaki Larranaga Murgoitio, Jehan, Jihui Choi, Jiri
  Grönroos, Jiro Matsuzawa, Joao S. O. Bueno, Johannes Matschke, Jordi
  Mallach, Jordi Mas, João S. O. Bueno, Kevin Cozens, Khaled Hosny,
  Khoem Sokhem, Kiyotaka NISHIBORI, Kjartan Maraas, Kolbjørn Stuestøl,
  Konfrare Albert, Marco Ciampa, Marek Dvoroznak, Marek Černocký,
  Martin Srebotnjak, Massimo Valentini, Mattias Põldaru, Michael
  Bauer, Michael Henning, Michael Muré, Michael Natterer, Muhammet
  Kara, Necdet Yücel, Nils Philippsen, Pavol Klačanský, Pedro
  Albuquerque, Peter Mráz, Piotr Drąg, Praveen Illa, Rafael Ferreira,
  Rodolfo Ribeiro Gomes, Rūdolfs Mazurs, Samir Ribic, Sebul, Seong-ho
  Cho, SimaMoto,RyōTa, Simone Karin Lehmann, Stanislav Petrek, Sveinn
  í Felli, Sven Claussner, Thomas Manni, Tiago S, Tiagosdot, Timo
  Jyrinki, Timur Zhamakeev, Téo Mazars, Ville Skyttä, Ville-Pekka
  Vainio, Wouter Bolsterlee, Yaron Shahrabani, Yuri Myasoedov,
  akerbeltz, kolbjoern, sebul, Øyvind Kolås, Андрій Бандура, Милош

gimp-developer-list mailing list
List address:
List membership:
List archives:

Boudewijn Rempt |,
gimp-user-list mailing list
List address:
List membership:
List archives:

Reply via email to